diff --git a/.gitignore b/.gitignore
index 39241df7fddd54e703a3e29c5107a18d5cc9c62b..657c315552ed4e9a89623814ed54e2d81903f062 100644
--- a/.gitignore
+++ b/.gitignore
@@ -32,6 +32,8 @@ atlassian*
 /pub/media/theme/*
 /pub/media/theme_customization/*
 !/pub/media/theme_customization/.htaccess
+/pub/media/wysiwyg/*
+!/pub/media/wysiwyg/.htaccess
 /pub/media/tmp/*
 !/pub/media/tmp/.htaccess
 /pub/static/*
diff --git a/CHANGELOG.md b/CHANGELOG.md
index ab9c488dce8b017bdba39b84431937de1c3d4989..fdf39c0d71051424034a7b4692d842365c5d6b8f 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,53 @@
+0.42.0-beta4
+=============
+* Various improvements:
+    * Updated Copyright Notice and provided reference to the license file
+    * Updated test framework to support stores other than default
+    * Removed version information from theme.xml files leaving it only in composer.json files
+* Fixed bugs:
+    * Fixed an issue where coupon code was reported to be invalid if it has been removed from reorder in backend and then re-applied
+    * Fixed an issue where the 'Guide to Using Sample Data' link was incorrect in the web setup UI
+    * Fixed an issue where the link to System Requirements in bootstrap.php was incorrect
+    * Fixed an issue where Compiler could not verify case sensitive dependency
+    * Fixed an issue where the Recently Compared Products and Recently Viewed Products widgets were not displayed in sidebars
+    * Fixed an issue where the Orders and Returns widget type contained unnecessary tab
+    * Fixed an issue where an image added to a CMS page using the WYSIWYG editor was displayed as a broken link after turning off the allow_url_fopen parameter in php.ini
+    * Fixed an issue where it was impossible to log in to the backend from the first attempt after changing Base URL
+    * Fixed an issue where it was impossible to set back the default English (United States) interface locale for the admin user after changing it so an other value
+    * Fixed an issue where it was possible to execute malicious JavaScript code in the context of website via the Sender Email parameter
+    * Fixed an issue where the Product Stock Alert email was sent to a customer from a store view different than a customer account was created in
+    * Fixed an issue where the "Server cannot understand Accept HTTP header media type" error message was not informative enough
+    * Fixed an issue where unit tests did not work as expected after installing Magento 2
+    * Fixed an issue where the password change email notification was sent after saving admin account settings even if password was not changed
+    * Fixed an issue where static tests failed as a result of adding  API functional tests
+    * Fixed API functional tests after merging pull request [#927](https://github.com/magento/magento2/pull/927)
+    * Fixed an issue where the Edit button was present for invoiced orders
+    * Fixed an issue where function _underscore did not work with keys like SKeyName ('s_key_name')
+    * Fixed an issue where a fatal error occurred when browsing categories if web server did not have write permissions for media/catalog/product
+* Github requests:
+    * [#792](https://github.com/magento/magento2/issues/792) -- Failed to set ini option "session.save_path" to value
+    * [#796](https://github.com/magento/magento2/issues/796) -- install.log cannot be created with open_basedir restriction
+    * [#823](https://github.com/magento/magento2/issues/823) -- Installation bug
+    * [#920](https://github.com/magento/magento2/issues/920) -- "web setup wizard is not accessible" error message but the setup wizard is actually accessible
+    * [#829](https://github.com/magento/magento2/issues/829) -- [API] OAuth1.0 request token request failing / Consumer key has expired
+    * [#658](https://github.com/magento/magento2/issues/658) -- Inline translate malfunctioning
+    * [#950](https://github.com/magento/magento2/pull/950) -- Fix for the missed trailing end of line in indexer.php usage help text
+    * [#932](https://github.com/magento/magento2/pull/932) -- Migration tool - not all input has comments
+    * [#959](https://github.com/magento/magento2/pull/959) -- Replace UTF8 'en dash' with minus in error message
+    * [#911](https://github.com/magento/magento2/pull/911) -- Fix test assertion and slight cleanup refactoring
+    * [#936](https://github.com/magento/magento2/pull/936) -- Bugfix for regions with single quote in name
+    * [#902](https://github.com/magento/magento2/pull/902) -- Add integration test for View\Page\Config\Reader\Html
+    * [#925](https://github.com/magento/magento2/pull/925) -- Failed test due to Class not following the naming conventions
+    * [#943](https://github.com/magento/magento2/pull/943) -- magento2-925 Failed Test due to Class not following the naming conventions
+    * [#968](https://github.com/magento/magento2/pull/968) -- Apply pattern matching datasource config files
+    * [#949](https://github.com/magento/magento2/pull/949) -- Added 'status' command for cache cli script / Also improved readability
+* PHP 5.6 in composer.json:
+    * Added PHP 5.6.0 to the list of required PHP versions in all composer.json files
+    * Updated Travis CI configuration to include PHP 5.6 builds
+* Framework improvements:
+    * Removed TODOs in the Integration and Authorization modules
+    * Removed leading backslash from the 'use' statement throughout the code base
+
 0.42.0-beta3
 =============
 * Fixed bugs:
@@ -31,7 +81,7 @@
     * Replaced end-to-end test for quick search with injectable test
 * Fixed bugs:
     * Fixed an issue where an exception occurred when adding configurable products to cart from the wishlist
-    * Modify .gitignore CE according to new repos structure (MAGETWO-32095)
+    * Modify .gitignore CE according to new repos structure
     * Fixed an issue where the 'Not %Username%?' link was displayed for a logged in user while pages were loaded
     * Fixed an issue where Shopping Cart Price Rules based on product attributes were not applied to configurable products
     * Fixed an issue where the Tax Class drop-down field on New Customer Group page contained the 'none' value when a tax class already existed
@@ -79,7 +129,7 @@
     * Fixed an issue with the absence of JS validation for the Zip/Postal code field
     * Fixed an issue with a 1 cent difference in the tax summary and detail on an invoice and a credit memo for a partial invoice when a discount and fixed product tax are applied
     * Fixed an issue with throwing validation error for the State field when saving a product with FPT
-    * Fixed an issue with throwing an error when trying to save a timezone 
+    * Fixed an issue with throwing an error when trying to save a timezone
     * Fixed an issue with Exploited Session ID in second browser leading to Error
     * Fixed an issue with session loss on page 404 when using the Varnish caching
     * Fixed an issue with integration test not resetting static properties to correct default values after each test suite
@@ -121,7 +171,7 @@
     * Fixed an issue with tax rate not being saved if all states were chosen for any non-default country
     * Fixed an issue with multi-select fail on the Customer add/edit form
     * Added exception handling for required fields for REST APIs
-    * Fixed an issue with success message missing after the signup for price alert 
+    * Fixed an issue with success message missing after the signup for price alert
     * Fixed an issue with inability to create a return order from the Admin panel
     * Fixed an issue with incorrect work of the Default Value for Disable Automatic Group Changes Based on VAT ID setting
     * Fixed an issue with fatal error on the I18n tools launch due to incorrect bootstrap/autoload
@@ -554,11 +604,11 @@
 * Performance improvements:
     * Introduced CatalogRule indexers based on Mview
     * Significantly decreased the amount of unused objects, mostly in category and product view scenarios:
-		* Got rid of non-shared indexer instances all over the code introducing Magento\Indexer\Model\IndexerRegistry
-		* Magento\Catalog\Pricing\Price\BasePrice being created on demand only, instead of unconditioned creation in constructor
-		* Created proxies for unused objects with big amount of dependencies
-		* Fixed \Magento\Review\Block\Product\Review block which injected backend block context by mistake
-		* A customer model in \Magento\Customer\Model\Layout\DepersonalizePlugin being created on demand only, instead of constructor
+        * Got rid of non-shared indexer instances all over the code introducing Magento\Indexer\Model\IndexerRegistry
+        * Magento\Catalog\Pricing\Price\BasePrice being created on demand only, instead of unconditioned creation in constructor
+        * Created proxies for unused objects with big amount of dependencies
+        * Fixed \Magento\Review\Block\Product\Review block which injected backend block context by mistake
+        * A customer model in \Magento\Customer\Model\Layout\DepersonalizePlugin being created on demand only, instead of constructor
     * Introduced caching for product attribute metadata loading procedure
     * Improved SavePayment Checkout step to save only payment related data
     * Speed up all Checkout steps of the One Page Checkout
@@ -634,48 +684,48 @@
 0.1.0-alpha102
 =============
 * Fixed bugs:
-	* Fixed an issue where the categories tree was not displayed when adding a new category during product creation
-	* Fixed an issue where the Template field on the New Email Template page was labeled as required
-	* Fixed minor UI issues in Multiple Addresses Checkout for a desktop
-	* Fixed minor UI issues with Widgets on the storefront
-	* Fixed minor UI issues with pages printing view on the storefront
-	* Fixed minor UI issues in items Gift message on the Order View frontend page
-	* Fixed an issue in the Admin panel where no message was displayed after adding a product to cart with quantity exceeding the available quantity)
+    * Fixed an issue where the categories tree was not displayed when adding a new category during product creation
+    * Fixed an issue where the Template field on the New Email Template page was labeled as required
+    * Fixed minor UI issues in Multiple Addresses Checkout for a desktop
+    * Fixed minor UI issues with Widgets on the storefront
+    * Fixed minor UI issues with pages printing view on the storefront
+    * Fixed minor UI issues in items Gift message on the Order View frontend page
+    * Fixed an issue in the Admin panel where no message was displayed after adding a product to cart with quantity exceeding the available quantity)
 * Framework improvements:
-	* To enhance the readability of tables for screen readers, added the <caption> tag and the “scope” attribute for tables
-	* Added customer module interfaces
-	* Created the ability to generate API documentation
+    * To enhance the readability of tables for screen readers, added the <caption> tag and the “scope” attribute for tables
+    * Added customer module interfaces
+    * Created the ability to generate API documentation
 * Added the following functional tests:
-	* Create gift message in the Admin panel
-	* Delete term
-	* Product type switching when editing
-	* Re-authorize tokens for the Integration
-	* Revoke all access tokens for admin without tokens
-	* Update custom order status
-	* Update a product from a mini shopping cart
+    * Create gift message in the Admin panel
+    * Delete term
+    * Product type switching when editing
+    * Re-authorize tokens for the Integration
+    * Revoke all access tokens for admin without tokens
+    * Update custom order status
+    * Update a product from a mini shopping cart
 * WebApi Framework improvements:
-	* Added Web API support to add/override matching identifier parameter in the body from URL
+    * Added Web API support to add/override matching identifier parameter in the body from URL
 * Documentation:
-	* Added README files with module description for the following modules:
-		* Authorizenet
-		* Centinel
-		* Customer
-		* CustomerImportExport
-		* Dhl
-		* Fedex
-		* OfflinePayments
-		* OfflineShipping
-		* Ogone
-		* PayPalRecurringPayment
-		* Payment
-		* Paypal
-		* ProductAlert
-		* RecurringPayment
-		* Sendfriend
-		* Shipping
-		* Ups
-		* Usps
-		* Wishlist
+    * Added README files with module description for the following modules:
+        * Authorizenet
+        * Centinel
+        * Customer
+        * CustomerImportExport
+        * Dhl
+        * Fedex
+        * OfflinePayments
+        * OfflineShipping
+        * Ogone
+        * PayPalRecurringPayment
+        * Payment
+        * Paypal
+        * ProductAlert
+        * RecurringPayment
+        * Sendfriend
+        * Shipping
+        * Ups
+        * Usps
+        * Wishlist
 * Container-Based Page Layout:
     * Distributed the responsibility of View\Layout between three classes (PageLayout, PageConfig, GenericLayout)
     * Refactored controller actions to use ResultInterface objects:
@@ -689,20 +739,20 @@
   * Added new base classes in the Service infrastructure lib to support extensible Data Interfaces
   * Updated the WebApi framework serialization (for SOAP and REST) to process requests based on Data Interfaces and removed dependency on Data Objects
   * Added base class for Data Interface based builders and implemented a code generator for the same
- * File system improvements: 
+ * File system improvements:
    * List of available application directories is complete now and defined in the \Magento\Framework\Filesystem\DirectoryList and the \Magento\Framework\App\Filesystem\DirectoryList classes. There is no ability to extend the list in configuration
    * Directory paths  can be changed using environment/bootstrap
    * Information about necessary permissions (writable, readable) belongs to Setup Application, Magento Application does not possess this info and does not verify. Setup Application performs permissions validation
    * Unnecessary writable permissions are validated by Setup Application after installation and corresponding message is displayed to the user
  * Functional tests:
-  * Configure a product in a customer wishlist  in the Admin panel 
-  * Configure a product in a customer wishlist on the storefront 
-  * Create terms and conditions 
-  * Manage products stock 
-  * Move a product from a shopping card to a wishlist 
-  * Un-assign custom order status 
-  * Update terms and conditions 
-  * Update URL rewrites after moving/deleting a category 
+  * Configure a product in a customer wishlist  in the Admin panel
+  * Configure a product in a customer wishlist on the storefront
+  * Create terms and conditions
+  * Manage products stock
+  * Move a product from a shopping card to a wishlist
+  * Un-assign custom order status
+  * Update terms and conditions
+  * Update URL rewrites after moving/deleting a category
   * Update URL rewrites after changing category assignment for a product
   * View customer wishlist  in the Admin panel
   * Tax calculation test
@@ -752,44 +802,44 @@
     * Magento\Framework\Stdlib
     * Magento\Framework\Validator
  * Performance improvements:
-  * Reduced checkout response time by loading only current checkout step 
-  * Reduced the number of AJAX calls on checkout steps 
-  * Improved performance on the billing and shipping checkout steps 
-  * Improved performance in certain areas by loading translation data from cache 
-  * Removed transactions from visitors logging 
-  * Fixed classmap generator to consider namespaces 
-  * Eliminated a redundant query for category tree rendering 
-  * Optimized StoreManager and Storage performance 
-  * Optimized Object Manager 
+  * Reduced checkout response time by loading only current checkout step
+  * Reduced the number of AJAX calls on checkout steps
+  * Improved performance on the billing and shipping checkout steps
+  * Improved performance in certain areas by loading translation data from cache
+  * Removed transactions from visitors logging
+  * Fixed classmap generator to consider namespaces
+  * Eliminated a redundant query for category tree rendering
+  * Optimized StoreManager and Storage performance
+  * Optimized Object Manager
  * Fixed bugs:
-  * Fixed an issue where partial invoices and partial credit memos contained incorrect customer's tax details 
-  * Fixed an issue where a PHP fatal error occurred when logging in during checkout to order a product with FPT 
-  * Fixed an issue where FPT was not calculated in reorders 
-  * Fixed an issue where there was a duplicated Administrator role after installation 
-  * Fixed an issue where the Try Again button was disabled after entering the incorrect data during installation 
+  * Fixed an issue where partial invoices and partial credit memos contained incorrect customer's tax details
+  * Fixed an issue where a PHP fatal error occurred when logging in during checkout to order a product with FPT
+  * Fixed an issue where FPT was not calculated in reorders
+  * Fixed an issue where there was a duplicated Administrator role after installation
+  * Fixed an issue where the Try Again button was disabled after entering the incorrect data during installation
   * Fixed an issue where the "Application is not installed yet" error was thrown instead of redirecting to the Installation Wizard in the developer mode
-  * Fixed an issue where an error was thrown during installation with db_prefix option 
+  * Fixed an issue where an error was thrown during installation with db_prefix option
   * Fixed an issue where the SQL query was not optimized for product search ('catalogsearch_query')
-  * Fixed an issue where the wrong message was displayed after changing customer password on the storefront 
-  * Fixed an issue where Newsletter preview led to an empty page 
-  * Fixed an issue where a new search term was not displayed in suggested results 
-  * Fixed an issue where no results were found for the Products Viewed report 
-  * Fixed an issue where no results were found for Coupons reports 
-  * Fixed an issue with incremental Qty setting 
-  * Fixed an issue with allowing importing of negative weight values 
-  * Fixed an issue with Inventory - Only X left Treshold being not dependent on Qty for Item's Status to Become Out of Stock 
-  * Fixed an issue where the "Catalog Search Index index was rebuilt." message was displayed when reindexing the Catalog Search index  
+  * Fixed an issue where the wrong message was displayed after changing customer password on the storefront
+  * Fixed an issue where Newsletter preview led to an empty page
+  * Fixed an issue where a new search term was not displayed in suggested results
+  * Fixed an issue where no results were found for the Products Viewed report
+  * Fixed an issue where no results were found for Coupons reports
+  * Fixed an issue with incremental Qty setting
+  * Fixed an issue with allowing importing of negative weight values
+  * Fixed an issue with Inventory - Only X left Treshold being not dependent on Qty for Item's Status to Become Out of Stock
+  * Fixed an issue where the "Catalog Search Index index was rebuilt." message was displayed when reindexing the Catalog Search index
  * Search module:
-  * Integrated the Search library to the advanced search functionality 
-    * Substituted the old logic of the EAV attributes search by Advanced Search 
-    * Introduced mappers for MySQL adapter 
-    * Restored  the currency calculation functionality 
-    * Fixed sorting by relevance in quick search and advanced search 
-  * Integrated the Search library into the search widget functionality 
-    * Removed the dependency on the catalogsearch_result table 
-    * Substituted the old logic of EAV attributes by Quick search APIs 
-  * Search modularity: 
-    * Removed circular dependency between Catalog and  Catalog Search 
+  * Integrated the Search library to the advanced search functionality
+    * Substituted the old logic of the EAV attributes search by Advanced Search
+    * Introduced mappers for MySQL adapter
+    * Restored  the currency calculation functionality
+    * Fixed sorting by relevance in quick search and advanced search
+  * Integrated the Search library into the search widget functionality
+    * Removed the dependency on the catalogsearch_result table
+    * Substituted the old logic of EAV attributes by Quick search APIs
+  * Search modularity:
+    * Removed circular dependency between Catalog and  Catalog Search
     * Removed exceeded dependencies of the Search module
 
 0.1.0-alpha100
diff --git a/COPYING.txt b/COPYING.txt
index 7fafaa3e23d7148ba4df8624b7cb2582cf484554..d7d04f5b7edba818304507c9051c9e5ba195a916 100644
--- a/COPYING.txt
+++ b/COPYING.txt
@@ -1,7 +1,7 @@
 Each Magento source file included in this distribution is licensed under OSL 3.0 or the Magento Enterprise Edition (MEE) license
 
 http://opensource.org/licenses/osl-3.0.php  Open Software License (OSL 3.0)
-Please see <insert file name of the OSL license> for the full text of the OSL 3.0 license or contact license@magentocommerce.com for a copy.
+Please see LICENSE.txt for the full text of the OSL 3.0 license or contact license@magentocommerce.com for a copy.
 
-Subject to Licensee’s payment of fees and compliance with the terms and conditions of the MEE License, the MEE License supersedes the OSL 3.0 license for each source file.
+Subject to Licensee's payment of fees and compliance with the terms and conditions of the MEE License, the MEE License supersedes the OSL 3.0 license for each source file.
 Please see <insert file name of the MEE license> for the full text of the MEE License or visit http://magento.com/legal/terms/enterprise.
\ No newline at end of file
diff --git a/app/code/Magento/AdminNotification/Block/Grid/Renderer/Actions.php b/app/code/Magento/AdminNotification/Block/Grid/Renderer/Actions.php
index 06eaf466068f04d004f52629d611f9a0c537f327..d53da043e61ad9bb1c2f9f2f353da7fad9aad2c2 100644
--- a/app/code/Magento/AdminNotification/Block/Grid/Renderer/Actions.php
+++ b/app/code/Magento/AdminNotification/Block/Grid/Renderer/Actions.php
@@ -5,6 +5,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\AdminNotification\Block\Grid\Renderer;
 
 class Actions extends \Magento\Backend\Block\Widget\Grid\Column\Renderer\AbstractRenderer
diff --git a/app/code/Magento/AdminNotification/Block/ToolbarEntry.php b/app/code/Magento/AdminNotification/Block/ToolbarEntry.php
index a505245c4e9bb01819212b47c7700923de9e599d..0f301a162280b8de18da5568a042b349a3e12749 100644
--- a/app/code/Magento/AdminNotification/Block/ToolbarEntry.php
+++ b/app/code/Magento/AdminNotification/Block/ToolbarEntry.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\AdminNotification\Block;
 
 /**
diff --git a/app/code/Magento/AdminNotification/Model/Observer.php b/app/code/Magento/AdminNotification/Model/Observer.php
index e00218dd2dc26c2c3bfe003b9011d62c1a33991c..d25d89503b66c7009106c24dba7cfc03392e75ad 100644
--- a/app/code/Magento/AdminNotification/Model/Observer.php
+++ b/app/code/Magento/AdminNotification/Model/Observer.php
@@ -39,6 +39,7 @@ class Observer
      *
      * @param \Magento\Framework\Event\Observer $observer
      * @return void
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function preDispatch(\Magento\Framework\Event\Observer $observer)
     {
diff --git a/app/code/Magento/AdminNotification/Model/Resource/Grid/Collection.php b/app/code/Magento/AdminNotification/Model/Resource/Grid/Collection.php
index 85a46440ef05f7320dabd91622cfbe47f85c3113..b8b70ad479bbcf2f26ac52096ae192942d23caf9 100644
--- a/app/code/Magento/AdminNotification/Model/Resource/Grid/Collection.php
+++ b/app/code/Magento/AdminNotification/Model/Resource/Grid/Collection.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * AdminNotification Inbox model
  *
diff --git a/app/code/Magento/AdminNotification/Model/Resource/Inbox.php b/app/code/Magento/AdminNotification/Model/Resource/Inbox.php
index 6134ef9b9d1bc57f9acd700f55443f7f34074b6c..5799cb9211b5f321d85151c2da8947e668fb0aa9 100644
--- a/app/code/Magento/AdminNotification/Model/Resource/Inbox.php
+++ b/app/code/Magento/AdminNotification/Model/Resource/Inbox.php
@@ -58,6 +58,7 @@ class Inbox extends \Magento\Framework\Model\Resource\Db\AbstractDb
      *
      * @param \Magento\AdminNotification\Model\Inbox $object
      * @return array
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function getNoticeStatus(\Magento\AdminNotification\Model\Inbox $object)
     {
@@ -87,6 +88,7 @@ class Inbox extends \Magento\Framework\Model\Resource\Db\AbstractDb
      * @param \Magento\AdminNotification\Model\Inbox $object
      * @param array $data
      * @return void
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function parse(\Magento\AdminNotification\Model\Inbox $object, array $data)
     {
diff --git a/app/code/Magento/AdminNotification/Model/System/Message/Baseurl.php b/app/code/Magento/AdminNotification/Model/System/Message/Baseurl.php
index ef627597c4f0e0d9debac32ec4edaf1505250d62..ddab16bc6d71bd8986b1855f329a08945f1eefa2 100644
--- a/app/code/Magento/AdminNotification/Model/System/Message/Baseurl.php
+++ b/app/code/Magento/AdminNotification/Model/System/Message/Baseurl.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\AdminNotification\Model\System\Message;
 
 class Baseurl implements \Magento\Framework\Notification\MessageInterface
diff --git a/app/code/Magento/AdminNotification/Model/System/Message/Media/Synchronization/Error.php b/app/code/Magento/AdminNotification/Model/System/Message/Media/Synchronization/Error.php
index 8e20bd027d16cdd938648baf956e7c1832d5b3ca..f14413eb82833cc24cf9b5c659f10a8bde98b0c1 100644
--- a/app/code/Magento/AdminNotification/Model/System/Message/Media/Synchronization/Error.php
+++ b/app/code/Magento/AdminNotification/Model/System/Message/Media/Synchronization/Error.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\AdminNotification\Model\System\Message\Media\Synchronization;
 
 class Error extends \Magento\AdminNotification\Model\System\Message\Media\AbstractSynchronization
diff --git a/app/code/Magento/AdminNotification/Model/System/Message/Security.php b/app/code/Magento/AdminNotification/Model/System/Message/Security.php
index fc274d250d9c1dbc83c7b5c59876f22d1187ebdf..72465b8fdfc3f1c57137881ce5bd921a3a63a571 100644
--- a/app/code/Magento/AdminNotification/Model/System/Message/Security.php
+++ b/app/code/Magento/AdminNotification/Model/System/Message/Security.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\AdminNotification\Model\System\Message;
 
 class Security implements \Magento\Framework\Notification\MessageInterface
diff --git a/app/code/Magento/AdminNotification/composer.json b/app/code/Magento/AdminNotification/composer.json
index 772dd77e5093f3d09170048c47099bac48e04564..afe0c85867f61b7ccb796a4b5f27de9490617a1f 100644
--- a/app/code/Magento/AdminNotification/composer.json
+++ b/app/code/Magento/AdminNotification/composer.json
@@ -3,15 +3,15 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-core": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-core": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "lib-libxml": "*",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/AdminNotification/view/adminhtml/templates/notification/window.phtml b/app/code/Magento/AdminNotification/view/adminhtml/templates/notification/window.phtml
index 5fa52b0a6f91b50c4d7782af848fd229c961c9f4..dc2481ae7b569c6b8a3de42901fc2128eea81f9f 100644
--- a/app/code/Magento/AdminNotification/view/adminhtml/templates/notification/window.phtml
+++ b/app/code/Magento/AdminNotification/view/adminhtml/templates/notification/window.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/AdminNotification/view/adminhtml/templates/system/messages.phtml b/app/code/Magento/AdminNotification/view/adminhtml/templates/system/messages.phtml
index 35c967093cf3aece4615bd49396c1371d07ea4d5..6932b44b60abc92ba8fc4391d95c0b7a3d6908ff 100644
--- a/app/code/Magento/AdminNotification/view/adminhtml/templates/system/messages.phtml
+++ b/app/code/Magento/AdminNotification/view/adminhtml/templates/system/messages.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\AdminNotification\Block\System\Messages */ ?>
 
diff --git a/app/code/Magento/AdminNotification/view/adminhtml/templates/system/messages/popup.phtml b/app/code/Magento/AdminNotification/view/adminhtml/templates/system/messages/popup.phtml
index b3a2c883a963e023cd1f0a0fa2ffd21346543928..df849f7ddef563aa6713c19ed5e2f134d3aa101d 100644
--- a/app/code/Magento/AdminNotification/view/adminhtml/templates/system/messages/popup.phtml
+++ b/app/code/Magento/AdminNotification/view/adminhtml/templates/system/messages/popup.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\AdminNotification\Block\System\Messages\UnreadMessagePopup */ ?>
 <div id="system_messages_list" title="<?php echo $this->escapeHtml($this->getPopupTitle()); ?>">
@@ -14,7 +17,7 @@
         <?php endforeach;?>
     </ul>
 </div>
-<script type="text/javascript">
+<script>
 require([
     "jquery",
     "jquery/ui"
diff --git a/app/code/Magento/AdminNotification/view/adminhtml/templates/toolbar_entry.phtml b/app/code/Magento/AdminNotification/view/adminhtml/templates/toolbar_entry.phtml
index fe314086d2968c233670805f0aa7a603c733e836..9c0fdf546b19a6bfc08058764ec2e118f71635b8 100644
--- a/app/code/Magento/AdminNotification/view/adminhtml/templates/toolbar_entry.phtml
+++ b/app/code/Magento/AdminNotification/view/adminhtml/templates/toolbar_entry.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\AdminNotification\Block\ToolbarEntry */ ?>
 <?php $notificationCount = $this->getUnreadNotificationCount(); ?>
diff --git a/app/code/Magento/Authorization/Model/Acl/AclRetriever.php b/app/code/Magento/Authorization/Model/Acl/AclRetriever.php
index d572f94904d6a23823544f06573ebfc6218a8725..77fd1bb99186da3a4eea59a293c4a310f36dbac6 100644
--- a/app/code/Magento/Authorization/Model/Acl/AclRetriever.php
+++ b/app/code/Magento/Authorization/Model/Acl/AclRetriever.php
@@ -17,6 +17,7 @@ use Psr\Log\LoggerInterface as Logger;
 
 /**
  * Permission tree retriever
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class AclRetriever
 {
diff --git a/app/code/Magento/Authorization/Model/Resource/Rules.php b/app/code/Magento/Authorization/Model/Resource/Rules.php
index 79ecf007b8fd61153b7a1927f8d628b173b3df5a..5e08f0a6cac10ed4631f330a453b778d4bd4653d 100644
--- a/app/code/Magento/Authorization/Model/Resource/Rules.php
+++ b/app/code/Magento/Authorization/Model/Resource/Rules.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Authorization\Model\Resource;
 
 /**
diff --git a/app/code/Magento/Authorization/composer.json b/app/code/Magento/Authorization/composer.json
index 46060369cb7e6384d4dd31786fd0915e05ae6745..d2f381ae0325a7815a5fad52d9c1cb112cedaaf2 100644
--- a/app/code/Magento/Authorization/composer.json
+++ b/app/code/Magento/Authorization/composer.json
@@ -3,12 +3,12 @@
     "description": "Authorization module provides access to Magento ACL functionality.",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/Backend/App/Action.php b/app/code/Magento/Backend/App/Action.php
index f2d04fba8bf37f4407fd513f054f093411933cb3..784ea97a090f74e93b5ec238e4626c1edb650165 100644
--- a/app/code/Magento/Backend/App/Action.php
+++ b/app/code/Magento/Backend/App/Action.php
@@ -9,6 +9,9 @@
  */
 namespace Magento\Backend\App;
 
+/**
+ * @SuppressWarnings(PHPMD.NumberOfChildren)
+ */
 class Action extends \Magento\Backend\App\AbstractAction
 {
 }
diff --git a/app/code/Magento/Backend/App/Action/Context.php b/app/code/Magento/Backend/App/Action/Context.php
index 51408474cdc0f8d481d9781852fab1092941343a..ceae4ef4bf04e4d98c9545d8fb72cd479a200875 100644
--- a/app/code/Magento/Backend/App/Action/Context.php
+++ b/app/code/Magento/Backend/App/Action/Context.php
@@ -7,6 +7,7 @@ namespace Magento\Backend\App\Action;
 
 /**
  * Backend Controller context
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Context extends \Magento\Framework\App\Action\Context
 {
@@ -68,6 +69,7 @@ class Context extends \Magento\Framework\App\Action\Context
      * @param \Magento\Core\App\Action\FormKeyValidator $formKeyValidator
      * @param \Magento\Framework\Locale\ResolverInterface $localeResolver
      * @param bool $canUseBaseUrl
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\App\RequestInterface $request,
@@ -136,6 +138,7 @@ class Context extends \Magento\Framework\App\Action\Context
 
     /**
      * @return boolean
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getCanUseBaseUrl()
     {
diff --git a/app/code/Magento/Backend/App/Config.php b/app/code/Magento/Backend/App/Config.php
index d6344c1bf758689d581eec00fdf367aa309b254e..d8eaa7af14254bd16dd3c8f7ae3cc9a549e75cde 100644
--- a/app/code/Magento/Backend/App/Config.php
+++ b/app/code/Magento/Backend/App/Config.php
@@ -5,6 +5,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Backend\App;
 
 /**
diff --git a/app/code/Magento/Backend/App/DefaultPath.php b/app/code/Magento/Backend/App/DefaultPath.php
index 91c1a1ab8d546a9ec2299ca562222f5d9842a32b..3298770157922e665207371779367225bbc018c6 100644
--- a/app/code/Magento/Backend/App/DefaultPath.php
+++ b/app/code/Magento/Backend/App/DefaultPath.php
@@ -16,6 +16,7 @@ class DefaultPath implements \Magento\Framework\App\DefaultPathInterface
 
     /**
      * @param \Magento\Backend\App\ConfigInterface $config
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function __construct(\Magento\Backend\App\ConfigInterface $config)
     {
diff --git a/app/code/Magento/Backend/Block/Dashboard.php b/app/code/Magento/Backend/Block/Dashboard.php
index 36e268e5492423fc205bb971565f650814e674f6..6433c0a0514b7e127299077aa81a14f6ca8aa1af 100644
--- a/app/code/Magento/Backend/Block/Dashboard.php
+++ b/app/code/Magento/Backend/Block/Dashboard.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Backend\Block;
 
 class Dashboard extends \Magento\Backend\Block\Template
diff --git a/app/code/Magento/Backend/Block/Dashboard/AbstractDashboard.php b/app/code/Magento/Backend/Block/Dashboard/AbstractDashboard.php
index 88b134a5d227c8a839b0b12997a2115f46088f94..d4572d0e3c0cf9dd82154e4c7bfbc873d443bdf8 100644
--- a/app/code/Magento/Backend/Block/Dashboard/AbstractDashboard.php
+++ b/app/code/Magento/Backend/Block/Dashboard/AbstractDashboard.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Backend\Block\Dashboard;
 
 /**
diff --git a/app/code/Magento/Backend/Block/Dashboard/Graph.php b/app/code/Magento/Backend/Block/Dashboard/Graph.php
index a005066c96a3c0cac22dbbe7737776b0053b64d6..91c4d619072bac7d99c3e452ff28da690468faf0 100644
--- a/app/code/Magento/Backend/Block/Dashboard/Graph.php
+++ b/app/code/Magento/Backend/Block/Dashboard/Graph.php
@@ -186,6 +186,10 @@ class Graph extends \Magento\Backend\Block\Dashboard\AbstractDashboard
      *
      * @param bool $directUrl
      * @return string
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function getChartUrl($directUrl = true)
     {
diff --git a/app/code/Magento/Backend/Block/Dashboard/Orders/Grid.php b/app/code/Magento/Backend/Block/Dashboard/Orders/Grid.php
index 969f69109639eaba652f13c021c4d6602e96acf4..8ecf07022340e93948602f9ad50c03f53b27ea72 100644
--- a/app/code/Magento/Backend/Block/Dashboard/Orders/Grid.php
+++ b/app/code/Magento/Backend/Block/Dashboard/Orders/Grid.php
@@ -9,6 +9,7 @@ namespace Magento\Backend\Block\Dashboard\Orders;
  * Adminhtml dashboard recent orders grid
  *
  * @author      Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.DepthOfInheritance)
  */
 class Grid extends \Magento\Backend\Block\Dashboard\Grid
 {
diff --git a/app/code/Magento/Backend/Block/Dashboard/Tab/Customers/Most.php b/app/code/Magento/Backend/Block/Dashboard/Tab/Customers/Most.php
index 6ab4dd301d8b87aab4e8fcd379a0361beab9d146..69a835e1ca043dd48a3b5d2110b38316e4d72767 100644
--- a/app/code/Magento/Backend/Block/Dashboard/Tab/Customers/Most.php
+++ b/app/code/Magento/Backend/Block/Dashboard/Tab/Customers/Most.php
@@ -9,6 +9,7 @@ namespace Magento\Backend\Block\Dashboard\Tab\Customers;
  * Adminhtml dashboard most active buyers
  *
  * @author      Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.DepthOfInheritance)
  */
 class Most extends \Magento\Backend\Block\Dashboard\Grid
 {
diff --git a/app/code/Magento/Backend/Block/Dashboard/Tab/Customers/Newest.php b/app/code/Magento/Backend/Block/Dashboard/Tab/Customers/Newest.php
index 6fa8e88aca1bd184ed516a6100d02a5daf87605d..ce7b2ac229701b1698b6c22b6d0fc449965e1a8c 100644
--- a/app/code/Magento/Backend/Block/Dashboard/Tab/Customers/Newest.php
+++ b/app/code/Magento/Backend/Block/Dashboard/Tab/Customers/Newest.php
@@ -9,6 +9,7 @@ namespace Magento\Backend\Block\Dashboard\Tab\Customers;
  * Adminhtml dashboard most recent customers grid
  *
  * @author      Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.DepthOfInheritance)
  */
 class Newest extends \Magento\Backend\Block\Dashboard\Grid
 {
diff --git a/app/code/Magento/Backend/Block/Dashboard/Tab/Products/Ordered.php b/app/code/Magento/Backend/Block/Dashboard/Tab/Products/Ordered.php
index 756f0574f535725d6e3feceaf2eaff520258308b..a211d5d26b87da0c468fa988facc4cc45c75cbf3 100644
--- a/app/code/Magento/Backend/Block/Dashboard/Tab/Products/Ordered.php
+++ b/app/code/Magento/Backend/Block/Dashboard/Tab/Products/Ordered.php
@@ -9,6 +9,7 @@ namespace Magento\Backend\Block\Dashboard\Tab\Products;
  * Adminhtml dashboard most ordered products grid
  *
  * @author      Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.DepthOfInheritance)
  */
 class Ordered extends \Magento\Backend\Block\Dashboard\Grid
 {
diff --git a/app/code/Magento/Backend/Block/Dashboard/Tab/Products/Viewed.php b/app/code/Magento/Backend/Block/Dashboard/Tab/Products/Viewed.php
index 33c91166768959d9131fb2f139d3d72922ba44e2..42c7cbb9115f99b8da761f0f1fb2d4fa94ea2737 100644
--- a/app/code/Magento/Backend/Block/Dashboard/Tab/Products/Viewed.php
+++ b/app/code/Magento/Backend/Block/Dashboard/Tab/Products/Viewed.php
@@ -9,6 +9,7 @@ namespace Magento\Backend\Block\Dashboard\Tab\Products;
  * Adminhtml dashboard most viewed products grid
  *
  * @author      Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.DepthOfInheritance)
  */
 class Viewed extends \Magento\Backend\Block\Dashboard\Grid
 {
diff --git a/app/code/Magento/Backend/Block/Menu.php b/app/code/Magento/Backend/Block/Menu.php
index c6d269e464131319be0187389969d87e22a5a0b9..83f63bf04e03ecbc4b15a152c36ade4e6d7783bb 100644
--- a/app/code/Magento/Backend/Block/Menu.php
+++ b/app/code/Magento/Backend/Block/Menu.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Backend\Block;
 
 /**
diff --git a/app/code/Magento/Backend/Block/Page/Header.php b/app/code/Magento/Backend/Block/Page/Header.php
index 72b7397a75c9bce2a0e2d84837bb561f2e26376a..f4b8eb0b23ed3660b45255b366c75c2771afb73d 100644
--- a/app/code/Magento/Backend/Block/Page/Header.php
+++ b/app/code/Magento/Backend/Block/Page/Header.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Backend\Block\Page;
 
 /**
diff --git a/app/code/Magento/Backend/Block/Page/Notices.php b/app/code/Magento/Backend/Block/Page/Notices.php
index 4096807e8017ed1182a77a4964cd9662a28b4312..231d51c9919ddb093d476d93f90d54bcd8268294 100644
--- a/app/code/Magento/Backend/Block/Page/Notices.php
+++ b/app/code/Magento/Backend/Block/Page/Notices.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Adminhtml header notices block
  *
diff --git a/app/code/Magento/Backend/Block/Page/System/Config/Robots/Reset.php b/app/code/Magento/Backend/Block/Page/System/Config/Robots/Reset.php
index efe6e9c50acc37e60446569a053da137b72a8d1e..a02603a372e860b76e2038fbaaa7c1ff85f2953a 100644
--- a/app/code/Magento/Backend/Block/Page/System/Config/Robots/Reset.php
+++ b/app/code/Magento/Backend/Block/Page/System/Config/Robots/Reset.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Backend\Block\Page\System\Config\Robots;
 
 /**
diff --git a/app/code/Magento/Backend/Block/Store/Switcher/Form/Renderer/Fieldset.php b/app/code/Magento/Backend/Block/Store/Switcher/Form/Renderer/Fieldset.php
index fef4b45c6c0ca9880b5a0b10da93af21a77e7b1e..dc4478cca4f6a9fe714453fb2fef8d121c367333 100644
--- a/app/code/Magento/Backend/Block/Store/Switcher/Form/Renderer/Fieldset.php
+++ b/app/code/Magento/Backend/Block/Store/Switcher/Form/Renderer/Fieldset.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Backend\Block\Store\Switcher\Form\Renderer;
 
 /**
diff --git a/app/code/Magento/Backend/Block/System/Config/Form/Field.php b/app/code/Magento/Backend/Block/System/Config/Form/Field.php
index cdb08a29c2c2829b716d6c428db2815d4587af40..39ea89b31ca6cacba917185784643949ae390038 100644
--- a/app/code/Magento/Backend/Block/System/Config/Form/Field.php
+++ b/app/code/Magento/Backend/Block/System/Config/Form/Field.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Abstract config form element renderer
  *
@@ -14,6 +16,7 @@ namespace Magento\Backend\Block\System\Config\Form;
 
 /**
  * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ * @SuppressWarnings(PHPMD.NumberOfChildren)
  */
 class Field extends \Magento\Backend\Block\Template implements \Magento\Framework\Data\Form\Element\Renderer\RendererInterface
 {
diff --git a/app/code/Magento/Backend/Block/System/Config/Form/Field/FieldArray/AbstractFieldArray.php b/app/code/Magento/Backend/Block/System/Config/Form/Field/FieldArray/AbstractFieldArray.php
index 38154796f34b4c0cfffa824aae12761ab062c66c..1d6ae66117b0dd9545df01976ccb54bec978a4bc 100644
--- a/app/code/Magento/Backend/Block/System/Config/Form/Field/FieldArray/AbstractFieldArray.php
+++ b/app/code/Magento/Backend/Block/System/Config/Form/Field/FieldArray/AbstractFieldArray.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Backend\Block\System\Config\Form\Field\FieldArray;
 
 /**
diff --git a/app/code/Magento/Backend/Block/System/Config/Form/Field/Select/Allowspecific.php b/app/code/Magento/Backend/Block/System/Config/Form/Field/Select/Allowspecific.php
index 9864a56503df687665715b6e3ea23946b844c3b0..1137804348217b52d38150f4a23e32ee357ccb8c 100644
--- a/app/code/Magento/Backend/Block/System/Config/Form/Field/Select/Allowspecific.php
+++ b/app/code/Magento/Backend/Block/System/Config/Form/Field/Select/Allowspecific.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * System configuration shipping methods allow all countries select
  *
diff --git a/app/code/Magento/Backend/Block/System/Design/Edit/Tab/General.php b/app/code/Magento/Backend/Block/System/Design/Edit/Tab/General.php
index cf875ddf67c0f934134d612b0967e3cd9e0f90dd..acf12f85721bb866dbe8f5d4fd875ef2f4b0b324 100644
--- a/app/code/Magento/Backend/Block/System/Design/Edit/Tab/General.php
+++ b/app/code/Magento/Backend/Block/System/Design/Edit/Tab/General.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Backend\Block\System\Design\Edit\Tab;
 
 class General extends \Magento\Backend\Block\Widget\Form\Generic
diff --git a/app/code/Magento/Backend/Block/Widget/Button/ButtonList.php b/app/code/Magento/Backend/Block/Widget/Button/ButtonList.php
index cbc23d665e6e80f8de0a06971c2ef415907abbfa..2ff7df01256ccf732b9adf73f3cd781c65353b54 100644
--- a/app/code/Magento/Backend/Block/Widget/Button/ButtonList.php
+++ b/app/code/Magento/Backend/Block/Widget/Button/ButtonList.php
@@ -35,6 +35,7 @@ class ButtonList
      * @param integer $sortOrder
      * @param string|null $region That button should be displayed in ('toolbar', 'header', 'footer', null)
      * @return void
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function add($buttonId, $data, $level = 0, $sortOrder = 0, $region = 'toolbar')
     {
diff --git a/app/code/Magento/Backend/Block/Widget/Form/Container.php b/app/code/Magento/Backend/Block/Widget/Form/Container.php
index 063ee031d3bb98c24477f7354bd3d0b69746d008..73e18d3c7c1dadaf11a134f2e70dc1babdb7d5b6 100644
--- a/app/code/Magento/Backend/Block/Widget/Form/Container.php
+++ b/app/code/Magento/Backend/Block/Widget/Form/Container.php
@@ -9,6 +9,7 @@ namespace Magento\Backend\Block\Widget\Form;
  * Backend form container block
  *
  * @author      Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.NumberOfChildren)
  */
 class Container extends \Magento\Backend\Block\Widget\Container
 {
@@ -178,7 +179,7 @@ class Container extends \Magento\Backend\Block\Widget\Container
     public function getFormInitScripts()
     {
         if (!empty($this->_formInitScripts) && is_array($this->_formInitScripts)) {
-            return '<script type="text/javascript">' . implode("\n", $this->_formInitScripts) . '</script>';
+            return '<script>' . implode("\n", $this->_formInitScripts) . '</script>';
         }
         return '';
     }
@@ -189,7 +190,7 @@ class Container extends \Magento\Backend\Block\Widget\Container
     public function getFormScripts()
     {
         if (!empty($this->_formScripts) && is_array($this->_formScripts)) {
-            return '<script type="text/javascript">' . implode("\n", $this->_formScripts) . '</script>';
+            return '<script>' . implode("\n", $this->_formScripts) . '</script>';
         }
         return '';
     }
diff --git a/app/code/Magento/Backend/Block/Widget/Form/Element/Dependence.php b/app/code/Magento/Backend/Block/Widget/Form/Element/Dependence.php
index 146d669c968ae2d5379cf8588aa7eb8368c8b773..093b275c11779ed3cdc0246626e4f7af41b13dc2 100644
--- a/app/code/Magento/Backend/Block/Widget/Form/Element/Dependence.php
+++ b/app/code/Magento/Backend/Block/Widget/Form/Element/Dependence.php
@@ -120,7 +120,7 @@ class Dependence extends \Magento\Backend\Block\AbstractBlock
         if (!$this->_depends) {
             return '';
         }
-        return '<script type="text/javascript">
+        return '<script>
             require(["mage/adminhtml/form"], function(){
         new FormElementDependenceController(' .
             $this->_getDependsJson() .
diff --git a/app/code/Magento/Backend/Block/Widget/Form/Element/Gallery.php b/app/code/Magento/Backend/Block/Widget/Form/Element/Gallery.php
index a8c7b2dcb6dc8495775f6c203bfa51674e3d230a..86f4f7fa68874560b81636dd68aabf4dc15ab4f2 100644
--- a/app/code/Magento/Backend/Block/Widget/Form/Element/Gallery.php
+++ b/app/code/Magento/Backend/Block/Widget/Form/Element/Gallery.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Backend\Block\Widget\Form\Element;
 
 use Magento\Framework\Data\Form\Element\AbstractElement;
diff --git a/app/code/Magento/Backend/Block/Widget/Form/Renderer/Element.php b/app/code/Magento/Backend/Block/Widget/Form/Renderer/Element.php
index f7b561175392ebf047d534e8198219fae2063bbb..939a0100ac4ca0cbcbce20fef2ef42ec7167cc97 100644
--- a/app/code/Magento/Backend/Block/Widget/Form/Renderer/Element.php
+++ b/app/code/Magento/Backend/Block/Widget/Form/Renderer/Element.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Backend\Block\Widget\Form\Renderer;
 
 use Magento\Framework\Data\Form\Element\AbstractElement;
diff --git a/app/code/Magento/Backend/Block/Widget/Form/Renderer/Fieldset.php b/app/code/Magento/Backend/Block/Widget/Form/Renderer/Fieldset.php
index 68eda4b964a1de664f1f6556cc52824e8a5352e8..b2b9b7f480efaeec44d6f87bafe8b45aed1fdd2e 100644
--- a/app/code/Magento/Backend/Block/Widget/Form/Renderer/Fieldset.php
+++ b/app/code/Magento/Backend/Block/Widget/Form/Renderer/Fieldset.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Backend\Block\Widget\Form\Renderer;
 
 use Magento\Framework\Data\Form\Element\AbstractElement;
diff --git a/app/code/Magento/Backend/Block/Widget/Form/Renderer/Fieldset/Element.php b/app/code/Magento/Backend/Block/Widget/Form/Renderer/Fieldset/Element.php
index 07036c4b89ef1df83af79f1bb6a5a6c9c0a07e8e..bef68253a1c848bfe9e98aec1cce5b47aac33ec3 100644
--- a/app/code/Magento/Backend/Block/Widget/Form/Renderer/Fieldset/Element.php
+++ b/app/code/Magento/Backend/Block/Widget/Form/Renderer/Fieldset/Element.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Backend\Block\Widget\Form\Renderer\Fieldset;
 
 use Magento\Framework\Data\Form\Element\AbstractElement;
diff --git a/app/code/Magento/Backend/Block/Widget/Grid.php b/app/code/Magento/Backend/Block/Widget/Grid.php
index 8ebfcef792d1c66238f21295a2cf48b820757e3b..b98ddc117f4d319b49ec126aa2a62487f0342744 100644
--- a/app/code/Magento/Backend/Block/Widget/Grid.php
+++ b/app/code/Magento/Backend/Block/Widget/Grid.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Backend\Block\Widget;
 
 /**
@@ -10,6 +13,7 @@ namespace Magento\Backend\Block\Widget;
  *
  * @method string getRowClickCallback() getRowClickCallback()
  * @method \Magento\Backend\Block\Widget\Grid setRowClickCallback() setRowClickCallback(string $value)
+ * @SuppressWarnings(PHPMD.TooManyFields)
  */
 class Grid extends \Magento\Backend\Block\Widget
 {
@@ -146,6 +150,7 @@ class Grid extends \Magento\Backend\Block\Widget
 
     /**
      * @return void
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _construct()
     {
@@ -331,6 +336,7 @@ class Grid extends \Magento\Backend\Block\Widget
      * Apply sorting and filtering to collection
      *
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _prepareCollection()
     {
@@ -578,6 +584,7 @@ class Grid extends \Magento\Backend\Block\Widget
      * Return visibility of pager
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getPagerVisibility()
     {
@@ -599,6 +606,7 @@ class Grid extends \Magento\Backend\Block\Widget
      * Return visibility of message blocks
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getMessageBlockVisibility()
     {
@@ -761,6 +769,7 @@ class Grid extends \Magento\Backend\Block\Widget
      * Return count totals
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getCountTotals()
     {
diff --git a/app/code/Magento/Backend/Block/Widget/Grid/Column.php b/app/code/Magento/Backend/Block/Widget/Grid/Column.php
index c1f28c40cd9be0c02c92933aa6d4c7813fee76fb..f5af4bf45fc6fb37a4651d5f50950c2dd1c3bca4 100644
--- a/app/code/Magento/Backend/Block/Widget/Grid/Column.php
+++ b/app/code/Magento/Backend/Block/Widget/Grid/Column.php
@@ -232,6 +232,7 @@ class Column extends \Magento\Backend\Block\Widget
 
     /**
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getSortable()
     {
diff --git a/app/code/Magento/Backend/Block/Widget/Grid/Column/Filter/Date.php b/app/code/Magento/Backend/Block/Widget/Grid/Column/Filter/Date.php
index 5abd1c8feb068d080ef45f8d42f3d0147fcb60cd..9510e30b9b165df44b72fae1f453da6657940964 100644
--- a/app/code/Magento/Backend/Block/Widget/Grid/Column/Filter/Date.php
+++ b/app/code/Magento/Backend/Block/Widget/Grid/Column/Filter/Date.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Backend\Block\Widget\Grid\Column\Filter;
 
 /**
@@ -86,7 +89,7 @@ class Date extends \Magento\Backend\Block\Widget\Grid\Column\Filter\AbstractFilt
             ' value="' .
             $this->_localeResolver->getLocaleCode() .
             '"/>';
-        $html .= '<script type="text/javascript">
+        $html .= '<script>
             require(["jquery", "mage/calendar"], function($){
                 $("#' .
             $htmlId .
diff --git a/app/code/Magento/Backend/Block/Widget/Grid/Column/Filter/Datetime.php b/app/code/Magento/Backend/Block/Widget/Grid/Column/Filter/Datetime.php
index 0f1e81b0dd787301c6ab3759cf37c2f3b3598f9e..0505ff14caa823bbef143e59c17dc8f3ed0788ca 100644
--- a/app/code/Magento/Backend/Block/Widget/Grid/Column/Filter/Datetime.php
+++ b/app/code/Magento/Backend/Block/Widget/Grid/Column/Filter/Datetime.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Backend\Block\Widget\Grid\Column\Filter;
 
 /**
@@ -130,7 +133,7 @@ class Datetime extends \Magento\Backend\Block\Widget\Grid\Column\Filter\Date
             ) . '/>' . '</div></div>';
         $html .= '<input type="hidden" name="' . $this->_getHtmlName() . '[locale]"' . ' value="'
             . $this->_localeResolver->getLocaleCode() . '"/>';
-        $html .= '<script type="text/javascript">
+        $html .= '<script>
             require(["jquery", "mage/calendar"],function($){
                     $("#' . $htmlId . '_range").dateRange({
                         dateFormat: "' . $format . '",
diff --git a/app/code/Magento/Backend/Block/Widget/Grid/Column/Filter/Store.php b/app/code/Magento/Backend/Block/Widget/Grid/Column/Filter/Store.php
index 44f7ad083f899e2c9984ab540f6e40adac051803..c589c58e9cfe864830d54c05520b54f9b4a41f89 100644
--- a/app/code/Magento/Backend/Block/Widget/Grid/Column/Filter/Store.php
+++ b/app/code/Magento/Backend/Block/Widget/Grid/Column/Filter/Store.php
@@ -37,6 +37,8 @@ class Store extends \Magento\Backend\Block\Widget\Grid\Column\Filter\AbstractFil
      * Render HTML of the element
      *
      * @return string
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function getHtml()
     {
diff --git a/app/code/Magento/Backend/Block/Widget/Grid/Column/Renderer/AbstractRenderer.php b/app/code/Magento/Backend/Block/Widget/Grid/Column/Renderer/AbstractRenderer.php
index 7871caac761531a3aafd92a1cc2b05f3cce5b67c..3e58f4104f66e56b77d946fbaa506e84d81e7268 100644
--- a/app/code/Magento/Backend/Block/Widget/Grid/Column/Renderer/AbstractRenderer.php
+++ b/app/code/Magento/Backend/Block/Widget/Grid/Column/Renderer/AbstractRenderer.php
@@ -10,6 +10,7 @@ use Magento\Framework\Object;
 
 /**
  * Backend grid item abstract renderer
+ * @SuppressWarnings(PHPMD.NumberOfChildren)
  */
 abstract class AbstractRenderer extends \Magento\Backend\Block\AbstractBlock implements RendererInterface
 {
diff --git a/app/code/Magento/Backend/Block/Widget/Grid/Column/Renderer/Action.php b/app/code/Magento/Backend/Block/Widget/Grid/Column/Renderer/Action.php
index 098e9010eb971de0177dac1636e5e27968a2d2dd..2da717929a0ecb67b15e1676c14d65c450c00efc 100644
--- a/app/code/Magento/Backend/Block/Widget/Grid/Column/Renderer/Action.php
+++ b/app/code/Magento/Backend/Block/Widget/Grid/Column/Renderer/Action.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Backend\Block\Widget\Grid\Column\Renderer;
 
 /**
@@ -116,6 +119,8 @@ class Action extends \Magento\Backend\Block\Widget\Grid\Column\Renderer\Text
      * @param string &$actionCaption
      * @param \Magento\Framework\Object $row
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     protected function _transformActionData(&$action, &$actionCaption, \Magento\Framework\Object $row)
     {
diff --git a/app/code/Magento/Backend/Block/Widget/Grid/Column/Renderer/Checkbox.php b/app/code/Magento/Backend/Block/Widget/Grid/Column/Renderer/Checkbox.php
index dd3f371962d76c897476d31c015bf25bf1a0b3d0..a0a9a97fc45dc24756cfaf11bb91304109a8827d 100644
--- a/app/code/Magento/Backend/Block/Widget/Grid/Column/Renderer/Checkbox.php
+++ b/app/code/Magento/Backend/Block/Widget/Grid/Column/Renderer/Checkbox.php
@@ -70,6 +70,8 @@ class Checkbox extends \Magento\Backend\Block\Widget\Grid\Column\Renderer\Abstra
      *
      * @param   \Magento\Framework\Object $row
      * @return  string
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function render(\Magento\Framework\Object $row)
     {
diff --git a/app/code/Magento/Backend/Block/Widget/Grid/Column/Renderer/Currency.php b/app/code/Magento/Backend/Block/Widget/Grid/Column/Renderer/Currency.php
index 727cd51239617b73a627f491ddf8f991ba7afb2b..f0454dd37a9ec1e60fd5e232c06e60635bf37d00 100644
--- a/app/code/Magento/Backend/Block/Widget/Grid/Column/Renderer/Currency.php
+++ b/app/code/Magento/Backend/Block/Widget/Grid/Column/Renderer/Currency.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Backend\Block\Widget\Grid\Column\Renderer;
 
 /**
diff --git a/app/code/Magento/Backend/Block/Widget/Grid/Column/Renderer/Options.php b/app/code/Magento/Backend/Block/Widget/Grid/Column/Renderer/Options.php
index 6dddb99c95e2a28e6467edb21b25a9ba1ba790a9..2ed159642da23198a7aca2b9f3f967ab42b41787 100644
--- a/app/code/Magento/Backend/Block/Widget/Grid/Column/Renderer/Options.php
+++ b/app/code/Magento/Backend/Block/Widget/Grid/Column/Renderer/Options.php
@@ -27,6 +27,7 @@ class Options extends \Magento\Backend\Block\Widget\Grid\Column\Renderer\Text
      *
      * @param \Magento\Framework\Object $row
      * @return string|void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function render(\Magento\Framework\Object $row)
     {
diff --git a/app/code/Magento/Backend/Block/Widget/Grid/Column/Renderer/Store.php b/app/code/Magento/Backend/Block/Widget/Grid/Column/Renderer/Store.php
index d5c5f1152e1f56002207166fa9ae15067168a202..628d68b0fbccd0c69f2b7b698a499f1575d6d693 100644
--- a/app/code/Magento/Backend/Block/Widget/Grid/Column/Renderer/Store.php
+++ b/app/code/Magento/Backend/Block/Widget/Grid/Column/Renderer/Store.php
@@ -53,6 +53,7 @@ class Store extends \Magento\Backend\Block\Widget\Grid\Column\Renderer\AbstractR
      * Retrieve 'show all stores label' flag
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     protected function _getShowAllStoresLabelFlag()
     {
@@ -67,6 +68,7 @@ class Store extends \Magento\Backend\Block\Widget\Grid\Column\Renderer\AbstractR
      * Retrieve 'show empty stores label' flag
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     protected function _getShowEmptyStoresLabelFlag()
     {
@@ -82,6 +84,8 @@ class Store extends \Magento\Backend\Block\Widget\Grid\Column\Renderer\AbstractR
      *
      * @param \Magento\Framework\Object $row
      * @return string
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function render(\Magento\Framework\Object $row)
     {
@@ -132,6 +136,7 @@ class Store extends \Magento\Backend\Block\Widget\Grid\Column\Renderer\AbstractR
      *
      * @param \Magento\Framework\Object $row
      * @return string
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function renderExport(\Magento\Framework\Object $row)
     {
diff --git a/app/code/Magento/Backend/Block/Widget/Grid/ColumnSet.php b/app/code/Magento/Backend/Block/Widget/Grid/ColumnSet.php
index e8eba5853fd4b28ba1d3c641577b2494765ece71..6078fff1bcbb6da5c87dbf28eeb3a730919569d4 100644
--- a/app/code/Magento/Backend/Block/Widget/Grid/ColumnSet.php
+++ b/app/code/Magento/Backend/Block/Widget/Grid/ColumnSet.php
@@ -101,6 +101,7 @@ class ColumnSet extends \Magento\Framework\View\Element\Template
      * @param \Magento\Backend\Model\Widget\Grid\SubTotals $subtotals
      * @param \Magento\Backend\Model\Widget\Grid\Totals $totals
      * @param array $data
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function __construct(
         \Magento\Framework\View\Element\Template\Context $context,
@@ -486,6 +487,7 @@ class ColumnSet extends \Magento\Framework\View\Element\Template
      * Retrieve flag is collapsed
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsCollapsed()
     {
@@ -528,6 +530,7 @@ class ColumnSet extends \Magento\Framework\View\Element\Template
      * Return count subtotals
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getCountSubTotals()
     {
@@ -550,6 +553,7 @@ class ColumnSet extends \Magento\Framework\View\Element\Template
      * Return count totals
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getCountTotals()
     {
diff --git a/app/code/Magento/Backend/Block/Widget/Grid/Container.php b/app/code/Magento/Backend/Block/Widget/Grid/Container.php
index 091ddbfebe50c007d2f97ab7ba6d86733cf19a50..875158fc2170c47e8eeb04d0250efc7c4fee8f22 100644
--- a/app/code/Magento/Backend/Block/Widget/Grid/Container.php
+++ b/app/code/Magento/Backend/Block/Widget/Grid/Container.php
@@ -9,6 +9,7 @@ namespace Magento\Backend\Block\Widget\Grid;
  * Backend grid container block
  *
  * @author      Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.NumberOfChildren)
  */
 class Container extends \Magento\Backend\Block\Widget\Container
 {
diff --git a/app/code/Magento/Backend/Block/Widget/Grid/Export.php b/app/code/Magento/Backend/Block/Widget/Grid/Export.php
index 6adeb90d57ddd22f70f58f53ebb1e08c84236af6..04a21fe7734109060210f04873753c80dd952144 100644
--- a/app/code/Magento/Backend/Block/Widget/Grid/Export.php
+++ b/app/code/Magento/Backend/Block/Widget/Grid/Export.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Backend\Block\Widget\Grid;
 
 use Magento\Framework\App\Filesystem\DirectoryList;
@@ -106,6 +109,7 @@ class Export extends \Magento\Backend\Block\Widget implements \Magento\Backend\B
      * Return count totals
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getCountTotals()
     {
diff --git a/app/code/Magento/Backend/Block/Widget/Grid/Extended.php b/app/code/Magento/Backend/Block/Widget/Grid/Extended.php
index eb54ce41d1d822c32c1633201665dba343eadaae..fe01cec33c9c1f51bc3c9ed88703ddcb541f15fa 100644
--- a/app/code/Magento/Backend/Block/Widget/Grid/Extended.php
+++ b/app/code/Magento/Backend/Block/Widget/Grid/Extended.php
@@ -7,6 +7,12 @@ namespace Magento\Backend\Block\Widget\Grid;
 
 use Magento\Framework\App\Filesystem\DirectoryList;
 
+/**
+ * @SuppressWarnings(PHPMD.ExcessivePublicCount)
+ * @SuppressWarnings(PHPMD.TooManyFields)
+ * @SuppressWarnings(PHPMD.ExcessiveClassComplexity)
+ * @SuppressWarnings(PHPMD.NumberOfChildren)
+ */
 class Extended extends \Magento\Backend\Block\Widget\Grid implements \Magento\Backend\Block\Widget\Grid\ExportInterface
 {
     /**
@@ -778,6 +784,7 @@ class Extended extends \Magento\Backend\Block\Widget\Grid implements \Magento\Ba
      * Return visibility of column headers
      *
      * @return boolean
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getHeadersVisibility()
     {
@@ -799,6 +806,7 @@ class Extended extends \Magento\Backend\Block\Widget\Grid implements \Magento\Ba
      * Return visibility of filter
      *
      * @return boolean
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getFilterVisibility()
     {
@@ -865,6 +873,7 @@ class Extended extends \Magento\Backend\Block\Widget\Grid implements \Magento\Ba
      * Retrieve flag is collapsed
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsCollapsed()
     {
@@ -1243,6 +1252,7 @@ class Extended extends \Magento\Backend\Block\Widget\Grid implements \Magento\Ba
      * Return count subtotals
      *
      * @return boolean
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getCountSubTotals()
     {
diff --git a/app/code/Magento/Backend/Block/Widget/Grid/Massaction/AbstractMassaction.php b/app/code/Magento/Backend/Block/Widget/Grid/Massaction/AbstractMassaction.php
index 0213925a82157b8b12a650f5e4a8fd6102a4a753..91c8d876eafca6549c4a0bf410dcc44ee90727d2 100644
--- a/app/code/Magento/Backend/Block/Widget/Grid/Massaction/AbstractMassaction.php
+++ b/app/code/Magento/Backend/Block/Widget/Grid/Massaction/AbstractMassaction.php
@@ -10,7 +10,7 @@ use Magento\Framework\View\Element\Template;
 /**
  * Grid widget massaction block
  *
- * @method \Magento\Sales\Model\Quote setHideFormElement(boolean $value) Hide Form element to prevent IE errors
+ * @method \Magento\Quote\Model\Quote setHideFormElement(boolean $value) Hide Form element to prevent IE errors
  * @method boolean getHideFormElement()
  * @author      Magento Core Team <core@magentocommerce.com>
  */
@@ -295,6 +295,7 @@ abstract class AbstractMassaction extends \Magento\Backend\Block\Widget
      * Retrieve select all functionality flag check
      *
      * @return boolean
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getUseSelectAll()
     {
diff --git a/app/code/Magento/Backend/Block/Widget/Grid/Massaction/Extended.php b/app/code/Magento/Backend/Block/Widget/Grid/Massaction/Extended.php
index 5d00cac67033cbd52f55099a44776c4dde8dd299..5f55cb9c98dead6b17dbc72b4b6338aade336ee0 100644
--- a/app/code/Magento/Backend/Block/Widget/Grid/Massaction/Extended.php
+++ b/app/code/Magento/Backend/Block/Widget/Grid/Massaction/Extended.php
@@ -8,7 +8,7 @@ namespace Magento\Backend\Block\Widget\Grid\Massaction;
 /**
  * Grid widget massaction block
  *
- * @method \Magento\Sales\Model\Quote setHideFormElement(boolean $value) Hide Form element to prevent IE errors
+ * @method \Magento\Quote\Model\Quote setHideFormElement(boolean $value) Hide Form element to prevent IE errors
  * @method boolean getHideFormElement()
  * @author      Magento Core Team <core@magentocommerce.com>
  * @deprecated support Magento 1.x grid massaction implementation
@@ -306,6 +306,7 @@ class Extended extends \Magento\Backend\Block\Widget
      * Retrieve select all functionality flag check
      *
      * @return boolean
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getUseSelectAll()
     {
diff --git a/app/code/Magento/Backend/Block/Widget/Tabs.php b/app/code/Magento/Backend/Block/Widget/Tabs.php
index f87419051797e477a4c53496da6571623d1121d9..5f18982736998b966443a427feb8e003137e6122 100644
--- a/app/code/Magento/Backend/Block/Widget/Tabs.php
+++ b/app/code/Magento/Backend/Block/Widget/Tabs.php
@@ -9,6 +9,7 @@ use Magento\Backend\Block\Widget\Tab\TabInterface;
 
 /**
  * Tabs block
+ * @SuppressWarnings(PHPMD.NumberOfChildren)
  */
 class Tabs extends \Magento\Backend\Block\Widget
 {
@@ -106,6 +107,7 @@ class Tabs extends \Magento\Backend\Block\Widget
      * @param   array|\Magento\Framework\Object|string $tab
      * @return  $this
      * @throws  \Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function addTab($tabId, $tab)
     {
@@ -302,6 +304,7 @@ class Tabs extends \Magento\Backend\Block\Widget
     /**
      * @param \Magento\Framework\Object|TabInterface $tab
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getTabIsHidden($tab)
     {
@@ -390,6 +393,7 @@ class Tabs extends \Magento\Backend\Block\Widget
      * @param string $tabOneId
      * @param string $tabTwoId
      * @return void
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function bindShadowTabs($tabOneId, $tabTwoId)
     {
diff --git a/app/code/Magento/Backend/Controller/Adminhtml/Auth/DeniedIframe.php b/app/code/Magento/Backend/Controller/Adminhtml/Auth/DeniedIframe.php
index f5aa548d8d497d017fcb5e04d86d42f9212782f1..08f81426145a3ef429755bfa12dfa9d9ee68e3fb 100644
--- a/app/code/Magento/Backend/Controller/Adminhtml/Auth/DeniedIframe.php
+++ b/app/code/Magento/Backend/Controller/Adminhtml/Auth/DeniedIframe.php
@@ -32,7 +32,7 @@ class DeniedIframe extends \Magento\Backend\Controller\Adminhtml\Auth
      */
     protected function _getDeniedIframe()
     {
-        return '<script type="text/javascript">parent.window.location = \''
+        return '<script>parent.window.location = \''
             . $this->_helper->getHomePageUrl() . '\';</script>';
     }
 
diff --git a/app/code/Magento/Backend/Controller/Adminhtml/System/Account/Save.php b/app/code/Magento/Backend/Controller/Adminhtml/System/Account/Save.php
index 0bbf7b3e73c931fee11676ad3cd1cb8c7baf252f..bbffca9f8eb00426c5866dc211f70849ca2030b0 100644
--- a/app/code/Magento/Backend/Controller/Adminhtml/System/Account/Save.php
+++ b/app/code/Magento/Backend/Controller/Adminhtml/System/Account/Save.php
@@ -29,6 +29,7 @@ class Save extends \Magento\Backend\Controller\Adminhtml\System\Account
      * Saving edited user information
      *
      * @return \Magento\Backend\Model\View\Result\Redirect
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function execute()
     {
diff --git a/app/code/Magento/Backend/Controller/Adminhtml/System/Config/System/Storage/Status.php b/app/code/Magento/Backend/Controller/Adminhtml/System/Config/System/Storage/Status.php
index 493b016cd052d62162bf0c75278d2d43204ac729..e52f25a801e4af881ea9eec3be3d2fa6dfe0e288 100644
--- a/app/code/Magento/Backend/Controller/Adminhtml/System/Config/System/Storage/Status.php
+++ b/app/code/Magento/Backend/Controller/Adminhtml/System/Config/System/Storage/Status.php
@@ -29,6 +29,7 @@ class Status extends \Magento\Backend\Controller\Adminhtml\System\Config\System\
      * Retrieve synchronize process state and it's parameters in json format
      *
      * @return \Magento\Framework\Controller\Result\JSON
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function execute()
     {
diff --git a/app/code/Magento/Backend/Controller/Adminhtml/System/Store.php b/app/code/Magento/Backend/Controller/Adminhtml/System/Store.php
index a7e3d8694bffdce7072960187e4021cd865a3d49..9a9d2a4a6d620e056667cc5a44f95cef77decec1 100644
--- a/app/code/Magento/Backend/Controller/Adminhtml/System/Store.php
+++ b/app/code/Magento/Backend/Controller/Adminhtml/System/Store.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Backend\Controller\Adminhtml\System;
 
 use Magento\Backend\App\Action;
diff --git a/app/code/Magento/Backend/Controller/Adminhtml/System/Store/EditStore.php b/app/code/Magento/Backend/Controller/Adminhtml/System/Store/EditStore.php
index b7952590b8f1c6169d5491aff2fe7d13772d4c2c..23a5e5c0fd95b5ed5376ca5fa20774846f5a44e7 100644
--- a/app/code/Magento/Backend/Controller/Adminhtml/System/Store/EditStore.php
+++ b/app/code/Magento/Backend/Controller/Adminhtml/System/Store/EditStore.php
@@ -10,6 +10,8 @@ class EditStore extends \Magento\Backend\Controller\Adminhtml\System\Store
 {
     /**
      * @return \Magento\Framework\Controller\ResultInterface
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function execute()
     {
diff --git a/app/code/Magento/Backend/Controller/Adminhtml/System/Store/Save.php b/app/code/Magento/Backend/Controller/Adminhtml/System/Store/Save.php
index fc11594dc3a24efd953347077fc98d8463161c04..039f53da5bd051472c4988a8546ddeb0c7e52fa4 100644
--- a/app/code/Magento/Backend/Controller/Adminhtml/System/Store/Save.php
+++ b/app/code/Magento/Backend/Controller/Adminhtml/System/Store/Save.php
@@ -11,6 +11,7 @@ class Save extends \Magento\Backend\Controller\Adminhtml\System\Store
 {
     /**
      * @return \Magento\Backend\Model\View\Result\Redirect
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function execute()
     {
diff --git a/app/code/Magento/Backend/Model/Auth/Session.php b/app/code/Magento/Backend/Model/Auth/Session.php
index aa49fb7104f19c75818e2e3b113ecbb1bbd95211..f9e5e549c732f836aa8c1de9fcebe1016b82aa20 100644
--- a/app/code/Magento/Backend/Model/Auth/Session.php
+++ b/app/code/Magento/Backend/Model/Auth/Session.php
@@ -64,6 +64,7 @@ class Session extends \Magento\Framework\Session\SessionManager implements \Mage
      * @param \Magento\Framework\Acl\Builder $aclBuilder
      * @param \Magento\Backend\Model\UrlInterface $backendUrl
      * @param \Magento\Backend\App\ConfigInterface $config
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\App\Request\Http $request,
diff --git a/app/code/Magento/Backend/Model/Config.php b/app/code/Magento/Backend/Model/Config.php
index 99744a7d3f0ab407112e985d037065b134615e42..b5b099997e3275dcb46cb5b671a96648f3978861 100644
--- a/app/code/Magento/Backend/Model/Config.php
+++ b/app/code/Magento/Backend/Model/Config.php
@@ -10,6 +10,7 @@ namespace Magento\Backend\Model;
  * Used to save configuration
  *
  * @author     Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Config extends \Magento\Framework\Object
 {
@@ -179,6 +180,9 @@ class Config extends \Magento\Framework\Object
      * @param \Magento\Framework\DB\Transaction $saveTransaction
      * @param \Magento\Framework\DB\Transaction $deleteTransaction
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _processGroup(
         $groupId,
diff --git a/app/code/Magento/Backend/Model/Config/Backend/Currency/Base.php b/app/code/Magento/Backend/Model/Config/Backend/Currency/Base.php
index 7b86cfa1840b2bc3bdb12a1357d11927f43546d1..dfb95cc8ce2472686c070a688540c93ec958e44f 100644
--- a/app/code/Magento/Backend/Model/Config/Backend/Currency/Base.php
+++ b/app/code/Magento/Backend/Model/Config/Backend/Currency/Base.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Backend Directory currency backend model
  * Allows dispatching before and after events for each controller action
diff --git a/app/code/Magento/Backend/Model/Config/Backend/Email/Sender.php b/app/code/Magento/Backend/Model/Config/Backend/Email/Sender.php
index ad1b31b26e9fb40a914845ad92de5ffc7f95926c..cf5d40e4be496929480e8105f005178bbe7b9117 100644
--- a/app/code/Magento/Backend/Model/Config/Backend/Email/Sender.php
+++ b/app/code/Magento/Backend/Model/Config/Backend/Email/Sender.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * System config email sender field backend model
  */
diff --git a/app/code/Magento/Backend/Model/Config/Backend/Encrypted.php b/app/code/Magento/Backend/Model/Config/Backend/Encrypted.php
index 042e41b51f2957ea19a6c0b6f7a951c928fa7401..bf1fcd071432048e747324cc3163ccc90149e9b4 100644
--- a/app/code/Magento/Backend/Model/Config/Backend/Encrypted.php
+++ b/app/code/Magento/Backend/Model/Config/Backend/Encrypted.php
@@ -5,6 +5,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Backend\Model\Config\Backend;
 
 class Encrypted extends \Magento\Framework\App\Config\Value implements \Magento\Framework\App\Config\Data\ProcessorInterface
diff --git a/app/code/Magento/Backend/Model/Config/Source/Dev/Dbautoup.php b/app/code/Magento/Backend/Model/Config/Source/Dev/Dbautoup.php
index 473463f39e0dccbcabb11e1490143528f3944382..d29625e33b0c4f5cadb769766fe59359907f982c 100644
--- a/app/code/Magento/Backend/Model/Config/Source/Dev/Dbautoup.php
+++ b/app/code/Magento/Backend/Model/Config/Source/Dev/Dbautoup.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Backend\Model\Config\Source\Dev;
 
 class Dbautoup implements \Magento\Framework\Option\ArrayInterface
diff --git a/app/code/Magento/Backend/Model/Config/Structure/Converter.php b/app/code/Magento/Backend/Model/Config/Structure/Converter.php
index 994a1006bdbb6771b50fd51cd26dd515385d43c7..a85c03025c958bada88a325965e8298a5f7476c5 100644
--- a/app/code/Magento/Backend/Model/Config/Structure/Converter.php
+++ b/app/code/Magento/Backend/Model/Config/Structure/Converter.php
@@ -72,6 +72,8 @@ class Converter implements \Magento\Framework\Config\ConverterInterface
      *
      * @param \DOMNode $root
      * @return array|null
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _convertDOMDocument(\DOMNode $root)
     {
diff --git a/app/code/Magento/Backend/Model/Config/Structure/Element/Group.php b/app/code/Magento/Backend/Model/Config/Structure/Element/Group.php
index 7ecfc1c78d099cb357c3a6f86dbd1678fdbff830..251fa37a319d1bbc6c1d26374c508a40897c7290 100644
--- a/app/code/Magento/Backend/Model/Config/Structure/Element/Group.php
+++ b/app/code/Magento/Backend/Model/Config/Structure/Element/Group.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Backend\Model\Config\Structure\Element;
 
 class Group extends AbstractComposite
diff --git a/app/code/Magento/Backend/Model/Locale/Resolver.php b/app/code/Magento/Backend/Model/Locale/Resolver.php
index 2b305ef80c191554937413ba42a85c75d03b2cb9..767f3d71041b7c2a823a126777f2825010949223 100644
--- a/app/code/Magento/Backend/Model/Locale/Resolver.php
+++ b/app/code/Magento/Backend/Model/Locale/Resolver.php
@@ -41,6 +41,7 @@ class Resolver extends \Magento\Framework\Locale\Resolver
      * @param \Magento\Framework\App\RequestInterface $request
      * @param \Magento\Framework\Locale\Validator $localeValidator
      * @param null $locale
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig,
diff --git a/app/code/Magento/Backend/Model/Menu/Config.php b/app/code/Magento/Backend/Model/Menu/Config.php
index fec3a03ad4be6d4961191f1791176439ccd35d6b..b02a7aca7dc65eddf7b6f79388e48a72e1eb28b4 100644
--- a/app/code/Magento/Backend/Model/Menu/Config.php
+++ b/app/code/Magento/Backend/Model/Menu/Config.php
@@ -5,6 +5,9 @@
  */
 namespace Magento\Backend\Model\Menu;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class Config
 {
     const CACHE_ID = 'backend_menu_config';
diff --git a/app/code/Magento/Backend/Model/Menu/Director/Director.php b/app/code/Magento/Backend/Model/Menu/Director/Director.php
index 8d09c08a652e0946c08d59f80d294dc059d38d99..b5f30db5d84edeccd8801c732098d2bea25b9456 100644
--- a/app/code/Magento/Backend/Model/Menu/Director/Director.php
+++ b/app/code/Magento/Backend/Model/Menu/Director/Director.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Backend\Model\Menu\Director;
 
 class Director extends \Magento\Backend\Model\Menu\AbstractDirector
diff --git a/app/code/Magento/Backend/Model/Menu/Item.php b/app/code/Magento/Backend/Model/Menu/Item.php
index 2013b5969443b3b15133d0e70decca2853c6ed94..c52c96fe555ab66caf9ba17a68ba4aed3150174e 100644
--- a/app/code/Magento/Backend/Model/Menu/Item.php
+++ b/app/code/Magento/Backend/Model/Menu/Item.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Backend\Model\Menu;
 
 /**
diff --git a/app/code/Magento/Backend/Model/Session/Quote.php b/app/code/Magento/Backend/Model/Session/Quote.php
index b25fafa23802a3549162adea7ec0417ce04c4c12..96141a383c6909794113c967076579ed1f698ae8 100644
--- a/app/code/Magento/Backend/Model/Session/Quote.php
+++ b/app/code/Magento/Backend/Model/Session/Quote.php
@@ -22,13 +22,14 @@ use Magento\Customer\Api\GroupManagementInterface;
  * @method int getCurrencyId()
  * @method Quote setOrderId($orderId)
  * @method int getOrderId()
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Quote extends \Magento\Framework\Session\SessionManager
 {
     /**
      * Quote model object
      *
-     * @var \Magento\Sales\Model\Quote
+     * @var \Magento\Quote\Model\Quote
      */
     protected $_quote;
 
@@ -59,7 +60,7 @@ class Quote extends \Magento\Framework\Session\SessionManager
     /**
      * Sales quote repository
      *
-     * @var \Magento\Sales\Model\QuoteRepository
+     * @var \Magento\Quote\Model\QuoteRepository
      */
     protected $quoteRepository;
 
@@ -83,10 +84,11 @@ class Quote extends \Magento\Framework\Session\SessionManager
      * @param \Magento\Framework\Stdlib\CookieManagerInterface $cookieManager
      * @param \Magento\Framework\Stdlib\Cookie\CookieMetadataFactory $cookieMetadataFactory
      * @param CustomerRepositoryInterface $customerRepository
-     * @param \Magento\Sales\Model\QuoteRepository $quoteRepository
+     * @param \Magento\Quote\Model\QuoteRepository $quoteRepository
      * @param \Magento\Sales\Model\OrderFactory $orderFactory
      * @param \Magento\Store\Model\StoreManagerInterface $storeManager
      * @param GroupManagementInterface $groupManagement
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\App\Request\Http $request,
@@ -98,7 +100,7 @@ class Quote extends \Magento\Framework\Session\SessionManager
         \Magento\Framework\Stdlib\CookieManagerInterface $cookieManager,
         \Magento\Framework\Stdlib\Cookie\CookieMetadataFactory $cookieMetadataFactory,
         CustomerRepositoryInterface $customerRepository,
-        \Magento\Sales\Model\QuoteRepository $quoteRepository,
+        \Magento\Quote\Model\QuoteRepository $quoteRepository,
         \Magento\Sales\Model\OrderFactory $orderFactory,
         \Magento\Store\Model\StoreManagerInterface $storeManager,
         GroupManagementInterface $groupManagement
@@ -127,7 +129,7 @@ class Quote extends \Magento\Framework\Session\SessionManager
     /**
      * Retrieve quote model object
      *
-     * @return \Magento\Sales\Model\Quote
+     * @return \Magento\Quote\Model\Quote
      */
     public function getQuote()
     {
diff --git a/app/code/Magento/Backend/Model/Widget/Grid/AbstractTotals.php b/app/code/Magento/Backend/Model/Widget/Grid/AbstractTotals.php
index af1bac309a554a00ed071d9ac974d41c8736a95b..3022ef696507edfbf73c0d7cad0a9d42a14389d8 100644
--- a/app/code/Magento/Backend/Model/Widget/Grid/AbstractTotals.php
+++ b/app/code/Magento/Backend/Model/Widget/Grid/AbstractTotals.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Backend\Model\Widget\Grid;
 
 abstract class AbstractTotals implements \Magento\Backend\Model\Widget\Grid\TotalsInterface
diff --git a/app/code/Magento/Backend/composer.json b/app/code/Magento/Backend/composer.json
index b1d54364d381f0e15c67c1eb2bdbfbd709aa52e9..15dd54529caafe0737a419aae8bc12a5a1616206 100644
--- a/app/code/Magento/Backend/composer.json
+++ b/app/code/Magento/Backend/composer.json
@@ -3,26 +3,27 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-directory": "0.42.0-beta3",
-        "magento/module-core": "0.42.0-beta3",
-        "magento/module-eav": "0.42.0-beta3",
-        "magento/module-cron": "0.42.0-beta3",
-        "magento/module-theme": "0.42.0-beta3",
-        "magento/module-reports": "0.42.0-beta3",
-        "magento/module-sales": "0.42.0-beta3",
-        "magento/module-catalog": "0.42.0-beta3",
-        "magento/module-user": "0.42.0-beta3",
-        "magento/module-backup": "0.42.0-beta3",
-        "magento/module-email": "0.42.0-beta3",
-        "magento/module-customer": "0.42.0-beta3",
-        "magento/module-translation": "0.42.0-beta3",
-        "magento/module-require-js": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-directory": "0.42.0-beta4",
+        "magento/module-core": "0.42.0-beta4",
+        "magento/module-eav": "0.42.0-beta4",
+        "magento/module-cron": "0.42.0-beta4",
+        "magento/module-theme": "0.42.0-beta4",
+        "magento/module-reports": "0.42.0-beta4",
+        "magento/module-sales": "0.42.0-beta4",
+        "magento/module-quote": "0.42.0-beta4",
+        "magento/module-catalog": "0.42.0-beta4",
+        "magento/module-user": "0.42.0-beta4",
+        "magento/module-backup": "0.42.0-beta4",
+        "magento/module-email": "0.42.0-beta4",
+        "magento/module-customer": "0.42.0-beta4",
+        "magento/module-translation": "0.42.0-beta4",
+        "magento/module-require-js": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/Backend/etc/di.xml b/app/code/Magento/Backend/etc/di.xml
index 2871ef2508f37929a6a1c3af3228d92789511533..5445af580b20c677bc0cff5b40c9bae76fbfeab4 100644
--- a/app/code/Magento/Backend/etc/di.xml
+++ b/app/code/Magento/Backend/etc/di.xml
@@ -12,7 +12,6 @@
     <preference for="Magento\Backend\Model\Config\Structure\SearchInterface" type="Magento\Backend\Model\Config\Structure" />
     <preference for="Magento\Backend\Model\Config\Backend\File\RequestData\RequestDataInterface" type="Magento\Backend\Model\Config\Backend\File\RequestData" />
     <preference for="Magento\Backend\Model\Auth\Credential\StorageInterface" type="Magento\User\Model\User" />
-    <preference for="Magento\Adminhtml\Helper\Data" type="Magento\Backend\Helper\Data" />
     <preference for="Magento\Backend\App\ConfigInterface" type="Magento\Backend\App\Config" />
     <preference for="Magento\Backend\Model\UrlInterface" type="Magento\Backend\Model\Url" />
     <preference for="Magento\Backend\Block\Widget\Button\ToolbarInterface" type="Magento\Backend\Block\Widget\Button\Toolbar" />
diff --git a/app/code/Magento/Backend/view/adminhtml/layout/default.xml b/app/code/Magento/Backend/view/adminhtml/layout/default.xml
index b160671056a5d7a72434c04de374c16030172dce..3b04789783d8052ed6ee0d08b8d582a7d1e64c71 100644
--- a/app/code/Magento/Backend/view/adminhtml/layout/default.xml
+++ b/app/code/Magento/Backend/view/adminhtml/layout/default.xml
@@ -76,7 +76,7 @@
                 <block class="Magento\Backend\Block\Page\Copyright" name="copyright" as="copyright"/>
                 <block class="Magento\Backend\Block\Page\Footer" name="version" as="version">
                     <arguments>
-                        <argument name="bugreport_url" xsi:type="string">http://www.magentocommerce.com/bug-tracking</argument>
+                        <argument name="bugreport_url" xsi:type="string">https://github.com/magento/magento2/issues</argument>
                     </arguments>
                 </block>
             </container>
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/admin/access_denied.phtml b/app/code/Magento/Backend/view/adminhtml/templates/admin/access_denied.phtml
index 3a92e9f8f9034b8f86e0e3ddcc9215b83f1a0cc9..20bbd091ff935265bd451d16858f071a22185945 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/admin/access_denied.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/admin/access_denied.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/admin/login.phtml b/app/code/Magento/Backend/view/adminhtml/templates/admin/login.phtml
index ac8a1dcdc6dc9c38c84c196428fc48fbc6fd6417..aaaa8e0dae823660166d287b9daec04757307178 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/admin/login.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/admin/login.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <div id="page-login" class="page-login">
     <div class="wrapper">
@@ -38,7 +41,7 @@
                         </div>
                     </fieldset>
                 </form>
-                <script type="text/javascript">
+                <script>
                     function initForm($){
                         $('#login-form').form().validation();
                     }
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/admin/overlay_popup.phtml b/app/code/Magento/Backend/view/adminhtml/templates/admin/overlay_popup.phtml
index 6ffe241c93bb299c23a5e7c46eb257212369607c..8f9fd4eb82ddd079f877ed80b8a5bf2a7e969e27 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/admin/overlay_popup.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/admin/overlay_popup.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <div class="wrapper-popup">
     <div class="middle" id="anchor-content">
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/admin/page.phtml b/app/code/Magento/Backend/view/adminhtml/templates/admin/page.phtml
index fa4fb1c651c20ce807cf22e7e9028e28271b8cda..6b87d5fd1636b94d813eaedf0d404c9ee13dddba 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/admin/page.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/admin/page.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\Backend\Block\Page */ ?>
 <!doctype html>
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/dashboard/graph.phtml b/app/code/Magento/Backend/view/adminhtml/templates/dashboard/graph.phtml
index 5d6dc42114cbf8ae7910f2fad5ea133570a8817d..60307c043ac1eb4caadfa8610e7a6c0ab5dae8bd 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/dashboard/graph.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/dashboard/graph.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <div class="dashboard-diagram">
     <div class="dashboard-diagram-switcher">
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/dashboard/grid.phtml b/app/code/Magento/Backend/view/adminhtml/templates/dashboard/grid.phtml
index e7c305f92d347b009f5113a500fdd7098b91f226..b302c2d03e43d3c1a5c8720ad9a6ee30a9534dce 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/dashboard/grid.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/dashboard/grid.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 
@@ -45,7 +48,7 @@ $numColumns = sizeof($this->getColumns());
     </table>
 </div>
 <?php if ($this->canDisplayContainer()): ?>
-<script type="text/javascript">
+<script>
 var deps = ['mage/adminhtml/grid'];
 
 <?php if (strpos($this->getRowClickCallback(), 'order.') !== false): ?>
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/dashboard/index.phtml b/app/code/Magento/Backend/view/adminhtml/templates/dashboard/index.phtml
index 1c89995b3cb4077cb964ed45fd6ddc2a6cc15196..d14649e5e2407249075f989cbbe4346b6573ee47 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/dashboard/index.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/dashboard/index.phtml
@@ -3,10 +3,13 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php if (is_array($this->getChildBlock('diagrams')->getTabsIds())) : ?>
-<script type="text/javascript">
+<script>
 function changeDiagramsPeriod(periodObj) {
     periodParam = periodObj.value ? 'period/' + periodObj.value + '/' : '';
 <?php foreach ($this->getChildBlock('diagrams')->getTabsIds() as $tabId): ?>
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/dashboard/salebar.phtml b/app/code/Magento/Backend/view/adminhtml/templates/dashboard/salebar.phtml
index bffe1bd96936f0ef6125fe29947a39208dc18998..35e55da07426bfba69951e988a3abc3c42c732a2 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/dashboard/salebar.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/dashboard/salebar.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php if (sizeof($this->getTotals()) > 0): ?>
     <?php foreach ($this->getTotals() as $_total): ?>
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/dashboard/searches.phtml b/app/code/Magento/Backend/view/adminhtml/templates/dashboard/searches.phtml
index 2ad225e0a5ffb39d128b87e5ea7ffcb226669da5..d0e11ba8c0a6bbcb0c034d0fa4df9e5f26507888 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/dashboard/searches.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/dashboard/searches.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <div style="padding:5px;">
 <?php if (count($this->getCollection()->getItems()) > 0): ?>
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/dashboard/store/switcher.phtml b/app/code/Magento/Backend/view/adminhtml/templates/dashboard/store/switcher.phtml
index dacbb1e7f6a7c92eb855285b7003f8190897ed7f..abb41eaff14ab269532fd6b7fd410045137c3263 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/dashboard/store/switcher.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/dashboard/store/switcher.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <p class="switcher"><label for="store_switcher"><?php echo __('View Statistics For:') ?></label>
 <?php echo $this->getHintHtml() ?>
@@ -31,7 +34,7 @@
     <?php endforeach; ?>
 </select>
 </p>
-<script type="text/javascript">
+<script>
     function switchStore(obj){
         if (obj.options[obj.selectedIndex].getAttribute('website') == 'true') {
             var selectionType = 'website';
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/dashboard/totalbar.phtml b/app/code/Magento/Backend/view/adminhtml/templates/dashboard/totalbar.phtml
index 222842a2d6109b0f14166abbd72a6967b10687d1..8a837773be68149ed36b8cc2ee3d7029f01c6f2c 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/dashboard/totalbar.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/dashboard/totalbar.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php if (sizeof($this->getTotals()) > 0): ?>
 <div class="dashboard-totals" id="dashboard_diagram_totals">
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/media/uploader.phtml b/app/code/Magento/Backend/view/adminhtml/templates/media/uploader.phtml
index 95867fa7188a53356350f3c298c578fcdf4e88d1..b3026a11556f1c23f30b88dd9264a1e50ca22847 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/media/uploader.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/media/uploader.phtml
@@ -25,7 +25,7 @@
     </div>
 </div>
 
-<script type="text/javascript">
+<script>
 require([
     "jquery",
     "mage/translate",
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/menu.phtml b/app/code/Magento/Backend/view/adminhtml/templates/menu.phtml
index 8c143444d648817b17a2fbb0625436c7073a713c..b7f4a6af41df98e1fa5307faa9376f98a0ffb4ee 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/menu.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/menu.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <nav class="navigation">
     <?php echo $this->renderNavigation($this->getMenuModel(), 0, 12); ?>
@@ -10,5 +13,5 @@
 
 <?php /* @TODO: find the place for the help ?>
 <a id="page-help-link" href="<?php echo $this->helper('Magento\Backend\Helper\Data')->getPageHelpUrl() ?>"><?php echo __('Get help for this page') ?></a>
-<script type="text/javascript">$('page-help-link').target = 'magento_page_help'</script>
+<script>$('page-help-link').target = 'magento_page_help'</script>
 <?php */ ?>
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/page/copyright.phtml b/app/code/Magento/Backend/view/adminhtml/templates/page/copyright.phtml
index dc10ea6e35da8acdcc65ca193c9e86bcf583f5ed..d32b9b4f5c4ab7558209c2712384758d2e3c45b4 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/page/copyright.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/page/copyright.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <small class="copyright">
     <?php echo __('Magento is an eBay Inc. company. Copyright&copy; %1 Magento, Inc. All rights reserved.', date('Y')) ?>
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/page/footer.phtml b/app/code/Magento/Backend/view/adminhtml/templates/page/footer.phtml
index 4ad3c029f28b2a7a8a02de175e1e723d35c3f664..4f1fb03406d4463050567bca627a6ffba0fdf1a9 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/page/footer.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/page/footer.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <small class="magento-version"><?php echo __('Magento ver. %1', \Magento\Framework\AppInterface::VERSION) ?></small>
 <?php if ($this->getBugreportUrl()): ?>
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/page/header.phtml b/app/code/Magento/Backend/view/adminhtml/templates/page/header.phtml
index a2fd0aff3c6f66ef25b3a511a8aee96f93bfe7a8..5c8db117c4e73e47dad3dab2d4637b75a294329f 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/page/header.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/page/header.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Backend\Block\Page\Header */
 ?>
 <?php switch ($this->getShowPart()):
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/page/js/calendar.phtml b/app/code/Magento/Backend/view/adminhtml/templates/page/js/calendar.phtml
index 0caba04e4790dfb6261594b8e13676af33217cb8..340ad4ed87a003109237ec60e5d1a1292a58e232 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/page/js/calendar.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/page/js/calendar.phtml
@@ -14,7 +14,7 @@
  */
 ?>
 
-<script type="text/javascript">
+<script>
 require([
     "jquery",
     "jquery/ui"
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/page/js/components.phtml b/app/code/Magento/Backend/view/adminhtml/templates/page/js/components.phtml
index 478e18e57b0112afae4e77d1b3e19a7bd86dc54d..fdeaf01cd1882d7e7d6f9178c4e92d70519962b1 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/page/js/components.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/page/js/components.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/page/js/head_scripts.phtml b/app/code/Magento/Backend/view/adminhtml/templates/page/js/head_scripts.phtml
index 418146cfc58cc16610c02fdc7ad3164ef4c725d8..26b1869079cc347e244f32ab13c26fa26717f5c3 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/page/js/head_scripts.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/page/js/head_scripts.phtml
@@ -4,7 +4,7 @@
  * See COPYING.txt for license details.
  */
 ?>
-<script type="text/javascript">
+<script>
     Ext.BLANK_IMAGE_URL = BLANK_IMG;
     Ext.UpdateManager.defaults.loadScripts = false;
     Ext.UpdateManager.defaults.disableCaching = true;
@@ -12,6 +12,6 @@
 
 <script type="text/javascript" src="<?php echo $this->getViewFileUrl('tiny_mce/tiny_mce_src.js') ?>"></script>
 
-<script type="text/javascript">
+<script>
     Fieldset.addToPrefix(<?php echo $this->helper('Magento\Backend\Helper\Data')->getCurrentUserId() ?>);
 </script>
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/page/js/require_js.phtml b/app/code/Magento/Backend/view/adminhtml/templates/page/js/require_js.phtml
index fab7a4790008c803f173daa544bb2f5ed8043c8c..a218b027ec4bd43024d89e0aa18aceee8a0b2b42 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/page/js/require_js.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/page/js/require_js.phtml
@@ -4,7 +4,7 @@
  * See COPYING.txt for license details.
  */
 ?>
-<script type="text/javascript">
+<script>
     var BLANK_URL = '<?php echo $this->getViewFileUrl('blank.html') ?>';
     var BLANK_IMG = '<?php echo $this->getViewFileUrl('spacer.gif') ?>';
     var BASE_URL = '<?php echo $this->getUrl('*') ?>';
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/page/js/translate.phtml b/app/code/Magento/Backend/view/adminhtml/templates/page/js/translate.phtml
index 0bc3b1a7519acb55638a870fa1e0491a38cf5317..4daf9993d72b0e0b72d1e4db2b7b6d195b5ff6e1 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/page/js/translate.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/page/js/translate.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php
@@ -42,7 +45,7 @@ $_data = [
     'Please wait, loading...' => __('Please wait, loading...'),
 ];
 ?>
-<script type="text/javascript">
+<script>
 require(["jquery","mage/translate"], function($){
     $.mage.translate.add(<?php echo Zend_Json::encode($_data) ?>)
 });
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/page/locale.phtml b/app/code/Magento/Backend/view/adminhtml/templates/page/locale.phtml
index 8ae3b255f805b3c7866d233e886f068621ae51f1..3db04de8d5e373461551bfdf9818c6e99e57a21a 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/page/locale.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/page/locale.phtml
@@ -3,13 +3,16 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <div class="locale-switcher-field field">
     <label class="label" for="locale-switcher"><span><?php echo __('Interface Locale'); ?></span></label>
     <div class="control">
         <?php echo $this->getLocaleSelect(); ?>
     </div>
-    <script type="text/javascript">
+    <script>
         function setInterfaceLanguage(event) {
             var elem = Event.element(event);
             if (elem) {
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/page/notices.phtml b/app/code/Magento/Backend/view/adminhtml/templates/page/notices.phtml
index 973581456ee53cf6f144cebf448526d40d48502d..76a9fe120c4b9dfe30871de7b45437d3cd107c7b 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/page/notices.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/page/notices.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/page/system/config/robots/reset.phtml b/app/code/Magento/Backend/view/adminhtml/templates/page/system/config/robots/reset.phtml
index 47673153f6656330a99bc5b8283e0ea479c8e81e..84fe5da528eb03f466c43a1c43541442376104bc 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/page/system/config/robots/reset.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/page/system/config/robots/reset.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * @var $this \Magento\Backend\Block\Page\System\Config\Robots\Reset
  * @var $coreHelper \Magento\Core\Helper\Data
@@ -11,7 +13,7 @@
 $coreHelper = $this->helper('Magento\Core\Helper\Data');
 ?>
 
-<script type="text/javascript">
+<script>
     function resetRobotsToDefault()
     {
         $('design_search_engine_robots_custom_instructions').value = <?php
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/pageactions.phtml b/app/code/Magento/Backend/view/adminhtml/templates/pageactions.phtml
index 8bc07aba86ec4e3434beb111a81fff007aa8c23e..5a988cfb65c77e2ddb9137b5b7a03bc72bb48e70 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/pageactions.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/pageactions.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php if ($this->getChildHtml()):?>
     <div class="page-actions" <?php echo $this->getUiId('content-header') ?>>
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/store/switcher.phtml b/app/code/Magento/Backend/view/adminhtml/templates/store/switcher.phtml
index 7f2d19abb32d6d754970ffe0a76282f5c8e0faa2..641df75fc0d522ab1e24c8b127bb2343baf5433e 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/store/switcher.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/store/switcher.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /* @var $this \Magento\Backend\Block\Store\Switcher */
 ?>
 <?php if ($websites = $this->getWebsites()): ?>
@@ -120,7 +123,7 @@
     <?php echo $this->getHintHtml() ?>
 </div>
 
-<script type="text/javascript">
+<script>
 require(['jquery'], function(jQuery){
 
     (function($) {
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/store/switcher/form/renderer/fieldset.phtml b/app/code/Magento/Backend/view/adminhtml/templates/store/switcher/form/renderer/fieldset.phtml
index 484cc43f6682b33e72640f9d54eda5898537f76b..94fbd082b8bbcba8f0dc2f3ce3e1e23706c896bd 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/store/switcher/form/renderer/fieldset.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/store/switcher/form/renderer/fieldset.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php $_element = $this->getElement() ?>
 <?php if ($_element->getFieldsetContainerId()): ?>
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/store/switcher/form/renderer/fieldset/element.phtml b/app/code/Magento/Backend/view/adminhtml/templates/store/switcher/form/renderer/fieldset/element.phtml
index c795f32811b1f8d893fafdbcad7870991ad8a9e4..a6a8a3a59b90c2126fa00820a811826541958ada 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/store/switcher/form/renderer/fieldset/element.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/store/switcher/form/renderer/fieldset/element.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /* @var $this \Magento\Backend\Block\Widget\Form\Renderer\Fieldset\Element */
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/system/autocomplete.phtml b/app/code/Magento/Backend/view/adminhtml/templates/system/autocomplete.phtml
index a19fc0d02c172fe3db0f63ffd84dffa20f3232ed..2cd37a6a5ae5e27991c1611d9265b658dbda6d0a 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/system/autocomplete.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/system/autocomplete.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <ul class="dropdown-menu">
     <?php foreach ($items as $item): ?>
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/system/cache/edit.phtml b/app/code/Magento/Backend/view/adminhtml/templates/system/cache/edit.phtml
index be1d3de20d2ec4e96cfdb3fac866becaabe28e08..603aff5f66626e4f492c59b43b6bf55f1989ca3e 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/system/cache/edit.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/system/cache/edit.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
@@ -17,7 +20,7 @@
 <form action="<?php echo $this->getSaveUrl() ?>" method="post" id="config-edit-form" enctype="multipart/form-data">
     <?php echo $this->getBlockHtml('formkey')?>
 
-    <script type="text/javascript">
+    <script>
     function setCacheAction(id, button) {
         $(id).value = button.id;
         configForm.submit();
@@ -79,7 +82,7 @@
         </fieldset>
     </div>
 </form>
-<script type="text/javascript">
+<script>
     require(["jquery","mage/mage"],function($){
        $('#config-edit-form').mage('form').mage('validation');
     });
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/system/config/edit.phtml b/app/code/Magento/Backend/view/adminhtml/templates/system/config/edit.phtml
index b30b0224f054c8e10501f7e704c277a33cc7d2ad..4b22ca0a2ace46b37dc21206fa1e2ebff0db4d9c 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/system/config/edit.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/system/config/edit.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
@@ -19,7 +22,7 @@
         <?php echo $this->getChildHtml('form') ?>
     </div>
 </form>
-<script type="text/javascript">
+<script>
 require([
     "jquery",
     "jquery/jquery.hashchange",
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/system/config/form/field/array.phtml b/app/code/Magento/Backend/view/adminhtml/templates/system/config/form/field/array.phtml
index f920b3bc1421d60b3111fea729b5ac1dd9999a48..978f1806df767088feea206938412a00432c9b10 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/system/config/form/field/array.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/system/config/form/field/array.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php
@@ -33,7 +36,7 @@ $_colspan = $this->isAddAfter() ? 2 : 1;
     </table>
     <input type="hidden" name="<?php echo $this->getElement()->getName(); ?>[__empty]" value="" />
 
-    <script type="text/javascript">
+    <script>
 
         // create row creator
         var arrayRow<?php echo $_htmlId ?> = {
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/system/config/js.phtml b/app/code/Magento/Backend/view/adminhtml/templates/system/config/js.phtml
index 363f1cc673031067b6a9ca75f352b4cbf1927b95..dac09723f71f4ff21cd905a3c48d5484ff57c33b 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/system/config/js.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/system/config/js.phtml
@@ -3,8 +3,11 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
-<script type="text/javascript">
+<script>
 //<![CDATA[
 var freeModel = Class.create();
 freeModel.prototype = {
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/system/config/switcher.phtml b/app/code/Magento/Backend/view/adminhtml/templates/system/config/switcher.phtml
index 6fb13048ea34e405d71e66d37cd6522caf72cbb3..57146e4f1279dbb33dd435580413c6d2426a411f 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/system/config/switcher.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/system/config/switcher.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /* @var $this \Magento\Backend\Block\Template */ ?>
 <div class="field field-store-switcher">
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/system/config/system/storage/media/synchronize.phtml b/app/code/Magento/Backend/view/adminhtml/templates/system/config/system/storage/media/synchronize.phtml
index ef358cf8b8178e46d5a16107a3190160b9099bf4..98742b19a718730d1ddabac7dff8c78965114012 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/system/config/system/storage/media/synchronize.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/system/config/system/storage/media/synchronize.phtml
@@ -3,11 +3,14 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php /* @var $this \Magento\Backend\Block\System\Config\System\Storage\Media\Synchronize */ ?>
 
-<script type="text/javascript">
+<script>
 require([
     'jquery',
     'prototype',
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/system/config/tabs.phtml b/app/code/Magento/Backend/view/adminhtml/templates/system/config/tabs.phtml
index bf03d65e22e67a8e5afb6394646556c12cafd8ea..1a8810fb437f48d4eb6462b426bea8d612cbfd95 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/system/config/tabs.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/system/config/tabs.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Backend\Block\System\Config\Tabs */
 ?>
 <?php if ($this->getTitle()): ?>
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/system/design/edit.phtml b/app/code/Magento/Backend/view/adminhtml/templates/system/design/edit.phtml
index e2ab8cdcd2e71ec6cc8ee8124c3cd74390126240..dd7f147279090a5713de5280d9c8ba5bd495f29f 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/system/design/edit.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/system/design/edit.phtml
@@ -7,7 +7,7 @@
 <form action="<?php echo $this->getSaveUrl() ?>" method="post" id="design-edit-form">
     <?php echo $this->getBlockHtml('formkey')?>
 </form>
-<script type="text/javascript">
+<script>
 require([
     "jquery",
     "mage/mage"
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/system/design/index.phtml b/app/code/Magento/Backend/view/adminhtml/templates/system/design/index.phtml
index 9228aa320afa5a3a1b7e14c79d3773991984487f..1d27f92b1d57cdd4045ec77cdb17e900c03c669d 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/system/design/index.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/system/design/index.phtml
@@ -3,5 +3,8 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php echo $this->getChildHtml('grid') ?>
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/system/search.phtml b/app/code/Magento/Backend/view/adminhtml/templates/system/search.phtml
index b123a9fff17c93e0f6f04dc0b3a3112e7826b410..f023180974b5c7ef3d32bfcc00bb43c6c81fcf01 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/system/search.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/system/search.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Backend\Block\GlobalSearch */
 ?>
 <div class="search-global miniform">
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/system/shipping/applicable_country.phtml b/app/code/Magento/Backend/view/adminhtml/templates/system/shipping/applicable_country.phtml
index 0b74c5e67a1b17316dccb56f153b36baeb991272..e0f0bc0588079dd3d0db25f7f8b7b67fbeb0f40c 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/system/shipping/applicable_country.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/system/shipping/applicable_country.phtml
@@ -4,7 +4,7 @@
  * See COPYING.txt for license details.
  */
 ?>
-<script type="text/javascript">
+<script>
 //<![CDATA[
 var CountryModel = Class.create();
 CountryModel.prototype = {
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/system/variable/js.phtml b/app/code/Magento/Backend/view/adminhtml/templates/system/variable/js.phtml
index 90a29eba380c8dcb24e0b01853eadf396fed4157..29dc3c688435cfabbe2cf377d802a1dc96612c8f 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/system/variable/js.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/system/variable/js.phtml
@@ -4,7 +4,7 @@
  * See COPYING.txt for license details.
  */
 ?>
-<script type="text/javascript">
+<script>
 //<![CDATA[
 
 function toggleValueElement(element) {
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/widget/accordion.phtml b/app/code/Magento/Backend/view/adminhtml/templates/widget/accordion.phtml
index 75d36ae792236562bad289bccf2b39de319fb1fc..11282d76f56e71325f03366abde38fe61221b2ff 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/widget/accordion.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/widget/accordion.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
@@ -16,7 +19,7 @@ $items = $this->getItems();
         <?php echo $this->getChildHtml($_item->getId()) ?>
     <?php endforeach ?>
     </dl>
-    <script type="text/javascript">
+    <script>
         require([
             'mage/adminhtml/accordion'
         ], function(){
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/widget/breadcrumbs.phtml b/app/code/Magento/Backend/view/adminhtml/templates/widget/breadcrumbs.phtml
index 835df288963c225715539b16effa8a936eb30791..68ba27df9f5ffc295b1b9548d2649a16678abd01 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/widget/breadcrumbs.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/widget/breadcrumbs.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php if (!empty($links)): ?>
 <ul class="breadcrumbs">
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/widget/button.phtml b/app/code/Magento/Backend/view/adminhtml/templates/widget/button.phtml
index 4166c496e11b5884a5ffa9b0570dab25e3b60297..6a1f5e4a28e3221cf0d7d7ba0e47f24e2319ab7a 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/widget/button.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/widget/button.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/widget/button/split.phtml b/app/code/Magento/Backend/view/adminhtml/templates/widget/button/split.phtml
index 5a40701deba7c9307cc058f2413d88b23aa8b34f..566e51e79c9204a3d63589135332325e9453ace9 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/widget/button/split.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/widget/button/split.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /** @var $this \Magento\Backend\Block\Widget\Button\SplitButton */
@@ -40,7 +43,7 @@ $_helper = $this->helper('Magento\Core\Helper\Data');
     <?php endif; ?>
 </div>
 
-<script type="text/javascript">
+<script>
 require(['jquery'], function($){
         $('.actions-split')
             .on('click.splitDefault', '.action-default', function() {
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/widget/form.phtml b/app/code/Magento/Backend/view/adminhtml/templates/widget/form.phtml
index 6c5100e32c17206e9bd67d46696460af10117d9b..92f380112003e365aa299448cfe871ba0d748f91 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/widget/form.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/widget/form.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Backend\Block\Widget\Form */
 ?>
 <?php /* @todo replace .form-inline with better class name */?>
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/widget/form/container.phtml b/app/code/Magento/Backend/view/adminhtml/templates/widget/form/container.phtml
index 060d9e1ab61edf91a3809b625d4548a647572ad9..d82ef9836caf686dbc86703a94276040ab76b352 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/widget/form/container.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/widget/form/container.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Backend\Block\Widget\Form\Container */
  ?>
 <?php echo $this->getFormInitScripts() ?>
@@ -15,7 +18,7 @@
         <p class="form-buttons"><?php echo $this->getButtonsHtml('footer') ?></p>
     </div>
 <?php endif; ?>
-<script type="text/javascript">
+<script>
 require([
     'jquery',
     'mage/backend/form',
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/widget/form/element.phtml b/app/code/Magento/Backend/view/adminhtml/templates/widget/form/element.phtml
index 198ba7eb67a5821d3bd04f34c2f210fd66b4f42d..8fcf631f014a883c39b6a1e4bf8558dd5b7e26ac 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/widget/form/element.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/widget/form/element.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php switch ($element->getType()) {
     case 'fieldset': ?>
@@ -58,7 +61,7 @@
     <span class="form_row">
       <label for="<?php echo $element->getHtmlId() ?>"><?php echo $element->getLabel() ?>:</label>
         <script type="text/javascript" src="<?php echo $this->getViewFileUrl('tiny_mce/tiny_mce.js') ?>"></script>
-        <script type="text/javascript">
+        <script>
 
         //<![CDATA[
         tinyMCE.init({
@@ -102,7 +105,7 @@
       <?php break;
 } ?>
 <?php if ($element->getScript()): ?>
-<script type="text/javascript">
+<script>
     <?php echo $element->getScript() ?>
 </script>
 <?php endif; ?>
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/widget/form/element/gallery.phtml b/app/code/Magento/Backend/view/adminhtml/templates/widget/form/element/gallery.phtml
index 6cfac96b89a2f1c3aaa34160b91aef3bcf0d26fd..74a7c81782bd2fbf22b0e02f7b3d7eca10c3476f 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/widget/form/element/gallery.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/widget/form/element/gallery.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <tr>
 <td colspan="2">
@@ -41,14 +44,14 @@
 <?php endif; ?>
 
 <?php if ($i == 0): ?>
-    <script type="text/javascript">
+    <script>
 document.getElementById("gallery_thead").style.visibility="hidden";
 </script>
 <?php endif; ?>
 
 </tbody></table>
 
-<script type="text/javascript">
+<script>
 //<![CDATA[
 id = 0;
 num_of_images = <?php echo $i ?>;
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/widget/form/renderer/element.phtml b/app/code/Magento/Backend/view/adminhtml/templates/widget/form/renderer/element.phtml
index 058e239fca867cbd2bb2b621eb78ab9ff8f0f459..edebad68f4ae477b0b0d821689005a1792ec736b 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/widget/form/renderer/element.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/widget/form/renderer/element.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php $_element = $this->getElement() ?>
 <?php if ($_element->getNoSpan() !== true): ?>
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/widget/form/renderer/fieldset.phtml b/app/code/Magento/Backend/view/adminhtml/templates/widget/form/renderer/fieldset.phtml
index 45c07f7f63e63f609c88c1decf2705bf9398e8e9..af96e0bb2cf72b88d24d57de2f3593712bd3e139 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/widget/form/renderer/fieldset.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/widget/form/renderer/fieldset.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /** @var $element \Magento\Framework\Data\Form\Element\Fieldset */
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/widget/form/renderer/fieldset/element.phtml b/app/code/Magento/Backend/view/adminhtml/templates/widget/form/renderer/fieldset/element.phtml
index ea7c0e8df4d643303d3197e4cb21cd1fe617dec0..b74a8456a2a844069d00fec21d51b2052eec29af 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/widget/form/renderer/fieldset/element.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/widget/form/renderer/fieldset/element.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /* @var $this \Magento\Backend\Block\Widget\Form\Renderer\Fieldset\Element */
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/widget/grid.phtml b/app/code/Magento/Backend/view/adminhtml/templates/widget/grid.phtml
index ee34c985a90ce8a609c868cf8362654ce5aee4bd..ea59605873cbef28b3d8d56dbe77fef9b0bb33f2 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/widget/grid.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/widget/grid.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
@@ -133,7 +136,7 @@ $numColumns = sizeof($this->getColumns());
         <?php endif ?>
         <?php if ($this->canDisplayContainer()): ?>
     </div>
-    <script type="text/javascript">
+    <script>
         var deps = ['mage/adminhtml/grid'];
 
     <?php if (strpos($this->getRowClickCallback(), 'order.') !== false): ?>
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/widget/grid/column_set.phtml b/app/code/Magento/Backend/view/adminhtml/templates/widget/grid/column_set.phtml
index 0da5cded6680c296f01bd306931febf4883d7a33..04eba07e620e4c71e32001c9dcbcd203c973469d 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/widget/grid/column_set.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/widget/grid/column_set.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/widget/grid/container.phtml b/app/code/Magento/Backend/view/adminhtml/templates/widget/grid/container.phtml
index dca0392fced9edf6771f829b3e83307e7589f4c2..914fc4d80329cec2dd46b6a6c46ad1f67d05ab72 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/widget/grid/container.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/widget/grid/container.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php if ($this->getButtonsHtml()): ?>
 <div class="page-actions"><?php echo $this->getButtonsHtml() ?></div>
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/widget/grid/container/empty.phtml b/app/code/Magento/Backend/view/adminhtml/templates/widget/grid/container/empty.phtml
index 744288619d63e421920bfec06db925d47b47ac93..16509b08f23f23cf2b4c70086e6cac75bc50074b 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/widget/grid/container/empty.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/widget/grid/container/empty.phtml
@@ -3,5 +3,8 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php echo $this->getGridHtml() ?>
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/widget/grid/export.phtml b/app/code/Magento/Backend/view/adminhtml/templates/widget/grid/export.phtml
index 80c2de13bf2e7d41eccf449b55514bb92c71626d..25cfbd6766b4a5a03ac68581bd04a6347a777c9e 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/widget/grid/export.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/widget/grid/export.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <label for="<?php echo $this->getId() ?>_export" class="label">
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/widget/grid/extended.phtml b/app/code/Magento/Backend/view/adminhtml/templates/widget/grid/extended.phtml
index 6f1d55c4a524ed9802aa618b9a410fbf1f0dd3d6..2b5b77c258ba91d291f7ef47a92686fffddd6008 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/widget/grid/extended.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/widget/grid/extended.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
@@ -223,7 +226,7 @@ $numColumns = sizeof($this->getColumns());
     </div>
     <?php if ($this->canDisplayContainer()): ?>
 </div>
-<script type="text/javascript">
+<script>
     var deps = ['mage/adminhtml/grid'];
 
     <?php if (strpos($this->getRowClickCallback(), 'order.') !== false): ?>
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/widget/grid/massaction.phtml b/app/code/Magento/Backend/view/adminhtml/templates/widget/grid/massaction.phtml
index 22d98882850ca154888ebea590253041081bb805..ede9400f6dd11b092ada9ddcf02169809eb7ad30 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/widget/grid/massaction.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/widget/grid/massaction.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <div id="<?php echo $this->getHtmlId() ?>">
 <div class="massaction">
@@ -63,7 +66,7 @@
         </span>
     </div>
 </div>
-<script type="text/javascript">
+<script>
 
     require(['jquery'], function($){
         'use strict';
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/widget/grid/massaction_extended.phtml b/app/code/Magento/Backend/view/adminhtml/templates/widget/grid/massaction_extended.phtml
index c473318f5a4026d171e8b870b2a873a473ba16cb..e14fbe74f569c4d951fe6140c543652acfe2865f 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/widget/grid/massaction_extended.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/widget/grid/massaction_extended.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /**
 * @deprecated support Magento 1.x grid massaction implementation
  */
@@ -64,7 +67,7 @@
         </span>
     </div>
 </div>
-<script type="text/javascript">
+<script>
     require(['jquery'], function($){
         'use strict';
         $('#massaction-select').change(function () {
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/widget/grid/serializer.phtml b/app/code/Magento/Backend/view/adminhtml/templates/widget/grid/serializer.phtml
index 4c7b9c205ab21218ee879c0f084548ac7609d202..fae5424a2fb995cc65dbfbf7ca2fd137d99a3fb1 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/widget/grid/serializer.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/widget/grid/serializer.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
@@ -12,7 +15,7 @@
 <?php $_id = 'id_' . md5(microtime()) ?>
 <?php $formId = $this->getFormId()?>
 <?php if (!empty($formId)) :?>
-<script type="text/javascript">
+<script>
     Event.observe(window, "load", function(){
         var serializeInput  = document.createElement('input');
         serializeInput.type = 'hidden';
@@ -28,7 +31,7 @@
 </script>
 <?php else :?>
 <input type="hidden" name="<?php echo $this->getInputElementName()?>"  value="" id="<?php echo $_id?>" />
-<script type="text/javascript">
+<script>
     require([
         'mage/adminhtml/grid'
     ], function(){
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/widget/tabs.phtml b/app/code/Magento/Backend/view/adminhtml/templates/widget/tabs.phtml
index 6c2b339b338d6ffdc1c5004d8361c26eca10ff4b..e2546a5fe5ded16ea760ea585bd6b7afe3dfeffd 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/widget/tabs.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/widget/tabs.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Backend\Block\Widget\Tabs */
 ?>
 <?php if (!empty($tabs)): ?>
@@ -31,7 +33,7 @@
         <?php endforeach; ?>
     </ul>
 </div>
-<script type="text/javascript">
+<script>
 require(['jquery',"mage/backend/tabs"], function($){
     $(function() {
         $('#<?php echo $this->getId() ?>').tabs({
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/widget/tabshoriz.phtml b/app/code/Magento/Backend/view/adminhtml/templates/widget/tabshoriz.phtml
index e7760e0e367ec56186ad90c12e5a2176cc793e56..44cefcf35f24bce9a672c0f71c0485790835da18 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/widget/tabshoriz.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/widget/tabshoriz.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <!-- <?php if ($this->getTitle()): ?>
     <h3><?php echo $this->getTitle() ?></h3>
@@ -28,7 +31,7 @@
 <?php endforeach; ?>
 </ul>
 </div>
-<script type="text/javascript">
+<script>
 require(["jquery","mage/backend/tabs"], function($){
     $(function() {
         $('#<?php echo $this->getId() ?>').tabs({
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/widget/tabsleft.phtml b/app/code/Magento/Backend/view/adminhtml/templates/widget/tabsleft.phtml
index 9a4a39f8f086458c67d407cf038b0a7276c512ae..3ed92243ce35b5caab231b9d47d6a3c27e5ff780 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/widget/tabsleft.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/widget/tabsleft.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <dl id="dl-<?php echo $id ?>" class="accordion">
 <?php foreach ($sections as $sectionId => $section): ?>
diff --git a/app/code/Magento/Backend/view/adminhtml/templates/widget/view/container.phtml b/app/code/Magento/Backend/view/adminhtml/templates/widget/view/container.phtml
index 2ec0c32cae218a05b432820975f838cc64be62be..7454f10a81d475c8575077c58386aed2ccddf202 100644
--- a/app/code/Magento/Backend/view/adminhtml/templates/widget/view/container.phtml
+++ b/app/code/Magento/Backend/view/adminhtml/templates/widget/view/container.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <div class="page-actions"><?php echo $this->getButtonsHtml() ?></div>
 <?php echo $this->getViewHtml() ?>
diff --git a/app/code/Magento/Backend/view/install/templates/page/copyright.phtml b/app/code/Magento/Backend/view/install/templates/page/copyright.phtml
index 3a77746625ad345302fcce6bda1ba7f28e1e11fd..14a3b77f918bac8e16077ec716f437db12e2735b 100644
--- a/app/code/Magento/Backend/view/install/templates/page/copyright.phtml
+++ b/app/code/Magento/Backend/view/install/templates/page/copyright.phtml
@@ -3,5 +3,8 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php echo __('Magento is an eBay Inc. company. Copyright&copy; %1 Magento, Inc. All rights reserved.', date('Y')) ?>
diff --git a/app/code/Magento/Backup/Controller/Adminhtml/Index/Create.php b/app/code/Magento/Backup/Controller/Adminhtml/Index/Create.php
index 02504e35cf8c4d3b7a2f7b24a1feec3eba4cffab..3597571146444fc2d43d330908913623dcbb1500 100644
--- a/app/code/Magento/Backup/Controller/Adminhtml/Index/Create.php
+++ b/app/code/Magento/Backup/Controller/Adminhtml/Index/Create.php
@@ -15,6 +15,7 @@ class Create extends \Magento\Backup\Controller\Adminhtml\Index
      * Create backup action
      *
      * @return void|\Magento\Backend\App\Action
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function execute()
     {
diff --git a/app/code/Magento/Backup/Controller/Adminhtml/Index/Download.php b/app/code/Magento/Backup/Controller/Adminhtml/Index/Download.php
index fa15004829eca6dfd6d214e79e439d9913da9607..a2647f428ccf17fcf4c11f618de97498eb43abad 100644
--- a/app/code/Magento/Backup/Controller/Adminhtml/Index/Download.php
+++ b/app/code/Magento/Backup/Controller/Adminhtml/Index/Download.php
@@ -14,6 +14,7 @@ class Download extends \Magento\Backup\Controller\Adminhtml\Index
      * Download backup action
      *
      * @return void|\Magento\Backend\App\Action
+     * @SuppressWarnings(PHPMD.ExitExpression)
      */
     public function execute()
     {
diff --git a/app/code/Magento/Backup/Controller/Adminhtml/Index/Rollback.php b/app/code/Magento/Backup/Controller/Adminhtml/Index/Rollback.php
index 7be45cbcb4c02e590495ee7537f2167fbd11840b..ef03c35226aef73091e954a9e38aac1f0d16ef3a 100644
--- a/app/code/Magento/Backup/Controller/Adminhtml/Index/Rollback.php
+++ b/app/code/Magento/Backup/Controller/Adminhtml/Index/Rollback.php
@@ -15,6 +15,9 @@ class Rollback extends \Magento\Backup\Controller\Adminhtml\Index
      * Rollback Action
      *
      * @return void|\Magento\Backend\App\Action
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public function execute()
     {
diff --git a/app/code/Magento/Backup/Model/Backup.php b/app/code/Magento/Backup/Model/Backup.php
index e5ac01021877294b074da4ba5bead0dab74e638f..71eec41eadb101c2520b6cfe84db6504fc2d45a1 100644
--- a/app/code/Magento/Backup/Model/Backup.php
+++ b/app/code/Magento/Backup/Model/Backup.php
@@ -6,6 +6,7 @@
 namespace Magento\Backup\Model;
 
 use Magento\Framework\App\Filesystem\DirectoryList;
+use Magento\Framework\Filesystem\DriverPool;
 
 /**
  * Backup file item model
@@ -13,6 +14,7 @@ use Magento\Framework\App\Filesystem\DirectoryList;
  * @method string getPath()
  * @method string getName()
  * @method string getTime()
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Backup extends \Magento\Framework\Object implements \Magento\Framework\Backup\Db\BackupInterface
 {
@@ -292,11 +294,10 @@ class Backup extends \Magento\Framework\Object implements \Magento\Framework\Bac
 
         try {
             /** @var \Magento\Framework\Filesystem\Directory\WriteInterface $varDirectory */
-            $varDirectory = $this->_filesystem->getDirectoryWrite(DirectoryList::VAR_DIR);
+            $varDirectory = $this->_filesystem->getDirectoryWrite(DirectoryList::VAR_DIR, DriverPool::ZLIB);
             $this->_stream = $varDirectory->openFile(
                 $this->_getFilePath(),
-                $mode,
-                \Magento\Framework\Filesystem\DriverPool::ZLIB
+                $mode
             );
         } catch (\Magento\Framework\Filesystem\FilesystemException $e) {
             throw new \Magento\Framework\Backup\Exception\NotEnoughPermissions(
diff --git a/app/code/Magento/Backup/Model/Resource/Db.php b/app/code/Magento/Backup/Model/Resource/Db.php
index 2ec3d7c75ca67eb73d854a813970f86d5151051a..78c2b95445f3dd47f921d32ef75c8fc5563ba6be 100644
--- a/app/code/Magento/Backup/Model/Resource/Db.php
+++ b/app/code/Magento/Backup/Model/Resource/Db.php
@@ -181,6 +181,7 @@ class Db
      * @param string $tableName
      * @param bool $step
      * @return string
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function getTableDataDump($tableName, $step = false)
     {
diff --git a/app/code/Magento/Backup/Model/Resource/Helper.php b/app/code/Magento/Backup/Model/Resource/Helper.php
index f6454f1f2591e58c44467f4dc6f29dc44d4afa6b..1ac7b4366810b5463fe9b358f80771e05d6c70d4 100644
--- a/app/code/Magento/Backup/Model/Resource/Helper.php
+++ b/app/code/Magento/Backup/Model/Resource/Helper.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Backup\Model\Resource;
 
 class Helper extends \Magento\Framework\DB\Helper
@@ -120,6 +123,7 @@ class Helper extends \Magento\Framework\DB\Helper
      * @param string $tableName
      * @param bool $withForeignKeys
      * @return string
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function getTableCreateSql($tableName, $withForeignKeys = false)
     {
diff --git a/app/code/Magento/Backup/composer.json b/app/code/Magento/Backup/composer.json
index 87a0225e866907887453fcf72446f142a8585e8d..61ae463dbbfb871007f0d844216592d42ffd883e 100644
--- a/app/code/Magento/Backup/composer.json
+++ b/app/code/Magento/Backup/composer.json
@@ -3,15 +3,15 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-core": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/module-cron": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-core": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/module-cron": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/Backup/view/adminhtml/templates/backup/dialogs.phtml b/app/code/Magento/Backup/view/adminhtml/templates/backup/dialogs.phtml
index f494493b171a4d00e7c91085cc643a9cbca1859b..0c5ceb2637abf0bff303dcb81bc9f2943051c674 100644
--- a/app/code/Magento/Backup/view/adminhtml/templates/backup/dialogs.phtml
+++ b/app/code/Magento/Backup/view/adminhtml/templates/backup/dialogs.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <!-- TODO: refactor form styles and js -->
 <div class="fade backup-dialog" id="rollback-warning" style="display: none;">
@@ -133,7 +136,7 @@
     $backupUrl = $this->getUrl('*/*/create');
 ?>
 
-<script type="text/javascript">
+<script>
 require([
     "prototype",
     "mage/adminhtml/backup"
diff --git a/app/code/Magento/Backup/view/adminhtml/templates/backup/list.phtml b/app/code/Magento/Backup/view/adminhtml/templates/backup/list.phtml
index 9ae31398fdee4b5ba6d0c9c845e8be6e1d4355e7..ac6c6d48320a469c6aaede692ca081e04f999168 100644
--- a/app/code/Magento/Backup/view/adminhtml/templates/backup/list.phtml
+++ b/app/code/Magento/Backup/view/adminhtml/templates/backup/list.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php echo $this->getChildHtml('grid') ?>
 <?php echo $this->getGridHtml() ?>
diff --git a/app/code/Magento/Bundle/Api/Data/LinkInterface.php b/app/code/Magento/Bundle/Api/Data/LinkInterface.php
index 50e8f27ec3de28fc488d33ac57e6880c2b25e707..78a595f4da271d24dd864c911ddce954e16b3962 100644
--- a/app/code/Magento/Bundle/Api/Data/LinkInterface.php
+++ b/app/code/Magento/Bundle/Api/Data/LinkInterface.php
@@ -48,6 +48,7 @@ interface LinkInterface extends \Magento\Framework\Api\ExtensibleDataInterface
      * Get is default
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsDefault();
 
diff --git a/app/code/Magento/Bundle/Block/Adminhtml/Catalog/Product/Composite/Fieldset/Options/Type/Checkbox.php b/app/code/Magento/Bundle/Block/Adminhtml/Catalog/Product/Composite/Fieldset/Options/Type/Checkbox.php
index bf06ef8125410d802b9f6f4028f5da60f46ef890..47f27eddc23772de23773c881aa094f460b7a0a8 100644
--- a/app/code/Magento/Bundle/Block/Adminhtml/Catalog/Product/Composite/Fieldset/Options/Type/Checkbox.php
+++ b/app/code/Magento/Bundle/Block/Adminhtml/Catalog/Product/Composite/Fieldset/Options/Type/Checkbox.php
@@ -24,7 +24,7 @@ class Checkbox extends \Magento\Bundle\Block\Catalog\Product\View\Type\Bundle\Op
      */
     public function setValidationContainer($elementId, $containerId)
     {
-        return '<script type="text/javascript">
+        return '<script>
             $(\'' .
             $elementId .
             '\').advaiceContainer = \'' .
diff --git a/app/code/Magento/Bundle/Block/Adminhtml/Catalog/Product/Composite/Fieldset/Options/Type/Multi.php b/app/code/Magento/Bundle/Block/Adminhtml/Catalog/Product/Composite/Fieldset/Options/Type/Multi.php
index 1f1165f30bc9bd088d0dc3990bfedc1687dca6dc..8681cd4ee624e5f6e20ef84dd208b834ef84eb2a 100644
--- a/app/code/Magento/Bundle/Block/Adminhtml/Catalog/Product/Composite/Fieldset/Options/Type/Multi.php
+++ b/app/code/Magento/Bundle/Block/Adminhtml/Catalog/Product/Composite/Fieldset/Options/Type/Multi.php
@@ -24,7 +24,7 @@ class Multi extends \Magento\Bundle\Block\Catalog\Product\View\Type\Bundle\Optio
      */
     public function setValidationContainer($elementId, $containerId)
     {
-        return '<script type="text/javascript">
+        return '<script>
             $(\'' .
             $elementId .
             '\').advaiceContainer = \'' .
diff --git a/app/code/Magento/Bundle/Block/Adminhtml/Catalog/Product/Composite/Fieldset/Options/Type/Radio.php b/app/code/Magento/Bundle/Block/Adminhtml/Catalog/Product/Composite/Fieldset/Options/Type/Radio.php
index 088c374547642ce9f11a1b1d94c01c6b0f6d687d..e5c1a3764da4796cf70e23fa4c43043dee2868cd 100644
--- a/app/code/Magento/Bundle/Block/Adminhtml/Catalog/Product/Composite/Fieldset/Options/Type/Radio.php
+++ b/app/code/Magento/Bundle/Block/Adminhtml/Catalog/Product/Composite/Fieldset/Options/Type/Radio.php
@@ -24,7 +24,7 @@ class Radio extends \Magento\Bundle\Block\Catalog\Product\View\Type\Bundle\Optio
      */
     public function setValidationContainer($elementId, $containerId)
     {
-        return '<script type="text/javascript">
+        return '<script>
             $(\'' .
             $elementId .
             '\').advaiceContainer = \'' .
diff --git a/app/code/Magento/Bundle/Block/Adminhtml/Catalog/Product/Composite/Fieldset/Options/Type/Select.php b/app/code/Magento/Bundle/Block/Adminhtml/Catalog/Product/Composite/Fieldset/Options/Type/Select.php
index 7889cae7fb65d1760ecae0c84f20456e30d401bf..6e428d6652c45c9db2fa9a4b34ed42ec5ddf80ad 100644
--- a/app/code/Magento/Bundle/Block/Adminhtml/Catalog/Product/Composite/Fieldset/Options/Type/Select.php
+++ b/app/code/Magento/Bundle/Block/Adminhtml/Catalog/Product/Composite/Fieldset/Options/Type/Select.php
@@ -24,7 +24,7 @@ class Select extends \Magento\Bundle\Block\Catalog\Product\View\Type\Bundle\Opti
      */
     public function setValidationContainer($elementId, $containerId)
     {
-        return '<script type="text/javascript">
+        return '<script>
             $(\'' .
             $elementId .
             '\').advaiceContainer = \'' .
diff --git a/app/code/Magento/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Attributes.php b/app/code/Magento/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Attributes.php
index 60d63c0f409a7a7c52116868730fcd694ae43b03..10439a8fb192ffc6f578bcdde5271fd125d71dae 100644
--- a/app/code/Magento/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Attributes.php
+++ b/app/code/Magento/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Attributes.php
@@ -3,10 +3,14 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Bundle\Block\Adminhtml\Catalog\Product\Edit\Tab;
 
 /**
  * Bundle product attributes tab
+ * @SuppressWarnings(PHPMD.DepthOfInheritance)
  */
 class Attributes extends \Magento\Catalog\Block\Adminhtml\Product\Edit\Tab\Attributes
 {
@@ -14,6 +18,8 @@ class Attributes extends \Magento\Catalog\Block\Adminhtml\Product\Edit\Tab\Attri
      * Prepare attributes form of bundle product
      *
      * @return void
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _prepareForm()
     {
@@ -66,7 +72,7 @@ class Attributes extends \Magento\Catalog\Block\Adminhtml\Product\Edit\Tab\Attri
         $tax = $this->getForm()->getElement('tax_class_id');
         if ($tax) {
             $tax->setAfterElementHtml(
-                '<script type="text/javascript">' .
+                '<script>' .
                 "
                 //<![CDATA[
                 function changeTaxClassId() {
diff --git a/app/code/Magento/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Attributes/Extend.php b/app/code/Magento/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Attributes/Extend.php
index c8136f9ae32feb20aa1369d5a54a5f94e3099d14..c3bc776692e922326c706da4af6e381f5d0aa005 100644
--- a/app/code/Magento/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Attributes/Extend.php
+++ b/app/code/Magento/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Attributes/Extend.php
@@ -54,6 +54,9 @@ class Extend extends \Magento\Catalog\Block\Adminhtml\Form\Renderer\Fieldset\Ele
      * Get Element Html
      *
      * @return string
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public function getElementHtml()
     {
diff --git a/app/code/Magento/Bundle/Block/Adminhtml/Sales/Order/Items/Renderer.php b/app/code/Magento/Bundle/Block/Adminhtml/Sales/Order/Items/Renderer.php
index 461f74ed1aebe77b10b84c927c0847c064b44bcb..d348945a052bc154831fd92c1a5dd4c5db930edc 100644
--- a/app/code/Magento/Bundle/Block/Adminhtml/Sales/Order/Items/Renderer.php
+++ b/app/code/Magento/Bundle/Block/Adminhtml/Sales/Order/Items/Renderer.php
@@ -70,6 +70,7 @@ class Renderer extends \Magento\Sales\Block\Adminhtml\Items\Renderer\DefaultRend
     /**
      * @param mixed $item
      * @return bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function isShipmentSeparately($item = null)
     {
@@ -105,6 +106,7 @@ class Renderer extends \Magento\Sales\Block\Adminhtml\Items\Renderer\DefaultRend
     /**
      * @param mixed $item
      * @return bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function isChildCalculated($item = null)
     {
diff --git a/app/code/Magento/Bundle/Block/Adminhtml/Sales/Order/View/Items/Renderer.php b/app/code/Magento/Bundle/Block/Adminhtml/Sales/Order/View/Items/Renderer.php
index 652a322f2a62e2fc79b5a5f49feecc282c9d5a5f..0c0a97e7ebef34bfdeabdbbfc85577e57391d2fd 100644
--- a/app/code/Magento/Bundle/Block/Adminhtml/Sales/Order/View/Items/Renderer.php
+++ b/app/code/Magento/Bundle/Block/Adminhtml/Sales/Order/View/Items/Renderer.php
@@ -33,6 +33,7 @@ class Renderer extends \Magento\Sales\Block\Adminhtml\Order\View\Items\Renderer\
     /**
      * @param null|object $item
      * @return bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function isShipmentSeparately($item = null)
     {
@@ -65,6 +66,7 @@ class Renderer extends \Magento\Sales\Block\Adminhtml\Order\View\Items\Renderer\
     /**
      * @param null|object $item
      * @return bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function isChildCalculated($item = null)
     {
diff --git a/app/code/Magento/Bundle/Block/Catalog/Product/View/Type/Bundle/Option.php b/app/code/Magento/Bundle/Block/Catalog/Product/View/Type/Bundle/Option.php
index 54b7bf1a3181e6194556b3cfa867f0a829f4b699..3fbebc9a79a4d0b9fd0832d9eeb8cce267b3ec6f 100644
--- a/app/code/Magento/Bundle/Block/Catalog/Product/View/Type/Bundle/Option.php
+++ b/app/code/Magento/Bundle/Block/Catalog/Product/View/Type/Bundle/Option.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Bundle\Block\Catalog\Product\View\Type\Bundle;
 
 use Magento\Bundle\Model\Product\Price;
@@ -272,6 +275,7 @@ class Option extends \Magento\Bundle\Block\Catalog\Product\Price
      * @param int $elementId
      * @param int $containerId
      * @return string
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function setValidationContainer($elementId, $containerId)
     {
diff --git a/app/code/Magento/Bundle/Block/Checkout/Cart/Item/Renderer.php b/app/code/Magento/Bundle/Block/Checkout/Cart/Item/Renderer.php
index 6ca6a1c3bd906c2e268cc2fee101d05e9aa03b4a..02f8b96dffdf8296456236433cb2ab8f38865d9e 100644
--- a/app/code/Magento/Bundle/Block/Checkout/Cart/Item/Renderer.php
+++ b/app/code/Magento/Bundle/Block/Checkout/Cart/Item/Renderer.php
@@ -38,6 +38,7 @@ class Renderer extends \Magento\Checkout\Block\Cart\Item\Renderer
      * @param Configuration $bundleProductConfiguration
      * @param \Magento\Framework\Module\Manager $moduleManager
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\View\Element\Template\Context $context,
@@ -83,6 +84,7 @@ class Renderer extends \Magento\Checkout\Block\Cart\Item\Renderer
      *
      * @param bool $useCache
      * @return array
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     protected function _getBundleOptions($useCache = true)
     {
diff --git a/app/code/Magento/Bundle/Block/Sales/Order/Items/Renderer.php b/app/code/Magento/Bundle/Block/Sales/Order/Items/Renderer.php
index 710b16638209c1449983da94904f4d5cc92fa1db..44df68a474e22e05fd759c7bcddf76e3802e3b94 100644
--- a/app/code/Magento/Bundle/Block/Sales/Order/Items/Renderer.php
+++ b/app/code/Magento/Bundle/Block/Sales/Order/Items/Renderer.php
@@ -17,6 +17,7 @@ class Renderer extends \Magento\Sales\Block\Order\Item\Renderer\DefaultRenderer
     /**
      * @param mixed $item
      * @return bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function isShipmentSeparately($item = null)
     {
@@ -52,6 +53,7 @@ class Renderer extends \Magento\Sales\Block\Order\Item\Renderer\DefaultRenderer
     /**
      * @param mixed $item
      * @return bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function isChildCalculated($item = null)
     {
diff --git a/app/code/Magento/Bundle/Controller/Adminhtml/Product/Initialization/Helper/Plugin/Bundle.php b/app/code/Magento/Bundle/Controller/Adminhtml/Product/Initialization/Helper/Plugin/Bundle.php
index c363fecf0b978bb111e6c6ebaa4f79bdaeeab2b3..71577e116144405009a34cd1ed576fa60e624879 100644
--- a/app/code/Magento/Bundle/Controller/Adminhtml/Product/Initialization/Helper/Plugin/Bundle.php
+++ b/app/code/Magento/Bundle/Controller/Adminhtml/Product/Initialization/Helper/Plugin/Bundle.php
@@ -28,6 +28,7 @@ class Bundle
      *
      * @return \Magento\Catalog\Model\Product
      * @SuppressWarnings(PHPMD.UnusedFormalParameter)
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function afterInitialize(
         \Magento\Catalog\Controller\Adminhtml\Product\Initialization\Helper $subject,
diff --git a/app/code/Magento/Bundle/Model/LinkManagement.php b/app/code/Magento/Bundle/Model/LinkManagement.php
index 1f9f1f507e8a7e10793927a984cb0642e8344b53..35bda8aafe5bbc699ad722f1074276b0bbafa7d8 100644
--- a/app/code/Magento/Bundle/Model/LinkManagement.php
+++ b/app/code/Magento/Bundle/Model/LinkManagement.php
@@ -10,6 +10,9 @@ use Magento\Catalog\Api\ProductRepositoryInterface;
 use Magento\Framework\Exception\CouldNotSaveException;
 use Magento\Framework\Exception\InputException;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class LinkManagement implements \Magento\Bundle\Api\ProductLinkManagementInterface
 {
     /**
@@ -96,6 +99,8 @@ class LinkManagement implements \Magento\Bundle\Api\ProductLinkManagementInterfa
 
     /**
      * {@inheritdoc}
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function addChild(
         \Magento\Catalog\Api\Data\ProductInterface $product,
diff --git a/app/code/Magento/Bundle/Model/Observer.php b/app/code/Magento/Bundle/Model/Observer.php
index 1f907283cd0cbf0f19dd2795664752436b65eaf9..c334969ade488b9463b77477a4586142d9359886 100644
--- a/app/code/Magento/Bundle/Model/Observer.php
+++ b/app/code/Magento/Bundle/Model/Observer.php
@@ -67,6 +67,8 @@ class Observer
      *
      * @param \Magento\Framework\Object $observer
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function appendUpsellProducts($observer)
     {
diff --git a/app/code/Magento/Bundle/Model/OptionRepository.php b/app/code/Magento/Bundle/Model/OptionRepository.php
index c62eaaaa3db2545d113a95ac046f8036fb06ff9b..438a229021721800c5359053ddf0e31937c2e0f5 100644
--- a/app/code/Magento/Bundle/Model/OptionRepository.php
+++ b/app/code/Magento/Bundle/Model/OptionRepository.php
@@ -10,6 +10,9 @@ use Magento\Framework\Exception\CouldNotSaveException;
 use Magento\Framework\Exception\NoSuchEntityException;
 use Magento\Webapi\Exception;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class OptionRepository implements \Magento\Bundle\Api\ProductOptionRepositoryInterface
 {
     /**
@@ -145,6 +148,7 @@ class OptionRepository implements \Magento\Bundle\Api\ProductOptionRepositoryInt
 
     /**
      * {@inheritdoc}
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function save(
         \Magento\Catalog\Api\Data\ProductInterface $product,
@@ -218,6 +222,7 @@ class OptionRepository implements \Magento\Bundle\Api\ProductOptionRepositoryInt
      * @param \Magento\Bundle\Api\Data\LinkInterface $firstLink
      * @param \Magento\Bundle\Api\Data\LinkInterface $secondLink
      * @return int
+     * @SuppressWarnings(PHPMD.UnusedPrivateMethod)
      */
     private function compareLinks(
         \Magento\Bundle\Api\Data\LinkInterface $firstLink,
diff --git a/app/code/Magento/Bundle/Model/Plugin/QuoteItem.php b/app/code/Magento/Bundle/Model/Plugin/QuoteItem.php
index 5771f4ef27a229749789e0473ca744e0dfdc770e..0ed1f9390ce3db6548fd52874fd16254023d17bd 100644
--- a/app/code/Magento/Bundle/Model/Plugin/QuoteItem.php
+++ b/app/code/Magento/Bundle/Model/Plugin/QuoteItem.php
@@ -12,19 +12,21 @@ class QuoteItem
     /**
      * Add bundle attributes to order data
      *
-     * @param \Magento\Sales\Model\Convert\Quote $subject
-     * @param Closure $proceed
-     * @param \Magento\Sales\Model\Quote\Item\AbstractItem $item
+     * @param \Magento\Quote\Model\Quote\Item\ToOrderItem $subject
+     * @param callable $proceed
+     * @param \Magento\Quote\Model\Quote\Item\AbstractItem $item
+     * @param array $additional
      * @return \Magento\Sales\Model\Order\Item
      * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
-    public function aroundItemToOrderItem(
-        \Magento\Sales\Model\Convert\Quote $subject,
+    public function aroundConvert(
+        \Magento\Quote\Model\Quote\Item\ToOrderItem $subject,
         Closure $proceed,
-        \Magento\Sales\Model\Quote\Item\AbstractItem $item
+        \Magento\Quote\Model\Quote\Item\AbstractItem $item,
+        $additional
     ) {
         /** @var $orderItem \Magento\Sales\Model\Order\Item */
-        $orderItem = $proceed($item);
+        $orderItem = $proceed($item, $additional);
 
         if ($attributes = $item->getProduct()->getCustomOption('bundle_selection_attributes')) {
             $productOptions = $orderItem->getProductOptions();
diff --git a/app/code/Magento/Bundle/Model/Product/Price.php b/app/code/Magento/Bundle/Model/Product/Price.php
index 4d745118181c23ed54858ef913cd2524a4dc274a..af198bf0b1b72d3c2a79d11dc9f0e7be37d2aa89 100644
--- a/app/code/Magento/Bundle/Model/Product/Price.php
+++ b/app/code/Magento/Bundle/Model/Product/Price.php
@@ -11,6 +11,7 @@ use Magento\Framework\Pricing\PriceCurrencyInterface;
 
 /**
  * Bundle Price Model
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Price extends \Magento\Catalog\Model\Product\Type\Price
 {
@@ -74,6 +75,7 @@ class Price extends \Magento\Catalog\Model\Product\Type\Price
      * Is min/max prices have been calculated by index
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsPricesCalculatedByIndex()
     {
@@ -181,6 +183,9 @@ class Price extends \Magento\Catalog\Model\Product\Type\Price
      * @param  bool|null                  $includeTax
      * @param  bool                       $takeTierPrice
      * @return float|array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public function getTotalPrices($product, $which = null, $includeTax = null, $takeTierPrice = true)
     {
@@ -523,6 +528,8 @@ class Price extends \Magento\Catalog\Model\Product\Type\Price
      * @param   float                    $qty
      * @param   \Magento\Catalog\Model\Product $product
      * @return  float|array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function getTierPrice($qty, $product)
     {
diff --git a/app/code/Magento/Bundle/Model/Product/Type.php b/app/code/Magento/Bundle/Model/Product/Type.php
index 633f74881157f6f693536748735516f59e20b165..1ad99a75752791f039fac4572fc8c81800a22f7b 100644
--- a/app/code/Magento/Bundle/Model/Product/Type.php
+++ b/app/code/Magento/Bundle/Model/Product/Type.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Bundle\Model\Product;
 
 use Magento\Catalog\Api\ProductRepositoryInterface;
@@ -10,6 +13,9 @@ use Magento\Framework\Pricing\PriceCurrencyInterface;
 
 /**
  * Bundle Type Model
+ * @SuppressWarnings(PHPMD.TooManyFields)
+ * @SuppressWarnings(PHPMD.ExcessiveClassComplexity)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Type extends \Magento\Catalog\Model\Product\Type\AbstractType
 {
@@ -341,6 +347,7 @@ class Type extends \Magento\Catalog\Model\Product\Type\AbstractType
      *
      * @param \Magento\Catalog\Model\Product $product
      * @return $this|void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function beforeSave($product)
     {
@@ -385,6 +392,7 @@ class Type extends \Magento\Catalog\Model\Product\Type\AbstractType
      *
      * @param \Magento\Catalog\Model\Product $product
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function save($product)
     {
@@ -591,6 +599,8 @@ class Type extends \Magento\Catalog\Model\Product\Type\AbstractType
      *
      * @param \Magento\Catalog\Model\Product $product
      * @return bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function isSalable($product)
     {
@@ -649,6 +659,9 @@ class Type extends \Magento\Catalog\Model\Product\Type\AbstractType
      * @param \Magento\Catalog\Model\Product $product
      * @param string $processMode
      * @return array|string
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _prepareProduct(\Magento\Framework\Object $buyRequest, $product, $processMode)
     {
@@ -1014,6 +1027,7 @@ class Type extends \Magento\Catalog\Model\Product\Type\AbstractType
      *
      * @param \Magento\Catalog\Model\Product $product
      * @return boolean true
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getForceChildItemQtyChanges($product)
     {
diff --git a/app/code/Magento/Bundle/Model/Resource/Bundle.php b/app/code/Magento/Bundle/Model/Resource/Bundle.php
index 6ab2819adfb0c9d55bb65d1fd4a895e78eccde83..7a6b0d006ac6ab381a4248fbf03e5c93863d023a 100644
--- a/app/code/Magento/Bundle/Model/Resource/Bundle.php
+++ b/app/code/Magento/Bundle/Model/Resource/Bundle.php
@@ -85,7 +85,7 @@ class Bundle extends \Magento\Framework\Model\Resource\Db\AbstractDb
     {
         $quoteItemIds = $this->_getReadAdapter()->fetchCol(
             $this->_getReadAdapter()->select()->from(
-                $this->getTable('sales_quote_item'),
+                $this->getTable('quote_item'),
                 ['item_id']
             )->where(
                 'product_id = :product_id'
@@ -95,7 +95,7 @@ class Bundle extends \Magento\Framework\Model\Resource\Db\AbstractDb
 
         if ($quoteItemIds) {
             $this->_getWriteAdapter()->delete(
-                $this->getTable('sales_quote_item'),
+                $this->getTable('quote_item'),
                 ['parent_item_id IN(?)' => $quoteItemIds]
             );
         }
diff --git a/app/code/Magento/Bundle/Model/Resource/Indexer/Price.php b/app/code/Magento/Bundle/Model/Resource/Indexer/Price.php
index 5e8bdd6410c95a3dc07ce8da68900cff122a2df6..68a304f10dc78fb23011c4ccd41175a29a05be5a 100644
--- a/app/code/Magento/Bundle/Model/Resource/Indexer/Price.php
+++ b/app/code/Magento/Bundle/Model/Resource/Indexer/Price.php
@@ -125,6 +125,7 @@ class Price extends \Magento\Catalog\Model\Resource\Product\Indexer\Price\Defaul
      * @param int $priceType
      * @param int|array $entityIds the entity ids limitation
      * @return $this
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _prepareBundlePriceByType($priceType, $entityIds = null)
     {
@@ -373,6 +374,7 @@ class Price extends \Magento\Catalog\Model\Resource\Product\Indexer\Price\Defaul
      *
      * @param int $priceType
      * @return $this
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _calculateBundleSelectionPrice($priceType)
     {
diff --git a/app/code/Magento/Bundle/Model/Sales/Order/Pdf/Items/AbstractItems.php b/app/code/Magento/Bundle/Model/Sales/Order/Pdf/Items/AbstractItems.php
index edf0e0dfa594a033f4aa0ed92f718efff42bc225..f5971bdb578de9b60cacaede66d9a0a8c9e397ec 100644
--- a/app/code/Magento/Bundle/Model/Sales/Order/Pdf/Items/AbstractItems.php
+++ b/app/code/Magento/Bundle/Model/Sales/Order/Pdf/Items/AbstractItems.php
@@ -54,6 +54,7 @@ abstract class AbstractItems extends \Magento\Sales\Model\Order\Pdf\Items\Abstra
      *
      * @param \Magento\Framework\Object $item
      * @return bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function isShipmentSeparately($item = null)
     {
@@ -91,6 +92,7 @@ abstract class AbstractItems extends \Magento\Sales\Model\Order\Pdf\Items\Abstra
      *
      * @param \Magento\Framework\Object $item
      * @return bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function isChildCalculated($item = null)
     {
@@ -130,6 +132,7 @@ abstract class AbstractItems extends \Magento\Sales\Model\Order\Pdf\Items\Abstra
      *
      * @param \Magento\Framework\Object $item
      * @return array
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function getBundleOptions($item = null)
     {
@@ -164,6 +167,7 @@ abstract class AbstractItems extends \Magento\Sales\Model\Order\Pdf\Items\Abstra
      *
      * @param \Magento\Framework\Object $item
      * @return array
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function getOrderOptions($item = null)
     {
diff --git a/app/code/Magento/Bundle/Model/Sales/Order/Pdf/Items/Creditmemo.php b/app/code/Magento/Bundle/Model/Sales/Order/Pdf/Items/Creditmemo.php
index 222cc6a4ca3d435a7acc77e2317f78963c8652c0..9c912505ae25f325e093d9e5f47544830990ba74 100644
--- a/app/code/Magento/Bundle/Model/Sales/Order/Pdf/Items/Creditmemo.php
+++ b/app/code/Magento/Bundle/Model/Sales/Order/Pdf/Items/Creditmemo.php
@@ -56,6 +56,9 @@ class Creditmemo extends AbstractItems
      * Draw item line
      *
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public function draw()
     {
diff --git a/app/code/Magento/Bundle/Model/Sales/Order/Pdf/Items/Invoice.php b/app/code/Magento/Bundle/Model/Sales/Order/Pdf/Items/Invoice.php
index 6f3ff1901751a90b6bf4a00fd1545b6cc8098620..797529dacf45d44c048db9bf178e9fdfb71d2508 100644
--- a/app/code/Magento/Bundle/Model/Sales/Order/Pdf/Items/Invoice.php
+++ b/app/code/Magento/Bundle/Model/Sales/Order/Pdf/Items/Invoice.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Bundle\Model\Sales\Order\Pdf\Items;
 
 /**
@@ -54,6 +57,9 @@ class Invoice extends AbstractItems
      * Draw item line
      *
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public function draw()
     {
diff --git a/app/code/Magento/Bundle/Model/Sales/Order/Pdf/Items/Shipment.php b/app/code/Magento/Bundle/Model/Sales/Order/Pdf/Items/Shipment.php
index 5087f874b86f6c7e9845bd2f5bfe4116bbac65ef..19358878b50889a691df408aab58019f7964fd9a 100644
--- a/app/code/Magento/Bundle/Model/Sales/Order/Pdf/Items/Shipment.php
+++ b/app/code/Magento/Bundle/Model/Sales/Order/Pdf/Items/Shipment.php
@@ -54,6 +54,9 @@ class Shipment extends AbstractItems
      * Draw item line
      *
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public function draw()
     {
diff --git a/app/code/Magento/Bundle/Pricing/Adjustment/Calculator.php b/app/code/Magento/Bundle/Pricing/Adjustment/Calculator.php
index 376a1c5f5e62828a6328f8ca0eebbd5afbc7313f..f3f59155be87ea4ecd4ffec0992b39eac5279b9c 100644
--- a/app/code/Magento/Bundle/Pricing/Adjustment/Calculator.php
+++ b/app/code/Magento/Bundle/Pricing/Adjustment/Calculator.php
@@ -20,6 +20,7 @@ use Magento\Tax\Helper\Data as TaxHelper;
 
 /**
  * Bundle price calculator
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Calculator implements BundleCalculatorInterface
 {
@@ -79,6 +80,7 @@ class Calculator implements BundleCalculatorInterface
      * @param null|string $exclude
      * @param null|array $context
      * @return \Magento\Framework\Pricing\Amount\AmountInterface
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function getAmount($amount, SaleableInterface $saleableItem, $exclude = null, $context = [])
     {
@@ -172,6 +174,8 @@ class Calculator implements BundleCalculatorInterface
      * @param bool $searchMin
      * @param bool $useRegularPrice
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function getSelectionAmounts(Product $bundleProduct, $searchMin, $useRegularPrice = false)
     {
@@ -295,6 +299,7 @@ class Calculator implements BundleCalculatorInterface
      * @param \Magento\Bundle\Pricing\Price\BundleSelectionPrice[] $selectionPriceList
      * @param null|string $exclude
      * @return \Magento\Framework\Pricing\Amount\AmountInterface
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function calculateDynamicBundleAmount($basePriceValue, $bundleProduct, $selectionPriceList, $exclude)
     {
@@ -314,7 +319,7 @@ class Calculator implements BundleCalculatorInterface
 
         /** @var  Store $store */
         $store = $bundleProduct->getStore();
-        $roundingMethod = $this->taxHelper->getCalculationAgorithm($store);
+        $roundingMethod = $this->taxHelper->getCalculationAlgorithm($store);
         foreach ($amountList as $amountInfo) {
             /** @var \Magento\Framework\Pricing\Amount\AmountInterface $itemAmount */
             $itemAmount = $amountInfo['amount'];
@@ -382,6 +387,7 @@ class Calculator implements BundleCalculatorInterface
      * @param \Magento\Bundle\Pricing\Price\BundleSelectionPrice[] $selectionPriceList
      * @param bool $searchMin
      * @return \Magento\Bundle\Pricing\Price\BundleSelectionPrice[]
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function processOptions($option, $selectionPriceList, $searchMin = true)
     {
diff --git a/app/code/Magento/Bundle/Pricing/Price/BundleSelectionPrice.php b/app/code/Magento/Bundle/Pricing/Price/BundleSelectionPrice.php
index 78db911af98e85c7cefa9cccd0313feced598e36..6b5ede60719f51ca23d563444196f7cbc6f44177 100644
--- a/app/code/Magento/Bundle/Pricing/Price/BundleSelectionPrice.php
+++ b/app/code/Magento/Bundle/Pricing/Price/BundleSelectionPrice.php
@@ -16,6 +16,7 @@ use Magento\Framework\Pricing\Price\AbstractPrice;
 
 /**
  * Bundle option price
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class BundleSelectionPrice extends AbstractPrice
 {
diff --git a/app/code/Magento/Bundle/composer.json b/app/code/Magento/Bundle/composer.json
index 8580562292cb8fc8e11cf5b48f954a646b9fab54..34e5452ba8ae9588556ab899e9f6f5d5b8ba4e46 100644
--- a/app/code/Magento/Bundle/composer.json
+++ b/app/code/Magento/Bundle/composer.json
@@ -3,24 +3,25 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-catalog": "0.42.0-beta3",
-        "magento/module-tax": "0.42.0-beta3",
-        "magento/module-core": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/module-sales": "0.42.0-beta3",
-        "magento/module-checkout": "0.42.0-beta3",
-        "magento/module-catalog-inventory": "0.42.0-beta3",
-        "magento/module-customer": "0.42.0-beta3",
-        "magento/module-catalog-rule": "0.42.0-beta3",
-        "magento/module-eav": "0.42.0-beta3",
-        "magento/module-gift-message": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
-        "magento/module-webapi": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-catalog": "0.42.0-beta4",
+        "magento/module-tax": "0.42.0-beta4",
+        "magento/module-core": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/module-sales": "0.42.0-beta4",
+        "magento/module-checkout": "0.42.0-beta4",
+        "magento/module-catalog-inventory": "0.42.0-beta4",
+        "magento/module-customer": "0.42.0-beta4",
+        "magento/module-catalog-rule": "0.42.0-beta4",
+        "magento/module-eav": "0.42.0-beta4",
+        "magento/module-gift-message": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
+        "magento/module-webapi": "0.42.0-beta4",
+        "magento/module-quote": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/Bundle/etc/adminhtml/di.xml b/app/code/Magento/Bundle/etc/adminhtml/di.xml
index 4c6000079657090dedb6d1b9b9b9b7915dde6574..cbd273857f92f7030928405eb8a8b9953653abb4 100644
--- a/app/code/Magento/Bundle/etc/adminhtml/di.xml
+++ b/app/code/Magento/Bundle/etc/adminhtml/di.xml
@@ -6,7 +6,7 @@
  */
 -->
 <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../lib/internal/Magento/Framework/ObjectManager/etc/config.xsd">
-    <type name="Magento\Sales\Model\Convert\Quote">
+    <type name="Magento\Quote\Model\Quote\Item\ToOrderItem">
         <plugin name="append_bundle_data_to_order" type="Magento\Bundle\Model\Plugin\QuoteItem"/>
     </type>
     <type name="Magento\Catalog\Controller\Adminhtml\Product\Initialization\Helper">
diff --git a/app/code/Magento/Bundle/etc/catalog_attributes.xml b/app/code/Magento/Bundle/etc/catalog_attributes.xml
index a2542e097a47d1f6fa58b58d3d8784da54e1492b..b9a8f3332bf4c72b5ab6a04d2b1647436b3fc8ac 100644
--- a/app/code/Magento/Bundle/etc/catalog_attributes.xml
+++ b/app/code/Magento/Bundle/etc/catalog_attributes.xml
@@ -10,7 +10,7 @@
         <attribute name="price_view"/>
         <attribute name="price_type"/>
     </group>
-    <group name="sales_quote_item">
+    <group name="quote_item">
         <attribute name="price_view"/>
         <attribute name="price_type"/>
         <attribute name="shipment_type"/>
diff --git a/app/code/Magento/Bundle/etc/frontend/di.xml b/app/code/Magento/Bundle/etc/frontend/di.xml
index fcd30bf37bcc3f8143e4b4a91ecdc2220838aaf0..1634a8c0863d29a902f0e4c6ba21e7a14da848c2 100644
--- a/app/code/Magento/Bundle/etc/frontend/di.xml
+++ b/app/code/Magento/Bundle/etc/frontend/di.xml
@@ -6,7 +6,7 @@
  */
 -->
 <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../lib/internal/Magento/Framework/ObjectManager/etc/config.xsd">
-    <type name="Magento\Sales\Model\Convert\Quote">
+    <type name="Magento\Quote\Model\Quote\Item\ToOrderItem">
         <plugin name="append_bundle_data_to_order" type="Magento\Bundle\Model\Plugin\QuoteItem"/>
     </type>
 </config>
diff --git a/app/code/Magento/Bundle/view/adminhtml/templates/product/composite/fieldset/options/bundle.phtml b/app/code/Magento/Bundle/view/adminhtml/templates/product/composite/fieldset/options/bundle.phtml
index f4c11447b4043883a981d3200ffc5346aadfa5a8..b6acc0f9033d7308a7b4420ea82fe81842f2b901 100644
--- a/app/code/Magento/Bundle/view/adminhtml/templates/product/composite/fieldset/options/bundle.phtml
+++ b/app/code/Magento/Bundle/view/adminhtml/templates/product/composite/fieldset/options/bundle.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php /* @var $this \Magento\Bundle\Block\Adminhtml\Catalog\Product\Composite\Fieldset\Bundle */ ?>
@@ -19,7 +22,7 @@
     </div>
 </fieldset>
 
-<script type="text/javascript">
+<script>
 require([
     "Magento_Catalog/catalog/product/composite/configure"
 ], function(){
diff --git a/app/code/Magento/Bundle/view/adminhtml/templates/product/composite/fieldset/options/type/checkbox.phtml b/app/code/Magento/Bundle/view/adminhtml/templates/product/composite/fieldset/options/type/checkbox.phtml
index e40fb4aa06b6e386dbd374e36024b2ebf6426189..b886a87eef049beb41f2bee38473546f953f86a9 100644
--- a/app/code/Magento/Bundle/view/adminhtml/templates/product/composite/fieldset/options/type/checkbox.phtml
+++ b/app/code/Magento/Bundle/view/adminhtml/templates/product/composite/fieldset/options/type/checkbox.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /* @var $this \Magento\Bundle\Block\Adminhtml\Catalog\Product\Composite\Fieldset\Options\Type\Checkbox */ ?>
 <?php $_option = $this->getOption(); ?>
diff --git a/app/code/Magento/Bundle/view/adminhtml/templates/product/composite/fieldset/options/type/multi.phtml b/app/code/Magento/Bundle/view/adminhtml/templates/product/composite/fieldset/options/type/multi.phtml
index 7fb4da26a3efc3cadca939ada628da4ef059f65a..c1212d74dfdc6980a398481891156588b2e2801e 100644
--- a/app/code/Magento/Bundle/view/adminhtml/templates/product/composite/fieldset/options/type/multi.phtml
+++ b/app/code/Magento/Bundle/view/adminhtml/templates/product/composite/fieldset/options/type/multi.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /* @var $this \Magento\Bundle\Block\Adminhtml\Catalog\Product\Composite\Fieldset\Options\Type\Multi */ ?>
 <?php $_option = $this->getOption(); ?>
diff --git a/app/code/Magento/Bundle/view/adminhtml/templates/product/composite/fieldset/options/type/radio.phtml b/app/code/Magento/Bundle/view/adminhtml/templates/product/composite/fieldset/options/type/radio.phtml
index 3d35168920bae61c8641f4394b4533447d07e544..fdae49d174eab84f0dae11e88b4bdf8bc2c0ad15 100644
--- a/app/code/Magento/Bundle/view/adminhtml/templates/product/composite/fieldset/options/type/radio.phtml
+++ b/app/code/Magento/Bundle/view/adminhtml/templates/product/composite/fieldset/options/type/radio.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /* @var $this \Magento\Bundle\Block\Adminhtml\Catalog\Product\Composite\Fieldset\Options\Type\Radio */ ?>
 <?php $_option = $this->getOption(); ?>
diff --git a/app/code/Magento/Bundle/view/adminhtml/templates/product/composite/fieldset/options/type/select.phtml b/app/code/Magento/Bundle/view/adminhtml/templates/product/composite/fieldset/options/type/select.phtml
index c9cc6d68ea045ac22d31b3aabaf06883b1023d2c..a73b8f2486e9700c2e9a25f3c9711562d2ff4f49 100644
--- a/app/code/Magento/Bundle/view/adminhtml/templates/product/composite/fieldset/options/type/select.phtml
+++ b/app/code/Magento/Bundle/view/adminhtml/templates/product/composite/fieldset/options/type/select.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /* @var $this \Magento\Bundle\Block\Adminhtml\Catalog\Product\Composite\Fieldset\Options\Type\Select */ ?>
 <?php $_option      = $this->getOption(); ?>
diff --git a/app/code/Magento/Bundle/view/adminhtml/templates/product/edit/bundle.phtml b/app/code/Magento/Bundle/view/adminhtml/templates/product/edit/bundle.phtml
index 02cfc02bbd3f29f3d2315289c669e81dc0045804..16e6c5e5c30bda0c43a285cf1af579abcba01e9d 100644
--- a/app/code/Magento/Bundle/view/adminhtml/templates/product/edit/bundle.phtml
+++ b/app/code/Magento/Bundle/view/adminhtml/templates/product/edit/bundle.phtml
@@ -4,9 +4,11 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Bundle\Block\Adminhtml\Catalog\Product\Edit\Tab\Bundle */
 ?>
-<script type="text/javascript">
+<script>
 
 if(typeof Bundle=='undefined') {
     Bundle = {};
@@ -48,7 +50,7 @@ if(typeof Bundle=='undefined') {
 
 <input type="hidden" name="affect_bundle_product_selections" value="1" />
 
-<script type="text/javascript">
+<script>
 require(["prototype", "mage/adminhtml/form"], function(){
     // re-bind form elements onchange
     varienWindowOnload(true);
diff --git a/app/code/Magento/Bundle/view/adminhtml/templates/product/edit/bundle/option.phtml b/app/code/Magento/Bundle/view/adminhtml/templates/product/edit/bundle/option.phtml
index c1c60422269d4b17570862893c5f06e04f6036b1..2d68f15534eb43cf1b7213c52a6c6ac6456fc32d 100644
--- a/app/code/Magento/Bundle/view/adminhtml/templates/product/edit/bundle/option.phtml
+++ b/app/code/Magento/Bundle/view/adminhtml/templates/product/edit/bundle/option.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Bundle\Block\Adminhtml\Catalog\Product\Edit\Tab\Bundle\Option */
 ?>
 <script id="bundle-option-template" type="text/x-jquery-tmpl">
@@ -111,7 +113,7 @@
 
 <?php echo $this->getSelectionHtml() ?>
 
-<script type="text/javascript">
+<script>
 require([
     "jquery",
     "jquery/jquery.tabs",
diff --git a/app/code/Magento/Bundle/view/adminhtml/templates/product/edit/bundle/option/selection.phtml b/app/code/Magento/Bundle/view/adminhtml/templates/product/edit/bundle/option/selection.phtml
index 8e0b91f150651dba611bb7e69d1be5c4974595ee..3e0fca0b440b4dbcfc46ffba09c5c62d185ecc5c 100644
--- a/app/code/Magento/Bundle/view/adminhtml/templates/product/edit/bundle/option/selection.phtml
+++ b/app/code/Magento/Bundle/view/adminhtml/templates/product/edit/bundle/option/selection.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Bundle\Block\Adminhtml\Catalog\Product\Edit\Tab\Bundle\Option\Selection */
 ?>
 <script id="bundle-option-selection-box-template" type="text/x-jquery-tmpl">
@@ -93,7 +95,7 @@
         </span>
     </td>
 </script>
-<script type="text/javascript">
+<script>
 require(['jquery'], function(jQuery){
 var bundleTemplateBox = jQuery('#bundle-option-selection-box-template').html(),
     bundleTemplateRow = jQuery('#bundle-option-selection-row-template').html();
diff --git a/app/code/Magento/Bundle/view/adminhtml/templates/product/stock/disabler.phtml b/app/code/Magento/Bundle/view/adminhtml/templates/product/stock/disabler.phtml
index be3c4ee2badd93873927385d04acda2625562ad1..d74131d6587113da272e35dce1b23de3fa400cdd 100644
--- a/app/code/Magento/Bundle/view/adminhtml/templates/product/stock/disabler.phtml
+++ b/app/code/Magento/Bundle/view/adminhtml/templates/product/stock/disabler.phtml
@@ -4,7 +4,7 @@
  * See COPYING.txt for license details.
  */
 ?>
-<script type="text/javascript">
+<script>
 require(['jquery'], function($){
     $('[data-tab-panel=product-details]').on('stockbeforedisable', function(e) {
         if (e.productType === 'bundle') {
diff --git a/app/code/Magento/Bundle/view/adminhtml/templates/sales/creditmemo/create/items/renderer.phtml b/app/code/Magento/Bundle/view/adminhtml/templates/sales/creditmemo/create/items/renderer.phtml
index fce050f62505ccd6def484e966c16cdb52c97163..26383fb52dca16a446b4023af7b555e364ebed89 100644
--- a/app/code/Magento/Bundle/view/adminhtml/templates/sales/creditmemo/create/items/renderer.phtml
+++ b/app/code/Magento/Bundle/view/adminhtml/templates/sales/creditmemo/create/items/renderer.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
@@ -177,7 +180,7 @@
                         <?php echo $this->truncateString($option['value'], 55, '', $_remainder);?>
                         <?php if ($_remainder):?>
                             ... <span id="<?php echo $_id = 'id' . uniqid()?>"><?php echo $_remainder ?></span>
-                            <script type="text/javascript">
+                            <script>
 require(['prototype'], function(){
 
     $('<?php echo $_id ?>').hide();
diff --git a/app/code/Magento/Bundle/view/adminhtml/templates/sales/creditmemo/view/items/renderer.phtml b/app/code/Magento/Bundle/view/adminhtml/templates/sales/creditmemo/view/items/renderer.phtml
index af1599300d61f916a3d730eadbc7c8d5dc8e7025..d4fe089d9bdb0816d6e5407d31568d39a08189b5 100644
--- a/app/code/Magento/Bundle/view/adminhtml/templates/sales/creditmemo/view/items/renderer.phtml
+++ b/app/code/Magento/Bundle/view/adminhtml/templates/sales/creditmemo/view/items/renderer.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
@@ -111,7 +114,7 @@
                         <?php echo $this->truncateString($option['value'], 55, '', $_remainder);?>
                         <?php if ($_remainder):?>
                             ... <span id="<?php echo $_id = 'id' . uniqid()?>"><?php echo $_remainder ?></span>
-                            <script type="text/javascript">
+                            <script>
 require(['prototype'], function(){
 
     $('<?php echo $_id ?>').hide();
diff --git a/app/code/Magento/Bundle/view/adminhtml/templates/sales/invoice/create/items/renderer.phtml b/app/code/Magento/Bundle/view/adminhtml/templates/sales/invoice/create/items/renderer.phtml
index 8f15c2983529a662cc2031e82e2222fe2f5840ca..8bc1bb7194d2bb779cb29f3cf51787d21372e52d 100644
--- a/app/code/Magento/Bundle/view/adminhtml/templates/sales/invoice/create/items/renderer.phtml
+++ b/app/code/Magento/Bundle/view/adminhtml/templates/sales/invoice/create/items/renderer.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
@@ -167,7 +170,7 @@
                         <?php echo $this->truncateString($option['value'], 55, '', $_remainder);?>
                         <?php if ($_remainder):?>
                             ... <span id="<?php echo $_id = 'id' . uniqid()?>"><?php echo $_remainder ?></span>
-                            <script type="text/javascript">
+                            <script>
 require(['prototype'], function(){
 
     $('<?php echo $_id ?>').hide();
diff --git a/app/code/Magento/Bundle/view/adminhtml/templates/sales/invoice/view/items/renderer.phtml b/app/code/Magento/Bundle/view/adminhtml/templates/sales/invoice/view/items/renderer.phtml
index 45e503aa0e54dcfbffe62fd9d8698186d4c7f610..9fb053cde59fe9801c96923c3e77c9d07ddbbb7e 100644
--- a/app/code/Magento/Bundle/view/adminhtml/templates/sales/invoice/view/items/renderer.phtml
+++ b/app/code/Magento/Bundle/view/adminhtml/templates/sales/invoice/view/items/renderer.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
@@ -112,7 +115,7 @@
                         <?php echo $this->truncateString($option['value'], 55, '', $_remainder);?>
                         <?php if ($_remainder):?>
                             ... <span id="<?php echo $_id = 'id' . uniqid()?>"><?php echo $_remainder ?></span>
-                            <script type="text/javascript">
+                            <script>
 require(['protoype'], function(){
 
     $('<?php echo $_id ?>').hide();
diff --git a/app/code/Magento/Bundle/view/adminhtml/templates/sales/order/view/items/renderer.phtml b/app/code/Magento/Bundle/view/adminhtml/templates/sales/order/view/items/renderer.phtml
index 593c9abad4e2dbf54c52878036820437c756ee44..c4e91067b0d5b73ffe8c81f119035445b8c13730 100644
--- a/app/code/Magento/Bundle/view/adminhtml/templates/sales/order/view/items/renderer.phtml
+++ b/app/code/Magento/Bundle/view/adminhtml/templates/sales/order/view/items/renderer.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
@@ -181,7 +184,7 @@
                         <?php echo $this->truncateString($option['value'], 55, '', $_remainder);?>
                         <?php if ($_remainder):?>
                             ... <span id="<?php echo $_id = 'id' . uniqid()?>"><?php echo $_remainder ?></span>
-                            <script type="text/javascript">
+                            <script>
 require(['prototype'], function(){
 
     $('<?php echo $_id ?>').hide();
diff --git a/app/code/Magento/Bundle/view/adminhtml/templates/sales/shipment/create/items/renderer.phtml b/app/code/Magento/Bundle/view/adminhtml/templates/sales/shipment/create/items/renderer.phtml
index 44f487aebeb45d5e5c04cbce7b91c47f3185a0de..8cee9aa2e52c9996243b2351293d62669e028dfa 100644
--- a/app/code/Magento/Bundle/view/adminhtml/templates/sales/shipment/create/items/renderer.phtml
+++ b/app/code/Magento/Bundle/view/adminhtml/templates/sales/shipment/create/items/renderer.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
@@ -78,7 +81,7 @@
                         <?php echo $this->truncateString($option['value'], 55, '', $_remainder);?>
                         <?php if ($_remainder):?>
                             ... <span id="<?php echo $_id = 'id' . uniqid()?>"><?php echo $_remainder ?></span>
-                            <script type="text/javascript">
+                            <script>
 require(['prototype'], function(){
 
                             $('<?php echo $_id ?>').hide();
diff --git a/app/code/Magento/Bundle/view/adminhtml/templates/sales/shipment/view/items/renderer.phtml b/app/code/Magento/Bundle/view/adminhtml/templates/sales/shipment/view/items/renderer.phtml
index 678763cab0d00512312197a19ff105dcab87b69b..160f8aa6ebcc729cb68bc26510b4fb42d01bad5f 100644
--- a/app/code/Magento/Bundle/view/adminhtml/templates/sales/shipment/view/items/renderer.phtml
+++ b/app/code/Magento/Bundle/view/adminhtml/templates/sales/shipment/view/items/renderer.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
@@ -77,7 +80,7 @@
                         <?php echo $this->truncateString($option['value'], 55, '', $_remainder);?>
                         <?php if ($_remainder):?>
                             ... <span id="<?php echo $_id = 'id' . uniqid()?>"><?php echo $_remainder ?></span>
-                            <script type="text/javascript">
+                            <script>
 require(['prototype'], function(){
 
                             $('<?php echo $_id ?>').hide();
diff --git a/app/code/Magento/Bundle/view/base/templates/product/price/final_price.phtml b/app/code/Magento/Bundle/view/base/templates/product/price/final_price.phtml
index 5fdd473281974c3c451a4bd05926cb00ea1c0ffa..bc76e6a2c44c44c56f89758a333e9b51e0b3f604 100644
--- a/app/code/Magento/Bundle/view/base/templates/product/price/final_price.phtml
+++ b/app/code/Magento/Bundle/view/base/templates/product/price/final_price.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php
diff --git a/app/code/Magento/Bundle/view/base/templates/product/price/selection/amount.phtml b/app/code/Magento/Bundle/view/base/templates/product/price/selection/amount.phtml
index 8c6597dccfa6bfc074df6c43a02e4d8a3a7955af..96853648aa2e923fca2bbe26df1f7f46ac3f6407 100644
--- a/app/code/Magento/Bundle/view/base/templates/product/price/selection/amount.phtml
+++ b/app/code/Magento/Bundle/view/base/templates/product/price/selection/amount.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php /** @var \Magento\Framework\Pricing\Render\Amount $this */ ?>
diff --git a/app/code/Magento/Bundle/view/base/templates/product/price/tier_prices.phtml b/app/code/Magento/Bundle/view/base/templates/product/price/tier_prices.phtml
index 3bfb345d89dcf7fff149539cd1cce8778e98baee..5e187539667973657a355c20a4b7c0ba8cd2591b 100644
--- a/app/code/Magento/Bundle/view/base/templates/product/price/tier_prices.phtml
+++ b/app/code/Magento/Bundle/view/base/templates/product/price/tier_prices.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php
diff --git a/app/code/Magento/Bundle/view/frontend/templates/catalog/product/view/customize.phtml b/app/code/Magento/Bundle/view/frontend/templates/catalog/product/view/customize.phtml
index 54cbd6e4aad235a6a1f4343ecabd0447c29d2af8..6b68956b6518862653d2d4017def82fdc5ff23d0 100644
--- a/app/code/Magento/Bundle/view/frontend/templates/catalog/product/view/customize.phtml
+++ b/app/code/Magento/Bundle/view/frontend/templates/catalog/product/view/customize.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php $_product = $this->getProduct() ?>
diff --git a/app/code/Magento/Bundle/view/frontend/templates/catalog/product/view/summary.phtml b/app/code/Magento/Bundle/view/frontend/templates/catalog/product/view/summary.phtml
index 5d461fc315822a3fafdcc592cdb117b33620e27a..b7124fdbef421e2e246f92cd7cca09b8334fec06 100644
--- a/app/code/Magento/Bundle/view/frontend/templates/catalog/product/view/summary.phtml
+++ b/app/code/Magento/Bundle/view/frontend/templates/catalog/product/view/summary.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php
diff --git a/app/code/Magento/Bundle/view/frontend/templates/catalog/product/view/type/bundle.phtml b/app/code/Magento/Bundle/view/frontend/templates/catalog/product/view/type/bundle.phtml
index 8880a2c9f297bcadb5f216505676761982f44674..6d524636e5ceb84b54cf519b6bb9c810e5cdedac 100644
--- a/app/code/Magento/Bundle/view/frontend/templates/catalog/product/view/type/bundle.phtml
+++ b/app/code/Magento/Bundle/view/frontend/templates/catalog/product/view/type/bundle.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /* @var $this \Magento\Bundle\Block\Catalog\Product\View\Type\Bundle */
 ?>
 <?php $_product = $this->getProduct() ?>
@@ -18,4 +20,4 @@
         </p>
     <?php endif; ?>
 <?php endif; ?>
-<?php echo $this->getChildHtml('bundle_prices') ?>
\ No newline at end of file
+<?php echo $this->getChildHtml('bundle_prices') ?>
diff --git a/app/code/Magento/Bundle/view/frontend/templates/catalog/product/view/type/bundle/option/checkbox.phtml b/app/code/Magento/Bundle/view/frontend/templates/catalog/product/view/type/bundle/option/checkbox.phtml
index 5408596fc68c69c162806027fa4b144df8b6d696..5aa595f37d9c49cda51cd5de38f2c05db9aeec34 100644
--- a/app/code/Magento/Bundle/view/frontend/templates/catalog/product/view/type/bundle/option/checkbox.phtml
+++ b/app/code/Magento/Bundle/view/frontend/templates/catalog/product/view/type/bundle/option/checkbox.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php /* @var $this \Magento\Bundle\Block\Catalog\Product\View\Type\Bundle\Option\Checkbox */ ?>
diff --git a/app/code/Magento/Bundle/view/frontend/templates/catalog/product/view/type/bundle/option/multi.phtml b/app/code/Magento/Bundle/view/frontend/templates/catalog/product/view/type/bundle/option/multi.phtml
index 225c3b170b962b3738a6bad86d90c9b9bd5ae413..482d3fc80c85b3ccc660990cc4dc50c981bdde77 100644
--- a/app/code/Magento/Bundle/view/frontend/templates/catalog/product/view/type/bundle/option/multi.phtml
+++ b/app/code/Magento/Bundle/view/frontend/templates/catalog/product/view/type/bundle/option/multi.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /* @var $this \Magento\Bundle\Block\Catalog\Product\View\Type\Bundle\Option\Multi */ ?>
 <?php $_option = $this->getOption() ?>
diff --git a/app/code/Magento/Bundle/view/frontend/templates/catalog/product/view/type/bundle/option/radio.phtml b/app/code/Magento/Bundle/view/frontend/templates/catalog/product/view/type/bundle/option/radio.phtml
index 05b284411dcbd3387d538bb8d8de9125c41f1126..bbbd774f7ee50039465541ca39f22e52ea322c88 100644
--- a/app/code/Magento/Bundle/view/frontend/templates/catalog/product/view/type/bundle/option/radio.phtml
+++ b/app/code/Magento/Bundle/view/frontend/templates/catalog/product/view/type/bundle/option/radio.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /* @var $this \Magento\Bundle\Block\Catalog\Product\View\Type\Bundle\Option\Radio */ ?>
 <?php $_option = $this->getOption(); ?>
diff --git a/app/code/Magento/Bundle/view/frontend/templates/catalog/product/view/type/bundle/option/select.phtml b/app/code/Magento/Bundle/view/frontend/templates/catalog/product/view/type/bundle/option/select.phtml
index c525d53399111376627a27abd35695c25d53beca..cfbe57449ef7d8b3c31946fa082cf7e4b38edb38 100644
--- a/app/code/Magento/Bundle/view/frontend/templates/catalog/product/view/type/bundle/option/select.phtml
+++ b/app/code/Magento/Bundle/view/frontend/templates/catalog/product/view/type/bundle/option/select.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php /* @var $this \Magento\Bundle\Block\Catalog\Product\View\Type\Bundle\Option\Select */ ?>
diff --git a/app/code/Magento/Bundle/view/frontend/templates/catalog/product/view/type/bundle/options.phtml b/app/code/Magento/Bundle/view/frontend/templates/catalog/product/view/type/bundle/options.phtml
index 7a9d3a256f3f6ee058b4da172abdf20877bed1ea..cab5b39bc7d5a50c2633e52404313b913874995c 100644
--- a/app/code/Magento/Bundle/view/frontend/templates/catalog/product/view/type/bundle/options.phtml
+++ b/app/code/Magento/Bundle/view/frontend/templates/catalog/product/view/type/bundle/options.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this Magento\Bundle\Block\Catalog\Product\View\Type\Bundle */ ?>
 <?php
@@ -12,7 +15,7 @@ $helper = $this->helper('Magento\Catalog\Helper\Output');
 <?php $options = $this->decorateArray($this->getOptions()); ?>
 <?php if ($product->isSaleable()):?>
     <?php if (count($options)): ?>
-<script type="text/javascript">
+<script>
 require([
     'jquery',
     'mage/mage',
diff --git a/app/code/Magento/Bundle/view/frontend/templates/email/order/items/creditmemo/default.phtml b/app/code/Magento/Bundle/view/frontend/templates/email/order/items/creditmemo/default.phtml
index 1b08fe6f350e753513c957dd721a15913bd1bd4a..28c2466f059672bbcc2c7929734e223bef78f7bf 100644
--- a/app/code/Magento/Bundle/view/frontend/templates/email/order/items/creditmemo/default.phtml
+++ b/app/code/Magento/Bundle/view/frontend/templates/email/order/items/creditmemo/default.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\Bundle\Block\Sales\Order\Items\Renderer */ ?>
 <?php $parentItem = $this->getItem() ?>
diff --git a/app/code/Magento/Bundle/view/frontend/templates/email/order/items/invoice/default.phtml b/app/code/Magento/Bundle/view/frontend/templates/email/order/items/invoice/default.phtml
index 227b6e93e347cd94e6f005b8b2fc7d1eef3ce7f9..7b37cc48507500ef318f40e997a189cbef2544bb 100644
--- a/app/code/Magento/Bundle/view/frontend/templates/email/order/items/invoice/default.phtml
+++ b/app/code/Magento/Bundle/view/frontend/templates/email/order/items/invoice/default.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\Bundle\Block\Sales\Order\Items\Renderer */ ?>
 
diff --git a/app/code/Magento/Bundle/view/frontend/templates/email/order/items/order/default.phtml b/app/code/Magento/Bundle/view/frontend/templates/email/order/items/order/default.phtml
index 8e33b500f35de2333b319e8456f2b24a1e2265e5..d61a831e34f8bbdf7e6871cdf9aef54d2604bcf6 100644
--- a/app/code/Magento/Bundle/view/frontend/templates/email/order/items/order/default.phtml
+++ b/app/code/Magento/Bundle/view/frontend/templates/email/order/items/order/default.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\Bundle\Block\Sales\Order\Items\Renderer */ ?>
 <?php $_item = $this->getItem() ?>
diff --git a/app/code/Magento/Bundle/view/frontend/templates/email/order/items/shipment/default.phtml b/app/code/Magento/Bundle/view/frontend/templates/email/order/items/shipment/default.phtml
index ce49dcdcd7f01bb54e587306548580dc5bc0ff63..4bbfff568370460063db461a9ec1ade486a5cb7c 100644
--- a/app/code/Magento/Bundle/view/frontend/templates/email/order/items/shipment/default.phtml
+++ b/app/code/Magento/Bundle/view/frontend/templates/email/order/items/shipment/default.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php $parentItem = $this->getItem() ?>
 
diff --git a/app/code/Magento/Bundle/view/frontend/templates/js/components.phtml b/app/code/Magento/Bundle/view/frontend/templates/js/components.phtml
index 99be8e37348cec69521e018a61f416324e582a94..43f7e9c30c0126f46204910ee749ef83ad81e815 100644
--- a/app/code/Magento/Bundle/view/frontend/templates/js/components.phtml
+++ b/app/code/Magento/Bundle/view/frontend/templates/js/components.phtml
@@ -3,5 +3,8 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php echo $this->getChildHtml() ?>
diff --git a/app/code/Magento/Bundle/view/frontend/templates/sales/order/creditmemo/items/renderer.phtml b/app/code/Magento/Bundle/view/frontend/templates/sales/order/creditmemo/items/renderer.phtml
index b81f491429f3b2e4c49cb2b870d4eee9feae4a60..f2a1a774128b5273dca1d34decf92c69840ae509 100644
--- a/app/code/Magento/Bundle/view/frontend/templates/sales/order/creditmemo/items/renderer.phtml
+++ b/app/code/Magento/Bundle/view/frontend/templates/sales/order/creditmemo/items/renderer.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\Bundle\Block\Sales\Order\Items\Renderer */ ?>
 <?php $parentItem = $this->getItem() ?>
diff --git a/app/code/Magento/Bundle/view/frontend/templates/sales/order/invoice/items/renderer.phtml b/app/code/Magento/Bundle/view/frontend/templates/sales/order/invoice/items/renderer.phtml
index 4eb202e6c2f412673d28e6aefbff30ee8cf91877..56ad8b54ee07c6261bc185f878451af50e4839ff 100644
--- a/app/code/Magento/Bundle/view/frontend/templates/sales/order/invoice/items/renderer.phtml
+++ b/app/code/Magento/Bundle/view/frontend/templates/sales/order/invoice/items/renderer.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\Bundle\Block\Sales\Order\Items\Renderer */ ?>
 <?php $parentItem = $this->getItem() ?>
diff --git a/app/code/Magento/Bundle/view/frontend/templates/sales/order/items/renderer.phtml b/app/code/Magento/Bundle/view/frontend/templates/sales/order/items/renderer.phtml
index 4b6a05eb442e11811e7ab0f83b1661072e4ac321..0471828ba77213c619e7097316b1765e9325bcc7 100644
--- a/app/code/Magento/Bundle/view/frontend/templates/sales/order/items/renderer.phtml
+++ b/app/code/Magento/Bundle/view/frontend/templates/sales/order/items/renderer.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Bundle\Block\Sales\Order\Items\Renderer */
 ?>
 <?php $parentItem = $this->getItem() ?>
diff --git a/app/code/Magento/Bundle/view/frontend/templates/sales/order/shipment/items/renderer.phtml b/app/code/Magento/Bundle/view/frontend/templates/sales/order/shipment/items/renderer.phtml
index 0d29f6412b52848c1491bc960f01f43873d70851..5ca9f9dc07ea0b69a89a1e902de5d2e355f0e8a1 100644
--- a/app/code/Magento/Bundle/view/frontend/templates/sales/order/shipment/items/renderer.phtml
+++ b/app/code/Magento/Bundle/view/frontend/templates/sales/order/shipment/items/renderer.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php $parentItem = $this->getItem() ?>
 <?php $items = array_merge([$parentItem->getOrderItem()], $parentItem->getOrderItem()->getChildrenItems()) ?>
diff --git a/app/code/Magento/Captcha/Model/Config/Form/AbstractForm.php b/app/code/Magento/Captcha/Model/Config/Form/AbstractForm.php
index a006766e8c90e6bd5f50becccb791c4eeb70cffe..dfd0456226d5c4ba4aef401d5db41c99e768fbd9 100644
--- a/app/code/Magento/Captcha/Model/Config/Form/AbstractForm.php
+++ b/app/code/Magento/Captcha/Model/Config/Form/AbstractForm.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Data source to fill "Forms" field
  *
diff --git a/app/code/Magento/Captcha/Model/Observer.php b/app/code/Magento/Captcha/Model/Observer.php
index 340822047bbdfab6445d6faa503ebc21437de4a6..14ffd09fa49412ac7473669a879a734a0d27d9c7 100644
--- a/app/code/Magento/Captcha/Model/Observer.php
+++ b/app/code/Magento/Captcha/Model/Observer.php
@@ -9,6 +9,7 @@ namespace Magento\Captcha\Model;
  * Captcha Observer
  *
  * @author      Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Observer
 {
diff --git a/app/code/Magento/Captcha/composer.json b/app/code/Magento/Captcha/composer.json
index 5cd84ce402336b6d585bd51778ec80aefd2f9ac6..bf03a08ae1f64a880e0a75fce1a0b19bb9c82d90 100644
--- a/app/code/Magento/Captcha/composer.json
+++ b/app/code/Magento/Captcha/composer.json
@@ -3,16 +3,16 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-customer": "0.42.0-beta3",
-        "magento/module-checkout": "0.42.0-beta3",
-        "magento/module-core": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-customer": "0.42.0-beta4",
+        "magento/module-checkout": "0.42.0-beta4",
+        "magento/module-core": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/Captcha/view/adminhtml/templates/default.phtml b/app/code/Magento/Captcha/view/adminhtml/templates/default.phtml
index d32a2cb48a971714a4a3b37087cd1ab3eb778d33..cbff9a3d01a1277e3f694efb8dd830ae33c2a67c 100644
--- a/app/code/Magento/Captcha/view/adminhtml/templates/default.phtml
+++ b/app/code/Magento/Captcha/view/adminhtml/templates/default.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /* @var $captcha \Magento\Captcha\Model\DefaultModel */ ?>
 <?php /* @var $this \Magento\Captcha\Block\Captcha\DefaultCaptcha */ ?>
@@ -23,7 +26,7 @@
     <p><?php echo __('<strong>Attention</strong>: Captcha is case sensitive.') ?></p>
 </div>
 <?php endif; ?>
-<script type="text/javascript">
+<script>
 require(["prototype", "mage/captcha"], function(){
 
 //<![CDATA[
diff --git a/app/code/Magento/Captcha/view/frontend/templates/default.phtml b/app/code/Magento/Captcha/view/frontend/templates/default.phtml
index 31d59245224562db8e7b7f48fd6c354a8d4a3daa..90ded45d0d918c616c9b3dd4c53fb157fba3de55 100644
--- a/app/code/Magento/Captcha/view/frontend/templates/default.phtml
+++ b/app/code/Magento/Captcha/view/frontend/templates/default.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /* @var $captcha \Magento\Captcha\Model\DefaultModel */ ?>
 <?php /* @var $this \Magento\Captcha\Block\Captcha\DefaultCaptcha */ ?>
diff --git a/app/code/Magento/Captcha/view/frontend/templates/js/components.phtml b/app/code/Magento/Captcha/view/frontend/templates/js/components.phtml
index 99be8e37348cec69521e018a61f416324e582a94..43f7e9c30c0126f46204910ee749ef83ad81e815 100644
--- a/app/code/Magento/Captcha/view/frontend/templates/js/components.phtml
+++ b/app/code/Magento/Captcha/view/frontend/templates/js/components.phtml
@@ -3,5 +3,8 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php echo $this->getChildHtml() ?>
diff --git a/app/code/Magento/Catalog/Api/Data/CategoryTreeInterface.php b/app/code/Magento/Catalog/Api/Data/CategoryTreeInterface.php
index cd7bb21dd3cea692325fa59a8fe1df854a9020a2..ede64fcf762a488377d94efad9d86fae289d5080 100644
--- a/app/code/Magento/Catalog/Api/Data/CategoryTreeInterface.php
+++ b/app/code/Magento/Catalog/Api/Data/CategoryTreeInterface.php
@@ -32,6 +32,7 @@ interface CategoryTreeInterface extends \Magento\Framework\Api\ExtensibleDataInt
      * Check whether category is active
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsActive();
 
diff --git a/app/code/Magento/Catalog/Api/Data/ProductAttributeMediaGalleryEntryInterface.php b/app/code/Magento/Catalog/Api/Data/ProductAttributeMediaGalleryEntryInterface.php
index 2443f11f966dc595b6ce7e09d538d81ac9c37a93..108979ba5d09eea35d3bf7ce21abb6d53cd929f1 100644
--- a/app/code/Magento/Catalog/Api/Data/ProductAttributeMediaGalleryEntryInterface.php
+++ b/app/code/Magento/Catalog/Api/Data/ProductAttributeMediaGalleryEntryInterface.php
@@ -41,6 +41,7 @@ interface ProductAttributeMediaGalleryEntryInterface
      * Check if gallery entry is hidden from product page
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsDisabled();
 
diff --git a/app/code/Magento/Catalog/Api/Data/ProductCustomOptionInterface.php b/app/code/Magento/Catalog/Api/Data/ProductCustomOptionInterface.php
index 50641489f89992c4853f20729faef9894c897494..8d2c1af2dabb77b13c608a4ce425692f4c22cd3b 100644
--- a/app/code/Magento/Catalog/Api/Data/ProductCustomOptionInterface.php
+++ b/app/code/Magento/Catalog/Api/Data/ProductCustomOptionInterface.php
@@ -47,6 +47,7 @@ interface ProductCustomOptionInterface
      * Get is require
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsRequire();
 
diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Category/AbstractCategory.php b/app/code/Magento/Catalog/Block/Adminhtml/Category/AbstractCategory.php
index 00ec33315e9d8490a5a0458786e327e08250a1d5..03b52c6ac341ce065bf2c1920e859c2e4da29a2f 100644
--- a/app/code/Magento/Catalog/Block/Adminhtml/Category/AbstractCategory.php
+++ b/app/code/Magento/Catalog/Block/Adminhtml/Category/AbstractCategory.php
@@ -121,6 +121,7 @@ class AbstractCategory extends \Magento\Backend\Block\Template
      * @param mixed|null $parentNodeCategory
      * @param int $recursionLevel
      * @return Node|array|null
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function getRoot($parentNodeCategory = null, $recursionLevel = 3)
     {
diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Category/Checkboxes/Tree.php b/app/code/Magento/Catalog/Block/Adminhtml/Category/Checkboxes/Tree.php
index 9a18675340c5dfa58776f9627122b7531a34ca64..25cd867302dfd63ae6898b1f7d4e4de0d19f87ef 100644
--- a/app/code/Magento/Catalog/Block/Adminhtml/Category/Checkboxes/Tree.php
+++ b/app/code/Magento/Catalog/Block/Adminhtml/Category/Checkboxes/Tree.php
@@ -78,6 +78,7 @@ class Tree extends \Magento\Catalog\Block\Adminhtml\Category\Tree
      * @param array|Node $node
      * @param int $level
      * @return array
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _getNodeJson($node, $level = 1)
     {
diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Category/Helper/Pricestep.php b/app/code/Magento/Catalog/Block/Adminhtml/Category/Helper/Pricestep.php
index b3bd12578eebdf698c08c32493439171d5692c74..bc32a8f84cc6b6e8c50cb2f05f624f7fe380345b 100644
--- a/app/code/Magento/Catalog/Block/Adminhtml/Category/Helper/Pricestep.php
+++ b/app/code/Magento/Catalog/Block/Adminhtml/Category/Helper/Pricestep.php
@@ -53,7 +53,7 @@ class Pricestep extends \Magento\Framework\Data\Form\Element\Text
         $html .= ' onclick="toggleValueElements(this, this.parentNode);" class="checkbox" type="checkbox" />';
 
         $html .= ' <label for="' . $htmlId . '" class="normal">' . __('Use Config Settings') . '</label>';
-        $html .= '<script type="text/javascript">' .
+        $html .= '<script>' .
             'toggleValueElements($(\'' .
             $htmlId .
             '\'), $(\'' .
diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Category/Helper/Sortby/Available.php b/app/code/Magento/Catalog/Block/Adminhtml/Category/Helper/Sortby/Available.php
index bb2b97850ad20c1e93173041111e749ea41047a3..11332326eff55d44dc634b5bd89a39aaca39077a 100644
--- a/app/code/Magento/Catalog/Block/Adminhtml/Category/Helper/Sortby/Available.php
+++ b/app/code/Magento/Catalog/Block/Adminhtml/Category/Helper/Sortby/Available.php
@@ -51,7 +51,7 @@ class Available extends \Magento\Framework\Data\Form\Element\Multiselect
 
         $html .= ' onclick="toggleValueElements(this, this.parentNode);" class="checkbox" type="checkbox" />';
         $html .= ' <label for="' . $htmlId . '" class="normal">' . __('Use All Available Attributes') . '</label>';
-        $html .= '<script type="text/javascript">toggleValueElements($(\'' .
+        $html .= '<script>toggleValueElements($(\'' .
             $htmlId .
             '\'), $(\'' .
             $htmlId .
diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Category/Helper/Sortby/DefaultSortby.php b/app/code/Magento/Catalog/Block/Adminhtml/Category/Helper/Sortby/DefaultSortby.php
index 9650cda809af880e2fbccda9edd0ed9a0ec2ca12..dd1e70a384d8081cb1d05446abd132df35ff05c6 100644
--- a/app/code/Magento/Catalog/Block/Adminhtml/Category/Helper/Sortby/DefaultSortby.php
+++ b/app/code/Magento/Catalog/Block/Adminhtml/Category/Helper/Sortby/DefaultSortby.php
@@ -51,7 +51,7 @@ class DefaultSortby extends \Magento\Framework\Data\Form\Element\Select
 
         $html .= ' onclick="toggleValueElements(this, this.parentNode);" class="checkbox" type="checkbox" />';
         $html .= ' <label for="' . $htmlId . '" class="normal">' . __('Use Config Settings') . '</label>';
-        $html .= '<script type="text/javascript">toggleValueElements($(\'' .
+        $html .= '<script>toggleValueElements($(\'' .
             $htmlId .
             '\'), $(\'' .
             $htmlId .
diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Category/Tab/Attributes.php b/app/code/Magento/Catalog/Block/Adminhtml/Category/Tab/Attributes.php
index 96dd3e5a5da39b7bb790e9a5791e981ea7ed8074..06a77c8af6023a4add0a375633ec0009e97ab7c0 100644
--- a/app/code/Magento/Catalog/Block/Adminhtml/Category/Tab/Attributes.php
+++ b/app/code/Magento/Catalog/Block/Adminhtml/Category/Tab/Attributes.php
@@ -38,6 +38,8 @@ class Attributes extends \Magento\Backend\Block\Widget\Form\Generic
      * Prepare form before rendering HTML
      *
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _prepareForm()
     {
diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Category/Tab/Design.php b/app/code/Magento/Catalog/Block/Adminhtml/Category/Tab/Design.php
index 60052fc8bb2c18a839176468b2b2f204480ff9fc..2bdf2ebf95be469c96277382b1bc6c00adab9a36 100644
--- a/app/code/Magento/Catalog/Block/Adminhtml/Category/Tab/Design.php
+++ b/app/code/Magento/Catalog/Block/Adminhtml/Category/Tab/Design.php
@@ -5,6 +5,9 @@
  */
 namespace Magento\Catalog\Block\Adminhtml\Category\Tab;
 
+/**
+ * @SuppressWarnings(PHPMD.DepthOfInheritance)
+ */
 class Design extends \Magento\Catalog\Block\Adminhtml\Form
 {
     /**
diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Category/Tabs.php b/app/code/Magento/Catalog/Block/Adminhtml/Category/Tabs.php
index 19322d4b7d801494b65527fa706363f8313c1eec..0f7bfb9042f735acff82ce5ecb91a7f37e5cc644 100644
--- a/app/code/Magento/Catalog/Block/Adminhtml/Category/Tabs.php
+++ b/app/code/Magento/Catalog/Block/Adminhtml/Category/Tabs.php
@@ -106,6 +106,7 @@ class Tabs extends \Magento\Backend\Block\Widget\Tabs
      * Prepare Layout Content
      *
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _prepareLayout()
     {
diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Category/Tree.php b/app/code/Magento/Catalog/Block/Adminhtml/Category/Tree.php
index a49955f9403951680d5b48ceaf1a6c2dd4819f36..6db0db075824da391371c6ac752d79b5fa6cda58 100644
--- a/app/code/Magento/Catalog/Block/Adminhtml/Category/Tree.php
+++ b/app/code/Magento/Catalog/Block/Adminhtml/Category/Tree.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Categories tree block
  */
@@ -244,6 +246,7 @@ class Tree extends \Magento\Catalog\Block\Adminhtml\Category\AbstractCategory
 
     /**
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsWasExpanded()
     {
@@ -300,7 +303,7 @@ class Tree extends \Magento\Catalog\Block\Adminhtml\Category\AbstractCategory
         foreach ($categories as $key => $category) {
             $categories[$key] = $this->_getNodeJson($category);
         }
-        return '<script type="text/javascript">' . $javascriptVarName . ' = ' . $this->_jsonEncoder->encode(
+        return '<script>' . $javascriptVarName . ' = ' . $this->_jsonEncoder->encode(
             $categories
         ) .
             ';' .
@@ -314,6 +317,8 @@ class Tree extends \Magento\Catalog\Block\Adminhtml\Category\AbstractCategory
      * @param Node|array $node
      * @param int $level
      * @return string
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _getNodeJson($node, $level = 0)
     {
diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Form/Renderer/Config/DateFieldsOrder.php b/app/code/Magento/Catalog/Block/Adminhtml/Form/Renderer/Config/DateFieldsOrder.php
index b841cf0ede6a1dfb16ed6a46f6720bb32b8462a4..e9a129df7c06191ff95981ddcde098eb040db4b3 100644
--- a/app/code/Magento/Catalog/Block/Adminhtml/Form/Renderer/Config/DateFieldsOrder.php
+++ b/app/code/Magento/Catalog/Block/Adminhtml/Form/Renderer/Config/DateFieldsOrder.php
@@ -19,6 +19,7 @@ class DateFieldsOrder extends Field
     /**
      * @param AbstractElement $element
      * @return string
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _getElementHtml(AbstractElement $element)
     {
diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Helper/Form/Wysiwyg.php b/app/code/Magento/Catalog/Block/Adminhtml/Helper/Form/Wysiwyg.php
index cba4bc2b14ba58d5900546d58e7eeaa39cb6f4f4..4e8693474e09bd0bc8c751ec0789a7ffe904ac2e 100644
--- a/app/code/Magento/Catalog/Block/Adminhtml/Helper/Form/Wysiwyg.php
+++ b/app/code/Magento/Catalog/Block/Adminhtml/Helper/Form/Wysiwyg.php
@@ -93,7 +93,7 @@ class Wysiwyg extends \Magento\Framework\Data\Form\Element\Textarea
                 ]
             )->toHtml();
             $html .= <<<HTML
-<script type="text/javascript">
+<script>
 require([
     'jquery',
     'mage/adminhtml/wysiwyg/tiny_mce/setup'
@@ -138,6 +138,7 @@ HTML;
      * Check whether wysiwyg enabled or not
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsWysiwygEnabled()
     {
diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/Edit/Tab/Advanced.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/Edit/Tab/Advanced.php
index b2c928f6bcbbccb623caeadd9380c8d525734262..a3e16b89f1dbce7e825ff862087cff7bc379c62d 100644
--- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/Edit/Tab/Advanced.php
+++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/Edit/Tab/Advanced.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Product attribute add/edit form main tab
  *
@@ -54,6 +56,7 @@ class Advanced extends Generic
      * Adding product form elements for editing attribute
      *
      * @return $this
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _prepareForm()
     {
diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/Edit/Tab/Front.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/Edit/Tab/Front.php
index 14c2b030991467593a6f7cd35e849da202cf72ec..6a4b55e2194c876502a46341471b2676812e152f 100644
--- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/Edit/Tab/Front.php
+++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/Edit/Tab/Front.php
@@ -44,6 +44,7 @@ class Front extends Generic
     /**
      * {@inheritdoc}
      * @return $this
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _prepareForm()
     {
diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/Edit/Tab/Main.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/Edit/Tab/Main.php
index 05c49c39a9fd629cbdc228622db6c0ae0e01f2ed..35155d15e785a1a2be59598673020c419f7ed60d 100644
--- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/Edit/Tab/Main.php
+++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/Edit/Tab/Main.php
@@ -13,12 +13,16 @@ namespace Magento\Catalog\Block\Adminhtml\Product\Attribute\Edit\Tab;
 
 use Magento\Eav\Block\Adminhtml\Attribute\Edit\Main\AbstractMain;
 
+/**
+ * @SuppressWarnings(PHPMD.DepthOfInheritance)
+ */
 class Main extends AbstractMain
 {
     /**
      * Adding product form elements for editing attribute
      *
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     protected function _prepareForm()
     {
diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/Grid.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/Grid.php
index 59433983c4b11d3c92942d9f549489d72cb0da49..8ca6195788ac8fa4cb4b9c8e090fac7d6d505012 100644
--- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/Grid.php
+++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/Grid.php
@@ -13,6 +13,9 @@ namespace Magento\Catalog\Block\Adminhtml\Product\Attribute;
 
 use Magento\Eav\Block\Adminhtml\Attribute\Grid\AbstractGrid;
 
+/**
+ * @SuppressWarnings(PHPMD.DepthOfInheritance)
+ */
 class Grid extends AbstractGrid
 {
     /**
diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/NewAttribute/Product/Attributes.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/NewAttribute/Product/Attributes.php
index c365667768150d845c4d3c9f92b6edfcc1878cf0..a5d7eba7fc4ff9e42e7b3cf0a086226e117e8dc0 100644
--- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/NewAttribute/Product/Attributes.php
+++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/NewAttribute/Product/Attributes.php
@@ -13,6 +13,9 @@ namespace Magento\Catalog\Block\Adminhtml\Product\Attribute\NewAttribute\Product
 
 use Magento\Backend\Block\Widget\Form;
 
+/**
+ * @SuppressWarnings(PHPMD.DepthOfInheritance)
+ */
 class Attributes extends \Magento\Catalog\Block\Adminhtml\Form
 {
     /**
diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/Set/Main.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/Set/Main.php
index 60b7325fe8acee9b01cce0fcf7bca96b72a20681..2f184f4bc916a124c2959e03a9931a25aab6792a 100644
--- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/Set/Main.php
+++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Attribute/Set/Main.php
@@ -345,6 +345,7 @@ class Main extends \Magento\Backend\Block\Template
      * Check Current Attribute Set is a default
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsCurrentSetDefault()
     {
diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Action/Attribute/Tab/Attributes.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Action/Attribute/Tab/Attributes.php
index 70c45ec9dfb0e5df4da55d1af0ee1c500fd6ed4f..00fa7838673786656affb1c69206a4ca81de9e18 100644
--- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Action/Attribute/Tab/Attributes.php
+++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Action/Attribute/Tab/Attributes.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Adminhtml catalog product edit action attributes update tab block
  *
@@ -13,6 +15,9 @@ namespace Magento\Catalog\Block\Adminhtml\Product\Edit\Action\Attribute\Tab;
 
 use Magento\Framework\Data\Form\Element\AbstractElement;
 
+/**
+ * @SuppressWarnings(PHPMD.DepthOfInheritance)
+ */
 class Attributes extends \Magento\Catalog\Block\Adminhtml\Form implements
     \Magento\Backend\Block\Widget\Tab\TabInterface
 {
@@ -140,7 +145,7 @@ class Attributes extends \Magento\Catalog\Block\Adminhtml\Form implements
 HTML;
         if ($elementId === 'weight') {
             $html .= <<<HTML
-<script type="text/javascript">require(["jquery"],function($) {
+<script>require(["jquery"],function($) {
     $('#weight_and_type_switcher, label[for=weight_and_type_switcher]').hide();
 });</script>
 HTML;
diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/NewCategory.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/NewCategory.php
index 9713f6153693cbbebb005aa060e0299adffec4ab..5c859b2f70ad6d749fe7fa3c21ae4f79e10684ca 100644
--- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/NewCategory.php
+++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/NewCategory.php
@@ -154,7 +154,7 @@ class NewCategory extends \Magento\Backend\Block\Widget\Form\Generic
         );
         //TODO: JavaScript logic should be moved to separate file or reviewed
         return <<<HTML
-<script type="text/javascript">
+<script>
 require(["jquery","mage/mage"],function($) {  // waiting for dependencies at first
     $(function(){ // waiting for page to load to have '#category_ids-template' available
         $('#new-category').mage('newCategoryDialog', $widgetOptions);
diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Alerts.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Alerts.php
index 399de16c7df3517352dca38d5e4b38a37a597f4b..f757d4f3e99c133f275f93fb453ab80c633e120a 100644
--- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Alerts.php
+++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Alerts.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Product alerts tab
  *
diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Attributes.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Attributes.php
index cf6d2a6e6bb6e53c7318796a4cdbcd6d46f1a45e..d72539539a1b9e1126f9cd1d752db2b3fec3f55e 100644
--- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Attributes.php
+++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Attributes.php
@@ -11,12 +11,18 @@
  */
 namespace Magento\Catalog\Block\Adminhtml\Product\Edit\Tab;
 
+/**
+ * @SuppressWarnings(PHPMD.DepthOfInheritance)
+ */
 class Attributes extends \Magento\Catalog\Block\Adminhtml\Form
 {
     /**
      * Prepare attributes form
      *
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _prepareForm()
     {
diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Crosssell.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Crosssell.php
index cf8c975d516cfdc6aab6e1feb383576247ac2555..9f6229afbb32bee847f6fdcc591e92ee16174375 100644
--- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Crosssell.php
+++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Crosssell.php
@@ -15,6 +15,9 @@ use Magento\Backend\Block\Widget\Grid\Column;
 use Magento\Backend\Block\Widget\Grid\Extended;
 use Magento\Catalog\Model\Product;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class Crosssell extends Extended
 {
     /**
@@ -187,6 +190,7 @@ class Crosssell extends Extended
      * Add columns to grid
      *
      * @return $this
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _prepareColumns()
     {
diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Options/Option.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Options/Option.php
index 9e5cbf16174610935e07e471dacf950676e32ecc..3a86850d5f87c6a8abdcc4c68480d6b7e4eac86a 100644
--- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Options/Option.php
+++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Options/Option.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Customers defined options
  */
@@ -269,6 +271,9 @@ class Option extends Widget
 
     /**
      * @return \Magento\Framework\Object[]
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public function getOptionValues()
     {
diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Options/Popup/Grid.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Options/Popup/Grid.php
index cc93e83fae357fb2bc5d82ef915ee7267f1ee1f5..ab0acdbf63b4f8d379fc5d84a79165f0f4067a25 100644
--- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Options/Popup/Grid.php
+++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Options/Popup/Grid.php
@@ -13,6 +13,9 @@ namespace Magento\Catalog\Block\Adminhtml\Product\Edit\Tab\Options\Popup;
 
 use Magento\Catalog\Model\Product;
 
+/**
+ * @SuppressWarnings(PHPMD.DepthOfInheritance)
+ */
 class Grid extends \Magento\Catalog\Block\Adminhtml\Product\Grid
 {
     /**
diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Price/Tier.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Price/Tier.php
index efd4344b6e231415646372ec52726d8b40d00c9e..d2c9e742545cd88859eb5e04d81ed80c5e1d1804 100644
--- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Price/Tier.php
+++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Price/Tier.php
@@ -43,6 +43,7 @@ class Tier extends Group\AbstractGroup
      * @param array $a
      * @param array $b
      * @return int
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _sortTierPrices($a, $b)
     {
diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Related.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Related.php
index 930ab7102fd56facc07a8748f3d5b3aa5b53c735..685aa481fe9fa9c335987aae68ce1f7f0bb3056f 100644
--- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Related.php
+++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Related.php
@@ -184,6 +184,7 @@ class Related extends Extended
      * Add columns to grid
      *
      * @return $this
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _prepareColumns()
     {
diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Upsell.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Upsell.php
index 4e2fd72745b34d99cc4542080811a4c5df64863f..ca442c0b98b3e9fe3f9dbaf56a3e0bd2c76e2471 100644
--- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Upsell.php
+++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Upsell.php
@@ -181,6 +181,7 @@ class Upsell extends \Magento\Backend\Block\Widget\Grid\Extended
      * Add columns to grid
      *
      * @return $this
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _prepareColumns()
     {
diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tabs.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tabs.php
index 78aec16eee179ecc71a3ff3ca11cc584753e876b..c059866c2ae8f4c6bcaf7876783003f7c52cf351 100644
--- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tabs.php
+++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tabs.php
@@ -72,6 +72,7 @@ class Tabs extends \Magento\Backend\Block\Widget\Tabs
      * @param \Magento\Framework\Registry $registry
      * @param \Magento\Framework\Translate\InlineInterface $translateInline
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Backend\Block\Template\Context $context,
@@ -118,6 +119,9 @@ class Tabs extends \Magento\Backend\Block\Widget\Tabs
 
     /**
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _prepareLayout()
     {
diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Frontend/Product/Watermark.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Frontend/Product/Watermark.php
index f82a78689e81f78e9abb70a1b7da3ced7822919c..51e82133640303da9a9a719bc25ec96fb3f2f03d 100644
--- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Frontend/Product/Watermark.php
+++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Frontend/Product/Watermark.php
@@ -126,6 +126,7 @@ class Watermark extends \Magento\Backend\Block\AbstractBlock implements
     /**
      * @param AbstractElement $element
      * @return string
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     protected function _getHeaderHtml($element)
     {
@@ -149,6 +150,7 @@ class Watermark extends \Magento\Backend\Block\AbstractBlock implements
     /**
      * @param AbstractElement $element
      * @return string
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     protected function _getFooterHtml($element)
     {
diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Grid.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Grid.php
index fe290eacf76e04e563dcd7caef391f70deae9e9f..f053cfff68c30a45b9b39f8b3da88d0c29e4159c 100644
--- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Grid.php
+++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Grid.php
@@ -209,6 +209,7 @@ class Grid extends \Magento\Backend\Block\Widget\Grid\Extended
 
     /**
      * @return $this
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _prepareColumns()
     {
diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Helper/Form/Category.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Helper/Form/Category.php
index e21323e6136bedba921db6621d00bc702028d1da..5dc08c3d96431071f24985754594fd26dac30ede 100644
--- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Helper/Form/Category.php
+++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Helper/Form/Category.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Block\Adminhtml\Product\Helper\Form;
 
 use Magento\Catalog\Model\Resource\Category\Collection;
@@ -135,7 +138,7 @@ class Category extends \Magento\Framework\Data\Form\Element\Multiselect
             );
         $return = <<<HTML
     <input id="{$htmlId}-suggest" placeholder="$suggestPlaceholder" />
-    <script type="text/javascript">
+    <script>
         require(["jquery", "mage/mage", "mage/backend/tree-suggest"], function($){
             $('#{$htmlId}-suggest').mage('treeSuggest', {$selectorOptions});
         });
diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Helper/Form/Config.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Helper/Form/Config.php
index 409f690cb445d2f44f378cf656f5179cfb22f089..32b085dfe69a081e4fd7eb8eebf2c8c0ab7f397b 100644
--- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Helper/Form/Config.php
+++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Helper/Form/Config.php
@@ -33,7 +33,7 @@ class Config extends \Magento\Framework\Data\Form\Element\Select
         $html .= '<input id="' . $htmlId . '" name="product[' . $htmlId . ']" ' . $disabled . ' value="1" ' . $checked;
         $html .= ' onclick="toggleValueElements(this, this.parentNode);" class="checkbox" type="checkbox" />';
         $html .= ' <label for="' . $htmlId . '">' . __('Use Config Settings') . '</label>';
-        $html .= '<script type="text/javascript">toggleValueElements($(\'' .
+        $html .= '<script>toggleValueElements($(\'' .
             $htmlId .
             '\'), $(\'' .
             $htmlId .
diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Helper/Form/Gallery.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Helper/Form/Gallery.php
index 33c4824d8f93d85275fc421e12bc9d804d55561e..d8ad9281699487ced8601782e1131745e6f1e6c3 100644
--- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Helper/Form/Gallery.php
+++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Helper/Form/Gallery.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 
 /**
  * Catalog product gallery attribute
@@ -176,6 +178,7 @@ class Gallery extends AbstractElement
      *
      * @param Attribute|string $attribute
      * @return boolean
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getAttributeReadonly($attribute)
     {
diff --git a/app/code/Magento/Catalog/Block/Adminhtml/Product/Helper/Form/Image.php b/app/code/Magento/Catalog/Block/Adminhtml/Product/Helper/Form/Image.php
index 4c51809ac2446bdf8da05241229152dffceb2b76..79f40ecf750816da8d2c6f0520ed4c83a8caa2ad 100644
--- a/app/code/Magento/Catalog/Block/Adminhtml/Product/Helper/Form/Image.php
+++ b/app/code/Magento/Catalog/Block/Adminhtml/Product/Helper/Form/Image.php
@@ -39,7 +39,7 @@ class Image extends \Magento\Framework\Data\Form\Element\Image
             } else {
                 $inputField = '<input value="%s" id="%s_hidden" type="hidden" class="required-entry" />';
                 $html .= sprintf($inputField, $this->getValue(), $this->getHtmlId());
-                $html .= '<script type="text/javascript">
+                $html .= '<script>
                     syncOnchangeValue(\'' .
                     $this->getHtmlId() .
                     '\', \'' .
diff --git a/app/code/Magento/Catalog/Block/Breadcrumbs.php b/app/code/Magento/Catalog/Block/Breadcrumbs.php
index e8f4a3f3bac100b430f871ae6fdf550eb2c7ef0b..5b6769b296d1ac7d233c104fd770085b159ed91e 100644
--- a/app/code/Magento/Catalog/Block/Breadcrumbs.php
+++ b/app/code/Magento/Catalog/Block/Breadcrumbs.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Catalog breadcrumbs
  */
diff --git a/app/code/Magento/Catalog/Block/Navigation.php b/app/code/Magento/Catalog/Block/Navigation.php
index 8f62231591389defe0b362ed03bffb281ea080ca..3dc3f7a4d7bb8bfda94490b751e85637d100285c 100644
--- a/app/code/Magento/Catalog/Block/Navigation.php
+++ b/app/code/Magento/Catalog/Block/Navigation.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Block;
 
 use Magento\Catalog\Model\Category;
@@ -12,6 +15,7 @@ use Magento\Customer\Model\Context;
  * Catalog navigation
  *
  * @SuppressWarnings(PHPMD.LongVariable)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Navigation extends \Magento\Framework\View\Element\Template implements \Magento\Framework\View\Block\IdentityInterface
 {
diff --git a/app/code/Magento/Catalog/Block/Product/AbstractProduct.php b/app/code/Magento/Catalog/Block/Product/AbstractProduct.php
index 2199e3057104ef7189547d915266ea88505a012e..ea891535c263d82cfdab6d3d5025bddbdc1d4b79 100644
--- a/app/code/Magento/Catalog/Block/Product/AbstractProduct.php
+++ b/app/code/Magento/Catalog/Block/Product/AbstractProduct.php
@@ -7,6 +7,8 @@ namespace Magento\Catalog\Block\Product;
 
 /**
  * Class AbstractProduct
+ * @SuppressWarnings(PHPMD.NumberOfChildren)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class AbstractProduct extends \Magento\Framework\View\Element\Template
 {
@@ -377,6 +379,7 @@ class AbstractProduct extends \Magento\Framework\View\Element\Template
      *
      * @param \Magento\Catalog\Model\Product $product
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getCanShowProductPrice($product)
     {
diff --git a/app/code/Magento/Catalog/Block/Product/Compare/ListCompare.php b/app/code/Magento/Catalog/Block/Product/Compare/ListCompare.php
index 80e59304f4460def155d7ba0a52f5a36df7938df..861a0cbfffa6bbb2231b4be702e32f3bd4af9754 100644
--- a/app/code/Magento/Catalog/Block/Product/Compare/ListCompare.php
+++ b/app/code/Magento/Catalog/Block/Product/Compare/ListCompare.php
@@ -12,6 +12,7 @@ use Magento\Framework\App\Action\Action;
 
 /**
  * Catalog products compare block
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class ListCompare extends \Magento\Catalog\Block\Product\Compare\AbstractCompare
 {
diff --git a/app/code/Magento/Catalog/Block/Product/Context.php b/app/code/Magento/Catalog/Block/Product/Context.php
index 9402df7bcb22768b45804922711310b227de7063..7244352e262863747eebdc0e4ba1c53bab71378d 100644
--- a/app/code/Magento/Catalog/Block/Product/Context.php
+++ b/app/code/Magento/Catalog/Block/Product/Context.php
@@ -7,6 +7,7 @@ namespace Magento\Catalog\Block\Product;
 
 /**
  * Abstract product block context
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Context extends \Magento\Framework\View\Element\Template\Context
 {
diff --git a/app/code/Magento/Catalog/Block/Product/ListProduct.php b/app/code/Magento/Catalog/Block/Product/ListProduct.php
index 17bdf803742ebb4b504c74705feaa9b32e5153b4..bc007d7e3f47995774c44ea93b9a7e94fac3edbd 100644
--- a/app/code/Magento/Catalog/Block/Product/ListProduct.php
+++ b/app/code/Magento/Catalog/Block/Product/ListProduct.php
@@ -15,6 +15,7 @@ use Magento\Framework\View\Block\IdentityInterface;
 
 /**
  * Product list
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class ListProduct extends AbstractProduct implements IdentityInterface
 {
diff --git a/app/code/Magento/Catalog/Block/Product/ProductList/Related.php b/app/code/Magento/Catalog/Block/Product/ProductList/Related.php
index 05b10f8fe49dbff11ccc587a3078f03d3df716c9..f92b7b91b6911fca9621de872f1dd24fea1b6fcf 100644
--- a/app/code/Magento/Catalog/Block/Product/ProductList/Related.php
+++ b/app/code/Magento/Catalog/Block/Product/ProductList/Related.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Block\Product\ProductList;
 
 use Magento\Catalog\Model\Resource\Product\Collection;
diff --git a/app/code/Magento/Catalog/Block/Product/ProductList/Toolbar.php b/app/code/Magento/Catalog/Block/Product/ProductList/Toolbar.php
index 1526ed7afc49a5b86e6984f759854b570593a818..b2f02218b1d7ed604c72e6961e9bbef826e6ee9c 100644
--- a/app/code/Magento/Catalog/Block/Product/ProductList/Toolbar.php
+++ b/app/code/Magento/Catalog/Block/Product/ProductList/Toolbar.php
@@ -12,6 +12,8 @@ use Magento\Catalog\Model\Product\ProductList\Toolbar as ToolbarModel;
  * Product list toolbar
  *
  * @author      Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.TooManyFields)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Toolbar extends \Magento\Framework\View\Element\Template
 {
diff --git a/app/code/Magento/Catalog/Block/Product/ProductList/Upsell.php b/app/code/Magento/Catalog/Block/Product/ProductList/Upsell.php
index 47246f8f3a84dc665d88f19c820eb41630d6c197..55aceddbe44e740185dc26966fb8282ebd70a4f8 100644
--- a/app/code/Magento/Catalog/Block/Product/ProductList/Upsell.php
+++ b/app/code/Magento/Catalog/Block/Product/ProductList/Upsell.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Block\Product\ProductList;
 
 use Magento\Catalog\Model\Resource\Product\Collection;
diff --git a/app/code/Magento/Catalog/Block/Product/View.php b/app/code/Magento/Catalog/Block/Product/View.php
index 09108d7c2a840bd0b7986aa0f5635ea897552382..2a5238075e225a2a10e5701938ef5348c41f0862 100644
--- a/app/code/Magento/Catalog/Block/Product/View.php
+++ b/app/code/Magento/Catalog/Block/Product/View.php
@@ -10,6 +10,7 @@ use Magento\Catalog\Model\Product;
 
 /**
  * Product View block
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class View extends AbstractProduct implements \Magento\Framework\View\Block\IdentityInterface
 {
@@ -73,6 +74,7 @@ class View extends AbstractProduct implements \Magento\Framework\View\Block\Iden
      * @param \Magento\Framework\Pricing\PriceCurrencyInterface $priceCurrency
      * @param array $data
      * @codingStandardsIgnoreStart
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Catalog\Block\Product\Context $context,
diff --git a/app/code/Magento/Catalog/Block/Product/View/Attributes.php b/app/code/Magento/Catalog/Block/Product/View/Attributes.php
index 040a1c916d1b56ef06f960aca0975bde1e3e0388..4cf183e49951943b3c324a735fb18489eca66254 100644
--- a/app/code/Magento/Catalog/Block/Product/View/Attributes.php
+++ b/app/code/Magento/Catalog/Block/Product/View/Attributes.php
@@ -67,6 +67,7 @@ class Attributes extends \Magento\Framework\View\Element\Template
      *
      * @param array $excludeAttr
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function getAdditionalData(array $excludeAttr = [])
     {
diff --git a/app/code/Magento/Catalog/Block/Product/View/Options/Type/Select.php b/app/code/Magento/Catalog/Block/Product/View/Options/Type/Select.php
index 0efffe87ced5ae15ccdb5d1f3ce1fba8c76753cb..d2c8f141aefab185f94c06cf9d9a0b10d6dcb8fb 100644
--- a/app/code/Magento/Catalog/Block/Product/View/Options/Type/Select.php
+++ b/app/code/Magento/Catalog/Block/Product/View/Options/Type/Select.php
@@ -38,6 +38,9 @@ class Select extends \Magento\Catalog\Block\Product\View\Options\AbstractOptions
      * Return html for control element
      *
      * @return string
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public function getValuesHtml()
     {
diff --git a/app/code/Magento/Catalog/Block/Product/Widget/Html/Pager.php b/app/code/Magento/Catalog/Block/Product/Widget/Html/Pager.php
index 18943c0e202ec4bf435d4668e92b6278ae3dc204..7585d4e39f7b781d1aac6e5d4069980c94e52b01 100644
--- a/app/code/Magento/Catalog/Block/Product/Widget/Html/Pager.php
+++ b/app/code/Magento/Catalog/Block/Product/Widget/Html/Pager.php
@@ -152,6 +152,7 @@ class Pager extends \Magento\Theme\Block\Html\Pager
      * Return number of last page
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getLastPageNum()
     {
diff --git a/app/code/Magento/Catalog/Block/Product/Widget/NewWidget.php b/app/code/Magento/Catalog/Block/Product/Widget/NewWidget.php
index e5367387aac85bb2ccb19ef7a66ffe6e46cf9b89..e1eabc8745699639b3bb351d31c71a00d5df3176 100644
--- a/app/code/Magento/Catalog/Block/Product/Widget/NewWidget.php
+++ b/app/code/Magento/Catalog/Block/Product/Widget/NewWidget.php
@@ -197,6 +197,7 @@ class NewWidget extends \Magento\Catalog\Block\Product\NewProduct implements \Ma
      * @param string $renderZone
      * @param array $arguments
      * @return string
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function getProductPriceHtml(
         \Magento\Catalog\Model\Product $product,
diff --git a/app/code/Magento/Catalog/Block/Rss/Category.php b/app/code/Magento/Catalog/Block/Rss/Category.php
index bb3e7e9817001eeebf2909cf60c1efd784e1e78e..aa9048ae51fe0a0828cc388abc9eb26b7feba00b 100644
--- a/app/code/Magento/Catalog/Block/Rss/Category.php
+++ b/app/code/Magento/Catalog/Block/Rss/Category.php
@@ -12,6 +12,7 @@ use Magento\Framework\Exception\NoSuchEntityException;
 /**
  * Class Category
  * @package Magento\Catalog\Block\Rss
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Category extends \Magento\Framework\View\Element\AbstractBlock implements DataProviderInterface
 {
@@ -61,6 +62,7 @@ class Category extends \Magento\Framework\View\Element\AbstractBlock implements
      * @param \Magento\Customer\Model\Session $customerSession
      * @param CategoryRepositoryInterface $categoryRepository
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\View\Element\Template\Context $context,
diff --git a/app/code/Magento/Catalog/Block/Rss/Product/Special.php b/app/code/Magento/Catalog/Block/Rss/Product/Special.php
index 0d6f41ed9a4c0285c051116d503bd6002cc13a72..d5da4e503b8bc47df61286ae29e4c8b548043b85 100644
--- a/app/code/Magento/Catalog/Block/Rss/Product/Special.php
+++ b/app/code/Magento/Catalog/Block/Rss/Product/Special.php
@@ -11,6 +11,7 @@ use Magento\Framework\App\Rss\DataProviderInterface;
 /**
  * Class Special
  * @package Magento\Catalog\Block\Rss\Product
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Special extends \Magento\Framework\View\Element\AbstractBlock implements DataProviderInterface
 {
@@ -54,6 +55,16 @@ class Special extends \Magento\Framework\View\Element\AbstractBlock implements D
      */
     protected $msrpHelper;
 
+    /**
+     * @var \Magento\Framework\Stdlib\DateTime\DateFactory
+     */
+    private $dateFactory;
+
+    /**
+     * @var \Magento\Framework\Locale\ResolverInterface
+     */
+    private $localeResolver;
+
     /**
      * @param \Magento\Framework\View\Element\Template\Context $context
      * @param \Magento\Framework\App\Http\Context $httpContext
@@ -63,7 +74,10 @@ class Special extends \Magento\Framework\View\Element\AbstractBlock implements D
      * @param \Magento\Framework\Pricing\PriceCurrencyInterface $priceCurrency
      * @param \Magento\Catalog\Model\Rss\Product\Special $rssModel
      * @param \Magento\Framework\App\Rss\UrlBuilderInterface $rssUrlBuilder
+     * @param \Magento\Framework\Stdlib\DateTime\DateFactory $dateFactory
+     * @param \Magento\Framework\Locale\ResolverInterface $localeResolver
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\View\Element\Template\Context $context,
@@ -74,6 +88,8 @@ class Special extends \Magento\Framework\View\Element\AbstractBlock implements D
         \Magento\Framework\Pricing\PriceCurrencyInterface $priceCurrency,
         \Magento\Catalog\Model\Rss\Product\Special $rssModel,
         \Magento\Framework\App\Rss\UrlBuilderInterface $rssUrlBuilder,
+        \Magento\Framework\Stdlib\DateTime\DateFactory $dateFactory,
+        \Magento\Framework\Locale\ResolverInterface $localeResolver,
         array $data = []
     ) {
         $this->outputHelper = $outputHelper;
@@ -85,6 +101,8 @@ class Special extends \Magento\Framework\View\Element\AbstractBlock implements D
         $this->httpContext = $httpContext;
         $this->storeManager = $context->getStoreManager();
         parent::__construct($context, $data);
+        $this->dateFactory = $dateFactory;
+        $this->localeResolver = $localeResolver;
     }
 
     /**
@@ -167,7 +185,13 @@ class Special extends \Magento\Framework\View\Element\AbstractBlock implements D
                 $special = '';
                 if ($item->getUseSpecial()) {
                     $special = '<br />' . __('Special Expires On: %1', $this->formatDate(
-                        $item->getSpecialToDate(),
+                        $this->dateFactory->create(
+                            [
+                                'date' => $item->getSpecialToDate(),
+                                'part' => \Magento\Framework\Stdlib\DateTime\Date::ISO_8601,
+                                'locale' => $this->localeResolver->getLocaleCode()
+                            ]
+                        ),
                         \Magento\Framework\Stdlib\DateTime\TimezoneInterface::FORMAT_TYPE_MEDIUM
                     ));
                 }
diff --git a/app/code/Magento/Catalog/Block/Widget/Link.php b/app/code/Magento/Catalog/Block/Widget/Link.php
index 96423e495eb4e2006a32b40173486b0fa3ee4b19..b9910e70b769a029f53dbe3bb709ab1f14d61c56 100644
--- a/app/code/Magento/Catalog/Block/Widget/Link.php
+++ b/app/code/Magento/Catalog/Block/Widget/Link.php
@@ -67,6 +67,7 @@ class Link extends \Magento\Framework\View\Element\Html\Link implements \Magento
      *
      * @throws \RuntimeException
      * @return string|false
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function getHref()
     {
diff --git a/app/code/Magento/Catalog/Controller/Adminhtml/Category/Edit.php b/app/code/Magento/Catalog/Controller/Adminhtml/Category/Edit.php
index ade075d0bca684666e85ec34153f737a5728d7f9..f6b54278aa3eabc0a117ebf45ad491337a5fe39a 100644
--- a/app/code/Magento/Catalog/Controller/Adminhtml/Category/Edit.php
+++ b/app/code/Magento/Catalog/Controller/Adminhtml/Category/Edit.php
@@ -39,6 +39,8 @@ class Edit extends \Magento\Catalog\Controller\Adminhtml\Category
      * Edit category page
      *
      * @return \Magento\Framework\Controller\ResultInterface
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function execute()
     {
diff --git a/app/code/Magento/Catalog/Controller/Adminhtml/Category/Save.php b/app/code/Magento/Catalog/Controller/Adminhtml/Category/Save.php
index 923403a05d4c57d71b6888489eae76b5473a6494..4599a379adbc9bace4e4f1dbc2ca7277f4861994 100644
--- a/app/code/Magento/Catalog/Controller/Adminhtml/Category/Save.php
+++ b/app/code/Magento/Catalog/Controller/Adminhtml/Category/Save.php
@@ -68,6 +68,9 @@ class Save extends \Magento\Catalog\Controller\Adminhtml\Category
      * Category save
      *
      * @return \Magento\Framework\Controller\ResultInterface
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public function execute()
     {
diff --git a/app/code/Magento/Catalog/Controller/Adminhtml/Product.php b/app/code/Magento/Catalog/Controller/Adminhtml/Product.php
index 9dd74c1cf7b37daacc2e60a6b8b13c22dc1b4147..d80a02f02aa9844fddfaed047bbfdb84e3feab61 100644
--- a/app/code/Magento/Catalog/Controller/Adminhtml/Product.php
+++ b/app/code/Magento/Catalog/Controller/Adminhtml/Product.php
@@ -9,6 +9,7 @@ use Magento\Backend\App\Action;
 
 /**
  * Catalog product controller
+ * @SuppressWarnings(PHPMD.NumberOfChildren)
  */
 class Product extends \Magento\Backend\App\Action
 {
diff --git a/app/code/Magento/Catalog/Controller/Adminhtml/Product/Action/Attribute.php b/app/code/Magento/Catalog/Controller/Adminhtml/Product/Action/Attribute.php
index 5f781b6f4055495ab9c645f8895839f028c9cfa9..5a1ebddaee421d4d4cdc42646e75d286a8d68940 100644
--- a/app/code/Magento/Catalog/Controller/Adminhtml/Product/Action/Attribute.php
+++ b/app/code/Magento/Catalog/Controller/Adminhtml/Product/Action/Attribute.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Controller\Adminhtml\Product\Action;
 
 use Magento\Backend\App\Action;
diff --git a/app/code/Magento/Catalog/Controller/Adminhtml/Product/Action/Attribute/Save.php b/app/code/Magento/Catalog/Controller/Adminhtml/Product/Action/Attribute/Save.php
index 676ca502bb9bd451dcb1c94bcadfab03db5554bb..ccff305f5280df1da130b00d5ce6af38332baa95 100644
--- a/app/code/Magento/Catalog/Controller/Adminhtml/Product/Action/Attribute/Save.php
+++ b/app/code/Magento/Catalog/Controller/Adminhtml/Product/Action/Attribute/Save.php
@@ -10,6 +10,7 @@ use Magento\Backend\App\Action;
 
 /**
  * Class Save
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Save extends \Magento\Catalog\Controller\Adminhtml\Product\Action\Attribute
 {
@@ -80,6 +81,9 @@ class Save extends \Magento\Catalog\Controller\Adminhtml\Product\Action\Attribut
      * Update product attributes
      *
      * @return \Magento\Backend\Model\View\Result\Redirect
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public function execute()
     {
diff --git a/app/code/Magento/Catalog/Controller/Adminhtml/Product/AddAttributeToTemplate.php b/app/code/Magento/Catalog/Controller/Adminhtml/Product/AddAttributeToTemplate.php
index ff34e06c66a3118e1415bea9a0a57c5d7b0ff1a2..8f0a3de052a755ba072cbd7064c1d39f1395297a 100644
--- a/app/code/Magento/Catalog/Controller/Adminhtml/Product/AddAttributeToTemplate.php
+++ b/app/code/Magento/Catalog/Controller/Adminhtml/Product/AddAttributeToTemplate.php
@@ -55,8 +55,7 @@ class AddAttributeToTemplate extends \Magento\Catalog\Controller\Adminhtml\Produ
 
             $attribute->setAttributeSetId($attributeSet->getId())->loadEntityAttributeIdBySet();
 
-            $attribute->setEntityTypeId($attributeSet->getEntityTypeId())
-                ->setAttributeSetId($request->getParam('template_id'))
+            $attribute->setAttributeSetId($request->getParam('template_id'))
                 ->setAttributeGroupId($attributeGroup->getId())
                 ->setSortOrder('0')
                 ->save();
diff --git a/app/code/Magento/Catalog/Controller/Adminhtml/Product/Attribute/Edit.php b/app/code/Magento/Catalog/Controller/Adminhtml/Product/Attribute/Edit.php
index de363a251e4e7e61dce6ece55cec3443e8a6eeb2..7eee03d9f842eef0d0b3c1c3475644509c13c008 100644
--- a/app/code/Magento/Catalog/Controller/Adminhtml/Product/Attribute/Edit.php
+++ b/app/code/Magento/Catalog/Controller/Adminhtml/Product/Attribute/Edit.php
@@ -39,6 +39,7 @@ class Edit extends \Magento\Catalog\Controller\Adminhtml\Product\Attribute
 
     /**
      * @return \Magento\Framework\Controller\ResultInterface
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function execute()
     {
diff --git a/app/code/Magento/Catalog/Controller/Adminhtml/Product/Attribute/Save.php b/app/code/Magento/Catalog/Controller/Adminhtml/Product/Attribute/Save.php
index ac8b97d19e061f68dc4cfe4685b1e2e31b30c3b5..1de519b9b25b75006bef3b00bf752d2d1a65b8d9 100644
--- a/app/code/Magento/Catalog/Controller/Adminhtml/Product/Attribute/Save.php
+++ b/app/code/Magento/Catalog/Controller/Adminhtml/Product/Attribute/Save.php
@@ -4,10 +4,16 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Controller\Adminhtml\Product\Attribute;
 
 use Magento\Catalog\Model\Product\AttributeSet\AlreadyExistsException;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class Save extends \Magento\Catalog\Controller\Adminhtml\Product\Attribute
 {
     /**
@@ -57,6 +63,7 @@ class Save extends \Magento\Catalog\Controller\Adminhtml\Product\Attribute
      * @param \Magento\Catalog\Helper\Product $productHelper
      * @param \Magento\Framework\View\Result\PageFactory $resultPageFactory
      * @param \Magento\Backend\Model\View\Result\RedirectFactory $resultRedirectFactory
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Backend\App\Action\Context $context,
@@ -83,6 +90,9 @@ class Save extends \Magento\Catalog\Controller\Adminhtml\Product\Attribute
 
     /**
      * @return \Magento\Backend\Model\View\Result\Redirect
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public function execute()
     {
diff --git a/app/code/Magento/Catalog/Controller/Adminhtml/Product/Initialization/Helper.php b/app/code/Magento/Catalog/Controller/Adminhtml/Product/Initialization/Helper.php
index c3f764248861ce012aa0e6f77c25cc842eecdbe0..9dbbddcee68f828b225304bea6dad7050d74c275 100644
--- a/app/code/Magento/Catalog/Controller/Adminhtml/Product/Initialization/Helper.php
+++ b/app/code/Magento/Catalog/Controller/Adminhtml/Product/Initialization/Helper.php
@@ -58,6 +58,8 @@ class Helper
      *
      * @param \Magento\Catalog\Model\Product $product
      * @return \Magento\Catalog\Model\Product
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function initialize(\Magento\Catalog\Model\Product $product)
     {
diff --git a/app/code/Magento/Catalog/Controller/Adminhtml/Product/Initialization/StockDataFilter.php b/app/code/Magento/Catalog/Controller/Adminhtml/Product/Initialization/StockDataFilter.php
index 7893a9914ffd5d35764918feb474da10727c87d4..3de39b7dfb8c244db5d0abc3e05f62a9c9faa831 100644
--- a/app/code/Magento/Catalog/Controller/Adminhtml/Product/Initialization/StockDataFilter.php
+++ b/app/code/Magento/Catalog/Controller/Adminhtml/Product/Initialization/StockDataFilter.php
@@ -45,6 +45,7 @@ class StockDataFilter
      *
      * @param array $stockData
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function filter(array $stockData)
     {
diff --git a/app/code/Magento/Catalog/Controller/Adminhtml/Product/Save.php b/app/code/Magento/Catalog/Controller/Adminhtml/Product/Save.php
index 38fee79f569f41cb884873cf82d9e4a756b98e24..a325c816d6d2fb647f4501ca3e58881a2d2f9d27 100644
--- a/app/code/Magento/Catalog/Controller/Adminhtml/Product/Save.php
+++ b/app/code/Magento/Catalog/Controller/Adminhtml/Product/Save.php
@@ -58,12 +58,14 @@ class Save extends \Magento\Catalog\Controller\Adminhtml\Product
      * Save product action
      *
      * @return \Magento\Backend\Model\View\Result\Redirect
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function execute()
     {
         $storeId = $this->getRequest()->getParam('store');
         $redirectBack = $this->getRequest()->getParam('back', false);
         $productId = $this->getRequest()->getParam('id');
+        $resultRedirect = $this->resultRedirectFactory->create();
 
         $data = $this->getRequest()->getPost();
         if ($data) {
@@ -122,9 +124,12 @@ class Save extends \Magento\Catalog\Controller\Adminhtml\Product
                 $this->_session->setProductData($data);
                 $redirectBack = $productId ? true : 'new';
             }
+        } else {
+            $resultRedirect->setPath('catalog/*/', ['store' => $storeId]);
+            $this->messageManager->addError('No data to save');
+            return $resultRedirect;
         }
 
-        $resultRedirect = $this->resultRedirectFactory->create();
         if ($redirectBack === 'new') {
             $resultRedirect->setPath(
                 'catalog/*/new',
diff --git a/app/code/Magento/Catalog/Controller/Adminhtml/Product/Set/Save.php b/app/code/Magento/Catalog/Controller/Adminhtml/Product/Set/Save.php
index b6c6fcd1940ead117294d2ecb4832f6650c45fa5..5f2aec23a62a538148673696ff7dd9339398a589 100644
--- a/app/code/Magento/Catalog/Controller/Adminhtml/Product/Set/Save.php
+++ b/app/code/Magento/Catalog/Controller/Adminhtml/Product/Set/Save.php
@@ -63,6 +63,7 @@ class Save extends \Magento\Catalog\Controller\Adminhtml\Product\Set
      * [AJAX] Save attribute set data
      *
      * @return \Magento\Framework\Controller\ResultInterface
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function execute()
     {
diff --git a/app/code/Magento/Catalog/Controller/Adminhtml/Product/Validate.php b/app/code/Magento/Catalog/Controller/Adminhtml/Product/Validate.php
index ff08a8cf3c3cb5d74fea312b28683e0087a85d37..b459ab001458a934c8eb4f6901131eb56ce62b1f 100644
--- a/app/code/Magento/Catalog/Controller/Adminhtml/Product/Validate.php
+++ b/app/code/Magento/Catalog/Controller/Adminhtml/Product/Validate.php
@@ -58,6 +58,8 @@ class Validate extends \Magento\Catalog\Controller\Adminhtml\Product
      * Validate product
      *
      * @return \Magento\Framework\Controller\Result\JSON
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function execute()
     {
diff --git a/app/code/Magento/Catalog/Controller/Category/View.php b/app/code/Magento/Catalog/Controller/Category/View.php
index 54234861d1559144cda8e166f6ecc71977ffa1ea..82f6992c1e8bbb5cdc1f0f79108a2ec35817838b 100644
--- a/app/code/Magento/Catalog/Controller/Category/View.php
+++ b/app/code/Magento/Catalog/Controller/Category/View.php
@@ -11,6 +11,9 @@ use Magento\Catalog\Model\Layer\Resolver;
 use Magento\Framework\Exception\NoSuchEntityException;
 use Magento\Framework\View\Result\PageFactory;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class View extends \Magento\Framework\App\Action\Action
 {
     /**
@@ -135,6 +138,8 @@ class View extends \Magento\Framework\App\Action\Action
      * Category view action
      *
      * @return \Magento\Framework\View\Result\Page
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function execute()
     {
diff --git a/app/code/Magento/Catalog/Controller/Product/Compare.php b/app/code/Magento/Catalog/Controller/Product/Compare.php
index 45aaaa22de207f9187356b59015ac12a6f6ac971..4e934b0685e698f5e1f179935e8ee9d2a746025a 100644
--- a/app/code/Magento/Catalog/Controller/Product/Compare.php
+++ b/app/code/Magento/Catalog/Controller/Product/Compare.php
@@ -14,6 +14,7 @@ use Magento\Framework\View\Result\PageFactory;
  * Catalog compare controller
  *
  * @SuppressWarnings(PHPMD.LongVariable)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Compare extends \Magento\Framework\App\Action\Action
 {
@@ -106,6 +107,7 @@ class Compare extends \Magento\Framework\App\Action\Action
      * @param \Magento\Framework\Controller\Result\RedirectFactory $resultRedirectFactory
      * @param \Magento\Framework\View\Result\PageFactory $resultPageFactory
      * @param ProductRepositoryInterface $productRepository
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\App\Action\Context $context,
diff --git a/app/code/Magento/Catalog/Controller/Product/Compare/Index.php b/app/code/Magento/Catalog/Controller/Product/Compare/Index.php
index 78da553d5a9bb5e244ec2663d27a6afb32b00e79..aa311afa1c33047eeed43400001bf7096242e366 100644
--- a/app/code/Magento/Catalog/Controller/Product/Compare/Index.php
+++ b/app/code/Magento/Catalog/Controller/Product/Compare/Index.php
@@ -11,6 +11,9 @@ use Magento\Core\App\Action\FormKeyValidator;
 use Magento\Framework\Controller\Result;
 use Magento\Framework\View\Result\PageFactory;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class Index extends \Magento\Catalog\Controller\Product\Compare
 {
     /**
diff --git a/app/code/Magento/Catalog/Helper/Data.php b/app/code/Magento/Catalog/Helper/Data.php
index 99027a495d868fa29a1a300a7fff8ce303a70fe1..4609524bd509b1d0e3f7823bae87d56190b94f93 100644
--- a/app/code/Magento/Catalog/Helper/Data.php
+++ b/app/code/Magento/Catalog/Helper/Data.php
@@ -15,6 +15,8 @@ use Magento\Tax\Model\Config;
 
 /**
  * Catalog data helper
+ * @SuppressWarnings(PHPMD.TooManyFields)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Data extends \Magento\Framework\App\Helper\AbstractHelper
 {
@@ -184,6 +186,7 @@ class Data extends \Magento\Framework\App\Helper\AbstractHelper
      * @param PriceCurrencyInterface $priceCurrency
      * @param ProductRepositoryInterface $productRepository
      * @param CategoryRepositoryInterface $categoryRepository
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\App\Helper\Context $context,
@@ -464,6 +467,8 @@ class Data extends \Magento\Framework\App\Helper\AbstractHelper
      * @param   bool $priceIncludesTax flag what price parameter contain tax
      * @param   bool $roundPrice
      * @return  float
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function getTaxPrice(
         $product,
diff --git a/app/code/Magento/Catalog/Helper/Image.php b/app/code/Magento/Catalog/Helper/Image.php
index d8ab47819fec6f8f10d950349e7ca15758a6ba02..add8bd324ce9582fca7e33bbd480f9c6fdf24200 100644
--- a/app/code/Magento/Catalog/Helper/Image.php
+++ b/app/code/Magento/Catalog/Helper/Image.php
@@ -249,6 +249,7 @@ class Image extends AbstractHelper
      * @param bool $flag
      * @param string[] $position
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function keepFrame($flag, $position = ['center', 'middle'])
     {
@@ -267,6 +268,7 @@ class Image extends AbstractHelper
      * @param bool $flag
      * @param int $alphaOpacity
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function keepTransparency($flag, $alphaOpacity = null)
     {
diff --git a/app/code/Magento/Catalog/Helper/Output.php b/app/code/Magento/Catalog/Helper/Output.php
index 990604192b14dffc4346d325083f7e1a29831a2f..c509c1d752e5fb22830546e1256a23ed363b63d6 100644
--- a/app/code/Magento/Catalog/Helper/Output.php
+++ b/app/code/Magento/Catalog/Helper/Output.php
@@ -133,6 +133,7 @@ class Output extends \Magento\Framework\App\Helper\AbstractHelper
      * @param string $attributeHtml
      * @param string $attributeName
      * @return string
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function productAttribute($product, $attributeHtml, $attributeName)
     {
diff --git a/app/code/Magento/Catalog/Helper/Product.php b/app/code/Magento/Catalog/Helper/Product.php
index e622df9bf617d21bbfd9bb29619065ebf629bd56..5adf09c4ce778090bee50b4bb65bc1351a14a355 100644
--- a/app/code/Magento/Catalog/Helper/Product.php
+++ b/app/code/Magento/Catalog/Helper/Product.php
@@ -13,6 +13,7 @@ use Magento\Store\Model\Store;
 
 /**
  * Catalog category helper
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Product extends \Magento\Core\Helper\Url
 {
@@ -110,6 +111,7 @@ class Product extends \Magento\Core\Helper\Url
      * @param array $reindexPriceIndexerData
      * @param ProductRepositoryInterface $productRepository
      * @param CategoryRepositoryInterface $categoryRepository
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\App\Helper\Context $context,
@@ -246,6 +248,7 @@ class Product extends \Magento\Core\Helper\Url
      *
      * @param ModelProduct|\Magento\Framework\Object $product
      * @return string
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function getThumbnailUrl($product)
     {
@@ -284,6 +287,7 @@ class Product extends \Magento\Core\Helper\Url
      * @param ModelProduct|int $product
      * @param string $where
      * @return boolean
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function canShow($product, $where = 'catalog')
     {
@@ -385,6 +389,8 @@ class Product extends \Magento\Core\Helper\Url
      * @param \Magento\Framework\Object $params
      *
      * @return false|ModelProduct
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function initProduct($productId, $controller, $params = null)
     {
@@ -538,6 +544,7 @@ class Product extends \Magento\Core\Helper\Url
      * Get flag that shows if Magento has to check product to be saleable (enabled and/or inStock)
      *
      * @return boolean
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getSkipSaleableCheck()
     {
diff --git a/app/code/Magento/Catalog/Helper/Product/Compare.php b/app/code/Magento/Catalog/Helper/Product/Compare.php
index 62fbee193ce0f18d39630f50691fcb7de1985f06..469c47e77d539d84ed4bf04ceed27f4539fbf877 100644
--- a/app/code/Magento/Catalog/Helper/Product/Compare.php
+++ b/app/code/Magento/Catalog/Helper/Product/Compare.php
@@ -12,6 +12,7 @@ use Magento\Catalog\Model\Resource\Product\Compare\Item\Collection;
  * Catalog Product Compare Helper
  *
  * @SuppressWarnings(PHPMD.LongVariable)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Compare extends \Magento\Core\Helper\Url
 {
@@ -104,6 +105,7 @@ class Compare extends \Magento\Core\Helper\Url
      * @param \Magento\Framework\Data\Form\FormKey $formKey
      * @param \Magento\Wishlist\Helper\Data $wishlistHelper
      * @param \Magento\Core\Helper\PostData $coreHelper
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\App\Helper\Context $context,
@@ -357,6 +359,7 @@ class Compare extends \Magento\Core\Helper\Url
      * Retrieve is allow used flat (for collection)
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getAllowUsedFlat()
     {
diff --git a/app/code/Magento/Catalog/Helper/Product/Composite.php b/app/code/Magento/Catalog/Helper/Product/Composite.php
index fb7b67d24fed5627580b8d62011a79ce956ef702..cb29ce5f7e883e06476a3695359540eae2f65090 100644
--- a/app/code/Magento/Catalog/Helper/Product/Composite.php
+++ b/app/code/Magento/Catalog/Helper/Product/Composite.php
@@ -19,6 +19,7 @@ use Magento\Framework\Registry;
  * Adminhtml catalog product composite helper
  *
  * @author     Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Composite extends \Magento\Framework\App\Helper\AbstractHelper
 {
diff --git a/app/code/Magento/Catalog/Helper/Product/Configuration.php b/app/code/Magento/Catalog/Helper/Product/Configuration.php
index c356d77c5e54bb87efde664ca0111020272fa939..2018d7d2f8ec9885463842f442f88d6f1072d2c3 100644
--- a/app/code/Magento/Catalog/Helper/Product/Configuration.php
+++ b/app/code/Magento/Catalog/Helper/Product/Configuration.php
@@ -145,6 +145,8 @@ class Configuration extends AbstractHelper implements ConfigurationInterface
      *  - 'cutReplacer': replacer for cut off value part when option value exceeds maxLength
      *
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function getFormattedOptionValue($optionValue, $params = null)
     {
diff --git a/app/code/Magento/Catalog/Helper/Product/Edit/Action/Attribute.php b/app/code/Magento/Catalog/Helper/Product/Edit/Action/Attribute.php
index 9448849b95aa260672072dcbd3b5a98a336ded4b..add782fd4d41e654d853cf0cf47037d094ffd395 100644
--- a/app/code/Magento/Catalog/Helper/Product/Edit/Action/Attribute.php
+++ b/app/code/Magento/Catalog/Helper/Product/Edit/Action/Attribute.php
@@ -11,6 +11,7 @@ namespace Magento\Catalog\Helper\Product\Edit\Action;
 
 /**
  * Class Attribute
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Attribute extends \Magento\Backend\Helper\Data
 {
@@ -67,6 +68,7 @@ class Attribute extends \Magento\Backend\Helper\Data
      * @param \Magento\Backend\Model\Session $session
      * @param \Magento\Catalog\Model\Resource\Product\CollectionFactory $productsFactory
      * @param \Magento\Store\Model\StoreManagerInterface $storeManager
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\App\Helper\Context $context,
diff --git a/app/code/Magento/Catalog/Helper/Product/Flat/Indexer.php b/app/code/Magento/Catalog/Helper/Product/Flat/Indexer.php
index 6ea99cb96b1af11ba9374391aa331708e342abf8..27d3d25fa89dc22eb08245e7a9dcdd227d99b94d 100644
--- a/app/code/Magento/Catalog/Helper/Product/Flat/Indexer.php
+++ b/app/code/Magento/Catalog/Helper/Product/Flat/Indexer.php
@@ -8,6 +8,8 @@ namespace Magento\Catalog\Helper\Product\Flat;
 /**
  * Catalog Product Flat Indexer Helper
  *
+ * @SuppressWarnings(PHPMD.TooManyFields)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Indexer extends \Magento\Framework\App\Helper\AbstractHelper
 {
@@ -130,6 +132,7 @@ class Indexer extends \Magento\Framework\App\Helper\AbstractHelper
      * @param bool $addFilterableAttrs
      * @param bool $addChildData
      * @param array $flatAttributeGroups
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\App\Helper\Context $context,
diff --git a/app/code/Magento/Catalog/Helper/Product/ProductList.php b/app/code/Magento/Catalog/Helper/Product/ProductList.php
index 5161aaa717c236862eb7ac77f7296580a44b629d..f298f7b940f79e14800711da955b83c3071eb3c6 100644
--- a/app/code/Magento/Catalog/Helper/Product/ProductList.php
+++ b/app/code/Magento/Catalog/Helper/Product/ProductList.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Helper\Product;
 
 /**
diff --git a/app/code/Magento/Catalog/Helper/Product/View.php b/app/code/Magento/Catalog/Helper/Product/View.php
index 6360c56c71fb748fb5fcec2c1de0539889b570f8..18f48f0521c9cee617daea82d8a2fe79a09ef7fe 100644
--- a/app/code/Magento/Catalog/Helper/Product/View.php
+++ b/app/code/Magento/Catalog/Helper/Product/View.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Helper\Product;
 
 use Magento\Framework\View\Result\Page as ResultPage;
@@ -102,6 +104,8 @@ class View extends \Magento\Framework\App\Helper\AbstractHelper
      * @param \Magento\Catalog\Model\Product $product
      * @param null|\Magento\Framework\Object $params
      * @return \Magento\Catalog\Helper\Product\View
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function initProductLayout(ResultPage $resultPage, $product, $params = null)
     {
diff --git a/app/code/Magento/Catalog/Model/AbstractModel.php b/app/code/Magento/Catalog/Model/AbstractModel.php
index 2559e15926b376d257c4a65e3db773d38a4ac5e4..5694254c627ca971b8d27e7e39ab3d324e4afea6 100644
--- a/app/code/Magento/Catalog/Model/AbstractModel.php
+++ b/app/code/Magento/Catalog/Model/AbstractModel.php
@@ -313,6 +313,7 @@ abstract class AbstractModel extends \Magento\Framework\Model\AbstractExtensible
      *
      * @param   string $attributeCode
      * @return  bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getExistsStoreValueFlag($attributeCode)
     {
diff --git a/app/code/Magento/Catalog/Model/App/Action/ContextPlugin.php b/app/code/Magento/Catalog/Model/App/Action/ContextPlugin.php
index 797528fe53a8eeebaf1e6f21bf499a52eee6aac5..5006b8fdb84bba61b70cff5cd0079f11e6462bd5 100644
--- a/app/code/Magento/Catalog/Model/App/Action/ContextPlugin.php
+++ b/app/code/Magento/Catalog/Model/App/Action/ContextPlugin.php
@@ -48,6 +48,7 @@ class ContextPlugin
      * @param callable $proceed
      * @param \Magento\Framework\App\RequestInterface $request
      * @return mixed
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function aroundDispatch(
         \Magento\Framework\App\Action\Action $subject,
diff --git a/app/code/Magento/Catalog/Model/Category.php b/app/code/Magento/Catalog/Model/Category.php
index de16d5850c0a95702afaa1ff59c94a531cd6e5f1..214cb33195bcbdba9fb4c5b302e38918d5b1f96c 100644
--- a/app/code/Magento/Catalog/Model/Category.php
+++ b/app/code/Magento/Catalog/Model/Category.php
@@ -27,6 +27,10 @@ use Magento\UrlRewrite\Service\V1\Data\UrlRewrite;
  * @method Category setUrlPath(string $urlPath)
  *
  * @SuppressWarnings(PHPMD.LongVariable)
+ * @SuppressWarnings(PHPMD.ExcessivePublicCount)
+ * @SuppressWarnings(PHPMD.TooManyFields)
+ * @SuppressWarnings(PHPMD.ExcessiveClassComplexity)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Category extends \Magento\Catalog\Model\AbstractModel implements
     \Magento\Framework\Object\IdentityInterface,
@@ -190,6 +194,7 @@ class Category extends \Magento\Catalog\Model\AbstractModel implements
      * @param \Magento\Framework\Model\Resource\AbstractResource $resource
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
@@ -257,6 +262,7 @@ class Category extends \Magento\Catalog\Model\AbstractModel implements
      * Get flat resource model flag
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getUseFlatResource()
     {
@@ -408,6 +414,7 @@ class Category extends \Magento\Catalog\Model\AbstractModel implements
      * @param bool $noDesignAttributes
      * @return array
      * @todo Use with Flat Resource
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function getAttributes($noDesignAttributes = false)
     {
@@ -1093,6 +1100,7 @@ class Category extends \Magento\Catalog\Model\AbstractModel implements
 
     /**
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsActive()
     {
diff --git a/app/code/Magento/Catalog/Model/Category/Attribute/Backend/Sortby.php b/app/code/Magento/Catalog/Model/Category/Attribute/Backend/Sortby.php
index 8b0d73753f71e4ebd0ef72c959a4f99706205cc7..c1d07fc693ab29467a3765b2d30f9d5fb9b50a22 100644
--- a/app/code/Magento/Catalog/Model/Category/Attribute/Backend/Sortby.php
+++ b/app/code/Magento/Catalog/Model/Category/Attribute/Backend/Sortby.php
@@ -35,6 +35,8 @@ class Sortby extends \Magento\Eav\Model\Entity\Attribute\Backend\AbstractBackend
      * @param \Magento\Framework\Object $object
      * @return bool
      * @throws \Magento\Framework\Model\Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function validate($object)
     {
diff --git a/app/code/Magento/Catalog/Model/Config.php b/app/code/Magento/Catalog/Model/Config.php
index a2015639d17a8ace900e588cf990ff9c34427226..8cbdb43ad337b980023575b93070cdcb929ca8a0 100644
--- a/app/code/Magento/Catalog/Model/Config.php
+++ b/app/code/Magento/Catalog/Model/Config.php
@@ -3,10 +3,15 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Model;
 
 /**
  * @SuppressWarnings(PHPMD.LongVariable)
+ * @SuppressWarnings(PHPMD.TooManyFields)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Config extends \Magento\Eav\Model\Config
 {
diff --git a/app/code/Magento/Catalog/Model/Entity/Attribute.php b/app/code/Magento/Catalog/Model/Entity/Attribute.php
index e5fc53eee22cb751b7a422b9db44d74c7fecd835..fa8019fc6298c1d2f4d9a546f983e3eee6a05e6e 100644
--- a/app/code/Magento/Catalog/Model/Entity/Attribute.php
+++ b/app/code/Magento/Catalog/Model/Entity/Attribute.php
@@ -43,6 +43,7 @@ use Magento\Framework\Api\AttributeDataBuilder;
  * @method \Magento\Catalog\Model\Entity\Attribute setIsWysiwygEnabled(int $value)
  * @method int getIsUsedForPromoRules()
  * @method \Magento\Catalog\Model\Entity\Attribute setIsUsedForPromoRules(int $value)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Attribute extends \Magento\Eav\Model\Entity\Attribute
 {
@@ -86,6 +87,7 @@ class Attribute extends \Magento\Eav\Model\Entity\Attribute
      * @param \Magento\Framework\Model\Resource\AbstractResource $resource
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
diff --git a/app/code/Magento/Catalog/Model/Factory.php b/app/code/Magento/Catalog/Model/Factory.php
index 4140789849772016f9439c1d34fb6bed4b4506fa..55add909d9f8542506d3afeb6edbca40eb779134 100644
--- a/app/code/Magento/Catalog/Model/Factory.php
+++ b/app/code/Magento/Catalog/Model/Factory.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Model factory
  */
diff --git a/app/code/Magento/Catalog/Model/Indexer/Category/AffectCache.php b/app/code/Magento/Catalog/Model/Indexer/Category/AffectCache.php
index 63c5da5aeafb46b7e1821f991a7384f15baaf742..124424648050de9216a216c51ed877de2a96bd16 100644
--- a/app/code/Magento/Catalog/Model/Indexer/Category/AffectCache.php
+++ b/app/code/Magento/Catalog/Model/Indexer/Category/AffectCache.php
@@ -29,6 +29,7 @@ class AffectCache
      * @param \Magento\Indexer\Model\ActionInterface $subject
      * @param array $ids
      * @return array
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function beforeExecute(\Magento\Indexer\Model\ActionInterface $subject, $ids)
     {
diff --git a/app/code/Magento/Catalog/Model/Indexer/Category/Flat/AbstractAction.php b/app/code/Magento/Catalog/Model/Indexer/Category/Flat/AbstractAction.php
index 0ad27cfd659d0fddc229a555e7e0763e2beffa05..9fba6a8ae96707b844aac77f2f95a1eea1394cec 100644
--- a/app/code/Magento/Catalog/Model/Indexer/Category/Flat/AbstractAction.php
+++ b/app/code/Magento/Catalog/Model/Indexer/Category/Flat/AbstractAction.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Model\Indexer\Category\Flat;
 
 class AbstractAction
@@ -186,6 +189,7 @@ class AbstractAction
      * Return array of static columns
      *
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function getStaticColumns()
     {
diff --git a/app/code/Magento/Catalog/Model/Indexer/Category/Product/AbstractAction.php b/app/code/Magento/Catalog/Model/Indexer/Category/Product/AbstractAction.php
index 0b6478356257c094c5628db819d1b698d36efeb8..fc76af0a7552bf05631cf973bf868445252b0ef6 100644
--- a/app/code/Magento/Catalog/Model/Indexer/Category/Product/AbstractAction.php
+++ b/app/code/Magento/Catalog/Model/Indexer/Category/Product/AbstractAction.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Model\Indexer\Category\Product;
 
 abstract class AbstractAction
diff --git a/app/code/Magento/Catalog/Model/Indexer/Category/Product/Plugin/IndexerState.php b/app/code/Magento/Catalog/Model/Indexer/Category/Product/Plugin/IndexerState.php
index 0e45e6680e3487c5f5bfddfd07a24d438d1cb7f3..019d27e4bead31f68793f7ea11851889afe45787 100644
--- a/app/code/Magento/Catalog/Model/Indexer/Category/Product/Plugin/IndexerState.php
+++ b/app/code/Magento/Catalog/Model/Indexer/Category/Product/Plugin/IndexerState.php
@@ -5,6 +5,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Model\Indexer\Category\Product\Plugin;
 
 class IndexerState
diff --git a/app/code/Magento/Catalog/Model/Indexer/Category/Product/Plugin/MviewState.php b/app/code/Magento/Catalog/Model/Indexer/Category/Product/Plugin/MviewState.php
index f2cbf9b29888b2ce2b7945f397c1f82467354206..ccfde503a9d9099be57de7c539ad50ada96582ba 100644
--- a/app/code/Magento/Catalog/Model/Indexer/Category/Product/Plugin/MviewState.php
+++ b/app/code/Magento/Catalog/Model/Indexer/Category/Product/Plugin/MviewState.php
@@ -5,6 +5,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Model\Indexer\Category\Product\Plugin;
 
 class MviewState
diff --git a/app/code/Magento/Catalog/Model/Indexer/Category/Product/Plugin/StoreGroup.php b/app/code/Magento/Catalog/Model/Indexer/Category/Product/Plugin/StoreGroup.php
index 684e815cf31cb41ac8c7110f641006dbafb68752..ef9def13549270f2eb72db01f47d370be1cc574f 100644
--- a/app/code/Magento/Catalog/Model/Indexer/Category/Product/Plugin/StoreGroup.php
+++ b/app/code/Magento/Catalog/Model/Indexer/Category/Product/Plugin/StoreGroup.php
@@ -23,6 +23,7 @@ class StoreGroup
      * @param callable $proceed
      * @param \Magento\Framework\Model\AbstractModel $group
      * @return mixed
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function aroundSave(
         \Magento\Framework\Model\Resource\Db\AbstractDb $subject,
diff --git a/app/code/Magento/Catalog/Model/Indexer/Product/AffectCache.php b/app/code/Magento/Catalog/Model/Indexer/Product/AffectCache.php
index 35e4d36b8caab2e70f3f33132d08c17f2fedaff7..5e997400ec23e0725b745c0f0b359d92e9ccdfe4 100644
--- a/app/code/Magento/Catalog/Model/Indexer/Product/AffectCache.php
+++ b/app/code/Magento/Catalog/Model/Indexer/Product/AffectCache.php
@@ -29,6 +29,7 @@ class AffectCache
      * @param \Magento\Indexer\Model\ActionInterface $subject
      * @param array $ids
      * @return array
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function beforeExecute(\Magento\Indexer\Model\ActionInterface $subject, $ids)
     {
diff --git a/app/code/Magento/Catalog/Model/Indexer/Product/Flat/AbstractAction.php b/app/code/Magento/Catalog/Model/Indexer/Product/Flat/AbstractAction.php
index 181a5901b8abdda155f53e9626f8b4f62faf583d..c160e95db9b1f1836852dee34755e80b93bb6ea0 100644
--- a/app/code/Magento/Catalog/Model/Indexer/Product/Flat/AbstractAction.php
+++ b/app/code/Magento/Catalog/Model/Indexer/Product/Flat/AbstractAction.php
@@ -118,6 +118,7 @@ abstract class AbstractAction
      * @param array $tablesList
      * @param int|string $storeId
      * @return void
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     protected function _cleanOnFailure(array $tablesList, $storeId)
     {
@@ -183,6 +184,7 @@ abstract class AbstractAction
      * @param int $storeId
      * @param int|array $productIds Update child product(s) only
      * @return \Magento\Catalog\Model\Indexer\Product\Flat\AbstractAction
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _updateRelationProducts($storeId, $productIds = null)
     {
diff --git a/app/code/Magento/Catalog/Model/Indexer/Product/Flat/Action/Indexer.php b/app/code/Magento/Catalog/Model/Indexer/Product/Flat/Action/Indexer.php
index 6da2dceeeb1462a9c47cab8bb3d50330c6eba0b5..383fab299e86f0d43b425b873baa8a4317b5ebe3 100644
--- a/app/code/Magento/Catalog/Model/Indexer/Product/Flat/Action/Indexer.php
+++ b/app/code/Magento/Catalog/Model/Indexer/Product/Flat/Action/Indexer.php
@@ -41,6 +41,8 @@ class Indexer
      * @param int $productId
      * @param string $valueFieldSuffix
      * @return \Magento\Catalog\Model\Indexer\Product\Flat
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public function write($storeId, $productId, $valueFieldSuffix = '')
     {
diff --git a/app/code/Magento/Catalog/Model/Indexer/Product/Flat/FlatTableBuilder.php b/app/code/Magento/Catalog/Model/Indexer/Product/Flat/FlatTableBuilder.php
index 110705a8feaa412c6f1cc961920b01ae5246c570..3c5fd37274111d25ad407d87d5b42528f811ee71 100644
--- a/app/code/Magento/Catalog/Model/Indexer/Product/Flat/FlatTableBuilder.php
+++ b/app/code/Magento/Catalog/Model/Indexer/Product/Flat/FlatTableBuilder.php
@@ -98,6 +98,8 @@ class FlatTableBuilder
      * @param int|string $storeId
      * @return void
      * @throws \Magento\Framework\Model\Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _createTemporaryFlatTable($storeId)
     {
@@ -209,7 +211,6 @@ class FlatTableBuilder
         $statusTable = $this->_getTemporaryTableName($status->getBackendTable());
         $statusConditions = [
             'e.entity_id = dstatus.entity_id',
-            'dstatus.entity_type_id = ' . (int)$status->getEntityTypeId(),
             'dstatus.store_id = ' . (int)$storeId,
             'dstatus.attribute_id = ' . (int)$status->getId(),
         ];
@@ -291,8 +292,6 @@ class FlatTableBuilder
                 $attributeCode = $attribute->getAttributeCode();
                 if ($attribute->getBackend()->getType() != 'static') {
                     $joinCondition = 't.entity_id = e.entity_id' .
-                        ' AND t.entity_type_id = ' .
-                        $attribute->getEntityTypeId() .
                         ' AND t.attribute_id=' .
                         $attribute->getId() .
                         ' AND t.store_id = ' .
diff --git a/app/code/Magento/Catalog/Model/Indexer/Product/Flat/Plugin/Store.php b/app/code/Magento/Catalog/Model/Indexer/Product/Flat/Plugin/Store.php
index e4b3ea3eb0b9b36fae8bc6fe2845879ea3160a38..781cb92d83a77702211b7e62d79a04ef230f8634 100644
--- a/app/code/Magento/Catalog/Model/Indexer/Product/Flat/Plugin/Store.php
+++ b/app/code/Magento/Catalog/Model/Indexer/Product/Flat/Plugin/Store.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Model\Indexer\Product\Flat\Plugin;
 
 class Store
diff --git a/app/code/Magento/Catalog/Model/Indexer/Product/Flat/Plugin/StoreGroup.php b/app/code/Magento/Catalog/Model/Indexer/Product/Flat/Plugin/StoreGroup.php
index eba0f5ade8c9f55fee1e7ff9f558e47b3aaf23b1..7e59098153d5213d986643437a0f53de66e72458 100644
--- a/app/code/Magento/Catalog/Model/Indexer/Product/Flat/Plugin/StoreGroup.php
+++ b/app/code/Magento/Catalog/Model/Indexer/Product/Flat/Plugin/StoreGroup.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Model\Indexer\Product\Flat\Plugin;
 
 class StoreGroup
diff --git a/app/code/Magento/Catalog/Model/Indexer/Product/Price/AbstractAction.php b/app/code/Magento/Catalog/Model/Indexer/Product/Price/AbstractAction.php
index 3a52723a9a29e26eb61ba23b6d4a2c189d77d25c..52861a1d42adae0dc6159754e99eb1ac3f5516c9 100644
--- a/app/code/Magento/Catalog/Model/Indexer/Product/Price/AbstractAction.php
+++ b/app/code/Magento/Catalog/Model/Indexer/Product/Price/AbstractAction.php
@@ -8,6 +8,7 @@ namespace Magento\Catalog\Model\Indexer\Product\Price;
 /**
  * Abstract action reindex class
  *
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 abstract class AbstractAction
 {
@@ -444,6 +445,7 @@ abstract class AbstractAction
      *
      * @param array $changedIds
      * @return array Affected ids
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _reindexRows($changedIds = [])
     {
diff --git a/app/code/Magento/Catalog/Model/Layer.php b/app/code/Magento/Catalog/Model/Layer.php
index a113728fb032347d5cddbb8de7d03f7392791873..74bcbfdf7cc843adc5172d6a3f31a0b8cf43799b 100644
--- a/app/code/Magento/Catalog/Model/Layer.php
+++ b/app/code/Magento/Catalog/Model/Layer.php
@@ -12,6 +12,7 @@ use Magento\Framework\Exception\NoSuchEntityException;
  * Catalog view layer model
  *
  * @SuppressWarnings(PHPMD.LongVariable)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Layer extends \Magento\Framework\Object
 {
diff --git a/app/code/Magento/Catalog/Model/Layer/Filter/Dynamic/AlgorithmFactory.php b/app/code/Magento/Catalog/Model/Layer/Filter/Dynamic/AlgorithmFactory.php
index 200f73de1b49a94384a7f05a9199012697cab68d..d86b8220296bf9842d1d601426bb4516ecb8c2e1 100644
--- a/app/code/Magento/Catalog/Model/Layer/Filter/Dynamic/AlgorithmFactory.php
+++ b/app/code/Magento/Catalog/Model/Layer/Filter/Dynamic/AlgorithmFactory.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Model\Layer\Filter\Dynamic;
 
 use Magento\Framework\App\Config\ScopeConfigInterface;
diff --git a/app/code/Magento/Catalog/Model/Layer/Filter/Dynamic/Auto.php b/app/code/Magento/Catalog/Model/Layer/Filter/Dynamic/Auto.php
index 1f62c1c6de6103a437f27de185a3c55f722306ad..627c5dabb80bdb0e4b8c3ed1dd249306c7473ac8 100644
--- a/app/code/Magento/Catalog/Model/Layer/Filter/Dynamic/Auto.php
+++ b/app/code/Magento/Catalog/Model/Layer/Filter/Dynamic/Auto.php
@@ -13,6 +13,9 @@ use Magento\Framework\App\Config\ScopeConfigInterface;
 use Magento\Framework\Registry;
 use Magento\Framework\Search\Dynamic\Algorithm;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class Auto implements AlgorithmInterface
 {
     const MIN_RANGE_POWER = 10;
diff --git a/app/code/Magento/Catalog/Model/Layer/Filter/Item.php b/app/code/Magento/Catalog/Model/Layer/Filter/Item.php
index 3fac2f8d64387585a75a18f14762964e4bad2f8a..367f58f8ba501c536e9037e84ead680dcfad2d73 100644
--- a/app/code/Magento/Catalog/Model/Layer/Filter/Item.php
+++ b/app/code/Magento/Catalog/Model/Layer/Filter/Item.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Filter item model
  *
diff --git a/app/code/Magento/Catalog/Model/Layer/Filter/Price.php b/app/code/Magento/Catalog/Model/Layer/Filter/Price.php
index 7183b9287b539d4e2e4eada8c66d88fe011e769c..8db29096c2852391fd4176473d167bed41eaae7a 100644
--- a/app/code/Magento/Catalog/Model/Layer/Filter/Price.php
+++ b/app/code/Magento/Catalog/Model/Layer/Filter/Price.php
@@ -3,12 +3,16 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Model\Layer\Filter;
 
 /**
  * Layer price filter
  *
  * @author      Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Price extends \Magento\Catalog\Model\Layer\Filter\AbstractFilter
 {
@@ -70,6 +74,7 @@ class Price extends \Magento\Catalog\Model\Layer\Filter\AbstractFilter
      * @param Dynamic\AlgorithmFactory $algorithmFactory
      * @param DataProvider\PriceFactory $dataProviderFactory
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Catalog\Model\Layer\Filter\ItemFactory $filterItemFactory,
diff --git a/app/code/Magento/Catalog/Model/Plugin/QuoteItemProductOption.php b/app/code/Magento/Catalog/Model/Plugin/QuoteItemProductOption.php
index ba33a41a67fca6ed40412e725a7275856ca0f4e8..f758681de66bfbd8054fd0338872aead49e3007c 100644
--- a/app/code/Magento/Catalog/Model/Plugin/QuoteItemProductOption.php
+++ b/app/code/Magento/Catalog/Model/Plugin/QuoteItemProductOption.php
@@ -8,20 +8,21 @@ namespace Magento\Catalog\Model\Plugin;
 class QuoteItemProductOption
 {
     /**
-     * @param \Magento\Sales\Model\Convert\Quote $subject
+     * @param \Magento\Quote\Model\Quote\Item\ToOrderItem $subject
      * @param callable $proceed
-     * @param \Magento\Sales\Model\Quote\Item\AbstractItem $item
-     *
+     * @param \Magento\Quote\Model\Quote\Item\AbstractItem $item
+     * @param array $additional
      * @return \Magento\Sales\Model\Order\Item
      * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
-    public function aroundItemToOrderItem(
-        \Magento\Sales\Model\Convert\Quote $subject,
+    public function aroundConvert(
+        \Magento\Quote\Model\Quote\Item\ToOrderItem $subject,
         \Closure $proceed,
-        \Magento\Sales\Model\Quote\Item\AbstractItem $item
+        \Magento\Quote\Model\Quote\Item\AbstractItem $item,
+        $additional
     ) {
         /** @var $orderItem \Magento\Sales\Model\Order\Item */
-        $orderItem = $proceed($item);
+        $orderItem = $proceed($item, $additional);
 
         if (is_array($item->getOptions())) {
             foreach ($item->getOptions() as $itemOption) {
diff --git a/app/code/Magento/Catalog/Model/Product.php b/app/code/Magento/Catalog/Model/Product.php
index 32a82364c17a05c2205d7bf31c22287dc19da62e..8d7b4d3c726614631c10a4f2893ad99317995e4e 100644
--- a/app/code/Magento/Catalog/Model/Product.php
+++ b/app/code/Magento/Catalog/Model/Product.php
@@ -29,6 +29,10 @@ use Magento\Framework\Pricing\Object\SaleableInterface;
  * @method Product setRequestPath(string $requestPath)
  *
  * @SuppressWarnings(PHPMD.LongVariable)
+ * @SuppressWarnings(PHPMD.ExcessivePublicCount)
+ * @SuppressWarnings(PHPMD.TooManyFields)
+ * @SuppressWarnings(PHPMD.ExcessiveClassComplexity)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Product extends \Magento\Catalog\Model\AbstractModel implements
     IdentityInterface,
@@ -640,6 +644,7 @@ class Product extends \Magento\Catalog\Model\AbstractModel implements
      * @param int  $groupId   Retrieve attributes of the specified group
      * @param bool $skipSuper Not used
      * @return \Magento\Eav\Model\Entity\Attribute\AbstractAttribute[]
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function getAttributes($groupId = null, $skipSuper = false)
     {
@@ -662,6 +667,7 @@ class Product extends \Magento\Catalog\Model\AbstractModel implements
      * Check product options and type options and save them, too
      *
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function beforeSave()
     {
@@ -777,8 +783,10 @@ class Product extends \Magento\Catalog\Model\AbstractModel implements
      */
     public function setQty($qty)
     {
-        $this->setData('qty', $qty);
-        $this->reloadPriceInfo();
+        if ($this->getData('qty') != $qty) {
+            $this->setData('qty', $qty);
+            $this->reloadPriceInfo();
+        }
         return $this;
     }
 
@@ -1393,6 +1401,7 @@ class Product extends \Magento\Catalog\Model\AbstractModel implements
      * Is product salable detecting by product type
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsSalable()
     {
@@ -1679,6 +1688,7 @@ class Product extends \Magento\Catalog\Model\AbstractModel implements
      * Retrieve is a virtual product
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsVirtual()
     {
diff --git a/app/code/Magento/Catalog/Model/Product/Action.php b/app/code/Magento/Catalog/Model/Product/Action.php
index d2447816e1d8c4561a55f2b097a29a95ca028bb6..5f86ef87a78997cb0d928c24782aae85380f5799 100644
--- a/app/code/Magento/Catalog/Model/Product/Action.php
+++ b/app/code/Magento/Catalog/Model/Product/Action.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Model\Product;
 
 /**
@@ -117,6 +120,7 @@ class Action extends \Magento\Framework\Model\AbstractModel
      *
      * @param array $attributesData
      * @return bool
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     protected function _hasIndexableAttributes($attributesData)
     {
diff --git a/app/code/Magento/Catalog/Model/Product/Attribute/Backend/Groupprice.php b/app/code/Magento/Catalog/Model/Product/Attribute/Backend/GroupPrice.php
similarity index 83%
rename from app/code/Magento/Catalog/Model/Product/Attribute/Backend/Groupprice.php
rename to app/code/Magento/Catalog/Model/Product/Attribute/Backend/GroupPrice.php
index b6e551625f23cdfc37459eb79d66e15e4726cbd9..455ada210a9a857948b309dd2d307ee3170b4f91 100644
--- a/app/code/Magento/Catalog/Model/Product/Attribute/Backend/Groupprice.php
+++ b/app/code/Magento/Catalog/Model/Product/Attribute/Backend/GroupPrice.php
@@ -10,14 +10,14 @@ namespace Magento\Catalog\Model\Product\Attribute\Backend;
  *
  * @SuppressWarnings(PHPMD.LongVariable)
  */
-class Groupprice extends \Magento\Catalog\Model\Product\Attribute\Backend\Groupprice\AbstractGroupprice
+class GroupPrice extends \Magento\Catalog\Model\Product\Attribute\Backend\GroupPrice\AbstractGroupPrice
 {
     /**
      * Catalog product attribute backend groupprice
      *
-     * @var \Magento\Catalog\Model\Resource\Product\Attribute\Backend\Groupprice
+     * @var \Magento\Catalog\Model\Resource\Product\Attribute\Backend\GroupPrice
      */
-    protected $_productAttributeBackendGroupprice;
+    protected $_productAttributeBackendGroupPrice;
 
     /**
      * @param \Magento\Directory\Model\CurrencyFactory $currencyFactory
@@ -26,7 +26,7 @@ class Groupprice extends \Magento\Catalog\Model\Product\Attribute\Backend\Groupp
      * @param \Magento\Framework\App\Config\ScopeConfigInterface $config
      * @param \Magento\Catalog\Model\Product\Type $catalogProductType
      * @param \Magento\Customer\Api\GroupManagementInterface $groupManagement
-     * @param \Magento\Catalog\Model\Resource\Product\Attribute\Backend\Groupprice $productAttributeBackendGroupprice
+     * @param \Magento\Catalog\Model\Resource\Product\Attribute\Backend\GroupPrice $productAttributeBackendGroupPrice
      */
     public function __construct(
         \Magento\Directory\Model\CurrencyFactory $currencyFactory,
@@ -35,9 +35,9 @@ class Groupprice extends \Magento\Catalog\Model\Product\Attribute\Backend\Groupp
         \Magento\Framework\App\Config\ScopeConfigInterface $config,
         \Magento\Catalog\Model\Product\Type $catalogProductType,
         \Magento\Customer\Api\GroupManagementInterface $groupManagement,
-        \Magento\Catalog\Model\Resource\Product\Attribute\Backend\Groupprice $productAttributeBackendGroupprice
+        \Magento\Catalog\Model\Resource\Product\Attribute\Backend\GroupPrice $productAttributeBackendGroupPrice
     ) {
-        $this->_productAttributeBackendGroupprice = $productAttributeBackendGroupprice;
+        $this->_productAttributeBackendGroupPrice = $productAttributeBackendGroupPrice;
         parent::__construct(
             $currencyFactory,
             $storeManager,
@@ -51,11 +51,11 @@ class Groupprice extends \Magento\Catalog\Model\Product\Attribute\Backend\Groupp
     /**
      * Retrieve resource instance
      *
-     * @return \Magento\Catalog\Model\Resource\Product\Attribute\Backend\Groupprice
+     * @return \Magento\Catalog\Model\Resource\Product\Attribute\Backend\GroupPrice
      */
     protected function _getResource()
     {
-        return $this->_productAttributeBackendGroupprice;
+        return $this->_productAttributeBackendGroupPrice;
     }
 
     /**
diff --git a/app/code/Magento/Catalog/Model/Product/Attribute/Backend/Groupprice/AbstractGroupprice.php b/app/code/Magento/Catalog/Model/Product/Attribute/Backend/GroupPrice/AbstractGroupPrice.php
similarity index 96%
rename from app/code/Magento/Catalog/Model/Product/Attribute/Backend/Groupprice/AbstractGroupprice.php
rename to app/code/Magento/Catalog/Model/Product/Attribute/Backend/GroupPrice/AbstractGroupPrice.php
index 0626f5a673b50995d46555c9627657ced32c4287..6aeacc7c2cd91303fe0b10414ba7e63a4b7e4a19 100644
--- a/app/code/Magento/Catalog/Model/Product/Attribute/Backend/Groupprice/AbstractGroupprice.php
+++ b/app/code/Magento/Catalog/Model/Product/Attribute/Backend/GroupPrice/AbstractGroupPrice.php
@@ -3,7 +3,10 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Catalog\Model\Product\Attribute\Backend\Groupprice;
+
+// @codingStandardsIgnoreFile
+
+namespace Magento\Catalog\Model\Product\Attribute\Backend\GroupPrice;
 
 use Magento\Catalog\Model\Product\Attribute\Backend\Price;
 use Magento\Customer\Api\GroupManagementInterface;
@@ -11,7 +14,7 @@ use Magento\Customer\Api\GroupManagementInterface;
 /**
  * Catalog product abstract group price backend attribute model
  */
-abstract class AbstractGroupprice extends Price
+abstract class AbstractGroupPrice extends Price
 {
     /**
      * Website currency codes and rates
@@ -100,7 +103,7 @@ abstract class AbstractGroupprice extends Price
     /**
      * Retrieve resource instance
      *
-     * @return \Magento\Catalog\Model\Resource\Product\Attribute\Backend\Groupprice
+     * @return \Magento\Catalog\Model\Resource\Product\Attribute\Backend\GroupPrice
      */
     abstract protected function _getResource();
 
@@ -109,6 +112,7 @@ abstract class AbstractGroupprice extends Price
      *
      * @param array $objectArray
      * @return array
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     protected function _getAdditionalUniqueFields($objectArray)
     {
@@ -132,6 +136,8 @@ abstract class AbstractGroupprice extends Price
      * @param \Magento\Catalog\Model\Product $object
      * @throws \Magento\Framework\Model\Exception
      * @return bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function validate($object)
     {
@@ -284,6 +290,9 @@ abstract class AbstractGroupprice extends Price
      *
      * @param \Magento\Catalog\Model\Product $object
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public function afterSave($object)
     {
diff --git a/app/code/Magento/Catalog/Model/Product/Attribute/Backend/Media.php b/app/code/Magento/Catalog/Model/Product/Attribute/Backend/Media.php
index 19333586273f2b6a0d5d20f23c055ae5a1e95672..f8d053035fe87cec28091745d85cfb05a39d9bfc 100644
--- a/app/code/Magento/Catalog/Model/Product/Attribute/Backend/Media.php
+++ b/app/code/Magento/Catalog/Model/Product/Attribute/Backend/Media.php
@@ -14,6 +14,10 @@ namespace Magento\Catalog\Model\Product\Attribute\Backend;
 use Magento\Framework\App\Filesystem\DirectoryList;
 use Magento\Framework\Model\Exception;
 
+/**
+ * @SuppressWarnings(PHPMD.ExcessiveClassComplexity)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class Media extends \Magento\Eav\Model\Entity\Attribute\Backend\AbstractBackend
 {
     /**
@@ -164,6 +168,8 @@ class Media extends \Magento\Eav\Model\Entity\Attribute\Backend\AbstractBackend
     /**
      * @param \Magento\Framework\Object $object
      * @return $this|void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function beforeSave($object)
     {
@@ -254,6 +260,8 @@ class Media extends \Magento\Eav\Model\Entity\Attribute\Backend\AbstractBackend
     /**
      * @param \Magento\Framework\Object $object
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function afterSave($object)
     {
@@ -347,6 +355,8 @@ class Media extends \Magento\Eav\Model\Entity\Attribute\Backend\AbstractBackend
      * @param boolean $exclude mark image as disabled in product page view
      * @return string
      * @throws Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function addImage(
         \Magento\Catalog\Model\Product $product,
diff --git a/app/code/Magento/Catalog/Model/Product/Attribute/Backend/Price.php b/app/code/Magento/Catalog/Model/Product/Attribute/Backend/Price.php
index 45e9dac9eba4b624b8a9f0e54ad04136d6d45520..79b2b1b752ad9a6cd367e5eeba0df8e06cea13f5 100644
--- a/app/code/Magento/Catalog/Model/Product/Attribute/Backend/Price.php
+++ b/app/code/Magento/Catalog/Model/Product/Attribute/Backend/Price.php
@@ -96,6 +96,7 @@ class Price extends \Magento\Eav\Model\Entity\Attribute\Backend\AbstractBackend
      *
      * @param \Magento\Catalog\Model\Product $object
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function afterSave($object)
     {
diff --git a/app/code/Magento/Catalog/Model/Product/Attribute/Backend/Sku.php b/app/code/Magento/Catalog/Model/Product/Attribute/Backend/Sku.php
index 5f2df08bc8bc2e3fb6a80610fa24ab60595719de..728cd250923fee5d7616e9958052d654a219f9f1 100644
--- a/app/code/Magento/Catalog/Model/Product/Attribute/Backend/Sku.php
+++ b/app/code/Magento/Catalog/Model/Product/Attribute/Backend/Sku.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Catalog product SKU backend attribute model
  *
@@ -104,13 +106,11 @@ class Sku extends \Magento\Eav\Model\Entity\Attribute\Backend\AbstractBackend
         $adapter = $this->getAttribute()->getEntity()->getReadConnection();
         $select = $adapter->select();
         $value = $object->getData($attribute->getAttributeCode());
-        $bind = ['entity_type_id' => $attribute->getEntityTypeId(), 'attribute_code' => trim($value) . '-%'];
+        $bind = ['attribute_code' => trim($value) . '-%'];
 
         $select->from(
             $this->getTable(),
             $attribute->getAttributeCode()
-        )->where(
-            'entity_type_id = :entity_type_id'
         )->where(
             $attribute->getAttributeCode() . ' LIKE :attribute_code'
         )->order(
diff --git a/app/code/Magento/Catalog/Model/Product/Attribute/Backend/Tierprice.php b/app/code/Magento/Catalog/Model/Product/Attribute/Backend/Tierprice.php
index 92cf3828c7a3121edd799568930649795660ecd7..91da3fa75adb24ac42762592017e39e9419adfdb 100644
--- a/app/code/Magento/Catalog/Model/Product/Attribute/Backend/Tierprice.php
+++ b/app/code/Magento/Catalog/Model/Product/Attribute/Backend/Tierprice.php
@@ -11,7 +11,7 @@
  */
 namespace Magento\Catalog\Model\Product\Attribute\Backend;
 
-class Tierprice extends \Magento\Catalog\Model\Product\Attribute\Backend\Groupprice\AbstractGroupprice
+class Tierprice extends \Magento\Catalog\Model\Product\Attribute\Backend\GroupPrice\AbstractGroupPrice
 {
     /**
      * Catalog product attribute backend tierprice
diff --git a/app/code/Magento/Catalog/Model/Product/Attribute/Repository.php b/app/code/Magento/Catalog/Model/Product/Attribute/Repository.php
index faaf5645680ae0e5c6fde4e07a2524cfc183bddd..86548f86dd1a2a812f4e2ec5e45fc4dea4af5924 100644
--- a/app/code/Magento/Catalog/Model/Product/Attribute/Repository.php
+++ b/app/code/Magento/Catalog/Model/Product/Attribute/Repository.php
@@ -9,6 +9,9 @@ namespace Magento\Catalog\Model\Product\Attribute;
 use Magento\Framework\Exception\InputException;
 use Magento\Framework\Exception\NoSuchEntityException;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class Repository implements \Magento\Catalog\Api\ProductAttributeRepositoryInterface
 {
     /**
@@ -72,6 +75,7 @@ class Repository implements \Magento\Catalog\Api\ProductAttributeRepositoryInter
      * @param \Magento\Framework\Api\Config\MetadataConfig $metadataConfig
      * @param \Magento\Framework\Api\SearchCriteriaDataBuilder $searchCriteriaBuilder
      * @param \Magento\Framework\Api\FilterBuilder $filterBuilder
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Catalog\Model\Resource\Attribute $attributeResource,
@@ -121,6 +125,8 @@ class Repository implements \Magento\Catalog\Api\ProductAttributeRepositoryInter
 
     /**
      * {@inheritdoc}
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function save(\Magento\Catalog\Api\Data\ProductAttributeInterface $attribute)
     {
diff --git a/app/code/Magento/Catalog/Model/Product/Attribute/Source/Inputtype.php b/app/code/Magento/Catalog/Model/Product/Attribute/Source/Inputtype.php
index aec2983c06c1858f16d091ed194b55672031134a..769a2aeb5a832cd27ffacffbaa6d4512468e5c1b 100644
--- a/app/code/Magento/Catalog/Model/Product/Attribute/Source/Inputtype.php
+++ b/app/code/Magento/Catalog/Model/Product/Attribute/Source/Inputtype.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Product attribute source input types
  */
@@ -39,6 +41,7 @@ class Inputtype extends \Magento\Eav\Model\Adminhtml\System\Config\Source\Inputt
      * Get product input types as option array
      *
      * @return array
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function toOptionArray()
     {
diff --git a/app/code/Magento/Catalog/Model/Product/Compare/Item.php b/app/code/Magento/Catalog/Model/Product/Compare/Item.php
index 5f52479c57cb635801dc9cfb8dc5d6114e1762f0..b488f1d02e0bdba0c9530c720e48737e1d1c6775 100644
--- a/app/code/Magento/Catalog/Model/Product/Compare/Item.php
+++ b/app/code/Magento/Catalog/Model/Product/Compare/Item.php
@@ -207,6 +207,7 @@ class Item extends \Magento\Framework\Model\AbstractModel implements \Magento\Fr
      *
      * @param \Magento\Framework\Event\Observer $observer
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function bindCustomerLogout(\Magento\Framework\Event\Observer $observer = null)
     {
diff --git a/app/code/Magento/Catalog/Model/Product/Gallery/Entry.php b/app/code/Magento/Catalog/Model/Product/Gallery/Entry.php
index 8b1fa1b3cab4c0e7a75986f55911ca5187f16cba..31a9d3963e2a47ec5e88704721929127f3e3cb78 100644
--- a/app/code/Magento/Catalog/Model/Product/Gallery/Entry.php
+++ b/app/code/Magento/Catalog/Model/Product/Gallery/Entry.php
@@ -46,6 +46,7 @@ class Entry extends \Magento\Framework\Model\AbstractExtensibleModel implements
      * Check if gallery entry is hidden from product page
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsDisabled()
     {
diff --git a/app/code/Magento/Catalog/Model/Product/Gallery/GalleryManagement.php b/app/code/Magento/Catalog/Model/Product/Gallery/GalleryManagement.php
index 89d0257b95967bf5c0b954fcfa333118b1124f01..bedbdec0d88602a8f4952b918d718ba7b7dab307 100644
--- a/app/code/Magento/Catalog/Model/Product/Gallery/GalleryManagement.php
+++ b/app/code/Magento/Catalog/Model/Product/Gallery/GalleryManagement.php
@@ -15,6 +15,9 @@ use Magento\Framework\Exception\NoSuchEntityException;
 use Magento\Framework\Exception\StateException;
 use Magento\Framework\App\Filesystem\DirectoryList;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class GalleryManagement implements \Magento\Catalog\Api\ProductAttributeMediaGalleryManagementInterface
 {
     /**
diff --git a/app/code/Magento/Catalog/Model/Product/GroupPriceManagement.php b/app/code/Magento/Catalog/Model/Product/GroupPriceManagement.php
index 41625fdb8c68980fdbb2e4f4647580dfd065c339..63b9a377bf952399c38fca3a93a25363eb73d8f5 100644
--- a/app/code/Magento/Catalog/Model/Product/GroupPriceManagement.php
+++ b/app/code/Magento/Catalog/Model/Product/GroupPriceManagement.php
@@ -69,6 +69,8 @@ class GroupPriceManagement implements \Magento\Catalog\Api\ProductGroupPriceMana
 
     /**
      * {@inheritdoc}
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function add($productSku, $customerGroupId, $price)
     {
diff --git a/app/code/Magento/Catalog/Model/Product/Image.php b/app/code/Magento/Catalog/Model/Product/Image.php
index 59f34349b8dd2ee4a945b2ef34cd3b727a6f3004..d133d26599e35211382ef682503cb6efd0d1307c 100644
--- a/app/code/Magento/Catalog/Model/Product/Image.php
+++ b/app/code/Magento/Catalog/Model/Product/Image.php
@@ -15,6 +15,11 @@ use Magento\Framework\App\Filesystem\DirectoryList;
 use Magento\Framework\Image as MagentoImage;
 use Magento\Store\Model\Store;
 
+/**
+ * @SuppressWarnings(PHPMD.TooManyFields)
+ * @SuppressWarnings(PHPMD.ExcessiveClassComplexity)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class Image extends \Magento\Framework\Model\AbstractModel
 {
     /**
@@ -174,6 +179,8 @@ class Image extends \Magento\Framework\Model\AbstractModel
      * @param \Magento\Framework\Model\Resource\AbstractResource $resource
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
@@ -381,6 +388,7 @@ class Image extends \Magento\Framework\Model\AbstractModel
     /**
      * @param string|null $file
      * @return float|int
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _getNeedMemoryForFile($file = null)
     {
@@ -436,6 +444,8 @@ class Image extends \Magento\Framework\Model\AbstractModel
      * @param string $file
      * @return $this
      * @throws \Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function setBaseFile($file)
     {
@@ -611,6 +621,7 @@ class Image extends \Magento\Framework\Model\AbstractModel
      * @param int $height
      * @param int $opacity
      * @return $this
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function setWatermark(
         $file,
diff --git a/app/code/Magento/Catalog/Model/Product/Media/Config.php b/app/code/Magento/Catalog/Model/Product/Media/Config.php
index 067313d3f64ca250caeceb0a6b95849bc7d66847..55b22c509a9450c8296e4851d5797c1b64cf803b 100644
--- a/app/code/Magento/Catalog/Model/Product/Media/Config.php
+++ b/app/code/Magento/Catalog/Model/Product/Media/Config.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Model\Product\Media;
 
 /**
diff --git a/app/code/Magento/Catalog/Model/Product/Option.php b/app/code/Magento/Catalog/Model/Product/Option.php
index 7582f0c38f7bb87c17d9c631036d88ed9311e275..cb57df12918acfa84ce21b88a467b349a14edf0b 100644
--- a/app/code/Magento/Catalog/Model/Product/Option.php
+++ b/app/code/Magento/Catalog/Model/Product/Option.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Model\Product;
 
 use Magento\Catalog\Api\Data\ProductCustomOptionValuesInterface;
@@ -22,6 +25,7 @@ use Magento\Framework\Model\Exception;
  * @method \Magento\Catalog\Model\Product\Option setProductId(int $value)
  *
  * @author      Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Option extends AbstractExtensibleModel implements \Magento\Catalog\Api\Data\ProductCustomOptionInterface
 {
@@ -104,6 +108,7 @@ class Option extends AbstractExtensibleModel implements \Magento\Catalog\Api\Dat
      * @param \Magento\Framework\Model\Resource\AbstractResource $resource
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
@@ -313,6 +318,7 @@ class Option extends AbstractExtensibleModel implements \Magento\Catalog\Api\Dat
      * Save options.
      *
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function saveOptions()
     {
@@ -626,6 +632,7 @@ class Option extends AbstractExtensibleModel implements \Magento\Catalog\Api\Dat
      * Get is require
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsRequire()
     {
diff --git a/app/code/Magento/Catalog/Model/Product/Option/Type/Date.php b/app/code/Magento/Catalog/Model/Product/Option/Type/Date.php
index 2765bdce22a707cda01338a7ca6f73da12b18d60..16f2ce870043191bc47bf124e8352caeac082041 100644
--- a/app/code/Magento/Catalog/Model/Product/Option/Type/Date.php
+++ b/app/code/Magento/Catalog/Model/Product/Option/Type/Date.php
@@ -44,6 +44,8 @@ class Date extends \Magento\Catalog\Model\Product\Option\Type\DefaultType
      * @param array $values All product option values, i.e. array (option_id => mixed, option_id => mixed...)
      * @return $this
      * @throws \Magento\Framework\Model\Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function validateUserValue($values)
     {
@@ -117,6 +119,8 @@ class Date extends \Magento\Catalog\Model\Product\Option\Type\DefaultType
      *
      * @return string|null Prepared option value
      * @throws \Magento\Framework\Model\Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function prepareForCart()
     {
@@ -175,6 +179,7 @@ class Date extends \Magento\Catalog\Model\Product\Option\Type\DefaultType
      *
      * @param string $optionValue Prepared for cart option value
      * @return string
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function getFormattedOptionValue($optionValue)
     {
diff --git a/app/code/Magento/Catalog/Model/Product/Option/Type/DefaultType.php b/app/code/Magento/Catalog/Model/Product/Option/Type/DefaultType.php
index 2253851afab4f98b4999aac1bbea638de8b48d70..b573c37ee059e5bed70f7b232686dbfcdc5fe891 100644
--- a/app/code/Magento/Catalog/Model/Product/Option/Type/DefaultType.php
+++ b/app/code/Magento/Catalog/Model/Product/Option/Type/DefaultType.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Model\Product\Option\Type;
 
 use Magento\Framework\Model\Exception;
@@ -11,6 +14,7 @@ use Magento\Framework\Model\Exception;
  * Catalog product option default type
  *
  * @author     Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class DefaultType extends \Magento\Framework\Object
 {
@@ -134,7 +138,7 @@ class DefaultType extends \Magento\Framework\Object
         }
 
         // Back compatibility with quote specific keys to set configuration item options
-        if ($this->_getData('quote_item_option') instanceof \Magento\Sales\Model\Quote\Item\Option) {
+        if ($this->_getData('quote_item_option') instanceof \Magento\Quote\Model\Quote\Item\Option) {
             return $this->_getData('quote_item_option');
         }
 
@@ -157,7 +161,7 @@ class DefaultType extends \Magento\Framework\Object
         }
 
         // Back compatibility with quote specific keys to set configuration item
-        if ($this->_getData('quote_item') instanceof \Magento\Sales\Model\Quote\Item) {
+        if ($this->_getData('quote_item') instanceof \Magento\Quote\Model\Quote\Item) {
             return $this->_getData('quote_item');
         }
 
@@ -216,6 +220,7 @@ class DefaultType extends \Magento\Framework\Object
      * Check skip required option validation
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getSkipCheckRequiredOption()
     {
@@ -298,6 +303,7 @@ class DefaultType extends \Magento\Framework\Object
      * @param string $optionValue
      * @param array $productOptionValues Values for product option
      * @return string|null
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function parseOptionValue($optionValue, $productOptionValues)
     {
@@ -321,6 +327,7 @@ class DefaultType extends \Magento\Framework\Object
      * @param string $optionValue Prepared for cart option value
      * @param float $basePrice For percent price type
      * @return float
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function getOptionPrice($optionValue, $basePrice)
     {
@@ -335,6 +342,7 @@ class DefaultType extends \Magento\Framework\Object
      * @param string $optionValue Prepared for cart option value
      * @param string $skuDelimiter Delimiter for Sku parts
      * @return string
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function getOptionSku($optionValue, $skuDelimiter)
     {
diff --git a/app/code/Magento/Catalog/Model/Product/Option/Type/File.php b/app/code/Magento/Catalog/Model/Product/Option/Type/File.php
index 8f8337c88eb2e62debb1ce6d5f0502cd64d9f72a..2cf121a3aa25f113190302cc38b061240c10c939 100644
--- a/app/code/Magento/Catalog/Model/Product/Option/Type/File.php
+++ b/app/code/Magento/Catalog/Model/Product/Option/Type/File.php
@@ -12,6 +12,7 @@ use Magento\Framework\Model\Exception;
  * Catalog product option file type
  *
  * @author     Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class File extends \Magento\Catalog\Model\Product\Option\Type\DefaultType
 {
@@ -53,7 +54,7 @@ class File extends \Magento\Catalog\Model\Product\Option\Type\DefaultType
     /**
      * Item option factory
      *
-     * @var \Magento\Sales\Model\Quote\Item\OptionFactory
+     * @var \Magento\Quote\Model\Quote\Item\OptionFactory
      */
     protected $_itemOptionFactory;
 
@@ -70,7 +71,7 @@ class File extends \Magento\Catalog\Model\Product\Option\Type\DefaultType
     /**
      * @param \Magento\Checkout\Model\Session $checkoutSession
      * @param \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig
-     * @param \Magento\Sales\Model\Quote\Item\OptionFactory $itemOptionFactory
+     * @param \Magento\Quote\Model\Quote\Item\OptionFactory $itemOptionFactory
      * @param \Magento\Catalog\Model\Product\Option\UrlBuilder $urlBuilder
      * @param \Magento\Framework\Escaper $escaper
      * @param \Magento\Core\Helper\File\Storage\Database $coreFileStorageDatabase
@@ -82,7 +83,7 @@ class File extends \Magento\Catalog\Model\Product\Option\Type\DefaultType
     public function __construct(
         \Magento\Checkout\Model\Session $checkoutSession,
         \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig,
-        \Magento\Sales\Model\Quote\Item\OptionFactory $itemOptionFactory,
+        \Magento\Quote\Model\Quote\Item\OptionFactory $itemOptionFactory,
         \Magento\Core\Helper\File\Storage\Database $coreFileStorageDatabase,
         \Magento\Catalog\Model\Product\Option\Type\File\ValidatorInfo $validatorInfo,
         \Magento\Catalog\Model\Product\Option\Type\File\ValidatorFile $validatorFile,
@@ -179,6 +180,7 @@ class File extends \Magento\Catalog\Model\Product\Option\Type\DefaultType
      * @param array $values All product option values, i.e. array (option_id => mixed, option_id => mixed...)
      * @return $this
      * @throws Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function validateUserValue($values)
     {
diff --git a/app/code/Magento/Catalog/Model/Product/Option/Type/File/ValidatorFile.php b/app/code/Magento/Catalog/Model/Product/Option/Type/File/ValidatorFile.php
index 36b44f9dd09a7cbc85b8d6a784e16980f1e14ce4..e53f8fd846215788c6877b17390799f527150290 100644
--- a/app/code/Magento/Catalog/Model/Product/Option/Type/File/ValidatorFile.php
+++ b/app/code/Magento/Catalog/Model/Product/Option/Type/File/ValidatorFile.php
@@ -9,6 +9,9 @@ namespace Magento\Catalog\Model\Product\Option\Type\File;
 use Magento\Catalog\Model\Product;
 use Magento\Framework\App\Filesystem\DirectoryList;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class ValidatorFile extends Validator
 {
     /**
@@ -87,6 +90,7 @@ class ValidatorFile extends Validator
      * @return array
      * @throws \Magento\Framework\Model\Exception
      * @throws \Zend_File_Transfer_Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function validate($processingParams, $option)
     {
diff --git a/app/code/Magento/Catalog/Model/Product/Option/Validator/Select.php b/app/code/Magento/Catalog/Model/Product/Option/Validator/Select.php
index 62d311a008e01f71f4901a5f8e34c0c162c9f0cc..cc86a79f92b9b5cec917cceec493f9b7cb2a8a02 100644
--- a/app/code/Magento/Catalog/Model/Product/Option/Validator/Select.php
+++ b/app/code/Magento/Catalog/Model/Product/Option/Validator/Select.php
@@ -31,6 +31,8 @@ class Select extends DefaultValidator
      *
      * @param Option $option
      * @return bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function validateOptionValue(Option $option)
     {
diff --git a/app/code/Magento/Catalog/Model/Product/Option/Value.php b/app/code/Magento/Catalog/Model/Product/Option/Value.php
index 62a8ec0be92927e20074a4ffc1c4f2c69be8e64b..c4d59f564dbdb95034a15c11bc1fcb155dbb8f13 100644
--- a/app/code/Magento/Catalog/Model/Product/Option/Value.php
+++ b/app/code/Magento/Catalog/Model/Product/Option/Value.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Model\Product\Option;
 
 use Magento\Framework\Model\AbstractExtensibleModel;
diff --git a/app/code/Magento/Catalog/Model/Product/PriceModifier.php b/app/code/Magento/Catalog/Model/Product/PriceModifier.php
index a4b2cd7a6fca363f01e51bba6b7bebfe648f47df..56db5467cbe53959b691c05befeac43498e598c2 100644
--- a/app/code/Magento/Catalog/Model/Product/PriceModifier.php
+++ b/app/code/Magento/Catalog/Model/Product/PriceModifier.php
@@ -70,6 +70,7 @@ class PriceModifier
      * @throws \Magento\Framework\Exception\NoSuchEntityException
      * @throws \Magento\Framework\Exception\CouldNotSaveException
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function removeTierPrice(\Magento\Catalog\Model\Product $product, $customerGroupId, $qty, $websiteId)
     {
diff --git a/app/code/Magento/Catalog/Model/Product/TierPriceManagement.php b/app/code/Magento/Catalog/Model/Product/TierPriceManagement.php
index 6c39c1911ea2739b6e0ea4dd347f10fc6fac999f..acc29e26adb59125e24b31eac90fc5d5726f44c9 100644
--- a/app/code/Magento/Catalog/Model/Product/TierPriceManagement.php
+++ b/app/code/Magento/Catalog/Model/Product/TierPriceManagement.php
@@ -13,6 +13,9 @@ use Magento\Customer\Api\GroupRepositoryInterface;
 use Magento\Framework\Exception\CouldNotSaveException;
 use Magento\Framework\Exception\InputException;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class TierPriceManagement implements \Magento\Catalog\Api\ProductTierPriceManagementInterface
 {
     /**
diff --git a/app/code/Magento/Catalog/Model/Product/Type/AbstractType.php b/app/code/Magento/Catalog/Model/Product/Type/AbstractType.php
index be854dc14817ba20af9af9cb1a2c959cc98438b6..a3e7fcfc6c642ff13558e1a6d73d73627f88aa02 100644
--- a/app/code/Magento/Catalog/Model/Product/Type/AbstractType.php
+++ b/app/code/Magento/Catalog/Model/Product/Type/AbstractType.php
@@ -10,6 +10,10 @@ use Magento\Framework\App\Filesystem\DirectoryList;
 
 /**
  * Abstract model for product type implementation
+ * @SuppressWarnings(PHPMD.ExcessivePublicCount)
+ * @SuppressWarnings(PHPMD.TooManyFields)
+ * @SuppressWarnings(PHPMD.ExcessiveClassComplexity)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 abstract class AbstractType
 {
@@ -167,6 +171,7 @@ abstract class AbstractType
      * @param \Magento\Framework\Registry $coreRegistry
      * @param \Psr\Log\LoggerInterface $logger
      * @param ProductRepositoryInterface $productRepository
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Catalog\Model\Product\Option $catalogProductOption,
@@ -225,6 +230,7 @@ abstract class AbstractType
      * @param int $parentId
      * @param bool $required
      * @return array
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function getChildrenIds($parentId, $required = true)
     {
@@ -236,6 +242,7 @@ abstract class AbstractType
      *
      * @param int|array $childId
      * @return array
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function getParentIdsByChild($childId)
     {
@@ -319,6 +326,7 @@ abstract class AbstractType
      *
      * @param \Magento\Catalog\Model\Product $product
      * @return bool
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function isVirtual($product)
     {
@@ -349,6 +357,7 @@ abstract class AbstractType
      * @param  \Magento\Catalog\Model\Product $product
      * @param  string $processMode
      * @return array|string
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _prepareProduct(\Magento\Framework\Object $buyRequest, $product, $processMode)
     {
@@ -462,6 +471,8 @@ abstract class AbstractType
      *
      * @return $this
      * @throws \Magento\Framework\Model\Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function processFileQueue()
     {
@@ -714,6 +725,7 @@ abstract class AbstractType
      *
      * @param \Magento\Catalog\Model\Product $product
      * @return bool
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function isComposite($product)
     {
@@ -725,6 +737,7 @@ abstract class AbstractType
      *
      * @param \Magento\Catalog\Model\Product $product
      * @return bool
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function canConfigure($product)
     {
@@ -828,6 +841,7 @@ abstract class AbstractType
      * @param \Magento\Catalog\Model\Product $product
      *
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function updateQtyOption($options, \Magento\Framework\Object $option, $value, $product)
     {
@@ -880,6 +894,8 @@ abstract class AbstractType
      *
      * @param \Magento\Catalog\Model\Product $product
      * @return boolean false
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getForceChildItemQtyChanges($product)
     {
@@ -892,6 +908,7 @@ abstract class AbstractType
      * @param int|float $qty
      * @param \Magento\Catalog\Model\Product $product
      * @return float
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function prepareQuoteItemQty($qty, $product)
     {
@@ -903,7 +920,7 @@ abstract class AbstractType
      * For example if product which was added to option already removed from catalog.
      *
      * @param \Magento\Catalog\Model\Product $optionProduct
-     * @param \Magento\Sales\Model\Quote\Item\Option $option
+     * @param \Magento\Quote\Model\Quote\Item\Option $option
      * @param \Magento\Catalog\Model\Product $product
      * @return $this
      */
@@ -975,6 +992,7 @@ abstract class AbstractType
      * @param  \Magento\Catalog\Model\Product $product
      * @param  \Magento\Framework\Object $buyRequest
      * @return array
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function processBuyRequest($product, $buyRequest)
     {
@@ -1028,6 +1046,7 @@ abstract class AbstractType
      *
      * @param \Magento\Catalog\Model\Product $product
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function setImageFromChildProduct(\Magento\Catalog\Model\Product $product)
     {
@@ -1039,6 +1058,7 @@ abstract class AbstractType
      *
      * @param \Magento\Catalog\Model\Product $product
      * @return array
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function getIdentities(\Magento\Catalog\Model\Product $product)
     {
@@ -1048,6 +1068,7 @@ abstract class AbstractType
     /**
      * @param \Magento\Catalog\Model\Product\Type\AbstractType $product
      * @return array
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function getAssociatedProducts($product)
     {
diff --git a/app/code/Magento/Catalog/Model/Product/Type/Price.php b/app/code/Magento/Catalog/Model/Product/Type/Price.php
index 0e16080c1fe0c25a6c98c564e7ba48d84b16eb8e..43d0e981d6e45e2b0cda05c4ee5d91b2b82cc79e 100644
--- a/app/code/Magento/Catalog/Model/Product/Type/Price.php
+++ b/app/code/Magento/Catalog/Model/Product/Type/Price.php
@@ -157,6 +157,7 @@ class Price
      * @param Product $childProduct
      * @param float $childProductQty
      * @return float
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function getChildFinalPrice($product, $productQty, $childProduct, $childProductQty)
     {
@@ -243,6 +244,8 @@ class Price
      * @param   Product $product
      * @return  float|array
      * @deprecated (MAGETWO-31465)
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function getTierPrice($qty, $product)
     {
@@ -410,6 +413,7 @@ class Price
      * @param float $finalPrice
      * @return float
      * @deprecated (MAGETWO-31469)
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     protected function _applyOptionsPrice($product, $qty, $finalPrice)
     {
diff --git a/app/code/Magento/Catalog/Model/Product/TypeTransitionManager.php b/app/code/Magento/Catalog/Model/Product/TypeTransitionManager.php
index f20d51159554ec9249c35fd18368d02a2a3fb93c..99dd6a233fa65cb5ef2e531d09d8bb742ec938d9 100644
--- a/app/code/Magento/Catalog/Model/Product/TypeTransitionManager.php
+++ b/app/code/Magento/Catalog/Model/Product/TypeTransitionManager.php
@@ -5,6 +5,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Model\Product;
 
 use Magento\Catalog\Model\Product;
diff --git a/app/code/Magento/Catalog/Model/Product/Url.php b/app/code/Magento/Catalog/Model/Product/Url.php
index 2a3daf72a1dea2d9f3accad25bdfab598970f01a..819232c0725978042acbfc97257a5708a49f81cd 100644
--- a/app/code/Magento/Catalog/Model/Product/Url.php
+++ b/app/code/Magento/Catalog/Model/Product/Url.php
@@ -158,6 +158,8 @@ class Url extends \Magento\Framework\Object
      * @param \Magento\Catalog\Model\Product $product
      * @param array $params
      * @return string
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function getUrl(\Magento\Catalog\Model\Product $product, $params = [])
     {
diff --git a/app/code/Magento/Catalog/Model/Product/Validator.php b/app/code/Magento/Catalog/Model/Product/Validator.php
index 0682a820cfd0c33efe69c1a26f2d48039ee2f44f..00bd85a34d45d272fb687704862b09b94fec650b 100644
--- a/app/code/Magento/Catalog/Model/Product/Validator.php
+++ b/app/code/Magento/Catalog/Model/Product/Validator.php
@@ -18,6 +18,7 @@ class Validator
      * @param RequestInterface $request
      * @param \Magento\Framework\Object $response
      * @return array
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function validate(Product $product, RequestInterface $request, \Magento\Framework\Object $response)
     {
diff --git a/app/code/Magento/Catalog/Model/Product/Website.php b/app/code/Magento/Catalog/Model/Product/Website.php
index a4e4f460f3bee5a04b448d23923ee3ff349d011a..a375c114f96af62cb812068c18e8950eb874aafe 100644
--- a/app/code/Magento/Catalog/Model/Product/Website.php
+++ b/app/code/Magento/Catalog/Model/Product/Website.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Catalog Product Website Model
  *
diff --git a/app/code/Magento/Catalog/Model/ProductRepository.php b/app/code/Magento/Catalog/Model/ProductRepository.php
index e455e62d77cf2bc1f4b658197af171a6a5a21de7..4a205ae8920f5a00fb1e0a3aad9de3dc09ff5151 100644
--- a/app/code/Magento/Catalog/Model/ProductRepository.php
+++ b/app/code/Magento/Catalog/Model/ProductRepository.php
@@ -11,6 +11,9 @@ use Magento\Framework\Api\SearchCriteriaInterface;
 use Magento\Framework\Api\SortOrder;
 use Magento\Framework\Exception\NoSuchEntityException;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class ProductRepository implements \Magento\Catalog\Api\ProductRepositoryInterface
 {
     /**
diff --git a/app/code/Magento/Catalog/Model/Resource/AbstractResource.php b/app/code/Magento/Catalog/Model/Resource/AbstractResource.php
index 8f42ca82efca7f3b19bd5d60a7f9672bb517146b..4a62d1cfc8f2a2d3f106bd8502c6ec94553d9046 100644
--- a/app/code/Magento/Catalog/Model/Resource/AbstractResource.php
+++ b/app/code/Magento/Catalog/Model/Resource/AbstractResource.php
@@ -3,12 +3,16 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Model\Resource;
 
 use Magento\Eav\Model\Entity\Attribute\AbstractAttribute;
 
 /**
  * Catalog entity abstract model
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 abstract class AbstractResource extends \Magento\Eav\Model\Entity\AbstractEntity
 {
@@ -257,7 +261,6 @@ abstract class AbstractResource extends \Magento\Eav\Model\Entity\AbstractEntity
 
         $data = new \Magento\Framework\Object(
             [
-                'entity_type_id' => $attribute->getEntityTypeId(),
                 'attribute_id' => $attribute->getAttributeId(),
                 'store_id' => $storeId,
                 'entity_id' => $object->getEntityId(),
@@ -311,7 +314,6 @@ abstract class AbstractResource extends \Magento\Eav\Model\Entity\AbstractEntity
 
                 $select = $this->_getReadAdapter()->select()
                     ->from($table)
-                    ->where('entity_type_id = ?', $attribute->getEntityTypeId())
                     ->where('attribute_id = ?', $attribute->getAttributeId())
                     ->where('store_id = ?', $this->getDefaultStoreId())
                     ->where('entity_id = ?', $object->getEntityId());
@@ -320,7 +322,6 @@ abstract class AbstractResource extends \Magento\Eav\Model\Entity\AbstractEntity
                 if (!$row) {
                     $data = new \Magento\Framework\Object(
                         [
-                            'entity_type_id' => $attribute->getEntityTypeId(),
                             'attribute_id' => $attribute->getAttributeId(),
                             'store_id' => $this->getDefaultStoreId(),
                             'entity_id' => $object->getEntityId(),
@@ -366,12 +367,10 @@ abstract class AbstractResource extends \Magento\Eav\Model\Entity\AbstractEntity
         $entityIdField = $attribute->getBackend()->getEntityIdField();
         $select = $adapter->select()
             ->from($table, 'value_id')
-            ->where('entity_type_id = :entity_type_id')
             ->where("$entityIdField = :entity_field_id")
             ->where('store_id = :store_id')
             ->where('attribute_id = :attribute_id');
         $bind = [
-            'entity_type_id' => $object->getEntityTypeId(),
             'entity_field_id' => $object->getId(),
             'store_id' => $storeId,
             'attribute_id' => $attribute->getId(),
@@ -388,7 +387,6 @@ abstract class AbstractResource extends \Magento\Eav\Model\Entity\AbstractEntity
         } else {
             $bind = [
                 $entityIdField => (int) $object->getId(),
-                'entity_type_id' => (int) $object->getEntityTypeId(),
                 'attribute_id' => (int) $attribute->getId(),
                 'value' => $this->_prepareValueForSave($value, $attribute),
                 'store_id' => (int) $storeId,
@@ -439,7 +437,6 @@ abstract class AbstractResource extends \Magento\Eav\Model\Entity\AbstractEntity
 
         $condition = [
             $entityIdField . ' = ?' => $object->getId(),
-            'entity_type_id = ?' => $object->getEntityTypeId(),
         ];
 
         /**
@@ -532,6 +529,9 @@ abstract class AbstractResource extends \Magento\Eav\Model\Entity\AbstractEntity
      * @param int|string|array $attribute atrribute's ids or codes
      * @param int|\Magento\Store\Model\Store $store
      * @return bool|string|array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public function getAttributeRawValue($entityId, $attribute, $store)
     {
@@ -595,11 +595,10 @@ abstract class AbstractResource extends \Magento\Eav\Model\Entity\AbstractEntity
                 $select = $adapter->select()
                     ->from(['default_value' => $table], ['attribute_id'])
                     ->where('default_value.attribute_id IN (?)', array_keys($_attributes))
-                    ->where('default_value.entity_type_id = :entity_type_id')
                     ->where('default_value.entity_id = :entity_id')
                     ->where('default_value.store_id = ?', 0);
 
-                $bind = ['entity_type_id' => $this->getTypeId(), 'entity_id' => $entityId];
+                $bind = ['entity_id' => $entityId];
 
                 if ($store != $this->getDefaultStoreId()) {
                     $valueExpr = $adapter->getCheckSql(
@@ -609,7 +608,6 @@ abstract class AbstractResource extends \Magento\Eav\Model\Entity\AbstractEntity
                     );
                     $joinCondition = [
                         $adapter->quoteInto('store_value.attribute_id IN (?)', array_keys($_attributes)),
-                        'store_value.entity_type_id = :entity_type_id',
                         'store_value.entity_id = :entity_id',
                         'store_value.store_id = :store_id',
                     ];
diff --git a/app/code/Magento/Catalog/Model/Resource/Attribute.php b/app/code/Magento/Catalog/Model/Resource/Attribute.php
index 60d3c2cfe1ea6d7c7540d7e456ced39d1428f835..26ca2463c968dfa6a9d3e3051ac012fc37786a7e 100644
--- a/app/code/Magento/Catalog/Model/Resource/Attribute.php
+++ b/app/code/Magento/Catalog/Model/Resource/Attribute.php
@@ -89,7 +89,6 @@ class Attribute extends \Magento\Eav\Model\Resource\Entity\Attribute
             $attributeStoreIds = array_keys($this->_storeManager->getStores());
             if (!empty($attributeStoreIds)) {
                 $delCondition = [
-                    'entity_type_id=?' => $object->getEntityTypeId(),
                     'attribute_id = ?' => $object->getId(),
                     'store_id IN(?)' => $attributeStoreIds,
                 ];
@@ -146,7 +145,6 @@ class Attribute extends \Magento\Eav\Model\Resource\Entity\Attribute
                 );
 
                 $clearCondition = [
-                    'entity_type_id =?' => $attribute->getEntityTypeId(),
                     'attribute_id =?' => $attribute->getId(),
                     'entity_id IN (?)' => $select,
                 ];
diff --git a/app/code/Magento/Catalog/Model/Resource/Category.php b/app/code/Magento/Catalog/Model/Resource/Category.php
index d572d172925984f1d71cf1913eaf9d6826af71a8..d5c541c7cca51ddc17dfef8945b6eedafdefd327 100644
--- a/app/code/Magento/Catalog/Model/Resource/Category.php
+++ b/app/code/Magento/Catalog/Model/Resource/Category.php
@@ -11,6 +11,9 @@
  */
 namespace Magento\Catalog\Model\Resource;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class Category extends AbstractResource
 {
     /**
@@ -326,6 +329,8 @@ class Category extends AbstractResource
      *
      * @param \Magento\Catalog\Model\Category $category
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _saveCategoryProducts($category)
     {
diff --git a/app/code/Magento/Catalog/Model/Resource/Category/Collection.php b/app/code/Magento/Catalog/Model/Resource/Category/Collection.php
index a0841974d95abb7951f3ffa7a23f723bbd06f327..75efc53ebe0a71c8c58f3a2889eb4ad90ab28bb8 100644
--- a/app/code/Magento/Catalog/Model/Resource/Category/Collection.php
+++ b/app/code/Magento/Catalog/Model/Resource/Category/Collection.php
@@ -201,6 +201,8 @@ class Collection extends \Magento\Catalog\Model\Resource\Collection\AbstractColl
      * @param boolean $countRegular get product count for regular (non-anchor) categories
      * @param boolean $countAnchor get product count for anchor categories
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function loadProductCount($items, $countRegular = true, $countAnchor = true)
     {
diff --git a/app/code/Magento/Catalog/Model/Resource/Category/Tree.php b/app/code/Magento/Catalog/Model/Resource/Category/Tree.php
index 9022084a49f316e7df93798f2caf13e5d66a52ca..bbd46711f99c340cfe661a48c372c837f96266cd 100644
--- a/app/code/Magento/Catalog/Model/Resource/Category/Tree.php
+++ b/app/code/Magento/Catalog/Model/Resource/Category/Tree.php
@@ -5,6 +5,9 @@
  */
 namespace Magento\Catalog\Model\Resource\Category;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class Tree extends \Magento\Framework\Data\Tree\Dbp
 {
     const ID_FIELD = 'id';
@@ -157,6 +160,8 @@ class Tree extends \Magento\Framework\Data\Tree\Dbp
      * @param boolean $toLoad
      * @param boolean $onlyActive
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function addCollectionData(
         $collection = null,
@@ -324,6 +329,7 @@ class Tree extends \Magento\Framework\Data\Tree\Dbp
      *
      * @param int $id
      * @return boolean
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     protected function _getItemIsActive($id)
     {
@@ -437,6 +443,8 @@ class Tree extends \Magento\Framework\Data\Tree\Dbp
      * @param bool $addCollectionData
      * @param bool $updateAnchorProductCount
      * @return $this|bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function loadByIds($ids, $addCollectionData = true, $updateAnchorProductCount = true)
     {
diff --git a/app/code/Magento/Catalog/Model/Resource/Collection/AbstractCollection.php b/app/code/Magento/Catalog/Model/Resource/Collection/AbstractCollection.php
index 21a5813488c5771387c0d48c2540714521702c34..899d2a419ede97ae1640b1b534f87fd8c599beb7 100644
--- a/app/code/Magento/Catalog/Model/Resource/Collection/AbstractCollection.php
+++ b/app/code/Magento/Catalog/Model/Resource/Collection/AbstractCollection.php
@@ -133,39 +133,48 @@ class AbstractCollection extends \Magento\Eav\Model\Entity\Collection\AbstractCo
             $attributeIds = $this->_selectAttributes;
         }
         $storeId = $this->getStoreId();
+        $adapter = $this->getConnection();
+        $entityIdField = $this->getEntity()->getEntityIdField();
 
         if ($storeId) {
-            $adapter = $this->getConnection();
-            $entityIdField = $this->getEntity()->getEntityIdField();
             $joinCondition = [
                 't_s.attribute_id = t_d.attribute_id',
                 't_s.entity_id = t_d.entity_id',
                 $adapter->quoteInto('t_s.store_id = ?', $storeId),
             ];
+
             $select = $adapter->select()->from(
                 ['t_d' => $table],
                 [$entityIdField, 'attribute_id']
-            )->joinLeft(
-                ['t_s' => $table],
-                implode(' AND ', $joinCondition),
-                []
-            )->where(
-                't_d.entity_type_id = ?',
-                $this->getEntity()->getTypeId()
             )->where(
                 "t_d.{$entityIdField} IN (?)",
                 array_keys($this->_itemsById)
             )->where(
                 't_d.attribute_id IN (?)',
                 $attributeIds
+            )->joinLeft(
+                ['t_s' => $table],
+                implode(' AND ', $joinCondition),
+                []
             )->where(
                 't_d.store_id = ?',
                 $adapter->getIfNullSql('t_s.store_id', \Magento\Store\Model\Store::DEFAULT_STORE_ID)
             );
         } else {
-            $select = parent::_getLoadAttributesSelect($table)->where('store_id = ?', $this->getDefaultStoreId());
+            $select = $adapter->select()->from(
+                $table,
+                [$entityIdField, 'attribute_id']
+            )->where(
+                "{$entityIdField} IN (?)",
+                array_keys($this->_itemsById)
+            )->where(
+                'attribute_id IN (?)',
+                $attributeIds
+            )->where(
+                'store_id = ?',
+                $this->getDefaultStoreId()
+            );
         }
-
         return $select;
     }
 
diff --git a/app/code/Magento/Catalog/Model/Resource/Eav/Attribute.php b/app/code/Magento/Catalog/Model/Resource/Eav/Attribute.php
index 4ac7d33d68c4258b83b454bd0a8efeb38fbea21d..9c60527a4a71e1f54c347a057dd9a8baab80a79b 100644
--- a/app/code/Magento/Catalog/Model/Resource/Eav/Attribute.php
+++ b/app/code/Magento/Catalog/Model/Resource/Eav/Attribute.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Model\Resource\Eav;
 
 use Magento\Catalog\Model\Attribute\LockValidatorInterface;
@@ -36,6 +39,7 @@ use Magento\Framework\Api\AttributeDataBuilder;
  * @method int setIsUsedForPromoRules(int $value)
  *
  * @author      Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Attribute extends \Magento\Eav\Model\Entity\Attribute implements
     \Magento\Catalog\Api\Data\ProductAttributeInterface
@@ -113,6 +117,7 @@ class Attribute extends \Magento\Eav\Model\Entity\Attribute implements
      * @param \Magento\Framework\Model\Resource\AbstractResource $resource
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
@@ -175,6 +180,7 @@ class Attribute extends \Magento\Eav\Model\Entity\Attribute implements
      *
      * @return \Magento\Framework\Model\AbstractModel
      * @throws \Magento\Framework\Model\Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function beforeSave()
     {
@@ -412,6 +418,7 @@ class Attribute extends \Magento\Eav\Model\Entity\Attribute implements
      * Check is an attribute used in EAV index
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function isIndexable()
     {
@@ -442,6 +449,7 @@ class Attribute extends \Magento\Eav\Model\Entity\Attribute implements
      * Is original attribute config indexable
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _isOriginalIndexable()
     {
diff --git a/app/code/Magento/Catalog/Model/Resource/Product.php b/app/code/Magento/Catalog/Model/Resource/Product.php
index c5d5a2edbc9757134ef12553f3eda5cd990c9aab..814f9e6ec81e9c7607fe2057d0f3f9b0d3dc598b 100644
--- a/app/code/Magento/Catalog/Model/Resource/Product.php
+++ b/app/code/Magento/Catalog/Model/Resource/Product.php
@@ -9,6 +9,7 @@ namespace Magento\Catalog\Model\Resource;
  * Product entity resource model
  *
  * @SuppressWarnings(PHPMD.LongVariable)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Product extends AbstractResource
 {
@@ -117,7 +118,7 @@ class Product extends AbstractResource
      */
     protected function _getDefaultAttributes()
     {
-        return ['entity_id', 'entity_type_id', 'attribute_set_id', 'type_id', 'created_at', 'updated_at'];
+        return ['entity_id', 'attribute_set_id', 'type_id', 'created_at', 'updated_at'];
     }
 
     /**
@@ -311,6 +312,7 @@ class Product extends AbstractResource
      *
      * @param \Magento\Framework\Object $object
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _saveCategories(\Magento\Framework\Object $object)
     {
@@ -451,9 +453,7 @@ class Product extends AbstractResource
      */
     public function duplicate($oldId, $newId)
     {
-        $adapter = $this->_getWriteAdapter();
         $eavTables = ['datetime', 'decimal', 'int', 'text', 'varchar'];
-
         $adapter = $this->_getWriteAdapter();
 
         // duplicate EAV store values
@@ -463,7 +463,6 @@ class Product extends AbstractResource
             $select = $adapter->select()->from(
                 $tableName,
                 [
-                    'entity_type_id',
                     'attribute_id',
                     'store_id',
                     'entity_id' => new \Zend_Db_Expr($adapter->quote($newId)),
@@ -481,7 +480,7 @@ class Product extends AbstractResource
                 $adapter->insertFromSelect(
                     $select,
                     $tableName,
-                    ['entity_type_id', 'attribute_id', 'store_id', 'entity_id', 'value'],
+                    ['attribute_id', 'store_id', 'entity_id', 'value'],
                     \Magento\Framework\DB\Adapter\AdapterInterface::INSERT_ON_DUPLICATE
                 )
             );
diff --git a/app/code/Magento/Catalog/Model/Resource/Product/Attribute/Backend/Groupprice.php b/app/code/Magento/Catalog/Model/Resource/Product/Attribute/Backend/GroupPrice.php
similarity index 89%
rename from app/code/Magento/Catalog/Model/Resource/Product/Attribute/Backend/Groupprice.php
rename to app/code/Magento/Catalog/Model/Resource/Product/Attribute/Backend/GroupPrice.php
index 4956a71d9a479fb70884db685061f7bd0b521dc4..a7dc53782db16cfcc9aec6acbe9503111fac6aa7 100644
--- a/app/code/Magento/Catalog/Model/Resource/Product/Attribute/Backend/Groupprice.php
+++ b/app/code/Magento/Catalog/Model/Resource/Product/Attribute/Backend/GroupPrice.php
@@ -5,14 +5,14 @@
  */
 namespace Magento\Catalog\Model\Resource\Product\Attribute\Backend;
 
-use Magento\Catalog\Model\Resource\Product\Attribute\Backend\Groupprice\AbstractGroupprice;
+use Magento\Catalog\Model\Resource\Product\Attribute\Backend\GroupPrice\AbstractGroupPrice;
 
 /**
  * Catalog product group price backend attribute model
  *
  * @author      Magento Core Team <core@magentocommerce.com>
  */
-class Groupprice extends AbstractGroupprice
+class GroupPrice extends AbstractGroupPrice
 {
     /**
      * Initialize connection and define main table
diff --git a/app/code/Magento/Catalog/Model/Resource/Product/Attribute/Backend/Groupprice/AbstractGroupprice.php b/app/code/Magento/Catalog/Model/Resource/Product/Attribute/Backend/GroupPrice/AbstractGroupPrice.php
similarity index 97%
rename from app/code/Magento/Catalog/Model/Resource/Product/Attribute/Backend/Groupprice/AbstractGroupprice.php
rename to app/code/Magento/Catalog/Model/Resource/Product/Attribute/Backend/GroupPrice/AbstractGroupPrice.php
index 931145ca3b1a57bd94f8320768e42252d9afc9c8..6e40c6cdda251bcbead242e8e90ce119cd7f9641 100644
--- a/app/code/Magento/Catalog/Model/Resource/Product/Attribute/Backend/Groupprice/AbstractGroupprice.php
+++ b/app/code/Magento/Catalog/Model/Resource/Product/Attribute/Backend/GroupPrice/AbstractGroupPrice.php
@@ -9,9 +9,9 @@
  *
  * @author      Magento Core Team <core@magentocommerce.com>
  */
-namespace Magento\Catalog\Model\Resource\Product\Attribute\Backend\Groupprice;
+namespace Magento\Catalog\Model\Resource\Product\Attribute\Backend\GroupPrice;
 
-abstract class AbstractGroupprice extends \Magento\Framework\Model\Resource\Db\AbstractDb
+abstract class AbstractGroupPrice extends \Magento\Framework\Model\Resource\Db\AbstractDb
 {
     /**
      * Load Tier Prices for product
diff --git a/app/code/Magento/Catalog/Model/Resource/Product/Attribute/Backend/Media.php b/app/code/Magento/Catalog/Model/Resource/Product/Attribute/Backend/Media.php
index 624fabad0eeb968842ee7f9500d08c98affc8420..6fde77a376fbed7e911eee4128e6094860ee201e 100644
--- a/app/code/Magento/Catalog/Model/Resource/Product/Attribute/Backend/Media.php
+++ b/app/code/Magento/Catalog/Model/Resource/Product/Attribute/Backend/Media.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Model\Resource\Product\Attribute\Backend;
 
 /**
diff --git a/app/code/Magento/Catalog/Model/Resource/Product/Attribute/Backend/Tierprice.php b/app/code/Magento/Catalog/Model/Resource/Product/Attribute/Backend/Tierprice.php
index f2b9048dc822e7dc7519fb933b737539f3642ad8..d960aa0c0a24fd4d0fb6e065e2270399995a862c 100644
--- a/app/code/Magento/Catalog/Model/Resource/Product/Attribute/Backend/Tierprice.php
+++ b/app/code/Magento/Catalog/Model/Resource/Product/Attribute/Backend/Tierprice.php
@@ -5,14 +5,14 @@
  */
 namespace Magento\Catalog\Model\Resource\Product\Attribute\Backend;
 
-use Magento\Catalog\Model\Resource\Product\Attribute\Backend\Groupprice\AbstractGroupprice;
+use Magento\Catalog\Model\Resource\Product\Attribute\Backend\GroupPrice\AbstractGroupPrice;
 
 /**
  * Catalog product tier price backend attribute model
  *
  * @author      Magento Core Team <core@magentocommerce.com>
  */
-class Tierprice extends AbstractGroupprice
+class Tierprice extends AbstractGroupPrice
 {
     /**
      * Initialize connection and define main table
diff --git a/app/code/Magento/Catalog/Model/Resource/Product/Collection.php b/app/code/Magento/Catalog/Model/Resource/Product/Collection.php
index 178f39f62623b90023ee022273182b750afc6b5e..2d7139d4981841baf3bfb878ed08e0c63ba06ded 100644
--- a/app/code/Magento/Catalog/Model/Resource/Product/Collection.php
+++ b/app/code/Magento/Catalog/Model/Resource/Product/Collection.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Model\Resource\Product;
 
 use Magento\Catalog\Model\Product\Attribute\Source\Status as ProductStatus;
@@ -13,6 +16,11 @@ use Magento\Store\Model\Store;
 
 /**
  * Product collection
+ * @SuppressWarnings(PHPMD.ExcessivePublicCount)
+ * @SuppressWarnings(PHPMD.TooManyFields)
+ * @SuppressWarnings(PHPMD.ExcessiveClassComplexity)
+ * @SuppressWarnings(PHPMD.NumberOfChildren)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Collection extends \Magento\Catalog\Model\Resource\Collection\AbstractCollection
 {
@@ -1390,6 +1398,7 @@ class Collection extends \Magento\Catalog\Model\Resource\Collection\AbstractColl
      * @param array $condition
      * @param string $joinType
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function addAttributeToFilter($attribute, $condition = null, $joinType = 'inner')
     {
@@ -1529,6 +1538,8 @@ class Collection extends \Magento\Catalog\Model\Resource\Collection\AbstractColl
      * @param string $attribute
      * @param string $dir
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function addAttributeToSort($attribute, $dir = self::SORT_ORDER_ASC)
     {
@@ -1626,6 +1637,7 @@ class Collection extends \Magento\Catalog\Model\Resource\Collection\AbstractColl
      * Join website product limitation
      *
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _productLimitationJoinWebsite()
     {
@@ -1678,6 +1690,8 @@ class Collection extends \Magento\Catalog\Model\Resource\Collection\AbstractColl
      * Join additional (alternative) store visibility filter
      *
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _productLimitationJoinStore()
     {
@@ -1977,6 +1991,8 @@ class Collection extends \Magento\Catalog\Model\Resource\Collection\AbstractColl
      * Add tier price data to loaded items
      *
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function addTierPriceData()
     {
diff --git a/app/code/Magento/Catalog/Model/Resource/Product/Compare/Item/Collection.php b/app/code/Magento/Catalog/Model/Resource/Product/Compare/Item/Collection.php
index 6906d82753e4c30eb9a9fe6d78b7e92b957f1c81..c9a4fd6abfe36c20f307d0b76e56540d58542d22 100644
--- a/app/code/Magento/Catalog/Model/Resource/Product/Compare/Item/Collection.php
+++ b/app/code/Magento/Catalog/Model/Resource/Product/Compare/Item/Collection.php
@@ -10,6 +10,7 @@ namespace Magento\Catalog\Model\Resource\Product\Compare\Item;
  *
  * @author      Magento Core Team <core@magentocommerce.com>
  * @SuppressWarnings(PHPMD.LongVariable)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Collection extends \Magento\Catalog\Model\Resource\Product\Collection
 {
diff --git a/app/code/Magento/Catalog/Model/Resource/Product/Indexer/Price/DefaultPrice.php b/app/code/Magento/Catalog/Model/Resource/Product/Indexer/Price/DefaultPrice.php
index 3e6cf3db6816fc7b6570905dce98482bd0c49f1f..bc256d7ee3426b152a0babc4fa3258e1882fb9a8 100644
--- a/app/code/Magento/Catalog/Model/Resource/Product/Indexer/Price/DefaultPrice.php
+++ b/app/code/Magento/Catalog/Model/Resource/Product/Indexer/Price/DefaultPrice.php
@@ -110,6 +110,7 @@ class DefaultPrice extends \Magento\Catalog\Model\Resource\Product\Indexer\Abstr
      * Check product type is composite
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsComposite()
     {
@@ -203,6 +204,7 @@ class DefaultPrice extends \Magento\Catalog\Model\Resource\Product\Indexer\Abstr
      *
      * @param int|array $entityIds the entity ids limitation
      * @return $this
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _prepareFinalPriceData($entityIds = null)
     {
@@ -391,6 +393,7 @@ class DefaultPrice extends \Magento\Catalog\Model\Resource\Product\Indexer\Abstr
      * Apply custom option minimal and maximal price to temporary final price index table
      *
      * @return $this
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _applyCustomOption()
     {
@@ -641,6 +644,7 @@ class DefaultPrice extends \Magento\Catalog\Model\Resource\Product\Indexer\Abstr
      *
      * @param string $table
      * @return string
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function getIdxTable($table = null)
     {
diff --git a/app/code/Magento/Catalog/Model/Resource/Product/Link.php b/app/code/Magento/Catalog/Model/Resource/Product/Link.php
index be29863658c1925405a973c6ee2a2d1be400b31c..cb70baff0420b403b7dc18e0cbf992512120f86f 100644
--- a/app/code/Magento/Catalog/Model/Resource/Product/Link.php
+++ b/app/code/Magento/Catalog/Model/Resource/Product/Link.php
@@ -54,6 +54,7 @@ class Link extends \Magento\Framework\Model\Resource\Db\AbstractDb
      * @param array $data
      * @param int $typeId
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function saveProductLinks($product, $data, $typeId)
     {
diff --git a/app/code/Magento/Catalog/Model/Resource/Product/Option.php b/app/code/Magento/Catalog/Model/Resource/Product/Option.php
index 9f619df100c98db894bda545dfcc06553a4eb736..0150acf9b0e767b2f8ea551e8588538170290669 100644
--- a/app/code/Magento/Catalog/Model/Resource/Product/Option.php
+++ b/app/code/Magento/Catalog/Model/Resource/Product/Option.php
@@ -82,6 +82,8 @@ class Option extends \Magento\Framework\Model\Resource\Db\AbstractDb
      *
      * @param \Magento\Framework\Model\AbstractModel $object
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _saveValuePrices(\Magento\Framework\Model\AbstractModel $object)
     {
@@ -230,6 +232,7 @@ class Option extends \Magento\Framework\Model\Resource\Db\AbstractDb
      *
      * @param \Magento\Framework\Model\AbstractModel $object
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _saveValueTitles(\Magento\Framework\Model\AbstractModel $object)
     {
diff --git a/app/code/Magento/Catalog/Model/Resource/Product/Option/Value.php b/app/code/Magento/Catalog/Model/Resource/Product/Option/Value.php
index 8fda510c49d0246696644ce6ac3b9fd164cf03b3..89ecd99e7b368f5b467f9b3ad4a802ba2097449a 100644
--- a/app/code/Magento/Catalog/Model/Resource/Product/Option/Value.php
+++ b/app/code/Magento/Catalog/Model/Resource/Product/Option/Value.php
@@ -83,6 +83,8 @@ class Value extends \Magento\Framework\Model\Resource\Db\AbstractDb
      *
      * @param \Magento\Framework\Model\AbstractModel $object
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _saveValuePrices(\Magento\Framework\Model\AbstractModel $object)
     {
@@ -209,6 +211,7 @@ class Value extends \Magento\Framework\Model\Resource\Db\AbstractDb
      *
      * @param \Magento\Framework\Model\AbstractModel $object
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _saveValueTitles(\Magento\Framework\Model\AbstractModel $object)
     {
diff --git a/app/code/Magento/Catalog/Model/Resource/Product/Option/Value/Collection.php b/app/code/Magento/Catalog/Model/Resource/Product/Option/Value/Collection.php
index b1d0149833626678022a95effc0335a742351d33..8f2b9c316a478b01beea39f6fb9297321a8cd6ca 100644
--- a/app/code/Magento/Catalog/Model/Resource/Product/Option/Value/Collection.php
+++ b/app/code/Magento/Catalog/Model/Resource/Product/Option/Value/Collection.php
@@ -188,6 +188,7 @@ class Collection extends \Magento\Framework\Model\Resource\Db\Collection\Abstrac
      * @param array $optionIds
      * @param int $storeId
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function getValuesByOption($optionIds, $storeId = null)
     {
diff --git a/app/code/Magento/Catalog/Model/Resource/Setup.php b/app/code/Magento/Catalog/Model/Resource/Setup.php
index e4db5c7c3b94128211a02b3bf9ed24a731997d2e..1b9a020792dc1af4942749ae1357ccda747cbcb9 100644
--- a/app/code/Magento/Catalog/Model/Resource/Setup.php
+++ b/app/code/Magento/Catalog/Model/Resource/Setup.php
@@ -71,6 +71,7 @@ class Setup extends \Magento\Eav\Model\Entity\Setup
      * Default entites and attributes
      *
      * @return array
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public function getDefaultEntities()
     {
@@ -561,7 +562,7 @@ class Setup extends \Magento\Eav\Model\Entity\Setup
                         'type' => 'decimal',
                         'label' => 'Group Price',
                         'input' => 'text',
-                        'backend' => 'Magento\Catalog\Model\Product\Attribute\Backend\Groupprice',
+                        'backend' => 'Magento\Catalog\Model\Product\Attribute\Backend\GroupPrice',
                         'required' => false,
                         'sort_order' => 2,
                         'global' => \Magento\Catalog\Model\Resource\Eav\Attribute::SCOPE_WEBSITE,
diff --git a/app/code/Magento/Catalog/Model/Resource/Url.php b/app/code/Magento/Catalog/Model/Resource/Url.php
index e8465ef90f37b291b02f3fcaef8e6f8bc2daaa96..b41e752056677d3461ae5f2778555779fd9faebf 100644
--- a/app/code/Magento/Catalog/Model/Resource/Url.php
+++ b/app/code/Magento/Catalog/Model/Resource/Url.php
@@ -363,6 +363,8 @@ class Url extends \Magento\Framework\Model\Resource\Db\AbstractDb
      * @param int $storeId
      * @param string $path
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _getCategories($categoryIds, $storeId = null, $path = null)
     {
diff --git a/app/code/Magento/Catalog/Model/System/Config/Backend/Catalog/Url/Rewrite/Suffix.php b/app/code/Magento/Catalog/Model/System/Config/Backend/Catalog/Url/Rewrite/Suffix.php
index e01e5172c2d57c9b48a6af829b0d0e9d9d48e9f4..c9054ef4160d0d8d2f7f0f91af0982ccf6e2fa19 100644
--- a/app/code/Magento/Catalog/Model/System/Config/Backend/Catalog/Url/Rewrite/Suffix.php
+++ b/app/code/Magento/Catalog/Model/System/Config/Backend/Catalog/Url/Rewrite/Suffix.php
@@ -18,6 +18,9 @@ use Magento\Store\Model\ScopeInterface;
 use Magento\UrlRewrite\Model\Storage\DbStorage;
 use Magento\UrlRewrite\Service\V1\Data\UrlRewrite;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class Suffix extends \Magento\Framework\App\Config\Value
 {
     /** @var \Magento\UrlRewrite\Helper\UrlRewrite */
@@ -43,6 +46,7 @@ class Suffix extends \Magento\Framework\App\Config\Value
      * @param \Magento\Framework\App\Resource $appResource
      * @param \Magento\UrlRewrite\Model\UrlFinderInterface $urlFinder
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
diff --git a/app/code/Magento/Catalog/Model/Template/Filter.php b/app/code/Magento/Catalog/Model/Template/Filter.php
index 624ff99b3a6033b8dcc2f72840ba94b9b816895f..93376946e09d1c98bbae3268581904817b4903ad 100644
--- a/app/code/Magento/Catalog/Model/Template/Filter.php
+++ b/app/code/Magento/Catalog/Model/Template/Filter.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Catalog Template Filter Model
  *
diff --git a/app/code/Magento/Catalog/Model/Template/Filter/Factory.php b/app/code/Magento/Catalog/Model/Template/Filter/Factory.php
index f8b43b2baedecb2578098019712979af1f15713f..2ec6eee9de6699f1a4071f073da06c0ac691ea6b 100644
--- a/app/code/Magento/Catalog/Model/Template/Filter/Factory.php
+++ b/app/code/Magento/Catalog/Model/Template/Filter/Factory.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Template filter factory
  */
diff --git a/app/code/Magento/Catalog/Pricing/Price/TierPrice.php b/app/code/Magento/Catalog/Pricing/Price/TierPrice.php
index b20a1e2cc9ea4eff3c9769c5a924a4ce06a6253c..726d3d05e60f1bd5219b37f1b92cf031bb8da121 100644
--- a/app/code/Magento/Catalog/Pricing/Price/TierPrice.php
+++ b/app/code/Magento/Catalog/Pricing/Price/TierPrice.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Pricing\Price;
 
 use Magento\Catalog\Model\Product;
@@ -250,6 +252,7 @@ class TierPrice extends AbstractPrice implements TierPriceInterface, BasePricePr
      * Get clear tier price list stored in DB
      *
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function getStoredTierPrices()
     {
diff --git a/app/code/Magento/Catalog/Pricing/Render/PriceBox.php b/app/code/Magento/Catalog/Pricing/Render/PriceBox.php
index 69d24581c647db1d75c5b9fbe736285ecd797d04..5f0dfcba1714934b988b2713f6874feb17469cfe 100644
--- a/app/code/Magento/Catalog/Pricing/Render/PriceBox.php
+++ b/app/code/Magento/Catalog/Pricing/Render/PriceBox.php
@@ -39,6 +39,7 @@ class PriceBox extends PriceBoxRender
      * @param Data $coreDataHelper
      * @param Random $mathRandom
      * @param array $data
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function __construct(
         Context $context,
@@ -84,6 +85,7 @@ class PriceBox extends PriceBoxRender
      *
      * @param Product $product
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getCanDisplayQty(Product $product)
     {
diff --git a/app/code/Magento/Catalog/composer.json b/app/code/Magento/Catalog/composer.json
index 360e14b27de534cbac48ad4612eb8535bfbb0950..c29886f7d6dc66200347729ca3d2c869dce2bb83 100644
--- a/app/code/Magento/Catalog/composer.json
+++ b/app/code/Magento/Catalog/composer.json
@@ -3,33 +3,33 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-eav": "0.42.0-beta3",
-        "magento/module-cms": "0.42.0-beta3",
-        "magento/module-indexer": "0.42.0-beta3",
-        "magento/module-customer": "0.42.0-beta3",
-        "magento/module-core": "0.42.0-beta3",
-        "magento/module-theme": "0.42.0-beta3",
-        "magento/module-checkout": "0.42.0-beta3",
-        "magento/module-log": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/module-widget": "0.42.0-beta3",
-        "magento/module-wishlist": "0.42.0-beta3",
-        "magento/module-tax": "0.42.0-beta3",
-        "magento/module-msrp": "0.42.0-beta3",
-        "magento/module-catalog-inventory": "0.42.0-beta3",
-        "magento/module-directory": "0.42.0-beta3",
-        "magento/module-catalog-rule": "0.42.0-beta3",
-        "magento/module-sales": "0.42.0-beta3",
-        "magento/module-product-alert": "0.42.0-beta3",
-        "magento/module-url-rewrite": "0.42.0-beta3",
-        "magento/module-catalog-url-rewrite": "0.42.0-beta3",
-        "magento/module-page-cache": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-eav": "0.42.0-beta4",
+        "magento/module-cms": "0.42.0-beta4",
+        "magento/module-indexer": "0.42.0-beta4",
+        "magento/module-customer": "0.42.0-beta4",
+        "magento/module-core": "0.42.0-beta4",
+        "magento/module-theme": "0.42.0-beta4",
+        "magento/module-checkout": "0.42.0-beta4",
+        "magento/module-log": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/module-widget": "0.42.0-beta4",
+        "magento/module-wishlist": "0.42.0-beta4",
+        "magento/module-tax": "0.42.0-beta4",
+        "magento/module-msrp": "0.42.0-beta4",
+        "magento/module-catalog-inventory": "0.42.0-beta4",
+        "magento/module-directory": "0.42.0-beta4",
+        "magento/module-catalog-rule": "0.42.0-beta4",
+        "magento/module-product-alert": "0.42.0-beta4",
+        "magento/module-url-rewrite": "0.42.0-beta4",
+        "magento/module-catalog-url-rewrite": "0.42.0-beta4",
+        "magento/module-page-cache": "0.42.0-beta4",
+        "magento/module-quote": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/Catalog/data/catalog_setup/data-install-2.0.0.php b/app/code/Magento/Catalog/data/catalog_setup/data-install-2.0.0.php
index 853bb4224961ae11f45a9cc8d2a19f4c5b57e049..1472110e5fd24e38ba625348f88e0bf4dbd011b2 100644
--- a/app/code/Magento/Catalog/data/catalog_setup/data-install-2.0.0.php
+++ b/app/code/Magento/Catalog/data/catalog_setup/data-install-2.0.0.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var $installer \Magento\Catalog\Model\Resource\Setup */
 $installer = $this;
 $installer->installEntities();
diff --git a/app/code/Magento/Catalog/etc/frontend/di.xml b/app/code/Magento/Catalog/etc/frontend/di.xml
index b81588d0d212b44c2e4cf57bea2e802e1e2ce17a..5e9f8ba4d951c4a7aaba1aa6d9cff8fc12547d25 100644
--- a/app/code/Magento/Catalog/etc/frontend/di.xml
+++ b/app/code/Magento/Catalog/etc/frontend/di.xml
@@ -11,7 +11,7 @@
             <argument name="fetchStrategy" xsi:type="object">Magento\Framework\Data\Collection\Db\FetchStrategy\Cache</argument>
         </arguments>
     </type>
-    <type name="Magento\Sales\Model\Convert\Quote">
+    <type name="Magento\Quote\Model\Quote\Item\ToOrderItem">
         <plugin name="copy_quote_files_to_order" type="Magento\Catalog\Model\Plugin\QuoteItemProductOption"/>
     </type>
     <type name="Magento\Catalog\Model\Indexer\AbstractFlatState">
diff --git a/app/code/Magento/Catalog/etc/module.xml b/app/code/Magento/Catalog/etc/module.xml
index 3b389f1042a37fe2694ed4e0946dd2e03a841f50..7670d169b3aff1682bff914bf9b915f2bf641eac 100644
--- a/app/code/Magento/Catalog/etc/module.xml
+++ b/app/code/Magento/Catalog/etc/module.xml
@@ -6,7 +6,7 @@
  */
 -->
 <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../lib/internal/Magento/Framework/Module/etc/module.xsd">
-    <module name="Magento_Catalog" schema_version="2.0.0">
+    <module name="Magento_Catalog" schema_version="2.0.0.1">
         <sequence>
             <module name="Magento_Eav"/>
             <module name="Magento_Cms"/>
diff --git a/app/code/Magento/Catalog/sql/catalog_setup/upgrade-2.0.0-2.0.0.1.php b/app/code/Magento/Catalog/sql/catalog_setup/upgrade-2.0.0-2.0.0.1.php
new file mode 100644
index 0000000000000000000000000000000000000000..05001117bb949e51662ba3fdee90a7042b52fbbb
--- /dev/null
+++ b/app/code/Magento/Catalog/sql/catalog_setup/upgrade-2.0.0-2.0.0.1.php
@@ -0,0 +1,35 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+
+/* @var $installer \Magento\Catalog\Model\Resource\Setup */
+$installer = $this;
+
+$installer->startSetup();
+
+$connection = $installer->getConnection();
+$connection->dropForeignKey(
+    $installer->getTable('catalog_product_entity'),
+    'FK_CAT_PRD_ENTT_ENTT_TYPE_ID_EAV_ENTT_TYPE_ENTT_TYPE_ID'
+);
+
+//Drop entity_type_id column for catalog product entities
+$connection->dropColumn($installer->getTable('catalog_product_entity'), 'entity_type_id');
+$connection->dropColumn($installer->getTable('catalog_product_entity_datetime'), 'entity_type_id');
+$connection->dropColumn($installer->getTable('catalog_product_entity_decimal'), 'entity_type_id');
+$connection->dropColumn($installer->getTable('catalog_product_entity_gallery'), 'entity_type_id');
+$connection->dropColumn($installer->getTable('catalog_product_entity_int'), 'entity_type_id');
+$connection->dropColumn($installer->getTable('catalog_product_entity_text'), 'entity_type_id');
+$connection->dropColumn($installer->getTable('catalog_product_entity_varchar'), 'entity_type_id');
+
+//Drop entity_type_id column for catalog category entities
+$connection->dropColumn($installer->getTable('catalog_category_entity'), 'entity_type_id');
+$connection->dropColumn($installer->getTable('catalog_category_entity_datetime'), 'entity_type_id');
+$connection->dropColumn($installer->getTable('catalog_category_entity_decimal'), 'entity_type_id');
+$connection->dropColumn($installer->getTable('catalog_category_entity_int'), 'entity_type_id');
+$connection->dropColumn($installer->getTable('catalog_category_entity_text'), 'entity_type_id');
+$connection->dropColumn($installer->getTable('catalog_category_entity_varchar'), 'entity_type_id');
+
+$installer->endSetup();
diff --git a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/category/checkboxes/tree.phtml b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/category/checkboxes/tree.phtml
index bfd0df50a4f5acbf074390faec8453bb1d425ae8..78f0314f37e1de62a26e5b3666e5bd9ef6a54901 100644
--- a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/category/checkboxes/tree.phtml
+++ b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/category/checkboxes/tree.phtml
@@ -3,12 +3,15 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php $_divId = 'tree-div_' . time() ?>
 <div id="<?php echo $_divId ?>" class="tree"></div>
 
-<script type="text/javascript">
+<script>
     require([
         "prototype",
         "mage/adminhtml/form"
diff --git a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/category/edit.phtml b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/category/edit.phtml
index bca959aee256244290b6ec339f66ebc248074fe9..330375f2bbd380a80b7ad97ac0378bb01a2d54d6 100644
--- a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/category/edit.phtml
+++ b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/category/edit.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
@@ -13,7 +16,7 @@
 <div id="category-edit-container" class="category-content">
     <?php echo $this->getChildHtml('form') ?>
 </div>
-<script type="text/javascript">
+<script>
 require([
     "jquery",
     "js/theme",
diff --git a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/category/edit/form.phtml b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/category/edit/form.phtml
index 3fb2f62a4ac7ee2eac20927c8207673f54b4e7f5..6b3e96b3019fbca83d313b27f27d679cf043d1ed 100644
--- a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/category/edit/form.phtml
+++ b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/category/edit/form.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var \Magento\Catalog\Block\Adminhtml\Category\Edit\Form $this */
 $parentId = $this->getParentCategoryId();
 $categoryId = $this->getCategoryId();
@@ -47,7 +49,7 @@ $categoryId = $this->getCategoryId();
 <div data-id="information-dialog-category" style="display: none;">
     <span class="information-message"><?php echo __('This operation can take much time'); ?><span>
 </div>
-<script type="text/javascript">
+<script>
 require(['jquery', 'jquery/ui', "mage/mage", "mage/translate"], function($){
     var mageDialog = (function($) {
         var self = {dialogOpened: false, callback: [], needShow: false};
diff --git a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/category/tree.phtml b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/category/tree.phtml
index 2644d19fa622404f2d54e6f2a980202e8a0ba164..ab241f4cf2526362021d4fa0d51278367eaf8c65 100644
--- a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/category/tree.phtml
+++ b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/category/tree.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <div class="categories-side-col">
     <div class="sidebar-actions">
@@ -29,7 +32,7 @@
 <div data-id="information-dialog-tree" style="display: none;">
     <span class="messages"><?php echo __('This operation can take much time'); ?><span>
 </div>
-<script type="text/javascript">
+<script>
 var tree;
 require([
     "jquery",
diff --git a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/category/widget/tree.phtml b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/category/widget/tree.phtml
index f119857dc172618bf6cbb635d4d2df41ebcba65a..b40ac67e83969387dbadd4d8a2dbf784a44be429 100644
--- a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/category/widget/tree.phtml
+++ b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/category/widget/tree.phtml
@@ -3,12 +3,15 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php $_divId = 'tree' . $this->getId() ?>
 <div id="<?php echo $_divId ?>" class="tree"></div>
 
-<script type="text/javascript">
+<script>
 require(['prototype'], function(){
 //<![CDATA[
 
diff --git a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/form/renderer/fieldset/element.phtml b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/form/renderer/fieldset/element.phtml
index a4475fb7e4f0d9a057142a18b2982f375a051626..a3b0a37fefa88d5297d1f8a04d19f915113b932d 100644
--- a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/form/renderer/fieldset/element.phtml
+++ b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/form/renderer/fieldset/element.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product.phtml b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product.phtml
index 888f68c0aa42ef3463bc163e748c567870d51e2c..e2c7b64715567b39c5f789b3eea8ba3ead79569f 100644
--- a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product.phtml
+++ b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/attribute/form.phtml b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/attribute/form.phtml
index 3bef2600537102b221ff7eb2cbaa4aaedafb38c7..49733c945841ac98f9bb5bd6b4bb24615f97ddd4 100644
--- a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/attribute/form.phtml
+++ b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/attribute/form.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
@@ -17,7 +20,7 @@
 <div class="page-actions" <?php echo $this->getUiId('content-header') ?>>
     <?php echo $this->getButtonsHtml('header') ?>
 </div>
-<script type="text/javascript">
+<script>
 require(['jquery', "mage/mage"], function(jQuery){
 
     jQuery('#edit_form').mage('form').mage('validation', {validationUrl: '<?php echo $this->getValidationUrl() ?>'});
diff --git a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/attribute/js.phtml b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/attribute/js.phtml
index 9226ca4dc177e25de1cb0f72a3f9a3422d759b97..46f2599f4f4298d4a358cef9aea7afe539890919 100644
--- a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/attribute/js.phtml
+++ b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/attribute/js.phtml
@@ -3,8 +3,11 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
-<script type="text/javascript">
+<script>
 require(["jquery", "js/theme", "prototype"], function(jQuery){
 
 //<![CDATA[
diff --git a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/attribute/labels.phtml b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/attribute/labels.phtml
index 19e1868ecf51f8554a588b560f123d930b1a106f..6d4eba95168d8ed4fbac08e89687de24d667f975 100644
--- a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/attribute/labels.phtml
+++ b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/attribute/labels.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Eav\Block\Adminhtml\Attribute\Edit\Options\Labels  */
 ?>
 
diff --git a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/attribute/options.phtml b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/attribute/options.phtml
index c2986e5860a7ecba18011b7afd2ab6aeafe12bc7..6b62ffe820f1d4d1cb46d79e78564ab6fffdfb79 100644
--- a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/attribute/options.phtml
+++ b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/attribute/options.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Eav\Block\Adminhtml\Attribute\Edit\Options\Options */
 ?>
 <fieldset class="fieldset">
@@ -64,7 +67,7 @@
             </td>
         </tr>
     </script>
-    <script type="text/javascript">
+    <script>
 require(['jquery', "jquery/ui"], function(jQuery){
 
     var optionDefaultInputType = 'radio';
diff --git a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/attribute/set/main.phtml b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/attribute/set/main.phtml
index 67794491a5d8e684218c9a7bf35c12b23371bfc6..b5fb8f89ebc6c80e7ef7a146ded5c532bbdd4ef6 100644
--- a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/attribute/set/main.phtml
+++ b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/attribute/set/main.phtml
@@ -3,11 +3,14 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <div class="attribute-set">
     <div class="edit-attribute-set attribute-set-col">
         <?php echo $this->getSetFormHtml() ?>
-        <script type="text/javascript">
+        <script>
 require([
     "jquery",
     "mage/mage"
@@ -35,7 +38,7 @@ require([
             <span class="title"><?php echo __('Unassigned Attributes') ?></span>
         </div>
         <div id="tree-div2" class="attribute-set-tree"></div>
-            <script type="text/javascript">
+            <script>
 require(['jquery'], function(jQuery){
 
             //<![CDATA[
diff --git a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/attribute/set/toolbar/add.phtml b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/attribute/set/toolbar/add.phtml
index 905104e5b813bb9de0df8644dd91a736e20cff6a..f506d2c2c5dbfbe8a771597c7d52ce37da326b89 100644
--- a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/attribute/set/toolbar/add.phtml
+++ b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/attribute/set/toolbar/add.phtml
@@ -5,7 +5,7 @@
  */
 ?>
 <?php echo $this->getFormHtml() ?>
-<script type="text/javascript">
+<script>
 require(['jquery', "mage/mage"], function(jQuery){
 
     jQuery('#<?php echo $this->getFormId();?>').mage('form').mage('validation');
diff --git a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/attribute/set/toolbar/main.phtml b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/attribute/set/toolbar/main.phtml
index 9228aa320afa5a3a1b7e14c79d3773991984487f..1d27f92b1d57cdd4045ec77cdb17e900c03c669d 100644
--- a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/attribute/set/toolbar/main.phtml
+++ b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/attribute/set/toolbar/main.phtml
@@ -3,5 +3,8 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php echo $this->getChildHtml('grid') ?>
diff --git a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/composite/configure.phtml b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/composite/configure.phtml
index 31038c1f91bd57f88cc94ece0d2cfcadafd166d8..551e7b420c8c1492ba4a6ec09bf9c6df81c498f5 100644
--- a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/composite/configure.phtml
+++ b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/composite/configure.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
  ?>
 <div id="product_composite_configure" class="product-configure-popup" style="display:none;">
     <iframe name="product_composite_configure_iframe" id="product_composite_configure_iframe" style="width:0; height:0; border:0px solid #fff; position:absolute; top:-1000px; left:-1000px" onload="window.productConfigure && productConfigure.onLoadIFrame()"></iframe>
@@ -20,7 +23,7 @@
     </form>
     <div id="product_composite_configure_confirmed" style="display:none;"></div>
 
-    <script type="text/javascript">
+    <script>
         require([
             "jquery",
             "mage/mage"
diff --git a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/composite/fieldset/options.phtml b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/composite/fieldset/options.phtml
index 6f5092f4d71783aa8ded2a52133efd7f7a9fc42f..af3a4af7341170bc2517ffc9a70df0c22a30e124 100644
--- a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/composite/fieldset/options.phtml
+++ b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/composite/fieldset/options.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php /* @var $this \Magento\Catalog\Block\Adminhtml\Product\Composite\Fieldset\Options */ ?>
diff --git a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/composite/fieldset/options/js.phtml b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/composite/fieldset/options/js.phtml
index 4fa550c93e6738d160d4c3fe1b2cd54cedc44ddf..fc5da7426dbd8f7e79af11525a8d9d6ac72b4be4 100644
--- a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/composite/fieldset/options/js.phtml
+++ b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/composite/fieldset/options/js.phtml
@@ -5,7 +5,7 @@
  */
 ?>
 
-<script type="text/javascript">
+<script>
 require([
     "prototype",
     "Magento_Catalog/catalog/product/composite/configure"
diff --git a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/composite/fieldset/options/type/date.phtml b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/composite/fieldset/options/type/date.phtml
index fdb12728f9e60aa6e26fbc69bbf50fefefcb5ada..d569edd981107bf88748453fe2a607ea1e0d672a 100644
--- a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/composite/fieldset/options/type/date.phtml
+++ b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/composite/fieldset/options/type/date.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /* @var $this \Magento\Catalog\Block\Product\View\Options\Type\Date */ ?>
 <?php $_option = $this->getOption(); ?>
@@ -20,7 +23,7 @@
       <?php echo $this->getDateHtml() ?>
 
       <?php if (!$this->useCalendar()): ?>
-      <script type="text/javascript">
+      <script>
 require([
   "prototype",
   "Magento_Catalog/catalog/product/composite/configure"
@@ -41,7 +44,7 @@ require([
   <?php endif; ?>
 
     <input type="hidden" name="validate_datetime_<?php echo $_optionId ?>" class="validate-datetime-<?php echo $_optionId ?>" value="" />
-    <script type="text/javascript">
+    <script>
 require([
   "jquery",
   "mage/validation"
diff --git a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/composite/fieldset/options/type/file.phtml b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/composite/fieldset/options/type/file.phtml
index f4c840b205c2e806f50937e9b075bc5896453c0a..40e578f3df31f963ddb00959748434f7d62d957a 100644
--- a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/composite/fieldset/options/type/file.phtml
+++ b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/composite/fieldset/options/type/file.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php $_option = $this->getOption(); ?>
 <?php $_fileInfo = $this->getFileInfo(); ?>
@@ -13,7 +16,7 @@
 <?php $_fileNamed = $_fileName . '_name'; ?>
 <?php $_rand = rand(); ?>
 
-<script type="text/javascript">
+<script>
 require(['prototype'], function(){
 
 //<![CDATA[
diff --git a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/composite/fieldset/options/type/select.phtml b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/composite/fieldset/options/type/select.phtml
index f7cd5944109cc85b475d59d872068cd1262232dd..c7fc9264685a676a9ba79f7a98d3070c160545cd 100644
--- a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/composite/fieldset/options/type/select.phtml
+++ b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/composite/fieldset/options/type/select.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /* @var $this \Magento\Catalog\Block\Product\View\Options\Type\Select */ ?>
 <?php $_option = $this->getOption(); ?>
diff --git a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/composite/fieldset/options/type/text.phtml b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/composite/fieldset/options/type/text.phtml
index ef269053ec96091cf896aa9cd8f892727f611386..de6953ff44f80dc08c7286f9922d35019068ab64 100644
--- a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/composite/fieldset/options/type/text.phtml
+++ b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/composite/fieldset/options/type/text.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /* @var $this \Magento\Catalog\Block\Product\View\Options\Type\Text */ ?>
 <?php $_option = $this->getOption(); ?>
diff --git a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/composite/fieldset/qty.phtml b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/composite/fieldset/qty.phtml
index af8c05eff31e171876e71b43732d81ef36362f42..ab9098ab074d71df61a7da62ff1ed96f279613ce 100644
--- a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/composite/fieldset/qty.phtml
+++ b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/composite/fieldset/qty.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php /* @var $this \Magento\Catalog\Block\Adminhtml\Product\Composite\Fieldset\Qty */ ?>
diff --git a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit.phtml b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit.phtml
index 6c4839cc4d2fa1532d27c4c7820b89eec9b623e2..42200afb58c0088f9096bbd8426f689ffecc0a83 100644
--- a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit.phtml
+++ b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
@@ -54,7 +57,7 @@
 <?php if ($this->getUseContainer()): ?>
 </form>
 <?php endif; ?>
-<script type="text/javascript">
+<script>
 require([
     "jquery",
     "underscore",
diff --git a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/action/attribute.phtml b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/action/attribute.phtml
index 1859f789a0f80ccbc3448fcf316e9dee588c030e..210f805d8a5a5be13108956da65c1f5f37cc3367 100644
--- a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/action/attribute.phtml
+++ b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/action/attribute.phtml
@@ -3,12 +3,15 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <form action="<?php echo $this->getSaveUrl() ?>" method="post" id="attributes-edit-form" class="attributes-edit-form" enctype="multipart/form-data">
     <?php echo $this->getBlockHtml('formkey')?>
 </form>
-<script type="text/javascript">
+<script>
 require(['jquery', "mage/mage"], function(jQuery){
 
     jQuery('#attributes-edit-form').mage('form')
diff --git a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/action/inventory.phtml b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/action/inventory.phtml
index 316e34a7b1d01cb3a3bcd912d371810b9c0c81c5..f9c8e7ae3d9399e786f2a13f5202732f92996445 100644
--- a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/action/inventory.phtml
+++ b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/action/inventory.phtml
@@ -3,8 +3,11 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
-<script type="text/javascript">
+<script>
     require(['jquery'], function($){
         $('[data-role=toggle-editability-all]').change(function(e) {
             var toggler = $(this);
diff --git a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/action/websites.phtml b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/action/websites.phtml
index c6beb2ed0588629a26545323010643681081d173..a771230a7091c55ce745c7d80af9082baffbe500 100644
--- a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/action/websites.phtml
+++ b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/action/websites.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <div class="fieldset-wrapper" id="add-products-to-website-wrapper">
@@ -74,7 +77,7 @@
     </fieldset>
 </div>
 
-<script type="text/javascript">
+<script>
     var productWebsiteCheckboxes = $$('.website-checkbox');
 
     for(var i=0;i<productWebsiteCheckboxes.length;i++){
diff --git a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/attribute_set.phtml b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/attribute_set.phtml
index 37f5b5ca36dde54851e524a64a36a55414cc5581..2a010001630b0a36cd12ede15b554c581f2612f8 100644
--- a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/attribute_set.phtml
+++ b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/attribute_set.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
  /* @var $this \Magento\Catalog\Block\Adminhtml\Product\Edit\AttributeSet */
 ?>
 <script id="product-template-selector-template" type="text/x-jquery-tmpl">
@@ -20,7 +23,7 @@
 </button>
 {{/if}}
 </script>
-<script type="text/javascript">
+<script>
     require(["jquery","mage/mage","mage/backend/suggest"],function ($) {
         var $suggest = $('#product-template-suggest');
         $suggest.closest('.dropdown-menu').siblings('[data-toggle=dropdown]').on('click.toggleDropdown', function () {
diff --git a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/options.phtml b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/options.phtml
index bc7959cdcc10d9015a1ca10ef8bd2053e2d98da8..e5079a0d1768f00726aaf64cffdace7ea34a564b 100644
--- a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/options.phtml
+++ b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/options.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\Catalog\Block\Adminhtml\Product\Edit\Tab\Options */ ?>
 
@@ -33,7 +36,7 @@
     </div>
 </div>
 
-<script type="text/javascript">
+<script>
 require(['jquery'], function($){
     var priceType = $('#price_type');
     var priceWarning = $('#dynamic-price-warning');
diff --git a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/options/option.phtml b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/options/option.phtml
index 3a7de5048e2aa7d2c8cbbc64e831833e020dd965..5d159e46435decd0299e4b72c9595678772b10f9 100644
--- a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/options/option.phtml
+++ b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/options/option.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\Catalog\Block\Adminhtml\Product\Edit\Tab\Options\Option */ ?>
 <?php echo $this->getTemplatesHtml() ?>
@@ -75,7 +78,7 @@
 <?php if (!$this->isReadonly()): ?>
 <div><input type="hidden" name="affect_product_custom_options" value="1"/></div>
 <?php endif; ?>
-<script type="text/javascript">
+<script>
 require([
     "jquery",
     "Magento_Catalog/js/custom-options"
diff --git a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/options/type/date.phtml b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/options/type/date.phtml
index 9bc1cd008b3b6d48243a259c032461e6998d10be..4e2f2f9e8c1b19ed50b13baf4857738166ec95d7 100644
--- a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/options/type/date.phtml
+++ b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/options/type/date.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\Catalog\Block\Adminhtml\Product\Edit\Tab\Options\Type\Date */ ?>
 <script id="custom-option-date-type-template" type="text/x-jquery-tmpl">
diff --git a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/options/type/file.phtml b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/options/type/file.phtml
index 974bdfbed6b7338a7c2c7588ff6e6d65d872279d..d120de6bd696d518dcf83e5e8c77d8f43e68f363 100644
--- a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/options/type/file.phtml
+++ b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/options/type/file.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\Catalog\Block\Adminhtml\Product\Edit\Tab\Options\Type\File */ ?>
 <script id="custom-option-file-type-template" type="text/x-jquery-tmpl">
diff --git a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/options/type/select.phtml b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/options/type/select.phtml
index 2a88c3009c09afa3f1d446271f12a39d51dee36b..4de96e3259293ee7c42eaf2c7b4c4c80dd045586 100644
--- a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/options/type/select.phtml
+++ b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/options/type/select.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\Catalog\Block\Adminhtml\Product\Edit\Tab\Options\Type\Select */ ?>
 <script id="custom-option-select-type-template" type="text/x-jquery-tmpl">
diff --git a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/options/type/text.phtml b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/options/type/text.phtml
index 53026fd396af06eefda3cd3f2b672588ad36e184..5dbd088dcbc61cc8cd1d46a8aa85786aeb656719 100644
--- a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/options/type/text.phtml
+++ b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/options/type/text.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\Catalog\Block\Adminhtml\Product\Edit\Tab\Options\Type\Text */ ?>
 <script id="custom-option-text-type-template" type="text/x-jquery-tmpl">
diff --git a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/price/group.phtml b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/price/group.phtml
index 30d79a7702edac5d3c049c9aa8b7ff796c8fb740..d486a300155b208396b9b8faad0855e273ce9fa6 100644
--- a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/price/group.phtml
+++ b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/price/group.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /** @var $this \Magento\Catalog\Block\Adminhtml\Product\Edit\Tab\Price\Group */
@@ -40,7 +43,7 @@ $_showWebsite = $this->isMultiWebsites();
             </tfoot>
         </table>
 
-<script type="text/javascript">
+<script>
 require([
     "prototype",
     "mage/adminhtml/form"
diff --git a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/price/tier.phtml b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/price/tier.phtml
index aa6c213a6713ee20f9f85890e9d8d84d9f0ebfe5..afa6d5cb57e872bfc9003d184e44cad7f36b58bb 100644
--- a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/price/tier.phtml
+++ b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/price/tier.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /* @var $this \Magento\Catalog\Block\Adminhtml\Product\Edit\Tab\Price\Tier */
 $element = $this->getElement();
 ?>
@@ -43,7 +46,7 @@ $element = $this->getElement();
             </tfoot>
         </table>
 
-<script type="text/javascript">
+<script>
 require([
     "prototype",
     "mage/adminhtml/form"
diff --git a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/serializer.phtml b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/serializer.phtml
index 3e62f75e79dca16c4264dda8b6edc703a43aa89f..c51ca7f6aa9e5f8bb21d1e1d3a2a67ea0152e7be 100644
--- a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/serializer.phtml
+++ b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/serializer.phtml
@@ -3,11 +3,14 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php $_id = 'id_' . md5(microtime()) ?>
 <input type="hidden" name="<?php echo $this->getInputElementName()?>"  value="" id="<?php echo $_id?>" />
-<script type="text/javascript">
+<script>
 // create serializer controller, that will syncronize grid checkboxes with hidden input
 new productLinksController('<?php echo $_id?>', <?php echo $this->getProductsJSON() ?>, <?php echo $this->getGridBlock()->getJsObjectName() ?>);
 </script>
diff --git a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/websites.phtml b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/websites.phtml
index 5e15a755a1170750b05b9d07e159e18ed8c590a4..2dcd3cc07a5c189f0ecdab1c922f3ee2500457e3 100644
--- a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/websites.phtml
+++ b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/websites.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <fieldset id="grop_fields" class="fieldset">
     <legend class="legend"><span><?php echo __('Product In Websites') ?></span></legend>
@@ -45,7 +48,7 @@
     </div>
 </fieldset>
 
-<script type="text/javascript">
+<script>
 require(["prototype"], function(){
 
     //<![CDATA[
diff --git a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/helper/gallery.phtml b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/helper/gallery.phtml
index 4062dfd9bc6575e6752abe19472d09e982d73462..69eb4fdbcae41f31904d3ee2a63eaf9cb479ba78 100644
--- a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/helper/gallery.phtml
+++ b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/helper/gallery.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Catalog\Block\Adminhtml\Product\Helper\Form\Gallery\Content */
 $elementName = $this->getElement()->getName() . '[images]';
 ?>
diff --git a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/js.phtml b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/js.phtml
index 6870fed858ea0ab98db16b95c821ef7961315c51..d7fb7cb3a2ce591a072ea2bd688414d55824bd8a 100644
--- a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/js.phtml
+++ b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/js.phtml
@@ -4,9 +4,11 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var \Magento\Catalog\Block\Adminhtml\Product\Edit\Js $this */
 ?>
-<script type="text/javascript">
+<script>
 require([
     "jquery",
     "prototype",
diff --git a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/tab/alert.phtml b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/tab/alert.phtml
index 3d4710937046c3c603fc4cdb6072df44069699f2..fcedc9d106ccdd727e9c69952ca4c82c3845e9a0 100644
--- a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/tab/alert.phtml
+++ b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/tab/alert.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/tab/inventory.phtml b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/tab/inventory.phtml
index 9196f22df8bd0d4e21c5eabc393b24f1a3a5efba..fbdc4f2d9e4192c6a9726599a0b49bd0e5580ddf 100644
--- a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/tab/inventory.phtml
+++ b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/tab/inventory.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Catalog\Block\Adminhtml\Product\Edit\Tab\Inventory */
 ?>
 <?php if ($this->isReadonly()): ?>
@@ -28,7 +31,7 @@
         <input type="checkbox" id="inventory_use_config_manage_stock" name="<?php echo $this->getFieldSuffix() ?>[stock_data][use_config_manage_stock]" value="1" <?php echo $_checked ?> onclick="toggleValueElements(this, this.parentNode);" <?php echo $_readonly;?>>
         <label for="inventory_use_config_manage_stock"><?php echo __('Use Config Settings') ?></label>
         <?php if (!$this->isReadonly()): ?>
-        <script type="text/javascript">
+        <script>
 require(['prototype'], function(){
 toggleValueElements($('inventory_use_config_manage_stock'), $('inventory_use_config_manage_stock').parentNode);
 });
@@ -66,7 +69,7 @@ toggleValueElements($('inventory_use_config_manage_stock'), $('inventory_use_con
         <input type="checkbox" id="inventory_use_config_min_qty" name="<?php echo $this->getFieldSuffix() ?>[stock_data][use_config_min_qty]" value="1" <?php echo $_checked ?> onclick="toggleValueElements(this, this.parentNode);" <?php echo $_readonly;?>>
         <label for="inventory_use_config_min_qty"><?php echo __('Use Config Settings') ?></label>
         <?php if (!$this->isReadonly()): ?>
-        <script type="text/javascript">
+        <script>
 require(["prototype"], function(){
 toggleValueElements($('inventory_use_config_min_qty'), $('inventory_use_config_min_qty').parentNode);
 });
@@ -90,7 +93,7 @@ toggleValueElements($('inventory_use_config_min_qty'), $('inventory_use_config_m
         <input type="checkbox" id="inventory_use_config_min_sale_qty" name="<?php echo $this->getFieldSuffix() ?>[stock_data][use_config_min_sale_qty]" value="1" <?php echo $_checked ?> onclick="toggleValueElements(this, this.parentNode);" class="checkbox" <?php echo $_readonly;?>>
         <label for="inventory_use_config_min_sale_qty"><?php echo __('Use Config Settings') ?></label>
         <?php if (!$this->isReadonly()): ?>
-        <script type="text/javascript">
+        <script>
 require(['prototype'], function(){
 toggleValueElements($('inventory_use_config_min_sale_qty'), $('inventory_use_config_min_sale_qty').parentNode);
 });
@@ -112,7 +115,7 @@ toggleValueElements($('inventory_use_config_min_sale_qty'), $('inventory_use_con
         <input type="checkbox" id="inventory_use_config_max_sale_qty" name="<?php echo $this->getFieldSuffix() ?>[stock_data][use_config_max_sale_qty]" value="1" <?php echo $_checked ?> onclick="toggleValueElements(this, this.parentNode);" class="checkbox" <?php echo $_readonly;?>>
         <label for="inventory_use_config_max_sale_qty"><?php echo __('Use Config Settings') ?></label>
         <?php if (!$this->isReadonly()): ?>
-        <script type="text/javascript">
+        <script>
 require(['prototype'], function(){
 toggleValueElements($('inventory_use_config_max_sale_qty'), $('inventory_use_config_max_sale_qty').parentNode);
 });
@@ -173,7 +176,7 @@ toggleValueElements($('inventory_use_config_max_sale_qty'), $('inventory_use_con
         <input type="checkbox" id="inventory_use_config_backorders" name="<?php echo $this->getFieldSuffix() ?>[stock_data][use_config_backorders]" value="1" <?php echo $_checked ?> onclick="toggleValueElements(this, this.parentNode);" <?php echo $_readonly;?>>
         <label for="inventory_use_config_backorders"><?php echo __('Use Config Settings') ?></label>
         <?php if (!$this->isReadonly()): ?>
-        <script type="text/javascript">
+        <script>
 require(['prototype'], function(){
 toggleValueElements($('inventory_use_config_backorders'), $('inventory_use_config_backorders').parentNode);
 });
@@ -195,7 +198,7 @@ toggleValueElements($('inventory_use_config_backorders'), $('inventory_use_confi
         <input type="checkbox" id="inventory_use_config_notify_stock_qty" name="<?php echo $this->getFieldSuffix() ?>[stock_data][use_config_notify_stock_qty]" value="1" <?php echo $_checked ?> onclick="toggleValueElements(this, this.parentNode);" <?php echo $_readonly;?>>
         <label for="inventory_use_config_notify_stock_qty"><?php echo __('Use Config Settings') ?></label>
         <?php if (!$this->isReadonly()): ?>
-        <script type="text/javascript">
+        <script>
 require(['prototype'], function(){
 toggleValueElements($('inventory_use_config_notify_stock_qty'), $('inventory_use_config_notify_stock_qty').parentNode);
 });
@@ -223,7 +226,7 @@ toggleValueElements($('inventory_use_config_notify_stock_qty'), $('inventory_use
         <input type="checkbox" id="inventory_use_config_enable_qty_increments" name="<?php echo $this->getFieldSuffix() ?>[stock_data][use_config_enable_qty_increments]" value="1" <?php echo $_checked ?> onclick="toggleValueElements(this, this.parentNode);" <?php echo $_readonly;?>>
         <label for="inventory_use_config_enable_qty_increments"><?php echo __('Use Config Settings') ?></label>
         <?php if (!$this->isReadonly()): ?>
-        <script type="text/javascript">
+        <script>
 require(['prototype'], function(){
 toggleValueElements($('inventory_use_config_enable_qty_increments'), $('inventory_use_config_enable_qty_increments').parentNode);
 });
@@ -245,7 +248,7 @@ toggleValueElements($('inventory_use_config_enable_qty_increments'), $('inventor
         <input type="checkbox" id="inventory_use_config_qty_increments" name="<?php echo $this->getFieldSuffix() ?>[stock_data][use_config_qty_increments]" value="1" <?php echo $_checked ?> onclick="toggleValueElements(this, this.parentNode);" <?php echo $_readonly;?>>
         <label for="inventory_use_config_qty_increments"><?php echo __('Use Config Settings') ?></label>
         <?php if (!$this->isReadonly()): ?>
-        <script type="text/javascript">
+        <script>
 require(['prototype'], function(){
 toggleValueElements($('inventory_use_config_qty_increments'), $('inventory_use_config_qty_increments').parentNode);
 });
@@ -276,7 +279,7 @@ toggleValueElements($('inventory_use_config_qty_increments'), $('inventory_use_c
 </div>
 </fieldset>
 
-<script type="text/javascript">
+<script>
 require(["jquery","prototype"], function(jQuery){
 
     //<![CDATA[
diff --git a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/wysiwyg/js.phtml b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/wysiwyg/js.phtml
index e3d0aab33056ded3f34b148eb3601eefde085746..cb5e7d11f6f382e8de4c6aeafb75fff7f3d3ecf6 100644
--- a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/wysiwyg/js.phtml
+++ b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/wysiwyg/js.phtml
@@ -3,8 +3,11 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
-<script type="text/javascript">
+<script>
 require([
     "jquery",
     "prototype",
diff --git a/app/code/Magento/Catalog/view/adminhtml/templates/product/edit/attribute/search.phtml b/app/code/Magento/Catalog/view/adminhtml/templates/product/edit/attribute/search.phtml
index c4d6f06ffff5c90dcf9e31f4fd9e41153eb5a00a..07dfbadb716e468a50d182d22a9c8800ef988f25 100644
--- a/app/code/Magento/Catalog/view/adminhtml/templates/product/edit/attribute/search.phtml
+++ b/app/code/Magento/Catalog/view/adminhtml/templates/product/edit/attribute/search.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Catalog\Block\Adminhtml\Product\Edit\Tab\Attributes\Search */
 ?>
 <div id="product-attribute-search-container" class="suggest-expandable attribute-selector">
@@ -30,7 +32,7 @@
     <div class="actions"><?php echo $this->getAttributeCreate()?></div>
 </script>
 
-<script type="text/javascript">
+<script>
     require(["jquery","mage/mage","mage/backend/suggest"], function($) {
         var $suggest = $('[data-role="product-attribute-search"][data-group="<?php echo $this->escapeHtml($this->getGroupCode()); ?>"]');
 
diff --git a/app/code/Magento/Catalog/view/adminhtml/templates/product/edit/tabs.phtml b/app/code/Magento/Catalog/view/adminhtml/templates/product/edit/tabs.phtml
index 0c2a267f803219989634ee6951cfe4c4dad007d6..6b649604853308536bf83bb6b4dca541613b002e 100644
--- a/app/code/Magento/Catalog/view/adminhtml/templates/product/edit/tabs.phtml
+++ b/app/code/Magento/Catalog/view/adminhtml/templates/product/edit/tabs.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Catalog\Block\Adminhtml\Product\Edit\Tabs */
 ?>
 <?php if (!empty($tabs)): ?>
diff --git a/app/code/Magento/Catalog/view/adminhtml/templates/product/grid/massaction_extended.phtml b/app/code/Magento/Catalog/view/adminhtml/templates/product/grid/massaction_extended.phtml
index 4addc7ed3781f359b41ba2e6fc7e7ab8c4b460a1..ba1bf3a1a538cce1643b4ac3a9f43de64622ef86 100644
--- a/app/code/Magento/Catalog/view/adminhtml/templates/product/grid/massaction_extended.phtml
+++ b/app/code/Magento/Catalog/view/adminhtml/templates/product/grid/massaction_extended.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /**
 * @deprecated support Magento 1.x grid massaction implementation (MAGETWO-11122)
  */
@@ -64,7 +67,7 @@
         </span>
     </div>
 </div>
-<script type="text/javascript">
+<script>
     require(['jquery'], function($){
         'use strict';
         $('#massaction-select').change(function () {
diff --git a/app/code/Magento/Catalog/view/adminhtml/templates/rss/grid/link.phtml b/app/code/Magento/Catalog/view/adminhtml/templates/rss/grid/link.phtml
index bc0c5193493570a35f9629c3bde497f8cc8c5c7c..c481ee1b9b37eb32fd4eb339e965f48fde9da35f 100644
--- a/app/code/Magento/Catalog/view/adminhtml/templates/rss/grid/link.phtml
+++ b/app/code/Magento/Catalog/view/adminhtml/templates/rss/grid/link.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Catalog\Block\Adminhtml\Rss\Grid\Link */
 ?>
 <?php if ($this->isRssAllowed() && $this->getLink()): ?>
diff --git a/app/code/Magento/Catalog/view/adminhtml/web/product/product.css b/app/code/Magento/Catalog/view/adminhtml/web/product/product.css
index 8852a92b3abe35495a6497cd6b29bba7cc8ce785..feb4a7d4bf1a0ded012c00638257c72eca77ee43 100644
--- a/app/code/Magento/Catalog/view/adminhtml/web/product/product.css
+++ b/app/code/Magento/Catalog/view/adminhtml/web/product/product.css
@@ -121,7 +121,7 @@
     text-align: center;
     text-transform: uppercase;
     color: #a69a8f;
-    font: 18px/110px 'CallunaSans', Arial, sans-serif;
+    font: 18px/110px Arial, sans-serif;
     font-weight: 500;
     z-index: 3;
 }
diff --git a/app/code/Magento/Catalog/view/base/templates/product/price/amount/default.phtml b/app/code/Magento/Catalog/view/base/templates/product/price/amount/default.phtml
index b3482f3df77d03259ba735d4fced86c066c6195f..f7f2853e35710a42a40ada8c576fc228c2239d00 100644
--- a/app/code/Magento/Catalog/view/base/templates/product/price/amount/default.phtml
+++ b/app/code/Magento/Catalog/view/base/templates/product/price/amount/default.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php /** @var \Magento\Framework\Pricing\Render\Amount $this */ ?>
diff --git a/app/code/Magento/Catalog/view/base/templates/product/price/amount/option.phtml b/app/code/Magento/Catalog/view/base/templates/product/price/amount/option.phtml
index 041f9ba8afb2ffafa18713d1b0d71db31978cdc5..8c509c4d454fcf0009414aa94dc9eb5b20027ccc 100644
--- a/app/code/Magento/Catalog/view/base/templates/product/price/amount/option.phtml
+++ b/app/code/Magento/Catalog/view/base/templates/product/price/amount/option.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /** @var \Magento\Framework\Pricing\Render\Amount $this */
diff --git a/app/code/Magento/Catalog/view/base/templates/product/price/default.phtml b/app/code/Magento/Catalog/view/base/templates/product/price/default.phtml
index 088d6b80bd274e3bee17d4f24a34e483b6551c8b..2a5e7c87bfe93778adcb78188b34638ee11c7230 100644
--- a/app/code/Magento/Catalog/view/base/templates/product/price/default.phtml
+++ b/app/code/Magento/Catalog/view/base/templates/product/price/default.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php
diff --git a/app/code/Magento/Catalog/view/base/templates/product/price/final_price.phtml b/app/code/Magento/Catalog/view/base/templates/product/price/final_price.phtml
index 5529085b233e52d9823aa336b2df72014eebb409..833e4fe93c0166fa914c2cd6911882b5a6871119 100644
--- a/app/code/Magento/Catalog/view/base/templates/product/price/final_price.phtml
+++ b/app/code/Magento/Catalog/view/base/templates/product/price/final_price.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php
diff --git a/app/code/Magento/Catalog/view/base/templates/product/price/tier_prices.phtml b/app/code/Magento/Catalog/view/base/templates/product/price/tier_prices.phtml
index d1caebbddf6af43e75842f792a72ab82270f633e..4a8a8c3e57d7dcaaf37773cbc06e46a947cc5eb3 100644
--- a/app/code/Magento/Catalog/view/base/templates/product/price/tier_prices.phtml
+++ b/app/code/Magento/Catalog/view/base/templates/product/price/tier_prices.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php
@@ -79,7 +82,7 @@ $product = $this->getSaleableItem();
     <?php endforeach; ?>
     </ul>
     <?php if ($msrpShowOnGesture):?>
-        <script type="text/javascript">
+        <script>
         require(["jquery", "mage/mage"], function($){
 
             $('.product-info-main').mage('tierPrice', {
diff --git a/app/code/Magento/Catalog/view/frontend/templates/category/cms.phtml b/app/code/Magento/Catalog/view/frontend/templates/category/cms.phtml
index 0cac6a56853ea30428f87b8634181e1e6da62bcb..f9b9985913776e8704fc708bf4cde0b8feb40916 100644
--- a/app/code/Magento/Catalog/view/frontend/templates/category/cms.phtml
+++ b/app/code/Magento/Catalog/view/frontend/templates/category/cms.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/Catalog/view/frontend/templates/category/description.phtml b/app/code/Magento/Catalog/view/frontend/templates/category/description.phtml
index 0dad008a4590b6b71e8876d6e45cee192b6ad293..256152bfcacd294368cff88893c92866ecbbf38f 100644
--- a/app/code/Magento/Catalog/view/frontend/templates/category/description.phtml
+++ b/app/code/Magento/Catalog/view/frontend/templates/category/description.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/Catalog/view/frontend/templates/category/image.phtml b/app/code/Magento/Catalog/view/frontend/templates/category/image.phtml
index 2df51bf5bc1381a64a12af9429070fa4c5310f09..c029eb807290cdc34a48bd3f30ae18ae690ed013 100644
--- a/app/code/Magento/Catalog/view/frontend/templates/category/image.phtml
+++ b/app/code/Magento/Catalog/view/frontend/templates/category/image.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/Catalog/view/frontend/templates/category/products.phtml b/app/code/Magento/Catalog/view/frontend/templates/category/products.phtml
index e1cc98bc5fda57a130af65cda225dde05f7a58b8..8bf10b626e34b29f743f314f4f9ebcc354f331c3 100644
--- a/app/code/Magento/Catalog/view/frontend/templates/category/products.phtml
+++ b/app/code/Magento/Catalog/view/frontend/templates/category/products.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/Catalog/view/frontend/templates/category/rss.phtml b/app/code/Magento/Catalog/view/frontend/templates/category/rss.phtml
index 9a3879880526a619f0aadc0d540dfc3916113937..badbca5adf28335046975e9e9fd656ac144b76bd 100644
--- a/app/code/Magento/Catalog/view/frontend/templates/category/rss.phtml
+++ b/app/code/Magento/Catalog/view/frontend/templates/category/rss.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php if ($this->isRssAllowed() && $this->getLink() && $this->isTopCategory()): ?>
     <a href="<?php echo $this->getLink() ?>" class="action link rss"><span><?php echo $this->getLabel() ?></span></a>
diff --git a/app/code/Magento/Catalog/view/frontend/templates/category/view.phtml b/app/code/Magento/Catalog/view/frontend/templates/category/view.phtml
index e9304b73264425dd7fa369454791b365458da2eb..5dfd1a5e49045a21099fa12b882768fb2f5e1bae 100644
--- a/app/code/Magento/Catalog/view/frontend/templates/category/view.phtml
+++ b/app/code/Magento/Catalog/view/frontend/templates/category/view.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/Catalog/view/frontend/templates/js/components.phtml b/app/code/Magento/Catalog/view/frontend/templates/js/components.phtml
index 99be8e37348cec69521e018a61f416324e582a94..43f7e9c30c0126f46204910ee749ef83ad81e815 100644
--- a/app/code/Magento/Catalog/view/frontend/templates/js/components.phtml
+++ b/app/code/Magento/Catalog/view/frontend/templates/js/components.phtml
@@ -3,5 +3,8 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php echo $this->getChildHtml() ?>
diff --git a/app/code/Magento/Catalog/view/frontend/templates/navigation/left.phtml b/app/code/Magento/Catalog/view/frontend/templates/navigation/left.phtml
index 38aae93415f55d5c0273c713608ab7eb0bbbeec8..d5a48a87654b9db0f080a4c003148409a184371a 100644
--- a/app/code/Magento/Catalog/view/frontend/templates/navigation/left.phtml
+++ b/app/code/Magento/Catalog/view/frontend/templates/navigation/left.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Category left navigation
  *
diff --git a/app/code/Magento/Catalog/view/frontend/templates/product/compare/link.phtml b/app/code/Magento/Catalog/view/frontend/templates/product/compare/link.phtml
index d9409740110031b8f7e34aec6e46c7a67736b5d8..1ff2d438f29d6eb79457d005baed9f746950c278 100644
--- a/app/code/Magento/Catalog/view/frontend/templates/product/compare/link.phtml
+++ b/app/code/Magento/Catalog/view/frontend/templates/product/compare/link.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /* @var $this \Magento\Catalog\Block\Product\Compare\Sidebar */
 ?>
 <?php
diff --git a/app/code/Magento/Catalog/view/frontend/templates/product/compare/list.phtml b/app/code/Magento/Catalog/view/frontend/templates/product/compare/list.phtml
index a4a5beb5f3c6cf0ed53aab9a819031356a791216..c5dec7a2cb076077d54b52be47551c2cd1737f84 100644
--- a/app/code/Magento/Catalog/view/frontend/templates/product/compare/list.phtml
+++ b/app/code/Magento/Catalog/view/frontend/templates/product/compare/list.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /* @var $this \Magento\Catalog\Block\Product\Compare\ListCompare */
 ?>
 <?php $_total = $this->getItems()->getSize() ?>
diff --git a/app/code/Magento/Catalog/view/frontend/templates/product/compare/sidebar.phtml b/app/code/Magento/Catalog/view/frontend/templates/product/compare/sidebar.phtml
index e52fbf5ee1726cf6b6c35095d620ac4600cd7ea0..7a28c80facac7cb2b3c3c7a57a4f6891f919cae4 100644
--- a/app/code/Magento/Catalog/view/frontend/templates/product/compare/sidebar.phtml
+++ b/app/code/Magento/Catalog/view/frontend/templates/product/compare/sidebar.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /* @var $this \Magento\Catalog\Block\Product\Compare\Sidebar */
 ?>
 <?php
diff --git a/app/code/Magento/Catalog/view/frontend/templates/product/gallery.phtml b/app/code/Magento/Catalog/view/frontend/templates/product/gallery.phtml
index 03d5f644a9b218c909130cb236c610af0d7ed671..e1fa094fbe735eb6c337396e9f68689796210bb2 100644
--- a/app/code/Magento/Catalog/view/frontend/templates/product/gallery.phtml
+++ b/app/code/Magento/Catalog/view/frontend/templates/product/gallery.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php $_width = $this->getImageWidth(); ?>
 <div class="product-image-popup" style="width:<?php echo $_width; ?>px;">
diff --git a/app/code/Magento/Catalog/view/frontend/templates/product/list.phtml b/app/code/Magento/Catalog/view/frontend/templates/product/list.phtml
index 3e5ba55c32dfd575a8088c29e1a67ec9d68a2d40..224631a20f29efa6eee73130b36bfd8e6cea789a 100644
--- a/app/code/Magento/Catalog/view/frontend/templates/product/list.phtml
+++ b/app/code/Magento/Catalog/view/frontend/templates/product/list.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/Catalog/view/frontend/templates/product/list/items.phtml b/app/code/Magento/Catalog/view/frontend/templates/product/list/items.phtml
index c3a1b0a7e0c941bad6486e05bfff93880dec4c70..7cfb02aae3ba5835f4fe2a82163f388920dca8ae 100644
--- a/app/code/Magento/Catalog/view/frontend/templates/product/list/items.phtml
+++ b/app/code/Magento/Catalog/view/frontend/templates/product/list/items.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /* @var $this \Magento\Catalog\Block\Product\AbstractProduct */
 ?>
 
diff --git a/app/code/Magento/Catalog/view/frontend/templates/product/list/toolbar.phtml b/app/code/Magento/Catalog/view/frontend/templates/product/list/toolbar.phtml
index 73b69a68947ef3e11daf0a68c741660cbe917716..d805e221cd9299ed944a08ea8287f1b735dbf4d0 100644
--- a/app/code/Magento/Catalog/view/frontend/templates/product/list/toolbar.phtml
+++ b/app/code/Magento/Catalog/view/frontend/templates/product/list/toolbar.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/Catalog/view/frontend/templates/product/list/toolbar/amount.phtml b/app/code/Magento/Catalog/view/frontend/templates/product/list/toolbar/amount.phtml
index 7f078a5b29cf0260f56cf02d0f8fa89dde426da8..696ed2586b3ecbaf79ed5e45484097152b393abc 100644
--- a/app/code/Magento/Catalog/view/frontend/templates/product/list/toolbar/amount.phtml
+++ b/app/code/Magento/Catalog/view/frontend/templates/product/list/toolbar/amount.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/Catalog/view/frontend/templates/product/list/toolbar/limiter.phtml b/app/code/Magento/Catalog/view/frontend/templates/product/list/toolbar/limiter.phtml
index 7b3c5f75b5f6549886cdfa22cd862bc7b49ea9ee..b5246811e8ee890280c4e82e3fef6b7449861575 100644
--- a/app/code/Magento/Catalog/view/frontend/templates/product/list/toolbar/limiter.phtml
+++ b/app/code/Magento/Catalog/view/frontend/templates/product/list/toolbar/limiter.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/Catalog/view/frontend/templates/product/list/toolbar/sorter.phtml b/app/code/Magento/Catalog/view/frontend/templates/product/list/toolbar/sorter.phtml
index fb967647360e0b863e0de2b73c43bc0566ae4202..1553857c6513d151b27f07d499019c41ff63273a 100644
--- a/app/code/Magento/Catalog/view/frontend/templates/product/list/toolbar/sorter.phtml
+++ b/app/code/Magento/Catalog/view/frontend/templates/product/list/toolbar/sorter.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/Catalog/view/frontend/templates/product/list/toolbar/viewmode.phtml b/app/code/Magento/Catalog/view/frontend/templates/product/list/toolbar/viewmode.phtml
index 9a12250d270d2b52266298422fde390c78c5d932..85ffaec51d7b0dcca393cd6b7f56a5cc8c664b51 100644
--- a/app/code/Magento/Catalog/view/frontend/templates/product/list/toolbar/viewmode.phtml
+++ b/app/code/Magento/Catalog/view/frontend/templates/product/list/toolbar/viewmode.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/Catalog/view/frontend/templates/product/listing.phtml b/app/code/Magento/Catalog/view/frontend/templates/product/listing.phtml
index 5a8691fd3950598e14dff434fc07058fe669a4dd..0118f002833a7d5d8c07e25d8babd5e159ebad22 100644
--- a/app/code/Magento/Catalog/view/frontend/templates/product/listing.phtml
+++ b/app/code/Magento/Catalog/view/frontend/templates/product/listing.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/Catalog/view/frontend/templates/product/view/additional.phtml b/app/code/Magento/Catalog/view/frontend/templates/product/view/additional.phtml
index 6e5011258cdeaf2e9724b4cf92583a7a360758ed..c7d848e17489a079a6021cc124a1ca76364e7095 100644
--- a/app/code/Magento/Catalog/view/frontend/templates/product/view/additional.phtml
+++ b/app/code/Magento/Catalog/view/frontend/templates/product/view/additional.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php foreach ($this->getChildHtmlList() as $_html): ?>
     <?php echo $_html ?>
diff --git a/app/code/Magento/Catalog/view/frontend/templates/product/view/addto.phtml b/app/code/Magento/Catalog/view/frontend/templates/product/view/addto.phtml
index d086076200d925c613e25e22fd6fde306e3cc222..81c9e6b827c4d6f400e1eab9d60c60bbaff94d26 100644
--- a/app/code/Magento/Catalog/view/frontend/templates/product/view/addto.phtml
+++ b/app/code/Magento/Catalog/view/frontend/templates/product/view/addto.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Catalog\Block\Product\View*/
 ?>
 <?php
@@ -24,7 +27,7 @@ $compareHelper = $this->helper('Magento\Catalog\Helper\Product\Compare');
        title="<?php echo __('Add to Compare') ?>"
        class="action tocompare"><span><?php echo __('Add to Compare') ?></span></a>
 </div>
-<script type="text/javascript">
+<script>
   require([
       "jquery",
       "mage/mage"
diff --git a/app/code/Magento/Catalog/view/frontend/templates/product/view/addtocart.phtml b/app/code/Magento/Catalog/view/frontend/templates/product/view/addtocart.phtml
index b9a50f57269ab8145ef6503f6db0fd4fa73c928e..73c5aeafa13a6726a8135290b9cb73a855961eaf 100644
--- a/app/code/Magento/Catalog/view/frontend/templates/product/view/addtocart.phtml
+++ b/app/code/Magento/Catalog/view/frontend/templates/product/view/addtocart.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Catalog\Block\Product\View */
 ?>
 <?php $_product = $this->getProduct(); ?>
@@ -42,7 +44,7 @@
 </div>
 <?php endif; ?>
 
-<script type="text/javascript">
+<script>
 require([
     "jquery",
     "mage/mage"
diff --git a/app/code/Magento/Catalog/view/frontend/templates/product/view/attribute.phtml b/app/code/Magento/Catalog/view/frontend/templates/product/view/attribute.phtml
index 4f0d36a9236e9da7f1f8de20be90592a26bcdae5..e73437f173a79077fa5b0c9cfc55c1c6dd7cbb56 100644
--- a/app/code/Magento/Catalog/view/frontend/templates/product/view/attribute.phtml
+++ b/app/code/Magento/Catalog/view/frontend/templates/product/view/attribute.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Product view template
  *
diff --git a/app/code/Magento/Catalog/view/frontend/templates/product/view/attributes.phtml b/app/code/Magento/Catalog/view/frontend/templates/product/view/attributes.phtml
index 3b855b2ee677d4f4c69334559adae5d396e35faf..9922012a2ab10c392bd2edea80979df022e6cda1 100644
--- a/app/code/Magento/Catalog/view/frontend/templates/product/view/attributes.phtml
+++ b/app/code/Magento/Catalog/view/frontend/templates/product/view/attributes.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Product additional attributes template
  *
diff --git a/app/code/Magento/Catalog/view/frontend/templates/product/view/base-image.phtml b/app/code/Magento/Catalog/view/frontend/templates/product/view/base-image.phtml
index 3f0430a32ad8f5421eafcb984b4dd94705a706de..30dd92080a5d0c1ceb3e36c8a96fe574385bc47e 100644
--- a/app/code/Magento/Catalog/view/frontend/templates/product/view/base-image.phtml
+++ b/app/code/Magento/Catalog/view/frontend/templates/product/view/base-image.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Product media data template
  *
@@ -125,7 +127,7 @@ $thumbHeight =  $this->getVar("product_page_more_views:height") ?: $thumbWidth;
     <script data-template="notice" type="text/x-jQuery-tmpl">
         <p class="notice" data-role="notice">${text}</p>
     </script>
-    <script type="text/javascript">
+    <script>
         require(["jquery", "mage/mage"], function($){
 
             $('[data-role=media-gallery]')
diff --git a/app/code/Magento/Catalog/view/frontend/templates/product/view/description.phtml b/app/code/Magento/Catalog/view/frontend/templates/product/view/description.phtml
index a9551cfd7f33ceb7b39ce50c6d94d1e1d95e7ac6..07c0914ae9b9174afbf89d7c1b26f5aa4afeebab 100644
--- a/app/code/Magento/Catalog/view/frontend/templates/product/view/description.phtml
+++ b/app/code/Magento/Catalog/view/frontend/templates/product/view/description.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Product description template
  *
diff --git a/app/code/Magento/Catalog/view/frontend/templates/product/view/details.phtml b/app/code/Magento/Catalog/view/frontend/templates/product/view/details.phtml
index ac0297f0017791e131bf059731a1082a60971a14..f5f6f766cdb629ddbeddbeb95db61b7b2f584b5d 100644
--- a/app/code/Magento/Catalog/view/frontend/templates/product/view/details.phtml
+++ b/app/code/Magento/Catalog/view/frontend/templates/product/view/details.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php if ($detailedInfoGroup = $this->getGroupChildNames('detailed_info', 'getChildHtml')):?>
     <div class="product info detailed">
diff --git a/app/code/Magento/Catalog/view/frontend/templates/product/view/form.phtml b/app/code/Magento/Catalog/view/frontend/templates/product/view/form.phtml
index a8724bfb34ce7ed266d6afe6dc385be7610648af..cf0e3ee6d59ec9eb30b1e2292302604a93162e22 100644
--- a/app/code/Magento/Catalog/view/frontend/templates/product/view/form.phtml
+++ b/app/code/Magento/Catalog/view/frontend/templates/product/view/form.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Product view template
  *
@@ -33,7 +35,7 @@
         <?php echo $this->getChildHtml('form_bottom'); ?>
     </form>
 </div>
-<script type="text/javascript">
+<script>
     require([
         'jquery',
         'Magento_Catalog/js/price-box'
diff --git a/app/code/Magento/Catalog/view/frontend/templates/product/view/mailto.phtml b/app/code/Magento/Catalog/view/frontend/templates/product/view/mailto.phtml
index 0f4dae08440f14c729454ec18bdc7a2df6fca913..6105eb5ba0a39cd3687cde11289ebfafc0d93520 100644
--- a/app/code/Magento/Catalog/view/frontend/templates/product/view/mailto.phtml
+++ b/app/code/Magento/Catalog/view/frontend/templates/product/view/mailto.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php $_product = $this->getProduct() ?>
 <?php if ($this->canEmailToFriend()): ?>
diff --git a/app/code/Magento/Catalog/view/frontend/templates/product/view/opengraph/general.phtml b/app/code/Magento/Catalog/view/frontend/templates/product/view/opengraph/general.phtml
index 977708a69e4a449f7b30cae8db477add2be02dc0..8d2451d22f1a43f14d919d4c451f60d83e5493e6 100644
--- a/app/code/Magento/Catalog/view/frontend/templates/product/view/opengraph/general.phtml
+++ b/app/code/Magento/Catalog/view/frontend/templates/product/view/opengraph/general.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Catalog\Block\Product\View */
 ?>
 
diff --git a/app/code/Magento/Catalog/view/frontend/templates/product/view/options.phtml b/app/code/Magento/Catalog/view/frontend/templates/product/view/options.phtml
index af8cb9476dd48aac7f801d5c0c3e54be6c9cffb7..a8377bd7096ff473d6223c0ece98c83ae8b4eda1 100644
--- a/app/code/Magento/Catalog/view/frontend/templates/product/view/options.phtml
+++ b/app/code/Magento/Catalog/view/frontend/templates/product/view/options.phtml
@@ -3,12 +3,15 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /* @var $this \Magento\Catalog\Block\Product\View\Options */
 ?>
 
 <?php $_options = $this->decorateArray($this->getOptions()) ?>
 <?php if (count($_options)):?>
-<script type="text/javascript">
+<script>
 require([ 'jquery', 'Magento_Catalog/js/price-options' ], function($){
     $('#product_addtocart_form')
         .priceOptions({
diff --git a/app/code/Magento/Catalog/view/frontend/templates/product/view/options/js.phtml b/app/code/Magento/Catalog/view/frontend/templates/product/view/options/js.phtml
index 84d3a56467166c3b3c6a5fbb21ea4487c608569d..4e1de85a601205a71aaee1a61883aeabebeae86b 100644
--- a/app/code/Magento/Catalog/view/frontend/templates/product/view/options/js.phtml
+++ b/app/code/Magento/Catalog/view/frontend/templates/product/view/options/js.phtml
@@ -4,7 +4,7 @@
  * See COPYING.txt for license details.
  */
 ?>
-<script type="text/javascript">
+<script>
 require([
     "prototype"
 ], function(){
diff --git a/app/code/Magento/Catalog/view/frontend/templates/product/view/options/type/date.phtml b/app/code/Magento/Catalog/view/frontend/templates/product/view/options/type/date.phtml
index 25234713b6258a83819f2dde397dea6bcb335b1e..965dba919e604ef9a7703e4ae6ddfb20cc58f6cd 100644
--- a/app/code/Magento/Catalog/view/frontend/templates/product/view/options/type/date.phtml
+++ b/app/code/Magento/Catalog/view/frontend/templates/product/view/options/type/date.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php $_option = $this->getOption() ?>
 <?php $_optionId = $_option->getId() ?>
@@ -39,7 +42,7 @@
                    value=""
                    data-validate="{'validate-optional-datetime':<?php echo $_optionId?>}"/>
         <?php endif; ?>
-<script type="text/javascript">
+<script>
 require([
     'jquery',
     'mage/mage'
diff --git a/app/code/Magento/Catalog/view/frontend/templates/product/view/options/type/default.phtml b/app/code/Magento/Catalog/view/frontend/templates/product/view/options/type/default.phtml
index 75c18e5f7bd72f05654419655cb84019512144f8..39575520822e3e6c782c92213008223f18651220 100644
--- a/app/code/Magento/Catalog/view/frontend/templates/product/view/options/type/default.phtml
+++ b/app/code/Magento/Catalog/view/frontend/templates/product/view/options/type/default.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php $_option = $this->getOption() ?>
 <div class="field">
diff --git a/app/code/Magento/Catalog/view/frontend/templates/product/view/options/type/file.phtml b/app/code/Magento/Catalog/view/frontend/templates/product/view/options/type/file.phtml
index 57bdd806d829170ca0ede52f8bc9e68f56674d33..348e97ac91d0283847445735742296cfa5063ce6 100644
--- a/app/code/Magento/Catalog/view/frontend/templates/product/view/options/type/file.phtml
+++ b/app/code/Magento/Catalog/view/frontend/templates/product/view/options/type/file.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php $_option = $this->getOption(); ?>
 <?php $_fileInfo = $this->getFileInfo(); ?>
diff --git a/app/code/Magento/Catalog/view/frontend/templates/product/view/options/type/select.phtml b/app/code/Magento/Catalog/view/frontend/templates/product/view/options/type/select.phtml
index 908751bf439c677a2d7c5a3cd5ad571165046f4d..a861d27a70c8c277e4955b4dcc04d8fc443aa556 100644
--- a/app/code/Magento/Catalog/view/frontend/templates/product/view/options/type/select.phtml
+++ b/app/code/Magento/Catalog/view/frontend/templates/product/view/options/type/select.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php /* @var $this \Magento\Catalog\Block\Product\View\Options\Type\Select */ ?>
diff --git a/app/code/Magento/Catalog/view/frontend/templates/product/view/options/type/text.phtml b/app/code/Magento/Catalog/view/frontend/templates/product/view/options/type/text.phtml
index e27ad1a9cb82ad7705808281474e223e83c9028d..1b34e2f11a4a210bd6d5dc7986b7f7f4f6109fbd 100644
--- a/app/code/Magento/Catalog/view/frontend/templates/product/view/options/type/text.phtml
+++ b/app/code/Magento/Catalog/view/frontend/templates/product/view/options/type/text.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 $_option = $this->getOption();
diff --git a/app/code/Magento/Catalog/view/frontend/templates/product/view/price_clone.phtml b/app/code/Magento/Catalog/view/frontend/templates/product/view/price_clone.phtml
index 4b5b0d1d52a8dae062ac16088b1be4a29fd36e89..5dc5ea489295d22ed4bfe131f15e44f9dd2eb818 100644
--- a/app/code/Magento/Catalog/view/frontend/templates/product/view/price_clone.phtml
+++ b/app/code/Magento/Catalog/view/frontend/templates/product/view/price_clone.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var \Magento\Catalog\Block\Product\AbstractProduct $this */ ?>
 <?php $_product = $this->getProduct() ?>
diff --git a/app/code/Magento/Catalog/view/frontend/templates/product/view/review.phtml b/app/code/Magento/Catalog/view/frontend/templates/product/view/review.phtml
index 734c87fdddabd707bc99d238f20c1d7a1e82b54e..fcd3f06e6c522b0e05fe537ac48d73f5d8878ded 100644
--- a/app/code/Magento/Catalog/view/frontend/templates/product/view/review.phtml
+++ b/app/code/Magento/Catalog/view/frontend/templates/product/view/review.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\Catalog\Block\Product\AbstractProduct */ ?>
 <?php echo $this->getReviewsSummaryHtml($this->getProduct(), false, true)?>
diff --git a/app/code/Magento/Catalog/view/frontend/templates/product/view/type/default.phtml b/app/code/Magento/Catalog/view/frontend/templates/product/view/type/default.phtml
index 98803d333d59441d0a94bdfc25de713d285f9597..ddcdaf2e86c177ea5be197fc6330c858ce7057a4 100644
--- a/app/code/Magento/Catalog/view/frontend/templates/product/view/type/default.phtml
+++ b/app/code/Magento/Catalog/view/frontend/templates/product/view/type/default.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /* @var $this \Magento\Catalog\Block\Product\View\AbstractView */?>
 <?php $_product = $this->getProduct() ?>
diff --git a/app/code/Magento/Catalog/view/frontend/templates/product/widget/new/column/new_default_list.phtml b/app/code/Magento/Catalog/view/frontend/templates/product/widget/new/column/new_default_list.phtml
index edaeccde7faa1b6507f9f7ebfa39b8d61abe3f45..220ed8a4724804b2288aad7411051e762c17eb9c 100644
--- a/app/code/Magento/Catalog/view/frontend/templates/product/widget/new/column/new_default_list.phtml
+++ b/app/code/Magento/Catalog/view/frontend/templates/product/widget/new/column/new_default_list.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php if (($_products = $this->getProductCollection()) && $_products->getSize()): ?>
     <?php $imageBlock =  $this->getLayout()->createBlock('Magento\Catalog\Block\Product\Image');?>
diff --git a/app/code/Magento/Catalog/view/frontend/templates/product/widget/new/column/new_images_list.phtml b/app/code/Magento/Catalog/view/frontend/templates/product/widget/new/column/new_images_list.phtml
index 8bdda5c87d9c5db652963201ee4a6a37b320baf8..bc6c4fa55ce385d6e3064b80abb73b4c5257ba5f 100644
--- a/app/code/Magento/Catalog/view/frontend/templates/product/widget/new/column/new_images_list.phtml
+++ b/app/code/Magento/Catalog/view/frontend/templates/product/widget/new/column/new_images_list.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php if (($_products = $this->getProductCollection()) && $_products->getSize()): ?>
     <?php $imageBlock =  $this->getLayout()->createBlock('Magento\Catalog\Block\Product\Image'); ?>
diff --git a/app/code/Magento/Catalog/view/frontend/templates/product/widget/new/column/new_names_list.phtml b/app/code/Magento/Catalog/view/frontend/templates/product/widget/new/column/new_names_list.phtml
index 771ad1ef45c7f6c64da6df141e9a6db272458695..51fb3a3fd8580c2c409a51ce90a353d2bfb9ad77 100644
--- a/app/code/Magento/Catalog/view/frontend/templates/product/widget/new/column/new_names_list.phtml
+++ b/app/code/Magento/Catalog/view/frontend/templates/product/widget/new/column/new_names_list.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php if (($_products = $this->getProductCollection()) && $_products->getSize()): ?>
     <div class="block widget block-new-products-names">
diff --git a/app/code/Magento/Catalog/view/frontend/templates/product/widget/new/content/new_grid.phtml b/app/code/Magento/Catalog/view/frontend/templates/product/widget/new/content/new_grid.phtml
index 3d129802ce419cfd8f14258189421bf5a13b0b20..c806f16ca1b78077baf27d526b5fef883e39852a 100644
--- a/app/code/Magento/Catalog/view/frontend/templates/product/widget/new/content/new_grid.phtml
+++ b/app/code/Magento/Catalog/view/frontend/templates/product/widget/new/content/new_grid.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/Catalog/view/frontend/templates/product/widget/new/content/new_list.phtml b/app/code/Magento/Catalog/view/frontend/templates/product/widget/new/content/new_list.phtml
index 72215d25438f10d39565613d39a68b33183bd194..1c29c88ac1482747ea99f77bc93d381339db1d06 100644
--- a/app/code/Magento/Catalog/view/frontend/templates/product/widget/new/content/new_list.phtml
+++ b/app/code/Magento/Catalog/view/frontend/templates/product/widget/new/content/new_list.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/Catalog/view/frontend/web/images/magnifier_handle.gif b/app/code/Magento/Catalog/view/frontend/web/images/magnifier_handle.gif
deleted file mode 100644
index cab1a4728c64a13501c48ce4cc667559f0d8ef43..0000000000000000000000000000000000000000
Binary files a/app/code/Magento/Catalog/view/frontend/web/images/magnifier_handle.gif and /dev/null differ
diff --git a/app/code/Magento/Catalog/view/frontend/web/images/slider_btn_zoom_in.gif b/app/code/Magento/Catalog/view/frontend/web/images/slider_btn_zoom_in.gif
deleted file mode 100644
index 5a8d72e2a4223419617fc3ab7e949b26eceaa2b1..0000000000000000000000000000000000000000
Binary files a/app/code/Magento/Catalog/view/frontend/web/images/slider_btn_zoom_in.gif and /dev/null differ
diff --git a/app/code/Magento/Catalog/view/frontend/web/images/slider_btn_zoom_out.gif b/app/code/Magento/Catalog/view/frontend/web/images/slider_btn_zoom_out.gif
deleted file mode 100644
index feffd3247c851e282eb701f9a825fc506c5bdd96..0000000000000000000000000000000000000000
Binary files a/app/code/Magento/Catalog/view/frontend/web/images/slider_btn_zoom_out.gif and /dev/null differ
diff --git a/app/code/Magento/Catalog/view/frontend/web/widgets.css b/app/code/Magento/Catalog/view/frontend/web/widgets.css
deleted file mode 100644
index ae88a9bc74109217cc92fed9e667135e05d713b8..0000000000000000000000000000000000000000
--- a/app/code/Magento/Catalog/view/frontend/web/widgets.css
+++ /dev/null
@@ -1,4 +0,0 @@
-/**
- * Copyright © 2015 Magento. All rights reserved.
- * See COPYING.txt for license details.
- */
diff --git a/app/code/Magento/Catalog/view/frontend/web/zoom.css b/app/code/Magento/Catalog/view/frontend/web/zoom.css
deleted file mode 100644
index a0a82a0301858916694262e524efb042847cd25f..0000000000000000000000000000000000000000
--- a/app/code/Magento/Catalog/view/frontend/web/zoom.css
+++ /dev/null
@@ -1,26 +0,0 @@
-/**
- * Copyright © 2015 Magento. All rights reserved.
- * See COPYING.txt for license details.
- */
-.product-img-box .ui-slider-handle {
-    background: url("images/magnifier_handle.gif") no-repeat scroll 0 0 transparent;
-    height: 22px;
-    left: 0;
-    position: absolute;
-    top: -2px;
-    width: 9px;
-    margin-left: -5px;
-}
-.product-img-box .ui-slider {
-    height: 20px;
-    border: none;
-    position: relative;
-    background: none;
-    z-index: 100;
-}
-#track .ui-slider-handle {
-    top: 1px;
-}
-body .product-view .product-img-box .zoom {
-    padding: 0 31px;
-}
\ No newline at end of file
diff --git a/app/code/Magento/CatalogImportExport/Model/Export/Product.php b/app/code/Magento/CatalogImportExport/Model/Export/Product.php
index e4a7f205361bc08cb001ee0c7d2b24e662a52c43..923f303f798ce3a9588ce08d27a86e05baba9c28 100644
--- a/app/code/Magento/CatalogImportExport/Model/Export/Product.php
+++ b/app/code/Magento/CatalogImportExport/Model/Export/Product.php
@@ -9,6 +9,9 @@ namespace Magento\CatalogImportExport\Model\Export;
  * Export entity product model
  *
  * @author      Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.TooManyFields)
+ * @SuppressWarnings(PHPMD.ExcessiveClassComplexity)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Product extends \Magento\ImportExport\Model\Export\Entity\AbstractEntity
 {
@@ -213,6 +216,7 @@ class Product extends \Magento\ImportExport\Model\Export\Entity\AbstractEntity
      * @param Product\Type\Factory $_typeFactory
      * @param \Magento\Catalog\Model\Product\LinkTypeProvider $linkTypeProvider
      * @param \Magento\CatalogImportExport\Model\Export\RowCustomizerInterface $rowCustomizer
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Stdlib\DateTime\TimezoneInterface $localeDate,
@@ -759,6 +763,10 @@ class Product extends \Magento\ImportExport\Model\Export\Entity\AbstractEntity
      * Get export data for collection
      *
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     protected function _getExportData()
     {
diff --git a/app/code/Magento/CatalogImportExport/Model/Import/Product.php b/app/code/Magento/CatalogImportExport/Model/Import/Product.php
index ddced3b0e8afaa9b7650d1f6bf3cd5717b55767a..40abe3cd9757d5d53605cccb6f84291cb42c3dfc 100644
--- a/app/code/Magento/CatalogImportExport/Model/Import/Product.php
+++ b/app/code/Magento/CatalogImportExport/Model/Import/Product.php
@@ -3,12 +3,18 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\CatalogImportExport\Model\Import;
 
 use Magento\Framework\App\Filesystem\DirectoryList;
 
 /**
  * Import entity product model
+ * @SuppressWarnings(PHPMD.TooManyFields)
+ * @SuppressWarnings(PHPMD.ExcessiveClassComplexity)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Product extends \Magento\ImportExport\Model\Import\Entity\AbstractEntity
 {
@@ -385,9 +391,9 @@ class Product extends \Magento\ImportExport\Model\Import\Entity\AbstractEntity
     protected $stockConfiguration;
 
     /**
-     * @var \Magento\CatalogInventory\Api\StockStateInterface
+     * @var \Magento\CatalogInventory\Model\Spi\StockStateProviderInterface
      */
-    protected $stockState;
+    protected $stockStateProvider;
 
     /**
      * Core event manager proxy
@@ -502,7 +508,7 @@ class Product extends \Magento\ImportExport\Model\Import\Entity\AbstractEntity
      * @param \Magento\Framework\Event\ManagerInterface $eventManager
      * @param \Magento\CatalogInventory\Api\StockRegistryInterface $stockRegistry
      * @param \Magento\CatalogInventory\Api\StockConfigurationInterface $stockConfiguration
-     * @param \Magento\CatalogInventory\Api\StockStateInterface $stockState
+     * @param \Magento\CatalogInventory\Model\Spi\StockStateProviderInterface $stockStateProvider
      * @param \Magento\Catalog\Helper\Data $catalogData
      * @param \Magento\ImportExport\Model\Import\Config $importConfig
      * @param Proxy\Product\ResourceFactory $resourceFactory
@@ -525,6 +531,7 @@ class Product extends \Magento\ImportExport\Model\Import\Entity\AbstractEntity
      * @param \Magento\Indexer\Model\IndexerRegistry $indexerRegistry
      * @param array $data
      * @throws \Magento\Framework\Model\Exception
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Core\Helper\Data $coreData,
@@ -537,7 +544,7 @@ class Product extends \Magento\ImportExport\Model\Import\Entity\AbstractEntity
         \Magento\Framework\Event\ManagerInterface $eventManager,
         \Magento\CatalogInventory\Api\StockRegistryInterface $stockRegistry,
         \Magento\CatalogInventory\Api\StockConfigurationInterface $stockConfiguration,
-        \Magento\CatalogInventory\Api\StockStateInterface $stockState,
+        \Magento\CatalogInventory\Model\Spi\StockStateProviderInterface $stockStateProvider,
         \Magento\Catalog\Helper\Data $catalogData,
         \Magento\ImportExport\Model\Import\Config $importConfig,
         \Magento\CatalogImportExport\Model\Import\Proxy\Product\ResourceFactory $resourceFactory,
@@ -563,7 +570,7 @@ class Product extends \Magento\ImportExport\Model\Import\Entity\AbstractEntity
         $this->_eventManager = $eventManager;
         $this->stockRegistry = $stockRegistry;
         $this->stockConfiguration = $stockConfiguration;
-        $this->stockState = $stockState;
+        $this->stockStateProvider = $stockStateProvider;
         $this->_catalogData = $catalogData;
         $this->_importConfig = $importConfig;
         $this->_resourceFactory = $resourceFactory;
@@ -825,6 +832,8 @@ class Product extends \Magento\ImportExport\Model\Import\Entity\AbstractEntity
      * @param array $rowData
      * @param int $rowNum
      * @return bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _isProductCategoryValid(array $rowData, $rowNum)
     {
@@ -893,6 +902,7 @@ class Product extends \Magento\ImportExport\Model\Import\Entity\AbstractEntity
      * @param array $rowData
      * @param int $rowNum
      * @return bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _isTierPriceValid(array $rowData, $rowNum)
     {
@@ -960,6 +970,7 @@ class Product extends \Magento\ImportExport\Model\Import\Entity\AbstractEntity
      * @param array $rowData
      * @param int $rowNum
      * @return bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _isGroupPriceValid(array $rowData, $rowNum)
     {
@@ -1050,6 +1061,9 @@ class Product extends \Magento\ImportExport\Model\Import\Entity\AbstractEntity
      * Must be called after ALL products saving done.
      *
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _saveLinks()
     {
@@ -1172,7 +1186,6 @@ class Product extends \Magento\ImportExport\Model\Import\Entity\AbstractEntity
                     foreach ($storeValues as $storeId => $storeValue) {
                         $tableData[] = [
                             'entity_id' => $productId,
-                            'entity_type_id' => $this->_entityTypeId,
                             'attribute_id' => $attributeId,
                             'store_id' => $storeId,
                             'value' => $storeValue,
@@ -1192,9 +1205,6 @@ class Product extends \Magento\ImportExport\Model\Import\Entity\AbstractEntity
                     ) . $this->_connection->quoteInto(
                         ' AND entity_id = ?',
                         $productId
-                    ) . $this->_connection->quoteInto(
-                        ' AND entity_type_id = ?',
-                        $this->_entityTypeId
                     );
                     $this->_connection->delete($tableName, $where);
                 }
@@ -1283,6 +1293,9 @@ class Product extends \Magento\ImportExport\Model\Import\Entity\AbstractEntity
      * Gather and save information about product entities.
      *
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _saveProducts()
     {
@@ -1325,7 +1338,6 @@ class Product extends \Magento\ImportExport\Model\Import\Entity\AbstractEntity
                         // new row
                         if (!$productLimit || $productsQty < $productLimit) {
                             $entityRowsIn[$rowSku] = [
-                                'entity_type_id' => $this->_entityTypeId,
                                 'attribute_set_id' => $this->_newSku[$rowSku]['attr_set_id'],
                                 'type_id' => $this->_newSku[$rowSku]['type_id'],
                                 'sku' => $rowSku,
@@ -1637,6 +1649,7 @@ class Product extends \Magento\ImportExport\Model\Import\Entity\AbstractEntity
      *
      * @param array $mediaGalleryData
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _saveMediaGallery(array $mediaGalleryData)
     {
@@ -1801,12 +1814,14 @@ class Product extends \Magento\ImportExport\Model\Import\Entity\AbstractEntity
                 );
 
                 if ($this->stockConfiguration->isQty($this->_newSku[$rowData[self::COL_SKU]]['type_id'])) {
-                    $row['is_in_stock'] = $this->stockState->verifyStock($row['product_id'], $row['website_id']);
-                    if ($this->stockState->verifyNotification($row['product_id'], $row['website_id'])) {
+                    $stockItemDo->setData($row);
+                    $row['is_in_stock'] = $this->stockStateProvider->verifyStock($stockItemDo);
+                    if ($this->stockStateProvider->verifyNotification($stockItemDo)) {
                         $row['low_stock_date'] = $this->_localeDate->date(null, null, null, false)
                             ->toString(\Magento\Framework\Stdlib\DateTime::DATETIME_INTERNAL_FORMAT);
                     }
-                    $row['stock_status_changed_auto'] = (int) !$this->stockState->verifyStock($row['product_id'], $row['website_id']);
+                    $row['stock_status_changed_auto'] =
+                        (int) !$this->stockStateProvider->verifyStock($stockItemDo);
                 } else {
                     $row['qty'] = 0;
                 }
@@ -1919,6 +1934,9 @@ class Product extends \Magento\ImportExport\Model\Import\Entity\AbstractEntity
      * @param array $rowData
      * @param int $rowNum
      * @return boolean
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public function validateRow(array $rowData, $rowNum)
     {
diff --git a/app/code/Magento/CatalogImportExport/Model/Import/Product/Option.php b/app/code/Magento/CatalogImportExport/Model/Import/Product/Option.php
index 3beb252bf658241c2f03e6420170d34c4cb5cd83..f0e7b75f25d90035d6af10548010708e3a7b7488 100644
--- a/app/code/Magento/CatalogImportExport/Model/Import/Product/Option.php
+++ b/app/code/Magento/CatalogImportExport/Model/Import/Product/Option.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\CatalogImportExport\Model\Import\Product;
 
 /**
@@ -1169,6 +1172,7 @@ class Option extends \Magento\ImportExport\Model\Import\Entity\AbstractEntity
      * @param array &$parentCount
      * @param array &$childCount
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _collectOptionTypeData(
         array $rowData,
@@ -1438,6 +1442,7 @@ class Option extends \Magento\ImportExport\Model\Import\Entity\AbstractEntity
      * @param int $optionTypeId
      * @param bool $defaultStore
      * @return array|false
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _getSpecificTypeData(array $rowData, $optionTypeId, $defaultStore = true)
     {
diff --git a/app/code/Magento/CatalogImportExport/Model/Import/Product/Type/AbstractType.php b/app/code/Magento/CatalogImportExport/Model/Import/Product/Type/AbstractType.php
index 8ab80ea553092d7c499d07f432190e924a5f4bc3..c6b445b8ce480da9ae7b29787e81e1570d0baf8d 100644
--- a/app/code/Magento/CatalogImportExport/Model/Import/Product/Type/AbstractType.php
+++ b/app/code/Magento/CatalogImportExport/Model/Import/Product/Type/AbstractType.php
@@ -123,6 +123,7 @@ abstract class AbstractType
      * @param array $attrParams Refined attribute parameters.
      * @param mixed $attribute
      * @return \Magento\CatalogImportExport\Model\Import\Product\Type\AbstractType
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     protected function _addAttributeParams($attrSetName, array $attrParams, $attribute)
     {
@@ -201,6 +202,7 @@ abstract class AbstractType
      *
      * @param string $attrCode
      * @return bool
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     protected function _isAttributeRequiredCheckNeeded($attrCode)
     {
@@ -213,6 +215,7 @@ abstract class AbstractType
      * @param array $rowData
      * @param int $rowNum
      * @return bool
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     protected function _isParticularAttributesValid(array $rowData, $rowNum)
     {
@@ -247,6 +250,7 @@ abstract class AbstractType
      * @param int $rowNum
      * @param bool $isNewProduct Optional
      * @return bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function isRowValid(array $rowData, $rowNum, $isNewProduct = true)
     {
@@ -301,6 +305,7 @@ abstract class AbstractType
      * @param bool $withDefaultValue
      *
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function prepareAttributesWithDefaultValueForSave(array $rowData, $withDefaultValue = true)
     {
diff --git a/app/code/Magento/CatalogImportExport/Model/Indexer/Category/Product/Plugin/Import.php b/app/code/Magento/CatalogImportExport/Model/Indexer/Category/Product/Plugin/Import.php
index 3d188c1bde86d1f482026e75241c5b09c037b877..a0e7c5a578a87d4dae9c52f884337934f690ebb5 100644
--- a/app/code/Magento/CatalogImportExport/Model/Indexer/Category/Product/Plugin/Import.php
+++ b/app/code/Magento/CatalogImportExport/Model/Indexer/Category/Product/Plugin/Import.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\CatalogImportExport\Model\Indexer\Category\Product\Plugin;
 
 class Import
diff --git a/app/code/Magento/CatalogImportExport/Model/Indexer/Product/Category/Plugin/Import.php b/app/code/Magento/CatalogImportExport/Model/Indexer/Product/Category/Plugin/Import.php
index 32cc1b827fa195dc45ccc8d16fc10baff11cd897..4033c84be63e539b85b345ef13aec3107d4cd074 100644
--- a/app/code/Magento/CatalogImportExport/Model/Indexer/Product/Category/Plugin/Import.php
+++ b/app/code/Magento/CatalogImportExport/Model/Indexer/Product/Category/Plugin/Import.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\CatalogImportExport\Model\Indexer\Product\Category\Plugin;
 
 class Import
diff --git a/app/code/Magento/CatalogImportExport/composer.json b/app/code/Magento/CatalogImportExport/composer.json
index b494e210bef94382376ec7d5c04b2ea32872536b..f305a4d190986d9ed07dc82a7a3baffe84268e32 100644
--- a/app/code/Magento/CatalogImportExport/composer.json
+++ b/app/code/Magento/CatalogImportExport/composer.json
@@ -3,20 +3,20 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-core": "0.42.0-beta3",
-        "magento/module-catalog": "0.42.0-beta3",
-        "magento/module-eav": "0.42.0-beta3",
-        "magento/module-import-export": "0.42.0-beta3",
-        "magento/module-indexer": "0.42.0-beta3",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-catalog-inventory": "0.42.0-beta3",
-        "magento/module-customer": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-core": "0.42.0-beta4",
+        "magento/module-catalog": "0.42.0-beta4",
+        "magento/module-eav": "0.42.0-beta4",
+        "magento/module-import-export": "0.42.0-beta4",
+        "magento/module-indexer": "0.42.0-beta4",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-catalog-inventory": "0.42.0-beta4",
+        "magento/module-customer": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "ext-ctype": "*",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/CatalogInventory/Api/Data/StockItemInterface.php b/app/code/Magento/CatalogInventory/Api/Data/StockItemInterface.php
index f2555d146f71199f6cfb03addfce4a392317874a..72759511123b125c28201447968cb6671367ae4d 100644
--- a/app/code/Magento/CatalogInventory/Api/Data/StockItemInterface.php
+++ b/app/code/Magento/CatalogInventory/Api/Data/StockItemInterface.php
@@ -92,16 +92,19 @@ interface StockItemInterface extends ExtensibleDataInterface
 
     /**
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsQtyDecimal();
 
     /**
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getShowDefaultNotificationMessage();
 
     /**
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getUseConfigMinQty();
 
@@ -126,6 +129,7 @@ interface StockItemInterface extends ExtensibleDataInterface
 
     /**
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getUseConfigMaxSaleQty();
 
@@ -138,6 +142,7 @@ interface StockItemInterface extends ExtensibleDataInterface
 
     /**
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getUseConfigBackorders();
 
@@ -150,6 +155,7 @@ interface StockItemInterface extends ExtensibleDataInterface
 
     /**
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getUseConfigNotifyStockQty();
 
@@ -162,6 +168,7 @@ interface StockItemInterface extends ExtensibleDataInterface
 
     /**
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getUseConfigQtyIncrements();
 
@@ -174,6 +181,7 @@ interface StockItemInterface extends ExtensibleDataInterface
 
     /**
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getUseConfigEnableQtyInc();
 
@@ -181,11 +189,13 @@ interface StockItemInterface extends ExtensibleDataInterface
      * Retrieve whether Quantity Increments is enabled
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getEnableQtyIncrements();
 
     /**
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getUseConfigManageStock();
 
@@ -193,6 +203,7 @@ interface StockItemInterface extends ExtensibleDataInterface
      * Retrieve can Manage Stock
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getManageStock();
 
@@ -203,6 +214,7 @@ interface StockItemInterface extends ExtensibleDataInterface
 
     /**
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsDecimalDivided();
 
diff --git a/app/code/Magento/CatalogInventory/Api/StockConfigurationInterface.php b/app/code/Magento/CatalogInventory/Api/StockConfigurationInterface.php
index 879b438cc0f4100ec6d0ddc7f5962a8d870682f0..5052ea004b256113e1af1bb01a7c4a43b4ca83b0 100644
--- a/app/code/Magento/CatalogInventory/Api/StockConfigurationInterface.php
+++ b/app/code/Magento/CatalogInventory/Api/StockConfigurationInterface.php
@@ -69,6 +69,7 @@ interface StockConfigurationInterface
      *
      * @param int $storeId
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getEnableQtyIncrements($storeId = null);
 
@@ -99,6 +100,7 @@ interface StockConfigurationInterface
      *
      * @param int $storeId
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getCanBackInStock($storeId = null);
 
diff --git a/app/code/Magento/CatalogInventory/Helper/Stock.php b/app/code/Magento/CatalogInventory/Helper/Stock.php
index e6921ac68ae4b4ae43a073604730c79a9573bb80..e8d111dfa1f352ab469f627cc5c86cd6fbbfb1b7 100644
--- a/app/code/Magento/CatalogInventory/Helper/Stock.php
+++ b/app/code/Magento/CatalogInventory/Helper/Stock.php
@@ -84,6 +84,7 @@ class Stock
      *
      * @param \Magento\Catalog\Model\Resource\Collection\AbstractCollection $productCollection
      * @return void
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function addStockStatusToProducts(
         \Magento\Catalog\Model\Resource\Collection\AbstractCollection $productCollection
diff --git a/app/code/Magento/CatalogInventory/Model/Adminhtml/Stock/Item.php b/app/code/Magento/CatalogInventory/Model/Adminhtml/Stock/Item.php
index b72d5e9319e996b0a8c58252b098be3330b97bbb..d4612c3e2e32cac758fc8943d144ba16d89e5b25 100644
--- a/app/code/Magento/CatalogInventory/Model/Adminhtml/Stock/Item.php
+++ b/app/code/Magento/CatalogInventory/Model/Adminhtml/Stock/Item.php
@@ -36,6 +36,7 @@ class Item extends \Magento\CatalogInventory\Model\Stock\Item
      * @param \Magento\Framework\Model\Resource\AbstractResource $resource
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
@@ -113,6 +114,7 @@ class Item extends \Magento\CatalogInventory\Model\Stock\Item
 
     /**
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getShowDefaultNotificationMessage()
     {
diff --git a/app/code/Magento/CatalogInventory/Model/Configuration.php b/app/code/Magento/CatalogInventory/Model/Configuration.php
index 990c5db1a2f492ed53b5109286eb3c287dad2983..2d4d0189a63c565b9bca8f97fb3b016e328220b6 100644
--- a/app/code/Magento/CatalogInventory/Model/Configuration.php
+++ b/app/code/Magento/CatalogInventory/Model/Configuration.php
@@ -255,6 +255,7 @@ class Configuration implements StockConfigurationInterface
      *
      * @param null|string|bool|int|\Magento\Store\Model\Store $store
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getEnableQtyIncrements($store = null)
     {
@@ -313,6 +314,7 @@ class Configuration implements StockConfigurationInterface
      *
      * @param null|string|bool|int|\Magento\Store\Model\Store $store
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getCanBackInStock($store = null)
     {
diff --git a/app/code/Magento/CatalogInventory/Model/Observer.php b/app/code/Magento/CatalogInventory/Model/Observer.php
index d71960593d6967d1b683317fdeaa641a5d17db7c..eb23b47a11b9ddae9e56f70708e5d26857f83016 100644
--- a/app/code/Magento/CatalogInventory/Model/Observer.php
+++ b/app/code/Magento/CatalogInventory/Model/Observer.php
@@ -12,10 +12,11 @@ use Magento\CatalogInventory\Api\StockManagementInterface;
 use Magento\CatalogInventory\Api\StockRegistryInterface;
 use Magento\CatalogInventory\Model\Stock\Item;
 use Magento\Framework\Event\Observer as EventObserver;
-use Magento\Sales\Model\Quote\Item as QuoteItem;
+use Magento\Quote\Model\Quote\Item as QuoteItem;
 
 /**
  * Catalog inventory module observer
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Observer
 {
@@ -333,7 +334,7 @@ class Observer
      */
     public function subtractQuoteInventory(EventObserver $observer)
     {
-        /** @var \Magento\Sales\Model\Quote $quote */
+        /** @var \Magento\Quote\Model\Quote $quote */
         $quote = $observer->getEvent()->getQuote();
 
         // Maybe we've already processed this quote in some event during order placement
diff --git a/app/code/Magento/CatalogInventory/Model/Quote/Item/QuantityValidator.php b/app/code/Magento/CatalogInventory/Model/Quote/Item/QuantityValidator.php
index b2d9922ca23ef69c8cd04382c1b4d1c95837c64d..1af08b5f1a1f4bd665caa1ddf7d3fd896d29aca0 100644
--- a/app/code/Magento/CatalogInventory/Model/Quote/Item/QuantityValidator.php
+++ b/app/code/Magento/CatalogInventory/Model/Quote/Item/QuantityValidator.php
@@ -57,10 +57,13 @@ class QuantityValidator
      *
      * @return void
      * @throws \Magento\Framework\Model\Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public function validate(\Magento\Framework\Event\Observer $observer)
     {
-        /* @var $quoteItem \Magento\Sales\Model\Quote\Item */
+        /* @var $quoteItem \Magento\Quote\Model\Quote\Item */
         $quoteItem = $observer->getEvent()->getItem();
 
         if (!$quoteItem ||
@@ -197,7 +200,7 @@ class QuantityValidator
     /**
      * Removes error statuses from quote and item, set by this observer
      *
-     * @param \Magento\Sales\Model\Quote\Item $item
+     * @param \Magento\Quote\Model\Quote\Item $item
      * @param int $code
      * @return void
      */
diff --git a/app/code/Magento/CatalogInventory/Model/Quote/Item/QuantityValidator/Initializer/Option.php b/app/code/Magento/CatalogInventory/Model/Quote/Item/QuantityValidator/Initializer/Option.php
index a1c6a0a5c2f1a3a657a16753b6b7eb2fd9096bd4..7c968bb1aa3696b3702bec0333eaf2a54e62b5e5 100644
--- a/app/code/Magento/CatalogInventory/Model/Quote/Item/QuantityValidator/Initializer/Option.php
+++ b/app/code/Magento/CatalogInventory/Model/Quote/Item/QuantityValidator/Initializer/Option.php
@@ -44,15 +44,15 @@ class Option
     /**
      * Init stock item
      *
-     * @param \Magento\Sales\Model\Quote\Item\Option $option
-     * @param \Magento\Sales\Model\Quote\Item $quoteItem
+     * @param \Magento\Quote\Model\Quote\Item\Option $option
+     * @param \Magento\Quote\Model\Quote\Item $quoteItem
      *
      * @return \Magento\CatalogInventory\Model\Stock\Item
      * @throws \Magento\Framework\Model\Exception
      */
     public function getStockItem(
-        \Magento\Sales\Model\Quote\Item\Option $option,
-        \Magento\Sales\Model\Quote\Item $quoteItem
+        \Magento\Quote\Model\Quote\Item\Option $option,
+        \Magento\Quote\Model\Quote\Item $quoteItem
     ) {
         $stockItem = $this->stockRegistry->getStockItem(
             $option->getProduct()->getId(),
@@ -76,16 +76,16 @@ class Option
     /**
      * Initialize item option
      *
-     * @param \Magento\Sales\Model\Quote\Item\Option $option
-     * @param \Magento\Sales\Model\Quote\Item $quoteItem
+     * @param \Magento\Quote\Model\Quote\Item\Option $option
+     * @param \Magento\Quote\Model\Quote\Item $quoteItem
      * @param int $qty
      *
      * @return \Magento\Framework\Object
      * @throws \Magento\Framework\Model\Exception
      */
     public function initialize(
-        \Magento\Sales\Model\Quote\Item\Option $option,
-        \Magento\Sales\Model\Quote\Item $quoteItem,
+        \Magento\Quote\Model\Quote\Item\Option $option,
+        \Magento\Quote\Model\Quote\Item $quoteItem,
         $qty
     ) {
         $optionValue = $option->getValue();
diff --git a/app/code/Magento/CatalogInventory/Model/Quote/Item/QuantityValidator/Initializer/QtyProcessor.php b/app/code/Magento/CatalogInventory/Model/Quote/Item/QuantityValidator/Initializer/QtyProcessor.php
index 08b378360a67c4dc5ccb5cf842c824ed82c3de30..c197f09f0d6f9d64eb7488053373448f9aa19e20 100644
--- a/app/code/Magento/CatalogInventory/Model/Quote/Item/QuantityValidator/Initializer/QtyProcessor.php
+++ b/app/code/Magento/CatalogInventory/Model/Quote/Item/QuantityValidator/Initializer/QtyProcessor.php
@@ -6,7 +6,7 @@
 namespace Magento\CatalogInventory\Model\Quote\Item\QuantityValidator\Initializer;
 
 use Magento\CatalogInventory\Model\Quote\Item\QuantityValidator\QuoteItemQtyList;
-use Magento\Sales\Model\Quote\Item;
+use Magento\Quote\Model\Quote\Item;
 
 /**
  * Class QtyProcessor
diff --git a/app/code/Magento/CatalogInventory/Model/Quote/Item/QuantityValidator/Initializer/StockItem.php b/app/code/Magento/CatalogInventory/Model/Quote/Item/QuantityValidator/Initializer/StockItem.php
index ed3a284eca61882489b12f3454fc6c0418f2acaa..a4f21f6336a6d7520bfd39836eb39da46255a3dd 100644
--- a/app/code/Magento/CatalogInventory/Model/Quote/Item/QuantityValidator/Initializer/StockItem.php
+++ b/app/code/Magento/CatalogInventory/Model/Quote/Item/QuantityValidator/Initializer/StockItem.php
@@ -45,15 +45,17 @@ class StockItem
      * Initialize stock item
      *
      * @param \Magento\CatalogInventory\Api\Data\StockItemInterface $stockItem
-     * @param \Magento\Sales\Model\Quote\Item $quoteItem
+     * @param \Magento\Quote\Model\Quote\Item $quoteItem
      * @param int $qty
      *
      * @return \Magento\Framework\Object
      * @throws \Magento\Framework\Model\Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function initialize(
         \Magento\CatalogInventory\Api\Data\StockItemInterface $stockItem,
-        \Magento\Sales\Model\Quote\Item $quoteItem,
+        \Magento\Quote\Model\Quote\Item $quoteItem,
         $qty
     ) {
         /**
diff --git a/app/code/Magento/CatalogInventory/Model/Resource/Indexer/Stock/DefaultStock.php b/app/code/Magento/CatalogInventory/Model/Resource/Indexer/Stock/DefaultStock.php
index a7396a044f43b1089c23314a92007167c2fcf98a..6be23ba43302afed63fa6a4b9f5744b811af9602 100644
--- a/app/code/Magento/CatalogInventory/Model/Resource/Indexer/Stock/DefaultStock.php
+++ b/app/code/Magento/CatalogInventory/Model/Resource/Indexer/Stock/DefaultStock.php
@@ -132,6 +132,7 @@ class DefaultStock extends \Magento\Catalog\Model\Resource\Product\Indexer\Abstr
      * Check product type is composite
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsComposite()
     {
@@ -157,6 +158,7 @@ class DefaultStock extends \Magento\Catalog\Model\Resource\Product\Indexer\Abstr
      * @param int|array $entityIds
      * @param bool $usePrimaryTable use primary or temporary index table
      * @return \Magento\Framework\DB\Select
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     protected function _getStockStatusSelect($entityIds = null, $usePrimaryTable = false)
     {
@@ -279,6 +281,7 @@ class DefaultStock extends \Magento\Catalog\Model\Resource\Product\Indexer\Abstr
      *
      * @param string $table
      * @return string
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function getIdxTable($table = null)
     {
diff --git a/app/code/Magento/CatalogInventory/Model/Resource/Stock/Item/StockItemCriteria.php b/app/code/Magento/CatalogInventory/Model/Resource/Stock/Item/StockItemCriteria.php
index afa169fbd1d8655485329e04ea7654bff8e69239..ac004fe8581e9bd556698280073b10d3ab7a3366 100644
--- a/app/code/Magento/CatalogInventory/Model/Resource/Stock/Item/StockItemCriteria.php
+++ b/app/code/Magento/CatalogInventory/Model/Resource/Stock/Item/StockItemCriteria.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\CatalogInventory\Model\Resource\Stock\Item;
 
 use Magento\Framework\Data\AbstractCriteria;
diff --git a/app/code/Magento/CatalogInventory/Model/Resource/Stock/Status/StockStatusCriteria.php b/app/code/Magento/CatalogInventory/Model/Resource/Stock/Status/StockStatusCriteria.php
index c8b0b7a673ab6361d0331ca8f85c7a2e9240ef4a..4edc96f803ef3a4148c8d6d1b5655c723c899858 100644
--- a/app/code/Magento/CatalogInventory/Model/Resource/Stock/Status/StockStatusCriteria.php
+++ b/app/code/Magento/CatalogInventory/Model/Resource/Stock/Status/StockStatusCriteria.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\CatalogInventory\Model\Resource\Stock\Status;
 
 use Magento\Framework\Data\AbstractCriteria;
diff --git a/app/code/Magento/CatalogInventory/Model/Stock/Item.php b/app/code/Magento/CatalogInventory/Model/Stock/Item.php
index 055e8aee8e29e5cae22ffbdff2dacee05bf76897..51a72cdf1d364e30ec16e3930ecd1f607a3bce08 100644
--- a/app/code/Magento/CatalogInventory/Model/Stock/Item.php
+++ b/app/code/Magento/CatalogInventory/Model/Stock/Item.php
@@ -40,6 +40,7 @@ use Magento\Framework\Model\AbstractExtensibleModel;
  * @method \Magento\CatalogInventory\Model\Stock\Item setQtyIncrements(float $value)
  * @method \Magento\CatalogInventory\Model\Stock\Item setUseConfigEnableQtyInc(int $value)
  * @method \Magento\CatalogInventory\Model\Stock\Item setEnableQtyIncrements(int $value)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Item extends AbstractExtensibleModel implements StockItemInterface
 {
@@ -123,6 +124,7 @@ class Item extends AbstractExtensibleModel implements StockItemInterface
      * @param \Magento\Framework\Model\Resource\AbstractResource $resource
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
@@ -212,6 +214,7 @@ class Item extends AbstractExtensibleModel implements StockItemInterface
 
     /**
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getStockStatusChangedAuto()
     {
@@ -241,6 +244,7 @@ class Item extends AbstractExtensibleModel implements StockItemInterface
 
     /**
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsQtyDecimal()
     {
@@ -249,6 +253,7 @@ class Item extends AbstractExtensibleModel implements StockItemInterface
 
     /**
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsDecimalDivided()
     {
@@ -267,6 +272,7 @@ class Item extends AbstractExtensibleModel implements StockItemInterface
      * Check if notification message should be added despite of backorders notification flag
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getShowDefaultNotificationMessage()
     {
@@ -275,6 +281,7 @@ class Item extends AbstractExtensibleModel implements StockItemInterface
 
     /**
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getUseConfigMinQty()
     {
@@ -298,6 +305,7 @@ class Item extends AbstractExtensibleModel implements StockItemInterface
 
     /**
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getUseConfigMinSaleQty()
     {
@@ -321,6 +329,7 @@ class Item extends AbstractExtensibleModel implements StockItemInterface
 
     /**
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getUseConfigMaxSaleQty()
     {
@@ -345,6 +354,7 @@ class Item extends AbstractExtensibleModel implements StockItemInterface
 
     /**
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getUseConfigNotifyStockQty()
     {
@@ -366,6 +376,7 @@ class Item extends AbstractExtensibleModel implements StockItemInterface
 
     /**
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getUseConfigEnableQtyInc()
     {
@@ -376,6 +387,7 @@ class Item extends AbstractExtensibleModel implements StockItemInterface
      * Retrieve whether Quantity Increments is enabled
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getEnableQtyIncrements()
     {
@@ -389,6 +401,7 @@ class Item extends AbstractExtensibleModel implements StockItemInterface
      * Retrieve whether config for Quantity Increments should be used
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getUseConfigQtyIncrements()
     {
@@ -419,6 +432,7 @@ class Item extends AbstractExtensibleModel implements StockItemInterface
 
     /**
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getUseConfigBackorders()
     {
@@ -440,6 +454,7 @@ class Item extends AbstractExtensibleModel implements StockItemInterface
 
     /**
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getUseConfigManageStock()
     {
@@ -462,14 +477,14 @@ class Item extends AbstractExtensibleModel implements StockItemInterface
     /**
      * Add error to Quote Item
      *
-     * @param \Magento\Sales\Model\Quote\Item $item
+     * @param \Magento\Quote\Model\Quote\Item $item
      * @param string $itemError
      * @param string $quoteError
      * @param string $errorIndex
      * @return $this
      */
     protected function _addQuoteItemError(
-        \Magento\Sales\Model\Quote\Item $item,
+        \Magento\Quote\Model\Quote\Item $item,
         $itemError,
         $quoteError,
         $errorIndex = 'error'
diff --git a/app/code/Magento/CatalogInventory/Model/Stock/StockItemRepository.php b/app/code/Magento/CatalogInventory/Model/Stock/StockItemRepository.php
index 3d6427be091102e84c1d631fa6e3ca7040d3c520..10c1debd7335d941e1ad30af64fc0f047d8a1d3e 100644
--- a/app/code/Magento/CatalogInventory/Model/Stock/StockItemRepository.php
+++ b/app/code/Magento/CatalogInventory/Model/Stock/StockItemRepository.php
@@ -23,6 +23,7 @@ use Magento\Framework\Stdlib\DateTime\TimezoneInterface;
 
 /**
  * Class StockItemRepository
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class StockItemRepository implements StockItemRepositoryInterface
 {
@@ -87,6 +88,7 @@ class StockItemRepository implements StockItemRepositoryInterface
      * @param MapperFactory $mapperFactory
      * @param TimezoneInterface $localeDate
      * @param Processor $indexProcessor
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         StockConfigurationInterface $stockConfiguration,
diff --git a/app/code/Magento/CatalogInventory/Model/Stock/StockRepository.php b/app/code/Magento/CatalogInventory/Model/Stock/StockRepository.php
index 98a9d3b2117d67a1f558ab8ae4ae2f7a7268d46c..bc3f7774e874cf186638f0f71f0d4ae7afd0cc60 100644
--- a/app/code/Magento/CatalogInventory/Model/Stock/StockRepository.php
+++ b/app/code/Magento/CatalogInventory/Model/Stock/StockRepository.php
@@ -18,6 +18,7 @@ use Magento\Framework\Exception\NoSuchEntityException;
 
 /**
  * Class StockRepository
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class StockRepository implements StockRepositoryInterface
 {
diff --git a/app/code/Magento/CatalogInventory/Model/Stock/StockStatusRepository.php b/app/code/Magento/CatalogInventory/Model/Stock/StockStatusRepository.php
index ce73c99e09e742245f90ddc72ecfc687fdac88f4..2c1e24a42c024e1f2512b2e89951be3c69d0673c 100644
--- a/app/code/Magento/CatalogInventory/Model/Stock/StockStatusRepository.php
+++ b/app/code/Magento/CatalogInventory/Model/Stock/StockStatusRepository.php
@@ -16,6 +16,7 @@ use Magento\Framework\Exception\CouldNotSaveException;
 
 /**
  * Class StockStatusRepository
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class StockStatusRepository implements StockStatusRepositoryInterface
 {
diff --git a/app/code/Magento/CatalogInventory/Model/StockIndex.php b/app/code/Magento/CatalogInventory/Model/StockIndex.php
index b62116b5da040c37bf9d9317617b101afc81d5ed..2eaf9a9bac6c981e023100ed510e9ac9d1d8400d 100644
--- a/app/code/Magento/CatalogInventory/Model/StockIndex.php
+++ b/app/code/Magento/CatalogInventory/Model/StockIndex.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\CatalogInventory\Model;
 
 use Magento\Catalog\Model\Product\Type as ProductType;
@@ -75,6 +78,7 @@ class StockIndex implements StockIndexInterface
      * @param int $productId
      * @param int $websiteId
      * @return true
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function rebuild($productId = null, $websiteId = null)
     {
@@ -127,6 +131,7 @@ class StockIndex implements StockIndexInterface
      * @param int $qty
      * @param int $status
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function processChildren(
         $productId,
diff --git a/app/code/Magento/CatalogInventory/Model/StockManagement.php b/app/code/Magento/CatalogInventory/Model/StockManagement.php
index cb2894d11c4e971699602a19dc31dc969a9e2730..c70c610ae68791f18d189d526807a1252320c67a 100644
--- a/app/code/Magento/CatalogInventory/Model/StockManagement.php
+++ b/app/code/Magento/CatalogInventory/Model/StockManagement.php
@@ -68,6 +68,7 @@ class StockManagement implements StockManagementInterface
      * @param int $websiteId
      * @return StockItemInterface[]
      * @throws \Magento\Framework\Model\Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function registerProductsSale($items, $websiteId = null)
     {
diff --git a/app/code/Magento/CatalogInventory/Model/StockRegistryProvider.php b/app/code/Magento/CatalogInventory/Model/StockRegistryProvider.php
index e1f900a3325305e862396ef697aa08960108b0aa..0a9f1f04d013281a4d64a76a1f364422e14ee603 100644
--- a/app/code/Magento/CatalogInventory/Model/StockRegistryProvider.php
+++ b/app/code/Magento/CatalogInventory/Model/StockRegistryProvider.php
@@ -19,6 +19,7 @@ use Magento\Store\Model\StoreManagerInterface;
 
 /**
  * Class StockRegistryProvider
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class StockRegistryProvider implements StockRegistryProviderInterface
 {
diff --git a/app/code/Magento/CatalogInventory/Model/StockStateProvider.php b/app/code/Magento/CatalogInventory/Model/StockStateProvider.php
index 38a0f7e4670f8db56f36444c9f3d8caaa6631d44..f5dea5479c4409caf13a442f2d6b534a40aabcc9 100644
--- a/app/code/Magento/CatalogInventory/Model/StockStateProvider.php
+++ b/app/code/Magento/CatalogInventory/Model/StockStateProvider.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\CatalogInventory\Model;
 
 use Magento\Catalog\Model\ProductFactory;
@@ -93,6 +96,9 @@ class StockStateProvider implements StockStateProviderInterface
      * @param int|float $summaryQty
      * @param int|float $origQty
      * @return \Magento\Framework\Object
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public function checkQuoteItemQty(StockItemInterface $stockItem, $qty, $summaryQty, $origQty = 0)
     {
@@ -320,6 +326,8 @@ class StockStateProvider implements StockStateProviderInterface
      *
      * @param StockItemInterface $stockItem
      * @return float
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function getStockQty(StockItemInterface $stockItem)
     {
diff --git a/app/code/Magento/CatalogInventory/composer.json b/app/code/Magento/CatalogInventory/composer.json
index c226936f18f7b66abf6b6da19e6d2ab20333abef..04b35d08bafd1e3e81bc23e109d56a0433113285 100644
--- a/app/code/Magento/CatalogInventory/composer.json
+++ b/app/code/Magento/CatalogInventory/composer.json
@@ -3,18 +3,18 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-catalog": "0.42.0-beta3",
-        "magento/module-customer": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/module-indexer": "0.42.0-beta3",
-        "magento/module-sales": "0.42.0-beta3",
-        "magento/module-eav": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-catalog": "0.42.0-beta4",
+        "magento/module-customer": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/module-indexer": "0.42.0-beta4",
+        "magento/module-eav": "0.42.0-beta4",
+        "magento/module-quote": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/CatalogInventory/view/frontend/templates/qtyincrements.phtml b/app/code/Magento/CatalogInventory/view/frontend/templates/qtyincrements.phtml
index 9aee089bb0063971fcd09ba5c409e7554ad45adf..5788b0c735b27881c869d1ef13d5e99b3e1f9ecc 100644
--- a/app/code/Magento/CatalogInventory/view/frontend/templates/qtyincrements.phtml
+++ b/app/code/Magento/CatalogInventory/view/frontend/templates/qtyincrements.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * @var $this \Magento\CatalogInventory\Block\Qtyincrements
  */
diff --git a/app/code/Magento/CatalogInventory/view/frontend/templates/stockqty/composite.phtml b/app/code/Magento/CatalogInventory/view/frontend/templates/stockqty/composite.phtml
index 3de72c1c0a5438968fd289800d260f92f0d8653a..5b0ba2cde07ca723aabc06dec18dc9b324608f79 100644
--- a/app/code/Magento/CatalogInventory/view/frontend/templates/stockqty/composite.phtml
+++ b/app/code/Magento/CatalogInventory/view/frontend/templates/stockqty/composite.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * @var $this \Magento\CatalogInventory\Block\Stockqty\Composite
  */
diff --git a/app/code/Magento/CatalogInventory/view/frontend/templates/stockqty/default.phtml b/app/code/Magento/CatalogInventory/view/frontend/templates/stockqty/default.phtml
index 4adf062f48740ffea4a2aae3df05bfed83bc4bfe..8fa8f59626bb5b34f8e2b1cb440261eca275c3aa 100644
--- a/app/code/Magento/CatalogInventory/view/frontend/templates/stockqty/default.phtml
+++ b/app/code/Magento/CatalogInventory/view/frontend/templates/stockqty/default.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * @var $this \Magento\CatalogInventory\Block\Stockqty\DefaultStockqty
  */
diff --git a/app/code/Magento/CatalogRule/Block/Adminhtml/Promo/Catalog/Edit/Tab/Actions.php b/app/code/Magento/CatalogRule/Block/Adminhtml/Promo/Catalog/Edit/Tab/Actions.php
index d27a0b4127f609275df97aa7ef0fbb139fdc82d4..b29dffb9b1779b6ad89c5b01d45dba2221a32eb3 100644
--- a/app/code/Magento/CatalogRule/Block/Adminhtml/Promo/Catalog/Edit/Tab/Actions.php
+++ b/app/code/Magento/CatalogRule/Block/Adminhtml/Promo/Catalog/Edit/Tab/Actions.php
@@ -53,6 +53,7 @@ class Actions extends Generic implements TabInterface
 
     /**
      * @return Form
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _prepareForm()
     {
diff --git a/app/code/Magento/CatalogRule/Block/Adminhtml/Promo/Catalog/Edit/Tab/Main.php b/app/code/Magento/CatalogRule/Block/Adminhtml/Promo/Catalog/Edit/Tab/Main.php
index 0109c1690e2f6e7c96d6e3601f299cec1bb643a6..b22840b7f547f4e49ccb6ad96549a442f9933516 100644
--- a/app/code/Magento/CatalogRule/Block/Adminhtml/Promo/Catalog/Edit/Tab/Main.php
+++ b/app/code/Magento/CatalogRule/Block/Adminhtml/Promo/Catalog/Edit/Tab/Main.php
@@ -106,6 +106,7 @@ class Main extends Generic implements TabInterface
 
     /**
      * @return Form
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _prepareForm()
     {
diff --git a/app/code/Magento/CatalogRule/Controller/Adminhtml/Promo/Catalog.php b/app/code/Magento/CatalogRule/Controller/Adminhtml/Promo/Catalog.php
index 0a59763eabf4c8c1308ef61e4dc9e4105a238163..3b20dec460b319b8386ec39fde6ce99298870cfc 100644
--- a/app/code/Magento/CatalogRule/Controller/Adminhtml/Promo/Catalog.php
+++ b/app/code/Magento/CatalogRule/Controller/Adminhtml/Promo/Catalog.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Backend Catalog Price Rules controller
  *
diff --git a/app/code/Magento/CatalogRule/Controller/Adminhtml/Promo/Catalog/Save.php b/app/code/Magento/CatalogRule/Controller/Adminhtml/Promo/Catalog/Save.php
index 7c3637a402105980ce45a94e39efd2c9c4b90e2f..1a7ae10ca4f35cbce4754ef3a215f41f11c300b2 100644
--- a/app/code/Magento/CatalogRule/Controller/Adminhtml/Promo/Catalog/Save.php
+++ b/app/code/Magento/CatalogRule/Controller/Adminhtml/Promo/Catalog/Save.php
@@ -12,6 +12,7 @@ class Save extends \Magento\CatalogRule\Controller\Adminhtml\Promo\Catalog
 {
     /**
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function execute()
     {
diff --git a/app/code/Magento/CatalogRule/Model/Indexer/IndexBuilder.php b/app/code/Magento/CatalogRule/Model/Indexer/IndexBuilder.php
index 9309727f7eb7bb0ecf7b740908cb0cfe616c9b45..5812b16b0832d1b03d53041e0442d4dc28076b68 100644
--- a/app/code/Magento/CatalogRule/Model/Indexer/IndexBuilder.php
+++ b/app/code/Magento/CatalogRule/Model/Indexer/IndexBuilder.php
@@ -12,6 +12,9 @@ use Magento\CatalogRule\Model\Resource\Rule\CollectionFactory as RuleCollectionF
 use Magento\CatalogRule\Model\Rule;
 use Magento\Framework\Pricing\PriceCurrencyInterface;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class IndexBuilder
 {
     const SECONDS_IN_DAY = 86400;
@@ -82,6 +85,7 @@ class IndexBuilder
      * @param \Magento\Framework\Stdlib\DateTime\DateTime $dateTime
      * @param \Magento\Catalog\Model\ProductFactory $productFactory
      * @param int $batchCount
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         RuleCollectionFactory $ruleCollectionFactory,
@@ -210,6 +214,7 @@ class IndexBuilder
      * @param Product $product
      * @return $this
      * @throws \Exception
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function applyRule(Rule $rule, $product)
     {
@@ -318,6 +323,8 @@ class IndexBuilder
     /**
      * @param Rule $rule
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function updateRuleProductData(Rule $rule)
     {
@@ -400,6 +407,9 @@ class IndexBuilder
      * @param Product|null $product
      * @throws \Exception
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function applyAllRules(Product $product = null)
     {
diff --git a/app/code/Magento/CatalogRule/Model/Observer.php b/app/code/Magento/CatalogRule/Model/Observer.php
index 9f4913d23527ea2486ec029c8983d5945487eac6..887b60b9c8a2e5426eee596422197fb29c027dff 100644
--- a/app/code/Magento/CatalogRule/Model/Observer.php
+++ b/app/code/Magento/CatalogRule/Model/Observer.php
@@ -22,6 +22,9 @@ use Magento\Customer\Model\Session as CustomerModelSession;
 use Magento\Framework\Event\Observer as EventObserver;
 use Magento\Framework\Stdlib\DateTime;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class Observer
 {
     /**
diff --git a/app/code/Magento/CatalogRule/Model/Resource/Rule.php b/app/code/Magento/CatalogRule/Model/Resource/Rule.php
index e3b9617bdfe4a09b20449029bd3ce240986e741e..330c01f9680b2f1ba912b556e863563ecd0204e3 100644
--- a/app/code/Magento/CatalogRule/Model/Resource/Rule.php
+++ b/app/code/Magento/CatalogRule/Model/Resource/Rule.php
@@ -15,6 +15,9 @@ use Magento\Catalog\Model\Product;
 use Magento\Framework\Model\AbstractModel;
 use Magento\Framework\Pricing\PriceCurrencyInterface;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class Rule extends \Magento\Rule\Model\Resource\AbstractResource
 {
     /**
@@ -100,6 +103,7 @@ class Rule extends \Magento\Rule\Model\Resource\AbstractResource
      * @param \Psr\Log\LoggerInterface $logger
      * @param \Magento\Framework\Stdlib\DateTime $dateTime
      * @param PriceCurrencyInterface $priceCurrency
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\App\Resource $resource,
diff --git a/app/code/Magento/CatalogRule/Model/Rule.php b/app/code/Magento/CatalogRule/Model/Rule.php
index 77cd01db84d77960b5c2eb8193280461b8ca06a5..1228ac74d24cb34975ecd832a25d2f714b1af202 100644
--- a/app/code/Magento/CatalogRule/Model/Rule.php
+++ b/app/code/Magento/CatalogRule/Model/Rule.php
@@ -37,6 +37,8 @@ use Magento\Catalog\Model\Product;
  * @method \Magento\CatalogRule\Model\Rule setDiscountAmount(float $value)
  * @method string getWebsiteIds()
  * @method \Magento\CatalogRule\Model\Rule setWebsiteIds(string $value)
+ * @SuppressWarnings(PHPMD.TooManyFields)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Rule extends \Magento\Rule\Model\AbstractModel
 {
@@ -160,6 +162,7 @@ class Rule extends \Magento\Rule\Model\AbstractModel
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $relatedCacheTypes
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
@@ -341,6 +344,7 @@ class Rule extends \Magento\Rule\Model\AbstractModel
      * @param Product $product
      * @param float $price
      * @return float|null
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function calcProductPriceRule(Product $product, $price)
     {
diff --git a/app/code/Magento/CatalogRule/Plugin/Model/Product/Action.php b/app/code/Magento/CatalogRule/Plugin/Model/Product/Action.php
index 8824a7be8323431c0d2f40fe196f5823338cafac..115255dcc9a2867411ede46a94d78016d9efc47e 100644
--- a/app/code/Magento/CatalogRule/Plugin/Model/Product/Action.php
+++ b/app/code/Magento/CatalogRule/Plugin/Model/Product/Action.php
@@ -30,6 +30,7 @@ class Action
      * @return ProductAction
      *
      * @SuppressWarnings(PHPMD.UnusedFormatParameter)
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function afterUpdateAttributes(ProductAction $object, ProductAction $result)
     {
diff --git a/app/code/Magento/CatalogRule/composer.json b/app/code/Magento/CatalogRule/composer.json
index 77813109ca80aaf0046b62e7d872dc4fe10295dd..c19ff885884e4d4b62a505e46683922d0a286255 100644
--- a/app/code/Magento/CatalogRule/composer.json
+++ b/app/code/Magento/CatalogRule/composer.json
@@ -3,19 +3,19 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-rule": "0.42.0-beta3",
-        "magento/module-catalog": "0.42.0-beta3",
-        "magento/module-customer": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/module-eav": "0.42.0-beta3",
-        "magento/module-indexer": "0.42.0-beta3",
-        "magento/module-import-export": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-rule": "0.42.0-beta4",
+        "magento/module-catalog": "0.42.0-beta4",
+        "magento/module-customer": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/module-eav": "0.42.0-beta4",
+        "magento/module-indexer": "0.42.0-beta4",
+        "magento/module-import-export": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/CatalogRule/view/adminhtml/templates/promo/fieldset.phtml b/app/code/Magento/CatalogRule/view/adminhtml/templates/promo/fieldset.phtml
index 2c741de5ae4eeab4e06bbf84c4957695fc808887..7b0afb2d79f427bb841d9b2c7a048bdd41448a6c 100644
--- a/app/code/Magento/CatalogRule/view/adminhtml/templates/promo/fieldset.phtml
+++ b/app/code/Magento/CatalogRule/view/adminhtml/templates/promo/fieldset.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php $_element = $this->getElement() ?>
 <div class="rule-tree">
@@ -17,7 +20,7 @@
     </div>
     </fieldset>
 </div>
-<script type="text/javascript">
+<script>
 require([
     "Magento_Rule/rules",
     "prototype"
diff --git a/app/code/Magento/CatalogRule/view/adminhtml/templates/promo/form.phtml b/app/code/Magento/CatalogRule/view/adminhtml/templates/promo/form.phtml
index 784e8848788e9af682e9d0afb087468d0beec546..ea0eb2cbfacb83b331d9f4f2131151efa7adaa59 100644
--- a/app/code/Magento/CatalogRule/view/adminhtml/templates/promo/form.phtml
+++ b/app/code/Magento/CatalogRule/view/adminhtml/templates/promo/form.phtml
@@ -3,11 +3,14 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <div class="entry-edit rule-tree">
 <?php echo $this->getFormHtml() ?>
 </div>
-<script type="text/javascript">
+<script>
 /*
     if ($('rule_conditions_fieldset')) {
         var conditionsForm = new VarienRulesForm('rule_conditions_fieldset', '<?php echo $this->getNewConditionChildUrl() ?>');
diff --git a/app/code/Magento/CatalogRule/view/adminhtml/templates/promo/js.phtml b/app/code/Magento/CatalogRule/view/adminhtml/templates/promo/js.phtml
index 3f66099f042576ab7d3e6e338e709d5b3232f13d..8e87adac441dbf88047073fbf9044fbe4c2ecdd1 100644
--- a/app/code/Magento/CatalogRule/view/adminhtml/templates/promo/js.phtml
+++ b/app/code/Magento/CatalogRule/view/adminhtml/templates/promo/js.phtml
@@ -4,7 +4,7 @@
  * See COPYING.txt for license details.
  */
 ?>
-<script type="text/javascript">
+<script>
 require(["jquery", "prototype"], function(jQuery){
 
 function hideShowSubproductOptions()
diff --git a/app/code/Magento/CatalogSearch/Model/Adapter/Mysql/Aggregation/DataProvider.php b/app/code/Magento/CatalogSearch/Model/Adapter/Mysql/Aggregation/DataProvider.php
index 7fa83928ab995936e482379fae8efe44086e6035..8d528613e7951585390c2c374291d1441af41508 100644
--- a/app/code/Magento/CatalogSearch/Model/Adapter/Mysql/Aggregation/DataProvider.php
+++ b/app/code/Magento/CatalogSearch/Model/Adapter/Mysql/Aggregation/DataProvider.php
@@ -16,6 +16,9 @@ use Magento\Framework\Search\Adapter\Mysql\Aggregation\DataProviderInterface;
 use Magento\Framework\Search\Request\BucketInterface;
 use Magento\Store\Model\Store;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class DataProvider implements DataProviderInterface
 {
     /**
diff --git a/app/code/Magento/CatalogSearch/Model/Adapter/Mysql/Dynamic/DataProvider.php b/app/code/Magento/CatalogSearch/Model/Adapter/Mysql/Dynamic/DataProvider.php
index c56bde7b55e211abea8bdf12b68dcf0f12ba514d..341783fa0dcd6b1a71ec600f8edd392e0ccccc6b 100644
--- a/app/code/Magento/CatalogSearch/Model/Adapter/Mysql/Dynamic/DataProvider.php
+++ b/app/code/Magento/CatalogSearch/Model/Adapter/Mysql/Dynamic/DataProvider.php
@@ -17,6 +17,9 @@ use Magento\Framework\Search\Dynamic\IntervalFactory;
 use Magento\Framework\Search\Request\BucketInterface;
 use Magento\Store\Model\ScopeInterface;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class DataProvider implements DataProviderInterface
 {
     const XML_PATH_INTERVAL_DIVISION_LIMIT = 'catalog/layered_navigation/interval_division_limit';
diff --git a/app/code/Magento/CatalogSearch/Model/Adapter/Mysql/Filter/Preprocessor.php b/app/code/Magento/CatalogSearch/Model/Adapter/Mysql/Filter/Preprocessor.php
index 14384ca630fe5e7f4aa3cce6c0dcf829f41a7abd..16fea125bdaf16b3f41197c88b812345414a5f40 100644
--- a/app/code/Magento/CatalogSearch/Model/Adapter/Mysql/Filter/Preprocessor.php
+++ b/app/code/Magento/CatalogSearch/Model/Adapter/Mysql/Filter/Preprocessor.php
@@ -63,6 +63,7 @@ class Preprocessor implements PreprocessorInterface
 
     /**
      * {@inheritdoc}
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function process(FilterInterface $filter, $isNegation, $query)
     {
diff --git a/app/code/Magento/CatalogSearch/Model/Advanced.php b/app/code/Magento/CatalogSearch/Model/Advanced.php
index 7d9f0c6f69c9202277ab4af53783c490f7c52d35..61db41611533312086057ebd886403237c14123f 100644
--- a/app/code/Magento/CatalogSearch/Model/Advanced.php
+++ b/app/code/Magento/CatalogSearch/Model/Advanced.php
@@ -42,6 +42,7 @@ use Magento\Store\Model\StoreManagerInterface;
  * @method \Magento\CatalogSearch\Model\Advanced setUpdatedAt(string $value)
  *
  * @author      Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Advanced extends \Magento\Framework\Model\AbstractModel
 {
@@ -121,6 +122,7 @@ class Advanced extends \Magento\Framework\Model\AbstractModel
      * @param ProductFactory $productFactory
      * @param \Magento\Store\Model\StoreManagerInterface $storeManager
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         Context $context,
@@ -156,6 +158,8 @@ class Advanced extends \Magento\Framework\Model\AbstractModel
      * @param   array $values
      * @return  $this
      * @throws Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function addFilters($values)
     {
@@ -284,6 +288,8 @@ class Advanced extends \Magento\Framework\Model\AbstractModel
      * @param   EntityAttribute $attribute
      * @param   mixed $value
      * @return  $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _addSearchCriteria($attribute, $value)
     {
diff --git a/app/code/Magento/CatalogSearch/Model/Indexer/Fulltext/Action/Full.php b/app/code/Magento/CatalogSearch/Model/Indexer/Fulltext/Action/Full.php
index a4acccc995e2fe87e8b94aa74c32f1d940569314..e4f6fea57b08b1ef8befff137a864eca3aa6cebd 100644
--- a/app/code/Magento/CatalogSearch/Model/Indexer/Fulltext/Action/Full.php
+++ b/app/code/Magento/CatalogSearch/Model/Indexer/Fulltext/Action/Full.php
@@ -7,6 +7,10 @@ namespace Magento\CatalogSearch\Model\Indexer\Fulltext\Action;
 
 use Magento\Framework\Pricing\PriceCurrencyInterface;
 
+/**
+ * @SuppressWarnings(PHPMD.TooManyFields)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class Full
 {
     /**
@@ -155,6 +159,7 @@ class Full
      * @param \Magento\Framework\Stdlib\DateTime\TimezoneInterface $localeDate
      * @param \Magento\CatalogSearch\Model\Resource\Fulltext $fulltextResource
      * @param PriceCurrencyInterface $priceCurrency
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\App\Resource $resource,
@@ -259,6 +264,8 @@ class Full
      * @param int $storeId Store View Id
      * @param int|array $productIds Product Entity Id
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function rebuildStoreIndex($storeId, $productIds = null)
     {
@@ -637,6 +644,8 @@ class Full
      * @param array $productData
      * @param int $storeId
      * @return string
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function prepareProductIndex($indexData, $productData, $storeId)
     {
diff --git a/app/code/Magento/CatalogSearch/Model/Layer/Filter/Decimal.php b/app/code/Magento/CatalogSearch/Model/Layer/Filter/Decimal.php
index c489fccae2c895c899bb1566d3fa005b46c440cf..9061a5755b2dfecc1f3e1bcde92291acf6f097a8 100644
--- a/app/code/Magento/CatalogSearch/Model/Layer/Filter/Decimal.php
+++ b/app/code/Magento/CatalogSearch/Model/Layer/Filter/Decimal.php
@@ -89,6 +89,7 @@ class Decimal extends AbstractFilter
      *
      * @return array
      * @throws \Magento\Framework\Model\Exception
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _getItemsData()
     {
diff --git a/app/code/Magento/CatalogSearch/Model/Layer/Filter/Price.php b/app/code/Magento/CatalogSearch/Model/Layer/Filter/Price.php
index 44f01e3f491d5f1c2e8d6134b27fc472a40e0dc9..e3a419bbe47de61b5a7e3bce999dfe57df4df931 100644
--- a/app/code/Magento/CatalogSearch/Model/Layer/Filter/Price.php
+++ b/app/code/Magento/CatalogSearch/Model/Layer/Filter/Price.php
@@ -54,6 +54,8 @@ class Price extends AbstractFilter
      * @param \Magento\Framework\Pricing\PriceCurrencyInterface $priceCurrency
      * @param \Magento\Catalog\Model\Layer\Filter\Dynamic\AlgorithmFactory $algorithmFactory
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function __construct(
         \Magento\Catalog\Model\Layer\Filter\ItemFactory $filterItemFactory,
@@ -107,6 +109,7 @@ class Price extends AbstractFilter
      *
      * @param \Magento\Framework\App\RequestInterface $request
      * @return $this
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function apply(\Magento\Framework\App\RequestInterface $request)
     {
diff --git a/app/code/Magento/CatalogSearch/Model/Resource/Advanced.php b/app/code/Magento/CatalogSearch/Model/Resource/Advanced.php
index bd841d931afe201c7e962ab30ca71aa2ac49edc3..2cbb9e51f972ca4665d6e177701054306b6c07a4 100644
--- a/app/code/Magento/CatalogSearch/Model/Resource/Advanced.php
+++ b/app/code/Magento/CatalogSearch/Model/Resource/Advanced.php
@@ -85,6 +85,7 @@ class Advanced extends \Magento\Framework\Model\Resource\Db\AbstractDb
      * @param \Magento\Catalog\Model\Resource\Eav\Attribute $attribute
      * @param string|array $value
      * @return string|array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function prepareCondition($attribute, $value)
     {
@@ -122,6 +123,7 @@ class Advanced extends \Magento\Framework\Model\Resource\Db\AbstractDb
      * @param string|array $value
      * @param int $rate
      * @return bool
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function addRatedPriceFilter($collection, $attribute, $value, $rate = 1)
     {
@@ -166,6 +168,7 @@ class Advanced extends \Magento\Framework\Model\Resource\Db\AbstractDb
      * @param \Magento\Catalog\Model\Resource\Eav\Attribute $attribute
      * @param string|array $value
      * @return bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function addIndexableAttributeModifiedFilter($collection, $attribute, $value)
     {
diff --git a/app/code/Magento/CatalogSearch/Model/Resource/Advanced/Collection.php b/app/code/Magento/CatalogSearch/Model/Resource/Advanced/Collection.php
index 16a6f822c818489698f4b9ee08c019fcfa6402c7..32c9cc320860266a2cc60650ba42fc4fd54052bc 100644
--- a/app/code/Magento/CatalogSearch/Model/Resource/Advanced/Collection.php
+++ b/app/code/Magento/CatalogSearch/Model/Resource/Advanced/Collection.php
@@ -11,6 +11,7 @@ use Magento\Catalog\Model\Product;
  * Collection Advanced
  *
  * @author      Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Collection extends \Magento\Catalog\Model\Resource\Product\Collection
 {
@@ -122,6 +123,7 @@ class Collection extends \Magento\Catalog\Model\Resource\Product\Collection
 
     /**
      * @inheritdoc
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _renderFiltersBefore()
     {
diff --git a/app/code/Magento/CatalogSearch/Model/Resource/Fulltext/Collection.php b/app/code/Magento/CatalogSearch/Model/Resource/Fulltext/Collection.php
index 1eeed0d3ee58618325e8632bb398c7ada76ba087..31c0545235348970d43939d2b15e1cd1b8db46d7 100644
--- a/app/code/Magento/CatalogSearch/Model/Resource/Fulltext/Collection.php
+++ b/app/code/Magento/CatalogSearch/Model/Resource/Fulltext/Collection.php
@@ -11,6 +11,7 @@ use Magento\Framework\Search\Response\QueryResponse;
 
 /**
  * Fulltext Collection
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Collection extends \Magento\Catalog\Model\Resource\Product\Collection
 {
diff --git a/app/code/Magento/CatalogSearch/Model/Resource/Search/Collection.php b/app/code/Magento/CatalogSearch/Model/Resource/Search/Collection.php
index 04c481e9994038142f3748cfa8d9c47fc7d061e0..331a441f066ea520de824bfb4eebad101978b1be 100644
--- a/app/code/Magento/CatalogSearch/Model/Resource/Search/Collection.php
+++ b/app/code/Magento/CatalogSearch/Model/Resource/Search/Collection.php
@@ -3,12 +3,16 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\CatalogSearch\Model\Resource\Search;
 
 /**
  * Search collection
  *
  * @deprecated
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Collection extends \Magento\Catalog\Model\Resource\Product\Collection implements \Magento\Search\Model\SearchCollectionInterface
 {
@@ -271,6 +275,8 @@ class Collection extends \Magento\Catalog\Model\Resource\Product\Collection impl
      *
      * @param mixed $query
      * @return string
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     protected function _getSearchInOptionSql($query)
     {
diff --git a/app/code/Magento/CatalogSearch/Model/Search/RequestGenerator.php b/app/code/Magento/CatalogSearch/Model/Search/RequestGenerator.php
index 5d29b15faeeaaf31ffb7b0ba2aa765d74cc02b65..f29fd216af3e0fbf9921511fd7f7df6aaadc3197 100644
--- a/app/code/Magento/CatalogSearch/Model/Search/RequestGenerator.php
+++ b/app/code/Magento/CatalogSearch/Model/Search/RequestGenerator.php
@@ -136,6 +136,7 @@ class RequestGenerator
      * Generate advanced search request
      *
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     private function generateAdvancedSearchRequest()
     {
diff --git a/app/code/Magento/CatalogSearch/composer.json b/app/code/Magento/CatalogSearch/composer.json
index 1820067884907ed405ccb9eac3fc6909afd9478d..67e0dae7369e19c2e3d8e65bfe386b943ff38c29 100644
--- a/app/code/Magento/CatalogSearch/composer.json
+++ b/app/code/Magento/CatalogSearch/composer.json
@@ -3,21 +3,21 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-catalog": "0.42.0-beta3",
-        "magento/module-search": "0.42.0-beta3",
-        "magento/module-customer": "0.42.0-beta3",
-        "magento/module-core": "0.42.0-beta3",
-        "magento/module-directory": "0.42.0-beta3",
-        "magento/module-indexer": "0.42.0-beta3",
-        "magento/module-eav": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/module-theme": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-catalog": "0.42.0-beta4",
+        "magento/module-search": "0.42.0-beta4",
+        "magento/module-customer": "0.42.0-beta4",
+        "magento/module-core": "0.42.0-beta4",
+        "magento/module-directory": "0.42.0-beta4",
+        "magento/module-indexer": "0.42.0-beta4",
+        "magento/module-eav": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/module-theme": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/CatalogSearch/view/frontend/templates/advanced/form.phtml b/app/code/Magento/CatalogSearch/view/frontend/templates/advanced/form.phtml
index f6fe477e4fef126c15f50df93a6b349ad52ed5c4..6de92ac5cc8382274531082e3fdc863e54e9b68e 100644
--- a/app/code/Magento/CatalogSearch/view/frontend/templates/advanced/form.phtml
+++ b/app/code/Magento/CatalogSearch/view/frontend/templates/advanced/form.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
@@ -128,7 +131,7 @@
   </div>
 </div>
 </form>
-<script type="text/javascript">
+<script>
 require([
     "jquery",
     "mage/mage",
diff --git a/app/code/Magento/CatalogSearch/view/frontend/templates/advanced/link.phtml b/app/code/Magento/CatalogSearch/view/frontend/templates/advanced/link.phtml
index c43f81778491217d51fc1598771cf69a87352646..d360f98e153a37a0753eaa126bc1a272a5d83402 100644
--- a/app/code/Magento/CatalogSearch/view/frontend/templates/advanced/link.phtml
+++ b/app/code/Magento/CatalogSearch/view/frontend/templates/advanced/link.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
  /** @var \Magento\CatalogSearch\Helper\Data $helper */
 $helper = $this->helper('Magento\CatalogSearch\Helper\Data');
 ?>
diff --git a/app/code/Magento/CatalogSearch/view/frontend/templates/advanced/result.phtml b/app/code/Magento/CatalogSearch/view/frontend/templates/advanced/result.phtml
index d2aea7416e14ca1f1e9d2130de905700ce5d2c4a..2341f5bd6d7a8370723df3e4f96ca5aeb3cc8efa 100644
--- a/app/code/Magento/CatalogSearch/view/frontend/templates/advanced/result.phtml
+++ b/app/code/Magento/CatalogSearch/view/frontend/templates/advanced/result.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/CatalogSearch/view/frontend/templates/result.phtml b/app/code/Magento/CatalogSearch/view/frontend/templates/result.phtml
index 5a090e8e3ee9e8541f35085885e8d5895e824e9c..880d62d27da246913736a9ab188cec8fec538b57 100644
--- a/app/code/Magento/CatalogSearch/view/frontend/templates/result.phtml
+++ b/app/code/Magento/CatalogSearch/view/frontend/templates/result.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php if ($this->getResultCount()): ?>
 <?php echo $this->getChildHtml('tagged_product_list_rss_link'); ?>
diff --git a/app/code/Magento/CatalogUrlRewrite/composer.json b/app/code/Magento/CatalogUrlRewrite/composer.json
index 51e3cb2ed671eda7086199aecdf9440200ba6a9f..44828ca1beea76ef7b05b305895c00c086e2ebf0 100644
--- a/app/code/Magento/CatalogUrlRewrite/composer.json
+++ b/app/code/Magento/CatalogUrlRewrite/composer.json
@@ -3,18 +3,18 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/module-catalog": "0.42.0-beta3",
-        "magento/module-catalog-import-export": "0.42.0-beta3",
-        "magento/module-eav": "0.42.0-beta3",
-        "magento/module-import-export": "0.42.0-beta3",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-url-rewrite": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/module-catalog": "0.42.0-beta4",
+        "magento/module-catalog-import-export": "0.42.0-beta4",
+        "magento/module-eav": "0.42.0-beta4",
+        "magento/module-import-export": "0.42.0-beta4",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-url-rewrite": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/CatalogWidget/Block/Product/ProductsList.php b/app/code/Magento/CatalogWidget/Block/Product/ProductsList.php
index 20dad46dbf40dfeeadc9bfe951903450e90efa37..cc89420d21afb1d570004658abc9f4bd88504fa3 100644
--- a/app/code/Magento/CatalogWidget/Block/Product/ProductsList.php
+++ b/app/code/Magento/CatalogWidget/Block/Product/ProductsList.php
@@ -3,11 +3,15 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\CatalogWidget\Block\Product;
 
 /**
  * Catalog Products List widget block
  * Class ProductsList
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class ProductsList extends \Magento\Catalog\Block\Product\AbstractProduct implements \Magento\Widget\Block\BlockInterface
 {
@@ -147,6 +151,7 @@ class ProductsList extends \Magento\Catalog\Block\Product\AbstractProduct implem
 
     /**
      * {@inheritdoc}
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function getProductPriceHtml(
         \Magento\Catalog\Model\Product $product,
diff --git a/app/code/Magento/CatalogWidget/Model/Rule/Condition/Product.php b/app/code/Magento/CatalogWidget/Model/Rule/Condition/Product.php
index b6912210f11b6fe11f4fead78cff84ab27cbdea3..19da2e1702c3f1147df2fbc5b9a0c8872887b073 100644
--- a/app/code/Magento/CatalogWidget/Model/Rule/Condition/Product.php
+++ b/app/code/Magento/CatalogWidget/Model/Rule/Condition/Product.php
@@ -43,6 +43,7 @@ class Product extends \Magento\Rule\Model\Condition\Product\AbstractProduct
      * @param \Magento\Framework\Locale\FormatInterface $localeFormat
      * @param \Magento\Store\Model\StoreManagerInterface $storeManager
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Rule\Model\Condition\Context $context,
diff --git a/app/code/Magento/CatalogWidget/composer.json b/app/code/Magento/CatalogWidget/composer.json
index 0c728e7ef139cfe37d9e1411301251d6bf441ab3..0b537e7372e655b2bed226107e160ca13c185d28 100644
--- a/app/code/Magento/CatalogWidget/composer.json
+++ b/app/code/Magento/CatalogWidget/composer.json
@@ -3,20 +3,20 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-catalog": "0.42.0-beta3",
-        "magento/module-widget": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/module-rule": "0.42.0-beta3",
-        "magento/module-eav": "0.42.0-beta3",
-        "magento/module-customer": "0.42.0-beta3",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-core": "0.42.0-beta3",
-        "magento/module-wishlist": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-catalog": "0.42.0-beta4",
+        "magento/module-widget": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/module-rule": "0.42.0-beta4",
+        "magento/module-eav": "0.42.0-beta4",
+        "magento/module-customer": "0.42.0-beta4",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-core": "0.42.0-beta4",
+        "magento/module-wishlist": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/CatalogWidget/view/adminhtml/templates/product/widget/conditions.phtml b/app/code/Magento/CatalogWidget/view/adminhtml/templates/product/widget/conditions.phtml
index 81dcc0ec641ca4f79fd185f5ec9fccb3d2095a2c..d3581d73080401d964b1519aea5a2767d9d680f8 100644
--- a/app/code/Magento/CatalogWidget/view/adminhtml/templates/product/widget/conditions.phtml
+++ b/app/code/Magento/CatalogWidget/view/adminhtml/templates/product/widget/conditions.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 $element = $this->getElement();
@@ -24,7 +27,7 @@ $fieldAttributes = $fieldId . ' class="' . $fieldClass . '" ' . $this->getUiId('
 </div>
 
 
-<script type="text/javascript">
+<script>
     require([
         "Magento_Rule/rules",
         "prototype"
diff --git a/app/code/Magento/CatalogWidget/view/frontend/templates/product/widget/content/grid.phtml b/app/code/Magento/CatalogWidget/view/frontend/templates/product/widget/content/grid.phtml
index f081e7916356f1f5cbb868ec7f79545df53ecc2f..cf61d31a1ac0043fada9aaca4da132f0766990b9 100644
--- a/app/code/Magento/CatalogWidget/view/frontend/templates/product/widget/content/grid.phtml
+++ b/app/code/Magento/CatalogWidget/view/frontend/templates/product/widget/content/grid.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/Centinel/Controller/Adminhtml/Centinel/Index.php b/app/code/Magento/Centinel/Controller/Adminhtml/Centinel/Index.php
index c630d0936d896065bcde812b2876ee6a2e56ce08..cb8ffb4afa3bd17f829347f10c917b3997ace64a 100644
--- a/app/code/Magento/Centinel/Controller/Adminhtml/Centinel/Index.php
+++ b/app/code/Magento/Centinel/Controller/Adminhtml/Centinel/Index.php
@@ -33,7 +33,7 @@ class Index extends \Magento\Backend\App\Action
     /**
      * Return payment model
      *
-     * @return \Magento\Sales\Model\Quote\Payment
+     * @return \Magento\Quote\Model\Quote\Payment
      */
     protected function _getPayment()
     {
diff --git a/app/code/Magento/Centinel/Controller/Index.php b/app/code/Magento/Centinel/Controller/Index.php
index d5f796c9a7fab8b58124189d55415f04899ad1fb..1cbca3d3e64420c834b242085fab82ba8d131f55 100644
--- a/app/code/Magento/Centinel/Controller/Index.php
+++ b/app/code/Magento/Centinel/Controller/Index.php
@@ -34,7 +34,7 @@ class Index extends \Magento\Framework\App\Action\Action
     /**
      * Return payment model
      *
-     * @return \Magento\Sales\Model\Quote\Payment
+     * @return \Magento\Quote\Model\Quote\Payment
      */
     protected function _getPayment()
     {
diff --git a/app/code/Magento/Centinel/Model/Config.php b/app/code/Magento/Centinel/Model/Config.php
index c252afeec2d66cacf8147bb582ba94f8b352c4db..81d187f3ed2ed1abd52e349b4bf9c00fd5ffe19d 100644
--- a/app/code/Magento/Centinel/Model/Config.php
+++ b/app/code/Magento/Centinel/Model/Config.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Config centinel model
  */
@@ -117,6 +119,7 @@ class Config
      * Return flag - is centinel mode test
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsTestMode()
     {
@@ -138,6 +141,7 @@ class Config
      * Define if debugging is enabled
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getDebugFlag()
     {
diff --git a/app/code/Magento/Centinel/Model/Service.php b/app/code/Magento/Centinel/Model/Service.php
index ad0a82a0ef69cb2c169802124492541b9113e0aa..5973fc76b5d7512fe77d4d002dcba53d7b52ee84 100644
--- a/app/code/Magento/Centinel/Model/Service.php
+++ b/app/code/Magento/Centinel/Model/Service.php
@@ -142,6 +142,7 @@ class Service extends \Magento\Framework\Object
      * @param float $amount
      * @param string $currencyCode
      * @return string
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     protected function _generateChecksum(
         $paymentMethodCode,
diff --git a/app/code/Magento/Centinel/Model/State/Mastercard.php b/app/code/Magento/Centinel/Model/State/Mastercard.php
index b0e4f25a357277d40fe27ded4512b4b70bc89579..f42a2f8c0535a5fa4d93de70627478fe98beafff 100644
--- a/app/code/Magento/Centinel/Model/State/Mastercard.php
+++ b/app/code/Magento/Centinel/Model/State/Mastercard.php
@@ -26,6 +26,8 @@ class Mastercard extends \Magento\Centinel\Model\AbstractState
      * Result depends from flag self::getIsModeStrict()
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function isAuthenticateSuccessful()
     {
@@ -133,6 +135,7 @@ class Mastercard extends \Magento\Centinel\Model\AbstractState
      * Analyse lookup`s results. If lookup is soft successful return true
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _isLookupSoftSuccessful()
     {
diff --git a/app/code/Magento/Centinel/Model/State/Visa.php b/app/code/Magento/Centinel/Model/State/Visa.php
index 6d0d181642488ee48b8161f6fcecae25249c45b3..6c1436780913eecf823849a63e6bf2d31f027501 100644
--- a/app/code/Magento/Centinel/Model/State/Visa.php
+++ b/app/code/Magento/Centinel/Model/State/Visa.php
@@ -26,6 +26,9 @@ class Visa extends \Magento\Centinel\Model\AbstractState
      * Result depends from flag self::getIsModeStrict()
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public function isAuthenticateSuccessful()
     {
@@ -152,6 +155,7 @@ class Visa extends \Magento\Centinel\Model\AbstractState
      * Analyse lookup`s results. If lookup is soft successful return true
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _isLookupSoftSuccessful()
     {
diff --git a/app/code/Magento/Centinel/composer.json b/app/code/Magento/Centinel/composer.json
index 23ce3a4a76fa1367cd587acc92506e1498b35109..4917eeddd80ed8b379ef057bbf9faa85c983e37c 100644
--- a/app/code/Magento/Centinel/composer.json
+++ b/app/code/Magento/Centinel/composer.json
@@ -3,16 +3,16 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-checkout": "0.42.0-beta3",
-        "magento/module-core": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/module-sales": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-checkout": "0.42.0-beta4",
+        "magento/module-core": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/module-sales": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/Centinel/view/adminhtml/templates/authentication/complete.phtml b/app/code/Magento/Centinel/view/adminhtml/templates/authentication/complete.phtml
index bebcb7a8fcd6dc2b18b657af53cf7fa0e9d05d0d..b572ff3ef4f86ada8e67cf316e35c6849535ac12 100644
--- a/app/code/Magento/Centinel/view/adminhtml/templates/authentication/complete.phtml
+++ b/app/code/Magento/Centinel/view/adminhtml/templates/authentication/complete.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php if ($this->getIsProcessed()):?>
     <?php if ($this->getIsSuccess()):?>
diff --git a/app/code/Magento/Centinel/view/adminhtml/templates/authentication/start.phtml b/app/code/Magento/Centinel/view/adminhtml/templates/authentication/start.phtml
index 558ab24be7f2feca46c8a8f4f5ffe11b3b6b8193..37c36fc54a5bb8d8113ab7d1d7800fdeea7e8229 100644
--- a/app/code/Magento/Centinel/view/adminhtml/templates/authentication/start.phtml
+++ b/app/code/Magento/Centinel/view/adminhtml/templates/authentication/start.phtml
@@ -9,7 +9,7 @@
     <input type="hidden" name="TermUrl" value="<?php echo $this->getTermUrl()?>" />
     <input type="hidden" name="MD" value="<?php echo $this->getMd()?>" />
 </form>
-<script type="text/javascript">
+<script>
 //<![CDATA[
 window.onload = function(){
     document.getElementById('validation_form').submit();
diff --git a/app/code/Magento/Centinel/view/adminhtml/templates/validation/form.phtml b/app/code/Magento/Centinel/view/adminhtml/templates/validation/form.phtml
index 548e29f154b354a971e4bdbe182cbb06b40e00a1..7d9d4a660c263b442a15c82c997a819af88d7df2 100644
--- a/app/code/Magento/Centinel/view/adminhtml/templates/validation/form.phtml
+++ b/app/code/Magento/Centinel/view/adminhtml/templates/validation/form.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <div class="centinel">
@@ -17,7 +20,7 @@
     </button>
 </div>
 
-<script type="text/javascript">
+<script>
 require([
 	"Magento_Centinel/order_create"
 ], function(){
diff --git a/app/code/Magento/Centinel/view/frontend/templates/authentication.phtml b/app/code/Magento/Centinel/view/frontend/templates/authentication.phtml
index 84eb1d881326797845e4e6d3222fba46bc1296cb..73e180528def43ef10d7d3ad4b75b98795a37902 100644
--- a/app/code/Magento/Centinel/view/frontend/templates/authentication.phtml
+++ b/app/code/Magento/Centinel/view/frontend/templates/authentication.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php if ($this->getAuthenticationStart()):?>
     <div class="centinel" id="centinel-authenticate-block" data-mage-init='{"centinelAuthenticate": {"frameUrl": "<?php echo $this->getFrameUrl() ?>"}}'>
@@ -13,7 +16,7 @@
         </div>
     </div>
 <?php else:?>
-    <script type="text/javascript">
+    <script>
 require(['jquery'], function(jQuery){
 
     jQuery('[data-container="body"]').trigger("paymentAuthentication", {state: "cancel"});
diff --git a/app/code/Magento/Centinel/view/frontend/templates/authentication/complete.phtml b/app/code/Magento/Centinel/view/frontend/templates/authentication/complete.phtml
index 07b648985c4aa812a55a97e0a472e1581a6bfe3b..3134ce45fc339a52719f06f961add246dab256a9 100644
--- a/app/code/Magento/Centinel/view/frontend/templates/authentication/complete.phtml
+++ b/app/code/Magento/Centinel/view/frontend/templates/authentication/complete.phtml
@@ -3,10 +3,13 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php if ($this->getIsProcessed()):?>
     <?php if ($this->getIsSuccess()):?>
-        <script type="text/javascript">
+        <script>
 
             parent.jQuery('[data-container="body"]').trigger("paymentAuthentication", {state: "success"});
 
diff --git a/app/code/Magento/Centinel/view/frontend/templates/authentication/start.phtml b/app/code/Magento/Centinel/view/frontend/templates/authentication/start.phtml
index 7dfe99ae3b8f8ac6d5e0de464e6611f247d42b90..50ea52289669d8336ad4d608fa4e84506f7885b7 100644
--- a/app/code/Magento/Centinel/view/frontend/templates/authentication/start.phtml
+++ b/app/code/Magento/Centinel/view/frontend/templates/authentication/start.phtml
@@ -11,7 +11,7 @@
         <input type="hidden" name="MD" value="<?php echo $this->getMd()?>" />
     </fieldset>
 </form>
-<script type="text/javascript">
+<script>
 
     window.onload = function () {
         parent.jQuery('[data-container="body"]').trigger("paymentAuthentication", {state: "start"});
diff --git a/app/code/Magento/Centinel/view/frontend/templates/logo.phtml b/app/code/Magento/Centinel/view/frontend/templates/logo.phtml
index 524f227731d75878b9882e4ec803987eb47f35c3..da30f623ad03056b4d822eda3cb35bfe20c5b3c5 100644
--- a/app/code/Magento/Centinel/view/frontend/templates/logo.phtml
+++ b/app/code/Magento/Centinel/view/frontend/templates/logo.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <div class="field note <?php echo $this->getCode() ?> logos" id="<?php echo $this->getCode() ?>_centinel_logo">
     <label class="label"><span><?php echo __('To ensure the security of your transactions') ?></span></label>
diff --git a/app/code/Magento/Checkout/Block/Cart.php b/app/code/Magento/Checkout/Block/Cart.php
index 6b27f6b658ead22b67dcc3a9e90c50af74f6b760..6e406dae410fc3f9ce9153bc892039d8b39c77bc 100644
--- a/app/code/Magento/Checkout/Block/Cart.php
+++ b/app/code/Magento/Checkout/Block/Cart.php
@@ -67,11 +67,12 @@ class Cart extends \Magento\Checkout\Block\Cart\AbstractCart
      * prepare cart items URLs
      *
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function prepareItemUrls()
     {
         $products = [];
-        /* @var $item \Magento\Sales\Model\Quote\Item */
+        /* @var $item \Magento\Quote\Model\Quote\Item */
         foreach ($this->getItems() as $item) {
             $product = $item->getProduct();
             $option = $item->getOptionByCode('product_type');
@@ -164,6 +165,7 @@ class Cart extends \Magento\Checkout\Block\Cart\AbstractCart
 
     /**
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsVirtual()
     {
diff --git a/app/code/Magento/Checkout/Block/Cart/AbstractCart.php b/app/code/Magento/Checkout/Block/Cart/AbstractCart.php
index c82af62893445c8433d08c8147bf840edb55c3ee..899836ac390314c27a9d16f2f951651f54d12ac4 100644
--- a/app/code/Magento/Checkout/Block/Cart/AbstractCart.php
+++ b/app/code/Magento/Checkout/Block/Cart/AbstractCart.php
@@ -5,7 +5,7 @@
  */
 namespace Magento\Checkout\Block\Cart;
 
-use Magento\Sales\Model\Quote;
+use Magento\Quote\Model\Quote;
 
 /**
  * Shopping cart abstract block
@@ -121,10 +121,10 @@ class AbstractCart extends \Magento\Framework\View\Element\Template
     /**
      * Get item row html
      *
-     * @param   \Magento\Sales\Model\Quote\Item $item
+     * @param   \Magento\Quote\Model\Quote\Item $item
      * @return  string
      */
-    public function getItemHtml(\Magento\Sales\Model\Quote\Item $item)
+    public function getItemHtml(\Magento\Quote\Model\Quote\Item $item)
     {
         $renderer = $this->getItemRenderer($item->getProductType())->setItem($item);
         return $renderer->toHtml();
diff --git a/app/code/Magento/Checkout/Block/Cart/Additional/Info.php b/app/code/Magento/Checkout/Block/Cart/Additional/Info.php
index 628876087a6b2faa150daf04c62ee27bb1cdbecb..0f05230d31431ec67889e4b033fb3637bfac77a4 100644
--- a/app/code/Magento/Checkout/Block/Cart/Additional/Info.php
+++ b/app/code/Magento/Checkout/Block/Cart/Additional/Info.php
@@ -9,22 +9,22 @@ namespace Magento\Checkout\Block\Cart\Additional;
 class Info extends \Magento\Framework\View\Element\Template
 {
     /**
-     * @var \Magento\Sales\Model\Quote\Item\AbstractItem
+     * @var \Magento\Quote\Model\Quote\Item\AbstractItem
      */
     protected $_item;
 
     /**
-     * @param \Magento\Sales\Model\Quote\Item\AbstractItem $item
+     * @param \Magento\Quote\Model\Quote\Item\AbstractItem $item
      * @return $this
      */
-    public function setItem(\Magento\Sales\Model\Quote\Item\AbstractItem $item)
+    public function setItem(\Magento\Quote\Model\Quote\Item\AbstractItem $item)
     {
         $this->_item = $item;
         return $this;
     }
 
     /**
-     * @return \Magento\Sales\Model\Quote\Item\AbstractItem
+     * @return \Magento\Quote\Model\Quote\Item\AbstractItem
      */
     public function getItem()
     {
diff --git a/app/code/Magento/Checkout/Block/Cart/Crosssell.php b/app/code/Magento/Checkout/Block/Cart/Crosssell.php
index cfa1c9c023c8c15f1bc154107f455a4c808c6de3..57077e2b59efc23dfad60b3ac4ad9566d5eb065b 100644
--- a/app/code/Magento/Checkout/Block/Cart/Crosssell.php
+++ b/app/code/Magento/Checkout/Block/Cart/Crosssell.php
@@ -42,7 +42,7 @@ class Crosssell extends \Magento\Catalog\Block\Product\AbstractProduct
     protected $_productLinkFactory;
 
     /**
-     * @var \Magento\Sales\Model\Quote\Item\RelatedProducts
+     * @var \Magento\Quote\Model\Quote\Item\RelatedProducts
      */
     protected $_itemRelationsList;
 
@@ -51,7 +51,7 @@ class Crosssell extends \Magento\Catalog\Block\Product\AbstractProduct
      * @param \Magento\Checkout\Model\Session $checkoutSession
      * @param \Magento\Catalog\Model\Product\Visibility $productVisibility
      * @param \Magento\Catalog\Model\Product\LinkFactory $productLinkFactory
-     * @param \Magento\Sales\Model\Quote\Item\RelatedProducts $itemRelationsList
+     * @param \Magento\Quote\Model\Quote\Item\RelatedProducts $itemRelationsList
      * @param StockHelper $stockHelper
      * @param array $data
      *
@@ -62,7 +62,7 @@ class Crosssell extends \Magento\Catalog\Block\Product\AbstractProduct
         \Magento\Checkout\Model\Session $checkoutSession,
         \Magento\Catalog\Model\Product\Visibility $productVisibility,
         \Magento\Catalog\Model\Product\LinkFactory $productLinkFactory,
-        \Magento\Sales\Model\Quote\Item\RelatedProducts $itemRelationsList,
+        \Magento\Quote\Model\Quote\Item\RelatedProducts $itemRelationsList,
         StockHelper $stockHelper,
         array $data = []
     ) {
@@ -171,7 +171,7 @@ class Crosssell extends \Magento\Catalog\Block\Product\AbstractProduct
     /**
      * Get quote instance
      *
-     * @return \Magento\Sales\Model\Quote
+     * @return \Magento\Quote\Model\Quote
      */
     public function getQuote()
     {
diff --git a/app/code/Magento/Checkout/Block/Cart/Item/Renderer.php b/app/code/Magento/Checkout/Block/Cart/Item/Renderer.php
index 885f1c86fe344d29f5a36f0af9d32ab53bf9f461..eef597d4fb1dcbfd234c9c929a1e5cf75c892bd7 100644
--- a/app/code/Magento/Checkout/Block/Cart/Item/Renderer.php
+++ b/app/code/Magento/Checkout/Block/Cart/Item/Renderer.php
@@ -3,10 +3,13 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Checkout\Block\Cart\Item;
 
 use Magento\Framework\Pricing\PriceCurrencyInterface;
-use Magento\Sales\Model\Quote\Item;
+use Magento\Quote\Model\Quote\Item;
 use Magento\Catalog\Pricing\Price\ConfiguredPriceInterface;
 
 /**
@@ -16,6 +19,7 @@ use Magento\Catalog\Pricing\Price\ConfiguredPriceInterface;
  *
  * @method \Magento\Checkout\Block\Cart\Item\Renderer setProductName(string)
  * @method \Magento\Checkout\Block\Cart\Item\Renderer setDeleteUrl(string)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Renderer extends \Magento\Framework\View\Element\Template implements \Magento\Framework\View\Block\IdentityInterface
 {
@@ -116,10 +120,10 @@ class Renderer extends \Magento\Framework\View\Element\Template implements \Mage
     /**
      * Set item for render
      *
-     * @param \Magento\Sales\Model\Quote\Item\AbstractItem $item
+     * @param \Magento\Quote\Model\Quote\Item\AbstractItem $item
      * @return $this
      */
-    public function setItem(\Magento\Sales\Model\Quote\Item\AbstractItem $item)
+    public function setItem(\Magento\Quote\Model\Quote\Item\AbstractItem $item)
     {
         $this->_item = $item;
         return $this;
@@ -525,10 +529,10 @@ class Renderer extends \Magento\Framework\View\Element\Template implements \Mage
     /**
      * Return the unit price html
      *
-     * @param \Magento\Sales\Model\Quote\Item\AbstractItem $item
+     * @param \Magento\Quote\Model\Quote\Item\AbstractItem $item
      * @return string
      */
-    public function getUnitPriceHtml(\Magento\Sales\Model\Quote\Item\AbstractItem  $item)
+    public function getUnitPriceHtml(\Magento\Quote\Model\Quote\Item\AbstractItem  $item)
     {
         /** @var Renderer $block */
         $block = $this->getLayout()->getBlock('checkout.item.price.unit');
@@ -539,10 +543,10 @@ class Renderer extends \Magento\Framework\View\Element\Template implements \Mage
     /**
      * Return row total html
      *
-     * @param \Magento\Sales\Model\Quote\Item\AbstractItem  $item
+     * @param \Magento\Quote\Model\Quote\Item\AbstractItem  $item
      * @return string
      */
-    public function getRowTotalHtml(\Magento\Sales\Model\Quote\Item\AbstractItem  $item)
+    public function getRowTotalHtml(\Magento\Quote\Model\Quote\Item\AbstractItem  $item)
     {
         /** @var Renderer $block */
         $block = $this->getLayout()->getBlock('checkout.item.price.row');
@@ -553,10 +557,10 @@ class Renderer extends \Magento\Framework\View\Element\Template implements \Mage
     /**
      * Return item price html for sidebar
      *
-     * @param \Magento\Sales\Model\Quote\Item\AbstractItem  $item
+     * @param \Magento\Quote\Model\Quote\Item\AbstractItem  $item
      * @return string
      */
-    public function getSidebarItemPriceHtml(\Magento\Sales\Model\Quote\Item\AbstractItem  $item)
+    public function getSidebarItemPriceHtml(\Magento\Quote\Model\Quote\Item\AbstractItem  $item)
     {
         /** @var Renderer $block */
         $block = $this->getLayout()->getBlock('checkout.cart.item.price.sidebar');
@@ -570,7 +574,7 @@ class Renderer extends \Magento\Framework\View\Element\Template implements \Mage
      * @param Item\AbstractItem $item
      * @return string
      */
-    public function getUnitPriceExclTaxHtml(\Magento\Sales\Model\Quote\Item\AbstractItem  $item)
+    public function getUnitPriceExclTaxHtml(\Magento\Quote\Model\Quote\Item\AbstractItem  $item)
     {
         /** @var Renderer $block */
         $block = $this->getLayout()->getBlock('checkout.onepage.review.item.price.unit.excl');
@@ -584,7 +588,7 @@ class Renderer extends \Magento\Framework\View\Element\Template implements \Mage
      * @param Item\AbstractItem $item
      * @return string
      */
-    public function getUnitPriceInclTaxHtml(\Magento\Sales\Model\Quote\Item\AbstractItem  $item)
+    public function getUnitPriceInclTaxHtml(\Magento\Quote\Model\Quote\Item\AbstractItem  $item)
     {
         /** @var Renderer $block */
         $block = $this->getLayout()->getBlock('checkout.onepage.review.item.price.unit.incl');
@@ -598,7 +602,7 @@ class Renderer extends \Magento\Framework\View\Element\Template implements \Mage
      * @param Item\AbstractItem $item
      * @return string
      */
-    public function getRowTotalExclTaxHtml(\Magento\Sales\Model\Quote\Item\AbstractItem  $item)
+    public function getRowTotalExclTaxHtml(\Magento\Quote\Model\Quote\Item\AbstractItem  $item)
     {
         /** @var Renderer $block */
         $block = $this->getLayout()->getBlock('checkout.onepage.review.item.price.rowtotal.excl');
@@ -612,7 +616,7 @@ class Renderer extends \Magento\Framework\View\Element\Template implements \Mage
      * @param Item\AbstractItem $item
      * @return string
      */
-    public function getRowTotalInclTaxHtml(\Magento\Sales\Model\Quote\Item\AbstractItem  $item)
+    public function getRowTotalInclTaxHtml(\Magento\Quote\Model\Quote\Item\AbstractItem  $item)
     {
         /** @var Renderer $block */
         $block = $this->getLayout()->getBlock('checkout.onepage.review.item.price.rowtotal.incl');
diff --git a/app/code/Magento/Checkout/Block/Cart/Shipping.php b/app/code/Magento/Checkout/Block/Cart/Shipping.php
index 7bc0d4448121e7c8f8355db51822764e35b14fcd..27f72fb347f391cd41e74da27eb83713e46abd1a 100644
--- a/app/code/Magento/Checkout/Block/Cart/Shipping.php
+++ b/app/code/Magento/Checkout/Block/Cart/Shipping.php
@@ -34,7 +34,7 @@ class Shipping extends \Magento\Checkout\Block\Cart\AbstractCart
     protected $_directoryBlock;
 
     /**
-     * @var \Magento\Sales\Model\Quote\Address\CarrierFactoryInterface
+     * @var \Magento\Quote\Model\Quote\Address\CarrierFactoryInterface
      */
     protected $_carrierFactory;
 
@@ -48,7 +48,7 @@ class Shipping extends \Magento\Checkout\Block\Cart\AbstractCart
      * @param \Magento\Customer\Model\Session $customerSession
      * @param \Magento\Checkout\Model\Session $checkoutSession
      * @param \Magento\Directory\Block\Data $directoryBlock
-     * @param \Magento\Sales\Model\Quote\Address\CarrierFactoryInterface $carrierFactory
+     * @param \Magento\Quote\Model\Quote\Address\CarrierFactoryInterface $carrierFactory
      * @param PriceCurrencyInterface $priceCurrency
      * @param array $data
      */
@@ -57,7 +57,7 @@ class Shipping extends \Magento\Checkout\Block\Cart\AbstractCart
         \Magento\Customer\Model\Session $customerSession,
         \Magento\Checkout\Model\Session $checkoutSession,
         \Magento\Directory\Block\Data $directoryBlock,
-        \Magento\Sales\Model\Quote\Address\CarrierFactoryInterface $carrierFactory,
+        \Magento\Quote\Model\Quote\Address\CarrierFactoryInterface $carrierFactory,
         PriceCurrencyInterface $priceCurrency,
         array $data = []
     ) {
@@ -104,7 +104,7 @@ class Shipping extends \Magento\Checkout\Block\Cart\AbstractCart
     /**
      * Get Address Model
      *
-     * @return \Magento\Sales\Model\Quote\Address
+     * @return \Magento\Quote\Model\Quote\Address
      */
     public function getAddress()
     {
@@ -196,6 +196,7 @@ class Shipping extends \Magento\Checkout\Block\Cart\AbstractCart
      * Show City in Shipping Estimation
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getCityActive()
     {
@@ -206,6 +207,7 @@ class Shipping extends \Magento\Checkout\Block\Cart\AbstractCart
      * Show State in Shipping Estimation. Result updated using plugins
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getStateActive()
     {
@@ -297,10 +299,10 @@ class Shipping extends \Magento\Checkout\Block\Cart\AbstractCart
     /**
      * Get shipping price html
      *
-     * @param \Magento\Sales\Model\Quote\Address\Rate $shippingRate
+     * @param \Magento\Quote\Model\Quote\Address\Rate $shippingRate
      * @return string
      */
-    public function getShippingPriceHtml(\Magento\Sales\Model\Quote\Address\Rate $shippingRate)
+    public function getShippingPriceHtml(\Magento\Quote\Model\Quote\Address\Rate $shippingRate)
     {
         /** @var \Magento\Checkout\Block\Shipping\Price $block */
         $block = $this->getLayout()->getBlock('checkout.shipping.price');
diff --git a/app/code/Magento/Checkout/Block/Cart/Sidebar.php b/app/code/Magento/Checkout/Block/Cart/Sidebar.php
index df26b67256c8c414ad31c6feda6ba39590c752a8..a811d6069b6ffe4a1f7469064bb79a7581fe8f87 100644
--- a/app/code/Magento/Checkout/Block/Cart/Sidebar.php
+++ b/app/code/Magento/Checkout/Block/Cart/Sidebar.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Checkout\Block\Cart;
 
 use Magento\Framework\View\Block\IdentityInterface;
@@ -97,7 +100,7 @@ class Sidebar extends AbstractCart implements IdentityInterface
         $i = 0;
         $allItems = array_reverse($this->getItems());
         foreach ($allItems as $item) {
-            /* @var $item \Magento\Sales\Model\Quote\Item */
+            /* @var $item \Magento\Quote\Model\Quote\Item */
             if (!$item->getProduct()->isVisibleInSiteVisibility()) {
                 $productId = $item->getProduct()->getId();
                 $products = $this->_catalogUrl->getRewriteByProductStore([$productId => $item->getStoreId()]);
@@ -159,6 +162,7 @@ class Sidebar extends AbstractCart implements IdentityInterface
      * Get one page checkout page url
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getCheckoutUrl()
     {
@@ -169,6 +173,7 @@ class Sidebar extends AbstractCart implements IdentityInterface
      * Define if Mini Shopping Cart Pop-Up Menu enabled
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsNeedToDisplaySideBar()
     {
@@ -272,7 +277,7 @@ class Sidebar extends AbstractCart implements IdentityInterface
     public function getIdentities()
     {
         $identities = [];
-        /** @var $item \Magento\Sales\Model\Quote\Item */
+        /** @var $item \Magento\Quote\Model\Quote\Item */
         foreach ($this->getItems() as $item) {
             $identities = array_merge($identities, $item->getProduct()->getIdentities());
         }
diff --git a/app/code/Magento/Checkout/Block/Cart/Sidebar/Totals.php b/app/code/Magento/Checkout/Block/Cart/Sidebar/Totals.php
index 90535c979f0b8cb6789fee8c293703a9b9086494..7e3325d7dc9de6b2af54bf31c7e4ccdc877586a7 100644
--- a/app/code/Magento/Checkout/Block/Cart/Sidebar/Totals.php
+++ b/app/code/Magento/Checkout/Block/Cart/Sidebar/Totals.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Checkout\Block\Cart\Sidebar;
 
 use Magento\Checkout\Block\Cart\AbstractCart;
diff --git a/app/code/Magento/Checkout/Block/Cart/Totals.php b/app/code/Magento/Checkout/Block/Cart/Totals.php
index 90eb10592d906a53b6cb8dc2fd67e29a22af373c..1bb9af9ad0f1ba5aea6495fb3569f92b7bfcfd3c 100644
--- a/app/code/Magento/Checkout/Block/Cart/Totals.php
+++ b/app/code/Magento/Checkout/Block/Cart/Totals.php
@@ -168,7 +168,7 @@ class Totals extends \Magento\Checkout\Block\Cart\AbstractCart
     /**
      * Get active or custom quote
      *
-     * @return \Magento\Sales\Model\Quote
+     * @return \Magento\Quote\Model\Quote
      */
     public function getQuote()
     {
diff --git a/app/code/Magento/Checkout/Block/Item/Price/Renderer.php b/app/code/Magento/Checkout/Block/Item/Price/Renderer.php
index b86e0ad514132a4d47c020e2b81ca20a88e6e6f1..56c6591c75bd68dc6e0af1e77ab17095a669d23c 100644
--- a/app/code/Magento/Checkout/Block/Item/Price/Renderer.php
+++ b/app/code/Magento/Checkout/Block/Item/Price/Renderer.php
@@ -5,7 +5,7 @@
  */
 namespace Magento\Checkout\Block\Item\Price;
 
-use Magento\Sales\Model\Quote\Item\AbstractItem;
+use Magento\Quote\Model\Quote\Item\AbstractItem;
 
 /**
  * Item price render block
@@ -22,10 +22,10 @@ class Renderer extends \Magento\Framework\View\Element\Template
     /**
      * Set item for render
      *
-     * @param \Magento\Sales\Model\Quote\Item\AbstractItem $item
+     * @param \Magento\Quote\Model\Quote\Item\AbstractItem $item
      * @return $this
      */
-    public function setItem(\Magento\Sales\Model\Quote\Item\AbstractItem $item)
+    public function setItem(\Magento\Quote\Model\Quote\Item\AbstractItem $item)
     {
         $this->item = $item;
         return $this;
diff --git a/app/code/Magento/Checkout/Block/Onepage.php b/app/code/Magento/Checkout/Block/Onepage.php
index 56adf62ef16d076c65df831d3ad26f0e8abe247f..04aaf4b495b313fef5c9502b82adeede8c7281d2 100644
--- a/app/code/Magento/Checkout/Block/Onepage.php
+++ b/app/code/Magento/Checkout/Block/Onepage.php
@@ -26,6 +26,7 @@ class Onepage extends \Magento\Checkout\Block\Onepage\AbstractOnepage
      * @param \Magento\Framework\App\Http\Context $httpContext
      * @param \Magento\Customer\Model\Address\Mapper $addressMapper
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\View\Element\Template\Context $context,
diff --git a/app/code/Magento/Checkout/Block/Onepage/AbstractOnepage.php b/app/code/Magento/Checkout/Block/Onepage/AbstractOnepage.php
index 61e172448934b1e3db9bb0839c11893386eb7f07..941b0425c66f41988d20bd0161fd6706968a2ff6 100644
--- a/app/code/Magento/Checkout/Block/Onepage/AbstractOnepage.php
+++ b/app/code/Magento/Checkout/Block/Onepage/AbstractOnepage.php
@@ -10,10 +10,11 @@ use Magento\Customer\Model\Address\Config as AddressConfig;
 use Magento\Directory\Model\Resource\Country\Collection;
 use Magento\Directory\Model\Resource\Region\Collection as RegionCollection;
 use Magento\Framework\Exception\NoSuchEntityException;
-use Magento\Sales\Model\Quote;
+use Magento\Quote\Model\Quote;
 
 /**
  * One page common functionality block
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 abstract class AbstractOnepage extends \Magento\Framework\View\Element\Template
 {
@@ -100,6 +101,7 @@ abstract class AbstractOnepage extends \Magento\Framework\View\Element\Template
      * @param \Magento\Framework\App\Http\Context $httpContext
      * @param \Magento\Customer\Model\Address\Mapper $addressMapper
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\View\Element\Template\Context $context,
@@ -366,10 +368,10 @@ abstract class AbstractOnepage extends \Magento\Framework\View\Element\Template
     /**
      * Return the html text for shipping price
      *
-     * @param \Magento\Sales\Model\Quote\Address\Rate $rate
+     * @param \Magento\Quote\Model\Quote\Address\Rate $rate
      * @return string
      */
-    public function getShippingPriceHtml(\Magento\Sales\Model\Quote\Address\Rate $rate)
+    public function getShippingPriceHtml(\Magento\Quote\Model\Quote\Address\Rate $rate)
     {
         /** @var \Magento\Checkout\Block\Shipping\Price $block */
         $block = $this->getLayout()->getBlock('checkout.shipping.price');
diff --git a/app/code/Magento/Checkout/Block/Onepage/Billing.php b/app/code/Magento/Checkout/Block/Onepage/Billing.php
index 505f4afedbdac0d10608021187884fe8aafe99c2..13730ef9d302e178f64e8932785230af6897b3a0 100644
--- a/app/code/Magento/Checkout/Block/Onepage/Billing.php
+++ b/app/code/Magento/Checkout/Block/Onepage/Billing.php
@@ -10,13 +10,14 @@ use Magento\Customer\Model\Address\Config as AddressConfig;
 
 /**
  * One page checkout status
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Billing extends \Magento\Checkout\Block\Onepage\AbstractOnepage
 {
     /**
      * Sales Qoute Billing Address instance
      *
-     * @var \Magento\Sales\Model\Quote\Address
+     * @var \Magento\Quote\Model\Quote\Address
      */
     protected $_address;
 
@@ -28,7 +29,7 @@ class Billing extends \Magento\Checkout\Block\Onepage\AbstractOnepage
     protected $_taxvat;
 
     /**
-     * @var \Magento\Sales\Model\Quote\AddressFactory
+     * @var \Magento\Quote\Model\Quote\AddressFactory
      */
     protected $_addressFactory;
 
@@ -44,8 +45,9 @@ class Billing extends \Magento\Checkout\Block\Onepage\AbstractOnepage
      * @param AddressConfig $addressConfig
      * @param \Magento\Framework\App\Http\Context $httpContext
      * @param \Magento\Customer\Model\Address\Mapper $addressMapper
-     * @param \Magento\Sales\Model\Quote\AddressFactory $addressFactory
+     * @param \Magento\Quote\Model\Quote\AddressFactory $addressFactory
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\View\Element\Template\Context $context,
@@ -59,7 +61,7 @@ class Billing extends \Magento\Checkout\Block\Onepage\AbstractOnepage
         AddressConfig $addressConfig,
         \Magento\Framework\App\Http\Context $httpContext,
         \Magento\Customer\Model\Address\Mapper $addressMapper,
-        \Magento\Sales\Model\Quote\AddressFactory $addressFactory,
+        \Magento\Quote\Model\Quote\AddressFactory $addressFactory,
         array $data = []
     ) {
         $this->_addressFactory = $addressFactory;
@@ -132,7 +134,7 @@ class Billing extends \Magento\Checkout\Block\Onepage\AbstractOnepage
     /**
      * Return Sales Quote Address model
      *
-     * @return \Magento\Sales\Model\Quote\Address
+     * @return \Magento\Quote\Model\Quote\Address
      */
     public function getAddress()
     {
diff --git a/app/code/Magento/Checkout/Block/Onepage/Failure.php b/app/code/Magento/Checkout/Block/Onepage/Failure.php
index a1dd3b59f7be89f2cc87de134ded04b76fc36b25..9d9b37b668bc052b71eb4059a76b4274a4452769 100644
--- a/app/code/Magento/Checkout/Block/Onepage/Failure.php
+++ b/app/code/Magento/Checkout/Block/Onepage/Failure.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Checkout\Block\Onepage;
 
 class Failure extends \Magento\Framework\View\Element\Template
diff --git a/app/code/Magento/Checkout/Block/Onepage/Login.php b/app/code/Magento/Checkout/Block/Onepage/Login.php
index 7dbcee2cbecc502a33726874369a2116249afe28..1d37f5d8b7d095ad516f6539ca47d112bf87fe6a 100644
--- a/app/code/Magento/Checkout/Block/Onepage/Login.php
+++ b/app/code/Magento/Checkout/Block/Onepage/Login.php
@@ -11,6 +11,7 @@ use Magento\Framework\Message\Collection;
 
 /**
  * One page checkout status
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Login extends AbstractOnepage
 {
@@ -54,6 +55,7 @@ class Login extends AbstractOnepage
      * @param \Magento\Customer\Model\Registration $registration
      * @param \Magento\Customer\Model\Address\Mapper $dataObjectConverter
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\View\Element\Template\Context $context,
diff --git a/app/code/Magento/Checkout/Block/Onepage/Payment/Methods.php b/app/code/Magento/Checkout/Block/Onepage/Payment/Methods.php
index caab895f03b838c0a3da7bf647c764301f4f2ff2..796a1bceb16c62e36ba8c81e584f4e283464bbeb 100644
--- a/app/code/Magento/Checkout/Block/Onepage/Payment/Methods.php
+++ b/app/code/Magento/Checkout/Block/Onepage/Payment/Methods.php
@@ -38,7 +38,7 @@ class Methods extends \Magento\Payment\Block\Form\Container
     }
 
     /**
-     * @return \Magento\Sales\Model\Quote
+     * @return \Magento\Quote\Model\Quote
      */
     public function getQuote()
     {
diff --git a/app/code/Magento/Checkout/Block/Onepage/Progress.php b/app/code/Magento/Checkout/Block/Onepage/Progress.php
index 0a9556459cc3ef310c9e46842adc46ac589334a3..81426da154a8ddaec3bd35546653bed4d502b36f 100644
--- a/app/code/Magento/Checkout/Block/Onepage/Progress.php
+++ b/app/code/Magento/Checkout/Block/Onepage/Progress.php
@@ -3,9 +3,12 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Checkout\Block\Onepage;
 
-use Magento\Sales\Model\Quote\Address;
+use Magento\Quote\Model\Quote\Address;
 
 /**
  * One page checkout status
diff --git a/app/code/Magento/Checkout/Block/Onepage/Shipping.php b/app/code/Magento/Checkout/Block/Onepage/Shipping.php
index f37e20bcef239f375eb96e8d91a319c3c950626a..b17503ac8ab40b8771829681f0c0836e983755cc 100644
--- a/app/code/Magento/Checkout/Block/Onepage/Shipping.php
+++ b/app/code/Magento/Checkout/Block/Onepage/Shipping.php
@@ -10,18 +10,19 @@ use Magento\Customer\Model\Address\Config as AddressConfig;
 
 /**
  * One page checkout status
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Shipping extends \Magento\Checkout\Block\Onepage\AbstractOnepage
 {
     /**
      * Sales Qoute Shipping Address instance
      *
-     * @var \Magento\Sales\Model\Quote\Address
+     * @var \Magento\Quote\Model\Quote\Address
      */
     protected $_address = null;
 
     /**
-     * @var \Magento\Sales\Model\Quote\AddressFactory
+     * @var \Magento\Quote\Model\Quote\AddressFactory
      */
     protected $_addressFactory;
 
@@ -37,8 +38,9 @@ class Shipping extends \Magento\Checkout\Block\Onepage\AbstractOnepage
      * @param AddressConfig $addressConfig
      * @param \Magento\Framework\App\Http\Context $httpContext
      * @param \Magento\Customer\Model\Address\Mapper $addressMapper
-     * @param \Magento\Sales\Model\Quote\AddressFactory $addressFactory
+     * @param \Magento\Quote\Model\Quote\AddressFactory $addressFactory
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\View\Element\Template\Context $context,
@@ -52,7 +54,7 @@ class Shipping extends \Magento\Checkout\Block\Onepage\AbstractOnepage
         AddressConfig $addressConfig,
         \Magento\Framework\App\Http\Context $httpContext,
         \Magento\Customer\Model\Address\Mapper $addressMapper,
-        \Magento\Sales\Model\Quote\AddressFactory $addressFactory,
+        \Magento\Quote\Model\Quote\AddressFactory $addressFactory,
         array $data = []
     ) {
         $this->_addressFactory = $addressFactory;
@@ -101,7 +103,7 @@ class Shipping extends \Magento\Checkout\Block\Onepage\AbstractOnepage
     /**
      * Return Sales Quote Address model (shipping address)
      *
-     * @return \Magento\Sales\Model\Quote\Address
+     * @return \Magento\Quote\Model\Quote\Address
      */
     public function getAddress()
     {
diff --git a/app/code/Magento/Checkout/Block/Onepage/Shipping/Method/Available.php b/app/code/Magento/Checkout/Block/Onepage/Shipping/Method/Available.php
index 43472fd63a4448529d1681b869f0835691a3b65e..679f00970c0e2cef87cbfb4004372d6103ec6cc3 100644
--- a/app/code/Magento/Checkout/Block/Onepage/Shipping/Method/Available.php
+++ b/app/code/Magento/Checkout/Block/Onepage/Shipping/Method/Available.php
@@ -7,10 +7,11 @@ namespace Magento\Checkout\Block\Onepage\Shipping\Method;
 
 use Magento\Customer\Api\CustomerRepositoryInterface;
 use Magento\Customer\Model\Address\Config as AddressConfig;
-use Magento\Sales\Model\Quote\Address;
+use Magento\Quote\Model\Quote\Address;
 
 /**
  * One page checkout status
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Available extends \Magento\Checkout\Block\Onepage\AbstractOnepage
 {
@@ -37,6 +38,7 @@ class Available extends \Magento\Checkout\Block\Onepage\AbstractOnepage
      * @param \Magento\Framework\App\Http\Context $httpContext
      * @param \Magento\Customer\Model\Address\Mapper $addressMapper
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\View\Element\Template\Context $context,
diff --git a/app/code/Magento/Checkout/Block/Shipping/Price.php b/app/code/Magento/Checkout/Block/Shipping/Price.php
index d954b555ce9122cfcc8c42f6a6cbe6327e31f68f..7642b752b07a56ebcae0b6d18389028fe85beff2 100644
--- a/app/code/Magento/Checkout/Block/Shipping/Price.php
+++ b/app/code/Magento/Checkout/Block/Shipping/Price.php
@@ -7,7 +7,7 @@ namespace Magento\Checkout\Block\Shipping;
 
 use Magento\Checkout\Block\Cart\AbstractCart;
 use Magento\Framework\Pricing\PriceCurrencyInterface;
-use Magento\Sales\Model\Quote\Address\Rate;
+use Magento\Quote\Model\Quote\Address\Rate;
 
 class Price extends AbstractCart
 {
diff --git a/app/code/Magento/Checkout/Controller/Cart/Add.php b/app/code/Magento/Checkout/Controller/Cart/Add.php
index 1bbf5935c112480bc56a9aec82e9b58d2893644d..dc61e5350b9d5e8d3d9d8f18a0ef40a3993a490f 100644
--- a/app/code/Magento/Checkout/Controller/Cart/Add.php
+++ b/app/code/Magento/Checkout/Controller/Cart/Add.php
@@ -4,6 +4,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Checkout\Controller\Cart;
 
 use Magento\Catalog\Api\ProductRepositoryInterface;
@@ -62,6 +65,7 @@ class Add extends \Magento\Checkout\Controller\Cart
      * Add product to shopping cart action
      *
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function execute()
     {
diff --git a/app/code/Magento/Checkout/Controller/Cart/Configure.php b/app/code/Magento/Checkout/Controller/Cart/Configure.php
index 1a0fc1f3148f350051b14497ac9dd8fbec9daf99..0c09470858bd3bbf929fc9a5667b64a497bb1a57 100644
--- a/app/code/Magento/Checkout/Controller/Cart/Configure.php
+++ b/app/code/Magento/Checkout/Controller/Cart/Configure.php
@@ -44,18 +44,19 @@ class Configure extends \Magento\Checkout\Controller\Cart
     {
         // Extract item and product to configure
         $id = (int)$this->getRequest()->getParam('id');
+        $productId = (int)$this->getRequest()->getParam('product_id');
         $quoteItem = null;
         if ($id) {
             $quoteItem = $this->cart->getQuote()->getItemById($id);
         }
 
-        if (!$quoteItem) {
-            $this->messageManager->addError(__("We can't find the quote item."));
-            $this->_redirect('checkout/cart');
-            return;
-        }
-
         try {
+            if (!$quoteItem || $productId != $quoteItem->getProduct()->getId()) {
+                $this->messageManager->addError(__("We can't find the quote item."));
+                $this->_redirect('checkout/cart');
+                return;
+            }
+
             $params = new \Magento\Framework\Object();
             $params->setCategoryId(false);
             $params->setConfigureMode(true);
diff --git a/app/code/Magento/Checkout/Controller/Cart/CouponPost.php b/app/code/Magento/Checkout/Controller/Cart/CouponPost.php
index 0aeee987d16fd9e018180fd21474354ee0cd74b7..0cf8613f7b2ea9bb98558dbfa3a10f4a14314a42 100644
--- a/app/code/Magento/Checkout/Controller/Cart/CouponPost.php
+++ b/app/code/Magento/Checkout/Controller/Cart/CouponPost.php
@@ -13,7 +13,7 @@ class CouponPost extends \Magento\Checkout\Controller\Cart
     /**
      * Sales quote repository
      *
-     * @var \Magento\Sales\Model\QuoteRepository
+     * @var \Magento\Quote\Model\QuoteRepository
      */
     protected $quoteRepository;
 
@@ -24,7 +24,7 @@ class CouponPost extends \Magento\Checkout\Controller\Cart
      * @param \Magento\Store\Model\StoreManagerInterface $storeManager
      * @param \Magento\Core\App\Action\FormKeyValidator $formKeyValidator
      * @param CustomerCart $cart
-     * @param \Magento\Sales\Model\QuoteRepository $quoteRepository
+     * @param \Magento\Quote\Model\QuoteRepository $quoteRepository
      */
     public function __construct(
         \Magento\Framework\App\Action\Context $context,
@@ -33,7 +33,7 @@ class CouponPost extends \Magento\Checkout\Controller\Cart
         \Magento\Store\Model\StoreManagerInterface $storeManager,
         \Magento\Core\App\Action\FormKeyValidator $formKeyValidator,
         CustomerCart $cart,
-        \Magento\Sales\Model\QuoteRepository $quoteRepository
+        \Magento\Quote\Model\QuoteRepository $quoteRepository
     ) {
         parent::__construct(
             $context,
@@ -50,6 +50,8 @@ class CouponPost extends \Magento\Checkout\Controller\Cart
      * Initialize coupon
      *
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function execute()
     {
diff --git a/app/code/Magento/Checkout/Controller/Cart/EstimatePost.php b/app/code/Magento/Checkout/Controller/Cart/EstimatePost.php
index def7464995e58b13771e2e60cde031838d91ecfb..f0b4013f995cb055938415cfccc3ee6b6b737178 100644
--- a/app/code/Magento/Checkout/Controller/Cart/EstimatePost.php
+++ b/app/code/Magento/Checkout/Controller/Cart/EstimatePost.php
@@ -11,7 +11,7 @@ use Magento\Checkout\Model\Cart as CustomerCart;
 class EstimatePost extends \Magento\Checkout\Controller\Cart
 {
     /**
-     * @var \Magento\Sales\Model\QuoteRepository
+     * @var \Magento\Quote\Model\QuoteRepository
      */
     protected $quoteRepository;
 
@@ -22,7 +22,7 @@ class EstimatePost extends \Magento\Checkout\Controller\Cart
      * @param \Magento\Store\Model\StoreManagerInterface $storeManager
      * @param \Magento\Core\App\Action\FormKeyValidator $formKeyValidator
      * @param CustomerCart $cart
-     * @param \Magento\Sales\Model\QuoteRepository $quoteRepository
+     * @param \Magento\Quote\Model\QuoteRepository $quoteRepository
      */
     public function __construct(
         \Magento\Framework\App\Action\Context $context,
@@ -31,7 +31,7 @@ class EstimatePost extends \Magento\Checkout\Controller\Cart
         \Magento\Store\Model\StoreManagerInterface $storeManager,
         \Magento\Core\App\Action\FormKeyValidator $formKeyValidator,
         CustomerCart $cart,
-        \Magento\Sales\Model\QuoteRepository $quoteRepository
+        \Magento\Quote\Model\QuoteRepository $quoteRepository
     ) {
         $this->quoteRepository = $quoteRepository;
         parent::__construct(
diff --git a/app/code/Magento/Checkout/Controller/Cart/Index.php b/app/code/Magento/Checkout/Controller/Cart/Index.php
index cd0bb023dcaab629d303f7366b492e10be72d7df..144ae3fdeaa81fd34a88381df3a21974b3d7527e 100644
--- a/app/code/Magento/Checkout/Controller/Cart/Index.php
+++ b/app/code/Magento/Checkout/Controller/Cart/Index.php
@@ -4,6 +4,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Checkout\Controller\Cart;
 
 class Index extends \Magento\Checkout\Controller\Cart
@@ -15,6 +18,7 @@ class Index extends \Magento\Checkout\Controller\Cart
      */
     public function execute()
     {
+        $this->_eventManager->dispatch('collect_totals_failed_items');
         if ($this->cart->getQuote()->getItemsCount()) {
             $this->cart->init();
             $this->cart->save();
diff --git a/app/code/Magento/Checkout/Controller/Cart/UpdateItemOptions.php b/app/code/Magento/Checkout/Controller/Cart/UpdateItemOptions.php
index 87d618c17e353a6db23a6b5e9c13785f88131dd3..433300a78fda6cf8b71a95137f4b9b4756e9faa9 100644
--- a/app/code/Magento/Checkout/Controller/Cart/UpdateItemOptions.php
+++ b/app/code/Magento/Checkout/Controller/Cart/UpdateItemOptions.php
@@ -4,6 +4,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Checkout\Controller\Cart;
 
 class UpdateItemOptions extends \Magento\Checkout\Controller\Cart
@@ -12,6 +15,8 @@ class UpdateItemOptions extends \Magento\Checkout\Controller\Cart
      * Update product configuration for a cart item
      *
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function execute()
     {
diff --git a/app/code/Magento/Checkout/Controller/Cart/UpdatePost.php b/app/code/Magento/Checkout/Controller/Cart/UpdatePost.php
index 7acd228d0f973ad444eaaf70d708716c4f98511f..094541435b0c20f1bc48585b497dbcf408c21d40 100644
--- a/app/code/Magento/Checkout/Controller/Cart/UpdatePost.php
+++ b/app/code/Magento/Checkout/Controller/Cart/UpdatePost.php
@@ -4,6 +4,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Checkout\Controller\Cart;
 
 class UpdatePost extends \Magento\Checkout\Controller\Cart
diff --git a/app/code/Magento/Checkout/Controller/Onepage.php b/app/code/Magento/Checkout/Controller/Onepage.php
index 6d9fe936d2611bf432d2d8c827d0422b455d16f8..0cd64fb99023f9e27bcfc0a36de69364d20b7dc7 100644
--- a/app/code/Magento/Checkout/Controller/Onepage.php
+++ b/app/code/Magento/Checkout/Controller/Onepage.php
@@ -10,6 +10,9 @@ use Magento\Customer\Api\CustomerRepositoryInterface;
 use Magento\Framework\App\Action\NotFoundException;
 use Magento\Framework\App\RequestInterface;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class Onepage extends Action
 {
     /**
@@ -54,7 +57,7 @@ class Onepage extends Action
     protected $layoutFactory;
 
     /**
-     * @var \Magento\Sales\Model\QuoteRepository
+     * @var \Magento\Quote\Model\QuoteRepository
      */
     protected $quoteRepository;
 
@@ -68,7 +71,8 @@ class Onepage extends Action
      * @param \Magento\Core\App\Action\FormKeyValidator $formKeyValidator
      * @param \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig
      * @param \Magento\Framework\View\LayoutFactory $layoutFactory
-     * @param \Magento\Sales\Model\QuoteRepository $quoteRepository
+     * @param \Magento\Quote\Model\QuoteRepository $quoteRepository
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\App\Action\Context $context,
@@ -80,7 +84,7 @@ class Onepage extends Action
         \Magento\Core\App\Action\FormKeyValidator $formKeyValidator,
         \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig,
         \Magento\Framework\View\LayoutFactory $layoutFactory,
-        \Magento\Sales\Model\QuoteRepository $quoteRepository
+        \Magento\Quote\Model\QuoteRepository $quoteRepository
     ) {
         $this->_coreRegistry = $coreRegistry;
         $this->_translateInline = $translateInline;
@@ -103,7 +107,7 @@ class Onepage extends Action
         $this->_request = $request;
         $this->_preDispatchValidateCustomer();
 
-        /** @var \Magento\Sales\Model\Quote $quote */
+        /** @var \Magento\Quote\Model\Quote $quote */
         $quote = $this->_objectManager->get('Magento\Checkout\Model\Session')->getQuote();
         if ($quote->isMultipleShippingAddresses()) {
             $quote->removeAllAddresses();
diff --git a/app/code/Magento/Checkout/Controller/Onepage/SaveOrder.php b/app/code/Magento/Checkout/Controller/Onepage/SaveOrder.php
index f4fad7505cc2330776e6b75f812f034d711eec70..dc5032ca4cde14b6ec9b0d88cea1c98fccf660e9 100644
--- a/app/code/Magento/Checkout/Controller/Onepage/SaveOrder.php
+++ b/app/code/Magento/Checkout/Controller/Onepage/SaveOrder.php
@@ -12,6 +12,8 @@ class SaveOrder extends \Magento\Checkout\Controller\Onepage
      * Create order action
      *
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public function execute()
     {
@@ -48,6 +50,7 @@ class SaveOrder extends \Magento\Checkout\Controller\Onepage
                     \Magento\Payment\Model\Method\AbstractMethod::CHECK_ORDER_TOTAL_MIN_MAX,
                     \Magento\Payment\Model\Method\AbstractMethod::CHECK_ZERO_TOTAL,
                 ];
+                $this->getOnepage()->getQuote()->getPayment()->setQuote($this->getOnepage()->getQuote());
                 $this->getOnepage()->getQuote()->getPayment()->importData($data);
             }
 
diff --git a/app/code/Magento/Checkout/Controller/Onepage/SavePayment.php b/app/code/Magento/Checkout/Controller/Onepage/SavePayment.php
index cda4c37a74be25cda70dedef86c7d15a7bf877e2..d401a79fb575f41952a1be60f3182f2e0d6015ac 100644
--- a/app/code/Magento/Checkout/Controller/Onepage/SavePayment.php
+++ b/app/code/Magento/Checkout/Controller/Onepage/SavePayment.php
@@ -24,6 +24,7 @@ class SavePayment extends \Magento\Checkout\Controller\Onepage
      * Sets either redirect or a JSON response
      *
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function execute()
     {
diff --git a/app/code/Magento/Checkout/Controller/Onepage/Success.php b/app/code/Magento/Checkout/Controller/Onepage/Success.php
index e9ca3153ebcfa2e62e0bead66e3a020e357174d3..53dffbf01521753155c4ae232f335805c6619744 100644
--- a/app/code/Magento/Checkout/Controller/Onepage/Success.php
+++ b/app/code/Magento/Checkout/Controller/Onepage/Success.php
@@ -16,7 +16,7 @@ class Success extends \Magento\Checkout\Controller\Onepage
     public function execute()
     {
         $session = $this->getOnepage()->getCheckout();
-        if (!$this->_objectManager->get('Magento\Checkout\Model\Session\SuccessValidator')->isValid($session)) {
+        if (!$this->_objectManager->get('Magento\Checkout\Model\Session\SuccessValidator')->isValid()) {
             $this->_redirect('checkout/cart');
             return;
         }
diff --git a/app/code/Magento/Checkout/Helper/Cart.php b/app/code/Magento/Checkout/Helper/Cart.php
index a96a2e2aa625b0d64a0954b1a5e6eb2841810d73..54705d9d4d1dadf3d3a0359e9c3a88d698d8eeab 100644
--- a/app/code/Magento/Checkout/Helper/Cart.php
+++ b/app/code/Magento/Checkout/Helper/Cart.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Checkout\Helper;
 
 /**
@@ -108,7 +111,7 @@ class Cart extends \Magento\Core\Helper\Url
     /**
      * Retrieve url for remove product from cart
      *
-     * @param   \Magento\Sales\Model\Quote\Item $item
+     * @param   \Magento\Quote\Model\Quote\Item $item
      * @return  string
      */
     public function getRemoveUrl($item)
@@ -123,7 +126,7 @@ class Cart extends \Magento\Core\Helper\Url
     /**
      * Get post parameters for delete from cart
      *
-     * @param \Magento\Sales\Model\Quote\Item $item
+     * @param \Magento\Quote\Model\Quote\Item $item
      * @return string
      */
     public function getDeletePostJson($item)
@@ -150,7 +153,7 @@ class Cart extends \Magento\Core\Helper\Url
     /**
      * Retrieve current quote instance
      *
-     * @return \Magento\Sales\Model\Quote
+     * @return \Magento\Quote\Model\Quote
      */
     public function getQuote()
     {
@@ -191,6 +194,7 @@ class Cart extends \Magento\Core\Helper\Url
      * Check quote for virtual products only
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsVirtualQuote()
     {
@@ -202,6 +206,7 @@ class Cart extends \Magento\Core\Helper\Url
      *
      * @param int|string|\Magento\Store\Model\Store $store
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getShouldRedirectToCart($store = null)
     {
diff --git a/app/code/Magento/Checkout/Helper/Data.php b/app/code/Magento/Checkout/Helper/Data.php
index 72ce3d45658a352e58d16a99c9fcaebdba65fdea..145bf276e9c7bd8a976022fd414a0634146d1980 100644
--- a/app/code/Magento/Checkout/Helper/Data.php
+++ b/app/code/Magento/Checkout/Helper/Data.php
@@ -6,13 +6,14 @@
 namespace Magento\Checkout\Helper;
 
 use Magento\Framework\Pricing\PriceCurrencyInterface;
-use Magento\Sales\Model\Quote\Item\AbstractItem;
+use Magento\Quote\Model\Quote\Item\AbstractItem;
 use Magento\Store\Model\Store;
 
 /**
  * Checkout default helper
  *
  * @author      Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Data extends \Magento\Framework\App\Helper\AbstractHelper
 {
@@ -100,7 +101,7 @@ class Data extends \Magento\Framework\App\Helper\AbstractHelper
     /**
      * Retrieve checkout quote model object
      *
-     * @return \Magento\Sales\Model\Quote
+     * @return \Magento\Quote\Model\Quote
      */
     public function getQuote()
     {
@@ -203,10 +204,12 @@ class Data extends \Magento\Framework\App\Helper\AbstractHelper
     /**
      * Send email id payment was failed
      *
-     * @param \Magento\Sales\Model\Quote $checkout
+     * @param \Magento\Quote\Model\Quote $checkout
      * @param string $message
      * @param string $checkoutType
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public function sendPaymentFailedEmail($checkout, $message, $checkoutType = 'onepage')
     {
@@ -267,7 +270,7 @@ class Data extends \Magento\Framework\App\Helper\AbstractHelper
 
         $items = '';
         foreach ($checkout->getAllVisibleItems() as $_item) {
-            /* @var $_item \Magento\Sales\Model\Quote\Item */
+            /* @var $_item \Magento\Quote\Model\Quote\Item */
             $items .=
                 $_item->getProduct()->getName() . '  x ' . $_item->getQty() . '  ' . $checkout->getStoreCurrencyCode()
                 . ' ' . $_item->getProduct()->getFinalPrice(
@@ -340,11 +343,11 @@ class Data extends \Magento\Framework\App\Helper\AbstractHelper
      * Check is allowed Guest Checkout
      * Use config settings and observer
      *
-     * @param \Magento\Sales\Model\Quote $quote
+     * @param \Magento\Quote\Model\Quote $quote
      * @param int|Store $store
      * @return bool
      */
-    public function isAllowedGuestCheckout(\Magento\Sales\Model\Quote $quote, $store = null)
+    public function isAllowedGuestCheckout(\Magento\Quote\Model\Quote $quote, $store = null)
     {
         if ($store === null) {
             $store = $quote->getStoreId();
diff --git a/app/code/Magento/Checkout/Model/Cart.php b/app/code/Magento/Checkout/Model/Cart.php
index a3f445769efb977034905851b7a2240d07535cfc..bc7bbb9af1298229279e1a9f45ccc58106fc2ec2 100644
--- a/app/code/Magento/Checkout/Model/Cart.php
+++ b/app/code/Magento/Checkout/Model/Cart.php
@@ -13,6 +13,7 @@ use Magento\Framework\Object;
 
 /**
  * Shopping cart model
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Cart extends Object implements CartInterface
 {
@@ -80,7 +81,7 @@ class Cart extends Object implements CartInterface
     protected $stockState;
 
     /**
-     * @var \Magento\Sales\Model\QuoteRepository
+     * @var \Magento\Quote\Model\QuoteRepository
      */
     protected $quoteRepository;
 
@@ -99,9 +100,10 @@ class Cart extends Object implements CartInterface
      * @param \Magento\Framework\Message\ManagerInterface $messageManager
      * @param \Magento\CatalogInventory\Api\StockRegistryInterface $stockRegistry
      * @param \Magento\CatalogInventory\Api\StockStateInterface $stockState
-     * @param \Magento\Sales\Model\QuoteRepository $quoteRepository
+     * @param \Magento\Quote\Model\QuoteRepository $quoteRepository
      * @param ProductRepositoryInterface $productRepository
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Event\ManagerInterface $eventManager,
@@ -113,7 +115,7 @@ class Cart extends Object implements CartInterface
         \Magento\Framework\Message\ManagerInterface $messageManager,
         \Magento\CatalogInventory\Api\StockRegistryInterface $stockRegistry,
         \Magento\CatalogInventory\Api\StockStateInterface $stockState,
-        \Magento\Sales\Model\QuoteRepository $quoteRepository,
+        \Magento\Quote\Model\QuoteRepository $quoteRepository,
         ProductRepositoryInterface $productRepository,
         array $data = []
     ) {
@@ -195,7 +197,7 @@ class Cart extends Object implements CartInterface
     /**
      * Get quote object associated with cart. By default it is current customer session quote
      *
-     * @return \Magento\Sales\Model\Quote
+     * @return \Magento\Quote\Model\Quote
      */
     public function getQuote()
     {
@@ -208,10 +210,10 @@ class Cart extends Object implements CartInterface
     /**
      * Set quote object associated with the cart
      *
-     * @param \Magento\Sales\Model\Quote $quote
+     * @param \Magento\Quote\Model\Quote $quote
      * @return $this
      */
-    public function setQuote(\Magento\Sales\Model\Quote $quote)
+    public function setQuote(\Magento\Quote\Model\Quote $quote)
     {
         $this->setData('quote', $quote);
         return $this;
@@ -330,6 +332,7 @@ class Cart extends Object implements CartInterface
      * @param \Magento\Framework\Object|int|array $requestInfo
      * @return $this
      * @throws \Magento\Framework\Model\Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function addProduct($productInfo, $requestInfo = null)
     {
@@ -473,6 +476,8 @@ class Cart extends Object implements CartInterface
      * @param  array $data
      * @return $this
      * @throws \Magento\Framework\Model\Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function updateItems($data)
     {
@@ -653,10 +658,11 @@ class Cart extends Object implements CartInterface
      * @param int $itemId
      * @param int|array|\Magento\Framework\Object $requestInfo
      * @param null|array|\Magento\Framework\Object $updatingParams
-     * @return \Magento\Sales\Model\Quote\Item|string
+     * @return \Magento\Quote\Model\Quote\Item|string
      * @throws \Magento\Framework\Model\Exception
      *
-     * @see \Magento\Sales\Model\Quote::updateItem()
+     * @see \Magento\Quote\Model\Quote::updateItem()
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function updateItem($itemId, $requestInfo = null, $updatingParams = null)
     {
diff --git a/app/code/Magento/Checkout/Model/Cart/CartInterface.php b/app/code/Magento/Checkout/Model/Cart/CartInterface.php
index 663f3c8c43ce691eb644ac3af22fa5a282a2e68c..da423892b42432b83fe26a9b06985ef7055ee526 100644
--- a/app/code/Magento/Checkout/Model/Cart/CartInterface.php
+++ b/app/code/Magento/Checkout/Model/Cart/CartInterface.php
@@ -5,7 +5,7 @@
  */
 namespace Magento\Checkout\Model\Cart;
 
-use Magento\Sales\Model\Quote;
+use Magento\Quote\Model\Quote;
 
 /**
  * Shopping cart interface
diff --git a/app/code/Magento/Checkout/Model/Observer.php b/app/code/Magento/Checkout/Model/Observer.php
index 8aa76f73ceba18e06754a5c32eef655e1fdfed0c..e0c7b61e2d639486d2f89f2be09e488508bf7954 100644
--- a/app/code/Magento/Checkout/Model/Observer.php
+++ b/app/code/Magento/Checkout/Model/Observer.php
@@ -62,7 +62,7 @@ class Observer
     public function salesQuoteSaveAfter($observer)
     {
         $quote = $observer->getEvent()->getQuote();
-        /* @var $quote \Magento\Sales\Model\Quote */
+        /* @var $quote \Magento\Quote\Model\Quote */
         if ($quote->getIsCheckoutCart()) {
             $this->_checkoutSession->getQuoteId($quote->getId());
         }
diff --git a/app/code/Magento/Checkout/Model/Resource/Cart.php b/app/code/Magento/Checkout/Model/Resource/Cart.php
index 8205b208c8e93828b82f955c6a18c767db10684d..0b5a02265ebc0e44f4bc6f0228be79a9dd810920 100644
--- a/app/code/Magento/Checkout/Model/Resource/Cart.php
+++ b/app/code/Magento/Checkout/Model/Resource/Cart.php
@@ -19,7 +19,7 @@ class Cart extends \Magento\Framework\Model\Resource\Db\AbstractDb
      */
     protected function _construct()
     {
-        $this->_init('sales_quote', 'entity_id');
+        $this->_init('quote', 'entity_id');
     }
 
     /**
@@ -32,7 +32,7 @@ class Cart extends \Magento\Framework\Model\Resource\Db\AbstractDb
     {
         $read = $this->_getReadAdapter();
         $select = $read->select()->from(
-            ['q' => $this->getTable('sales_quote')],
+            ['q' => $this->getTable('quote')],
             ['items_qty', 'items_count']
         )->where(
             'q.entity_id = :quote_id'
@@ -52,7 +52,7 @@ class Cart extends \Magento\Framework\Model\Resource\Db\AbstractDb
     {
         $read = $this->_getReadAdapter();
         $select = $read->select()->from(
-            ['qi' => $this->getTable('sales_quote_item')],
+            ['qi' => $this->getTable('quote_item')],
             ['id' => 'item_id', 'product_id', 'super_product_id', 'qty', 'created_at']
         )->where(
             'qi.quote_id = :quote_id'
@@ -72,7 +72,7 @@ class Cart extends \Magento\Framework\Model\Resource\Db\AbstractDb
     {
         $adapter = $this->_getReadAdapter();
         $exclusionSelect = $adapter->select()->from(
-            $this->getTable('sales_quote_item'),
+            $this->getTable('quote_item'),
             ['product_id']
         )->where(
             'quote_id = ?',
diff --git a/app/code/Magento/Checkout/Model/Session.php b/app/code/Magento/Checkout/Model/Session.php
index 356883d8d8cde40229122fb6d3455da29b797272..d647592240822cdf1f22f59fdbfee95e3108f905 100644
--- a/app/code/Magento/Checkout/Model/Session.php
+++ b/app/code/Magento/Checkout/Model/Session.php
@@ -6,8 +6,11 @@
 namespace Magento\Checkout\Model;
 
 use Magento\Customer\Api\Data\CustomerInterface;
-use Magento\Sales\Model\Quote;
+use Magento\Quote\Model\Quote;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class Session extends \Magento\Framework\Session\SessionManager
 {
     /**
@@ -54,7 +57,7 @@ class Session extends \Magento\Framework\Session\SessionManager
     protected $_customerSession;
 
     /**
-     * @var \Magento\Sales\Model\QuoteRepository
+     * @var \Magento\Quote\Model\QuoteRepository
      */
     protected $quoteRepository;
 
@@ -89,11 +92,12 @@ class Session extends \Magento\Framework\Session\SessionManager
      * @param \Magento\Framework\Stdlib\Cookie\CookieMetadataFactory $cookieMetadataFactory
      * @param \Magento\Sales\Model\OrderFactory $orderFactory
      * @param \Magento\Customer\Model\Session $customerSession
-     * @param \Magento\Sales\Model\QuoteRepository $quoteRepository
+     * @param \Magento\Quote\Model\QuoteRepository $quoteRepository
      * @param \Magento\Framework\HTTP\PhpEnvironment\RemoteAddress $remoteAddress
      * @param \Magento\Framework\Event\ManagerInterface $eventManager
      * @param \Magento\Store\Model\StoreManagerInterface $storeManager
      * @param \Magento\Customer\Api\CustomerRepositoryInterface $customerRepository
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\App\Request\Http $request,
@@ -106,7 +110,7 @@ class Session extends \Magento\Framework\Session\SessionManager
         \Magento\Framework\Stdlib\Cookie\CookieMetadataFactory $cookieMetadataFactory,
         \Magento\Sales\Model\OrderFactory $orderFactory,
         \Magento\Customer\Model\Session $customerSession,
-        \Magento\Sales\Model\QuoteRepository $quoteRepository,
+        \Magento\Quote\Model\QuoteRepository $quoteRepository,
         \Magento\Framework\HTTP\PhpEnvironment\RemoteAddress $remoteAddress,
         \Magento\Framework\Event\ManagerInterface $eventManager,
         \Magento\Store\Model\StoreManagerInterface $storeManager,
@@ -170,6 +174,8 @@ class Session extends \Magento\Framework\Session\SessionManager
      * Get checkout quote instance by current session
      *
      * @return Quote
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function getQuote()
     {
diff --git a/app/code/Magento/Checkout/Model/Session/SuccessValidator.php b/app/code/Magento/Checkout/Model/Session/SuccessValidator.php
index 3f820234dfc0b9f804505bc471df8ac3751cd28b..f1b57d4ba0fcfa26fca820e2d180317df56ffc69 100644
--- a/app/code/Magento/Checkout/Model/Session/SuccessValidator.php
+++ b/app/code/Magento/Checkout/Model/Session/SuccessValidator.php
@@ -11,18 +11,29 @@ namespace Magento\Checkout\Model\Session;
 class SuccessValidator
 {
     /**
-     * Is valid session?
-     *
+     * @var \Magento\Checkout\Model\Session
+     */
+    protected $checkoutSession;
+
+    /**
      * @param \Magento\Checkout\Model\Session $checkoutSession
+     */
+    public function __construct(
+        \Magento\Checkout\Model\Session $checkoutSession
+    ) {
+        $this->checkoutSession = $checkoutSession;
+    }
+
+    /**
      * @return bool
      */
-    public function isValid(\Magento\Checkout\Model\Session $checkoutSession)
+    public function isValid()
     {
-        if (!$checkoutSession->getLastSuccessQuoteId()) {
+        if (!$this->checkoutSession->getLastSuccessQuoteId()) {
             return false;
         }
 
-        if (!$checkoutSession->getLastQuoteId() || !$checkoutSession->getLastOrderId()) {
+        if (!$this->checkoutSession->getLastQuoteId() || !$this->checkoutSession->getLastOrderId()) {
             return false;
         }
         return true;
diff --git a/app/code/Magento/Checkout/Model/Type/Onepage.php b/app/code/Magento/Checkout/Model/Type/Onepage.php
index 6e9925c2c51925fe6e48d2c792d88daed855413a..c5ee84a6a2e75ab8162f3869c23a92250002b9e6 100644
--- a/app/code/Magento/Checkout/Model/Type/Onepage.php
+++ b/app/code/Magento/Checkout/Model/Type/Onepage.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * One page checkout processing model
  */
@@ -20,6 +22,11 @@ use Magento\Customer\Model\Metadata\Form;
 use Magento\Framework\Exception\NoSuchEntityException;
 use Magento\Sales\Model\Order\Email\Sender\OrderSender;
 
+/**
+ * @SuppressWarnings(PHPMD.TooManyFields)
+ * @SuppressWarnings(PHPMD.ExcessiveClassComplexity)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class Onepage
 {
     /**
@@ -42,7 +49,7 @@ class Onepage
     protected $_checkoutSession;
 
     /**
-     * @var \Magento\Sales\Model\Quote
+     * @var \Magento\Quote\Model\Quote
      */
     protected $_quote = null;
 
@@ -95,11 +102,6 @@ class Onepage
      */
     protected $_customerFactory;
 
-    /**
-     * @var \Magento\Sales\Model\Service\QuoteFactory
-     */
-    protected $_serviceQuoteFactory;
-
     /**
      * @var \Magento\Sales\Model\OrderFactory
      */
@@ -151,7 +153,7 @@ class Onepage
     protected $orderSender;
 
     /**
-     * @var \Magento\Sales\Model\QuoteRepository
+     * @var \Magento\Quote\Model\QuoteRepository
      */
     protected $quoteRepository;
 
@@ -165,6 +167,11 @@ class Onepage
      */
     protected $extensibleDataObjectConverter;
 
+    /**
+     * @var \Magento\Quote\Model\QuoteManagement
+     */
+    protected $quoteManagement;
+
     /**
      * @param \Magento\Framework\Event\ManagerInterface $eventManager
      * @param \Magento\Checkout\Helper\Data $helper
@@ -177,7 +184,6 @@ class Onepage
      * @param \Magento\Customer\Model\AddressFactory $customrAddrFactory
      * @param \Magento\Customer\Model\FormFactory $customerFormFactory
      * @param \Magento\Customer\Model\CustomerFactory $customerFactory
-     * @param \Magento\Sales\Model\Service\QuoteFactory $serviceQuoteFactory
      * @param \Magento\Sales\Model\OrderFactory $orderFactory
      * @param \Magento\Framework\Object\Copy $objectCopyService
      * @param \Magento\Framework\Message\ManagerInterface $messageManager
@@ -190,8 +196,11 @@ class Onepage
      * @param AccountManagementInterface $accountManagement
      * @param OrderSender $orderSender
      * @param CustomerRepositoryInterface $customerRepository
-     * @param \Magento\Sales\Model\QuoteRepository $quoteRepository
+     * @param \Magento\Quote\Model\QuoteRepository $quoteRepository
      * @param \Magento\Framework\Api\ExtensibleDataObjectConverter $extensibleDataObjectConverter
+     * @param \Magento\Quote\Model\QuoteManagement $quoteManagement
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
+     *
      */
     public function __construct(
         \Magento\Framework\Event\ManagerInterface $eventManager,
@@ -205,7 +214,6 @@ class Onepage
         \Magento\Customer\Model\AddressFactory $customrAddrFactory,
         \Magento\Customer\Model\FormFactory $customerFormFactory,
         \Magento\Customer\Model\CustomerFactory $customerFactory,
-        \Magento\Sales\Model\Service\QuoteFactory $serviceQuoteFactory,
         \Magento\Sales\Model\OrderFactory $orderFactory,
         \Magento\Framework\Object\Copy $objectCopyService,
         \Magento\Framework\Message\ManagerInterface $messageManager,
@@ -218,8 +226,9 @@ class Onepage
         AccountManagementInterface $accountManagement,
         OrderSender $orderSender,
         CustomerRepositoryInterface $customerRepository,
-        \Magento\Sales\Model\QuoteRepository $quoteRepository,
-        \Magento\Framework\Api\ExtensibleDataObjectConverter $extensibleDataObjectConverter
+        \Magento\Quote\Model\QuoteRepository $quoteRepository,
+        \Magento\Framework\Api\ExtensibleDataObjectConverter $extensibleDataObjectConverter,
+        \Magento\Quote\Model\QuoteManagement $quoteManagement
     ) {
         $this->_eventManager = $eventManager;
         $this->_customerUrl = $customerUrl;
@@ -232,7 +241,6 @@ class Onepage
         $this->_customrAddrFactory = $customrAddrFactory;
         $this->_customerFormFactory = $customerFormFactory;
         $this->_customerFactory = $customerFactory;
-        $this->_serviceQuoteFactory = $serviceQuoteFactory;
         $this->_orderFactory = $orderFactory;
         $this->_objectCopyService = $objectCopyService;
         $this->messageManager = $messageManager;
@@ -247,6 +255,7 @@ class Onepage
         $this->customerRepository = $customerRepository;
         $this->quoteRepository = $quoteRepository;
         $this->extensibleDataObjectConverter = $extensibleDataObjectConverter;
+        $this->quoteManagement = $quoteManagement;
     }
 
     /**
@@ -262,7 +271,7 @@ class Onepage
     /**
      * Quote object getter
      *
-     * @return \Magento\Sales\Model\Quote
+     * @return \Magento\Quote\Model\Quote
      */
     public function getQuote()
     {
@@ -275,10 +284,10 @@ class Onepage
     /**
      * Declare checkout quote instance
      *
-     * @param \Magento\Sales\Model\Quote $quote
+     * @param \Magento\Quote\Model\Quote $quote
      * @return $this
      */
-    public function setQuote(\Magento\Sales\Model\Quote $quote)
+    public function setQuote(\Magento\Quote\Model\Quote $quote)
     {
         $this->_quote = $quote;
         return $this;
@@ -298,6 +307,7 @@ class Onepage
      * Initialize quote state to be valid for one page checkout
      *
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function initCheckout()
     {
@@ -372,6 +382,9 @@ class Onepage
      * @param   array $data
      * @param   int $customerAddressId
      * @return  array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public function saveBilling($data, $customerAddressId)
     {
@@ -623,6 +636,8 @@ class Onepage
      * @param   array $data
      * @param   int $customerAddressId
      * @return  array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function saveShipping($data, $customerAddressId)
     {
@@ -843,6 +858,7 @@ class Onepage
      * Prepare quote for customer order submit
      *
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _prepareCustomerQuote()
     {
@@ -933,11 +949,7 @@ class Onepage
                 $this->_prepareCustomerQuote();
                 break;
         }
-
-        /** @var \Magento\Sales\Model\Service\Quote $quoteService */
-        $quoteService = $this->_serviceQuoteFactory->create(['quote' => $this->getQuote()]);
-        $quoteService->submitAllWithDataObject();
-
+        $order = $this->quoteManagement->submit($this->getQuote());
         if ($isNewCustomer) {
             try {
                 $this->_involveNewCustomer();
@@ -945,14 +957,14 @@ class Onepage
                 $this->_logger->critical($e);
             }
         }
-
         $this->_checkoutSession->setLastQuoteId(
             $this->getQuote()->getId()
         )->setLastSuccessQuoteId(
             $this->getQuote()->getId()
+        )->setLastOrderId(
+            $order->getIncrementId()
         )->clearHelperData();
 
-        $order = $quoteService->getOrder();
         if ($order) {
             $this->_eventManager->dispatch(
                 'checkout_type_onepage_save_order_after',
diff --git a/app/code/Magento/Checkout/Service/V1/Address/Billing/ReadService.php b/app/code/Magento/Checkout/Service/V1/Address/Billing/ReadService.php
index 0bcac23f8c8ead07ed1783969a70ccdc3a5dcec8..8b6a70d41742f8d668d3460be9ab046d9de99d0c 100644
--- a/app/code/Magento/Checkout/Service/V1/Address/Billing/ReadService.php
+++ b/app/code/Magento/Checkout/Service/V1/Address/Billing/ReadService.php
@@ -13,7 +13,7 @@ class ReadService implements ReadServiceInterface
     /**
      * Quote repository.
      *
-     * @var \Magento\Sales\Model\QuoteRepository
+     * @var \Magento\Quote\Model\QuoteRepository
      */
     protected $quoteRepository;
 
@@ -27,11 +27,11 @@ class ReadService implements ReadServiceInterface
     /**
      * Constructs a quote billing address object.
      *
-     * @param \Magento\Sales\Model\QuoteRepository $quoteRepository Quote repository.
+     * @param \Magento\Quote\Model\QuoteRepository $quoteRepository Quote repository.
      * @param AddressConverter $addressConverter Address converter.
      */
     public function __construct(
-        \Magento\Sales\Model\QuoteRepository $quoteRepository,
+        \Magento\Quote\Model\QuoteRepository $quoteRepository,
         AddressConverter $addressConverter
     ) {
         $this->quoteRepository = $quoteRepository;
@@ -50,7 +50,7 @@ class ReadService implements ReadServiceInterface
         /**
          * Address.
          *
-         * @var  \Magento\Sales\Model\Quote\Address $address
+         * @var  \Magento\Quote\Model\Quote\Address $address
          */
         $address = $this->quoteRepository->getActive($cartId)->getBillingAddress();
         return $this->addressConverter->convertModelToDataObject($address);
diff --git a/app/code/Magento/Checkout/Service/V1/Address/Billing/WriteService.php b/app/code/Magento/Checkout/Service/V1/Address/Billing/WriteService.php
index 2d8e77b23f80a8c5bbb7a8f2ef474c4bd044c798..52ae8d39ebae405cc45395b1891e2ae764e95ff5 100644
--- a/app/code/Magento/Checkout/Service/V1/Address/Billing/WriteService.php
+++ b/app/code/Magento/Checkout/Service/V1/Address/Billing/WriteService.php
@@ -7,8 +7,8 @@ namespace Magento\Checkout\Service\V1\Address\Billing;
 
 use Magento\Checkout\Service\V1\Address\Converter;
 use Magento\Checkout\Service\V1\Address\Validator;
-use Magento\Sales\Model\Quote\AddressFactory;
-use Magento\Sales\Model\QuoteRepository;
+use Magento\Quote\Model\Quote\AddressFactory;
+use Magento\Quote\Model\QuoteRepository;
 use Magento\Framework\Exception\InputException;
 use Psr\Log\LoggerInterface as Logger;
 
@@ -87,13 +87,13 @@ class WriteService implements WriteServiceInterface
         /**
          * Quote.
          *
-         * @var \Magento\Sales\Model\Quote $quote
+         * @var \Magento\Quote\Model\Quote $quote
          */
         $quote = $this->quoteRepository->getActive($cartId);
         /**
          * Address.
          *
-         * @var \Magento\Sales\Model\Quote\Address $address
+         * @var \Magento\Quote\Model\Quote\Address $address
          */
         $address = $this->quoteAddressFactory->create();
         $this->addressValidator->validate($addressData);
diff --git a/app/code/Magento/Checkout/Service/V1/Address/Converter.php b/app/code/Magento/Checkout/Service/V1/Address/Converter.php
index c25a63cc7c081b2f0024006ddcb8580a4139d1fb..344c2e9bba3eeba263586d3aba4f4ece8faa504b 100644
--- a/app/code/Magento/Checkout/Service/V1/Address/Converter.php
+++ b/app/code/Magento/Checkout/Service/V1/Address/Converter.php
@@ -44,10 +44,10 @@ class Converter
     /**
      * Converts a quote address model to an address data object.
      *
-     * @param \Magento\Sales\Model\Quote\Address $address The quote address model.
+     * @param \Magento\Quote\Model\Quote\Address $address The quote address model.
      * @return \Magento\Checkout\Service\V1\Data\Cart\Address Address data object.
      */
-    public function convertModelToDataObject(\Magento\Sales\Model\Quote\Address $address)
+    public function convertModelToDataObject(\Magento\Quote\Model\Quote\Address $address)
     {
         $data = [
             Address::KEY_COUNTRY_ID => $address->getCountryId(),
@@ -87,8 +87,8 @@ class Converter
      * Converts an address data object to a quote address model.
      *
      * @param \Magento\Checkout\Service\V1\Data\Cart\Address $dataObject The address data object.
-     * @param \Magento\Sales\Model\Quote\Address $address The address.
-     * @return \Magento\Sales\Model\Quote\Address Quote address model.
+     * @param \Magento\Quote\Model\Quote\Address $address The address.
+     * @return \Magento\Quote\Model\Quote\Address Quote address model.
      */
     public function convertDataObjectToModel($dataObject, $address)
     {
diff --git a/app/code/Magento/Checkout/Service/V1/Address/Shipping/ReadService.php b/app/code/Magento/Checkout/Service/V1/Address/Shipping/ReadService.php
index e26d820eb4690aaa6be43a6bd271db55739f45aa..600ca9796f1f59d9f4285f8b6d4f04c453df1a2d 100644
--- a/app/code/Magento/Checkout/Service/V1/Address/Shipping/ReadService.php
+++ b/app/code/Magento/Checkout/Service/V1/Address/Shipping/ReadService.php
@@ -14,7 +14,7 @@ class ReadService implements ReadServiceInterface
     /**
      * Quote repository.
      *
-     * @var \Magento\Sales\Model\QuoteRepository
+     * @var \Magento\Quote\Model\QuoteRepository
      */
     protected $quoteRepository;
 
@@ -28,11 +28,11 @@ class ReadService implements ReadServiceInterface
     /**
      * Constructs a quote billing address read service object.
      *
-     * @param \Magento\Sales\Model\QuoteRepository $quoteRepository Quote repository.
+     * @param \Magento\Quote\Model\QuoteRepository $quoteRepository Quote repository.
      * @param AddressConverter $addressConverter Address converter.
      */
     public function __construct(
-        \Magento\Sales\Model\QuoteRepository $quoteRepository,
+        \Magento\Quote\Model\QuoteRepository $quoteRepository,
         AddressConverter $addressConverter
     ) {
         $this->quoteRepository = $quoteRepository;
@@ -51,7 +51,7 @@ class ReadService implements ReadServiceInterface
         /**
          * Quote.
          *
-         * @var \Magento\Sales\Model\Quote $quote
+         * @var \Magento\Quote\Model\Quote $quote
          */
         $quote = $this->quoteRepository->getActive($cartId);
         if ($quote->isVirtual()) {
@@ -63,7 +63,7 @@ class ReadService implements ReadServiceInterface
         /**
          * Address.
          *
-         * @var \Magento\Sales\Model\Quote\Address $address
+         * @var \Magento\Quote\Model\Quote\Address $address
          */
         $address = $quote->getShippingAddress();
         return $this->addressConverter->convertModelToDataObject($address);
diff --git a/app/code/Magento/Checkout/Service/V1/Address/Shipping/WriteService.php b/app/code/Magento/Checkout/Service/V1/Address/Shipping/WriteService.php
index 95c00344a84692a51e067c5ec50d5f3c3fc5ff3d..5382b78b4724f9aab7ff97effc148b2c2146d5bc 100644
--- a/app/code/Magento/Checkout/Service/V1/Address/Shipping/WriteService.php
+++ b/app/code/Magento/Checkout/Service/V1/Address/Shipping/WriteService.php
@@ -15,14 +15,14 @@ class WriteService implements WriteServiceInterface
     /**
      * Quote repository.
      *
-     * @var \Magento\Sales\Model\QuoteRepository
+     * @var \Magento\Quote\Model\QuoteRepository
      */
     protected $quoteRepository;
 
     /**
      * Quote address factory.
      *
-     * @var \Magento\Sales\Model\Quote\AddressFactory
+     * @var \Magento\Quote\Model\Quote\AddressFactory
      */
     protected $quoteAddressFactory;
 
@@ -50,17 +50,17 @@ class WriteService implements WriteServiceInterface
     /**
      * Constructs a quote shipping address write service object.
      *
-     * @param \Magento\Sales\Model\QuoteRepository $quoteRepository Quote repository.
+     * @param \Magento\Quote\Model\QuoteRepository $quoteRepository Quote repository.
      * @param \Magento\Checkout\Service\V1\Address\Converter $addressConverter Address converter.
      * @param \Magento\Checkout\Service\V1\Address\Validator $addressValidator Address validator.
-     * @param \Magento\Sales\Model\Quote\AddressFactory $quoteAddressFactory Quote address factory.
+     * @param \Magento\Quote\Model\Quote\AddressFactory $quoteAddressFactory Quote address factory.
      * @param Logger $logger Logger.
      */
     public function __construct(
-        \Magento\Sales\Model\QuoteRepository $quoteRepository,
+        \Magento\Quote\Model\QuoteRepository $quoteRepository,
         \Magento\Checkout\Service\V1\Address\Converter $addressConverter,
         \Magento\Checkout\Service\V1\Address\Validator $addressValidator,
-        \Magento\Sales\Model\Quote\AddressFactory $quoteAddressFactory,
+        \Magento\Quote\Model\Quote\AddressFactory $quoteAddressFactory,
         Logger $logger
     ) {
         $this->quoteRepository = $quoteRepository;
@@ -81,14 +81,14 @@ class WriteService implements WriteServiceInterface
      */
     public function setAddress($cartId, $addressData)
     {
-        /** @var \Magento\Sales\Model\Quote $quote */
+        /** @var \Magento\Quote\Model\Quote $quote */
         $quote = $this->quoteRepository->getActive($cartId);
         if ($quote->isVirtual()) {
             throw new NoSuchEntityException(
                 'Cart contains virtual product(s) only. Shipping address is not applicable'
             );
         }
-        /** @var \Magento\Sales\Model\Quote\Address $address */
+        /** @var \Magento\Quote\Model\Quote\Address $address */
         $address = $this->quoteAddressFactory->create();
         $this->addressValidator->validate($addressData);
         if ($addressData->getId()) {
diff --git a/app/code/Magento/Checkout/Service/V1/Address/Validator.php b/app/code/Magento/Checkout/Service/V1/Address/Validator.php
index 05d4663e11f6b3e3752d715e1a808b2b74111079..1ca1d0677f2802531ae2da9afcf6ee2c48b29155 100644
--- a/app/code/Magento/Checkout/Service/V1/Address/Validator.php
+++ b/app/code/Magento/Checkout/Service/V1/Address/Validator.php
@@ -11,7 +11,7 @@ class Validator
     /**
      * Address factory.
      *
-     * @var \Magento\Sales\Model\Quote\AddressFactory
+     * @var \Magento\Quote\Model\Quote\AddressFactory
      */
     protected $quoteAddressFactory;
 
@@ -25,11 +25,11 @@ class Validator
     /**
      * Constructs a quote shipping address validator service object.
      *
-     * @param \Magento\Sales\Model\Quote\AddressFactory $quoteAddressFactory Address factory.
+     * @param \Magento\Quote\Model\Quote\AddressFactory $quoteAddressFactory Address factory.
      * @param \Magento\Customer\Model\CustomerFactory $customerFactory Customer factory.
      */
     public function __construct(
-        \Magento\Sales\Model\Quote\AddressFactory $quoteAddressFactory,
+        \Magento\Quote\Model\Quote\AddressFactory $quoteAddressFactory,
         \Magento\Customer\Model\CustomerFactory $customerFactory
     ) {
         $this->quoteAddressFactory = $quoteAddressFactory;
diff --git a/app/code/Magento/Checkout/Service/V1/Cart/ReadService.php b/app/code/Magento/Checkout/Service/V1/Cart/ReadService.php
index 177637fb1c31281497939f88f5cdcf51050399a8..e9f453988d0dbf5ec52c3e506803a8860e6c634c 100644
--- a/app/code/Magento/Checkout/Service/V1/Cart/ReadService.php
+++ b/app/code/Magento/Checkout/Service/V1/Cart/ReadService.php
@@ -9,12 +9,13 @@ use Magento\Checkout\Service\V1\Data;
 use Magento\Framework\Api\Search\FilterGroup;
 use Magento\Framework\Api\SearchCriteria;
 use Magento\Framework\Exception\InputException;
-use Magento\Sales\Model\Quote;
-use Magento\Sales\Model\QuoteRepository;
-use Magento\Sales\Model\Resource\Quote\Collection as QuoteCollection;
+use Magento\Quote\Model\Quote;
+use Magento\Quote\Model\QuoteRepository;
+use Magento\Quote\Model\Resource\Quote\Collection as QuoteCollection;
 
 /**
  * Cart read service object.
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class ReadService implements ReadServiceInterface
 {
diff --git a/app/code/Magento/Checkout/Service/V1/Cart/TotalsService.php b/app/code/Magento/Checkout/Service/V1/Cart/TotalsService.php
index e1003b33f013eb715215c5b645b440cd95030a49..3baa1a8ebc6e802326116787c69e87ef846fbabb 100644
--- a/app/code/Magento/Checkout/Service/V1/Cart/TotalsService.php
+++ b/app/code/Magento/Checkout/Service/V1/Cart/TotalsService.php
@@ -7,8 +7,8 @@ namespace Magento\Checkout\Service\V1\Cart;
 
 use Magento\Checkout\Service\V1\Data\Cart\Totals;
 use Magento\Checkout\Service\V1\Data\Cart;
-use Magento\Sales\Model\Quote;
-use Magento\Sales\Model\QuoteRepository;
+use Magento\Quote\Model\Quote;
+use Magento\Quote\Model\QuoteRepository;
 
 /**
  * Cart totals service object.
@@ -74,7 +74,7 @@ class TotalsService implements TotalsServiceInterface
         /**
          * Quote.
          *
-         * @var \Magento\Sales\Model\Quote $quote
+         * @var \Magento\Quote\Model\Quote $quote
          */
         $quote = $this->quoteRepository->getActive($cartId);
 
diff --git a/app/code/Magento/Checkout/Service/V1/Cart/WriteService.php b/app/code/Magento/Checkout/Service/V1/Cart/WriteService.php
index eddc9687a0b58a07688af503ecd5532a9a0c8398..61066236f16fb81a1b7c0254bf3df495e05df53a 100644
--- a/app/code/Magento/Checkout/Service/V1/Cart/WriteService.php
+++ b/app/code/Magento/Checkout/Service/V1/Cart/WriteService.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Checkout\Service\V1\Cart;
 
 use Magento\Authorization\Model\UserContextInterface;
@@ -18,7 +20,7 @@ class WriteService implements WriteServiceInterface
     /**
      * Quote repository.
      *
-     * @var \Magento\Sales\Model\QuoteRepository
+     * @var \Magento\Quote\Model\QuoteRepository
      */
     protected $quoteRepository;
 
@@ -46,7 +48,7 @@ class WriteService implements WriteServiceInterface
     /**
      * Quote factory.
      *
-     * @var \Magento\Sales\Model\Service\QuoteFactory
+     * @var \Magento\Quote\Model\QuoteManagement
      */
     protected $quoteServiceFactory;
 
@@ -58,19 +60,19 @@ class WriteService implements WriteServiceInterface
     /**
      * Constructs a cart write service object.
      *
-     * @param \Magento\Sales\Model\QuoteRepository $quoteRepository Quote repository.
+     * @param \Magento\Quote\Model\QuoteRepository $quoteRepository Quote repository.
      * @param \Magento\Store\Model\StoreManagerInterface $storeManager Store manager.
      * @param \Magento\Customer\Api\CustomerRepositoryInterface $customerRepository Customer registry.
      * @param UserContextInterface $userContext User context.
-     * @param \Magento\Sales\Model\Service\QuoteFactory $quoteServiceFactory Quote service factory.
+     * @param \Magento\Quote\Model\QuoteManagement $quoteServiceFactory Quote service factory.
      * @param \Magento\Customer\Model\CustomerFactory $customerModelFactory
      */
     public function __construct(
-        \Magento\Sales\Model\QuoteRepository $quoteRepository,
+        \Magento\Quote\Model\QuoteRepository $quoteRepository,
         \Magento\Store\Model\StoreManagerInterface $storeManager,
         \Magento\Customer\Api\CustomerRepositoryInterface $customerRepository,
         UserContextInterface $userContext,
-        \Magento\Sales\Model\Service\QuoteFactory $quoteServiceFactory,
+        \Magento\Quote\Model\QuoteManagement $quoteServiceFactory,
         \Magento\Customer\Model\CustomerFactory $customerModelFactory
     ) {
         $this->quoteRepository = $quoteRepository;
@@ -104,12 +106,12 @@ class WriteService implements WriteServiceInterface
     /**
      * Creates an anonymous cart.
      *
-     * @return \Magento\Sales\Model\Quote Cart object.
+     * @return \Magento\Quote\Model\Quote Cart object.
      */
     protected function createAnonymousCart()
     {
         $storeId = $this->storeManager->getStore()->getId();
-        /** @var \Magento\Sales\Model\Quote $quote */
+        /** @var \Magento\Quote\Model\Quote $quote */
         $quote = $this->quoteRepository->create();
         $quote->setStoreId($storeId);
         return $quote;
@@ -118,7 +120,7 @@ class WriteService implements WriteServiceInterface
     /**
      * Creates a cart for the currently logged-in customer.
      *
-     * @return \Magento\Sales\Model\Quote Cart object.
+     * @return \Magento\Quote\Model\Quote Cart object.
      * @throws CouldNotSaveException The cart could not be created.
      */
     protected function createCustomerCart()
@@ -132,7 +134,7 @@ class WriteService implements WriteServiceInterface
         } catch (\Magento\Framework\Exception\NoSuchEntityException $e) {
         }
 
-        /** @var \Magento\Sales\Model\Quote $quote */
+        /** @var \Magento\Quote\Model\Quote $quote */
         $quote = $this->quoteRepository->create();
         $quote->setStoreId($storeId);
         $quote->setCustomer($customer);
@@ -182,9 +184,7 @@ class WriteService implements WriteServiceInterface
     public function order($cartId)
     {
         $quote = $this->quoteRepository->getActive($cartId);
-        /** @var \Magento\Sales\Model\Service\Quote $quoteService */
-        $quoteService = $this->quoteServiceFactory->create(['quote' => $quote]);
-        $order = $quoteService->submitOrderWithDataObject();
+        $order = $this->quoteServiceFactory->submit($quote);
         return $order->getId();
     }
 }
diff --git a/app/code/Magento/Checkout/Service/V1/Coupon/ReadService.php b/app/code/Magento/Checkout/Service/V1/Coupon/ReadService.php
index fd5c4384e672ba5a617542f309a7828c401eb32b..ecb614bbf56b1116e68812d13efbd8d158281903 100644
--- a/app/code/Magento/Checkout/Service/V1/Coupon/ReadService.php
+++ b/app/code/Magento/Checkout/Service/V1/Coupon/ReadService.php
@@ -16,7 +16,7 @@ class ReadService implements ReadServiceInterface
     /**
      * Quote repository.
      *
-     * @var \Magento\Sales\Model\QuoteRepository
+     * @var \Magento\Quote\Model\QuoteRepository
      */
     protected $quoteRepository;
 
@@ -30,11 +30,11 @@ class ReadService implements ReadServiceInterface
     /**
      * Constructs a coupon read service object.
      *
-     * @param \Magento\Sales\Model\QuoteRepository $quoteRepository Quote repository.
+     * @param \Magento\Quote\Model\QuoteRepository $quoteRepository Quote repository.
      * @param CouponBuilder $couponBuilder Coupon builder.
      */
     public function __construct(
-        \Magento\Sales\Model\QuoteRepository $quoteRepository,
+        \Magento\Quote\Model\QuoteRepository $quoteRepository,
         CouponBuilder $couponBuilder
     ) {
         $this->quoteRepository = $quoteRepository;
@@ -50,7 +50,7 @@ class ReadService implements ReadServiceInterface
      */
     public function get($cartId)
     {
-        /** @var  \Magento\Sales\Model\Quote $quote */
+        /** @var  \Magento\Quote\Model\Quote $quote */
         $quote = $this->quoteRepository->getActive($cartId);
         $data = [Coupon::COUPON_CODE => $quote->getCouponCode()];
         $output = $this->couponBuilder->populateWithArray($data)->create();
diff --git a/app/code/Magento/Checkout/Service/V1/Coupon/WriteService.php b/app/code/Magento/Checkout/Service/V1/Coupon/WriteService.php
index 634b3fb482abb99be465c1b508d4212695265255..7ce08e5e3f6cee785ffafb7a4291b17c417245b7 100644
--- a/app/code/Magento/Checkout/Service/V1/Coupon/WriteService.php
+++ b/app/code/Magento/Checkout/Service/V1/Coupon/WriteService.php
@@ -18,7 +18,7 @@ class WriteService implements WriteServiceInterface
     /**
      * Quote repository.
      *
-     * @var \Magento\Sales\Model\QuoteRepository
+     * @var \Magento\Quote\Model\QuoteRepository
      */
     protected $quoteRepository;
 
@@ -32,11 +32,11 @@ class WriteService implements WriteServiceInterface
     /**
      * Constructs a coupon write service object.
      *
-     * @param \Magento\Sales\Model\QuoteRepository $quoteRepository Quote repository.
+     * @param \Magento\Quote\Model\QuoteRepository $quoteRepository Quote repository.
      * @param CouponBuilder $couponBuilder Coupon builder.
      */
     public function __construct(
-        \Magento\Sales\Model\QuoteRepository $quoteRepository,
+        \Magento\Quote\Model\QuoteRepository $quoteRepository,
         CouponBuilder $couponBuilder
     ) {
         $this->quoteRepository = $quoteRepository;
@@ -54,7 +54,7 @@ class WriteService implements WriteServiceInterface
      */
     public function set($cartId, \Magento\Checkout\Service\V1\Data\Cart\Coupon $couponCodeData)
     {
-        /** @var  \Magento\Sales\Model\Quote $quote */
+        /** @var  \Magento\Quote\Model\Quote $quote */
         $quote = $this->quoteRepository->getActive($cartId);
         if (!$quote->getItemsCount()) {
             throw new NoSuchEntityException("Cart $cartId doesn't contain products");
@@ -84,7 +84,7 @@ class WriteService implements WriteServiceInterface
      */
     public function delete($cartId)
     {
-        /** @var  \Magento\Sales\Model\Quote $quote */
+        /** @var  \Magento\Quote\Model\Quote $quote */
         $quote = $this->quoteRepository->getActive($cartId);
         if (!$quote->getItemsCount()) {
             throw new NoSuchEntityException("Cart $cartId doesn't contain products");
diff --git a/app/code/Magento/Checkout/Service/V1/Data/Cart.php b/app/code/Magento/Checkout/Service/V1/Data/Cart.php
index d40daaec534cde2ebf0789ed76d34dce81af8580..d5cc15d0f206e121bdbe2ca789264c21f4f6107b 100644
--- a/app/code/Magento/Checkout/Service/V1/Data/Cart.php
+++ b/app/code/Magento/Checkout/Service/V1/Data/Cart.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Checkout\Service\V1\Data;
 
 /**
diff --git a/app/code/Magento/Checkout/Service/V1/Data/Cart/Customer.php b/app/code/Magento/Checkout/Service/V1/Data/Cart/Customer.php
index 30275de8afa9a10fd1ccf198e98e06b3bbf22aab..0cb9d61bf18b97b914b01f6ec247752a87143ab7 100644
--- a/app/code/Magento/Checkout/Service/V1/Data/Cart/Customer.php
+++ b/app/code/Magento/Checkout/Service/V1/Data/Cart/Customer.php
@@ -172,6 +172,7 @@ class Customer extends \Magento\Framework\Api\AbstractExtensibleObject
      * Is customer a guest?
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsGuest()
     {
diff --git a/app/code/Magento/Checkout/Service/V1/Data/Cart/CustomerMapper.php b/app/code/Magento/Checkout/Service/V1/Data/Cart/CustomerMapper.php
index ae54598b6f37cf7b4b1c3ce1afc92bf1e8dbc2f2..9a40d51b2d52cd9be23164a6780cb1f10abbbae2 100644
--- a/app/code/Magento/Checkout/Service/V1/Data/Cart/CustomerMapper.php
+++ b/app/code/Magento/Checkout/Service/V1/Data/Cart/CustomerMapper.php
@@ -5,7 +5,7 @@
  */
 namespace Magento\Checkout\Service\V1\Data\Cart;
 
-use Magento\Sales\Model\Quote;
+use Magento\Quote\Model\Quote;
 
 /**
  * Cart mapper
diff --git a/app/code/Magento/Checkout/Service/V1/Data/Cart/PaymentMethod/Builder.php b/app/code/Magento/Checkout/Service/V1/Data/Cart/PaymentMethod/Builder.php
index f6f64a1cd5b5ab7b21c23da420ad1b4124a2f05c..4c412e7a10d4a60a78af0af7e8eb49ffdc972ddc 100644
--- a/app/code/Magento/Checkout/Service/V1/Data/Cart/PaymentMethod/Builder.php
+++ b/app/code/Magento/Checkout/Service/V1/Data/Cart/PaymentMethod/Builder.php
@@ -8,14 +8,14 @@ namespace Magento\Checkout\Service\V1\Data\Cart\PaymentMethod;
 
 use Magento\Checkout\Service\V1\Data\Cart\PaymentMethod as QuotePaymentMethod;
 use Magento\Framework\Exception\LocalizedException;
-use Magento\Sales\Model\Quote;
+use Magento\Quote\Model\Quote;
 
 class Builder
 {
     /**
      * @param QuotePaymentMethod $object
      * @param Quote $quote
-     * @return \Magento\Sales\Model\Quote\Payment
+     * @return \Magento\Quote\Model\Quote\Payment
      * @throws \Magento\Framework\Exception\LocalizedException
      */
     public function build(QuotePaymentMethod $object, Quote $quote)
diff --git a/app/code/Magento/Checkout/Service/V1/Data/Cart/PaymentMethod/Converter.php b/app/code/Magento/Checkout/Service/V1/Data/Cart/PaymentMethod/Converter.php
index dc9753f6ddbf88b433184acbb7a27e2ac86d8235..083f54d39909bfb12405312761972d643671260e 100644
--- a/app/code/Magento/Checkout/Service/V1/Data/Cart/PaymentMethod/Converter.php
+++ b/app/code/Magento/Checkout/Service/V1/Data/Cart/PaymentMethod/Converter.php
@@ -26,10 +26,10 @@ class Converter
     /**
      * Convert quote payment object to payment data object
      *
-     * @param \Magento\Sales\Model\Quote\Payment $object
+     * @param \Magento\Quote\Model\Quote\Payment $object
      * @return QuotePaymentMethod
      */
-    public function toDataObject(\Magento\Sales\Model\Quote\Payment $object)
+    public function toDataObject(\Magento\Quote\Model\Quote\Payment $object)
     {
         $data = [
             QuotePaymentMethod::METHOD => $object->getMethod(),
diff --git a/app/code/Magento/Checkout/Service/V1/Data/Cart/ShippingMethod.php b/app/code/Magento/Checkout/Service/V1/Data/Cart/ShippingMethod.php
index 2b0d921bdfa5bfba75a8e2310d5a8ea2e38d82a2..1b821b603db8a1fb4d319745b6f7e53f43e2506b 100644
--- a/app/code/Magento/Checkout/Service/V1/Data/Cart/ShippingMethod.php
+++ b/app/code/Magento/Checkout/Service/V1/Data/Cart/ShippingMethod.php
@@ -111,6 +111,7 @@ class ShippingMethod extends \Magento\Framework\Api\AbstractExtensibleObject
      * Returns the value of the availability flag for the current shipping method.
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getAvailable()
     {
diff --git a/app/code/Magento/Checkout/Service/V1/Data/Cart/ShippingMethodConverter.php b/app/code/Magento/Checkout/Service/V1/Data/Cart/ShippingMethodConverter.php
index 13e39fdf09b2f280088acd079cf300e9e18df49d..b232b4629deb7ce6b41c1233c5806e48b8ea1af2 100644
--- a/app/code/Magento/Checkout/Service/V1/Data/Cart/ShippingMethodConverter.php
+++ b/app/code/Magento/Checkout/Service/V1/Data/Cart/ShippingMethodConverter.php
@@ -37,7 +37,7 @@ class ShippingMethodConverter
      * Converts a specified rate model to a shipping method data object.
      *
      * @param string $quoteCurrencyCode The quote currency code.
-     * @param \Magento\Sales\Model\Quote\Address\Rate $rateModel The rate model.
+     * @param \Magento\Quote\Model\Quote\Address\Rate $rateModel The rate model.
      * @return mixed Shipping method data object.
      */
     public function modelToDataObject($rateModel, $quoteCurrencyCode)
diff --git a/app/code/Magento/Checkout/Service/V1/Data/Cart/TotalsMapper.php b/app/code/Magento/Checkout/Service/V1/Data/Cart/TotalsMapper.php
index 7f581134d500f91f9c4ccd77b8b2f92193859c28..d731d54609b06ea105605e557baebdee345c8ea9 100644
--- a/app/code/Magento/Checkout/Service/V1/Data/Cart/TotalsMapper.php
+++ b/app/code/Magento/Checkout/Service/V1/Data/Cart/TotalsMapper.php
@@ -5,7 +5,7 @@
  */
 namespace Magento\Checkout\Service\V1\Data\Cart;
 
-use Magento\Sales\Model\Quote;
+use Magento\Quote\Model\Quote;
 
 /**
  * Totals data mapper
diff --git a/app/code/Magento/Checkout/Service/V1/Data/CartMapper.php b/app/code/Magento/Checkout/Service/V1/Data/CartMapper.php
index 54ef28c6f09a4c3e288776eaff2d68b365638f6f..96327ac3aa9e5a927c40d13c791e22ffba9aeab3 100644
--- a/app/code/Magento/Checkout/Service/V1/Data/CartMapper.php
+++ b/app/code/Magento/Checkout/Service/V1/Data/CartMapper.php
@@ -6,10 +6,11 @@
 namespace Magento\Checkout\Service\V1\Data;
 
 use Magento\Checkout\Service\V1\Data\Cart;
-use Magento\Sales\Model\Quote;
+use Magento\Quote\Model\Quote;
 
 /**
  * Cart mapper
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class CartMapper
 {
diff --git a/app/code/Magento/Checkout/Service/V1/Item/ReadService.php b/app/code/Magento/Checkout/Service/V1/Item/ReadService.php
index 6f0739adf3710341de0b2ec572c0be7e92cde4da..68ca13033f5491bc587c0b8de526b13fe9a669d6 100644
--- a/app/code/Magento/Checkout/Service/V1/Item/ReadService.php
+++ b/app/code/Magento/Checkout/Service/V1/Item/ReadService.php
@@ -13,7 +13,7 @@ class ReadService implements ReadServiceInterface
     /**
      * Quote repository.
      *
-     * @var \Magento\Sales\Model\QuoteRepository
+     * @var \Magento\Quote\Model\QuoteRepository
      */
     protected $quoteRepository;
 
@@ -27,11 +27,11 @@ class ReadService implements ReadServiceInterface
     /**
      * Constructs a read service object.
      *
-     * @param \Magento\Sales\Model\QuoteRepository $quoteRepository Quote repository.
+     * @param \Magento\Quote\Model\QuoteRepository $quoteRepository Quote repository.
      * @param \Magento\Checkout\Service\V1\Data\Cart\ItemMapper $itemMapper Item mapper.
      */
     public function __construct(
-        \Magento\Sales\Model\QuoteRepository $quoteRepository,
+        \Magento\Quote\Model\QuoteRepository $quoteRepository,
         \Magento\Checkout\Service\V1\Data\Cart\ItemMapper $itemMapper
     ) {
         $this->quoteRepository = $quoteRepository;
@@ -48,10 +48,10 @@ class ReadService implements ReadServiceInterface
     public function getList($cartId)
     {
         $output = [];
-        /** @var  \Magento\Sales\Model\Quote $quote */
+        /** @var  \Magento\Quote\Model\Quote $quote */
         $quote = $this->quoteRepository->getActive($cartId);
 
-        /** @var  \Magento\Sales\Model\Quote\Item  $item */
+        /** @var  \Magento\Quote\Model\Quote\Item  $item */
         foreach ($quote->getAllItems() as $item) {
             $output[] = $this->itemMapper->extractDto($item);
         }
diff --git a/app/code/Magento/Checkout/Service/V1/Item/WriteService.php b/app/code/Magento/Checkout/Service/V1/Item/WriteService.php
index 9ecb7bebce0776e430250ee2a43824eb52ebbb55..b8fc3a97ceb2c590bbbb00e6b76e574fc3825696 100644
--- a/app/code/Magento/Checkout/Service/V1/Item/WriteService.php
+++ b/app/code/Magento/Checkout/Service/V1/Item/WriteService.php
@@ -17,7 +17,7 @@ class WriteService implements WriteServiceInterface
     /**
      * Quote repository.
      *
-     * @var \Magento\Sales\Model\QuoteRepository
+     * @var \Magento\Quote\Model\QuoteRepository
      */
     protected $quoteRepository;
 
@@ -31,11 +31,11 @@ class WriteService implements WriteServiceInterface
     /**
      * Constructs a write service object.
      *
-     * @param \Magento\Sales\Model\QuoteRepository $quoteRepository Quote repository.
+     * @param \Magento\Quote\Model\QuoteRepository $quoteRepository Quote repository.
      * @param \Magento\Catalog\Api\ProductRepositoryInterface $productRepository
      */
     public function __construct(
-        \Magento\Sales\Model\QuoteRepository $quoteRepository,
+        \Magento\Quote\Model\QuoteRepository $quoteRepository,
         \Magento\Catalog\Api\ProductRepositoryInterface $productRepository
     ) {
         $this->quoteRepository = $quoteRepository;
@@ -58,7 +58,7 @@ class WriteService implements WriteServiceInterface
         if (!is_numeric($qty) || $qty <= 0) {
             throw InputException::invalidFieldValue('qty', $qty);
         }
-        /** @var \Magento\Sales\Model\Quote $quote */
+        /** @var \Magento\Quote\Model\Quote $quote */
         $quote = $this->quoteRepository->getActive($cartId);
 
         $product = $this->productRepository->get($data->getSku());
@@ -89,7 +89,7 @@ class WriteService implements WriteServiceInterface
         if (!is_numeric($qty) || $qty <= 0) {
             throw InputException::invalidFieldValue('qty', $qty);
         }
-        /** @var \Magento\Sales\Model\Quote $quote */
+        /** @var \Magento\Quote\Model\Quote $quote */
         $quote = $this->quoteRepository->getActive($cartId);
         $quoteItem = $quote->getItemById($itemId);
         if (!$quoteItem) {
@@ -119,7 +119,7 @@ class WriteService implements WriteServiceInterface
         /**
          * Quote.
          *
-         * @var \Magento\Sales\Model\Quote $quote
+         * @var \Magento\Quote\Model\Quote $quote
          */
         $quote = $this->quoteRepository->getActive($cartId);
         $quoteItem = $quote->getItemById($itemId);
diff --git a/app/code/Magento/Checkout/Service/V1/PaymentMethod/ReadService.php b/app/code/Magento/Checkout/Service/V1/PaymentMethod/ReadService.php
index d954a611af223d47febca65a52dc80e4aaa43d02..20ea6ec225a09fcd026aabbf974fa6d030e3966a 100644
--- a/app/code/Magento/Checkout/Service/V1/PaymentMethod/ReadService.php
+++ b/app/code/Magento/Checkout/Service/V1/PaymentMethod/ReadService.php
@@ -5,7 +5,7 @@
  */
 namespace Magento\Checkout\Service\V1\PaymentMethod;
 
-use Magento\Sales\Model\QuoteRepository;
+use \Magento\Quote\Model\QuoteRepository;
 use Magento\Checkout\Service\V1\Data\Cart\PaymentMethod\Converter as QuoteMethodConverter;
 use Magento\Checkout\Service\V1\Data\PaymentMethod\Converter as PaymentMethodConverter;
 use Magento\Payment\Model\MethodList;
@@ -72,7 +72,7 @@ class ReadService implements ReadServiceInterface
      */
     public function getPayment($cartId)
     {
-        /** @var \Magento\Sales\Model\Quote $quote */
+        /** @var \Magento\Quote\Model\Quote $quote */
         $quote = $this->quoteRepository->getActive($cartId);
         $payment = $quote->getPayment();
         if (!$payment->getId()) {
@@ -91,7 +91,7 @@ class ReadService implements ReadServiceInterface
     public function getList($cartId)
     {
         $output = [];
-        /** @var \Magento\Sales\Model\Quote $quote */
+        /** @var \Magento\Quote\Model\Quote $quote */
         $quote = $this->quoteRepository->getActive($cartId);
         foreach ($this->methodList->getAvailableMethods($quote) as $method) {
             $output[] = $this->paymentMethodConverter->toDataObject($method);
diff --git a/app/code/Magento/Checkout/Service/V1/PaymentMethod/WriteService.php b/app/code/Magento/Checkout/Service/V1/PaymentMethod/WriteService.php
index 98cd2a7c53419cb3ac4c68a6c75d72cf42d56589..e2a35850f226de32cb953e8a20cdbfde330b4ce4 100644
--- a/app/code/Magento/Checkout/Service/V1/PaymentMethod/WriteService.php
+++ b/app/code/Magento/Checkout/Service/V1/PaymentMethod/WriteService.php
@@ -3,12 +3,15 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Checkout\Service\V1\PaymentMethod;
 
 use Magento\Checkout\Service\V1\Data\Cart\PaymentMethod\Builder;
 use Magento\Framework\Exception\State\InvalidTransitionException;
 use Magento\Payment\Model\Checks\ZeroTotal;
-use Magento\Sales\Model\QuoteRepository;
+use Magento\Quote\Model\QuoteRepository;
 
 /**
  * Payment method write service object.
diff --git a/app/code/Magento/Checkout/Service/V1/PaymentMethod/WriteServiceInterface.php b/app/code/Magento/Checkout/Service/V1/PaymentMethod/WriteServiceInterface.php
index 8df03a63f104e6b629292c48f399616180c490d4..ff294bd3293007d8fe27698d352cd8205e119253 100644
--- a/app/code/Magento/Checkout/Service/V1/PaymentMethod/WriteServiceInterface.php
+++ b/app/code/Magento/Checkout/Service/V1/PaymentMethod/WriteServiceInterface.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Checkout\Service\V1\PaymentMethod;
 
 /**
diff --git a/app/code/Magento/Checkout/Service/V1/ShippingMethod/ReadService.php b/app/code/Magento/Checkout/Service/V1/ShippingMethod/ReadService.php
index 2b9ecf8c4421565b72a96dd446f30d49c1ede0fa..72ca2acbd5037ee07fcc7c6e7a17263c97da5f11 100644
--- a/app/code/Magento/Checkout/Service/V1/ShippingMethod/ReadService.php
+++ b/app/code/Magento/Checkout/Service/V1/ShippingMethod/ReadService.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Checkout\Service\V1\ShippingMethod;
 
 use Magento\Checkout\Service\V1\Data\Cart\ShippingMethod;
@@ -11,7 +13,7 @@ use Magento\Checkout\Service\V1\Data\Cart\ShippingMethodBuilder;
 use Magento\Checkout\Service\V1\Data\Cart\ShippingMethodConverter;
 use Magento\Framework\Exception\InputException;
 use Magento\Framework\Exception\StateException;
-use Magento\Sales\Model\QuoteRepository;
+use Magento\Quote\Model\QuoteRepository;
 
 /**
  * Shipping method read service.
@@ -66,10 +68,10 @@ class ReadService implements ReadServiceInterface
      */
     public function getMethod($cartId)
     {
-        /** @var \Magento\Sales\Model\Quote $quote */
+        /** @var \Magento\Quote\Model\Quote $quote */
         $quote = $this->quoteRepository->getActive($cartId);
 
-        /** @var \Magento\Sales\Model\Quote\Address $shippingAddress */
+        /** @var \Magento\Quote\Model\Quote\Address $shippingAddress */
         $shippingAddress = $quote->getShippingAddress();
         if (!$shippingAddress->getCountryId()) {
             throw new StateException('Shipping address not set.');
@@ -124,7 +126,7 @@ class ReadService implements ReadServiceInterface
     {
         $output = [];
 
-        /** @var \Magento\Sales\Model\Quote $quote */
+        /** @var \Magento\Quote\Model\Quote $quote */
         $quote = $this->quoteRepository->getActive($cartId);
 
         // no methods applicable for empty carts or carts with virtual products
diff --git a/app/code/Magento/Checkout/Service/V1/ShippingMethod/WriteService.php b/app/code/Magento/Checkout/Service/V1/ShippingMethod/WriteService.php
index 6e84a07c8abf198e66c81c1ef9bb830d4a896221..4dd75a5550f414afcadb25038c48481e46ad38e7 100644
--- a/app/code/Magento/Checkout/Service/V1/ShippingMethod/WriteService.php
+++ b/app/code/Magento/Checkout/Service/V1/ShippingMethod/WriteService.php
@@ -3,13 +3,16 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Checkout\Service\V1\ShippingMethod;
 
 use Magento\Framework\Exception\CouldNotSaveException;
 use Magento\Framework\Exception\InputException;
 use Magento\Framework\Exception\NoSuchEntityException;
 use Magento\Framework\Exception\StateException;
-use Magento\Sales\Model\QuoteRepository;
+use Magento\Quote\Model\QuoteRepository;
 
 /**
  * Shipping method write service object.
@@ -19,7 +22,7 @@ class WriteService implements WriteServiceInterface
     /**
      * Address factory.
      *
-     * @var \Magento\Sales\Model\Quote\AddressFactory
+     * @var \Magento\Quote\Model\Quote\AddressFactory
      */
     protected $addressFactory;
 
@@ -33,11 +36,11 @@ class WriteService implements WriteServiceInterface
     /**
      * Constructs a shipping method write service object.
      *
-     * @param \Magento\Sales\Model\Quote\AddressFactory $addressFactory Address factory.
+     * @param \Magento\Quote\Model\Quote\AddressFactory $addressFactory Address factory.
      * @param QuoteRepository $quoteRepository Quote repository.
      */
     public function __construct(
-        \Magento\Sales\Model\Quote\AddressFactory $addressFactory,
+        \Magento\Quote\Model\Quote\AddressFactory $addressFactory,
         QuoteRepository $quoteRepository
     ) {
         $this->addressFactory = $addressFactory;
@@ -58,7 +61,7 @@ class WriteService implements WriteServiceInterface
      */
     public function setMethod($cartId, $carrierCode, $methodCode)
     {
-        /** @var \Magento\Sales\Model\Quote $quote */
+        /** @var \Magento\Quote\Model\Quote $quote */
         $quote = $this->quoteRepository->getActive($cartId);
         if (0 == $quote->getItemsCount()) {
             throw new InputException('Shipping method is not applicable for empty cart');
diff --git a/app/code/Magento/Checkout/Service/V1/ShippingMethod/WriteServiceInterface.php b/app/code/Magento/Checkout/Service/V1/ShippingMethod/WriteServiceInterface.php
index 04ecd30162a37aa0ae9533876e54eb4e88f39acd..15c7ae02f6ca71bbb615398d552a076f69b9fe0f 100644
--- a/app/code/Magento/Checkout/Service/V1/ShippingMethod/WriteServiceInterface.php
+++ b/app/code/Magento/Checkout/Service/V1/ShippingMethod/WriteServiceInterface.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Checkout\Service\V1\ShippingMethod;
 
 /**
diff --git a/app/code/Magento/Checkout/composer.json b/app/code/Magento/Checkout/composer.json
index 55714032355622530b4c7f70d072444734cf8454..38bd83c692b9ae685fe3d4b227e5e1ed991c90eb 100644
--- a/app/code/Magento/Checkout/composer.json
+++ b/app/code/Magento/Checkout/composer.json
@@ -3,28 +3,29 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-sales": "0.42.0-beta3",
-        "magento/module-authorization": "0.42.0-beta3",
-        "magento/module-catalog-inventory": "0.42.0-beta3",
-        "magento/module-core": "0.42.0-beta3",
-        "magento/module-customer": "0.42.0-beta3",
-        "magento/module-catalog": "0.42.0-beta3",
-        "magento/module-payment": "0.42.0-beta3",
-        "magento/module-tax": "0.42.0-beta3",
-        "magento/module-directory": "0.42.0-beta3",
-        "magento/module-eav": "0.42.0-beta3",
-        "magento/module-gift-message": "0.42.0-beta3",
-        "magento/module-wishlist": "0.42.0-beta3",
-        "magento/module-page-cache": "0.42.0-beta3",
-        "magento/module-theme": "0.42.0-beta3",
-        "magento/module-msrp": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
-        "magento/module-ui": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-sales": "0.42.0-beta4",
+        "magento/module-authorization": "0.42.0-beta4",
+        "magento/module-catalog-inventory": "0.42.0-beta4",
+        "magento/module-core": "0.42.0-beta4",
+        "magento/module-customer": "0.42.0-beta4",
+        "magento/module-catalog": "0.42.0-beta4",
+        "magento/module-payment": "0.42.0-beta4",
+        "magento/module-tax": "0.42.0-beta4",
+        "magento/module-directory": "0.42.0-beta4",
+        "magento/module-eav": "0.42.0-beta4",
+        "magento/module-gift-message": "0.42.0-beta4",
+        "magento/module-wishlist": "0.42.0-beta4",
+        "magento/module-page-cache": "0.42.0-beta4",
+        "magento/module-theme": "0.42.0-beta4",
+        "magento/module-msrp": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
+        "magento/module-ui": "0.42.0-beta4",
+        "magento/module-quote": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/Checkout/etc/module.xml b/app/code/Magento/Checkout/etc/module.xml
index f6c9892563551bcb34ee9757053a64fa9bef1cc9..2bac81043169f01c01f7e765bde7fbbb9bca58d0 100644
--- a/app/code/Magento/Checkout/etc/module.xml
+++ b/app/code/Magento/Checkout/etc/module.xml
@@ -9,6 +9,7 @@
     <module name="Magento_Checkout" schema_version="2.0.0">
         <sequence>
             <module name="Magento_Sales"/>
+            <module name="Magento_Quote"/>
             <module name="Magento_CatalogInventory"/>
         </sequence>
     </module>
diff --git a/app/code/Magento/Checkout/view/frontend/layout/checkout_onepage_success.xml b/app/code/Magento/Checkout/view/frontend/layout/checkout_onepage_success.xml
index 22ca2df12cec6add0680d95fcd284acc646ce85f..3fdbfc2c3cabc3be035e98cabd7a2f36cbb42456 100644
--- a/app/code/Magento/Checkout/view/frontend/layout/checkout_onepage_success.xml
+++ b/app/code/Magento/Checkout/view/frontend/layout/checkout_onepage_success.xml
@@ -6,6 +6,9 @@
  */
 -->
 <page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" layout="1column" xsi:noNamespaceSchemaLocation="../../../../../../../lib/internal/Magento/Framework/View/Layout/etc/page_configuration.xsd">
+    <head>
+        <title>Success Page</title>
+    </head>
     <body>
         <referenceBlock name="page.main.title">
             <block class="Magento\Checkout\Block\Onepage\Success" name="checkout.success.print.button" template="button.phtml"/>
diff --git a/app/code/Magento/Checkout/view/frontend/templates/button.phtml b/app/code/Magento/Checkout/view/frontend/templates/button.phtml
index 172533b37b54483ce21f23d663a1c52f08aa204d..bbd2e27e279d57c0200f1c8e7330a1a6dfe7e2da 100644
--- a/app/code/Magento/Checkout/view/frontend/templates/button.phtml
+++ b/app/code/Magento/Checkout/view/frontend/templates/button.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\Checkout\Block\Onepage\Success */ ?>
 
diff --git a/app/code/Magento/Checkout/view/frontend/templates/cart/additional/info.phtml b/app/code/Magento/Checkout/view/frontend/templates/cart/additional/info.phtml
index ccec59cee49951a9261d3a266a6218ef821ccf4c..82efcb5bda2648a6f193e23485f70fe9edd30cc9 100644
--- a/app/code/Magento/Checkout/view/frontend/templates/cart/additional/info.phtml
+++ b/app/code/Magento/Checkout/view/frontend/templates/cart/additional/info.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/Checkout/view/frontend/templates/cart/coupon.phtml b/app/code/Magento/Checkout/view/frontend/templates/cart/coupon.phtml
index 2487fb279e2c05c2d1101a225ff804ff53b9a43d..affd2de86aacf906580ffd888faa21b0e77ba77f 100644
--- a/app/code/Magento/Checkout/view/frontend/templates/cart/coupon.phtml
+++ b/app/code/Magento/Checkout/view/frontend/templates/cart/coupon.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <div class="block discount" id="block-discount" data-mage-init='{"collapsible":{"openedState": "active", "saveState": false}}'>
     <div class="title" data-role="title">
diff --git a/app/code/Magento/Checkout/view/frontend/templates/cart/form.phtml b/app/code/Magento/Checkout/view/frontend/templates/cart/form.phtml
index 13b2be3fbdaafaebfd35d41a6bb6029fd37e6e64..48741bc8f56778fc0d4b87e2d5b58add2798e31e 100644
--- a/app/code/Magento/Checkout/view/frontend/templates/cart/form.phtml
+++ b/app/code/Magento/Checkout/view/frontend/templates/cart/form.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**  @var $this \Magento\Checkout\Block\Cart */
 ?>
 <?php $mergedCells = ($this->helper('Magento\Tax\Helper\Data')->displayCartBothPrices() ? 2 : 1); ?>
diff --git a/app/code/Magento/Checkout/view/frontend/templates/cart/item/configure/updatecart.phtml b/app/code/Magento/Checkout/view/frontend/templates/cart/item/configure/updatecart.phtml
index 51b582abad617508b531a24715b39923b4013e6a..ec0b669af8705a11c75005ce110f410686239e5b 100644
--- a/app/code/Magento/Checkout/view/frontend/templates/cart/item/configure/updatecart.phtml
+++ b/app/code/Magento/Checkout/view/frontend/templates/cart/item/configure/updatecart.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Catalog\Block\Product\View */
 ?>
 <?php $_product = $this->getProduct(); ?>
@@ -31,7 +33,7 @@
         </fieldset>
     </div>
 
-    <script type="text/javascript">
+    <script>
 require([
     "jquery",
     "mage/mage"
diff --git a/app/code/Magento/Checkout/view/frontend/templates/cart/item/default.phtml b/app/code/Magento/Checkout/view/frontend/templates/cart/item/default.phtml
index c4b7a54c82f58807d601b8a07cafa9e41728fa44..e65a1f2f65632229fbb608a00ae2e8f41eceb634 100644
--- a/app/code/Magento/Checkout/view/frontend/templates/cart/item/default.phtml
+++ b/app/code/Magento/Checkout/view/frontend/templates/cart/item/default.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Checkout\Block\Cart\Item\Renderer */
 
 $_item = $this->getItem();
diff --git a/app/code/Magento/Checkout/view/frontend/templates/cart/item/price/sidebar.phtml b/app/code/Magento/Checkout/view/frontend/templates/cart/item/price/sidebar.phtml
index 2313738810bfc539ae1e64017007750be451c610..79d5327513d502f2783dd3257f08108ff291883e 100644
--- a/app/code/Magento/Checkout/view/frontend/templates/cart/item/price/sidebar.phtml
+++ b/app/code/Magento/Checkout/view/frontend/templates/cart/item/price/sidebar.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Checkout\Block\Item\Price\Renderer */
 ?>
 <?php $_item = $this->getItem() ?>
diff --git a/app/code/Magento/Checkout/view/frontend/templates/cart/methods.phtml b/app/code/Magento/Checkout/view/frontend/templates/cart/methods.phtml
index e5f2faebb9e73d2ffefd9447fb4233d8aeb01c20..941b87e97655c648ebb34ce03a7da869de9d4636 100644
--- a/app/code/Magento/Checkout/view/frontend/templates/cart/methods.phtml
+++ b/app/code/Magento/Checkout/view/frontend/templates/cart/methods.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /** @var $this \Magento\Checkout\Block\Cart */
diff --git a/app/code/Magento/Checkout/view/frontend/templates/cart/minicart.phtml b/app/code/Magento/Checkout/view/frontend/templates/cart/minicart.phtml
index 3a6247a8249c6b98a32ef1f8d91f07a141abcb1d..0a7b63a393ac9984e696bf449869ed7c96c2c4e2 100644
--- a/app/code/Magento/Checkout/view/frontend/templates/cart/minicart.phtml
+++ b/app/code/Magento/Checkout/view/frontend/templates/cart/minicart.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Checkout\Block\Cart\Sidebar */
 ?>
 <?php if ($this->getInList()): ?>
@@ -90,7 +92,7 @@
         </div>
     <?php endif ?>
 <?php endif; ?>
-<script type="text/javascript">
+<script>
     require([
         "jquery",
         "mage/mage"
diff --git a/app/code/Magento/Checkout/view/frontend/templates/cart/shipping.phtml b/app/code/Magento/Checkout/view/frontend/templates/cart/shipping.phtml
index ef3f457fda7de16556e5c9a9f744a3cc09454f37..c3a6bd227d70937139f3d7f596bf34f40d1ec20c 100644
--- a/app/code/Magento/Checkout/view/frontend/templates/cart/shipping.phtml
+++ b/app/code/Magento/Checkout/view/frontend/templates/cart/shipping.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\Checkout\Block\Cart\Shipping */ ?>
 <div class="block shipping" id="block-shipping" data-mage-init='{"collapsible":{"openedState": "active", "saveState": false}}'>
@@ -54,7 +57,7 @@
             </div>
         </fieldset>
     </form>
-    <script type="text/javascript">
+    <script>
 require([
     "jquery",
     "mage/mage"
diff --git a/app/code/Magento/Checkout/view/frontend/templates/cart/sidebar/default.phtml b/app/code/Magento/Checkout/view/frontend/templates/cart/sidebar/default.phtml
index 6a4e282672011eacc0b87e575e1f8e13504b02a3..bda5592a0731f09842514999af4b828c4af0e8f2 100644
--- a/app/code/Magento/Checkout/view/frontend/templates/cart/sidebar/default.phtml
+++ b/app/code/Magento/Checkout/view/frontend/templates/cart/sidebar/default.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /** @var $this \Magento\Checkout\Block\Cart\Item\Renderer */
diff --git a/app/code/Magento/Checkout/view/frontend/templates/item/price/row.phtml b/app/code/Magento/Checkout/view/frontend/templates/item/price/row.phtml
index a19936885ea8b3d6ac60801bca96c9669a445816..dd953145c0e584041e75a6ad525d40b0119b1ea1 100644
--- a/app/code/Magento/Checkout/view/frontend/templates/item/price/row.phtml
+++ b/app/code/Magento/Checkout/view/frontend/templates/item/price/row.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Checkout\Block\Item\Price\Renderer */
 
 $_item = $this->getItem();
diff --git a/app/code/Magento/Checkout/view/frontend/templates/item/price/unit.phtml b/app/code/Magento/Checkout/view/frontend/templates/item/price/unit.phtml
index 47a9df414edb031316c9cbe220dffc359bde3a12..940fdebb33ba53714a5ec69a89edc0ed6d6fb942 100644
--- a/app/code/Magento/Checkout/view/frontend/templates/item/price/unit.phtml
+++ b/app/code/Magento/Checkout/view/frontend/templates/item/price/unit.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Checkout\Block\Item\Price\Renderer */
 
 $_item = $this->getItem();
diff --git a/app/code/Magento/Checkout/view/frontend/templates/js/components.phtml b/app/code/Magento/Checkout/view/frontend/templates/js/components.phtml
index 99be8e37348cec69521e018a61f416324e582a94..43f7e9c30c0126f46204910ee749ef83ad81e815 100644
--- a/app/code/Magento/Checkout/view/frontend/templates/js/components.phtml
+++ b/app/code/Magento/Checkout/view/frontend/templates/js/components.phtml
@@ -3,5 +3,8 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php echo $this->getChildHtml() ?>
diff --git a/app/code/Magento/Checkout/view/frontend/templates/onepage.phtml b/app/code/Magento/Checkout/view/frontend/templates/onepage.phtml
index 3b0360a226cb857a99991b70e931e8510f459586..f8e5b4d5aa56d03ebecfef1595d5c79afbbfe9b2 100644
--- a/app/code/Magento/Checkout/view/frontend/templates/onepage.phtml
+++ b/app/code/Magento/Checkout/view/frontend/templates/onepage.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var \Magento\Checkout\Block\Onepage\Payment $_paymentBlock */
 $_paymentBlock = $this->getLayout()->getBlock('checkout.onepage.payment');
 ?>
@@ -23,7 +25,7 @@ $_paymentBlock = $this->getLayout()->getBlock('checkout.onepage.payment');
         </li>
     <?php endforeach ?>
     </ol>
-    <script type="text/javascript">
+    <script>
 require([
     "jquery",
     "mage/mage"
diff --git a/app/code/Magento/Checkout/view/frontend/templates/onepage/billing.phtml b/app/code/Magento/Checkout/view/frontend/templates/onepage/billing.phtml
index bf95eafba129ebf159675936967a6927a689e005..1e337503117069f13f65fff41454525a2885d0a0 100644
--- a/app/code/Magento/Checkout/view/frontend/templates/onepage/billing.phtml
+++ b/app/code/Magento/Checkout/view/frontend/templates/onepage/billing.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /** @var \Magento\Checkout\Block\Onepage\Billing $this */
 ?>
 <form class="form billing" id="co-billing-form" data-hasrequired="<?php echo __('* Required Fields') ?>">
@@ -191,7 +194,7 @@
     <div class="primary"><button data-role="opc-continue" type="button" class="button action continue primary"><span><?php echo __('Continue') ?></span></button></div>
 </div>
 </form>
-<script type="text/javascript">
+<script>
     require([
         "jquery",
         "mage/mage"
diff --git a/app/code/Magento/Checkout/view/frontend/templates/onepage/failure.phtml b/app/code/Magento/Checkout/view/frontend/templates/onepage/failure.phtml
index 142b1f6dfde4d3b896ba217c7c5cb5861f31e172..ba797b7b4d8201377ebbfc84b2d56477b6161040 100644
--- a/app/code/Magento/Checkout/view/frontend/templates/onepage/failure.phtml
+++ b/app/code/Magento/Checkout/view/frontend/templates/onepage/failure.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php if ($this->getRealOrderId()) : ?><p><?php echo __('Order #') . $this->getRealOrderId() ?></p><?php endif ?>
 <?php if ($error = $this->getErrorMessage()) : ?><p><?php echo $error ?></p><?php endif ?>
diff --git a/app/code/Magento/Checkout/view/frontend/templates/onepage/link.phtml b/app/code/Magento/Checkout/view/frontend/templates/onepage/link.phtml
index 9658b24101f08f032f70686fcacb761158ea8ff9..229b2ac050f9057b830b65db84c4a31da077ac59 100644
--- a/app/code/Magento/Checkout/view/frontend/templates/onepage/link.phtml
+++ b/app/code/Magento/Checkout/view/frontend/templates/onepage/link.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php if ($this->isPossibleOnepageCheckout()):?>
     <button type="button"
diff --git a/app/code/Magento/Checkout/view/frontend/templates/onepage/login.phtml b/app/code/Magento/Checkout/view/frontend/templates/onepage/login.phtml
index 21a92194bdcc4708ce77c030ba9160fb7fb6a91c..47d5c7accb7d36ff60c67fd62d01bc4201c3f9c4 100644
--- a/app/code/Magento/Checkout/view/frontend/templates/onepage/login.phtml
+++ b/app/code/Magento/Checkout/view/frontend/templates/onepage/login.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/Checkout/view/frontend/templates/onepage/payment.phtml b/app/code/Magento/Checkout/view/frontend/templates/onepage/payment.phtml
index 92c18fed651e20175ff8b64e5d7d7dcd92e4aba8..528e5e22fb47129d3e7b6dca7d19990360b355e0 100644
--- a/app/code/Magento/Checkout/view/frontend/templates/onepage/payment.phtml
+++ b/app/code/Magento/Checkout/view/frontend/templates/onepage/payment.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <form id="co-payment-form" class="form payments">
     <?php echo $this->getBlockHtml('formkey') ?>
diff --git a/app/code/Magento/Checkout/view/frontend/templates/onepage/payment/methods.phtml b/app/code/Magento/Checkout/view/frontend/templates/onepage/payment/methods.phtml
index 2e241cb102064e0851c9b7bfc992d3342392a6d5..a05338be6e1a19ec75524826be37fe0f31f09517 100644
--- a/app/code/Magento/Checkout/view/frontend/templates/onepage/payment/methods.phtml
+++ b/app/code/Magento/Checkout/view/frontend/templates/onepage/payment/methods.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/Checkout/view/frontend/templates/onepage/progress.phtml b/app/code/Magento/Checkout/view/frontend/templates/onepage/progress.phtml
index 3871a5166871092f9da56fc432023905bc12517a..3133cf56765da093f7d437246945183eeb7e9c46 100644
--- a/app/code/Magento/Checkout/view/frontend/templates/onepage/progress.phtml
+++ b/app/code/Magento/Checkout/view/frontend/templates/onepage/progress.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /* @var $this \Magento\Checkout\Block\Onepage\Progress */
 ?>
 <div class="opc-block-progress<?php if ($this->isStepComplete('billing')): ?> active<?php endif; ?><?php if ($this->isStepComplete('payment')): ?> order-review-step<?php endif; ?>">
diff --git a/app/code/Magento/Checkout/view/frontend/templates/onepage/review/info.phtml b/app/code/Magento/Checkout/view/frontend/templates/onepage/review/info.phtml
index 49369fbd7b112169aff6e8b8915d94a55812834d..710ac5abb8436f71cf266e8172f1169696ff94e3 100644
--- a/app/code/Magento/Checkout/view/frontend/templates/onepage/review/info.phtml
+++ b/app/code/Magento/Checkout/view/frontend/templates/onepage/review/info.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Checkout\Block\Onepage\Review\Info */
 ?>
 <?php echo $this->getChildHtml('items_before'); ?>
diff --git a/app/code/Magento/Checkout/view/frontend/templates/onepage/review/item.phtml b/app/code/Magento/Checkout/view/frontend/templates/onepage/review/item.phtml
index 1e9f98a0ac2c42ffdfc6889bbfe91c2e44625189..feb98db7d786f001e6161a5bb044c889dc28b0f5 100644
--- a/app/code/Magento/Checkout/view/frontend/templates/onepage/review/item.phtml
+++ b/app/code/Magento/Checkout/view/frontend/templates/onepage/review/item.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var $this Magento\Checkout\Block\Cart\Item\Renderer */
 
 $_item = $this->getItem();
diff --git a/app/code/Magento/Checkout/view/frontend/templates/onepage/review/item/price/row_excl_tax.phtml b/app/code/Magento/Checkout/view/frontend/templates/onepage/review/item/price/row_excl_tax.phtml
index f21be674673e5700c0c03ee6a3bfe6aa47c28977..3c50f62b146fb263fcaa315aae266105edf10227 100644
--- a/app/code/Magento/Checkout/view/frontend/templates/onepage/review/item/price/row_excl_tax.phtml
+++ b/app/code/Magento/Checkout/view/frontend/templates/onepage/review/item/price/row_excl_tax.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Checkout\Block\Item\Price\Renderer */
 
 $_item = $this->getItem();
diff --git a/app/code/Magento/Checkout/view/frontend/templates/onepage/review/item/price/row_incl_tax.phtml b/app/code/Magento/Checkout/view/frontend/templates/onepage/review/item/price/row_incl_tax.phtml
index e096f814934bbf7f51c8686553311e635a7fdf40..a2400474f0bdbefddd9838155ed8e8e760213c66 100644
--- a/app/code/Magento/Checkout/view/frontend/templates/onepage/review/item/price/row_incl_tax.phtml
+++ b/app/code/Magento/Checkout/view/frontend/templates/onepage/review/item/price/row_incl_tax.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Checkout\Block\Item\Price\Renderer */
 
 $_item = $this->getItem();
diff --git a/app/code/Magento/Checkout/view/frontend/templates/onepage/review/item/price/unit_excl_tax.phtml b/app/code/Magento/Checkout/view/frontend/templates/onepage/review/item/price/unit_excl_tax.phtml
index 8ce4a3970329de8084fbc16b7c772f1edfd49a6b..051852ec5624eb41ecfe63cf8a75833746137d76 100644
--- a/app/code/Magento/Checkout/view/frontend/templates/onepage/review/item/price/unit_excl_tax.phtml
+++ b/app/code/Magento/Checkout/view/frontend/templates/onepage/review/item/price/unit_excl_tax.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Checkout\Block\Item\Price\Renderer */
 
 $_item = $this->getItem();
diff --git a/app/code/Magento/Checkout/view/frontend/templates/onepage/review/item/price/unit_incl_tax.phtml b/app/code/Magento/Checkout/view/frontend/templates/onepage/review/item/price/unit_incl_tax.phtml
index bb9eda679db5efc5cbc03f55ab366c4364ff0e35..58a239d6f96f0d13efdc5afaac022abea044f551 100644
--- a/app/code/Magento/Checkout/view/frontend/templates/onepage/review/item/price/unit_incl_tax.phtml
+++ b/app/code/Magento/Checkout/view/frontend/templates/onepage/review/item/price/unit_incl_tax.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Checkout\Block\Item\Price\Renderer */
 
 $_item = $this->getItem();
diff --git a/app/code/Magento/Checkout/view/frontend/templates/onepage/review/totals.phtml b/app/code/Magento/Checkout/view/frontend/templates/onepage/review/totals.phtml
index 437385b8d8d5e49bfbe1b616f8dae95b43201020..302f7fe3f8a681c91f8b2a9b04467e0acef9132d 100644
--- a/app/code/Magento/Checkout/view/frontend/templates/onepage/review/totals.phtml
+++ b/app/code/Magento/Checkout/view/frontend/templates/onepage/review/totals.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * @see \Magento\Checkout\Block\Cart\Totals
  */
diff --git a/app/code/Magento/Checkout/view/frontend/templates/onepage/shipping.phtml b/app/code/Magento/Checkout/view/frontend/templates/onepage/shipping.phtml
index 92df128ccefe5c5311ed2f1c5ea5a5affd6ec789..29b0718dacc172e086702c874fb7ae7b2137ace2 100644
--- a/app/code/Magento/Checkout/view/frontend/templates/onepage/shipping.phtml
+++ b/app/code/Magento/Checkout/view/frontend/templates/onepage/shipping.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <form class="form shipping address" id="co-shipping-form" data-hasrequired="<?php echo __('* Required Fields') ?>">
 
@@ -110,7 +113,7 @@
         <div class="secondary"><a href="#" class="action back"><span><?php echo __('Back') ?></span></a></div>
     </div>
 </form>
-<script type="text/javascript">
+<script>
 require([
     "jquery",
     "mage/mage"
diff --git a/app/code/Magento/Checkout/view/frontend/templates/onepage/shipping_method.phtml b/app/code/Magento/Checkout/view/frontend/templates/onepage/shipping_method.phtml
index 43aba9aa35a13ea3199d13daf0a47760a350b82c..36e848cc0128c97cc071011b7dcf8c04e01c533c 100644
--- a/app/code/Magento/Checkout/view/frontend/templates/onepage/shipping_method.phtml
+++ b/app/code/Magento/Checkout/view/frontend/templates/onepage/shipping_method.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <form class="form methods-shipping" id="co-shipping-method-form">
     <div id="checkout-shipping-method-load"></div>
diff --git a/app/code/Magento/Checkout/view/frontend/templates/onepage/shipping_method/additional.phtml b/app/code/Magento/Checkout/view/frontend/templates/onepage/shipping_method/additional.phtml
index 1c2f9bce2421b9cf8462a68d6c5c3728e0bf7890..6d72c8a9a035dc6522f611113b04276f35fd0962 100644
--- a/app/code/Magento/Checkout/view/frontend/templates/onepage/shipping_method/additional.phtml
+++ b/app/code/Magento/Checkout/view/frontend/templates/onepage/shipping_method/additional.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php if (!$this->getQuote()->isVirtual()): ?>
     <?php echo $this->helper('Magento\GiftMessage\Helper\Message')->getInline('onepage_checkout', $this->getQuote(), $this->getDontDisplayContainer()) ?>
diff --git a/app/code/Magento/Checkout/view/frontend/templates/onepage/shipping_method/available.phtml b/app/code/Magento/Checkout/view/frontend/templates/onepage/shipping_method/available.phtml
index 565359f24acb4f8804b5a207696e3024757e80ef..a5eb00a22a70f410c5dff2b6b4b95adba242eaf6 100644
--- a/app/code/Magento/Checkout/view/frontend/templates/onepage/shipping_method/available.phtml
+++ b/app/code/Magento/Checkout/view/frontend/templates/onepage/shipping_method/available.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\Checkout\Block\Onepage\Shipping\Method\Available */ ?>
 <?php $_shippingRateGroups = $this->getShippingRates(); ?>
diff --git a/app/code/Magento/Checkout/view/frontend/templates/shipping/price.phtml b/app/code/Magento/Checkout/view/frontend/templates/shipping/price.phtml
index 58922d51b13ae7971d8566f7a58aaf26d669478e..0571c89ce7b74d1da3768920069c002d9eff5d16 100644
--- a/app/code/Magento/Checkout/view/frontend/templates/shipping/price.phtml
+++ b/app/code/Magento/Checkout/view/frontend/templates/shipping/price.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\Checkout\Block\Shipping\Price */ ?>
 
diff --git a/app/code/Magento/Checkout/view/frontend/templates/success.phtml b/app/code/Magento/Checkout/view/frontend/templates/success.phtml
index 8169694e953e24fd730b7aaa16fcead965756ed7..dbfd08207420fe057a7814448b3904694d794862 100644
--- a/app/code/Magento/Checkout/view/frontend/templates/success.phtml
+++ b/app/code/Magento/Checkout/view/frontend/templates/success.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\Checkout\Block\Onepage\Success */ ?>
 <div class="checkout-success">
diff --git a/app/code/Magento/Checkout/view/frontend/templates/total/default.phtml b/app/code/Magento/Checkout/view/frontend/templates/total/default.phtml
index f96e96d87b29a92e836d90a7df4cfd9d01d7facf..1b75bd7f79220b9055b2595670b536a3da1add84 100644
--- a/app/code/Magento/Checkout/view/frontend/templates/total/default.phtml
+++ b/app/code/Magento/Checkout/view/frontend/templates/total/default.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <tr class="totals">
     <th colspan="<?php echo $this->getColspan(); ?>" style="<?php echo $this->getTotal()->getStyle() ?>" class="mark" scope="row">
diff --git a/app/code/Magento/Checkout/view/frontend/web/js/region-updater.js b/app/code/Magento/Checkout/view/frontend/web/js/region-updater.js
index a3afecc461bb54aac058d377d05f25d29f7df555..75bfc8ac21a9ed894f9ba26b6cfbd58dc1bf1f0b 100644
--- a/app/code/Magento/Checkout/view/frontend/web/js/region-updater.js
+++ b/app/code/Magento/Checkout/view/frontend/web/js/region-updater.js
@@ -61,9 +61,10 @@ define([
          */
         _renderSelectOption: function(selectElement, key, value) {
             selectElement.append($.proxy(function() {
-                if (value.code &&  $(value.name).is('span')) {
+                var name = value.name.replace(/[!"#$%&'()*+,.\/:;<=>?@[\\\]^`{|}~]/g, "\\$&");
+                if (value.code &&  $(name).is('span')) {
                     key = value.code;
-                    value.name = $(value.name).text();
+                    value.name = $(name).text();
                 }
                 $.template('regionTemplate', this.options.regionTemplate);
                 if (this.options.defaultRegion === key) {
@@ -173,4 +174,4 @@ define([
     });
     
     return $.mage.regionUpdater;
-});
\ No newline at end of file
+});
diff --git a/app/code/Magento/CheckoutAgreements/Block/Adminhtml/Agreement/Edit/Form.php b/app/code/Magento/CheckoutAgreements/Block/Adminhtml/Agreement/Edit/Form.php
index 32858a110220a74960daf27bfd56fef94a9f898f..c6cb28ad448597d4f87b71195f1c761ae5f0169c 100644
--- a/app/code/Magento/CheckoutAgreements/Block/Adminhtml/Agreement/Edit/Form.php
+++ b/app/code/Magento/CheckoutAgreements/Block/Adminhtml/Agreement/Edit/Form.php
@@ -45,6 +45,7 @@ class Form extends \Magento\Backend\Block\Widget\Form\Generic
 
     /**
      * @return $this
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _prepareForm()
     {
diff --git a/app/code/Magento/CheckoutAgreements/Block/Adminhtml/Agreement/Grid.php b/app/code/Magento/CheckoutAgreements/Block/Adminhtml/Agreement/Grid.php
index 7d81ec090d5d43be2ce99edf67aa6c4771779d42..ccf00e4ef614705798677b4eef5051d72f8ef074 100644
--- a/app/code/Magento/CheckoutAgreements/Block/Adminhtml/Agreement/Grid.php
+++ b/app/code/Magento/CheckoutAgreements/Block/Adminhtml/Agreement/Grid.php
@@ -119,6 +119,7 @@ class Grid extends \Magento\Backend\Block\Widget\Grid\Extended
      * @param \Magento\Framework\Data\Collection $collection
      * @param \Magento\Backend\Block\Widget\Grid\Column $column
      * @return void
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     protected function _filterStoreCondition($collection, $column)
     {
diff --git a/app/code/Magento/CheckoutAgreements/Block/Agreements.php b/app/code/Magento/CheckoutAgreements/Block/Agreements.php
index 802293ddcfc4b03d896b163cf6a74ec359f4f5f6..f43827a6b58201b97f3e4ae9fd89e485093523d3 100644
--- a/app/code/Magento/CheckoutAgreements/Block/Agreements.php
+++ b/app/code/Magento/CheckoutAgreements/Block/Agreements.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\CheckoutAgreements\Block;
 
 class Agreements extends \Magento\Framework\View\Element\Template
diff --git a/app/code/Magento/CheckoutAgreements/Controller/Adminhtml/Agreement/Edit.php b/app/code/Magento/CheckoutAgreements/Controller/Adminhtml/Agreement/Edit.php
index a9723bed6b61986172b7f62341bb71e186aad939..01fcef39eaf979376eea60929d7f853fd6d889c8 100644
--- a/app/code/Magento/CheckoutAgreements/Controller/Adminhtml/Agreement/Edit.php
+++ b/app/code/Magento/CheckoutAgreements/Controller/Adminhtml/Agreement/Edit.php
@@ -10,6 +10,7 @@ class Edit extends \Magento\CheckoutAgreements\Controller\Adminhtml\Agreement
 {
     /**
      * @return void
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function execute()
     {
diff --git a/app/code/Magento/CheckoutAgreements/Model/Resource/Agreement.php b/app/code/Magento/CheckoutAgreements/Model/Resource/Agreement.php
index 5b28e26a142f898e5866ec210f48fb276a3e1cae..943e6738e9e67f18c320d9e73259f486cc96e1c3 100644
--- a/app/code/Magento/CheckoutAgreements/Model/Resource/Agreement.php
+++ b/app/code/Magento/CheckoutAgreements/Model/Resource/Agreement.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\CheckoutAgreements\Model\Resource;
 
 /**
diff --git a/app/code/Magento/CheckoutAgreements/Model/Resource/Agreement/Collection.php b/app/code/Magento/CheckoutAgreements/Model/Resource/Agreement/Collection.php
index e62b3ed73ea8658e4843524b06f4231a54e9470e..163474a2c62d4ed05bf4c195cc89d77644ce496f 100644
--- a/app/code/Magento/CheckoutAgreements/Model/Resource/Agreement/Collection.php
+++ b/app/code/Magento/CheckoutAgreements/Model/Resource/Agreement/Collection.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\CheckoutAgreements\Model\Resource\Agreement;
 
 /**
diff --git a/app/code/Magento/CheckoutAgreements/Service/V1/Agreement/ReadService.php b/app/code/Magento/CheckoutAgreements/Service/V1/Agreement/ReadService.php
index ff5684b6c4537ea10dee9c2cb0e522faca691781..68c68ee8cdfec54083e6b8c97cc56cd218c7fa56 100644
--- a/app/code/Magento/CheckoutAgreements/Service/V1/Agreement/ReadService.php
+++ b/app/code/Magento/CheckoutAgreements/Service/V1/Agreement/ReadService.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\CheckoutAgreements\Service\V1\Agreement;
 
 use Magento\CheckoutAgreements\Model\Resource\Agreement\CollectionFactory as AgreementCollectionFactory;
diff --git a/app/code/Magento/CheckoutAgreements/composer.json b/app/code/Magento/CheckoutAgreements/composer.json
index 0e41b386f1a71292c8b589116c1483630e64dfee..d5a47c50bc4b0d954bde20450cd85d216d6997ed 100644
--- a/app/code/Magento/CheckoutAgreements/composer.json
+++ b/app/code/Magento/CheckoutAgreements/composer.json
@@ -3,14 +3,14 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-checkout": "0.42.0-beta3",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-checkout": "0.42.0-beta4",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/CheckoutAgreements/view/frontend/templates/agreements.phtml b/app/code/Magento/CheckoutAgreements/view/frontend/templates/agreements.phtml
index 41effe8f9898b7246bf7cb470916dfc4d391c11b..783fcc4497b0705d134cf0f711de1225c0300e0a 100644
--- a/app/code/Magento/CheckoutAgreements/view/frontend/templates/agreements.phtml
+++ b/app/code/Magento/CheckoutAgreements/view/frontend/templates/agreements.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/CheckoutAgreements/view/frontend/templates/multishipping_agreements.phtml b/app/code/Magento/CheckoutAgreements/view/frontend/templates/multishipping_agreements.phtml
index 8d8d89abdbe471867f45fdd15c8bd7b651c895c4..decebb582354c710dec24a614c0076896ca5aeeb 100644
--- a/app/code/Magento/CheckoutAgreements/view/frontend/templates/multishipping_agreements.phtml
+++ b/app/code/Magento/CheckoutAgreements/view/frontend/templates/multishipping_agreements.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/Cms/Block/Adminhtml/Page/Edit/Tab/Main.php b/app/code/Magento/Cms/Block/Adminhtml/Page/Edit/Tab/Main.php
index 1c6a982f545b4ea72fca90a1cdbdaee9aee4523c..7bf1236e1ee1313230bfd59dceec7e40f0fcf3a4 100644
--- a/app/code/Magento/Cms/Block/Adminhtml/Page/Edit/Tab/Main.php
+++ b/app/code/Magento/Cms/Block/Adminhtml/Page/Edit/Tab/Main.php
@@ -37,6 +37,7 @@ class Main extends \Magento\Backend\Block\Widget\Form\Generic implements \Magent
      * Prepare form
      *
      * @return $this
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _prepareForm()
     {
diff --git a/app/code/Magento/Cms/Block/Adminhtml/Page/Grid.php b/app/code/Magento/Cms/Block/Adminhtml/Page/Grid.php
index 966831d68ccf734966270e584db4cd0bf0a41348..ce330ce17a0b4ed1b7a4d2beef587060ab6cf27f 100644
--- a/app/code/Magento/Cms/Block/Adminhtml/Page/Grid.php
+++ b/app/code/Magento/Cms/Block/Adminhtml/Page/Grid.php
@@ -176,6 +176,7 @@ class Grid extends \Magento\Backend\Block\Widget\Grid\Extended
      * @param \Magento\Framework\Data\Collection $collection
      * @param \Magento\Framework\Object $column
      * @return void
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     protected function _filterStoreCondition($collection, \Magento\Framework\Object $column)
     {
diff --git a/app/code/Magento/Cms/Block/Block.php b/app/code/Magento/Cms/Block/Block.php
index 7061c9f42d2355408f23dfc5c144f5d2460b358f..2f8f28e4334fc17c2f112217efbb9aad8c4f3cf0 100644
--- a/app/code/Magento/Cms/Block/Block.php
+++ b/app/code/Magento/Cms/Block/Block.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Cms\Block;
 
 /**
diff --git a/app/code/Magento/Cms/Controller/Adminhtml/Block/Edit.php b/app/code/Magento/Cms/Controller/Adminhtml/Block/Edit.php
index 20c6ef8e797691edbca3328165dc24032c32e84f..9214ba6354f13a3ed087dea1c341756af5c10961 100644
--- a/app/code/Magento/Cms/Controller/Adminhtml/Block/Edit.php
+++ b/app/code/Magento/Cms/Controller/Adminhtml/Block/Edit.php
@@ -12,6 +12,7 @@ class Edit extends \Magento\Cms\Controller\Adminhtml\Block
      * Edit CMS block
      *
      * @return void
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function execute()
     {
diff --git a/app/code/Magento/Cms/Controller/Adminhtml/Page/Edit.php b/app/code/Magento/Cms/Controller/Adminhtml/Page/Edit.php
index 4c3a0427bb553bae79e1c316af91104b09ca50c7..1eea746d46d08c5d95692fc9333bd29efd74d1ae 100644
--- a/app/code/Magento/Cms/Controller/Adminhtml/Page/Edit.php
+++ b/app/code/Magento/Cms/Controller/Adminhtml/Page/Edit.php
@@ -60,6 +60,7 @@ class Edit extends \Magento\Backend\App\Action
      * Edit CMS page
      *
      * @return void
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function execute()
     {
diff --git a/app/code/Magento/Cms/Controller/Index/Index.php b/app/code/Magento/Cms/Controller/Index/Index.php
index a1f99a751d90682108ed8bfc5cf3415c61096663..9fa1e103882df79132ff5364a5928a6219efb268 100644
--- a/app/code/Magento/Cms/Controller/Index/Index.php
+++ b/app/code/Magento/Cms/Controller/Index/Index.php
@@ -13,6 +13,7 @@ class Index extends \Magento\Framework\App\Action\Action
      *
      * @param string|null $coreRoute
      * @return void
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function execute($coreRoute = null)
     {
diff --git a/app/code/Magento/Cms/Helper/Page.php b/app/code/Magento/Cms/Helper/Page.php
index be765e259f4ad4e547db55a93249824e65baa933..b6ce2979c70d2a0e901bf71b0d814775a3015674 100644
--- a/app/code/Magento/Cms/Helper/Page.php
+++ b/app/code/Magento/Cms/Helper/Page.php
@@ -93,6 +93,7 @@ class Page extends \Magento\Framework\App\Helper\AbstractHelper
      * @param \Magento\Framework\Escaper $escaper
      * @param \Magento\Framework\App\ViewInterface $view
      * @param \Magento\Framework\View\Page\Config $pageConfig
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\App\Helper\Context $context,
@@ -140,6 +141,8 @@ class Page extends \Magento\Framework\App\Helper\AbstractHelper
      * @param int $pageId
      * @param bool $renderLayout
      * @return bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _renderPage(Action $action, $pageId = null, $renderLayout = true)
     {
diff --git a/app/code/Magento/Cms/Model/Resource/Block.php b/app/code/Magento/Cms/Model/Resource/Block.php
index 9c554253d2940ddc050be867abcc21cae58779ce..894aa6d629576134cfa51e517905d78aa45aa23c 100644
--- a/app/code/Magento/Cms/Model/Resource/Block.php
+++ b/app/code/Magento/Cms/Model/Resource/Block.php
@@ -194,6 +194,7 @@ class Block extends \Magento\Framework\Model\Resource\Db\AbstractDb
      *
      * @param \Magento\Framework\Model\AbstractModel $object
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsUniqueBlockToStores(\Magento\Framework\Model\AbstractModel $object)
     {
diff --git a/app/code/Magento/Cms/Model/Resource/CmsCriteriaMapper.php b/app/code/Magento/Cms/Model/Resource/CmsCriteriaMapper.php
index 60305493e002f077568558bdc8c28984aae1a179..ffac24c942d62253aed5c41b61564ef26d0fdc3e 100644
--- a/app/code/Magento/Cms/Model/Resource/CmsCriteriaMapper.php
+++ b/app/code/Magento/Cms/Model/Resource/CmsCriteriaMapper.php
@@ -38,6 +38,7 @@ class CmsCriteriaMapper extends GenericMapper
      *
      * @param bool $flag
      * @return void
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function mapFirstStoreFlag($flag)
     {
diff --git a/app/code/Magento/Cms/Model/Resource/Page.php b/app/code/Magento/Cms/Model/Resource/Page.php
index d45a2001f65af00168f5cd3ed015fea1e7df114c..4efe1734c056c1177cf69944b27f4cb9934fed51 100644
--- a/app/code/Magento/Cms/Model/Resource/Page.php
+++ b/app/code/Magento/Cms/Model/Resource/Page.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Cms\Model\Resource;
 
 /**
diff --git a/app/code/Magento/Cms/Model/Wysiwyg/Config.php b/app/code/Magento/Cms/Model/Wysiwyg/Config.php
index 3c6e755712a05aac54196966e3fb9a70886ccfe0..7fd5b26290dfc090bed06886557bb8919ed68b39 100644
--- a/app/code/Magento/Cms/Model/Wysiwyg/Config.php
+++ b/app/code/Magento/Cms/Model/Wysiwyg/Config.php
@@ -100,6 +100,7 @@ class Config extends \Magento\Framework\Object
      * @param \Magento\Store\Model\StoreManagerInterface $storeManager
      * @param array $windowSize
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Backend\Model\UrlInterface $backendUrl,
diff --git a/app/code/Magento/Cms/Model/Wysiwyg/Images/Storage.php b/app/code/Magento/Cms/Model/Wysiwyg/Images/Storage.php
index 516b6121012b8c9f2af84fd003b60f6998281fb3..18cf095879c3703cb41a91b4cca845760cc9e558 100644
--- a/app/code/Magento/Cms/Model/Wysiwyg/Images/Storage.php
+++ b/app/code/Magento/Cms/Model/Wysiwyg/Images/Storage.php
@@ -12,6 +12,8 @@ use Magento\Framework\App\Filesystem\DirectoryList;
  * Wysiwyg Images model
  *
  * @SuppressWarnings(PHPMD.LongVariable)
+ * @SuppressWarnings(PHPMD.TooManyFields)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Storage extends \Magento\Framework\Object
 {
@@ -187,6 +189,8 @@ class Storage extends \Magento\Framework\Object
      *
      * @param string $path Parent directory path
      * @return \Magento\Framework\Data\Collection\Filesystem
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function getDirsCollection($path)
     {
diff --git a/app/code/Magento/Cms/Model/Wysiwyg/Images/Storage/Collection.php b/app/code/Magento/Cms/Model/Wysiwyg/Images/Storage/Collection.php
index 8fc88a3e673ff4cc2ad0c3dd44d69cedb9fd61f1..4971fd1f68fcd36c4133f3feee216840d2bde947 100644
--- a/app/code/Magento/Cms/Model/Wysiwyg/Images/Storage/Collection.php
+++ b/app/code/Magento/Cms/Model/Wysiwyg/Images/Storage/Collection.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Cms\Model\Wysiwyg\Images\Storage;
 
 use Magento\Framework\App\Filesystem\DirectoryList;
diff --git a/app/code/Magento/Cms/composer.json b/app/code/Magento/Cms/composer.json
index 1bab1473f233a1cd74523c0115655ac7ebfc5a36..88465c8ad4529ed5c115487f9258b384a26e823d 100644
--- a/app/code/Magento/Cms/composer.json
+++ b/app/code/Magento/Cms/composer.json
@@ -3,19 +3,19 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-core": "0.42.0-beta3",
-        "magento/module-theme": "0.42.0-beta3",
-        "magento/module-widget": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/module-catalog": "0.42.0-beta3",
-        "magento/module-email": "0.42.0-beta3",
-        "magento/module-ui": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-core": "0.42.0-beta4",
+        "magento/module-theme": "0.42.0-beta4",
+        "magento/module-widget": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/module-catalog": "0.42.0-beta4",
+        "magento/module-email": "0.42.0-beta4",
+        "magento/module-ui": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/Cms/data/cms_setup/data-install-2.0.0.php b/app/code/Magento/Cms/data/cms_setup/data-install-2.0.0.php
index 7e1d604eea598cd1b5d18e16649843fa95a741c6..46847bf5cff2abe633c7f1b55d675599ba6e52f6 100644
--- a/app/code/Magento/Cms/data/cms_setup/data-install-2.0.0.php
+++ b/app/code/Magento/Cms/data/cms_setup/data-install-2.0.0.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Cms\Model\Resource\Setup */
 
 $cmsPages = [
@@ -34,7 +36,7 @@ $cmsPages = [
         'page_layout' => '1column',
         'identifier' => 'enable-cookies',
         'content_heading' => 'What are Cookies?',
-        'content' => "<div class=\"message notice\">\r\n            <div>Please enable cookies in your web browser to continue.</div>\r\n            </div>\r\n            <p>Cookies are short pieces of data that are sent to your computer when you visit a website. On later visits, this data is then returned to that website. Cookies allow us to recognize you automatically whenever you visit our site so that we can personalize your experience and provide you with better service. We also use cookies (and similar browser data, such as Flash cookies) for fraud prevention and other purposes. If your web browser is set to refuse cookies from our website, you will not be able to complete a purchase or take advantage of certain features of our website, such as storing items in your Shopping Cart or receiving personalized recommendations. As a result, we strongly encourage you to configure your web browser to accept cookies from our website.</p>\r\n    <h2 class=\"subtitle\">Enabling Cookies</h2>\r\n    <ul class=\"disc\">\r\n        <li><a href=\"#ie7\">Internet Explorer 7.x</a></li>\r\n        <li><a href=\"#ie6\">Internet Explorer 6.x</a></li>\r\n        <li><a href=\"#firefox\">Mozilla/Firefox</a></li>\r\n        <li><a href=\"#opera\">Opera 7.x</a></li>\r\n    </ul>\r\n    <h3><a name=\"ie7\"></a>Internet Explorer 7.x</h3>\r\n    <ol>\r\n        <li>\r\n            <p>Start Internet Explorer</p>\r\n        </li>\r\n        <li>\r\n            <p>Under the <strong>Tools</strong> menu, click <strong>Internet Options</strong></p>\r\n            <p><img src=\"{{view url=\"Magento_Cms::images/cookies/ie7-1.gif\"  area=frontend}}\" alt=\"\" /></p>\r\n        </li>\r\n        <li>\r\n            <p>Click the <strong>Privacy</strong> tab</p>\r\n            <p><img src=\"{{view url=\"Magento_Cms::images/cookies/ie7-2.gif\"  area=frontend}}\" alt=\"\" /></p>\r\n        </li>\r\n        <li>\r\n            <p>Click the <strong>Advanced</strong> button</p>\r\n            <p><img src=\"{{view url=\"Magento_Cms::images/cookies/ie7-3.gif\"  area=frontend}}\" alt=\"\" /></p>\r\n        </li>\r\n        <li>\r\n            <p>Put a check mark in the box for <strong>Override Automatic Cookie Handling</strong>, put another check mark in the <strong>Always accept session cookies </strong>box</p>\r\n            <p><img src=\"{{view url=\"Magento_Cms::images/cookies/ie7-4.gif\"  area=frontend}}\" alt=\"\" /></p>\r\n        </li>\r\n        <li>\r\n            <p>Click <strong>OK</strong></p>\r\n            <p><img src=\"{{view url=\"Magento_Cms::images/cookies/ie7-5.gif\"  area=frontend}}\" alt=\"\" /></p>\r\n        </li>\r\n        <li>\r\n            <p>Click <strong>OK</strong></p>\r\n            <p><img src=\"{{view url=\"Magento_Cms::images/cookies/ie7-6.gif\"  area=frontend}}\" alt=\"\" /></p>\r\n        </li>\r\n        <li>\r\n            <p>Restart Internet Explore</p>\r\n        </li>\r\n    </ol>\r\n    <p class=\"a-top\"><a href=\"#top\">Back to Top</a></p>\r\n    <h3><a name=\"ie6\"></a>Internet Explorer 6.x</h3>\r\n    <ol>\r\n        <li>\r\n            <p>Select <strong>Internet Options</strong> from the Tools menu</p>\r\n            <p><img src=\"{{view url=\"Magento_Cms::images/cookies/ie6-1.gif\"  area=frontend}}\" alt=\"\" /></p>\r\n        </li>\r\n        <li>\r\n            <p>Click on the <strong>Privacy</strong> tab</p>\r\n        </li>\r\n        <li>\r\n            <p>Click the <strong>Default</strong> button (or manually slide the bar down to <strong>Medium</strong>) under <strong>Settings</strong>. Click <strong>OK</strong></p>\r\n            <p><img src=\"{{view url=\"Magento_Cms::images/cookies/ie6-2.gif\"  area=frontend}}\" alt=\"\" /></p>\r\n        </li>\r\n    </ol>\r\n    <p class=\"a-top\"><a href=\"#top\">Back to Top</a></p>\r\n    <h3><a name=\"firefox\"></a>Mozilla/Firefox</h3>\r\n    <ol>\r\n        <li>\r\n            <p>Click on the <strong>Tools</strong>-menu in Mozilla</p>\r\n        </li>\r\n        <li>\r\n            <p>Click on the <strong>Options...</strong> item in the menu - a new window open</p>\r\n        </li>\r\n        <li>\r\n            <p>Click on the <strong>Privacy</strong> selection in the left part of the window. (See image below)</p>\r\n            <p><img src=\"{{view url=\"Magento_Cms::images/cookies/firefox.png\"  area=frontend}}\" alt=\"\" /></p>\r\n        </li>\r\n        <li>\r\n            <p>Expand the <strong>Cookies</strong> section</p>\r\n        </li>\r\n        <li>\r\n            <p>Check the <strong>Enable cookies</strong> and <strong>Accept cookies normally</strong> checkboxes</p>\r\n        </li>\r\n        <li>\r\n            <p>Save changes by clicking <strong>Ok</strong>.</p>\r\n        </li>\r\n    </ol>\r\n    <p class=\"a-top\"><a href=\"#top\">Back to Top</a></p>\r\n    <h3><a name=\"opera\"></a>Opera 7.x</h3>\r\n    <ol>\r\n        <li>\r\n            <p>Click on the <strong>Tools</strong> menu in Opera</p>\r\n        </li>\r\n        <li>\r\n            <p>Click on the <strong>Preferences...</strong> item in the menu - a new window open</p>\r\n        </li>\r\n        <li>\r\n            <p>Click on the <strong>Privacy</strong> selection near the bottom left of the window. (See image below)</p>\r\n            <p><img src=\"{{view url=\"Magento_Cms::images/cookies/opera.png\"  area=frontend}}\" alt=\"\" /></p>\r\n        </li>\r\n        <li>\r\n            <p>The <strong>Enable cookies</strong> checkbox must be checked, and <strong>Accept all cookies</strong> should be selected in the &quot;<strong>Normal cookies</strong>&quot; drop-down</p>\r\n        </li>\r\n        <li>\r\n            <p>Save changes by clicking <strong>Ok</strong></p>\r\n        </li>\r\n    </ol>\r\n    <p class=\"a-top\"><a href=\"#top\">Back to Top</a></p>\r\n",
+        'content' => "<div class=\"enable-cookies cms-content\">\r\n<p>\"Cookies\" are little pieces of data we send when you visit our store. Cookies help us get to know you better and personalize your experience. Plus they help protect you and other shoppers from fraud.</p>\r\n<p style=\"margin-bottom: 20px;\">Set your browser to accept cookies so you can buy items, save items, and receive customized recommendations. Here’s how:</p>\r\n<ul>\r\n<li><a href=\"https://support.google.com/accounts/answer/61416?hl=en\" target=\"_blank\">Google Chrome</a></li>\r\n<li><a href=\"http://windows.microsoft.com/en-us/internet-explorer/delete-manage-cookies\" target=\"_blank\">Internet Explorer</a></li>\r\n<li><a href=\"http://support.apple.com/kb/PH19214\" target=\"_blank\">Safari</a></li>\r\n<li><a href=\"https://support.mozilla.org/en-US/kb/enable-and-disable-cookies-website-preferences\" target=\"_blank\">Mozilla/Firefox</a></li>\r\n</ul>\r\n</div>",
         'is_active' => 1,
         'stores' => [0]
     ]
diff --git a/app/code/Magento/Cms/view/adminhtml/templates/browser/content.phtml b/app/code/Magento/Cms/view/adminhtml/templates/browser/content.phtml
index a22706aef475947f2e0a4508f6b004eb155227b0..e002bfe7d65b873c20bcfc3c9ea8de5a369918af 100644
--- a/app/code/Magento/Cms/view/adminhtml/templates/browser/content.phtml
+++ b/app/code/Magento/Cms/view/adminhtml/templates/browser/content.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
  /** @var $this \Magento\Cms\Block\Adminhtml\Wysiwyg\Images\Content */
 ?>
 
diff --git a/app/code/Magento/Cms/view/adminhtml/templates/browser/content/files.phtml b/app/code/Magento/Cms/view/adminhtml/templates/browser/content/files.phtml
index 8e5ced05020d9d7b323d1ef8e788a23f9848ec79..131494d5a3a895a79dfa4ffe60fc2bafb3b241c6 100644
--- a/app/code/Magento/Cms/view/adminhtml/templates/browser/content/files.phtml
+++ b/app/code/Magento/Cms/view/adminhtml/templates/browser/content/files.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
  /** @var $this \Magento\Cms\Block\Adminhtml\Wysiwyg\Images\Content\Files */
 
 $_width  = $this->getImagesWidth();
diff --git a/app/code/Magento/Cms/view/adminhtml/templates/browser/content/uploader.phtml b/app/code/Magento/Cms/view/adminhtml/templates/browser/content/uploader.phtml
index e5875ec8174208a4d9bab6067bc9c971400232c4..c76e6fddfeaefc33f80ca24e001e540fd2222d32 100644
--- a/app/code/Magento/Cms/view/adminhtml/templates/browser/content/uploader.phtml
+++ b/app/code/Magento/Cms/view/adminhtml/templates/browser/content/uploader.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Cms\Block\Adminhtml\Wysiwyg\Images\Content\Uploader */
 ?>
 
@@ -21,7 +24,7 @@
             <div class="clear"></div>
         </div>
     </script>
-    <script type="text/javascript">
+    <script>
 require(["jquery","jquery/file-uploader","jquery/template"], function($){
     $(function () {
             $('#<?php echo $this->getHtmlId() ?> .fileupload').fileupload({
diff --git a/app/code/Magento/Cms/view/adminhtml/templates/browser/tree.phtml b/app/code/Magento/Cms/view/adminhtml/templates/browser/tree.phtml
index ca7bb4c901c596e3db5a1ae3291fb4519abbbb98..8102ca5cc857bd791c86fe5fde243fa448902df5 100644
--- a/app/code/Magento/Cms/view/adminhtml/templates/browser/tree.phtml
+++ b/app/code/Magento/Cms/view/adminhtml/templates/browser/tree.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
  /** @var \Magento\Cms\Block\Adminhtml\Wysiwyg\Images\Tree $this */
 ?>
 <div class="tree-panel" >
diff --git a/app/code/Magento/Cms/view/adminhtml/templates/page/edit/form/renderer/content.phtml b/app/code/Magento/Cms/view/adminhtml/templates/page/edit/form/renderer/content.phtml
index 2b709598a31c3ed357c7635f815be03d7484b91c..ea70f5e6d9e5d1e81e3e15cb1b63a6e22816a2cc 100644
--- a/app/code/Magento/Cms/view/adminhtml/templates/page/edit/form/renderer/content.phtml
+++ b/app/code/Magento/Cms/view/adminhtml/templates/page/edit/form/renderer/content.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php $_element = $this->getElement() ?>
 
diff --git a/app/code/Magento/Cms/view/frontend/templates/content.phtml b/app/code/Magento/Cms/view/frontend/templates/content.phtml
index 7d2d1100cfcbdaf99851444fd0cd4f2bb61fd131..fe227c664e5ed03adca52c18f3abfd3d62a8d344 100644
--- a/app/code/Magento/Cms/view/frontend/templates/content.phtml
+++ b/app/code/Magento/Cms/view/frontend/templates/content.phtml
@@ -3,5 +3,8 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php echo $pageData->getPageContent(); ?>
diff --git a/app/code/Magento/Cms/view/frontend/templates/meta.phtml b/app/code/Magento/Cms/view/frontend/templates/meta.phtml
index e19cdfe72ddfe0fb5da21566f8adbd9381010659..bf71d4807b8257423f0e2b6a0de538cf5d8fcf5b 100644
--- a/app/code/Magento/Cms/view/frontend/templates/meta.phtml
+++ b/app/code/Magento/Cms/view/frontend/templates/meta.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php if ($pageData->getPageMetaKeywords()): ?>
 <meta name="keywords" content="<?php echo $pageData->getPageMetaKeywords() ?>"/>
diff --git a/app/code/Magento/Cms/view/frontend/web/images/about_us_img.jpg b/app/code/Magento/Cms/view/frontend/web/images/about_us_img.jpg
deleted file mode 100644
index 8bdaa23fa31e7ad01b54f0d8e866596575aaf758..0000000000000000000000000000000000000000
Binary files a/app/code/Magento/Cms/view/frontend/web/images/about_us_img.jpg and /dev/null differ
diff --git a/app/code/Magento/Cms/view/frontend/web/images/cookies/firefox.png b/app/code/Magento/Cms/view/frontend/web/images/cookies/firefox.png
deleted file mode 100644
index 12c8900133b6976040ca8525b9f4ba5424fec2f9..0000000000000000000000000000000000000000
Binary files a/app/code/Magento/Cms/view/frontend/web/images/cookies/firefox.png and /dev/null differ
diff --git a/app/code/Magento/Cms/view/frontend/web/images/cookies/ie6-1.gif b/app/code/Magento/Cms/view/frontend/web/images/cookies/ie6-1.gif
deleted file mode 100644
index 3d674caa215b0470d61a6785ff2f7ebbe9e88789..0000000000000000000000000000000000000000
Binary files a/app/code/Magento/Cms/view/frontend/web/images/cookies/ie6-1.gif and /dev/null differ
diff --git a/app/code/Magento/Cms/view/frontend/web/images/cookies/ie6-2.gif b/app/code/Magento/Cms/view/frontend/web/images/cookies/ie6-2.gif
deleted file mode 100644
index 68cf3c484a822facc93b1daab92ad5c06be5beb6..0000000000000000000000000000000000000000
Binary files a/app/code/Magento/Cms/view/frontend/web/images/cookies/ie6-2.gif and /dev/null differ
diff --git a/app/code/Magento/Cms/view/frontend/web/images/cookies/ie7-1.gif b/app/code/Magento/Cms/view/frontend/web/images/cookies/ie7-1.gif
deleted file mode 100644
index 55266c087852c2ad4c2a96be743a65b7344ae3a2..0000000000000000000000000000000000000000
Binary files a/app/code/Magento/Cms/view/frontend/web/images/cookies/ie7-1.gif and /dev/null differ
diff --git a/app/code/Magento/Cms/view/frontend/web/images/cookies/ie7-2.gif b/app/code/Magento/Cms/view/frontend/web/images/cookies/ie7-2.gif
deleted file mode 100644
index 6099376120940e8e3157e7761766f9d6ece61d1b..0000000000000000000000000000000000000000
Binary files a/app/code/Magento/Cms/view/frontend/web/images/cookies/ie7-2.gif and /dev/null differ
diff --git a/app/code/Magento/Cms/view/frontend/web/images/cookies/ie7-3.gif b/app/code/Magento/Cms/view/frontend/web/images/cookies/ie7-3.gif
deleted file mode 100644
index 719382b091767b91dfe121f7c240dc3b58bfd603..0000000000000000000000000000000000000000
Binary files a/app/code/Magento/Cms/view/frontend/web/images/cookies/ie7-3.gif and /dev/null differ
diff --git a/app/code/Magento/Cms/view/frontend/web/images/cookies/ie7-4.gif b/app/code/Magento/Cms/view/frontend/web/images/cookies/ie7-4.gif
deleted file mode 100644
index 660b58c2b5e88668a6cc4b0a5000c23341f30d12..0000000000000000000000000000000000000000
Binary files a/app/code/Magento/Cms/view/frontend/web/images/cookies/ie7-4.gif and /dev/null differ
diff --git a/app/code/Magento/Cms/view/frontend/web/images/cookies/ie7-5.gif b/app/code/Magento/Cms/view/frontend/web/images/cookies/ie7-5.gif
deleted file mode 100644
index 6f28257ca74705afd39595e2a2b99ea577eb7eb0..0000000000000000000000000000000000000000
Binary files a/app/code/Magento/Cms/view/frontend/web/images/cookies/ie7-5.gif and /dev/null differ
diff --git a/app/code/Magento/Cms/view/frontend/web/images/cookies/ie7-6.gif b/app/code/Magento/Cms/view/frontend/web/images/cookies/ie7-6.gif
deleted file mode 100644
index 5d8a2f0ddb40473c853e75f3089ebab404280a7d..0000000000000000000000000000000000000000
Binary files a/app/code/Magento/Cms/view/frontend/web/images/cookies/ie7-6.gif and /dev/null differ
diff --git a/app/code/Magento/Cms/view/frontend/web/images/cookies/opera.png b/app/code/Magento/Cms/view/frontend/web/images/cookies/opera.png
deleted file mode 100644
index 04ff63915ab140ac094942dd0678826ecfbc954b..0000000000000000000000000000000000000000
Binary files a/app/code/Magento/Cms/view/frontend/web/images/cookies/opera.png and /dev/null differ
diff --git a/app/code/Magento/CmsUrlRewrite/composer.json b/app/code/Magento/CmsUrlRewrite/composer.json
index 8566a9d1e0b737e3b250940947ec530df65d2251..8e5c888669acf958fc7e2d275136ac9cd3b97450 100644
--- a/app/code/Magento/CmsUrlRewrite/composer.json
+++ b/app/code/Magento/CmsUrlRewrite/composer.json
@@ -3,14 +3,14 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-cms": "0.42.0-beta3",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-url-rewrite": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-cms": "0.42.0-beta4",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-url-rewrite": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/ConfigurableImportExport/composer.json b/app/code/Magento/ConfigurableImportExport/composer.json
index 350b1f9762daeea97ea5657392cb731e2aa19c4d..5b7e1e3cd382eef13f9c05cce9cdcad36a7fa954 100644
--- a/app/code/Magento/ConfigurableImportExport/composer.json
+++ b/app/code/Magento/ConfigurableImportExport/composer.json
@@ -3,16 +3,16 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-catalog": "0.42.0-beta3",
-        "magento/module-catalog-import-export": "0.42.0-beta3",
-        "magento/module-eav": "0.42.0-beta3",
-        "magento/module-import-export": "0.42.0-beta3",
-        "magento/module-configurable-product": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-catalog": "0.42.0-beta4",
+        "magento/module-catalog-import-export": "0.42.0-beta4",
+        "magento/module-eav": "0.42.0-beta4",
+        "magento/module-import-export": "0.42.0-beta4",
+        "magento/module-configurable-product": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/ConfigurableProduct/Block/Adminhtml/Product/Attribute/Edit/Tab/Variations/Main.php b/app/code/Magento/ConfigurableProduct/Block/Adminhtml/Product/Attribute/Edit/Tab/Variations/Main.php
index b2d488a12a207f4ab24373070c4ecd1b3c06f52e..946ad7fe76593534fb2ca2bdbc6b76b0ca180c94 100644
--- a/app/code/Magento/ConfigurableProduct/Block/Adminhtml/Product/Attribute/Edit/Tab/Variations/Main.php
+++ b/app/code/Magento/ConfigurableProduct/Block/Adminhtml/Product/Attribute/Edit/Tab/Variations/Main.php
@@ -11,6 +11,9 @@
  */
 namespace Magento\ConfigurableProduct\Block\Adminhtml\Product\Attribute\Edit\Tab\Variations;
 
+/**
+ * @SuppressWarnings(PHPMD.DepthOfInheritance)
+ */
 class Main extends \Magento\Eav\Block\Adminhtml\Attribute\Edit\Main\AbstractMain
 {
     /**
diff --git a/app/code/Magento/ConfigurableProduct/Model/Product/Type/Configurable.php b/app/code/Magento/ConfigurableProduct/Model/Product/Type/Configurable.php
index 062e485013994c88485922d5b4c1ad8cc39dd85e..2cecd673d759ed10185bbf4e03d3a8bd07e688c9 100644
--- a/app/code/Magento/ConfigurableProduct/Model/Product/Type/Configurable.php
+++ b/app/code/Magento/ConfigurableProduct/Model/Product/Type/Configurable.php
@@ -824,7 +824,7 @@ class Configurable extends \Magento\Catalog\Model\Product\Type\AbstractType
     {
         parent::checkProductBuyState($product);
         $option = $product->getCustomOption('info_buyRequest');
-        if ($option instanceof \Magento\Sales\Model\Quote\Item\Option) {
+        if ($option instanceof \Magento\Quote\Model\Quote\Item\Option) {
             $buyRequest = new \Magento\Framework\Object(unserialize($option->getValue()));
             $attributes = $buyRequest->getSuperAttribute();
             if (is_array($attributes)) {
@@ -939,7 +939,7 @@ class Configurable extends \Magento\Catalog\Model\Product\Type\AbstractType
      * For example if product which was added to option already removed from catalog.
      *
      * @param  \Magento\Catalog\Model\Product|null $optionProduct
-     * @param  \Magento\Sales\Model\Quote\Item\Option $option
+     * @param  \Magento\Quote\Model\Quote\Item\Option $option
      * @param  \Magento\Catalog\Model\Product|null $product
      * @return $this
      * @SuppressWarnings(PHPMD.UnusedFormalParameter)
diff --git a/app/code/Magento/ConfigurableProduct/Model/Quote/Item/QuantityValidator/Initializer/Option/Plugin/ConfigurableProduct.php b/app/code/Magento/ConfigurableProduct/Model/Quote/Item/QuantityValidator/Initializer/Option/Plugin/ConfigurableProduct.php
index 42bf2de233bb73686849ac8b62669a68dec52b7a..d95f13b8766e848ff00c89723b0f60b3cd1d818a 100644
--- a/app/code/Magento/ConfigurableProduct/Model/Quote/Item/QuantityValidator/Initializer/Option/Plugin/ConfigurableProduct.php
+++ b/app/code/Magento/ConfigurableProduct/Model/Quote/Item/QuantityValidator/Initializer/Option/Plugin/ConfigurableProduct.php
@@ -14,8 +14,8 @@ class ConfigurableProduct
      *
      * @param \Magento\CatalogInventory\Model\Quote\Item\QuantityValidator\Initializer\Option $subject
      * @param callable $proceed
-     * @param \Magento\Sales\Model\Quote\Item\Option $option
-     * @param \Magento\Sales\Model\Quote\Item $quoteItem
+     * @param \Magento\Quote\Model\Quote\Item\Option $option
+     * @param \Magento\Quote\Model\Quote\Item $quoteItem
      *
      * @return \Magento\CatalogInventory\Api\Data\StockItemInterface
      * @SuppressWarnings(PHPMD.UnusedFormalParameter)
@@ -23,8 +23,8 @@ class ConfigurableProduct
     public function aroundGetStockItem(
         \Magento\CatalogInventory\Model\Quote\Item\QuantityValidator\Initializer\Option $subject,
         \Closure $proceed,
-        \Magento\Sales\Model\Quote\Item\Option $option,
-        \Magento\Sales\Model\Quote\Item $quoteItem
+        \Magento\Quote\Model\Quote\Item\Option $option,
+        \Magento\Quote\Model\Quote\Item $quoteItem
     ) {
         $stockItem = $proceed($option, $quoteItem);
         if ($quoteItem->getProductType() == \Magento\ConfigurableProduct\Model\Product\Type\Configurable::TYPE_CODE) {
diff --git a/app/code/Magento/ConfigurableProduct/composer.json b/app/code/Magento/ConfigurableProduct/composer.json
index 40614acdc7e8830de7022dd137727ab7584545fa..925cd49e100048db949051bec4dc5edc72cc52ba 100644
--- a/app/code/Magento/ConfigurableProduct/composer.json
+++ b/app/code/Magento/ConfigurableProduct/composer.json
@@ -3,23 +3,24 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-catalog": "0.42.0-beta3",
-        "magento/module-catalog-inventory": "0.42.0-beta3",
-        "magento/module-sales": "0.42.0-beta3",
-        "magento/module-core": "0.42.0-beta3",
-        "magento/module-checkout": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/module-eav": "0.42.0-beta3",
-        "magento/module-customer": "0.42.0-beta3",
-        "magento/module-catalog-rule": "0.42.0-beta3",
-        "magento/module-directory": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
-        "magento/module-webapi": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-catalog": "0.42.0-beta4",
+        "magento/module-catalog-inventory": "0.42.0-beta4",
+        "magento/module-sales": "0.42.0-beta4",
+        "magento/module-core": "0.42.0-beta4",
+        "magento/module-checkout": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/module-eav": "0.42.0-beta4",
+        "magento/module-customer": "0.42.0-beta4",
+        "magento/module-catalog-rule": "0.42.0-beta4",
+        "magento/module-directory": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
+        "magento/module-webapi": "0.42.0-beta4",
+        "magento/module-quote": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/ConfigurableProduct/etc/module.xml b/app/code/Magento/ConfigurableProduct/etc/module.xml
index 43a5bdd7713ff1d41ed0fc937b585696e5d80e3c..ed7bf55ba0a5a3c5995f7fe07185e0407ed89f97 100644
--- a/app/code/Magento/ConfigurableProduct/etc/module.xml
+++ b/app/code/Magento/ConfigurableProduct/etc/module.xml
@@ -12,6 +12,7 @@
             <module name="Magento_Msrp"/>
             <module name="Magento_CatalogInventory"/>
             <module name="Magento_Sales"/>
+            <module name="Magento_Quote"/>
             <module name="Magento_Checkout"/>
         </sequence>
     </module>
diff --git a/app/code/Magento/ConfigurableProduct/view/adminhtml/templates/catalog/product/attribute/js.phtml b/app/code/Magento/ConfigurableProduct/view/adminhtml/templates/catalog/product/attribute/js.phtml
index 97c312107045130831ac3d2c5c773e6db8f4fdb9..20dbf6c750fc1de9197714bd4762ea2c736eccc9 100644
--- a/app/code/Magento/ConfigurableProduct/view/adminhtml/templates/catalog/product/attribute/js.phtml
+++ b/app/code/Magento/ConfigurableProduct/view/adminhtml/templates/catalog/product/attribute/js.phtml
@@ -5,7 +5,7 @@
  * See COPYING.txt for license details.
  */
 ?>
-<script type="text/javascript">
+<script>
 require(["jquery", "js/theme", "prototype"], function(){
 
 function checkIsConfigurableVisibility()
diff --git a/app/code/Magento/ConfigurableProduct/view/adminhtml/templates/catalog/product/attribute/new/created.phtml b/app/code/Magento/ConfigurableProduct/view/adminhtml/templates/catalog/product/attribute/new/created.phtml
index 4c1c5f537474c5ef97f90bcc2831ac5e23b5c7ad..cc70ed304abf3e519017f9d6de6209db6c359828 100644
--- a/app/code/Magento/ConfigurableProduct/view/adminhtml/templates/catalog/product/attribute/new/created.phtml
+++ b/app/code/Magento/ConfigurableProduct/view/adminhtml/templates/catalog/product/attribute/new/created.phtml
@@ -5,7 +5,7 @@
  */
 /** @var $this \Magento\ConfigurableProduct\Block\Adminhtml\Product\Attribute\NewAttribute\Product\Created */
 ?>
-<script type="text/javascript">
+<script>
 (function ($) {
 
     var data = <?php echo $this->getAttributesBlockJson() ?>;
diff --git a/app/code/Magento/ConfigurableProduct/view/adminhtml/templates/catalog/product/attribute/set/js.phtml b/app/code/Magento/ConfigurableProduct/view/adminhtml/templates/catalog/product/attribute/set/js.phtml
index 89846a05d17854e16b714e6ad62f894bd4a02164..86aa4e4d7b5566fcd6bb1956122794bbe72484f1 100644
--- a/app/code/Magento/ConfigurableProduct/view/adminhtml/templates/catalog/product/attribute/set/js.phtml
+++ b/app/code/Magento/ConfigurableProduct/view/adminhtml/templates/catalog/product/attribute/set/js.phtml
@@ -4,8 +4,11 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
-<script type="text/javascript">
+<script>
 require(['jquery'], function(){
 ConfigurableNodeExists = function(currentNode) {
     for (var i in currentNode.childNodes ) {
diff --git a/app/code/Magento/ConfigurableProduct/view/adminhtml/templates/catalog/product/composite/fieldset/configurable.phtml b/app/code/Magento/ConfigurableProduct/view/adminhtml/templates/catalog/product/composite/fieldset/configurable.phtml
index c752bfe95ecddfd9c685dfc18241ae471cf58061..54ca1bb89b6cc3f1540adc1080ae19010fcfe926 100644
--- a/app/code/Magento/ConfigurableProduct/view/adminhtml/templates/catalog/product/composite/fieldset/configurable.phtml
+++ b/app/code/Magento/ConfigurableProduct/view/adminhtml/templates/catalog/product/composite/fieldset/configurable.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
  ?>
 
 <?php /* @var $this \Magento\ConfigurableProduct\Block\Adminhtml\Product\Composite\Fieldset\Configurable */ ?>
@@ -25,7 +28,7 @@
         </div>
     </div>
 </fieldset>
-<script type="text/javascript">
+<script>
 require([
     "Magento_ConfigurableProduct/js/configurable",
     "Magento_Catalog/catalog/product/composite/configure"
diff --git a/app/code/Magento/ConfigurableProduct/view/adminhtml/templates/catalog/product/edit/super/attribute-js-template.phtml b/app/code/Magento/ConfigurableProduct/view/adminhtml/templates/catalog/product/edit/super/attribute-js-template.phtml
index a039419161fae919683a8ac15d7799dfc44b2ef0..3870f9f7cd7d6b59ce684837066383d6ff5c1449 100644
--- a/app/code/Magento/ConfigurableProduct/view/adminhtml/templates/catalog/product/edit/super/attribute-js-template.phtml
+++ b/app/code/Magento/ConfigurableProduct/view/adminhtml/templates/catalog/product/edit/super/attribute-js-template.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /* @var $this \Magento\Framework\View\Element\Template */
 ?>
 <script data-template-for="configurable-attribute" type="text/x-jquery-tmpl">
diff --git a/app/code/Magento/ConfigurableProduct/view/adminhtml/templates/catalog/product/edit/super/attribute-template.phtml b/app/code/Magento/ConfigurableProduct/view/adminhtml/templates/catalog/product/edit/super/attribute-template.phtml
index ec22cc2ead7bc4ba7bae66739618968273e2248d..88919daee9bf51da1ef87a700003988109aa95bd 100644
--- a/app/code/Magento/ConfigurableProduct/view/adminhtml/templates/catalog/product/edit/super/attribute-template.phtml
+++ b/app/code/Magento/ConfigurableProduct/view/adminhtml/templates/catalog/product/edit/super/attribute-template.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /* @var $this \Magento\Framework\View\Element\Template */
 
 $havePriceVariation = array_reduce(
diff --git a/app/code/Magento/ConfigurableProduct/view/adminhtml/templates/catalog/product/edit/super/config.phtml b/app/code/Magento/ConfigurableProduct/view/adminhtml/templates/catalog/product/edit/super/config.phtml
index c4512eff4530491080630acaea8b4c0c8b08648e..ff251e507b34cde535878792bb1e5dc2f2feaa22 100644
--- a/app/code/Magento/ConfigurableProduct/view/adminhtml/templates/catalog/product/edit/super/config.phtml
+++ b/app/code/Magento/ConfigurableProduct/view/adminhtml/templates/catalog/product/edit/super/config.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
  /** @var $this \Magento\ConfigurableProduct\Block\Adminhtml\Product\Edit\Tab\Super\Config */
 
 use Magento\ConfigurableProduct\Model\Product\Type\Configurable;
@@ -39,7 +42,7 @@ use Magento\ConfigurableProduct\Model\Product\Type\Configurable;
         </div>
     </div>
 </div>
-<script type="text/javascript">
+<script>
 require([
     'jquery',
     'jquery/ui',
diff --git a/app/code/Magento/ConfigurableProduct/view/adminhtml/templates/catalog/product/edit/super/matrix.phtml b/app/code/Magento/ConfigurableProduct/view/adminhtml/templates/catalog/product/edit/super/matrix.phtml
index 2c5ab08bb75b05f895d666e63c4e7d77c3b5eb8c..350278a567e2f0221cad66b60c2049ae84bc2321 100644
--- a/app/code/Magento/ConfigurableProduct/view/adminhtml/templates/catalog/product/edit/super/matrix.phtml
+++ b/app/code/Magento/ConfigurableProduct/view/adminhtml/templates/catalog/product/edit/super/matrix.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\ConfigurableProduct\Block\Adminhtml\Product\Edit\Tab\Super\Config\Matrix */
 ?>
 <?php
@@ -254,7 +257,7 @@ $productByUsedAttributes = $this->getAssociatedProducts();
 <script data-template-for="variation-image" type="text/x-jquery-tmpl">
     <img src="${url}" class="variation" data-role="image"/>
 </script>
-<script type="text/javascript">
+<script>
 require([
     "jquery",
     "jquery/template",
diff --git a/app/code/Magento/ConfigurableProduct/view/adminhtml/templates/product/configurable/affected-attribute-set-selector/form.phtml b/app/code/Magento/ConfigurableProduct/view/adminhtml/templates/product/configurable/affected-attribute-set-selector/form.phtml
index 2f82dc3cea8e3994eed31eeac3a92a2314ef9596..8fbec783c9eecf9aceb93ea9e1cb70f800365670 100644
--- a/app/code/Magento/ConfigurableProduct/view/adminhtml/templates/product/configurable/affected-attribute-set-selector/form.phtml
+++ b/app/code/Magento/ConfigurableProduct/view/adminhtml/templates/product/configurable/affected-attribute-set-selector/form.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /* @var $this \Magento\Framework\View\Element\Template */
 ?>
 <div id="<?php echo $this->getNameInLayout() ?>" style="display:none" data-role="dialog" data-id="affected-attribute-set-selector">
diff --git a/app/code/Magento/ConfigurableProduct/view/adminhtml/templates/product/configurable/affected-attribute-set-selector/js.phtml b/app/code/Magento/ConfigurableProduct/view/adminhtml/templates/product/configurable/affected-attribute-set-selector/js.phtml
index dd468765d9a0ee65eb046ebc44b974913c1401e7..e152ac03776bc1845dda01ced8b348e22a3bf322 100644
--- a/app/code/Magento/ConfigurableProduct/view/adminhtml/templates/product/configurable/affected-attribute-set-selector/js.phtml
+++ b/app/code/Magento/ConfigurableProduct/view/adminhtml/templates/product/configurable/affected-attribute-set-selector/js.phtml
@@ -3,9 +3,12 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /* @var $this \Magento\ConfigurableProduct\Block\Product\Configurable\AttributeSelector */
 ?>
-<script type="text/javascript">
+<script>
 (function($){
     var $form;
 
diff --git a/app/code/Magento/ConfigurableProduct/view/adminhtml/templates/product/configurable/attribute-selector/js.phtml b/app/code/Magento/ConfigurableProduct/view/adminhtml/templates/product/configurable/attribute-selector/js.phtml
index 5a8c8629fec72e73ab9af98a65cf1e89a9486a5b..be4642e96cb12454e6f9e634672ea23688918145 100644
--- a/app/code/Magento/ConfigurableProduct/view/adminhtml/templates/product/configurable/attribute-selector/js.phtml
+++ b/app/code/Magento/ConfigurableProduct/view/adminhtml/templates/product/configurable/attribute-selector/js.phtml
@@ -6,7 +6,7 @@
 
 /** @var $this \Magento\ConfigurableProduct\Block\Product\Configurable\AttributeSelector */
 ?>
-<script type="text/javascript">
+<script>
 require(["jquery","mage/mage","mage/backend/suggest"], function($){
     var options = <?php echo $this->helper('Magento\Core\Helper\Data')->jsonEncode($this->getSuggestWidgetOptions())?>;
     $('#configurable-attribute-selector')
diff --git a/app/code/Magento/ConfigurableProduct/view/adminhtml/templates/product/configurable/stock/disabler.phtml b/app/code/Magento/ConfigurableProduct/view/adminhtml/templates/product/configurable/stock/disabler.phtml
index 45e2df4849c32e0d83708615a1fae2c0e079005e..4e46788c56a28d6d5c5489bd9d601c1a3ea9a2cd 100644
--- a/app/code/Magento/ConfigurableProduct/view/adminhtml/templates/product/configurable/stock/disabler.phtml
+++ b/app/code/Magento/ConfigurableProduct/view/adminhtml/templates/product/configurable/stock/disabler.phtml
@@ -4,7 +4,7 @@
  * See COPYING.txt for license details.
  */
 ?>
-<script type="text/javascript">
+<script>
 require(['jquery'], function($){
     $('[data-tab-panel=product-details]').on('stockbeforedisable', function(e) {
         var variations = $('[data-panel=product-variations]');
diff --git a/app/code/Magento/ConfigurableProduct/view/frontend/templates/js/components.phtml b/app/code/Magento/ConfigurableProduct/view/frontend/templates/js/components.phtml
index 99be8e37348cec69521e018a61f416324e582a94..43f7e9c30c0126f46204910ee749ef83ad81e815 100644
--- a/app/code/Magento/ConfigurableProduct/view/frontend/templates/js/components.phtml
+++ b/app/code/Magento/ConfigurableProduct/view/frontend/templates/js/components.phtml
@@ -3,5 +3,8 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php echo $this->getChildHtml() ?>
diff --git a/app/code/Magento/ConfigurableProduct/view/frontend/templates/product/view/type/options/configurable.phtml b/app/code/Magento/ConfigurableProduct/view/frontend/templates/product/view/type/options/configurable.phtml
index 76ce70156094bddb00c925d2196402b0d117d748..67e7df6afd16a6b4a5c032b797d60b9dc4f8e2d9 100644
--- a/app/code/Magento/ConfigurableProduct/view/frontend/templates/product/view/type/options/configurable.phtml
+++ b/app/code/Magento/ConfigurableProduct/view/frontend/templates/product/view/type/options/configurable.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php
@@ -26,7 +29,7 @@ $_attributes = $this->decorateArray($this->getAllowAttributes());
             </div>
         </div>
     <?php endforeach; ?>
-    <script type="text/javascript">
+    <script>
 require(["jquery", "Magento_ConfigurableProduct/js/configurable"], function($){
     $('#product_addtocart_form').configurable({"spConfig":<?php echo $this->getJsonConfig() ?>});
 });
diff --git a/app/code/Magento/Contact/composer.json b/app/code/Magento/Contact/composer.json
index e746193309c4fc48fba56667cdb759fef682a33a..9ef0d938edd9504ae43cd121b6da7637475611c3 100644
--- a/app/code/Magento/Contact/composer.json
+++ b/app/code/Magento/Contact/composer.json
@@ -3,15 +3,15 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-customer": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/module-cms": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-customer": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/module-cms": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/Contact/view/frontend/templates/form.phtml b/app/code/Magento/Contact/view/frontend/templates/form.phtml
index c8d6c3582a439192885e6c47899972f1b93735c1..203018742a85edac48b488daed4a2714e1378692 100644
--- a/app/code/Magento/Contact/view/frontend/templates/form.phtml
+++ b/app/code/Magento/Contact/view/frontend/templates/form.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <form class="form contact"
       action="<?php echo $this->getFormAction(); ?>"
diff --git a/app/code/Magento/Core/App/Router/Base.php b/app/code/Magento/Core/App/Router/Base.php
index e34fd166b9b986a0d58fdbfd895c1901dc37c3b8..fffca1867cb6eebb51615bf1fcc08c18a288601f 100644
--- a/app/code/Magento/Core/App/Router/Base.php
+++ b/app/code/Magento/Core/App/Router/Base.php
@@ -9,6 +9,10 @@ namespace Magento\Core\App\Router;
 
 use Magento\Framework\App\RequestInterface;
 
+/**
+ * @SuppressWarnings(PHPMD.TooManyFields)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class Base implements \Magento\Framework\App\RouterInterface
 {
     /**
@@ -117,6 +121,8 @@ class Base implements \Magento\Framework\App\RouterInterface
      * @param string $routerId
      * @param \Magento\Framework\Code\NameBuilder $nameBuilder
      * @throws \InvalidArgumentException
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function __construct(
         \Magento\Framework\App\Router\ActionList $actionList,
@@ -254,6 +260,8 @@ class Base implements \Magento\Framework\App\RouterInterface
      * @param \Magento\Framework\App\RequestInterface $request
      * @param array $params
      * @return \Magento\Framework\App\Action\Action|null
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function matchAction(\Magento\Framework\App\RequestInterface $request, array $params)
     {
@@ -345,6 +353,7 @@ class Base implements \Magento\Framework\App\RouterInterface
      * @param \Magento\Framework\App\RequestInterface $request
      * @param string $path
      * @return void
+     * @SuppressWarnings(PHPMD.ExitExpression)
      */
     protected function _checkShouldBeSecure(\Magento\Framework\App\RequestInterface $request, $path = '')
     {
diff --git a/app/code/Magento/Core/Model/Asset/Config.php b/app/code/Magento/Core/Model/Asset/Config.php
index 2960c751ac258bef1e258348e3203f25ec078289..817dd603a5f8e4ebbe3d4c9d368a4246e1ee4e00 100644
--- a/app/code/Magento/Core/Model/Asset/Config.php
+++ b/app/code/Magento/Core/Model/Asset/Config.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Core\Model\Asset;
 
 /**
diff --git a/app/code/Magento/Core/Model/File/Storage.php b/app/code/Magento/Core/Model/File/Storage.php
index 1961a8753289c1f5f4e38f697a2ea2cb24ab9178..540c0b8fb19a01444ea3282943f187f4540d4b0f 100644
--- a/app/code/Magento/Core/Model/File/Storage.php
+++ b/app/code/Magento/Core/Model/File/Storage.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Core\Model\File;
 
 use Magento\Framework\App\Filesystem\DirectoryList;
@@ -11,6 +14,7 @@ use Magento\Framework\Model\AbstractModel;
 
 /**
  * Class Storage
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Storage extends AbstractModel
 {
@@ -97,6 +101,7 @@ class Storage extends AbstractModel
      * @param \Magento\Framework\Model\Resource\AbstractResource $resource
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
@@ -195,6 +200,8 @@ class Storage extends AbstractModel
      *
      * @param  array $storage
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function synchronize($storage)
     {
diff --git a/app/code/Magento/Core/Model/File/Storage/Database.php b/app/code/Magento/Core/Model/File/Storage/Database.php
index eebaa64ddd5b23872fc85850f57d50af0406e96f..8770fcf34b68893a59b75f6808f1031a3ec3aa2a 100644
--- a/app/code/Magento/Core/Model/File/Storage/Database.php
+++ b/app/code/Magento/Core/Model/File/Storage/Database.php
@@ -53,6 +53,7 @@ class Database extends \Magento\Core\Model\File\Storage\Database\AbstractDatabas
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param null $connectionName
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
diff --git a/app/code/Magento/Core/Model/File/Storage/Directory/Database.php b/app/code/Magento/Core/Model/File/Storage/Directory/Database.php
index 1e14ed3cf0fa442e9db65498581b140c08ff9b93..74979050fd4b94f7578b61dd18c765debd266f86 100644
--- a/app/code/Magento/Core/Model/File/Storage/Directory/Database.php
+++ b/app/code/Magento/Core/Model/File/Storage/Directory/Database.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Core\Model\File\Storage\Directory;
 
 /**
@@ -40,6 +43,7 @@ class Database extends \Magento\Core\Model\File\Storage\Database\AbstractDatabas
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param null $connectionName
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
diff --git a/app/code/Magento/Core/Model/File/Storage/File.php b/app/code/Magento/Core/Model/File/Storage/File.php
index 589a72559cc58b9c338c47879a58172e501ec524..0ae3a40daf700d3ed94244039e247d9a13dda86a 100644
--- a/app/code/Magento/Core/Model/File/Storage/File.php
+++ b/app/code/Magento/Core/Model/File/Storage/File.php
@@ -131,6 +131,7 @@ class File
      * @param  int $count
      * @param  string $type
      * @return array|bool
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function collectData($offset = 0, $count = 100, $type = 'files')
     {
diff --git a/app/code/Magento/Core/Model/File/Storage/Flag.php b/app/code/Magento/Core/Model/File/Storage/Flag.php
index 6a455b13948b76cfa51dbef3044d3c571fd1300a..03887a4f81fdf8c7ecfe77a7226439c4926a3dd7 100644
--- a/app/code/Magento/Core/Model/File/Storage/Flag.php
+++ b/app/code/Magento/Core/Model/File/Storage/Flag.php
@@ -50,6 +50,7 @@ class Flag extends \Magento\Framework\Flag
      *
      * @param \Exception $e
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function passError(\Exception $e)
     {
diff --git a/app/code/Magento/Core/Model/File/Validator/AvailablePath.php b/app/code/Magento/Core/Model/File/Validator/AvailablePath.php
index 5381b8af10aee3a76b91b0165b2ed0505bc9689e..1b828a354ec3ef53c4e5bacbc88997225ef666af 100644
--- a/app/code/Magento/Core/Model/File/Validator/AvailablePath.php
+++ b/app/code/Magento/Core/Model/File/Validator/AvailablePath.php
@@ -191,6 +191,7 @@ class AvailablePath extends \Zend_Validate_Abstract
      * @param string $value     File/dir path
      * @return bool
      * @throws \Exception       Throw exception on empty both paths masks types
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function isValid($value)
     {
@@ -232,6 +233,8 @@ class AvailablePath extends \Zend_Validate_Abstract
      * @param string[] $paths          Protected/available paths masks
      * @param bool $protected       Paths masks is protected?
      * @return bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _isValidByPaths($valuePathInfo, $paths, $protected)
     {
diff --git a/app/code/Magento/Core/Model/File/Validator/NotProtectedExtension.php b/app/code/Magento/Core/Model/File/Validator/NotProtectedExtension.php
index e74a01f94de2100d82df8edd6675f99842e07e4c..a4e57209398de9e2512063da027d59de197d45ad 100644
--- a/app/code/Magento/Core/Model/File/Validator/NotProtectedExtension.php
+++ b/app/code/Magento/Core/Model/File/Validator/NotProtectedExtension.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Core\Model\File\Validator;
 
 /**
diff --git a/app/code/Magento/Core/Model/Layout/Merge.php b/app/code/Magento/Core/Model/Layout/Merge.php
index 49556843082e4cb3a545176e53086b7ab31903b8..7627c26dcea011b867262a0ec50fd466b0b4b183 100644
--- a/app/code/Magento/Core/Model/Layout/Merge.php
+++ b/app/code/Magento/Core/Model/Layout/Merge.php
@@ -10,6 +10,8 @@ use Magento\Framework\App\Filesystem\DirectoryList;
 
 /**
  * Layout merge model
+ * @SuppressWarnings(PHPMD.TooManyFields)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Merge implements \Magento\Framework\View\Layout\ProcessorInterface
 {
@@ -169,6 +171,7 @@ class Merge implements \Magento\Framework\View\Layout\ProcessorInterface
      * @param \Magento\Framework\Filesystem $filesystem
      * @param \Magento\Framework\View\Design\ThemeInterface $theme Non-injectable theme instance
      * @param string $cacheSuffix
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\View\DesignInterface $design,
diff --git a/app/code/Magento/Core/Model/Observer.php b/app/code/Magento/Core/Model/Observer.php
index f60375aeda72efd0f037469a033b256c5dbf90fe..d7f98a7af4a5dc555d4cc63c8f61706641e9f8c5 100644
--- a/app/code/Magento/Core/Model/Observer.php
+++ b/app/code/Magento/Core/Model/Observer.php
@@ -57,6 +57,7 @@ class Observer
      * @param \Magento\Framework\View\Asset\Repository $assetRepo
      * @param Theme\Registration $registration
      * @param \Psr\Log\LoggerInterface $logger
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function __construct(
         \Magento\Framework\App\Cache\Frontend\Pool $cacheFrontendPool,
diff --git a/app/code/Magento/Core/Model/Resource/Config.php b/app/code/Magento/Core/Model/Resource/Config.php
index 0bbc234e6bc9254dc6869c577c0a745161f064c3..b1f4795206d2d0b5841cd33845d0058994b6e6a0 100644
--- a/app/code/Magento/Core/Model/Resource/Config.php
+++ b/app/code/Magento/Core/Model/Resource/Config.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Core\Model\Resource;
 
 /**
diff --git a/app/code/Magento/Core/Model/Resource/Design.php b/app/code/Magento/Core/Model/Resource/Design.php
index df4bff17d80ce1b1c98f7146c2088c664757c95a..cc46d6be28404776160bcd2bd2f601143882837c 100644
--- a/app/code/Magento/Core/Model/Resource/Design.php
+++ b/app/code/Magento/Core/Model/Resource/Design.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Core\Model\Resource;
 
 use Magento\Framework\Stdlib\DateTime;
@@ -106,6 +109,8 @@ class Design extends \Magento\Framework\Model\Resource\Db\AbstractDb
      * @param string $dateTo
      * @param int $currentId
      * @return string
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _checkIntersection($storeId, $dateFrom, $dateTo, $currentId)
     {
diff --git a/app/code/Magento/Core/Model/Resource/Layout/Update.php b/app/code/Magento/Core/Model/Resource/Layout/Update.php
index d6dd5b7e001dc93bb9bc88bd465ab648c5e1ce41..00d3e0eff82816fc674d7c1fc3360fb6514b85a6 100644
--- a/app/code/Magento/Core/Model/Resource/Layout/Update.php
+++ b/app/code/Magento/Core/Model/Resource/Layout/Update.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Core\Model\Resource\Layout;
 
 /**
diff --git a/app/code/Magento/Core/Model/Resource/Variable.php b/app/code/Magento/Core/Model/Resource/Variable.php
index 0ed9582d16e438aa1970e7ef7001cb161723f594..89f12a20106ee768f78f1fdf52b1ef81bdb26822 100644
--- a/app/code/Magento/Core/Model/Resource/Variable.php
+++ b/app/code/Magento/Core/Model/Resource/Variable.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Core\Model\Resource;
 
 /**
diff --git a/app/code/Magento/Core/Model/TemplateEngine/Decorator/DebugHints.php b/app/code/Magento/Core/Model/TemplateEngine/Decorator/DebugHints.php
index fe7d4f5bde5f1de15a2f8f392727d4cb8af928d5..d08a2b358f49346da60a7f7126bca32ba8258947 100644
--- a/app/code/Magento/Core/Model/TemplateEngine/Decorator/DebugHints.php
+++ b/app/code/Magento/Core/Model/TemplateEngine/Decorator/DebugHints.php
@@ -5,6 +5,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Core\Model\TemplateEngine\Decorator;
 
 class DebugHints implements \Magento\Framework\View\TemplateEngineInterface
diff --git a/app/code/Magento/Core/Model/TemplateEngine/Plugin/DebugHints.php b/app/code/Magento/Core/Model/TemplateEngine/Plugin/DebugHints.php
index 72aa182d6f9f4fe782966b40f2c569370b395979..ee3a7e22f96c88cf283874599c4e0af3916f4931 100644
--- a/app/code/Magento/Core/Model/TemplateEngine/Plugin/DebugHints.php
+++ b/app/code/Magento/Core/Model/TemplateEngine/Plugin/DebugHints.php
@@ -5,6 +5,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Core\Model\TemplateEngine\Plugin;
 
 class DebugHints
diff --git a/app/code/Magento/Core/Model/Theme.php b/app/code/Magento/Core/Model/Theme.php
index 94d90023c5f0c556435e8df1a65a019510fa1424..be9ecc5ad6f53e83227949982999aa029ec489d2 100644
--- a/app/code/Magento/Core/Model/Theme.php
+++ b/app/code/Magento/Core/Model/Theme.php
@@ -6,7 +6,6 @@
 namespace Magento\Core\Model;
 
 use Magento\Framework\View\Design\ThemeInterface;
-use Magento\Framework\App\Filesystem\DirectoryList;
 
 /**
  * Theme model class
@@ -15,7 +14,6 @@ use Magento\Framework\App\Filesystem\DirectoryList;
  * @method string getParentThemePath()
  * @method string getParentId()
  * @method string getThemeTitle()
- * @method string getThemeVersion()
  * @method string getPreviewImage()
  * @method bool getIsFeatured()
  * @method int getThemeId()
@@ -27,7 +25,6 @@ use Magento\Framework\App\Filesystem\DirectoryList;
  * @method ThemeInterface setPackageCode(string $packageCode)
  * @method ThemeInterface setThemeCode(string $themeCode)
  * @method ThemeInterface setThemePath(string $themePath)
- * @method ThemeInterface setThemeVersion(string $themeVersion)
  * @method ThemeInterface setThemeTitle(string $themeTitle)
  * @method ThemeInterface setType(int $type)
  * @method ThemeInterface setCode(string $code)
diff --git a/app/code/Magento/Core/Model/Theme/Collection.php b/app/code/Magento/Core/Model/Theme/Collection.php
index c35e3b553d4d8d372536286f45e0edbe8f4fcb2b..9974d466ed9062466a993e0b617aa95be1546f83 100644
--- a/app/code/Magento/Core/Model/Theme/Collection.php
+++ b/app/code/Magento/Core/Model/Theme/Collection.php
@@ -217,7 +217,6 @@ class Collection extends \Magento\Framework\Data\Collection implements ListInter
             'area' => $pathData['area'],
             'theme_path' => $themePath,
             'code' => $themeCode,
-            'theme_version' => $themeConfig->getThemeVersion(),
             'theme_title' => $themeConfig->getThemeTitle(),
             'preview_image' => $media['preview_image'] ? $media['preview_image'] : null,
             'parent_theme_path' => $parentPath
diff --git a/app/code/Magento/Core/Model/Theme/Domain/Virtual.php b/app/code/Magento/Core/Model/Theme/Domain/Virtual.php
index 77c594e110a500cdf26fccd57a792ba0a0b180ec..265e7f00ff5cf1a786f2a681590b590c1110d861 100644
--- a/app/code/Magento/Core/Model/Theme/Domain/Virtual.php
+++ b/app/code/Magento/Core/Model/Theme/Domain/Virtual.php
@@ -119,7 +119,6 @@ class Virtual implements \Magento\Framework\View\Design\Theme\Domain\VirtualInte
             [
                 'parent_id' => $this->_theme->getId(),
                 'theme_path' => null,
-                'theme_version' => $this->_theme->getThemeVersion(),
                 'theme_title' => sprintf('%s - Staging', $this->_theme->getThemeTitle()),
                 'preview_image' => $this->_theme->getPreviewImage(),
                 'is_featured' => $this->_theme->getIsFeatured(),
diff --git a/app/code/Magento/Core/Model/Url/RouteParamsResolver.php b/app/code/Magento/Core/Model/Url/RouteParamsResolver.php
index f08c89fbbadbfeb10a8172920d696d3c4e5d506e..3cabde3cc42c9c2a20a71390a58dfc9cb5a3bc7e 100644
--- a/app/code/Magento/Core/Model/Url/RouteParamsResolver.php
+++ b/app/code/Magento/Core/Model/Url/RouteParamsResolver.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Core\Model\Url;
 
 class RouteParamsResolver extends \Magento\Framework\Object implements \Magento\Framework\Url\RouteParamsResolverInterface
@@ -50,6 +53,8 @@ class RouteParamsResolver extends \Magento\Framework\Object implements \Magento\
 
     /**
      * {@inheritdoc}
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function setRouteParams(array $data, $unsetOldParams = true)
     {
diff --git a/app/code/Magento/Core/Model/Variable/Config.php b/app/code/Magento/Core/Model/Variable/Config.php
index d6cda985cd31f61c53f321a1bf71fd3c6b069a76..aa4af98d5112832ebcc976e14ca7b7b9296328b3 100644
--- a/app/code/Magento/Core/Model/Variable/Config.php
+++ b/app/code/Magento/Core/Model/Variable/Config.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Variable Wysiwyg Plugin Config
  *
diff --git a/app/code/Magento/Core/composer.json b/app/code/Magento/Core/composer.json
index 3d356da4d534d007c378696255ba69175d8f7f04..ef8c29a7eba0183dc927bcffe05a4bee94e01e99 100644
--- a/app/code/Magento/Core/composer.json
+++ b/app/code/Magento/Core/composer.json
@@ -3,18 +3,18 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/module-cron": "0.42.0-beta3",
-        "magento/module-theme": "0.42.0-beta3",
-        "magento/module-eav": "0.42.0-beta3",
-        "magento/module-page-cache": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/module-cron": "0.42.0-beta4",
+        "magento/module-theme": "0.42.0-beta4",
+        "magento/module-eav": "0.42.0-beta4",
+        "magento/module-page-cache": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "lib-libxml": "*",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/Core/etc/di.xml b/app/code/Magento/Core/etc/di.xml
index cc73a8a5b388c8f7b565c7f114e408f4f851146e..3b6eb72b2b36b6088129f44d1e8a9be0a83e1da4 100644
--- a/app/code/Magento/Core/etc/di.xml
+++ b/app/code/Magento/Core/etc/di.xml
@@ -14,14 +14,12 @@
     <preference for="Magento\Framework\Authorization\PolicyInterface" type="Magento\Framework\Authorization\Policy\DefaultPolicy" />
     <preference for="Magento\Framework\Authorization\RoleLocatorInterface" type="Magento\Framework\Authorization\RoleLocator\DefaultRoleLocator" />
     <preference for="Magento\Framework\Session\SessionManagerInterface" type="Magento\Framework\Session\Generic" />
-    <preference for="Magento\Core\Model\DataService\ConfigInterface" type="Magento\Core\Model\DataService\Config" />
     <preference for="Magento\Framework\App\Config\ScopeConfigInterface" type="Magento\Framework\App\Config" />
     <preference for="Magento\Framework\App\Config\ReinitableConfigInterface" type="Magento\Framework\App\ReinitableConfig" />
     <preference for="Magento\Framework\App\Config\MutableScopeConfigInterface" type="Magento\Framework\App\MutableScopeConfig" />
     <preference for="Magento\Framework\App\Config\Storage\WriterInterface" type="Magento\Framework\App\Config\Storage\Writer" />
     <preference for="Magento\Framework\View\Design\Theme\FileInterface" type="Magento\Core\Model\Theme\File" />
     <preference for="Magento\Framework\Config\ConverterInterface" type="Magento\Framework\Config\Converter\Dom"/>
-    <preference for="Magento\Core\Model\Url\SecurityInfoInterface" type="Magento\Core\Model\Url\SecurityInfo\Proxy" />
     <preference for="Magento\Framework\App\DefaultPathInterface" type="Magento\Framework\App\DefaultPath\DefaultPath" />
     <preference for="Magento\Framework\Encryption\EncryptorInterface" type="Magento\Framework\Encryption\Encryptor" />
     <preference for="Magento\Framework\Filter\Encrypt\AdapterInterface" type="Magento\Framework\Filter\Encrypt\Basic" />
diff --git a/app/code/Magento/Core/etc/module.xml b/app/code/Magento/Core/etc/module.xml
index 6c194dba32a6ae23238d1d3e365ed469ce665b38..52b8b8f685f649e0b8ec140710c2f8db4c3e6234 100644
--- a/app/code/Magento/Core/etc/module.xml
+++ b/app/code/Magento/Core/etc/module.xml
@@ -6,6 +6,6 @@
  */
 -->
 <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../lib/internal/Magento/Framework/Module/etc/module.xsd">
-    <module name="Magento_Core" schema_version="2.0.0">
+    <module name="Magento_Core" schema_version="2.0.1">
     </module>
 </config>
diff --git a/app/code/Magento/Core/sql/core_setup/upgrade-2.0.0-2.0.1.php b/app/code/Magento/Core/sql/core_setup/upgrade-2.0.0-2.0.1.php
new file mode 100644
index 0000000000000000000000000000000000000000..30d0fe8d43cd0830684d9be3279b264de82d0e13
--- /dev/null
+++ b/app/code/Magento/Core/sql/core_setup/upgrade-2.0.0-2.0.1.php
@@ -0,0 +1,21 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+
+/* @var $installer \Magento\Setup\Module\SetupModule */
+$installer = $this;
+
+$installer->startSetup();
+$connection = $installer->getConnection();
+
+/**
+ * Remove column 'theme_version' from 'core_theme'
+ */
+$connection->dropColumn(
+    $installer->getTable('core_theme'),
+    'theme_version'
+);
+
+$installer->endSetup();
diff --git a/app/code/Magento/Core/view/adminhtml/web/prototype/magento.css b/app/code/Magento/Core/view/adminhtml/web/prototype/magento.css
index be4f9465643becb5b7942e7e5f5303b3d142a508..344536005b44070a572de6f2b2d7f79e0b995e6a 100644
--- a/app/code/Magento/Core/view/adminhtml/web/prototype/magento.css
+++ b/app/code/Magento/Core/view/adminhtml/web/prototype/magento.css
@@ -73,7 +73,7 @@
 
 .magento_title {
     color: #676056;
-    font: 20px/1 'CallunaSans', Arial, Helvetica, sans-serif;
+    font: 20px/1 Arial, Helvetica, sans-serif;
     padding: 20px 0 19px 20px;
 }
 
@@ -192,7 +192,7 @@
 .insert-title-inner > .title {
     color: #666;
     display: inline-block;
-    font-family: 'CallunaSans', Arial, sans-serif;
+    font-family: Arial, sans-serif;
     font-size: 18px;
     font-weight: normal;
     padding: 7px 0 10px;
diff --git a/app/code/Magento/Core/view/frontend/templates/messages.phtml b/app/code/Magento/Core/view/frontend/templates/messages.phtml
index 9c2e61b4a80a6f5af61b36730f438b56d15c6a4a..c5c19765b1fdf22b602e4f4fd749c184203e7756 100644
--- a/app/code/Magento/Core/view/frontend/templates/messages.phtml
+++ b/app/code/Magento/Core/view/frontend/templates/messages.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php  foreach ($types as $type) {
      if ($messages = $this->getMessages($type)) {
diff --git a/app/code/Magento/Core/view/frontend/templates/require_cookie.phtml b/app/code/Magento/Core/view/frontend/templates/require_cookie.phtml
index 17147633247c6c919b022d7345cdccd39131b0b3..175c8cdf2f87480fb4ee559849e1eb393ebe229b 100644
--- a/app/code/Magento/Core/view/frontend/templates/require_cookie.phtml
+++ b/app/code/Magento/Core/view/frontend/templates/require_cookie.phtml
@@ -5,7 +5,7 @@
  */
 ?>
 <?php /** @var \Magento\Core\Block\RequireCookie $this */ ?>
-<script type="text/javascript">
+<script>
 require([
     "jquery",
     "mage/mage"
diff --git a/app/code/Magento/Cron/Model/Backend/Config/Structure/Converter.php b/app/code/Magento/Cron/Model/Backend/Config/Structure/Converter.php
index d01472b6c3c62665bce9f678f330065b21a39dc7..dafb84f95ec90802c3f4d66e3eb6b72d27123b10 100644
--- a/app/code/Magento/Cron/Model/Backend/Config/Structure/Converter.php
+++ b/app/code/Magento/Cron/Model/Backend/Config/Structure/Converter.php
@@ -28,6 +28,7 @@ class Converter
      *
      * @return array
      * @SuppressWarnings(PHPMD.UnusedFormalParameter)
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function afterConvert(\Magento\Backend\Model\Config\Structure\Converter $subject, array $result)
     {
diff --git a/app/code/Magento/Cron/Model/Observer.php b/app/code/Magento/Cron/Model/Observer.php
index 06d50162570fb2216c2b9836f192676ea9147dab..2f8a1dafaa0a468261865288cb11bbdd0951566b 100644
--- a/app/code/Magento/Cron/Model/Observer.php
+++ b/app/code/Magento/Cron/Model/Observer.php
@@ -11,6 +11,9 @@ namespace Magento\Cron\Model;
 
 use Magento\Framework\App\Filesystem\DirectoryList;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class Observer
 {
     /**#@+
@@ -118,6 +121,9 @@ class Observer
      *
      * @param \Magento\Framework\Event\Observer $observer
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function dispatch($observer)
     {
diff --git a/app/code/Magento/Cron/Model/Schedule.php b/app/code/Magento/Cron/Model/Schedule.php
index e3bf41f7c5526af6fbb02a340a07c41fa1dd0ff5..aea7916579d9c4c99dcf2d43c643e1f65013e63d 100644
--- a/app/code/Magento/Cron/Model/Schedule.php
+++ b/app/code/Magento/Cron/Model/Schedule.php
@@ -128,6 +128,8 @@ class Schedule extends \Magento\Framework\Model\AbstractModel
      * @param int $num
      * @return bool
      * @throws Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function matchCronExpression($expr, $num)
     {
diff --git a/app/code/Magento/Cron/composer.json b/app/code/Magento/Cron/composer.json
index 5d0310756d4a3c5be4e74528e04477e8a10d2f8e..583d3a76a125a22be1573cb968eca50844afd293 100644
--- a/app/code/Magento/Cron/composer.json
+++ b/app/code/Magento/Cron/composer.json
@@ -3,13 +3,13 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/CurrencySymbol/Controller/Adminhtml/System/Currency/SaveRates.php b/app/code/Magento/CurrencySymbol/Controller/Adminhtml/System/Currency/SaveRates.php
index 7ffd6dd70d821aeaec55cf609a027464cb52da75..01ba604f11065b040db154c4d422b4882490a500 100644
--- a/app/code/Magento/CurrencySymbol/Controller/Adminhtml/System/Currency/SaveRates.php
+++ b/app/code/Magento/CurrencySymbol/Controller/Adminhtml/System/Currency/SaveRates.php
@@ -4,6 +4,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\CurrencySymbol\Controller\Adminhtml\System\Currency;
 
 class SaveRates extends \Magento\CurrencySymbol\Controller\Adminhtml\System\Currency
diff --git a/app/code/Magento/CurrencySymbol/Model/System/Currencysymbol.php b/app/code/Magento/CurrencySymbol/Model/System/Currencysymbol.php
index 507b7f84bdfeac0e1893dd1d46c2c76fb9fbb573..19261b5ba0c895f514b3549da4a67d0e35c774d0 100644
--- a/app/code/Magento/CurrencySymbol/Model/System/Currencysymbol.php
+++ b/app/code/Magento/CurrencySymbol/Model/System/Currencysymbol.php
@@ -139,6 +139,8 @@ class Currencysymbol
      * Returns currency symbol properties array based on config values
      *
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function getCurrencySymbolsData()
     {
diff --git a/app/code/Magento/CurrencySymbol/composer.json b/app/code/Magento/CurrencySymbol/composer.json
index fe027d918ba32c2545e43ff12f58cf3c76557f0d..508d4a1888d971217e917b927222ea056774e20d 100644
--- a/app/code/Magento/CurrencySymbol/composer.json
+++ b/app/code/Magento/CurrencySymbol/composer.json
@@ -3,16 +3,16 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-page-cache": "0.42.0-beta3",
-        "magento/module-directory": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/module-core": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-page-cache": "0.42.0-beta4",
+        "magento/module-directory": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/module-core": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/CurrencySymbol/view/adminhtml/templates/grid.phtml b/app/code/Magento/CurrencySymbol/view/adminhtml/templates/grid.phtml
index 3abb4f9cfc775bf5f5ad454cb505338159b2ea3b..539a5d49171c36a94158e2b553ed4bcc1ca77030 100644
--- a/app/code/Magento/CurrencySymbol/view/adminhtml/templates/grid.phtml
+++ b/app/code/Magento/CurrencySymbol/view/adminhtml/templates/grid.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
@@ -42,7 +45,7 @@
         </table>
     </div>
 </form>
-<script type="text/javascript">
+<script>
 require(['jquery', "mage/mage"], function(jQuery){
 
     jQuery('#currency-symbols-form').mage('form').mage('validation');
diff --git a/app/code/Magento/CurrencySymbol/view/adminhtml/templates/system/currency/rate/matrix.phtml b/app/code/Magento/CurrencySymbol/view/adminhtml/templates/system/currency/rate/matrix.phtml
index 974b993af11792913fd19ba2cb805595d29ec841..e749382db2c898163726317804efe4b1000881cc 100644
--- a/app/code/Magento/CurrencySymbol/view/adminhtml/templates/system/currency/rate/matrix.phtml
+++ b/app/code/Magento/CurrencySymbol/view/adminhtml/templates/system/currency/rate/matrix.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
@@ -55,7 +58,7 @@ $_rates = ($_newRates) ? $_newRates : $_oldRates;
         </div>
     </div>
 </form>
-<script type="text/javascript">
+<script>
 require(['jquery', "mage/mage"], function(jQuery){
 
     jQuery('#rate-form').mage('form').mage('validation');
diff --git a/app/code/Magento/CurrencySymbol/view/adminhtml/templates/system/currency/rate/services.phtml b/app/code/Magento/CurrencySymbol/view/adminhtml/templates/system/currency/rate/services.phtml
index 2ef9ce021ff20d4fe830437e99ddcf8855bfb61a..80eec83eef6c75f495486b388bbca5eff0242fda 100644
--- a/app/code/Magento/CurrencySymbol/view/adminhtml/templates/system/currency/rate/services.phtml
+++ b/app/code/Magento/CurrencySymbol/view/adminhtml/templates/system/currency/rate/services.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/CurrencySymbol/view/adminhtml/templates/system/currency/rates.phtml b/app/code/Magento/CurrencySymbol/view/adminhtml/templates/system/currency/rates.phtml
index e4b2a983985e3133dae3e99ecdff09c4866379f0..6834b24cffad9b34b3a4f8ce4c4db54aa29ed397 100644
--- a/app/code/Magento/CurrencySymbol/view/adminhtml/templates/system/currency/rates.phtml
+++ b/app/code/Magento/CurrencySymbol/view/adminhtml/templates/system/currency/rates.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/Customer/Block/Account/Dashboard/Sidebar.php b/app/code/Magento/Customer/Block/Account/Dashboard/Sidebar.php
index 2fc41fe16c7cd0653cdd5a662e713bf572c02213..e67181c7efa094d4d934377846d7cf654e917e0b 100644
--- a/app/code/Magento/Customer/Block/Account/Dashboard/Sidebar.php
+++ b/app/code/Magento/Customer/Block/Account/Dashboard/Sidebar.php
@@ -41,7 +41,7 @@ class Sidebar extends \Magento\Framework\View\Element\Template
     protected $_checkoutSession;
 
     /**
-     * @var \Magento\Sales\Model\QuoteFactory
+     * @var \Magento\Quote\Model\QuoteFactory
      */
     protected $_quoteFactory;
 
@@ -64,7 +64,7 @@ class Sidebar extends \Magento\Framework\View\Element\Template
      * @param \Magento\Framework\View\Element\Template\Context $context
      * @param \Magento\Customer\Model\Session $customerSession
      * @param \Magento\Checkout\Model\Session $checkoutSession
-     * @param \Magento\Sales\Model\QuoteFactory $quoteFactory
+     * @param \Magento\Quote\Model\QuoteFactory $quoteFactory
      * @param \Magento\Wishlist\Model\WishlistFactory $wishListFactory
      * @param \Magento\Catalog\Model\Resource\Product\Compare\Item\CollectionFactory $itemsCompareFactory
      * @param \Magento\Customer\Helper\Session\CurrentCustomer $currentCustomer
@@ -74,7 +74,7 @@ class Sidebar extends \Magento\Framework\View\Element\Template
         \Magento\Framework\View\Element\Template\Context $context,
         \Magento\Customer\Model\Session $customerSession,
         \Magento\Checkout\Model\Session $checkoutSession,
-        \Magento\Sales\Model\QuoteFactory $quoteFactory,
+        \Magento\Quote\Model\QuoteFactory $quoteFactory,
         \Magento\Wishlist\Model\WishlistFactory $wishListFactory,
         \Magento\Catalog\Model\Resource\Product\Compare\Item\CollectionFactory $itemsCompareFactory,
         \Magento\Customer\Helper\Session\CurrentCustomer $currentCustomer,
@@ -209,7 +209,7 @@ class Sidebar extends \Magento\Framework\View\Element\Template
     }
 
     /**
-     * @return \Magento\Sales\Model\Quote
+     * @return \Magento\Quote\Model\Quote
      */
     protected function _createQuote()
     {
diff --git a/app/code/Magento/Customer/Block/Adminhtml/Edit/Renderer/Region.php b/app/code/Magento/Customer/Block/Adminhtml/Edit/Renderer/Region.php
index 388825a43133db98c32b7181cef380a52e4066c2..d56e6a15325237d9d56329f53ed961b7ee9d3dc1 100644
--- a/app/code/Magento/Customer/Block/Adminhtml/Edit/Renderer/Region.php
+++ b/app/code/Magento/Customer/Block/Adminhtml/Edit/Renderer/Region.php
@@ -64,7 +64,7 @@ class Region extends \Magento\Backend\Block\AbstractBlock implements
         $html .= '<option value="">' . __('Please select') . '</option>';
         $html .= '</select>';
 
-        $html .= '<script type="text/javascript">' . "\n";
+        $html .= '<script>' . "\n";
         $html .= 'require(["prototype", "mage/adminhtml/form"], function(){';
         $html .= '$("' . $selectId . '").setAttribute("defaultValue", "' . $regionId . '");' . "\n";
         $html .= 'new regionUpdater("' .
diff --git a/app/code/Magento/Customer/Block/Adminhtml/Edit/Tab/Addresses.php b/app/code/Magento/Customer/Block/Adminhtml/Edit/Tab/Addresses.php
index 6aa58a32a0d0c3fe266a187add0ac9155c9dad85..1d6b498ffe26475c7e1c5bec1b9d11aec3cc7832 100644
--- a/app/code/Magento/Customer/Block/Adminhtml/Edit/Tab/Addresses.php
+++ b/app/code/Magento/Customer/Block/Adminhtml/Edit/Tab/Addresses.php
@@ -19,6 +19,7 @@ use Magento\Customer\Model\Address\Mapper as AddressMapper;
  * Customer addresses forms
  *
  * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ * @SuppressWarnings(PHPMD.DepthOfInheritance)
  */
 class Addresses extends GenericMetadata
 {
diff --git a/app/code/Magento/Customer/Block/Adminhtml/Edit/Tab/Cart.php b/app/code/Magento/Customer/Block/Adminhtml/Edit/Tab/Cart.php
index 479c3f2ff5641897e53b26647079ea684a53145a..5f381f0ddad0979e3efa4e6585a8ef09eedb7dd1 100644
--- a/app/code/Magento/Customer/Block/Adminhtml/Edit/Tab/Cart.php
+++ b/app/code/Magento/Customer/Block/Adminhtml/Edit/Tab/Cart.php
@@ -27,12 +27,12 @@ class Cart extends \Magento\Backend\Block\Widget\Grid\Extended
     protected $_dataCollectionFactory;
 
     /**
-     * @var \Magento\Sales\Model\QuoteRepository
+     * @var \Magento\Quote\Model\QuoteRepository
      */
     protected $quoteRepository;
 
     /**
-     * @var \Magento\Sales\Model\Quote
+     * @var \Magento\Quote\Model\Quote
      */
     protected $quote = null;
 
@@ -44,7 +44,7 @@ class Cart extends \Magento\Backend\Block\Widget\Grid\Extended
     /**
      * @param \Magento\Backend\Block\Template\Context $context
      * @param \Magento\Backend\Helper\Data $backendHelper
-     * @param \Magento\Sales\Model\QuoteRepository $quoteRepository
+     * @param \Magento\Quote\Model\QuoteRepository $quoteRepository
      * @param \Magento\Framework\Data\CollectionFactory $dataCollectionFactory
      * @param \Magento\Framework\Registry $coreRegistry
      * @param array $data
@@ -52,7 +52,7 @@ class Cart extends \Magento\Backend\Block\Widget\Grid\Extended
     public function __construct(
         \Magento\Backend\Block\Template\Context $context,
         \Magento\Backend\Helper\Data $backendHelper,
-        \Magento\Sales\Model\QuoteRepository $quoteRepository,
+        \Magento\Quote\Model\QuoteRepository $quoteRepository,
         \Magento\Framework\Data\CollectionFactory $dataCollectionFactory,
         \Magento\Framework\Registry $coreRegistry,
         array $data = []
@@ -219,7 +219,7 @@ class Cart extends \Magento\Backend\Block\Widget\Grid\Extended
     /**
      * Get the quote of the cart
      *
-     * @return \Magento\Sales\Model\Quote
+     * @return \Magento\Quote\Model\Quote
      */
     protected function getQuote()
     {
diff --git a/app/code/Magento/Customer/Block/Adminhtml/Edit/Tab/Reviews.php b/app/code/Magento/Customer/Block/Adminhtml/Edit/Tab/Reviews.php
index b7787ba79b7dbbf601ded309122b4a300ad7cd0d..f8a715c4213c29bb39555e78daca203f821085e6 100644
--- a/app/code/Magento/Customer/Block/Adminhtml/Edit/Tab/Reviews.php
+++ b/app/code/Magento/Customer/Block/Adminhtml/Edit/Tab/Reviews.php
@@ -11,6 +11,9 @@
  */
 namespace Magento\Customer\Block\Adminhtml\Edit\Tab;
 
+/**
+ * @SuppressWarnings(PHPMD.DepthOfInheritance)
+ */
 class Reviews extends \Magento\Review\Block\Adminhtml\Grid
 {
     /**
diff --git a/app/code/Magento/Customer/Block/Adminhtml/Edit/Tab/View/Cart.php b/app/code/Magento/Customer/Block/Adminhtml/Edit/Tab/View/Cart.php
index d40c48d2bfa2c92735698417d920765c8cc6f779..be1da04628effa45c596846011d03de346883922 100644
--- a/app/code/Magento/Customer/Block/Adminhtml/Edit/Tab/View/Cart.php
+++ b/app/code/Magento/Customer/Block/Adminhtml/Edit/Tab/View/Cart.php
@@ -28,12 +28,12 @@ class Cart extends \Magento\Backend\Block\Widget\Grid\Extended
     protected $_dataCollectionFactory;
 
     /**
-     * @var \Magento\Sales\Model\QuoteRepository
+     * @var \Magento\Quote\Model\QuoteRepository
      */
     protected $quoteRepository;
 
     /**
-     * @var \Magento\Sales\Model\Quote
+     * @var \Magento\Quote\Model\Quote
      */
     protected $quote = null;
 
@@ -42,7 +42,7 @@ class Cart extends \Magento\Backend\Block\Widget\Grid\Extended
      *
      * @param \Magento\Backend\Block\Template\Context $context
      * @param \Magento\Backend\Helper\Data $backendHelper
-     * @param \Magento\Sales\Model\QuoteRepository $quoteRepository
+     * @param \Magento\Quote\Model\QuoteRepository $quoteRepository
      * @param \Magento\Framework\Data\CollectionFactory $dataCollectionFactory
      * @param \Magento\Framework\Registry $coreRegistry
      * @param array $data
@@ -50,7 +50,7 @@ class Cart extends \Magento\Backend\Block\Widget\Grid\Extended
     public function __construct(
         \Magento\Backend\Block\Template\Context $context,
         \Magento\Backend\Helper\Data $backendHelper,
-        \Magento\Sales\Model\QuoteRepository $quoteRepository,
+        \Magento\Quote\Model\QuoteRepository $quoteRepository,
         \Magento\Framework\Data\CollectionFactory $dataCollectionFactory,
         \Magento\Framework\Registry $coreRegistry,
         array $data = []
@@ -153,7 +153,7 @@ class Cart extends \Magento\Backend\Block\Widget\Grid\Extended
     /**
      * Get quote
      *
-     * @return \Magento\Sales\Model\Quote
+     * @return \Magento\Quote\Model\Quote
      */
     protected function getQuote()
     {
diff --git a/app/code/Magento/Customer/Block/Adminhtml/Sales/Order/Address/Form/Renderer/Vat.php b/app/code/Magento/Customer/Block/Adminhtml/Sales/Order/Address/Form/Renderer/Vat.php
index 32e49fd6343db5cb69d208d778a65185542e5707..797ff5a4d654e89574b7b0f43f1ce915481de5f2 100644
--- a/app/code/Magento/Customer/Block/Adminhtml/Sales/Order/Address/Form/Renderer/Vat.php
+++ b/app/code/Magento/Customer/Block/Adminhtml/Sales/Order/Address/Form/Renderer/Vat.php
@@ -95,7 +95,7 @@ class Vat extends \Magento\Backend\Block\Widget\Form\Renderer\Fieldset\Element
             );
 
             $optionsVarName = $this->getJsVariablePrefix() . 'VatParameters';
-            $beforeHtml = '<script type="text/javascript">var ' .
+            $beforeHtml = '<script>var ' .
                 $optionsVarName .
                 ' = ' .
                 $vatValidateOptions .
diff --git a/app/code/Magento/Customer/Controller/Adminhtml/Cart/Product/Composite/Cart.php b/app/code/Magento/Customer/Controller/Adminhtml/Cart/Product/Composite/Cart.php
index 2feb24dcf86f118095e4152b93ebb67b17362da2..b95e9b1af53d79c1d4506d4dfde9483179fd0ad6 100644
--- a/app/code/Magento/Customer/Controller/Adminhtml/Cart/Product/Composite/Cart.php
+++ b/app/code/Magento/Customer/Controller/Adminhtml/Cart/Product/Composite/Cart.php
@@ -25,29 +25,29 @@ class Cart extends \Magento\Backend\App\Action
     /**
      * Quote we're working with
      *
-     * @var \Magento\Sales\Model\Quote
+     * @var \Magento\Quote\Model\Quote
      */
     protected $_quote = null;
 
     /**
      * Quote item we're working with
      *
-     * @var \Magento\Sales\Model\Quote\Item
+     * @var \Magento\Quote\Model\Quote\Item
      */
     protected $_quoteItem = null;
 
     /**
-     * @var \Magento\Sales\Model\QuoteRepository
+     * @var \Magento\Quote\Model\QuoteRepository
      */
     protected $quoteRepository;
 
     /**
      * @param Action\Context $context
-     * @param \Magento\Sales\Model\QuoteRepository $quoteRepository
+     * @param \Magento\Quote\Model\QuoteRepository $quoteRepository
      */
     public function __construct(
         Action\Context $context,
-        \Magento\Sales\Model\QuoteRepository $quoteRepository
+        \Magento\Quote\Model\QuoteRepository $quoteRepository
     ) {
         $this->quoteRepository = $quoteRepository;
         parent::__construct($context);
diff --git a/app/code/Magento/Customer/Controller/Adminhtml/Cart/Product/Composite/Cart/Configure.php b/app/code/Magento/Customer/Controller/Adminhtml/Cart/Product/Composite/Cart/Configure.php
index 322a987bd7076cb7c3663dfce4a219366f4d8d94..ce0e635dba96481b81e773356f965475ff8d9cc5 100644
--- a/app/code/Magento/Customer/Controller/Adminhtml/Cart/Product/Composite/Cart/Configure.php
+++ b/app/code/Magento/Customer/Controller/Adminhtml/Cart/Product/Composite/Cart/Configure.php
@@ -22,7 +22,7 @@ class Configure extends \Magento\Customer\Controller\Adminhtml\Cart\Product\Comp
             $quoteItem = $this->_quoteItem;
 
             $optionCollection = $this->_objectManager->create(
-                'Magento\Sales\Model\Quote\Item\Option'
+                'Magento\Quote\Model\Quote\Item\Option'
             )->getCollection()->addItemFilter(
                 $quoteItem
             );
diff --git a/app/code/Magento/Customer/Controller/Adminhtml/Index/Cart.php b/app/code/Magento/Customer/Controller/Adminhtml/Index/Cart.php
index 91af3b72054e0c7638993163bfee458a7015341d..b3290cf642e090ff8fb1b579fc1bba9026451f28 100644
--- a/app/code/Magento/Customer/Controller/Adminhtml/Index/Cart.php
+++ b/app/code/Magento/Customer/Controller/Adminhtml/Index/Cart.php
@@ -23,9 +23,9 @@ class Cart extends \Magento\Customer\Controller\Adminhtml\Index
         // delete an item from cart
         $deleteItemId = $this->getRequest()->getPost('delete');
         if ($deleteItemId) {
-            /** @var \Magento\Sales\Model\QuoteRepository $quoteRepository */
-            $quoteRepository = $this->_objectManager->create('Magento\Sales\Model\QuoteRepository');
-            /** @var \Magento\Sales\Model\Quote $quote */
+            /** @var \Magento\Quote\Model\QuoteRepository $quoteRepository */
+            $quoteRepository = $this->_objectManager->create('Magento\Quote\Model\QuoteRepository');
+            /** @var \Magento\Quote\Model\Quote $quote */
             try {
                 $quote = $quoteRepository->getForCustomer(
                     $this->_coreRegistry->registry(RegistryConstants::CURRENT_CUSTOMER_ID)
diff --git a/app/code/Magento/Customer/Helper/Address.php b/app/code/Magento/Customer/Helper/Address.php
index 2f1faad85cac8d603298ff376547f83391024a29..398522e04a45838cc4537906d3e3d616395c63b6 100644
--- a/app/code/Magento/Customer/Helper/Address.php
+++ b/app/code/Magento/Customer/Helper/Address.php
@@ -15,6 +15,7 @@ use Magento\Framework\Exception\NoSuchEntityException;
  * Customer address helper
  *
  * @author      Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Address extends \Magento\Framework\App\Helper\AbstractHelper
 {
diff --git a/app/code/Magento/Customer/Model/AccountManagement.php b/app/code/Magento/Customer/Model/AccountManagement.php
index 56871b94cebd593d9c5c237e98acf65bd34c5c84..c5c59b797fae8087e2c8a07428dcb38e66f040f6 100644
--- a/app/code/Magento/Customer/Model/AccountManagement.php
+++ b/app/code/Magento/Customer/Model/AccountManagement.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Customer\Model;
 
 use Magento\Customer\Api\AccountManagementInterface;
diff --git a/app/code/Magento/Customer/Model/Address.php b/app/code/Magento/Customer/Model/Address.php
index 614801ed6bee245754e530cef049af0dc5fb43ef..7e89c37cbcc4c32c197668bf7f1beddfa6fe990c 100644
--- a/app/code/Magento/Customer/Model/Address.php
+++ b/app/code/Magento/Customer/Model/Address.php
@@ -16,6 +16,7 @@ use Magento\Framework\Api\AttributeDataBuilder;
  *
  * @method int getParentId() getParentId()
  * @method \Magento\Customer\Model\Address setParentId() setParentId(int $parentId)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Address extends \Magento\Customer\Model\Address\AbstractAddress
 {
@@ -54,6 +55,7 @@ class Address extends \Magento\Customer\Model\Address\AbstractAddress
      * @param \Magento\Framework\Model\Resource\AbstractResource $resource
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
@@ -128,12 +130,9 @@ class Address extends \Magento\Customer\Model\Address\AbstractAddress
         // Need to explicitly set this due to discrepancy in the keys between model and data object
         $this->setIsDefaultBilling($address->isDefaultBilling());
         $this->setIsDefaultShipping($address->isDefaultShipping());
-
-        // Need to use attribute set or future updates can cause data loss
         if (!$this->getAttributeSetId()) {
             $this->setAttributeSetId(AddressMetadataInterface::ATTRIBUTE_SET_ID_ADDRESS);
         }
-
         $customAttributes = $address->getCustomAttributes();
         if (!is_null($customAttributes)) {
             foreach ($customAttributes as $attribute) {
@@ -255,21 +254,6 @@ class Address extends \Magento\Customer\Model\Address\AbstractAddress
         return $this->_getResource()->getEntityType();
     }
 
-    /**
-     * Return Entity Type ID
-     *
-     * @return int
-     */
-    public function getEntityTypeId()
-    {
-        $entityTypeId = $this->getData('entity_type_id');
-        if (!$entityTypeId) {
-            $entityTypeId = $this->getEntityType()->getId();
-            $this->setData('entity_type_id', $entityTypeId);
-        }
-        return $entityTypeId;
-    }
-
     /**
      * Return Region ID
      *
@@ -299,4 +283,14 @@ class Address extends \Magento\Customer\Model\Address\AbstractAddress
     {
         return $this->_customerFactory->create();
     }
+
+    /**
+     * Return Entity Type ID
+     *
+     * @return int
+     */
+    public function getEntityTypeId()
+    {
+        return $this->getEntityType()->getId();
+    }
 }
diff --git a/app/code/Magento/Customer/Model/Address/AbstractAddress.php b/app/code/Magento/Customer/Model/Address/AbstractAddress.php
index 64490f90d083c6c05557190e70e8e1892bda6b6d..777c4d6a04e2aa52121d03d13a4c22f7771ac456 100644
--- a/app/code/Magento/Customer/Model/Address/AbstractAddress.php
+++ b/app/code/Magento/Customer/Model/Address/AbstractAddress.php
@@ -27,6 +27,7 @@ use Magento\Framework\Api\AttributeDataBuilder;
  * @method string getTelephone()
  * @method string getPostcode()
  * @method bool getShouldIgnoreValidation()
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class AbstractAddress extends \Magento\Framework\Model\AbstractExtensibleModel
 {
@@ -123,6 +124,7 @@ class AbstractAddress extends \Magento\Framework\Model\AbstractExtensibleModel
      * @param \Magento\Framework\Model\Resource\AbstractResource $resource
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
@@ -472,6 +474,7 @@ class AbstractAddress extends \Magento\Framework\Model\AbstractExtensibleModel
      * @return AddressInterface
      * @deprecated Use Api/Data/AddressInterface as a result of service operations. Don't rely on the model to provide
      * the instance of Api/Data/AddressInterface
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function getDataModel($defaultBillingAddressId = null, $defaultShippingAddressId = null)
     {
@@ -527,6 +530,8 @@ class AbstractAddress extends \Magento\Framework\Model\AbstractExtensibleModel
      * Validate address attribute values
      *
      * @return bool|array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function validate()
     {
diff --git a/app/code/Magento/Customer/Model/Address/Mapper.php b/app/code/Magento/Customer/Model/Address/Mapper.php
index fe19174210d149bb3b8a170cba11000d2bfda25a..3fefe1c52cb54138c35d5fddcdc3ecd0d61e406c 100644
--- a/app/code/Magento/Customer/Model/Address/Mapper.php
+++ b/app/code/Magento/Customer/Model/Address/Mapper.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Customer\Model\Address;
 
 use Magento\Customer\Api\Data\AddressInterface;
diff --git a/app/code/Magento/Customer/Model/App/Action/ContextPlugin.php b/app/code/Magento/Customer/Model/App/Action/ContextPlugin.php
index 024bef6043f414e536c70a6e1fe0e46d07916e8e..164740604d7f52c60bb99f1bce4cbbd8cd5584e2 100644
--- a/app/code/Magento/Customer/Model/App/Action/ContextPlugin.php
+++ b/app/code/Magento/Customer/Model/App/Action/ContextPlugin.php
@@ -41,6 +41,7 @@ class ContextPlugin
      * @param callable $proceed
      * @param \Magento\Framework\App\RequestInterface $request
      * @return mixed
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function aroundDispatch(
         \Magento\Framework\App\Action\Action $subject,
diff --git a/app/code/Magento/Customer/Model/Customer.php b/app/code/Magento/Customer/Model/Customer.php
index 979baa89ddf2f902167dd60098735ef5abbab867..6cd272bb0c84ab27a5883d6791dc57f50d1b8f1b 100644
--- a/app/code/Magento/Customer/Model/Customer.php
+++ b/app/code/Magento/Customer/Model/Customer.php
@@ -31,6 +31,10 @@ use Magento\Framework\Api\AttributeDataBuilder;
  * @method Customer setPasswordHash($string)
  * @method string getPasswordHash()
  * @method string getConfirmation()
+ * @SuppressWarnings(PHPMD.ExcessivePublicCount)
+ * @SuppressWarnings(PHPMD.TooManyFields)
+ * @SuppressWarnings(PHPMD.ExcessiveClassComplexity)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Customer extends \Magento\Framework\Model\AbstractExtensibleModel
 {
@@ -219,6 +223,7 @@ class Customer extends \Magento\Framework\Model\AbstractExtensibleModel
      * @param DataObjectProcessor $dataObjectProcessor
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
@@ -991,6 +996,8 @@ class Customer extends \Magento\Framework\Model\AbstractExtensibleModel
      * (i.e. its change is requested)
      *
      * @return bool|string[]
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function validate()
     {
@@ -1217,21 +1224,6 @@ class Customer extends \Magento\Framework\Model\AbstractExtensibleModel
         return $this->_getResource()->getEntityType();
     }
 
-    /**
-     * Return Entity Type ID
-     *
-     * @return int
-     */
-    public function getEntityTypeId()
-    {
-        $entityTypeId = $this->getData('entity_type_id');
-        if (!$entityTypeId) {
-            $entityTypeId = $this->getEntityType()->getId();
-            $this->setData('entity_type_id', $entityTypeId);
-        }
-        return $entityTypeId;
-    }
-
     /**
      * Get either first store ID from a set website or the provided as default
      *
diff --git a/app/code/Magento/Customer/Model/Customer/Mapper.php b/app/code/Magento/Customer/Model/Customer/Mapper.php
index 92b618edb243d9d05f48a3d7b9f8f43d34d6bc06..c9f499c8226f30e3cb637d60fbf00e306dd31ebd 100644
--- a/app/code/Magento/Customer/Model/Customer/Mapper.php
+++ b/app/code/Magento/Customer/Model/Customer/Mapper.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Customer\Model\Customer;
 
 use Magento\Customer\Api\Data\CustomerInterface;
diff --git a/app/code/Magento/Customer/Model/Group.php b/app/code/Magento/Customer/Model/Group.php
index ce608ce69a2df9b933d00e412f06bea2445325da..a586e39007900ca49a7ee55faf627f0586bad16e 100644
--- a/app/code/Magento/Customer/Model/Group.php
+++ b/app/code/Magento/Customer/Model/Group.php
@@ -78,6 +78,7 @@ class Group extends \Magento\Framework\Model\AbstractExtensibleModel
      * @param \Magento\Framework\Model\Resource\AbstractResource $resource
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
diff --git a/app/code/Magento/Customer/Model/GroupManagement.php b/app/code/Magento/Customer/Model/GroupManagement.php
index 52d557faaa8586b8296b934efbc544dffb94fbf5..d090e95592744f01dde02f2cbe23e143ae78dc09 100644
--- a/app/code/Magento/Customer/Model/GroupManagement.php
+++ b/app/code/Magento/Customer/Model/GroupManagement.php
@@ -17,6 +17,9 @@ use Magento\Customer\Api\GroupRepositoryInterface;
 use Magento\Customer\Api\Data\GroupDataBuilder;
 use Magento\Customer\Model\GroupFactory;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class GroupManagement implements \Magento\Customer\Api\GroupManagementInterface
 {
     const XML_PATH_DEFAULT_ID = 'customer/create_account/default_group';
diff --git a/app/code/Magento/Customer/Model/Metadata/ElementFactory.php b/app/code/Magento/Customer/Model/Metadata/ElementFactory.php
index 81bbad11e015d4e8b6d52c9bb60cfd0e93d20da9..a6f9b33d4bed23bbf8b0c5f87735593b81566486 100644
--- a/app/code/Magento/Customer/Model/Metadata/ElementFactory.php
+++ b/app/code/Magento/Customer/Model/Metadata/ElementFactory.php
@@ -5,6 +5,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Customer\Model\Metadata;
 
 class ElementFactory
diff --git a/app/code/Magento/Customer/Model/Metadata/Form/AbstractData.php b/app/code/Magento/Customer/Model/Metadata/Form/AbstractData.php
index 69f1811f75eb4a6e6b5b1d41ca90bea07d101940..239fc3fb5ba5a0450cc8879acf28ba95cf7315de 100644
--- a/app/code/Magento/Customer/Model/Metadata/Form/AbstractData.php
+++ b/app/code/Magento/Customer/Model/Metadata/Form/AbstractData.php
@@ -5,10 +5,16 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Customer\Model\Metadata\Form;
 
 use Magento\Framework\Api\ArrayObjectSearch;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 abstract class AbstractData
 {
     /**
@@ -257,6 +263,8 @@ abstract class AbstractData
      *
      * @param string $value
      * @return array|true
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _validateInputRule($value)
     {
@@ -437,6 +445,7 @@ abstract class AbstractData
      * Return is AJAX Request
      *
      * @return boolean
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsAjaxRequest()
     {
diff --git a/app/code/Magento/Customer/Model/Metadata/Form/Date.php b/app/code/Magento/Customer/Model/Metadata/Form/Date.php
index 85119b1f203f04c57acfbed8bdc67c422d2fd684..6e55f61a5d225b968120b3013a093e4c2103c5aa 100644
--- a/app/code/Magento/Customer/Model/Metadata/Form/Date.php
+++ b/app/code/Magento/Customer/Model/Metadata/Form/Date.php
@@ -22,6 +22,8 @@ class Date extends AbstractData
 
     /**
      * {@inheritdoc}
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function validateValue($value)
     {
diff --git a/app/code/Magento/Customer/Model/Metadata/Form/File.php b/app/code/Magento/Customer/Model/Metadata/Form/File.php
index 2c870b7a1f7035909f4b30849af97060ce9a743b..a9db19a68f90883bea48fc494ed0993e9d55d7d2 100644
--- a/app/code/Magento/Customer/Model/Metadata/Form/File.php
+++ b/app/code/Magento/Customer/Model/Metadata/Form/File.php
@@ -12,6 +12,9 @@ use Magento\Framework\Filesystem;
 use Magento\Framework\App\Filesystem\DirectoryList;
 use Magento\Framework\Api\ArrayObjectSearch;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class File extends AbstractData
 {
     /**
@@ -55,6 +58,7 @@ class File extends AbstractData
      * @param \Magento\Core\Model\File\Validator\NotProtectedExtension $fileValidator
      * @param Filesystem $fileSystem
      * @param UploaderFactory $uploaderFactory
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Stdlib\DateTime\TimezoneInterface $localeDate,
@@ -78,6 +82,7 @@ class File extends AbstractData
 
     /**
      * {@inheritdoc}
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function extractValue(\Magento\Framework\App\RequestInterface $request)
     {
@@ -194,6 +199,8 @@ class File extends AbstractData
 
     /**
      * {@inheritdoc}
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function validateValue($value)
     {
diff --git a/app/code/Magento/Customer/Model/Metadata/Form/Image.php b/app/code/Magento/Customer/Model/Metadata/Form/Image.php
index 9950d4f4f4b89e7ea84ef824f047b9884871f779..b1e4ce9f362bb368c73da2e93ba8d934b6b60c2a 100644
--- a/app/code/Magento/Customer/Model/Metadata/Form/Image.php
+++ b/app/code/Magento/Customer/Model/Metadata/Form/Image.php
@@ -17,6 +17,8 @@ class Image extends File
      *
      * @param array $value
      * @return string[]
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _validateByRules($value)
     {
diff --git a/app/code/Magento/Customer/Model/Metadata/Form/Multiline.php b/app/code/Magento/Customer/Model/Metadata/Form/Multiline.php
index cec0be11f61edd3cf7b0f2cd5c48a26f86c82460..5a67fbf9cccb17c9d1eb5a32f80f9d4d369116f5 100644
--- a/app/code/Magento/Customer/Model/Metadata/Form/Multiline.php
+++ b/app/code/Magento/Customer/Model/Metadata/Form/Multiline.php
@@ -25,6 +25,7 @@ class Multiline extends Text
 
     /**
      * {@inheritdoc}
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function validateValue($value)
     {
diff --git a/app/code/Magento/Customer/Model/Metadata/Form/Text.php b/app/code/Magento/Customer/Model/Metadata/Form/Text.php
index a7a3ceb2ee887911ff4000ae94319e44b8f0902d..89c93562e50dd575cbb658551467e01c4f02d2a6 100644
--- a/app/code/Magento/Customer/Model/Metadata/Form/Text.php
+++ b/app/code/Magento/Customer/Model/Metadata/Form/Text.php
@@ -50,6 +50,8 @@ class Text extends AbstractData
 
     /**
      * {@inheritdoc}
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function validateValue($value)
     {
diff --git a/app/code/Magento/Customer/Model/Observer.php b/app/code/Magento/Customer/Model/Observer.php
index 921993eccb833e26d1761481369da2e111bc5eed..d20135db19bbf761074891fd2d279552f6935247 100644
--- a/app/code/Magento/Customer/Model/Observer.php
+++ b/app/code/Magento/Customer/Model/Observer.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Customer\Model;
 
 /**
@@ -151,6 +154,7 @@ class Observer
      *
      * @param \Magento\Framework\Event\Observer $observer
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function afterAddressSave($observer)
     {
diff --git a/app/code/Magento/Customer/Model/Renderer/Region.php b/app/code/Magento/Customer/Model/Renderer/Region.php
index 20d45ee772c6fb6f03b2b5c70f148db1fd6740da..1704789268f6374d644ab26810d24e0d5ebdc2fc 100644
--- a/app/code/Magento/Customer/Model/Renderer/Region.php
+++ b/app/code/Magento/Customer/Model/Renderer/Region.php
@@ -56,6 +56,8 @@ class Region implements \Magento\Framework\Data\Form\Element\Renderer\RendererIn
     /**
      * @param AbstractElement $element
      * @return string
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function render(AbstractElement $element)
     {
diff --git a/app/code/Magento/Customer/Model/Resource/Address.php b/app/code/Magento/Customer/Model/Resource/Address.php
index bec7eec4634435e086829198f20f6284aea49c25..c047a54d3eeb81ef3976e7041ff68b8e382d1ae2 100644
--- a/app/code/Magento/Customer/Model/Resource/Address.php
+++ b/app/code/Magento/Customer/Model/Resource/Address.php
@@ -12,7 +12,7 @@ use Magento\Framework\Exception\InputException;
 class Address extends \Magento\Eav\Model\Entity\AbstractEntity
 {
     /**
-     * @var \Magento\Core\Model\Validator\Factory
+     * @var \Magento\Framework\Validator\Factory
      */
     protected $_validatorFactory;
 
@@ -28,7 +28,7 @@ class Address extends \Magento\Eav\Model\Entity\AbstractEntity
      * @param \Magento\Framework\Locale\FormatInterface $localeFormat
      * @param \Magento\Eav\Model\Resource\Helper $resourceHelper
      * @param \Magento\Framework\Validator\UniversalFactory $universalFactory
-     * @param \Magento\Core\Model\Validator\Factory $validatorFactory
+     * @param \Magento\Framework\Validator\Factory $validatorFactory
      * @param \Magento\Customer\Model\CustomerFactory $customerFactory
      * @param array $data
      */
@@ -39,7 +39,7 @@ class Address extends \Magento\Eav\Model\Entity\AbstractEntity
         \Magento\Framework\Locale\FormatInterface $localeFormat,
         \Magento\Eav\Model\Resource\Helper $resourceHelper,
         \Magento\Framework\Validator\UniversalFactory $universalFactory,
-        \Magento\Core\Model\Validator\Factory $validatorFactory,
+        \Magento\Framework\Validator\Factory $validatorFactory,
         \Magento\Customer\Model\CustomerFactory $customerFactory,
         $data = []
     ) {
diff --git a/app/code/Magento/Customer/Model/Resource/AddressRepository.php b/app/code/Magento/Customer/Model/Resource/AddressRepository.php
index 90959b667315a1bb3b0b1069aebe31843ac5150b..6ef055761a2e58f5c3d7e85d71497c60aca83169 100644
--- a/app/code/Magento/Customer/Model/Resource/AddressRepository.php
+++ b/app/code/Magento/Customer/Model/Resource/AddressRepository.php
@@ -13,6 +13,9 @@ use Magento\Framework\Api\Search\FilterGroup;
 use Magento\Framework\Api\SortOrder;
 use Magento\Framework\Exception\InputException;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class AddressRepository implements \Magento\Customer\Api\AddressRepositoryInterface
 {
     /**
diff --git a/app/code/Magento/Customer/Model/Resource/Customer.php b/app/code/Magento/Customer/Model/Resource/Customer.php
index f7874f48d972b0abd859320441245f5841b6cd2d..4577a1a113bd39fa1c78c09f597b640e99e12f8f 100644
--- a/app/code/Magento/Customer/Model/Resource/Customer.php
+++ b/app/code/Magento/Customer/Model/Resource/Customer.php
@@ -9,11 +9,12 @@ use Magento\Framework\Exception\InputException;
 
 /**
  * Customer entity resource model
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Customer extends \Magento\Eav\Model\Entity\AbstractEntity
 {
     /**
-     * @var \Magento\Core\Model\Validator\Factory
+     * @var \Magento\Framework\Validator\Factory
      */
     protected $_validatorFactory;
 
@@ -37,9 +38,10 @@ class Customer extends \Magento\Eav\Model\Entity\AbstractEntity
      * @param \Magento\Eav\Model\Resource\Helper $resourceHelper
      * @param \Magento\Framework\Validator\UniversalFactory $universalFactory
      * @param \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig
-     * @param \Magento\Core\Model\Validator\Factory $validatorFactory
+     * @param \Magento\Framework\Validator\Factory $validatorFactory
      * @param \Magento\Framework\Stdlib\DateTime $dateTime
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\App\Resource $resource,
@@ -49,7 +51,7 @@ class Customer extends \Magento\Eav\Model\Entity\AbstractEntity
         \Magento\Eav\Model\Resource\Helper $resourceHelper,
         \Magento\Framework\Validator\UniversalFactory $universalFactory,
         \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig,
-        \Magento\Core\Model\Validator\Factory $validatorFactory,
+        \Magento\Framework\Validator\Factory $validatorFactory,
         \Magento\Framework\Stdlib\DateTime $dateTime,
         $data = []
     ) {
@@ -77,8 +79,6 @@ class Customer extends \Magento\Eav\Model\Entity\AbstractEntity
     protected function _getDefaultAttributes()
     {
         return [
-            'entity_type_id',
-            'attribute_set_id',
             'created_at',
             'updated_at',
             'increment_id',
@@ -184,6 +184,7 @@ class Customer extends \Magento\Eav\Model\Entity\AbstractEntity
      *
      * @param \Magento\Customer\Model\Customer $customer
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _saveAddresses(\Magento\Customer\Model\Customer $customer)
     {
diff --git a/app/code/Magento/Customer/Model/Resource/CustomerRepository.php b/app/code/Magento/Customer/Model/Resource/CustomerRepository.php
index 47b67411fafbd9b2f10dad4a64e2401684efd44a..f8100f6de0373821f4df27fe3af52d424cbb600b 100644
--- a/app/code/Magento/Customer/Model/Resource/CustomerRepository.php
+++ b/app/code/Magento/Customer/Model/Resource/CustomerRepository.php
@@ -13,6 +13,7 @@ use Magento\Framework\Exception\NoSuchEntityException;
 
 /**
  * Customer repository.
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class CustomerRepository implements \Magento\Customer\Api\CustomerRepositoryInterface
 {
@@ -89,6 +90,7 @@ class CustomerRepository implements \Magento\Customer\Api\CustomerRepositoryInte
      * @param \Magento\Framework\Event\ManagerInterface $eventManager
      * @param \Magento\Store\Model\StoreManagerInterface $storeManager
      * @param \Magento\Framework\Api\ExtensibleDataObjectConverter $extensibleDataObjectConverter
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Customer\Model\CustomerFactory $customerFactory,
@@ -120,6 +122,7 @@ class CustomerRepository implements \Magento\Customer\Api\CustomerRepositoryInte
 
     /**
      * {@inheritdoc}
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function save(\Magento\Customer\Api\Data\CustomerInterface $customer, $passwordHash = null)
     {
diff --git a/app/code/Magento/Customer/Model/Resource/Group/Grid/ServiceCollection.php b/app/code/Magento/Customer/Model/Resource/Group/Grid/ServiceCollection.php
index 22980e9d14f0cb3a78449e3a8143ca23d64dd31a..04589231f0bcbe46be5e3bc192ac438847fc3ab1 100644
--- a/app/code/Magento/Customer/Model/Resource/Group/Grid/ServiceCollection.php
+++ b/app/code/Magento/Customer/Model/Resource/Group/Grid/ServiceCollection.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Customer\Model\Resource\Group\Grid;
 
 use Magento\Core\Model\EntityFactory;
@@ -56,6 +59,7 @@ class ServiceCollection extends AbstractServiceCollection
      * @param bool $printQuery
      * @param bool $logQuery
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function loadData($printQuery = false, $logQuery = false)
     {
diff --git a/app/code/Magento/Customer/Model/Resource/Setup.php b/app/code/Magento/Customer/Model/Resource/Setup.php
index a3b4333c5b7bf58bb9fecfe62d906084856fedee..3e1f8da9666f56fb1484e8709faa7db0075db304 100644
--- a/app/code/Magento/Customer/Model/Resource/Setup.php
+++ b/app/code/Magento/Customer/Model/Resource/Setup.php
@@ -47,6 +47,8 @@ class Setup extends \Magento\Eav\Model\Entity\Setup
      * Add customer attributes to customer forms
      *
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function installCustomerForms()
     {
@@ -114,6 +116,7 @@ class Setup extends \Magento\Eav\Model\Entity\Setup
      * Retrieve default entities: customer, customer_address
      *
      * @return array
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public function getDefaultEntities()
     {
diff --git a/app/code/Magento/Customer/Model/Session.php b/app/code/Magento/Customer/Model/Session.php
index ddfabd8fbcab26ada8886ccda1176c08db7b524a..2f5115569e53f556d4148a9ee27491c46e23cf0c 100644
--- a/app/code/Magento/Customer/Model/Session.php
+++ b/app/code/Magento/Customer/Model/Session.php
@@ -14,6 +14,7 @@ use Magento\Customer\Model\Resource\Customer as ResourceCustomer;
 /**
  * Customer session model
  * @method string getNoReferer()
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Session extends \Magento\Framework\Session\SessionManager
 {
@@ -112,6 +113,7 @@ class Session extends \Magento\Framework\Session\SessionManager
      * @param \Magento\Framework\App\Http\Context $httpContext
      * @param CustomerRepositoryInterface $customerRepository
      * @param GroupManagementInterface $groupManagement
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\App\Request\Http $request,
diff --git a/app/code/Magento/Customer/composer.json b/app/code/Magento/Customer/composer.json
index 6a8f9941fef465554b915f94ac09d04bbefbb940..077bac8e41c2b04d3a66f8b12d6896b8069cdc59 100644
--- a/app/code/Magento/Customer/composer.json
+++ b/app/code/Magento/Customer/composer.json
@@ -3,28 +3,29 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-eav": "0.42.0-beta3",
-        "magento/module-directory": "0.42.0-beta3",
-        "magento/module-core": "0.42.0-beta3",
-        "magento/module-catalog": "0.42.0-beta3",
-        "magento/module-newsletter": "0.42.0-beta3",
-        "magento/module-sales": "0.42.0-beta3",
-        "magento/module-checkout": "0.42.0-beta3",
-        "magento/module-wishlist": "0.42.0-beta3",
-        "magento/module-theme": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/module-review": "0.42.0-beta3",
-        "magento/module-tax": "0.42.0-beta3",
-        "magento/module-page-cache": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
-        "magento/module-authorization": "0.42.0-beta3",
-        "magento/module-integration": "0.42.0-beta3",
-        "magento/module-ui": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-eav": "0.42.0-beta4",
+        "magento/module-directory": "0.42.0-beta4",
+        "magento/module-core": "0.42.0-beta4",
+        "magento/module-catalog": "0.42.0-beta4",
+        "magento/module-newsletter": "0.42.0-beta4",
+        "magento/module-sales": "0.42.0-beta4",
+        "magento/module-checkout": "0.42.0-beta4",
+        "magento/module-wishlist": "0.42.0-beta4",
+        "magento/module-theme": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/module-review": "0.42.0-beta4",
+        "magento/module-tax": "0.42.0-beta4",
+        "magento/module-page-cache": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
+        "magento/module-authorization": "0.42.0-beta4",
+        "magento/module-integration": "0.42.0-beta4",
+        "magento/module-ui": "0.42.0-beta4",
+        "magento/module-quote": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/Customer/etc/module.xml b/app/code/Magento/Customer/etc/module.xml
index 2a46977eb36f99401fbdda35aaca3ef2432ff2ea..93233481ccf7f5f284c8d5a0bbb3c174d8bf87f0 100644
--- a/app/code/Magento/Customer/etc/module.xml
+++ b/app/code/Magento/Customer/etc/module.xml
@@ -6,7 +6,7 @@
  */
 -->
 <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../lib/internal/Magento/Framework/Module/etc/module.xsd">
-    <module name="Magento_Customer" schema_version="2.0.0">
+    <module name="Magento_Customer" schema_version="2.0.0.1">
         <sequence>
             <module name="Magento_Eav"/>
             <module name="Magento_Directory"/>
diff --git a/app/code/Magento/Customer/sql/customer_setup/upgrade-2.0.0-2.0.0.1.php b/app/code/Magento/Customer/sql/customer_setup/upgrade-2.0.0-2.0.0.1.php
new file mode 100644
index 0000000000000000000000000000000000000000..a442eb533aa4b67e015688f03a7a517936b0f293
--- /dev/null
+++ b/app/code/Magento/Customer/sql/customer_setup/upgrade-2.0.0-2.0.0.1.php
@@ -0,0 +1,44 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+
+/* @var $installer \Magento\Setup\Module\SetupModule */
+$installer = $this;
+$installer->startSetup();
+$connection = $installer->getConnection();
+
+$tableNames = [
+    'customer_address_entity_varchar', 'customer_address_entity_datetime',
+    'customer_address_entity_decimal', 'customer_address_entity_int', 'customer_address_entity_text',
+    'customer_entity_varchar', 'customer_entity_datetime',
+    'customer_entity_decimal', 'customer_entity_int', 'customer_entity_text'
+];
+
+foreach ($tableNames as $table) {
+    $connection->dropForeignKey(
+        $installer->getTable($table),
+        $installer->getFkName($table, 'entity_type_id', 'eav_entity_type', 'entity_type_id')
+    );
+    $connection->dropIndex(
+        $installer->getTable($table),
+        $installer->getIdxName(
+            $installer->getTable($table),
+            ['entity_type_id'],
+            \Magento\Framework\DB\Adapter\AdapterInterface::INDEX_TYPE_UNIQUE
+        )
+    );
+    $connection->dropColumn($installer->getTable($table), 'entity_type_id');
+}
+
+$connection->dropColumn($installer->getTable('customer_address_entity'), 'entity_type_id');
+$connection->dropColumn($installer->getTable('customer_address_entity'), 'attribute_set_id');
+
+$connection->dropIndex(
+    $installer->getTable('customer_entity'),
+    $installer->getIdxName('customer_entity', ['entity_type_id'])
+);
+$connection->dropColumn($installer->getTable('customer_entity'), 'entity_type_id');
+$connection->dropColumn($installer->getTable('customer_entity'), 'attribute_set_id');
+$installer->endSetup();
diff --git a/app/code/Magento/Customer/view/adminhtml/templates/edit/js.phtml b/app/code/Magento/Customer/view/adminhtml/templates/edit/js.phtml
index a0c57e3e5b6a5a2460d4279ea747d97faae5d97c..bc03450977917dabdd5debcd3f0805e1b0b3b93f 100644
--- a/app/code/Magento/Customer/view/adminhtml/templates/edit/js.phtml
+++ b/app/code/Magento/Customer/view/adminhtml/templates/edit/js.phtml
@@ -3,4 +3,7 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
diff --git a/app/code/Magento/Customer/view/adminhtml/templates/edit/tab/account/form/renderer/group.phtml b/app/code/Magento/Customer/view/adminhtml/templates/edit/tab/account/form/renderer/group.phtml
index 50b68da8b0fc7498ef7ac111382321872c1803e2..25f5e012252ae24718952058f0e0a895199fdd40 100644
--- a/app/code/Magento/Customer/view/adminhtml/templates/edit/tab/account/form/renderer/group.phtml
+++ b/app/code/Magento/Customer/view/adminhtml/templates/edit/tab/account/form/renderer/group.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /** @var \Magento\Customer\Block\Adminhtml\Edit\Renderer\Attribute\Group $this */
diff --git a/app/code/Magento/Customer/view/adminhtml/templates/edit/tab/account/form/renderer/sendemail.phtml b/app/code/Magento/Customer/view/adminhtml/templates/edit/tab/account/form/renderer/sendemail.phtml
index 85de78684abbdf5d73153e7ab78b40acd89e9f25..a73b42b2bc2fe82cdb131e0c29fde4d86c42811f 100644
--- a/app/code/Magento/Customer/view/adminhtml/templates/edit/tab/account/form/renderer/sendemail.phtml
+++ b/app/code/Magento/Customer/view/adminhtml/templates/edit/tab/account/form/renderer/sendemail.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /** @var \Magento\Customer\Block\Adminhtml\Edit\Renderer\Attribute\Sendemail $this */
@@ -16,7 +19,7 @@ $element = $this->getElement();
     </div>
 </div>
 
-<script type="text/javascript">
+<script>
 require(['prototype'], function(){
 
     document.observe('dom:loaded', function() {
diff --git a/app/code/Magento/Customer/view/adminhtml/templates/sales/order/create/address/form/renderer/vat.phtml b/app/code/Magento/Customer/view/adminhtml/templates/sales/order/create/address/form/renderer/vat.phtml
index eddc0554a6afcc503fb276a210a8914f926d157b..175341dd7b60b57acfa6dd51ed0daee288658618 100644
--- a/app/code/Magento/Customer/view/adminhtml/templates/sales/order/create/address/form/renderer/vat.phtml
+++ b/app/code/Magento/Customer/view/adminhtml/templates/sales/order/create/address/form/renderer/vat.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 $_element = $this->getElement();
diff --git a/app/code/Magento/Customer/view/adminhtml/templates/system/config/validatevat.phtml b/app/code/Magento/Customer/view/adminhtml/templates/system/config/validatevat.phtml
index f018514b3a146ef58183f3a9dba0bf4e5873c5ec..ee154f5e3486262389ece17852bc5bf5e2f494c1 100644
--- a/app/code/Magento/Customer/view/adminhtml/templates/system/config/validatevat.phtml
+++ b/app/code/Magento/Customer/view/adminhtml/templates/system/config/validatevat.phtml
@@ -3,13 +3,16 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
  * @see \Magento\Customer\Block\Adminhtml\System\Config\Validatevat
  */
 ?>
-<script type="text/javascript">
+<script>
 require(['prototype'], function(){
 
 //<![CDATA[
diff --git a/app/code/Magento/Customer/view/adminhtml/templates/tab/addresses.phtml b/app/code/Magento/Customer/view/adminhtml/templates/tab/addresses.phtml
index ab87821f4903c11c325a736144c96074d1bc434e..ee931b00be13838bffb858fcbde16884532d98a1 100644
--- a/app/code/Magento/Customer/view/adminhtml/templates/tab/addresses.phtml
+++ b/app/code/Magento/Customer/view/adminhtml/templates/tab/addresses.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /* @var $this \Magento\Customer\Block\Adminhtml\Edit\Tab\Addresses */ ?>
 <script data-template="tab-address-content" type="text/x-jquery-tmpl">
diff --git a/app/code/Magento/Customer/view/adminhtml/templates/tab/cart.phtml b/app/code/Magento/Customer/view/adminhtml/templates/tab/cart.phtml
index 503ae7ca7235513739c78a7847752deb5745620d..c876642597c2d1b9d674a7072fca7f0c0aa38cff 100644
--- a/app/code/Magento/Customer/view/adminhtml/templates/tab/cart.phtml
+++ b/app/code/Magento/Customer/view/adminhtml/templates/tab/cart.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /* @var $this \Magento\Customer\Block\Adminhtml\Edit\Tab\Cart */ ?>
 <?php if ($this->getCartHeader()): ?>
@@ -19,7 +22,7 @@
 <?php
     $listType = $this->getJsObjectName();
 ?>
-<script type="text/javascript">
+<script>
 require([
     "Magento_Catalog/catalog/product/composite/configure"
 ], function(){
diff --git a/app/code/Magento/Customer/view/adminhtml/templates/tab/newsletter.phtml b/app/code/Magento/Customer/view/adminhtml/templates/tab/newsletter.phtml
index b622d823d53d50bdd46ab76436c27d004b7daabd..c2f1325e9b5e9b58dbe707145addc83517c3dd59 100644
--- a/app/code/Magento/Customer/view/adminhtml/templates/tab/newsletter.phtml
+++ b/app/code/Magento/Customer/view/adminhtml/templates/tab/newsletter.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <div class="entry-edit">
 <?php echo $this->getForm()->getHtml() ?>
diff --git a/app/code/Magento/Customer/view/adminhtml/templates/tab/view/personal_info.phtml b/app/code/Magento/Customer/view/adminhtml/templates/tab/view/personal_info.phtml
index d6cc5cd6eaedb3a39017b1a981dbc72a4dabbb82..cd3e77def831d32ee7ff9db8df708ebd06da3816 100644
--- a/app/code/Magento/Customer/view/adminhtml/templates/tab/view/personal_info.phtml
+++ b/app/code/Magento/Customer/view/adminhtml/templates/tab/view/personal_info.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Template for block \Magento\Customer\Block\Adminhtml\Edit\Tab\View\Status\PersonalInfo
  */
diff --git a/app/code/Magento/Customer/view/adminhtml/templates/tab/view/sales.phtml b/app/code/Magento/Customer/view/adminhtml/templates/tab/view/sales.phtml
index 98cc5642da418a989ffc888def33289538ef0555..dc6e656c1451c3b2a72cd37a38b916550f72b3cb 100644
--- a/app/code/Magento/Customer/view/adminhtml/templates/tab/view/sales.phtml
+++ b/app/code/Magento/Customer/view/adminhtml/templates/tab/view/sales.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\Customer\Block\Adminhtml\Edit\Tab\View\Sales */ ?>
 <?php $singleStoreMode = $this->isSingleStoreMode(); ?>
diff --git a/app/code/Magento/Customer/view/frontend/templates/account/customer.phtml b/app/code/Magento/Customer/view/frontend/templates/account/customer.phtml
index 6b41daa14eeae7e632a14b3fe89d2d3ef2e314b5..4d94ac8d130640558bcd0522bcd708776b68edf7 100644
--- a/app/code/Magento/Customer/view/frontend/templates/account/customer.phtml
+++ b/app/code/Magento/Customer/view/frontend/templates/account/customer.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php if($this->customerLoggedIn()): ?>
     <li class="customer-welcome">
@@ -16,4 +19,4 @@
         </div>
         <?php endif; ?>
     </li>
-<?php endif; ?>
\ No newline at end of file
+<?php endif; ?>
diff --git a/app/code/Magento/Customer/view/frontend/templates/account/dashboard/address.phtml b/app/code/Magento/Customer/view/frontend/templates/account/dashboard/address.phtml
index f5a9b788d495bb626e97144de5c3f6801eee772d..9002a562a269c7230759f93dfeab4f5b49371d42 100644
--- a/app/code/Magento/Customer/view/frontend/templates/account/dashboard/address.phtml
+++ b/app/code/Magento/Customer/view/frontend/templates/account/dashboard/address.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var \Magento\Customer\Block\Account\Dashboard\Address $this */
 ?>
 <div class="block block-dashboard-addresses">
@@ -12,7 +14,7 @@
         <a class="action edit" href="<?php echo $this->getAddressBookUrl() ?>"><span><?php echo __('Manage Addresses') ?></span></a>
     </div>
     <div class="block-content">
-        <div class="box box-address-billing">
+        <div class="box box-billing-address">
             <strong class="box-title">
                 <span><?php echo __('Default Billing Address') ?></span>
             </strong>
@@ -25,7 +27,7 @@
                 <a class="action edit" href="<?php echo $this->getPrimaryBillingAddressEditUrl() ?>" data-ui-id="default-billing-edit-link"><span><?php echo __('Edit Address') ?></span></a>
             </div>
         </div>
-        <div class="box box-address-shipping">
+        <div class="box box-shipping-address">
             <strong class="box-title">
                 <span><?php echo __('Default Shipping Address') ?></span>
             </strong>
diff --git a/app/code/Magento/Customer/view/frontend/templates/account/dashboard/info.phtml b/app/code/Magento/Customer/view/frontend/templates/account/dashboard/info.phtml
index 46c687b43b26658b946210ffdf076e6995ae487c..47e509332865c1458e576cabb43508babba6b1cb 100644
--- a/app/code/Magento/Customer/view/frontend/templates/account/dashboard/info.phtml
+++ b/app/code/Magento/Customer/view/frontend/templates/account/dashboard/info.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var \Magento\Customer\Block\Account\Dashboard\Info $this */
 ?>
 <div class="block block-dashboard-info">
diff --git a/app/code/Magento/Customer/view/frontend/templates/account/link/back.phtml b/app/code/Magento/Customer/view/frontend/templates/account/link/back.phtml
index 89d9bc1c5a357ba463202a069448601165818b18..c3c1f8a8263ed90ab9e00d7bb7a235ac47e9a197 100644
--- a/app/code/Magento/Customer/view/frontend/templates/account/link/back.phtml
+++ b/app/code/Magento/Customer/view/frontend/templates/account/link/back.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <div class="actions-toolbar">
     <div class="secondary"><a class="action back" href="<?php echo $this->escapeUrl($this->getBackUrl()) ?>"><span><?php echo __('Back') ?></span></a></div>
diff --git a/app/code/Magento/Customer/view/frontend/templates/additionalinfocustomer.phtml b/app/code/Magento/Customer/view/frontend/templates/additionalinfocustomer.phtml
index ff34a320a54aaf556dfd771f720a063d8c17c8aa..1a69ab4852e63861119a994ee9c6de14b52763aa 100644
--- a/app/code/Magento/Customer/view/frontend/templates/additionalinfocustomer.phtml
+++ b/app/code/Magento/Customer/view/frontend/templates/additionalinfocustomer.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/Customer/view/frontend/templates/address/book.phtml b/app/code/Magento/Customer/view/frontend/templates/address/book.phtml
index 3a62e054e9d7261fe10201ae6167f354f4077582..a43a70e4cf7835e43addc5e5bedbda0f3b45da5f 100644
--- a/app/code/Magento/Customer/view/frontend/templates/address/book.phtml
+++ b/app/code/Magento/Customer/view/frontend/templates/address/book.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
@@ -14,7 +17,7 @@
     <div class="block-title"><strong><?php echo __('Default Addresses') ?></strong></div>
     <div class="block-content">
         <?php if ($_pAddsses = $this->getDefaultBilling()): ?>
-            <div class="box box-address-billing">
+            <div class="box box-billing-address">
                 <strong class="box-title">
                     <span><?php echo __('Default Billing Address') ?></span>
                 </strong>
@@ -30,7 +33,7 @@
                 </div>
             </div>
         <?php else: ?>
-            <div class="box box-address-billing">
+            <div class="box box-billing-address">
                 <strong class="box-title"><span><?php echo __('Default Billing Address') ?></span></strong>
                 <div class="box-content">
                     <p><?php echo __('You have no default billing address in your address book.') ?></p>
@@ -39,7 +42,7 @@
         <?php endif ?>
 
         <?php if ($_pAddsses = $this->getDefaultShipping()): ?>
-            <div class="box box-address-shipping">
+            <div class="box box-shipping-address">
                 <strong class="box-title">
                     <span><?php echo __('Default Shipping Address') ?></span>
                 </strong>
@@ -55,7 +58,7 @@
                 </div>
             </div>
         <?php else: ?>
-            <div class="box box-address-shipping">
+            <div class="box box-shipping-address">
                 <strong class="box-title"><span><?php echo __('Default Shipping Address') ?></span></strong>
                 <div class="box-content">
                     <p><?php echo __('You have no default shipping address in your address book.') ?></p>
@@ -97,7 +100,7 @@
     </div>
 </div>
 
-<script type="text/javascript">
+<script>
 require(['jquery', "mage/mage"], function(jQuery){
 
     jQuery('.page-main').mage('address', {
diff --git a/app/code/Magento/Customer/view/frontend/templates/address/edit.phtml b/app/code/Magento/Customer/view/frontend/templates/address/edit.phtml
index bddc9ba8825069320fcea2c46df29e4b810e46c2..ecefffcdd5f287cd930e8387a6dcfa4e1ffa5d97 100644
--- a/app/code/Magento/Customer/view/frontend/templates/address/edit.phtml
+++ b/app/code/Magento/Customer/view/frontend/templates/address/edit.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
@@ -129,7 +132,7 @@
         </div>
     </div>
 </form>
-<script type="text/javascript">
+<script>
 require([
     "jquery",
     "mage/validation",
diff --git a/app/code/Magento/Customer/view/frontend/templates/form/confirmation.phtml b/app/code/Magento/Customer/view/frontend/templates/form/confirmation.phtml
index 5f9c117f2ff026c474c8272460403cbef8340f87..fde01563bf6ebf65245b942d70a081e0a13e8d7e 100644
--- a/app/code/Magento/Customer/view/frontend/templates/form/confirmation.phtml
+++ b/app/code/Magento/Customer/view/frontend/templates/form/confirmation.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <form action="" method="post" id="form-validate" class="form send confirmation" data-mage-init='{"validation":{}}'>
     <fieldset class="fieldset" data-hasrequired="<?php echo __('* Required Fields') ?>">
diff --git a/app/code/Magento/Customer/view/frontend/templates/form/edit.phtml b/app/code/Magento/Customer/view/frontend/templates/form/edit.phtml
index d7971cee32efde02f428c77daa69b89a3edf1c32..fef3fe5925656db9eefe2b392e8627c037929fb1 100644
--- a/app/code/Magento/Customer/view/frontend/templates/form/edit.phtml
+++ b/app/code/Magento/Customer/view/frontend/templates/form/edit.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var \Magento\Customer\Block\Form\Edit $this */
 ?>
 <form class="form form-edit-account" action="<?php echo $this->getUrl('customer/account/editPost') ?>" method="post" id="form-validate" enctype="multipart/form-data" data-hasrequired="<?php echo __('* Required Fields') ?>" autocomplete="off">
@@ -65,7 +67,7 @@
         </div>
     </div>
 </form>
-<script type="text/javascript">
+<script>
     require([
         "jquery",
         "mage/mage"
diff --git a/app/code/Magento/Customer/view/frontend/templates/form/forgotpassword.phtml b/app/code/Magento/Customer/view/frontend/templates/form/forgotpassword.phtml
index 6ea86c19faa2e681fa9f812291a1a43750cd34f3..5015484f07fb928ab607829fcd92d72499273f69 100644
--- a/app/code/Magento/Customer/view/frontend/templates/form/forgotpassword.phtml
+++ b/app/code/Magento/Customer/view/frontend/templates/form/forgotpassword.phtml
@@ -5,6 +5,9 @@
  *
  * @var $this \Magento\Customer\Block\Account\Forgotpassword
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <form class="form password forget"
       action="<?php echo $this->getUrl('*/*/forgotpasswordpost') ?>"
diff --git a/app/code/Magento/Customer/view/frontend/templates/form/login.phtml b/app/code/Magento/Customer/view/frontend/templates/form/login.phtml
index 402fd64e85d5731cb4f3055e247556ec42763cd4..c3ac3196103f1abc3bf2fd67fb64dcfa0eb77286 100644
--- a/app/code/Magento/Customer/view/frontend/templates/form/login.phtml
+++ b/app/code/Magento/Customer/view/frontend/templates/form/login.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var \Magento\Customer\Block\Form\Login $this */
 ?>
 <?php
diff --git a/app/code/Magento/Customer/view/frontend/templates/form/newsletter.phtml b/app/code/Magento/Customer/view/frontend/templates/form/newsletter.phtml
index 49fe0d0e4ac2a3586213dad2aaf1f4f0bf025ce2..11c4819b9df95f2ed5a7bc078e22c9a7d935b999 100644
--- a/app/code/Magento/Customer/view/frontend/templates/form/newsletter.phtml
+++ b/app/code/Magento/Customer/view/frontend/templates/form/newsletter.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php echo $this->getChildHtml('form_before')?>
     <form class="form form-newsletter-manage" action="<?php echo $this->getAction() ?>" method="post" id="form-validate">
diff --git a/app/code/Magento/Customer/view/frontend/templates/form/register.phtml b/app/code/Magento/Customer/view/frontend/templates/form/register.phtml
index 23862fcd01cf92fcafc5699e99673b473f019e07..c60c01c21b12b90e9a942d64c3cab049c9e0d5cd 100644
--- a/app/code/Magento/Customer/view/frontend/templates/form/register.phtml
+++ b/app/code/Magento/Customer/view/frontend/templates/form/register.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
@@ -157,7 +160,7 @@
         </div>
     </div>
 </form>
-<script type="text/javascript">
+<script>
 require(['jquery', "mage/mage"], function(jQuery){
 
     (function($) {
diff --git a/app/code/Magento/Customer/view/frontend/templates/form/resetforgottenpassword.phtml b/app/code/Magento/Customer/view/frontend/templates/form/resetforgottenpassword.phtml
index c8561e373e0ecd596f82a09344dc4e23729b16ab..b73f2bb0f7ae858e016d8aabaeae5d60de31afc4 100644
--- a/app/code/Magento/Customer/view/frontend/templates/form/resetforgottenpassword.phtml
+++ b/app/code/Magento/Customer/view/frontend/templates/form/resetforgottenpassword.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var \Magento\Customer\Block\Account\Resetpassword $this */
 ?>
 <form action="<?php echo $this->getUrl('*/*/resetpasswordpost', ['_query' => ['id' => $this->getCustomerId(), 'token' => $this->getResetPasswordLinkToken()]]); ?>"
diff --git a/app/code/Magento/Customer/view/frontend/templates/js/components.phtml b/app/code/Magento/Customer/view/frontend/templates/js/components.phtml
index 99be8e37348cec69521e018a61f416324e582a94..43f7e9c30c0126f46204910ee749ef83ad81e815 100644
--- a/app/code/Magento/Customer/view/frontend/templates/js/components.phtml
+++ b/app/code/Magento/Customer/view/frontend/templates/js/components.phtml
@@ -3,5 +3,8 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php echo $this->getChildHtml() ?>
diff --git a/app/code/Magento/Customer/view/frontend/templates/logout.phtml b/app/code/Magento/Customer/view/frontend/templates/logout.phtml
index 69edd0825a20d5e85cf8e0037522246310edca7c..59c1d5df503a81661ecb904de2923b7ad2d0df0f 100644
--- a/app/code/Magento/Customer/view/frontend/templates/logout.phtml
+++ b/app/code/Magento/Customer/view/frontend/templates/logout.phtml
@@ -5,7 +5,7 @@
  */
 ?>
 <p><?php echo __('You have logged out and will be redirected to our homepage in 5 seconds.') ?></p>
-<script type="text/javascript">
+<script>
 require([
 	"jquery",
 	"mage/mage"
diff --git a/app/code/Magento/Customer/view/frontend/templates/newcustomer.phtml b/app/code/Magento/Customer/view/frontend/templates/newcustomer.phtml
index a92dd5be986ce183fb1fcdc4491547b51fc5ac67..7a50e3435ed02324acbe0df769863c4f33de6520 100644
--- a/app/code/Magento/Customer/view/frontend/templates/newcustomer.phtml
+++ b/app/code/Magento/Customer/view/frontend/templates/newcustomer.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/Customer/view/frontend/templates/widget/dob.phtml b/app/code/Magento/Customer/view/frontend/templates/widget/dob.phtml
index 9e4f73573822d3cbef603528c8bdfbe441256fef..2fb484d208ce3977ce4b0587a0052265090f6dc9 100644
--- a/app/code/Magento/Customer/view/frontend/templates/widget/dob.phtml
+++ b/app/code/Magento/Customer/view/frontend/templates/widget/dob.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
 USAGE:
 
diff --git a/app/code/Magento/Customer/view/frontend/templates/widget/gender.phtml b/app/code/Magento/Customer/view/frontend/templates/widget/gender.phtml
index 88811b0ea8569c0c3cd1b662a5f5fbc0c70bb645..d1539783ae7a53f03a1d4f812bcfa39760bbe4a8 100644
--- a/app/code/Magento/Customer/view/frontend/templates/widget/gender.phtml
+++ b/app/code/Magento/Customer/view/frontend/templates/widget/gender.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <div class="field gender<?php if ($this->isRequired()) echo ' required' ?>">
     <label class="label" for="<?php echo $this->getFieldId('gender')?>"><span><?php echo __('Gender') ?></span></label>
diff --git a/app/code/Magento/Customer/view/frontend/templates/widget/name.phtml b/app/code/Magento/Customer/view/frontend/templates/widget/name.phtml
index 317612c3582e718ff31253e826b02663dc779c88..1824b642469fd712b1a2293c892d90747fb2e8f7 100644
--- a/app/code/Magento/Customer/view/frontend/templates/widget/name.phtml
+++ b/app/code/Magento/Customer/view/frontend/templates/widget/name.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
 USAGE:
 
diff --git a/app/code/Magento/Customer/view/frontend/templates/widget/taxvat.phtml b/app/code/Magento/Customer/view/frontend/templates/widget/taxvat.phtml
index 854193dcc2247290b57e4ec67841203fd8bbc671..c7040532aab80c07deb8007fa0eaa2c175c53d63 100644
--- a/app/code/Magento/Customer/view/frontend/templates/widget/taxvat.phtml
+++ b/app/code/Magento/Customer/view/frontend/templates/widget/taxvat.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <div class="field taxvat<?php if ($this->isRequired()) echo ' required'; ?>">
     <label class="label" for="<?php echo $this->getFieldId('taxvat')?>"><span><?php echo __('Tax/VAT number') ?></span></label>
diff --git a/app/code/Magento/CustomerImportExport/Model/Export/Address.php b/app/code/Magento/CustomerImportExport/Model/Export/Address.php
index 479b3847fbc729ac8715f0a4647b92a2fbb54a8b..bfe77d3e13c450aa353d8bb7af894494bd81f0ca 100644
--- a/app/code/Magento/CustomerImportExport/Model/Export/Address.php
+++ b/app/code/Magento/CustomerImportExport/Model/Export/Address.php
@@ -5,6 +5,9 @@
  */
 namespace Magento\CustomerImportExport\Model\Export;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class Address extends \Magento\ImportExport\Model\Export\Entity\AbstractEav
 {
     /**#@+
@@ -109,6 +112,7 @@ class Address extends \Magento\ImportExport\Model\Export\Entity\AbstractEav
      * @param \Magento\CustomerImportExport\Model\Export\CustomerFactory $eavCustomerFactory
      * @param \Magento\Customer\Model\Resource\Address\CollectionFactory $addressColFactory
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig,
diff --git a/app/code/Magento/CustomerImportExport/Model/Import/AbstractCustomer.php b/app/code/Magento/CustomerImportExport/Model/Import/AbstractCustomer.php
index 68e54fe4ad7e1ccffbe8f9f6d5648e58fdf2fce6..fd577239948e53d486348ad0bd6e2b4009878302 100644
--- a/app/code/Magento/CustomerImportExport/Model/Import/AbstractCustomer.php
+++ b/app/code/Magento/CustomerImportExport/Model/Import/AbstractCustomer.php
@@ -9,6 +9,7 @@ use Magento\CustomerImportExport\Model\Resource\Import\Customer\Storage;
 
 /**
  * Import entity abstract customer model
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 abstract class AbstractCustomer extends \Magento\ImportExport\Model\Import\Entity\AbstractEav
 {
@@ -79,6 +80,7 @@ abstract class AbstractCustomer extends \Magento\ImportExport\Model\Import\Entit
      * @param \Magento\Eav\Model\Config $eavConfig
      * @param \Magento\CustomerImportExport\Model\Resource\Import\Customer\StorageFactory $storageFactory
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Core\Helper\Data $coreData,
diff --git a/app/code/Magento/CustomerImportExport/Model/Import/Address.php b/app/code/Magento/CustomerImportExport/Model/Import/Address.php
index 635ba95eb8344fdfaa5f6bb275391a94ef6018f5..425c3bab09f303f81aee5460a085c770fc3ecc8c 100644
--- a/app/code/Magento/CustomerImportExport/Model/Import/Address.php
+++ b/app/code/Magento/CustomerImportExport/Model/Import/Address.php
@@ -5,6 +5,10 @@
  */
 namespace Magento\CustomerImportExport\Model\Import;
 
+/**
+ * @SuppressWarnings(PHPMD.TooManyFields)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class Address extends AbstractCustomer
 {
     /**#@+
@@ -226,6 +230,8 @@ class Address extends AbstractCustomer
      * @param \Magento\Customer\Model\Resource\Address\Attribute\CollectionFactory $attributesFactory
      * @param \Magento\Framework\Stdlib\DateTime $dateTime
      * @param array $data
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Core\Helper\Data $coreData,
@@ -451,6 +457,8 @@ class Address extends AbstractCustomer
      *
      * @param array $rowData
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _prepareDataForUpdate(array $rowData)
     {
@@ -493,7 +501,6 @@ class Address extends AbstractCustomer
         // entity table data
         $entityRow = [
             'entity_id' => $addressId,
-            'entity_type_id' => $this->getEntityTypeId(),
             'parent_id' => $customerId,
             'created_at' => $this->dateTime->now(),
             'updated_at' => $this->dateTime->now(),
@@ -563,7 +570,6 @@ class Address extends AbstractCustomer
                 foreach ($attributeData as $attributeId => $value) {
                     $tableData[] = [
                         'entity_id' => $addressId,
-                        'entity_type_id' => $this->getEntityTypeId(),
                         'attribute_id' => $attributeId,
                         'value' => $value,
                     ];
@@ -579,12 +585,12 @@ class Address extends AbstractCustomer
      *
      * @param array $defaults
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     protected function _saveCustomerDefaults(array $defaults)
     {
         /** @var $entity \Magento\Customer\Model\Customer */
         $entity = $this->_customerFactory->create();
-        $entityTypeId = $entity->getEntityTypeId();
 
         foreach ($defaults as $tableName => $data) {
             $tableData = [];
@@ -592,7 +598,6 @@ class Address extends AbstractCustomer
                 foreach ($attributeData as $attributeId => $value) {
                     $tableData[] = [
                         'entity_id' => $customerId,
-                        'entity_type_id' => $entityTypeId,
                         'attribute_id' => $attributeId,
                         'value' => $value,
                     ];
@@ -645,6 +650,8 @@ class Address extends AbstractCustomer
      * @param array $rowData
      * @param int $rowNumber
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _validateRowForUpdate(array $rowData, $rowNumber)
     {
diff --git a/app/code/Magento/CustomerImportExport/Model/Import/Customer.php b/app/code/Magento/CustomerImportExport/Model/Import/Customer.php
index 96835113c87fca6efbdb05b7fef216a6d80a0e14..a498218c67381f0ed6baabef9bd49c9f56342e38 100644
--- a/app/code/Magento/CustomerImportExport/Model/Import/Customer.php
+++ b/app/code/Magento/CustomerImportExport/Model/Import/Customer.php
@@ -5,6 +5,9 @@
  */
 namespace Magento\CustomerImportExport\Model\Import;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class Customer extends AbstractCustomer
 {
     /**
@@ -128,6 +131,7 @@ class Customer extends AbstractCustomer
      * @param \Magento\Customer\Model\Resource\Attribute\CollectionFactory $attrCollectionFactory
      * @param \Magento\Customer\Model\CustomerFactory $customerFactory
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Core\Helper\Data $coreData,
@@ -234,7 +238,6 @@ class Customer extends AbstractCustomer
                 foreach ($attributeData as $attributeId => $value) {
                     $tableData[] = [
                         'entity_id' => $customerId,
-                        'entity_type_id' => $this->getEntityTypeId(),
                         'attribute_id' => $attributeId,
                         'value' => $value,
                     ];
@@ -277,6 +280,8 @@ class Customer extends AbstractCustomer
      *
      * @param array $rowData
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _prepareDataForUpdate(array $rowData)
     {
@@ -312,8 +317,6 @@ class Customer extends AbstractCustomer
             // create
             $entityId = $this->_getNextEntityId();
             $entityRow['entity_id'] = $entityId;
-            $entityRow['entity_type_id'] = $this->getEntityTypeId();
-            $entityRow['attribute_set_id'] = 0;
             $entityRow['website_id'] = $this->_websiteCodeToId[$rowData[self::COLUMN_WEBSITE]];
             $entityRow['email'] = $emailInLowercase;
             $entityRow['is_active'] = 1;
@@ -366,6 +369,7 @@ class Customer extends AbstractCustomer
      * Import data rows
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _importData()
     {
@@ -433,6 +437,8 @@ class Customer extends AbstractCustomer
      * @param array $rowData
      * @param int $rowNumber
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _validateRowForUpdate(array $rowData, $rowNumber)
     {
diff --git a/app/code/Magento/CustomerImportExport/composer.json b/app/code/Magento/CustomerImportExport/composer.json
index 286d4febae3a26eae8ae8e14883f50dde2894d04..d5a5064f9e57d45a76ef9a2627307a0a9d3caaac 100644
--- a/app/code/Magento/CustomerImportExport/composer.json
+++ b/app/code/Magento/CustomerImportExport/composer.json
@@ -3,18 +3,18 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/module-core": "0.42.0-beta3",
-        "magento/module-customer": "0.42.0-beta3",
-        "magento/module-eav": "0.42.0-beta3",
-        "magento/module-import-export": "0.42.0-beta3",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-directory": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/module-core": "0.42.0-beta4",
+        "magento/module-customer": "0.42.0-beta4",
+        "magento/module-eav": "0.42.0-beta4",
+        "magento/module-import-export": "0.42.0-beta4",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-directory": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/DesignEditor/Block/Adminhtml/Editor/Container.php b/app/code/Magento/DesignEditor/Block/Adminhtml/Editor/Container.php
index fd7e904516c9d73432aa06af9e72d6087f4a05b2..9d4a2c9dcab25d0fe1e1499f360fbd31de80f115 100644
--- a/app/code/Magento/DesignEditor/Block/Adminhtml/Editor/Container.php
+++ b/app/code/Magento/DesignEditor/Block/Adminhtml/Editor/Container.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\DesignEditor\Block\Adminhtml\Editor;
 
 /**
diff --git a/app/code/Magento/DesignEditor/Block/Adminhtml/Editor/Form/Renderer.php b/app/code/Magento/DesignEditor/Block/Adminhtml/Editor/Form/Renderer.php
index 409ec8fc5f5a4a0328a2bfff745093fc14890bc3..275d18f9e429a20bd759ac407c459ab8c0d25e1f 100644
--- a/app/code/Magento/DesignEditor/Block/Adminhtml/Editor/Form/Renderer.php
+++ b/app/code/Magento/DesignEditor/Block/Adminhtml/Editor/Form/Renderer.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Color-picker form element renderer
  */
diff --git a/app/code/Magento/DesignEditor/Block/Adminhtml/Editor/Form/Renderer/LogoUploader.php b/app/code/Magento/DesignEditor/Block/Adminhtml/Editor/Form/Renderer/LogoUploader.php
index 7c7aac95ee12d39cf7a87629211cf1462b31d6d3..28db136b67d8f651be513e987e634e0508b6b5a0 100644
--- a/app/code/Magento/DesignEditor/Block/Adminhtml/Editor/Form/Renderer/LogoUploader.php
+++ b/app/code/Magento/DesignEditor/Block/Adminhtml/Editor/Form/Renderer/LogoUploader.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\DesignEditor\Block\Adminhtml\Editor\Form\Renderer;
 
 /**
diff --git a/app/code/Magento/DesignEditor/Block/Adminhtml/Editor/Toolbar/Buttons/Edit.php b/app/code/Magento/DesignEditor/Block/Adminhtml/Editor/Toolbar/Buttons/Edit.php
index f0601a8196a46f4559f80a99f404f79ff9d2edb9..f2771c3694de21a58ce6167b680f574e655b742b 100644
--- a/app/code/Magento/DesignEditor/Block/Adminhtml/Editor/Toolbar/Buttons/Edit.php
+++ b/app/code/Magento/DesignEditor/Block/Adminhtml/Editor/Toolbar/Buttons/Edit.php
@@ -81,6 +81,7 @@ class Edit extends \Magento\Backend\Block\Widget\Button\SplitButton
      * Whether button is disabled
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getDisabled()
     {
diff --git a/app/code/Magento/DesignEditor/Block/Adminhtml/Editor/Toolbar/Buttons/Save.php b/app/code/Magento/DesignEditor/Block/Adminhtml/Editor/Toolbar/Buttons/Save.php
index 45a5a618c242e2e3c3dc134a58ff0fd11c9d63c1..ad833388d9e0a4480cd7c52941f7ad2ebb502a6d 100644
--- a/app/code/Magento/DesignEditor/Block/Adminhtml/Editor/Toolbar/Buttons/Save.php
+++ b/app/code/Magento/DesignEditor/Block/Adminhtml/Editor/Toolbar/Buttons/Save.php
@@ -79,6 +79,7 @@ class Save extends \Magento\Backend\Block\Widget\Button\SplitButton
      * Whether button is disabled
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getDisabled()
     {
diff --git a/app/code/Magento/DesignEditor/Block/Adminhtml/Theme/Selector/Tabs.php b/app/code/Magento/DesignEditor/Block/Adminhtml/Theme/Selector/Tabs.php
index 31d4193e94e73cba60ccd7f518651e5f69e335c0..b7c3740c6c20ea31e28b2cf71ba94612313bc9d3 100644
--- a/app/code/Magento/DesignEditor/Block/Adminhtml/Theme/Selector/Tabs.php
+++ b/app/code/Magento/DesignEditor/Block/Adminhtml/Theme/Selector/Tabs.php
@@ -50,6 +50,6 @@ class Tabs extends \Magento\Backend\Block\Widget\Tabs
             });",
             $this->getUrl('adminhtml/*/quickEdit')
         );
-        return sprintf('<script type="text/javascript">%s</script>', $script);
+        return sprintf('<script>%s</script>', $script);
     }
 }
diff --git a/app/code/Magento/DesignEditor/Controller/Adminhtml/System/Design/Editor/Tools/JsList.php b/app/code/Magento/DesignEditor/Controller/Adminhtml/System/Design/Editor/Tools/JsList.php
index ef2b8b72ef1ad5aceab4bf7cd9813e52d6fff2ad..8133a7bfcbd0791bf827ecb83357803bf74ee03d 100644
--- a/app/code/Magento/DesignEditor/Controller/Adminhtml/System/Design/Editor/Tools/JsList.php
+++ b/app/code/Magento/DesignEditor/Controller/Adminhtml/System/Design/Editor/Tools/JsList.php
@@ -4,6 +4,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\DesignEditor\Controller\Adminhtml\System\Design\Editor\Tools;
 
 class JsList extends \Magento\DesignEditor\Controller\Adminhtml\System\Design\Editor\Tools
diff --git a/app/code/Magento/DesignEditor/Model/Editor/Tools/QuickStyles/Form/Renderer/Factory.php b/app/code/Magento/DesignEditor/Model/Editor/Tools/QuickStyles/Form/Renderer/Factory.php
index 2611c0da296dd68b463e4cb1b09d6553a3d771c2..c3e19c8a2d682078f1fdf6562f50a4f880f97485 100644
--- a/app/code/Magento/DesignEditor/Model/Editor/Tools/QuickStyles/Form/Renderer/Factory.php
+++ b/app/code/Magento/DesignEditor/Model/Editor/Tools/QuickStyles/Form/Renderer/Factory.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\DesignEditor\Model\Editor\Tools\QuickStyles\Form\Renderer;
 
 use Magento\Framework\Data\Form\Element\Renderer\RendererInterface;
diff --git a/app/code/Magento/DesignEditor/Model/Editor/Tools/QuickStyles/Renderer/Factory.php b/app/code/Magento/DesignEditor/Model/Editor/Tools/QuickStyles/Renderer/Factory.php
index 6b6d156210ad774b043fafd25d16c78d135330f2..14a2bc8970f949c8bc275d31a0ad627f1b621067 100644
--- a/app/code/Magento/DesignEditor/Model/Editor/Tools/QuickStyles/Renderer/Factory.php
+++ b/app/code/Magento/DesignEditor/Model/Editor/Tools/QuickStyles/Renderer/Factory.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\DesignEditor\Model\Editor\Tools\QuickStyles\Renderer;
 
 /**
diff --git a/app/code/Magento/DesignEditor/Model/Observer.php b/app/code/Magento/DesignEditor/Model/Observer.php
index 6058551e4a3654f7e492acc3643cf814c7deb0fb..846f7992e8c0b18c84d1881a2de7037672b3c8e4 100644
--- a/app/code/Magento/DesignEditor/Model/Observer.php
+++ b/app/code/Magento/DesignEditor/Model/Observer.php
@@ -48,6 +48,7 @@ class Observer
      *
      * @param EventObserver $event
      * @return void
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function clearJs(EventObserver $event)
     {
diff --git a/app/code/Magento/DesignEditor/Model/Url/NavigationMode.php b/app/code/Magento/DesignEditor/Model/Url/NavigationMode.php
index 38a8ab66a502749a1d90772d664543c9805195d7..af413fcd477b0b044e36d1bc9ed4bfc3c6637eb5 100644
--- a/app/code/Magento/DesignEditor/Model/Url/NavigationMode.php
+++ b/app/code/Magento/DesignEditor/Model/Url/NavigationMode.php
@@ -44,6 +44,7 @@ class NavigationMode extends \Magento\Framework\Url
      * @param string $scopeType
      * @param \Magento\DesignEditor\Helper\Data $helper
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\App\Route\ConfigInterface $routeConfig,
diff --git a/app/code/Magento/DesignEditor/composer.json b/app/code/Magento/DesignEditor/composer.json
index 356553a6cc3b656a3ec8fd4f580035567dd86798..79e8100a7f7b9a27fc8df52151a580d6e325f78c 100644
--- a/app/code/Magento/DesignEditor/composer.json
+++ b/app/code/Magento/DesignEditor/composer.json
@@ -3,16 +3,16 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-theme": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/module-core": "0.42.0-beta3",
-        "magento/module-eav": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-theme": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/module-core": "0.42.0-beta4",
+        "magento/module-eav": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/templates/dialog.phtml b/app/code/Magento/DesignEditor/view/adminhtml/templates/dialog.phtml
index c7a715b17a5902a36d9a7d335d0a6b4f55c03aa4..de5fffe338b945acf86a9954481dc9460da23261 100644
--- a/app/code/Magento/DesignEditor/view/adminhtml/templates/dialog.phtml
+++ b/app/code/Magento/DesignEditor/view/adminhtml/templates/dialog.phtml
@@ -10,7 +10,7 @@
     <p class="confirm_message"></p>
 </div>
 
-<script type="text/javascript">
+<script>
 require([
     'jquery',
     'Magento_DesignEditor/js/dialog'
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/container.phtml b/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/container.phtml
index f4556d293e47d855030c297e4b46680b04bd1ce2..e2f53a5555d5cf8d66c98bea81ac8920537dfbb3 100644
--- a/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/container.phtml
+++ b/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/container.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php /** @var $this \Magento\DesignEditor\Block\Adminhtml\Editor\Container */ ?>
@@ -10,7 +13,7 @@
 <?php echo $this->getChildHtml('theme.selector.storeview'); ?>
 <iframe name="vde_container_frame" data-frame="editor" id="vde_container_frame" class="vde_container_frame" src="<?php echo $this->getFrameUrl(); ?>"></iframe>
 <?php echo $this->getChildHtml('design_editor_tools'); ?>
-<script type="text/javascript">
+<script>
 require([
 	"jquery",
 	"Magento_DesignEditor/js/theme-save",
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/form/renderer/background-uploader.phtml b/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/form/renderer/background-uploader.phtml
index e98760d818e5c6eac39e848fbb3ef3723dc28c0c..5bdbac5aa2085383396666c2c7a4df77e81f6483 100644
--- a/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/form/renderer/background-uploader.phtml
+++ b/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/form/renderer/background-uploader.phtml
@@ -34,7 +34,7 @@ $element = $this->getElement();
         </div>
     </div>
 
-    <script type="text/javascript">
+    <script>
 require([
     "jquery",
     "Magento_DesignEditor/js/quick-style-uploader"
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/form/renderer/checkbox-utility.phtml b/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/form/renderer/checkbox-utility.phtml
index c0a2d9d0d258efb117949c7b4ef33fdf6ed47950..234be2d7e758bf28346a7737e3f068938748ab5b 100644
--- a/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/form/renderer/checkbox-utility.phtml
+++ b/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/form/renderer/checkbox-utility.phtml
@@ -12,7 +12,7 @@ $element = $this->getElement();
 
 <?php echo $this->getHtml() ?>
 
-<script type="text/javascript">
+<script>
 require(['jquery'], function($){
 
     var checkbox = document.getElementById('<?php echo $element->getHtmlId() ?>');
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/form/renderer/color-picker.phtml b/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/form/renderer/color-picker.phtml
index 1be30cf7f6e0e52909047891bc0c5cca1b026c3b..f4103565a24935fcfbce4cae3bccad9dd49075bc 100644
--- a/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/form/renderer/color-picker.phtml
+++ b/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/form/renderer/color-picker.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php /** @var $this \Magento\DesignEditor\Block\Adminhtml\Editor\Form\Renderer\ColorPicker */ ?>
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/form/renderer/composite.phtml b/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/form/renderer/composite.phtml
index 50a12b22aa369050d8de71d4b40afc55dbcf15f8..a34053ec0c2740c11d36c03fbf7e3fa529e9939e 100644
--- a/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/form/renderer/composite.phtml
+++ b/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/form/renderer/composite.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\DesignEditor\Block\Adminhtml\Editor\Form\Renderer\Composite */ ?>
 <?php
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/form/renderer/composite/children.phtml b/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/form/renderer/composite/children.phtml
index 40b05756b023d79ae248e5e3fc237760828f677d..02a6d27d127ad73d705617b66aec525f295c08f3 100644
--- a/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/form/renderer/composite/children.phtml
+++ b/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/form/renderer/composite/children.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\DesignEditor\Block\Adminhtml\Editor\Form\Renderer\Composite */ ?>
 <?php
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/form/renderer/composite/wrapper.phtml b/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/form/renderer/composite/wrapper.phtml
index 8f3879ee560c66ba2440b4a6433b8787a21cf86d..f14050bb4fbb351b4046389d99dc6b3d296dbc7d 100644
--- a/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/form/renderer/composite/wrapper.phtml
+++ b/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/form/renderer/composite/wrapper.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\DesignEditor\Block\Adminhtml\Editor\Form\Renderer\Composite */ ?>
 <?php
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/form/renderer/element/wrapper.phtml b/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/form/renderer/element/wrapper.phtml
index f06a99f2b3c8817b32b8b75243aafb376ee21327..8d4dce8884c1e165e1fa388044cd6804067171e0 100644
--- a/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/form/renderer/element/wrapper.phtml
+++ b/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/form/renderer/element/wrapper.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php /* former part of \Magento\Framework\Data\Form\Element\AbstractElement::getElementHtml() */ ?>
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/form/renderer/logo-uploader.phtml b/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/form/renderer/logo-uploader.phtml
index b9a1445fdeb399f011622a1e0b3ab024414f58fa..314b3321d8b2b8d8e8993b0c49e73aed8ca6d168 100644
--- a/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/form/renderer/logo-uploader.phtml
+++ b/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/form/renderer/logo-uploader.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\DesignEditor\Block\Adminhtml\Editor\Form\Renderer\LogoUploader */ ?>
 <?php /** @var $element \Magento\DesignEditor\Block\Adminhtml\Editor\Form\Element\LogoUploader */?>
@@ -34,7 +37,7 @@
             </div>
         </div>
 
-        <script type="text/javascript">
+        <script>
 require([
     'jquery',
     'Magento_DesignEditor/js/quick-style-uploader'
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/form/renderer/simple.phtml b/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/form/renderer/simple.phtml
index 400138948f2236e039f025024c6db32675dca4a1..c0d33c4d0d84bb9e51dffa634c000e8c47228412 100644
--- a/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/form/renderer/simple.phtml
+++ b/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/form/renderer/simple.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\DesignEditor\Block\Adminhtml\Editor\Form\Renderer\ColorPicker */ ?>
 <?php
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/form/renderer/template.phtml b/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/form/renderer/template.phtml
index e20ab01a0eeb09a07d5cfe2ef46df8653e50a306..17b71747825ca24be45112cba1b3de4a421b1ba5 100644
--- a/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/form/renderer/template.phtml
+++ b/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/form/renderer/template.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\DesignEditor\Block\Adminhtml\Editor\Form\Renderer\Checkbox */ ?>
 <?php
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/toolbar/buttons.phtml b/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/toolbar/buttons.phtml
index 0f78fd322d87500b7b09886c8a63595e0f8204dc..2694bf66dbac6a668bccbe41018128721748abe6 100644
--- a/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/toolbar/buttons.phtml
+++ b/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/toolbar/buttons.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\DesignEditor\Block\Adminhtml\Editor\Toolbar\Buttons */ ?>
 
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/toolbar/buttons/edit.phtml b/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/toolbar/buttons/edit.phtml
index 1fd5fa86ceda1e3037d8761f79b3b1c229287dc9..f67f83345ca09445f30c33b7acd008ffa47e4e9d 100644
--- a/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/toolbar/buttons/edit.phtml
+++ b/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/toolbar/buttons/edit.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /** @var $this \Magento\DesignEditor\Block\Adminhtml\Editor\Toolbar\Buttons\Edit */
@@ -24,7 +27,7 @@
     <p class="confirm_message"></p>
 </div>
 
-<script type="text/javascript">
+<script>
     require([
         "jquery",
         "mage/mage"
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/tools.phtml b/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/tools.phtml
index c0e6041a7dc2ff64ba70526630f31a08da27d63f..cd74d7dcfb52ed7a41d694922d8434f04c6f5147 100644
--- a/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/tools.phtml
+++ b/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/tools.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php /** @var $this \Magento\DesignEditor\Block\Adminhtml\Editor\Tools */ ?>
@@ -69,7 +72,7 @@
     </div>
 </div>
 
-<script type="text/javascript">
+<script>
 require([
     'jquery',
     'Magento_DesignEditor/js/quick-style-element',
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/tools/block.phtml b/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/tools/block.phtml
index c0a8ae9b5107aef8cefaf2b43a5543d222bd1544..3c78a93dde6b55d018778920ab271c4bd775ad13 100644
--- a/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/tools/block.phtml
+++ b/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/tools/block.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\DesignEditor\Block\Adminhtml\Editor\Tools\Block */ ?>
 
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/tools/code/custom.phtml b/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/tools/code/custom.phtml
index 88898d7e8ace72483b8cf02387d3c3e493f46532..9c5632221339aa11cd127f4e2c4b511b9981f742 100644
--- a/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/tools/code/custom.phtml
+++ b/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/tools/code/custom.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\DesignEditor\Block\Adminhtml\Editor\Tools\Code\Custom */ ?>
 <div id="vde-tab-custom-messages-placeholder"></div>
@@ -48,7 +51,7 @@
 </div>
 
 
-<script type="text/javascript">
+<script>
 require([
     "jquery",
     "jquery/file-uploader",
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/tools/code/image-sizing.phtml b/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/tools/code/image-sizing.phtml
index 0c245faed039524513c6aecf8781110a59c299d0..d0cf19c1948c5217101a063507a6e0429a9a71bc 100644
--- a/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/tools/code/image-sizing.phtml
+++ b/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/tools/code/image-sizing.phtml
@@ -11,7 +11,7 @@
 <div class="form-inline vde-image-sizing">
 <?php echo $this->getFormHtml(); ?>
 </div>
-<script type="text/javascript">
+<script>
 require([
     "jquery",
     "Magento_DesignEditor/js/image-sizing"
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/tools/code/js.phtml b/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/tools/code/js.phtml
index d62a9d3770f1f759244d8e77e99c6400a9422dcc..2fa1b0f9d218337bead686076375ccf9fb2b20d6 100644
--- a/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/tools/code/js.phtml
+++ b/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/tools/code/js.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\DesignEditor\Block\Adminhtml\Editor\Tools\Code\Js */ ?>
 <div id="vde-tab-js-messages-placeholder"></div>
@@ -47,7 +50,7 @@
     <span class="filename"><?php echo __('We found no javascript files.') ?></span>
 </li>
 
-<script type="text/javascript">
+<script>
 require([
     "jquery",
     "jquery/ui",
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/tools/files/content/files.phtml b/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/tools/files/content/files.phtml
index a20fee247a986faf6095009bc391e4a672edb5ab..de35aa79a816f6af599ef90bf882476fff36b0a3 100644
--- a/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/tools/files/content/files.phtml
+++ b/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/tools/files/content/files.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/tools/files/content/uploader.phtml b/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/tools/files/content/uploader.phtml
index 4c872835d0088c47a4a6b538c42e91e62e142ed5..5057f05b6fd11e9a5457baff8c718faa1202629c 100644
--- a/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/tools/files/content/uploader.phtml
+++ b/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/tools/files/content/uploader.phtml
@@ -50,7 +50,7 @@
     </button>
 </div>
 
-<script type="text/javascript">
+<script>
 require([
     'jquery',
     'jquery/ui',
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/tools/files/js.phtml b/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/tools/files/js.phtml
index 8f4302b04d7fdaf78376c972a7ddb28fa8920655..b05f2f177cb17811b44fa0bd3519ea2e4ac81904 100644
--- a/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/tools/files/js.phtml
+++ b/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/tools/files/js.phtml
@@ -5,7 +5,7 @@
  */
 ?>
 
-<script type="text/javascript">
+<script>
 require([
 	'Magento_DesignEditor/js/tools-files'
 ], function(){
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/tools/files/tree.phtml b/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/tools/files/tree.phtml
index a56fd238735e2c0754520f114b5960815524d045..e9e1812bab50901beed54065b479bd736e2e9056 100644
--- a/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/tools/files/tree.phtml
+++ b/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/tools/files/tree.phtml
@@ -29,7 +29,7 @@
 
 <div id="tree" style="width:100%; overflow:auto;"></div>
 
-<script type="text/javascript">
+<script>
 require([
     'jquery',
     'Magento_DesignEditor/js/tools-files'
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/tools/settings.phtml b/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/tools/settings.phtml
index c4d38417e871c704d7127b62e9ff302401047fbe..fadcf835db331f11b1b74b71f959192be2e747ec 100644
--- a/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/tools/settings.phtml
+++ b/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/tools/settings.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\DesignEditor\Block\Adminhtml\Editor\Tools\Settings */ ?>
 
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/tools/tabs.phtml b/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/tools/tabs.phtml
index b87324129da75be6565fedbee91e6f2d9bb7a67f..be422d61d7e047898080e60da2f50c01d50cad18 100644
--- a/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/tools/tabs.phtml
+++ b/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/tools/tabs.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\DesignEditor\Block\Adminhtml\Editor\Tools\Tabs\AbstractTabs */ ?>
 
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/tools/tabs/super-handle.phtml b/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/tools/tabs/super-handle.phtml
index 61217d12e4e6a9934526e2281961089e49449b0b..14df774abf2dfb29ab7498441f6092fd0ade27c8 100644
--- a/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/tools/tabs/super-handle.phtml
+++ b/app/code/Magento/DesignEditor/view/adminhtml/templates/editor/tools/tabs/super-handle.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\Backend\Block\Template */ ?>
 <li class="item<?php echo ' ',$this->getClass(); ?><?php echo $this->getIsHidden() ? ' hidden' : '' ?><?php echo $this->getIsDisabled() ? ' disabled' : '' ?>">
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/templates/theme/available.phtml b/app/code/Magento/DesignEditor/view/adminhtml/templates/theme/available.phtml
index 111d85972b3c355129208bf00872d00d5925b081..9faf2a2eab414d134c4617a0bc10acbd68cd411b 100644
--- a/app/code/Magento/DesignEditor/view/adminhtml/templates/theme/available.phtml
+++ b/app/code/Magento/DesignEditor/view/adminhtml/templates/theme/available.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php /** @var $this \Magento\DesignEditor\Block\Adminhtml\Theme */?>
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/templates/theme/button.phtml b/app/code/Magento/DesignEditor/view/adminhtml/templates/theme/button.phtml
index 34b3a00a2475f471fbd36945e32e5c5ebac3e018..8a84e69201f8226a52520e767d3ac9efd7b477b8 100644
--- a/app/code/Magento/DesignEditor/view/adminhtml/templates/theme/button.phtml
+++ b/app/code/Magento/DesignEditor/view/adminhtml/templates/theme/button.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/templates/theme/customized.phtml b/app/code/Magento/DesignEditor/view/adminhtml/templates/theme/customized.phtml
index 7e384006881bf5921b2c60d9158122f14aa7fc94..8eea9a6d145b8af75c69a337cc3eddc7ccde4af5 100644
--- a/app/code/Magento/DesignEditor/view/adminhtml/templates/theme/customized.phtml
+++ b/app/code/Magento/DesignEditor/view/adminhtml/templates/theme/customized.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php /** @var $this \Magento\DesignEditor\Block\Adminhtml\Theme */?>
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/templates/theme/list/available.phtml b/app/code/Magento/DesignEditor/view/adminhtml/templates/theme/list/available.phtml
index f9e11f708d0df4fdd4c4baa85d0e3ea8a2fed7ac..993f45050fa90b5ac508d6478decb51df35ef481 100644
--- a/app/code/Magento/DesignEditor/view/adminhtml/templates/theme/list/available.phtml
+++ b/app/code/Magento/DesignEditor/view/adminhtml/templates/theme/list/available.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\DesignEditor\Block\Adminhtml\Theme\Selector\SelectorList\Available */?>
 
@@ -10,7 +13,7 @@
     <ul class="themes" id="available-themes-container"></ul>
 </div>
 
-<script type="text/javascript">
+<script>
 require([
     'jquery',
     'Magento_DesignEditor/js/infinitescroll'
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/templates/theme/list/available_ajax.phtml b/app/code/Magento/DesignEditor/view/adminhtml/templates/theme/list/available_ajax.phtml
index f9813c6307404bc89901d3a8941f6e14ed1feabc..c66e35298d25a96adae1ec923458ce60c4a128f9 100644
--- a/app/code/Magento/DesignEditor/view/adminhtml/templates/theme/list/available_ajax.phtml
+++ b/app/code/Magento/DesignEditor/view/adminhtml/templates/theme/list/available_ajax.phtml
@@ -7,7 +7,7 @@
 <?php /** @var $this \Magento\DesignEditor\Block\Adminhtml\Theme\Selector\SelectorList\Available */ ?>
 <?php echo join("\n", $this->getListItems()) ?>
 
-<script type="text/javascript">
+<script>
 require([
 	'jquery',
 	'Magento_DesignEditor/js/infinitescroll'
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/templates/theme/list/customized.phtml b/app/code/Magento/DesignEditor/view/adminhtml/templates/theme/list/customized.phtml
index adbcd78222932e183f4a3d32ebf303b2435c87d3..94e827929b0abab5bdbc17a16684bfd4808eccf8 100644
--- a/app/code/Magento/DesignEditor/view/adminhtml/templates/theme/list/customized.phtml
+++ b/app/code/Magento/DesignEditor/view/adminhtml/templates/theme/list/customized.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\DesignEditor\Block\Adminhtml\Theme\Selector\SelectorList\AbstractSelectorList */?>
 
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/templates/theme/selector/first_entrance.phtml b/app/code/Magento/DesignEditor/view/adminhtml/templates/theme/selector/first_entrance.phtml
index 6121c5b1d99b2212b71d40db1bfef9a3a6eb39bc..dffd1c51c5a3acc07e8480bb8f413efc5ab2b1bb 100644
--- a/app/code/Magento/DesignEditor/view/adminhtml/templates/theme/selector/first_entrance.phtml
+++ b/app/code/Magento/DesignEditor/view/adminhtml/templates/theme/selector/first_entrance.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php /** @var $this \Magento\Backend\Block\Template */?>
@@ -21,7 +24,7 @@
     </div>
 <div>
 
-<script type="text/javascript">
+<script>
 require([
     'jquery',
     'Magento_DesignEditor/js/infinitescroll'
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/templates/theme/selector/my_customizations_tab.phtml b/app/code/Magento/DesignEditor/view/adminhtml/templates/theme/selector/my_customizations_tab.phtml
index 0243e8d8b17e5e9e3d65cc8e33a96214763ae41a..f2f416a2df1483b5a0b87f698f60e787a5618856 100644
--- a/app/code/Magento/DesignEditor/view/adminhtml/templates/theme/selector/my_customizations_tab.phtml
+++ b/app/code/Magento/DesignEditor/view/adminhtml/templates/theme/selector/my_customizations_tab.phtml
@@ -9,7 +9,7 @@
 <div class="themes-assigned"><?php echo $this->getChildHtml('assigned.theme.list') ?></div>
 <div class="themes-unassigned"><?php echo $this->getChildHtml('unassigned.theme.list') ?></div>
 
-<script type="text/javascript">
+<script>
 require([
 	'jquery',
 	'Magento_DesignEditor/js/theme-delete'
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/templates/theme/selector/storeview.phtml b/app/code/Magento/DesignEditor/view/adminhtml/templates/theme/selector/storeview.phtml
index ddd5344a8e906ececb92220579f3706bc73e5a8d..1cb62d26e45135c20d36bca4609c8655838411d0 100644
--- a/app/code/Magento/DesignEditor/view/adminhtml/templates/theme/selector/storeview.phtml
+++ b/app/code/Magento/DesignEditor/view/adminhtml/templates/theme/selector/storeview.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php /** @var $this \Magento\DesignEditor\Block\Adminhtml\Theme\Selector\StoreView */?>
@@ -44,7 +47,7 @@
     <p class="confirm_message"></p>
 </div>
 
-<script type="text/javascript">
+<script>
 require([
     'jquery',
     'Magento_DesignEditor/js/theme-assign'
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/templates/theme/selector/theme_edit.phtml b/app/code/Magento/DesignEditor/view/adminhtml/templates/theme/selector/theme_edit.phtml
index 66793897820f05cd6ff4227f3c21f16661dacddb..59e66712dd0fbcb6c5f4307a31dff0ea77b490de 100644
--- a/app/code/Magento/DesignEditor/view/adminhtml/templates/theme/selector/theme_edit.phtml
+++ b/app/code/Magento/DesignEditor/view/adminhtml/templates/theme/selector/theme_edit.phtml
@@ -3,9 +3,12 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
-<script type="text/javascript">
+<script>
 require([
     'jquery',
     'Magento_DesignEditor/js/theme-edit'
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansBlack-webfont.eot b/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansBlack-webfont.eot
deleted file mode 100644
index ff6a97e9ddf5f08b1d7a94e4395af25df88ba01f..0000000000000000000000000000000000000000
Binary files a/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansBlack-webfont.eot and /dev/null differ
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansBlack-webfont.svg b/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansBlack-webfont.svg
deleted file mode 100644
index 6c5ffea8d6a9231c4d9f8156e97f9d4b55d8a766..0000000000000000000000000000000000000000
--- a/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansBlack-webfont.svg
+++ /dev/null
@@ -1,244 +0,0 @@
-<?xml version="1.0" standalone="no"?>
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
-<svg xmlns="http://www.w3.org/2000/svg">
-<metadata>
-This is a custom SVG webfont generated by Fontspring.
-</metadata>
-<defs>
-<font id="webfont85gDAx2H" horiz-adv-x="1648" >
-<font-face units-per-em="2048" ascent="1536" descent="-512" />
-<missing-glyph horiz-adv-x="491" />
-<glyph unicode=" "  horiz-adv-x="491" />
-<glyph unicode="&#x09;" horiz-adv-x="491" />
-<glyph unicode="&#xa0;" horiz-adv-x="491" />
-<glyph unicode="!" horiz-adv-x="598" d="M119 152q0 74 52 127t124 53q74 0 126 -53.5t52 -126.5q0 -72 -52 -124.5t-126 -52.5q-72 0 -124 52.5t-52 124.5zM129 1391h354l-59 -895h-240z" />
-<glyph unicode="&#x22;" horiz-adv-x="835" d="M106 788v578h261v-76l-84 -502h-177zM504 788v578h262v-76l-88 -502h-174z" />
-<glyph unicode="#" horiz-adv-x="1443" d="M68 215l22 160h283l57 272h-278l24 158h287l78 379h166l-78 -379h280l78 379h166l-78 -379h301l-24 -158h-310l-55 -272h305l-22 -160h-316l-80 -397h-167l79 397h-276l-82 -397h-168l82 397h-274zM541 375h278l58 272h-281z" />
-<glyph unicode="$" horiz-adv-x="993" d="M70 82l61 250q12 -10 33.5 -25.5t101.5 -43t170 -34.5l6 234q-180 61 -270 146t-90 208q0 127 93 223.5t286 116.5l6 182h104l-6 -176q90 0 170 -15t115 -30l35 -16l-78 -240q-90 47 -248 56l-6 -232q203 -66 287 -144.5t84 -195.5q0 -143 -102.5 -240.5t-286.5 -115.5 l-5 -172h-104l4 166q-213 6 -356 96zM346 831q0 -70 105 -110l4 197q-109 -11 -109 -87zM541 229q109 12 108 90q0 41 -25.5 65t-76.5 44z" />
-<glyph unicode="%" horiz-adv-x="1603" d="M63 1049q0 139 98.5 233t252 94t252 -94t98.5 -233q0 -141 -98.5 -237.5t-252 -96.5t-252 96.5t-98.5 237.5zM246 0l979 1407l110 -74l-923 -1333h-166zM254 1049q0 -63 43 -110.5t116.5 -47.5t116.5 47t43 111q0 61 -43 109t-116.5 48t-116.5 -48t-43 -109zM838 307 q0 139 98 234.5t251.5 95.5t253 -95.5t99.5 -234.5t-99.5 -235.5t-253 -96.5t-251.5 96.5t-98 235.5zM1030 307.5q0 -63.5 42 -109.5t116 -46t118 46t44 109q0 61 -43 108.5t-117 47.5t-117 -46t-43 -109.5z" />
-<glyph unicode="&#x26;" horiz-adv-x="1468" d="M61 350q0 227 258 365q-90 162 -90 311q0 152 102.5 258.5t305.5 106.5q188 0 292.5 -93.5t104.5 -250.5q0 -143 -81 -232.5t-222 -159.5q16 -20 27 -28q100 -113 200 -207q150 199 177 518h274q-43 -424 -252 -686q137 -106 250 -146l-100 -192q-147 18 -355 158 q-160 -96 -370 -97q-94 0 -180.5 19.5t-166 60.5t-127 117t-47.5 178zM346 362q0 -70 58.5 -110.5t160.5 -40.5q92 0 166 31q-141 123 -248 247q-2 2 -8 9.5t-11 14.5t-7 11q-111 -70 -111 -162zM532 1026q0 -82 60 -182q178 86 178 196q0 51 -31.5 83t-85.5 32 q-121 0 -121 -129z" />
-<glyph unicode="'" horiz-adv-x="442" d="M106 788v578h283v-76l-141 -502h-142z" />
-<glyph unicode="(" horiz-adv-x="638" d="M82 553q0 150 32.5 297t80 249.5t94.5 184.5t80 121l32 41l209 -72l-32 -40q-20 -26 -71.5 -109.5t-90.5 -173.5t-72 -226.5t-33 -271.5q0 -150 32 -294t77 -244.5t90 -179.5t76 -118l32 -39l-206 -79q-14 14 -36 42.5t-79 125t-100 201t-79 264t-36 321.5z" />
-<glyph unicode=")" horiz-adv-x="638" d="M18 -322l34 40q22 26 75 114t93 183.5t74 241.5t34 296q0 135 -31 270t-75 230.5t-89 170t-76 111.5l-30 39l211 72q12 -14 33.5 -42t76.5 -118t97 -188.5t77 -247t35 -297.5q0 -162 -34 -320.5t-82 -268t-97 -195.5t-82 -129l-35 -41z" />
-<glyph unicode="*" horiz-adv-x="1048" d="M68 854l323 84l47 -82l-233 -240zM68 1065l137 238l233 -240l-47 -80zM387 510l90 324h92l93 -324h-275zM387 1409h275l-93 -324h-92zM608 856l47 82l324 -84l-137 -238zM608 1063l234 240l137 -238l-324 -82z" />
-<glyph unicode="+" horiz-adv-x="1064" d="M43 436v185h395v409h191v-409h385v-185h-385v-436h-191v436h-395z" />
-<glyph unicode="," horiz-adv-x="530" d="M45 -311l83 81.5t50.5 77t26.5 111.5q0 53 -26.5 108.5t-106.5 178.5l268 86q100 -150 100 -283q0 -213 -293 -467z" />
-<glyph unicode="-" horiz-adv-x="792" d="M102 442v170h588v-170h-588z" />
-<glyph unicode="." horiz-adv-x="534" d="M90 152q0 74 52.5 127t123.5 53q74 0 126 -53.5t52 -126.5q0 -72 -52 -124.5t-126 -52.5q-72 0 -124 52.5t-52 124.5z" />
-<glyph unicode="/" horiz-adv-x="964" d="M37 -401l682 1767h188l-680 -1767h-190z" />
-<glyph unicode="0" horiz-adv-x="1157" d="M76 479q0 207 135 366t377 159q229 0 364 -146.5t135 -345.5q0 -131 -56 -251t-176 -203t-280 -83q-233 0 -366 149.5t-133 354.5zM354 489q0 -113 54.5 -195.5t173.5 -82.5q115 0 170 83t55 195q0 117 -54.5 198t-168.5 81q-121 0 -175.5 -81t-54.5 -198z" />
-<glyph unicode="1" horiz-adv-x="950" d="M98 0v233h262v492h-258v254h562v-746h237v-233h-803z" />
-<glyph unicode="2" horiz-adv-x="974" d="M72 874q16 14 47 36t129 58t196 36q172 0 276.5 -93.5t104.5 -234.5q0 -88 -49 -174t-104.5 -139.5t-149.5 -131.5h389v-231h-835l6 168q16 12 46 32.5t102.5 79t129 112.5t102.5 122t46 117q0 55 -32 88t-97 33q-41 0 -88 -17.5t-74 -34.5l-29 -16z" />
-<glyph unicode="3" horiz-adv-x="856" d="M12 870q18 14 51 37t131.5 60t196.5 37q160 0 265.5 -84t105.5 -213q0 -199 -252 -340q135 -37 209 -126t74 -204q0 -203 -198 -326t-478 -123q-45 0 -66 2l-24 232q53 -4 82 -4q156 0 261 60.5t105 162.5q0 164 -285 164h-32v221q109 4 198.5 71.5t89.5 153.5 q0 49 -31.5 75t-80.5 26q-39 0 -87 -19.5t-77 -38.5l-29 -18z" />
-<glyph unicode="4" horiz-adv-x="1124" d="M45 12v203l510 760h342v-744h176v-219h-176v-407h-297v407h-555zM332 231h268v435z" />
-<glyph unicode="5" horiz-adv-x="854" d="M68 -176q51 -6 100 -6q143 0 232 52t89 165q0 66 -32.5 114t-95 77.5t-126 45t-153.5 29.5v678h661v-231h-366v-254q430 -106 430 -435q0 -225 -178 -348t-467 -123q-45 0 -68 2z" />
-<glyph unicode="6" horiz-adv-x="1083" d="M66 563q0 156 53 299.5t153.5 260t261 188t361.5 80.5l18 -238q-422 -31 -516 -365q94 115 244 115q174 0 281.5 -127t107.5 -309q0 -199 -128 -345.5t-347 -146.5q-236 0 -362.5 170t-126.5 418zM373 567q6 -356 194 -356q72 0 113 62.5t41 164.5q0 221 -156 221 q-100 0 -192 -92z" />
-<glyph unicode="7" horiz-adv-x="972" d="M43 717v262h895v-172q-229 -578 -565 -1233l-299 59q324 610 512 1084h-543z" />
-<glyph unicode="8" horiz-adv-x="1064" d="M78 334q0 121 62.5 205t170.5 153q-186 141 -186 322q0 156 115.5 266.5t306.5 110.5q168 0 291 -90.5t123 -253.5q0 -186 -195 -328q104 -68 162.5 -144.5t58.5 -185.5q0 -166 -130 -290t-341 -124q-170 0 -304 89.5t-134 269.5zM340 354q0 -63 46 -108t118 -45 q76 0 129 48t53 111q0 53 -45 100.5t-131 100.5q-170 -105 -170 -207zM430 1042q0 -106 135 -198q127 82 127 188q0 57 -32.5 95t-102.5 38q-72 0 -99.5 -38t-27.5 -85z" />
-<glyph unicode="9" horiz-adv-x="1110" d="M80 506q0 197 130 347.5t351 150.5q236 0 364 -170t128 -418q0 -156 -53.5 -300.5t-154 -260t-262 -188.5t-362.5 -81l-18 238q442 35 520 383q-92 -123 -256 -123q-170 0 -278.5 124t-108.5 298zM389 530q0 -80 35 -140t123 -60q63 0 117.5 31.5t78.5 58.5 q-4 152 -56 250t-144 98q-74 0 -114 -63.5t-40 -174.5z" />
-<glyph unicode=":" horiz-adv-x="577" d="M113 152q0 74 51 127t124.5 53t126 -53.5t52.5 -126.5q0 -72 -52.5 -124.5t-126 -52.5t-124.5 52.5t-51 124.5zM113 795q0 74 51 127t124.5 53t126 -53.5t52.5 -126.5q0 -72 -52.5 -124.5t-126 -52.5t-124.5 52.5t-51 124.5z" />
-<glyph unicode=";" horiz-adv-x="571" d="M66 -311q59 57 82.5 81.5t50 77t26.5 111.5q0 53 -26.5 108.5t-106.5 178.5l268 86q100 -150 101 -283q0 -213 -293 -467zM109 795q0 74 52 127t124 53q74 0 126 -53.5t52 -126.5q0 -72 -52.5 -124.5t-125.5 -52.5q-72 0 -124 52.5t-52 124.5z" />
-<glyph unicode="&#x3c;" horiz-adv-x="1064" d="M47 479v94l873 469l47 -186l-650 -330l650 -350l-47 -184z" />
-<glyph unicode="=" horiz-adv-x="1064" d="M90 252v180h885v-180h-885zM90 594v180h885v-180h-885z" />
-<glyph unicode="&#x3e;" horiz-adv-x="1064" d="M100 176l648 350l-648 330l47 186l873 -469v-94l-873 -487z" />
-<glyph unicode="?" horiz-adv-x="825" d="M82 1206l70 271q12 -4 33.5 -10.5t85 -30t121 -49t127 -67.5t119.5 -86t85 -103.5t35 -120.5q0 -68 -46 -137.5t-101.5 -120t-101.5 -120t-46 -136.5h-250q-2 20 -2 34q0 74 32.5 147t72.5 119t73 93t33 76q0 55 -85 115.5t-169 93.5zM166 152q0 74 51 127t125 53 t126 -53.5t52 -126.5q0 -72 -52 -124.5t-126 -52.5t-125 52.5t-51 124.5z" />
-<glyph unicode="@" horiz-adv-x="1822" d="M70 391q0 166 65.5 319.5t179 269.5t282.5 185.5t364 69.5q342 0 560 -194.5t218 -487.5q0 -141 -57.5 -264t-174.5 -193q-68 -41 -216 -73.5t-195 -47.5q-23 88 -41 146q-29 -57 -102.5 -101.5t-157.5 -44.5q-131 0 -219.5 106.5t-88.5 280.5q0 242 167 388.5t409 146.5 q43 0 92 -5t78 -11l29 -4v-486l18 -176q117 2 178.5 95t61.5 227q0 217 -150.5 367.5t-406.5 150.5q-293 0 -479.5 -194.5t-186.5 -457.5q0 -250 170 -410.5t381 -172.5l-35 -199q-317 23 -530 239t-213 531zM764 365q0 -172 94 -172q59 0 121 83v420q-94 0 -154.5 -96 t-60.5 -235z" />
-<glyph unicode="A" horiz-adv-x="1320" d="M2 0l508 1376h301l508 -1376h-322l-86 246h-510l-86 -246h-313zM494 512h325l-164 463z" />
-<glyph unicode="B" horiz-adv-x="1255" d="M154 0v1366h510q244 0 353 -95t109 -233q0 -162 -165 -286q88 -47 155.5 -134.5t67.5 -220.5q0 -180 -130 -288.5t-337 -108.5h-563zM471 264h215q168 0 168 152q0 66 -42 105.5t-126 39.5h-215v-297zM471 815h262q63 45 64 141q0 145 -164 146h-162v-287z" />
-<glyph unicode="C" horiz-adv-x="1384" d="M70 653q0 317 212 527.5t566 210.5q295 0 471 -103l12 -8l-117 -264q-14 10 -41.5 26.5t-125 44t-207.5 27.5q-203 0 -327 -115.5t-124 -316.5q0 -207 129 -318.5t313 -111.5q111 0 209.5 29.5t141.5 58.5l43 31l129 -230q-6 -6 -19.5 -17t-62.5 -40t-105.5 -50.5 t-151.5 -40t-202 -18.5q-315 0 -529 179.5t-214 498.5z" />
-<glyph unicode="D" horiz-adv-x="1497" d="M154 0v1366h526q143 0 271 -36t236.5 -111.5t172 -207.5t63.5 -306q0 -336 -224 -520.5t-597 -184.5h-448zM471 264h111q260 0 386 119t126 313q0 186 -112 296t-331 110h-180v-838z" />
-<glyph unicode="E" horiz-adv-x="1134" d="M154 0v1366h893v-264h-576v-277h455v-268h-455v-293h602v-264h-919z" />
-<glyph unicode="F" horiz-adv-x="1105" d="M154 0v1366h899v-264h-582v-291h461v-262h-461v-549h-317z" />
-<glyph unicode="G" horiz-adv-x="1456" d="M66 657q0 305 217 519.5t583 214.5q127 0 245 -25t171 -49l55 -25l-116 -266q-156 88 -365 88q-219 0 -344 -124t-125 -316q0 -201 135 -311.5t332 -110.5l193 14v240h-265v266h576v-737q-317 -59 -524 -60q-334 0 -551 187.5t-217 494.5z" />
-<glyph unicode="H" horiz-adv-x="1570" d="M154 0v1366h317v-535h631v535h315v-1366h-315v563h-631v-563h-317z" />
-<glyph unicode="I" horiz-adv-x="626" d="M154 0v1366h317v-1366h-317z" />
-<glyph unicode="J" horiz-adv-x="624" d="M-115 -127q270 20 271 393v1100h317v-1090q0 -131 -20.5 -233t-71.5 -197.5t-153.5 -158t-254.5 -82.5z" />
-<glyph unicode="K" horiz-adv-x="1327" d="M154 0v1366h317v-516h43l410 516h393l-543 -637l574 -729h-400l-434 582h-43v-582h-317z" />
-<glyph unicode="L" horiz-adv-x="1097" d="M154 0v1366h317v-1102h596v-264h-913z" />
-<glyph unicode="M" horiz-adv-x="1824" d="M129 0l51 1366h453l282 -850l283 850h449l49 -1366h-307l-35 1016l-346 -1016h-201l-338 999l-33 -999h-307z" />
-<glyph unicode="N" horiz-adv-x="1529" d="M154 0v1366h321l590 -874v874h311v-1366h-325l-586 874v-874h-311z" />
-<glyph unicode="O" d="M66 680q0 182 85 341t262 264.5t414 105.5q342 0 549 -198t207 -484q0 -295 -215 -514.5t-559 -219.5q-225 0 -397 100.5t-259 259.5t-87 345zM395 686q0 -174 110.5 -309t309.5 -135t317.5 133t118.5 317q0 178 -112.5 305t-313 127t-315.5 -128t-115 -310z" />
-<glyph unicode="P" horiz-adv-x="1226" d="M154 0v1366h522q252 0 383 -128t131 -325q0 -221 -146.5 -353t-367.5 -132h-205v-428h-317zM471 692h158q115 0 173 55.5t58 151.5q0 203 -231 203h-158v-410z" />
-<glyph unicode="Q" d="M63 680q0 135 51.5 260t144.5 226.5t241.5 163t328.5 61.5q342 0 547 -198t205 -484q0 -229 -136 -422t-370 -271q39 -51 73 -84.5t93 -71.5t142 -55q66 -13 148 -13q20 0 42 1l-47 -282q-9 0 -18 -1q-127 0 -232 28q-113 30 -189.5 83t-119.5 94t-90 97q-10 14 -17 20 l-61 72q-20 25 -60.5 49t-74.5 33q-279 55 -440 246.5t-161 447.5zM395 686q0 -180 110.5 -316.5t309.5 -136.5t317.5 136.5t118.5 320.5q0 182 -112.5 308t-315.5 126q-201 0 -314.5 -128t-113.5 -310z" />
-<glyph unicode="R" horiz-adv-x="1333" d="M154 0v1366h508q254 0 383 -119t129 -311q0 -252 -211 -369l370 -567h-377l-305 481h-180v-481h-317zM471 743h113q147 0 203.5 48.5t56.5 136.5q0 174 -232 174h-141v-359z" />
-<glyph unicode="S" horiz-adv-x="1062" d="M72 90l92 277l45 -33q29 -20 114 -53t166 -33q84 0 133.5 31.5t49.5 85.5q0 55 -60.5 102t-145.5 88t-170 90t-145.5 134t-60.5 198q0 172 131 293t352 121q88 0 183.5 -15.5t148.5 -32.5l51 -14l-43 -280q-166 70 -329 69q-84 0 -129 -28.5t-45 -77.5q0 -55 60 -101.5 t145 -85.5t170 -88t145.5 -137t60.5 -207q0 -188 -141 -303t-350 -115q-233 0 -418 109z" />
-<glyph unicode="T" horiz-adv-x="1239" d="M35 1102v264h1169v-264h-422v-1102h-317v1102h-430z" />
-<glyph unicode="U" horiz-adv-x="1449" d="M139 522v844h318v-819q0 -305 270 -305q127 0 199.5 78.5t72.5 218.5v827h316v-815q0 -270 -167 -423t-423 -153q-262 0 -424 133t-162 414z" />
-<glyph unicode="V" horiz-adv-x="1259" d="M2 1366h336l295 -891l299 891h325l-477 -1376h-301z" />
-<glyph unicode="W" horiz-adv-x="2013" d="M29 1366h327l262 -946l277 946h231l277 -938l258 938h321l-405 -1376h-324l-252 815l-241 -815h-324z" />
-<glyph unicode="X" horiz-adv-x="1306" d="M20 0l445 676l-445 690h373l262 -430l267 430h362l-442 -682l442 -684h-375l-262 428l-260 -428h-367z" />
-<glyph unicode="Y" horiz-adv-x="1284" d="M-10 1366h372l279 -502l295 502h358l-493 -807v-559h-318v557z" />
-<glyph unicode="Z" horiz-adv-x="1196" d="M74 0v197l608 905h-586v264h998v-197l-598 -905h626v-264h-1048z" />
-<glyph unicode="[" horiz-adv-x="598" d="M141 -340v1706h432v-162h-225v-1382h225v-162h-432z" />
-<glyph unicode="\" horiz-adv-x="978" d="M57 1366h201l682 -1767h-203z" />
-<glyph unicode="]" horiz-adv-x="591" d="M16 -209h228v1442h-228v133h435v-1706h-435v131z" />
-<glyph unicode="^" horiz-adv-x="937" d="M-53 512l438 879h166l438 -879h-203l-319 647l-322 -647h-198z" />
-<glyph unicode="_" horiz-adv-x="1040" d="M10 -76h1024v-151h-1024v151z" />
-<glyph unicode="`" horiz-adv-x="1052" d="M268 1456h283l215 -332l-162 -82z" />
-<glyph unicode="a" horiz-adv-x="1034" d="M43 229q0 287 541 359v35q0 61 -24.5 89.5t-82.5 28.5q-156 0 -305 -110l-6 -4l-66 211q18 14 54 34.5t154 55.5t245 35q188 0 264 -75t76 -235v-329q0 -84 90 -97l16 -2l-86 -239h-6q-206 0 -286 133q-16 -29 -44 -57.5t-92.5 -57.5t-146.5 -29q-133 0 -214 70.5 t-81 183.5zM354 258q0 -70 68 -70q82 0 162 101v139q-230 -35 -230 -170z" />
-<glyph unicode="b" horiz-adv-x="1107" d="M106 39v1384l312 50v-582q88 72 217 72q201 0 307.5 -130.5t106.5 -330.5q0 -227 -139.5 -377t-422.5 -150q-92 0 -187 16.5t-144 33.5zM418 201q33 -18 88 -19q102 0 164.5 80t62.5 227q0 117 -47 181.5t-121 64.5q-76 0 -147 -49v-485z" />
-<glyph unicode="c" horiz-adv-x="966" d="M53 446q0 211 150.5 364t380.5 153q96 0 183 -22.5t126 -47.5l41 -23l-103 -221q-96 84 -210 84q-106 0 -178 -67.5t-72 -200.5q0 -123 63.5 -191.5t165.5 -68.5q61 0 121.5 23.5t89.5 45.5l29 23l94 -203q-12 -12 -37 -32.5t-117 -53.5t-202 -33q-238 0 -381.5 135 t-143.5 336z" />
-<glyph unicode="d" horiz-adv-x="1118" d="M59 440q0 135 51.5 252t162 194t259.5 77q88 0 160 -27v487l309 50v-1188q0 -49 11.5 -121t21.5 -119l10 -45l-286 -14q-18 66 -29 133q-98 -143 -276.5 -143.5t-286 133.5t-107.5 331zM377 459q0 -123 40 -193.5t115 -70.5q88 0 160 96v352q-6 96 -123 96 q-90 0 -141 -70.5t-51 -209.5z" />
-<glyph unicode="e" horiz-adv-x="1017" d="M59 465q0 211 131.5 354.5t341.5 143.5q186 0 299 -123t115 -363l-162 -45l-409 -53q53 -174 223 -174q139 0 285 108l4 4l80 -213q-18 -14 -52 -35.5t-141.5 -57.5t-216.5 -36q-236 0 -367 141.5t-131 348.5zM360 541l261 34q0 6 -1.5 17.5t-8.5 40.5t-17 50.5 t-33.5 38.5t-54.5 17q-63 0 -101.5 -54t-44.5 -144z" />
-<glyph unicode="f" horiz-adv-x="770" d="M37 723v170l145 49v66q0 238 137.5 373t348.5 135q82 0 156.5 -20.5t107.5 -41.5l33 -18l-97 -228q-86 66 -192 66q-182 0 -182 -242v-94h245v-215h-245v-723h-312v723h-145z" />
-<glyph unicode="g" horiz-adv-x="1062" d="M39 -250q0 131 215 260q-76 31 -107.5 63.5t-31.5 82.5q0 109 147 196q-92 43 -141 118t-49 167q0 152 125 239t301 87q66 0 145.5 -19.5t130.5 -19.5h127l129 20l14 -207h-94q-14 0 -71 8q55 -63 55 -139q0 -131 -134 -213t-317 -82q-37 0 -53 2q-57 -39 -57 -59 q0 -16 35.5 -29.5t140.5 -44.5l129 -37q70 -20 113 -36.5t102 -48t90 -80t31 -109.5q0 -141 -152.5 -247.5t-382.5 -106.5q-178 0 -309 64.5t-131 170.5zM309 -190q0 -90 187 -91q100 0 167.5 27t67.5 70q0 18 -11 32.5t-44 27.5t-60 22l-88 26l-98 27q-121 -75 -121 -141z M356 633q0 -45 38 -85t104 -40q63 0 104 39t41 88q0 47 -36 88t-103 41q-70 0 -109 -43t-39 -88z" />
-<glyph unicode="h" horiz-adv-x="1107" d="M115 0v1423l311 50v-670q137 160 317 160q262 0 263 -304v-659h-310v514q0 102 -16 141t-59 39q-80 0 -195 -123v-571h-311z" />
-<glyph unicode="i" horiz-adv-x="540" d="M96 1286q0 74 47 118t125 44t126 -44t48 -118t-48 -118t-126 -44t-125 44t-47 118zM115 0v938h311v-938h-311z" />
-<glyph unicode="j" horiz-adv-x="540" d="M-150 -250q121 16 193 84t72 229v875h311v-875q0 -250 -136 -385t-347 -163zM94 1286q0 74 47 118t125 44t126 -44t48 -118t-48 -118t-126 -44t-125 44t-47 118z" />
-<glyph unicode="k" horiz-adv-x="1122" d="M115 0v1423l311 50v-836h35l272 301h389l-395 -408l401 -530h-376l-295 412h-31v-412h-311z" />
-<glyph unicode="l" horiz-adv-x="540" d="M115 0v1423l311 50v-1473h-311z" />
-<glyph unicode="m" horiz-adv-x="1679" d="M111 0v913l295 48v-166q160 168 323 168q201 0 250 -172q156 172 332 172q266 0 266 -304v-659h-309v561q0 76 -18.5 104.5t-63.5 28.5q-78 0 -191 -112v-582h-311v561q0 76 -19.5 104.5t-58.5 28.5q-76 0 -184 -114v-580h-311z" />
-<glyph unicode="n" horiz-adv-x="1103" d="M111 0v913l295 48v-168q147 170 333 170q262 0 262 -304v-659h-311v514q0 102 -12 141t-62 39q-82 0 -194 -116v-578h-311z" />
-<glyph unicode="o" horiz-adv-x="1171" d="M57 467q0 92 29 177t89.5 157.5t165.5 117t245 44.5q260 0 396 -139.5t136 -338.5q0 -88 -28.5 -173t-88 -162.5t-168 -126t-251.5 -48.5q-254 0 -389.5 142.5t-135.5 349.5zM375 479q0 -113 56 -198.5t153 -85.5q90 0 153.5 74.5t63.5 191.5q0 111 -56.5 195.5 t-156.5 84.5q-90 0 -151.5 -72.5t-61.5 -189.5z" />
-<glyph unicode="p" horiz-adv-x="1116" d="M111 -485v1398l297 48v-154q78 156 260 156q180 0 285.5 -133.5t105.5 -329.5q0 -213 -124 -369t-351 -156q-113 0 -162 31v-442zM422 258q0 -25 29.5 -43t83.5 -18q86 0 146 72.5t60 211.5q0 115 -41 181.5t-100 66.5q-96 0 -178 -127v-344z" />
-<glyph unicode="q" horiz-adv-x="1110" d="M59 430q0 225 138.5 379t392.5 154q76 0 178 -14.5t168 -28.5l65 -15v-1341l-311 -49v530q-78 -70 -213 -70q-205 0 -311.5 130t-106.5 325zM375 453q0 -115 47 -179.5t118.5 -64.5t149.5 45v479q-51 20 -96 21q-94 0 -156.5 -80t-62.5 -221z" />
-<glyph unicode="r" horiz-adv-x="784" d="M111 0v913l295 48v-197q127 199 284 199q23 0 43.5 -4.5t28.5 -8.5l8 -2l-41 -289q-45 18 -94 19q-109 0 -213 -131v-547h-311z" />
-<glyph unicode="s" horiz-adv-x="868" d="M55 57l62 248l35 -27q23 -17 95 -45t148 -28q113 0 113 57q0 29 -44 52.5t-107.5 47t-126 56.5t-106.5 94t-44 145q0 127 103.5 216.5t316.5 89.5q78 0 148.5 -12.5t101.5 -24.5l32 -15l-57 -247q-94 70 -236 69q-104 0 -104 -55q0 -29 44 -53.5t106.5 -48t126 -56.5 t107.5 -93t44 -142q0 -135 -110.5 -222.5t-307.5 -87.5q-94 0 -179 20.5t-122 41.5z" />
-<glyph unicode="t" horiz-adv-x="854" d="M33 723v168l164 51v221l297 56v-281h278v-215h-276v-377q0 -121 86 -121q63 0 172 76l86 -219q-16 -12 -45 -29.5t-117 -47.5t-172 -30q-145 0 -233.5 78t-88.5 217v453h-151z" />
-<glyph unicode="u" horiz-adv-x="1112" d="M104 258v680h312v-557q0 -76 17.5 -108.5t60.5 -32.5q78 0 188 104v594h311v-653l41 -279l-299 -26q-16 84 -26 151q-160 -156 -342 -156q-117 0 -190 71t-73 212z" />
-<glyph unicode="v" horiz-adv-x="997" d="M0 938h324l176 -541l186 541h313l-364 -942h-277z" />
-<glyph unicode="w" horiz-adv-x="1601" d="M18 938h314l157 -592l183 592h260l196 -594l144 594h307l-274 -942h-301l-199 561l-180 -561h-303z" />
-<glyph unicode="x" horiz-adv-x="1017" d="M14 0l322 467l-322 471h348l150 -236l156 236h333l-321 -463l321 -475h-337l-158 240l-158 -240h-334z" />
-<glyph unicode="y" horiz-adv-x="995" d="M-4 938h317l191 -592l184 592h309l-374 -1004q-59 -158 -199.5 -281.5t-323.5 -137.5l-92 239q106 8 200.5 64.5t127.5 136.5l22 53z" />
-<glyph unicode="z" horiz-adv-x="942" d="M68 0v190l393 517h-377v231h774v-190l-401 -517h415v-231h-804z" />
-<glyph unicode="{" horiz-adv-x="684" d="M16 459v157q39 2 71 15.5t53.5 42t37 56.5t25.5 77t15 84t8 97.5t3 97.5v104q0 166 123 247t328 81v-152q-51 -4 -87 -12t-62.5 -16.5t-42 -28t-25.5 -34.5t-15.5 -51t-6.5 -61.5t-3 -81.5q-4 -186 -31.5 -297.5t-67.5 -161t-110 -81.5v-4q104 -49 152.5 -173t56.5 -391 q2 -76 5 -107.5t15.5 -72.5t38 -55t68.5 -28.5t115 -20.5v-152q-264 0 -357.5 94.5t-93.5 339.5q0 478 -213 488z" />
-<glyph unicode="|" horiz-adv-x="487" d="M139 -461v1995h209v-1995h-209z" />
-<glyph unicode="}" horiz-adv-x="684" d="M6 -311q59 6 97 13t66 25.5t41 34t21.5 52t9.5 66.5l3 93q8 274 59 395t154 169v4q-109 49 -157 161.5t-56 378.5q-2 92 -6.5 131t-28 78t-70.5 53.5t-133 22.5v152q250 0 348.5 -93.5t98.5 -345.5q0 -459 215 -463v-157q-27 0 -51.5 -9.5t-56.5 -40t-54.5 -80.5 t-37.5 -143.5t-15 -218.5q0 -242 -92.5 -336t-354.5 -94v152z" />
-<glyph unicode="~" horiz-adv-x="1187" d="M100 336q0 184 78 273t219 89q82 0 142.5 -29.5t90 -65.5t69.5 -65.5t83 -29.5q70 0 98.5 57.5t28.5 124.5h187q0 -184 -78 -273t-219 -89q-82 0 -142.5 29.5t-90 65.5t-69.5 65.5t-83 29.5q-70 0 -98.5 -57.5t-28.5 -124.5h-187z" />
-<glyph unicode="&#xa1;" horiz-adv-x="610" d="M129 -455l59 895h240l55 -895h-354zM139 784q0 72 52.5 124.5t125.5 52.5q72 0 124.5 -52.5t52.5 -124.5q0 -74 -52.5 -127t-124.5 -53q-74 0 -126 53t-52 127z" />
-<glyph unicode="&#xa2;" horiz-adv-x="999" d="M66 569q0 180 122.5 307.5t341.5 139.5l9 182h104l-10 -184q188 -20 293 -111l-146 -186q-63 49 -157 61l-21 -405q51 6 105.5 26.5t83.5 38.5l26 17l92 -203q-12 -12 -34.5 -29.5t-104.5 -49.5t-178 -38l-6 -180h-103l9 180q-197 14 -311.5 137t-114.5 297zM365 580 q0 -78 35.5 -131.5t101.5 -69.5l18 397q-155 -30 -155 -196z" />
-<glyph unicode="&#xa3;" horiz-adv-x="1148" d="M70 135q14 6 36.5 17.5t62.5 57.5t46 101l21 178h-123v127h137l18 162q20 180 129 288t295 108q195 0 320 -109l8 -8l-146 -185q-76 72 -174 72q-59 0 -92 -37t-45 -135l-16 -156h325l-16 -127h-321q-8 -72 -23.5 -135t-28.5 -92l-12 -29q80 -49 199 -49q190 0 202 164 h209q-20 -184 -96 -291.5t-250 -107.5q-92 0 -216 46t-189 46q-70 0 -219 -41z" />
-<glyph unicode="&#xa5;" horiz-adv-x="1171" d="M70 1149h317l199 -395l200 395h308l-252 -463h211v-127h-281l-35 -63v-88h316v-127h-316v-281h-309v281h-295v127h295v86l-37 65h-258v127h189z" />
-<glyph unicode="&#xa6;" horiz-adv-x="471" d="M131 -362v733h209v-733h-209zM131 688v733h209v-733h-209z" />
-<glyph unicode="&#xa7;" horiz-adv-x="1013" d="M57 -379l62 152q141 -96 301 -97q111 0 168 82t57 211q0 47 -10 109l-103 573q-23 113 -22 209q0 135 53 209l160 -22q-35 -76 -35 -189q0 -53 10 -115l113 -649q12 -68 12 -135q0 -193 -100 -318.5t-299 -125.5q-94 0 -185.5 26.5t-136.5 52.5zM168 946q0 193 100.5 319 t296.5 126q94 0 186.5 -27t137.5 -53l45 -27l-62 -151q-141 96 -303 96q-109 0 -166 -82t-57 -211q0 -47 10 -109l107 -573q20 -102 20 -209q0 -135 -51 -209l-160 23q35 82 35 188q0 53 -10 115l-117 649q-12 67 -12 135z" />
-<glyph unicode="&#xa8;" horiz-adv-x="1052" d="M135 1282q0 70 41 109t112.5 39t112.5 -39t41 -109t-41 -107.5t-112.5 -37.5t-112.5 37.5t-41 107.5zM610 1282q0 70 41 109t113 39t113 -39t41 -109t-41 -107.5t-113 -37.5q-74 0 -114 37.5t-40 107.5z" />
-<glyph unicode="&#xa9;" horiz-adv-x="1556" d="M70 682q0 293 206.5 500t499.5 207t500 -207t207 -500t-207 -500t-500 -207t-499.5 207t-206.5 500zM190 682q0 -246 170 -421t416 -175q248 0 419 174t171 422t-171 422t-419 174q-246 0 -416 -175t-170 -421zM381 682q0 166 112.5 293t303.5 127q184 0 286 -113l11 -10 l-93 -143q-8 10 -23 26.5t-66.5 43t-108.5 26.5q-106 0 -163.5 -69.5t-57.5 -166.5q0 -106 61.5 -179t165.5 -73q131 4 225 99l56 -150q-10 -12 -31 -32.5t-97.5 -53.5t-166.5 -33q-180 0 -297 117t-117 291z" />
-<glyph unicode="&#xaa;" horiz-adv-x="813" d="M63 879q0 205 381 251v23q0 76 -73 76q-47 0 -102.5 -22.5t-88.5 -43.5l-30 -22l-48 159q14 10 40 24.5t112 39.5t178 25q137 0 191.5 -53.5t54.5 -161.5v-236q8 -63 74 -74l-56 -159q-170 0 -229 90q-70 -96 -186 -97q-98 0 -158 50.5t-60 130.5zM299 905 q0 -23 14.5 -37t36.5 -14q41 0 94 49v109q-145 -23 -145 -107z" />
-<glyph unicode="&#xab;" horiz-adv-x="1042" d="M25 510v8q31 25 206 225l177 203l157 -47l-284 -385l284 -385l-157 -47l-161 182l-107 121l-57 66q-26 29 -36 39t-22 20zM430 510v8q31 25 205 223l180 205l158 -47l-285 -385l285 -385l-158 -47l-163 182l-106 121l-58 66q-26 29 -36 39t-22 20z" />
-<glyph unicode="&#xac;" horiz-adv-x="1155" d="M88 633v180h954v-586h-188v406h-766z" />
-<glyph unicode="&#xad;" horiz-adv-x="792" d="M102 442v170h588v-170h-588z" />
-<glyph unicode="&#xae;" horiz-adv-x="854" d="M72 1087.5q0 145.5 104.5 250t249.5 104.5t249.5 -104.5t104.5 -250t-104.5 -250t-249.5 -104.5t-249.5 104.5t-104.5 250zM152 1087.5q0 -112.5 82.5 -198.5t191.5 -86t192.5 86t83.5 198.5t-83.5 197.5t-192.5 85t-191.5 -85t-82.5 -197.5zM295 918v348h123 q143 0 143 -105q0 -61 -57 -94l110 -149h-110l-88 126h-21v-126h-100zM395 1110h29q39 0 39 45q0 43 -53 43h-15v-88z" />
-<glyph unicode="&#xaf;" horiz-adv-x="937" d="M188 1171v179h562v-179h-562z" />
-<glyph unicode="&#xb0;" horiz-adv-x="630" d="M66 1144.5q0 102.5 72.5 174.5t177 72t177 -72t72.5 -174.5t-72.5 -174t-177 -71.5t-177 71.5t-72.5 174zM188 1145q0 -55 37 -92t90.5 -37t89 37t35.5 92t-35.5 91t-89 36t-90.5 -36t-37 -91z" />
-<glyph unicode="&#xb1;" horiz-adv-x="1064" d="M100 616v183h338v344h193v-344h330v-183h-330v-323h-193v323h-338zM121 0v182h829v-182h-829z" />
-<glyph unicode="&#xb2;" horiz-adv-x="724" d="M49 1499q12 12 36 30.5t98.5 50.5t152.5 32q129 0 213 -72t84 -188q0 -100 -66.5 -193.5t-204.5 -216.5h308v-172h-598l-19 139l70 62l74 65l62 59q44 42 62.5 64.5t43 56t34 61.5t9.5 52q0 82 -103 82q-39 0 -74.5 -14.5t-50.5 -28.5l-16 -14z" />
-<glyph unicode="&#xb3;" horiz-adv-x="692" d="M33 836l96 155q74 -55 162 -55q49 0 75.5 22.5t26.5 59.5q0 76 -127 76h-80v168q170 8 170 100q0 61 -75 61q-68 0 -129 -45l-95 144q14 10 38 25.5t97.5 40t147.5 24.5q123 0 190.5 -60.5t67.5 -144.5q0 -70 -45 -127t-98 -78q82 -16 131 -67.5t49 -122.5 q0 -102 -95.5 -181t-236.5 -79q-70 0 -137.5 21.5t-99.5 41.5z" />
-<glyph unicode="&#xb4;" horiz-adv-x="1095" d="M291 1124l213 332h280l-335 -414z" />
-<glyph unicode="&#xb5;" horiz-adv-x="1234" d="M121 -442q20 199 20 362v1018h308v-545q0 -86 18 -119.5t57 -33.5q78 0 195 104v594h309v-623q0 -84 22.5 -103t110.5 -19v-207q-96 -10 -151 -11q-248 0 -277 148q-152 -147 -332 -148q-29 0 -41 2q8 -86 38 -235.5t30 -183.5h-307z" />
-<glyph unicode="&#x3bc;" horiz-adv-x="1234" d="M121 -442q20 199 20 362v1018h308v-545q0 -86 18 -119.5t57 -33.5q78 0 195 104v594h309v-623q0 -84 22.5 -103t110.5 -19v-207q-96 -10 -151 -11q-248 0 -277 148q-152 -147 -332 -148q-29 0 -41 2q8 -86 38 -235.5t30 -183.5h-307z" />
-<glyph unicode="&#xb6;" horiz-adv-x="1394" d="M59 864q0 203 155 352.5t431 149.5h660v-147h-152v-1219h-158v1219h-153v-1260q0 -444 -391 -444l-31 159q133 0 193.5 74t60.5 242v377h-19q-291 0 -443.5 145t-152.5 352z" />
-<glyph unicode="&#xb7;" horiz-adv-x="538" d="M92 524.5q0 71.5 52.5 124.5t123.5 53q74 0 127.5 -53t53.5 -124.5t-53.5 -124t-127.5 -52.5q-72 0 -124 52.5t-52 124z" />
-<glyph unicode="&#xb8;" horiz-adv-x="1052" d="M324 -422l51 123q74 -59 164 -59q41 0 66.5 13t25.5 33.5t-28 39t-60.5 31t-60 38t-27.5 60.5q0 37 30 92l27 51h137l-20 -41q-16 -43 -17 -49q0 -20 29 -35.5t63.5 -28t63.5 -46t29 -85.5q0 -88 -71 -144t-187 -56q-133 0 -215 63z" />
-<glyph unicode="&#xb9;" horiz-adv-x="681" d="M61 770v164h199v500h-182v163h403v-663h178v-164h-598z" />
-<glyph unicode="&#xba;" horiz-adv-x="892" d="M63 1042q0 139 95.5 243t287.5 104q186 0 284.5 -98.5t98.5 -235.5t-95 -247t-290 -110q-184 0 -282.5 100.5t-98.5 243.5zM307 1047q0 -74 37 -131.5t102 -57.5q59 0 99.5 50t40.5 130q0 76 -36 133.5t-99 57.5q-59 0 -101.5 -51t-42.5 -131z" />
-<glyph unicode="&#xbb;" horiz-adv-x="1042" d="M72 129l282 385l-282 385l157 47q348 -397 369 -416q6 -6 14 -12v-8q-12 -10 -22 -20.5l-36 -38.5l-57 -66l-107 -121l-161 -182zM477 129l285 385l-285 385l156 47l184 -209q172 -195 203 -219v-8q-12 -10 -22.5 -20.5t-35.5 -38.5l-59 -66l-107 -121l-163 -182z" />
-<glyph unicode="&#xbc;" horiz-adv-x="1777" d="M86 535v163h199v500h-183v164h404v-664h178v-163h-598zM475 0l819 1423l144 -65l-781 -1358h-182zM1024 319l307 510h275v-499h106v-164h-106v-166h-213v166h-349zM1200 330h193v315z" />
-<glyph unicode="&#xbd;" horiz-adv-x="1841" d="M84 535v163h199v500h-183v164h404v-664h178v-163h-598zM535 0l819 1423l143 -65l-780 -1358h-182zM1153 729q12 12 35.5 30.5t98.5 50.5t153 32q129 0 213 -72t84 -188q0 -100 -66.5 -193.5t-204.5 -216.5h308v-172h-598l-19 139l70 62l73 65l63 59q44 42 62.5 64.5 t43 56t33.5 61.5t9 52q0 82 -102 82q-39 0 -75 -14.5t-52 -28.5l-14 -14z" />
-<glyph unicode="&#xbe;" horiz-adv-x="1812" d="M66 600l96 156q74 -55 162 -56q49 0 75.5 22.5t26.5 59.5q0 76 -127 76h-80v168q170 8 170 100q0 61 -76 62q-68 0 -129 -45l-94 143q14 10 38 25.5t97.5 40t147.5 24.5q123 0 190.5 -60.5t67.5 -144.5q0 -70 -45 -127t-99 -77q82 -16 131.5 -67.5t49.5 -123.5 q0 -102 -95.5 -181t-236.5 -79q-70 0 -137.5 20.5t-100.5 41.5zM508 0l819 1423l143 -65l-780 -1358h-182zM1057 319l307 510h274v-499h107v-164h-107v-166h-213v166h-348zM1233 330h192v315z" />
-<glyph unicode="&#xbf;" horiz-adv-x="813" d="M66 -51q0 63 46 130.5t101 116t101 116t46 130.5h250q2 -23 2 -34q0 -70 -32.5 -139.5t-72.5 -113.5t-73 -89.5t-33 -71.5q0 -55 85 -115.5t169 -93.5l86 -33l-69 -270q-12 4 -34 10t-85.5 29.5t-120.5 49.5t-126.5 66.5t-120 86t-85 105t-34.5 120.5zM303 786 q0 72 52.5 124.5t126 52.5t124.5 -52.5t51 -124.5q0 -76 -51 -128t-124.5 -52t-126 52t-52.5 128z" />
-<glyph unicode="&#xc0;" horiz-adv-x="1320" d="M2 0l508 1376h301l508 -1376h-322l-86 246h-510l-86 -246h-313zM365 1583l75 207l471 -195l-59 -155zM494 512h325l-164 463z" />
-<glyph unicode="&#xc1;" horiz-adv-x="1320" d="M2 0l508 1376h301l508 -1376h-322l-86 246h-510l-86 -246h-313zM401 1595l471 195l74 -207l-487 -143zM494 512h325l-164 463z" />
-<glyph unicode="&#xc2;" horiz-adv-x="1320" d="M2 0l508 1376h301l508 -1376h-322l-86 246h-510l-86 -246h-313zM281 1565l258 219h235l256 -219l-156 -95l-221 168l-219 -168zM494 512h325l-164 463z" />
-<glyph unicode="&#xc3;" horiz-adv-x="1320" d="M2 0l508 1376h301l508 -1376h-322l-86 246h-510l-86 -246h-313zM258 1528q0 39 8 75.5t29.5 79.5t71 69t122.5 26q80 0 146.5 -33t112 -64.5t75.5 -31.5q59 0 60 96l-2 27h174q2 -14 2 -41q0 -39 -8.5 -76t-30 -82t-73.5 -72.5t-126 -27.5q-66 0 -118 20t-80.5 45 t-62.5 45.5t-62 20.5q-63 0 -64 -95l2 -28h-174q-2 18 -2 47zM494 512h325l-164 463z" />
-<glyph unicode="&#xc4;" horiz-adv-x="1320" d="M2 0l508 1376h301l508 -1376h-322l-86 246h-510l-86 -246h-313zM227 1628.5q0 69.5 44 111.5t116 42t116 -42t44 -111.5t-44 -110.5t-116 -41t-116 41t-44 110.5zM494 512h325l-164 463zM764 1628.5q0 69.5 44 111.5t115.5 42t115.5 -42t44 -111.5t-44 -110.5t-115.5 -41 t-115.5 41t-44 110.5z" />
-<glyph unicode="&#xc5;" horiz-adv-x="1320" d="M2 0l508 1376h301l508 -1376h-322l-86 246h-510l-86 -246h-313zM440 1622q0 68 54.5 115t161 47t159.5 -47t53 -115q0 -78 -52 -127t-160.5 -49t-162 49t-53.5 127zM494 512h325l-164 463zM565 1620q0 -84 90 -84q43 0 68 22.5t25 61.5q0 29 -25 51.5t-68 22.5 q-45 0 -67.5 -22.5t-22.5 -51.5z" />
-<glyph unicode="&#xc6;" horiz-adv-x="1886" d="M-31 0l768 1366h1059v-264h-573v-277h454v-268h-454v-293h602v-264h-920v336h-416l-182 -336h-338zM635 602h270v496z" />
-<glyph unicode="&#xc7;" horiz-adv-x="1384" d="M72 653q0 317 212 527.5t566 210.5q295 0 471 -103l12 -8l-116 -264q-14 10 -42 26.5t-125.5 44t-207.5 27.5q-203 0 -327 -115.5t-124 -316.5q0 -207 129 -318.5t314 -111.5q111 0 209 29.5t141 58.5l43 31l129 -230q-6 -6 -19.5 -17t-59.5 -39t-101.5 -49.5t-146.5 -40 t-191 -20.5l-9 -16q-16 -43 -16 -49q0 -20 28.5 -35.5t63.5 -28t63.5 -46t28.5 -85.5q0 -88 -70.5 -144t-187.5 -56q-133 0 -215 63l51 123q74 -59 164 -59q41 0 66.5 13t25.5 33.5t-27.5 39t-60 31t-60.5 38t-28 60.5q0 37 31 92l16 33q-276 31 -453 205.5t-177 465.5z" />
-<glyph unicode="&#xc8;" horiz-adv-x="1134" d="M154 0v1366h893v-264h-576v-277h455v-268h-455v-293h602v-264h-919zM317 1583l76 207l471 -195l-59 -155z" />
-<glyph unicode="&#xc9;" horiz-adv-x="1134" d="M154 0v1366h893v-264h-576v-277h455v-268h-455v-293h602v-264h-919zM354 1595l471 195l74 -207l-487 -143z" />
-<glyph unicode="&#xca;" horiz-adv-x="1134" d="M154 0v1366h893v-264h-576v-277h455v-268h-455v-293h602v-264h-919zM233 1565l259 219h235l256 -219l-156 -95l-221 168l-219 -168z" />
-<glyph unicode="&#xcb;" horiz-adv-x="1134" d="M154 0v1366h893v-264h-576v-277h455v-268h-455v-293h602v-264h-919zM180 1628.5q0 69.5 44 111.5t116 42t116 -42t44 -111.5t-44 -110.5t-116 -41t-116 41t-44 110.5zM717 1628.5q0 69.5 44 111.5t115.5 42t115.5 -42t44 -111.5t-44 -110.5t-115.5 -41t-115.5 41 t-44 110.5z" />
-<glyph unicode="&#xcc;" horiz-adv-x="626" d="M27 1583l75 207l471 -195l-59 -155zM154 0v1366h317v-1366h-317z" />
-<glyph unicode="&#xcd;" horiz-adv-x="626" d="M63 1595l472 195l73 -207l-487 -143zM154 0v1366h317v-1366h-317z" />
-<glyph unicode="&#xce;" horiz-adv-x="626" d="M-57 1565l258 219h235l256 -219l-155 -95l-222 168l-219 -168zM154 0v1366h317v-1366h-317z" />
-<glyph unicode="&#xcf;" horiz-adv-x="626" d="M-72 1634.5q0 69.5 41 108.5t113 39t113 -39t41 -108.5t-41 -107.5t-113 -38t-113 38t-41 107.5zM154 0v1366h317v-1366h-317zM403 1634.5q0 69.5 41 108.5t113 39t113 -39t41 -108.5t-41 -107.5t-113 -38q-74 0 -114 38t-40 107.5z" />
-<glyph unicode="&#xd0;" horiz-adv-x="1533" d="M45 575v238h148v553h524q143 0 271 -36t237.5 -111.5t173 -207.5t63.5 -306q0 -336 -225 -520.5t-598 -184.5h-446v575h-148zM508 264h110q262 0 389.5 119t127.5 313q0 184 -114 295t-333 111h-180v-289h299v-238h-299v-311z" />
-<glyph unicode="&#xd1;" horiz-adv-x="1529" d="M154 0v1366h321l590 -874v874h311v-1366h-325l-586 874v-874h-311zM367 1528q0 39 8 75.5t29.5 79.5t70.5 69t123 26q80 0 146.5 -33t111.5 -64.5t76 -31.5q59 0 59 96l-2 27h174q2 -14 2 -41q0 -39 -8 -76t-29.5 -82t-74 -72.5t-125.5 -27.5q-63 0 -116.5 20t-82.5 45 t-61.5 45.5t-63.5 20.5q-63 0 -63 -95l2 -28h-174q-2 18 -2 47z" />
-<glyph unicode="&#xd2;" d="M66 680q0 182 85 341t262 264.5t414 105.5q342 0 549 -198t207 -484q0 -295 -215 -514.5t-559 -219.5q-225 0 -397 100.5t-259 259.5t-87 345zM395 686q0 -174 110.5 -309t309.5 -135t317.5 133t118.5 317q0 178 -112.5 305t-313 127t-315.5 -128t-115 -310zM532 1583 l76 207l471 -195l-59 -155z" />
-<glyph unicode="&#xd3;" d="M66 680q0 182 85 341t262 264.5t414 105.5q342 0 549 -198t207 -484q0 -295 -215 -514.5t-559 -219.5q-225 0 -397 100.5t-259 259.5t-87 345zM395 686q0 -174 110.5 -309t309.5 -135t317.5 133t118.5 317q0 178 -112.5 305t-313 127t-315.5 -128t-115 -310zM569 1595 l471 195l74 -207l-487 -143z" />
-<glyph unicode="&#xd4;" d="M66 680q0 182 85 341t262 264.5t414 105.5q342 0 549 -198t207 -484q0 -295 -215 -514.5t-559 -219.5q-225 0 -397 100.5t-259 259.5t-87 345zM395 686q0 -174 110.5 -309t309.5 -135t317.5 133t118.5 317q0 178 -112.5 305t-313 127t-315.5 -128t-115 -310zM449 1565 l258 219h235l256 -219l-156 -95l-221 168l-219 -168z" />
-<glyph unicode="&#xd5;" d="M66 680q0 182 85 341t262 264.5t414 105.5q342 0 549 -198t207 -484q0 -295 -215 -514.5t-559 -219.5q-225 0 -397 100.5t-259 259.5t-87 345zM395 686q0 -174 110.5 -309t309.5 -135t317.5 133t118.5 317q0 178 -112.5 305t-313 127t-315.5 -128t-115 -310zM426 1528 q0 39 8 75.5t29.5 79.5t71 69t122.5 26q80 0 146.5 -33t112 -64.5t75.5 -31.5q59 0 60 96l-2 27h174q2 -14 2 -41q0 -39 -8.5 -76t-30 -82t-73.5 -72.5t-126 -27.5q-66 0 -118 20t-80.5 45t-62.5 45.5t-62 20.5q-63 0 -64 -95l2 -28h-174q-2 18 -2 47z" />
-<glyph unicode="&#xd6;" d="M66 680q0 182 85 341t262 264.5t414 105.5q342 0 549 -198t207 -484q0 -295 -215 -514.5t-559 -219.5q-225 0 -397 100.5t-259 259.5t-87 345zM395 686q0 -174 110.5 -309t309.5 -135t317.5 133t118.5 317q0 178 -112.5 305t-313 127t-315.5 -128t-115 -310zM395 1628.5 q0 69.5 44 111.5t116 42t116 -42t44 -111.5t-44 -110.5t-116 -41t-116 41t-44 110.5zM932 1628.5q0 69.5 44 111.5t115.5 42t115.5 -42t44 -111.5t-44 -110.5t-115.5 -41t-115.5 41t-44 110.5z" />
-<glyph unicode="&#xd7;" horiz-adv-x="1064" d="M66 168l344 354l-344 355l122 124l344 -354l345 354l122 -124l-346 -355l346 -354l-125 -125l-342 352l-342 -352z" />
-<glyph unicode="&#xd8;" d="M66 680q0 182 85 341t262 264.5t414 105.5q209 0 375 -80l88 116h176l-143 -190q125 -94 192.5 -232.5t67.5 -295.5q0 -295 -215 -514.5t-559 -219.5q-209 0 -379 88l-96 -124h-178l155 202q-119 98 -182 239.5t-63 299.5zM395 686q0 -176 103 -299l528 692 q-96 45 -201 45q-201 0 -315.5 -128t-114.5 -310zM604 293q98 -51 211 -51q199 0 317.5 133t118.5 317.5t-112 302.5z" />
-<glyph unicode="&#xd9;" horiz-adv-x="1449" d="M139 522v844h318v-819q0 -305 270 -305q127 0 199.5 78.5t72.5 218.5v827h316v-815q0 -270 -167 -423t-423 -153q-262 0 -424 133t-162 414zM434 1583l76 207l471 -195l-59 -155z" />
-<glyph unicode="&#xda;" horiz-adv-x="1449" d="M139 522v844h318v-819q0 -305 270 -305q127 0 199.5 78.5t72.5 218.5v827h316v-815q0 -270 -167 -423t-423 -153q-262 0 -424 133t-162 414zM471 1595l471 195l74 -207l-488 -143z" />
-<glyph unicode="&#xdb;" horiz-adv-x="1449" d="M139 522v844h318v-819q0 -305 270 -305q127 0 199.5 78.5t72.5 218.5v827h316v-815q0 -270 -167 -423t-423 -153q-262 0 -424 133t-162 414zM350 1565l258 219h236l256 -219l-156 -95l-221 168l-219 -168z" />
-<glyph unicode="&#xdc;" horiz-adv-x="1449" d="M139 522v844h318v-819q0 -305 270 -305q127 0 199.5 78.5t72.5 218.5v827h316v-815q0 -270 -167 -423t-423 -153q-262 0 -424 133t-162 414zM297 1628.5q0 69.5 44 111.5t115.5 42t115.5 -42t44 -111.5t-44 -110.5t-115.5 -41t-115.5 41t-44 110.5zM834 1628.5 q0 69.5 44 111.5t115.5 42t115.5 -42t44 -111.5t-44 -110.5t-115.5 -41t-115.5 41t-44 110.5z" />
-<glyph unicode="&#xdd;" horiz-adv-x="1284" d="M-10 1366h372l279 -502l295 502h358l-493 -807v-559h-318v557zM383 1595l471 195l74 -207l-488 -143z" />
-<glyph unicode="&#xde;" horiz-adv-x="1218" d="M154 0v1366h317v-262h221q244 0 363 -110.5t119 -284.5q0 -199 -134.5 -314.5t-347.5 -115.5h-221v-279h-317zM471 547h172q201 0 201 147q0 70 -42 108t-159 38h-172v-293z" />
-<glyph unicode="&#xdf;" horiz-adv-x="1259" d="M37 723v170l145 49v68q0 231 122 357t351 126q193 0 309.5 -87t116.5 -235q0 -88 -45 -158.5t-89 -123.5t-44 -98q0 -41 34 -79t81 -71t94 -73t81 -104.5t34 -144.5q0 -154 -110.5 -249t-303.5 -95q-59 0 -112.5 9.5t-77.5 19.5l-25 10l39 238q61 -47 141 -47 q61 0 96 32.5t35 79.5q0 39 -28.5 72t-69.5 59.5t-81 59.5t-68.5 89t-28.5 128q0 68 24.5 122t55 86t55.5 82t25 109q0 147 -138 148q-84 0 -122.5 -59.5t-38.5 -194.5v-1018h-312v723h-145z" />
-<glyph unicode="&#xe0;" horiz-adv-x="1034" d="M43 229q0 287 541 359v35q0 61 -24.5 89.5t-82.5 28.5q-156 0 -305 -110l-6 -4l-66 211q18 14 54 34.5t154 55.5t245 35q188 0 264 -75t76 -235v-329q0 -84 90 -97l16 -2l-86 -239q-211 -2 -292 133q-16 -29 -44 -57.5t-92.5 -57.5t-146.5 -29q-133 0 -214 70.5 t-81 183.5zM131 1456h283l215 -332l-162 -82zM354 258q0 -70 68 -70q82 0 162 101v139q-230 -35 -230 -170z" />
-<glyph unicode="&#xe1;" horiz-adv-x="1034" d="M43 229q0 287 541 359v35q0 61 -24.5 89.5t-82.5 28.5q-156 0 -305 -110l-6 -4l-66 211q18 14 54 34.5t154 55.5t245 35q188 0 264 -75t76 -235v-329q0 -84 90 -97l16 -2l-86 -239q-211 -2 -292 133q-16 -29 -44 -57.5t-92.5 -57.5t-146.5 -29q-133 0 -214 70.5 t-81 183.5zM338 1124l213 332h280l-335 -414zM354 258q0 -70 68 -70q82 0 162 101v139q-230 -35 -230 -170z" />
-<glyph unicode="&#xe2;" horiz-adv-x="1034" d="M43 229q0 287 541 359v35q0 61 -24.5 89.5t-82.5 28.5q-156 0 -305 -110l-6 -4l-66 211q18 14 54 34.5t154 55.5t245 35q188 0 264 -75t76 -235v-329q0 -84 90 -97l16 -2l-86 -239q-211 -2 -292 133q-16 -29 -44 -57.5t-92.5 -57.5t-146.5 -29q-133 0 -214 70.5 t-81 183.5zM156 1106l237 350h182l240 -354l-164 -62l-168 238l-168 -238zM354 258q0 -70 68 -70q82 0 162 101v139q-230 -35 -230 -170z" />
-<glyph unicode="&#xe3;" horiz-adv-x="1034" d="M43 229q0 287 541 359v35q0 61 -24.5 89.5t-82.5 28.5q-156 0 -305 -110l-6 -4l-66 211q18 14 54 34.5t154 55.5t245 35q188 0 264 -75t76 -235v-329q0 -84 90 -97l16 -2l-86 -239q-211 -2 -292 133q-16 -29 -44 -57.5t-92.5 -57.5t-146.5 -29q-133 0 -214 70.5 t-81 183.5zM106 1153q0 39 7.5 78t28 86t69.5 76.5t119 29.5q61 0 112.5 -23.5t79 -53t58 -53t55.5 -23.5q57 0 57 102l-2 37h184q2 -14 3 -35q0 -39 -7.5 -78t-29 -88t-71.5 -79.5t-122 -30.5q-61 0 -110.5 23.5t-75 53t-54 53t-55.5 23.5q-61 0 -61 -106l2 -31h-184 q-3 14 -3 39zM354 258q0 -70 68 -70q82 0 162 101v139q-230 -35 -230 -170z" />
-<glyph unicode="&#xe4;" horiz-adv-x="1034" d="M43 229q0 287 541 359v35q0 61 -24.5 89.5t-82.5 28.5q-156 0 -305 -110l-6 -4l-66 211q18 14 54 34.5t154 55.5t245 35q188 0 264 -75t76 -235v-329q0 -84 90 -97l16 -2l-86 -239q-211 -2 -292 133q-16 -29 -44 -57.5t-92.5 -57.5t-146.5 -29q-133 0 -214 70.5 t-81 183.5zM92 1282q0 70 41 109t112.5 39t112.5 -39t41 -109t-41 -107.5t-112.5 -37.5t-112.5 37.5t-41 107.5zM354 258q0 -70 68 -70q82 0 162 101v139q-230 -35 -230 -170zM567 1282q0 70 41 109t113 39t112.5 -39t40.5 -109t-40.5 -107.5t-112.5 -37.5q-74 0 -114 37.5 t-40 107.5z" />
-<glyph unicode="&#xe5;" horiz-adv-x="1034" d="M43 229q0 287 541 359v35q0 61 -24.5 89.5t-82.5 28.5q-156 0 -305 -110l-6 -4l-66 211q18 14 54 34.5t154 55.5t245 35q188 0 264 -75t76 -235v-329q0 -84 90 -97l16 -2l-86 -239q-211 -2 -292 133q-16 -29 -44 -57.5t-92.5 -57.5t-146.5 -29q-133 0 -214 70.5 t-81 183.5zM264 1290q0 72 56.5 129.5t162.5 57.5q104 0 159.5 -57.5t55.5 -129.5q0 -74 -55 -135t-160 -61q-106 0 -162.5 61t-56.5 135zM354 258q0 -70 68 -70q82 0 162 101v139q-230 -35 -230 -170zM391 1288q0 -35 25.5 -61.5t66.5 -26.5t66.5 26.5t25.5 61.5 t-24.5 59.5t-67.5 24.5t-67.5 -24.5t-24.5 -59.5z" />
-<glyph unicode="&#xe6;" horiz-adv-x="1538" d="M43 225q0 264 545 332v43q0 80 -23.5 116t-93.5 36q-141 0 -301 -113l-4 -4l-66 203q20 14 57.5 34.5t148 55.5t216.5 35q178 0 254 -117q111 117 279 117q184 0 297.5 -119t115.5 -352l-161 -54l-414 -45q53 -197 237 -196q68 0 138.5 28.5t107.5 57.5l37 30l72 -209 q-18 -14 -51 -35.5t-138.5 -57.5t-214.5 -36q-246 0 -374 189q-41 -70 -131.5 -129.5t-225.5 -59.5q-141 0 -224 70.5t-83 179.5zM344 248q0 -35 22.5 -53.5t57.5 -18.5q63 0 115.5 58.5t52.5 144.5q-248 -20 -248 -131zM885 569l260 29q0 6 -1 16.5t-8.5 36t-17.5 45 t-33.5 36t-54.5 16.5q-59 0 -98 -47.5t-47 -131.5z" />
-<glyph unicode="&#xe7;" horiz-adv-x="970" d="M55 446q0 211 150.5 364t380.5 153q96 0 183 -22.5t128 -47.5l39 -23l-102 -221q-96 84 -211 84q-106 0 -178 -67.5t-72 -200.5q0 -123 63.5 -191.5t165.5 -68.5q61 0 121.5 23.5t89.5 45.5l29 23l94 -203q-12 -12 -34.5 -30.5t-108.5 -51t-191 -37.5l-8 -16 q-16 -43 -16 -49q0 -20 28.5 -35.5t63.5 -28t63.5 -46t28.5 -85.5q0 -88 -70.5 -144t-187.5 -56q-133 0 -215 63l51 123q74 -59 164 -59q41 0 66.5 13t25.5 33.5t-27.5 39t-60.5 31t-60.5 38t-27.5 60.5q0 37 31 92l18 35q-190 31 -302 158.5t-112 303.5z" />
-<glyph unicode="&#xe8;" horiz-adv-x="1017" d="M59 465q0 211 131.5 354.5t341.5 143.5q186 0 299 -123t115 -363l-162 -45l-409 -53q53 -174 223 -174q139 0 285 108l4 4l80 -213q-18 -14 -52 -35.5t-141.5 -57.5t-216.5 -36q-236 0 -367 141.5t-131 348.5zM162 1456h282l215 -332l-161 -82zM360 541l261 34 q0 6 -1.5 17.5t-8.5 40.5t-17 50.5t-33.5 38.5t-54.5 17q-63 0 -101.5 -54t-44.5 -144z" />
-<glyph unicode="&#xe9;" horiz-adv-x="1017" d="M59 465q0 211 131.5 354.5t341.5 143.5q186 0 299 -123t115 -363l-162 -45l-409 -53q53 -174 223 -174q139 0 285 108l4 4l80 -213q-18 -14 -52 -35.5t-141.5 -57.5t-216.5 -36q-236 0 -367 141.5t-131 348.5zM360 541l261 34q0 6 -1.5 17.5t-8.5 40.5t-17 50.5 t-33.5 38.5t-54.5 17q-63 0 -101.5 -54t-44.5 -144zM371 1124l213 332h280l-336 -414z" />
-<glyph unicode="&#xea;" horiz-adv-x="1017" d="M59 465q0 211 131.5 354.5t341.5 143.5q186 0 299 -123t115 -363l-162 -45l-409 -53q53 -174 223 -174q139 0 285 108l4 4l80 -213q-18 -14 -52 -35.5t-141.5 -57.5t-216.5 -36q-236 0 -367 141.5t-131 348.5zM188 1106l238 350h182l240 -354l-164 -62l-168 238 l-168 -238zM360 541l261 34q0 6 -1.5 17.5t-8.5 40.5t-17 50.5t-33.5 38.5t-54.5 17q-63 0 -101.5 -54t-44.5 -144z" />
-<glyph unicode="&#xeb;" horiz-adv-x="1017" d="M59 465q0 211 131.5 354.5t341.5 143.5q186 0 299 -123t115 -363l-162 -45l-409 -53q53 -174 223 -174q139 0 285 108l4 4l80 -213q-18 -14 -52 -35.5t-141.5 -57.5t-216.5 -36q-236 0 -367 141.5t-131 348.5zM125 1282q0 70 41 109t112.5 39t112.5 -39t41 -109 t-41 -107.5t-112.5 -37.5t-112.5 37.5t-41 107.5zM360 541l261 34q0 6 -1.5 17.5t-8.5 40.5t-17 50.5t-33.5 38.5t-54.5 17q-63 0 -101.5 -54t-44.5 -144zM600 1282q0 70 41 109t112.5 39t112.5 -39t41 -109t-41 -107.5t-112 -37.5q-74 0 -114 37.5t-40 107.5z" />
-<glyph unicode="&#xec;" horiz-adv-x="540" d="M-82 1456h283l215 -332l-162 -82zM115 0v938h311v-938h-311z" />
-<glyph unicode="&#xed;" horiz-adv-x="540" d="M115 0v938h311v-938h-311zM127 1124l213 332h281l-336 -414z" />
-<glyph unicode="&#xee;" horiz-adv-x="540" d="M-55 1106l237 350h183l239 -354l-164 -62l-168 238l-168 -238zM115 0v938h311v-938h-311z" />
-<glyph unicode="&#xef;" horiz-adv-x="540" d="M-119 1282q0 70 41 109t112.5 39t112.5 -39t41 -109t-41 -107.5t-112.5 -37.5t-112.5 37.5t-41 107.5zM115 0v938h311v-938h-311zM356 1282q0 70 41 109t113 39t113 -39t41 -109t-41 -107.5t-113 -37.5q-74 0 -114 37.5t-40 107.5z" />
-<glyph unicode="&#xf0;" horiz-adv-x="1128" d="M57 442q0 203 127 362t332 159q25 0 48.5 -3.5t41 -7.5t31.5 -9t24.5 -10t16.5 -9t10 -6l4 -5q-68 133 -192 228l-277 -152l-71 137l192 107q-117 49 -231 74l59 219q233 -43 422 -156l303 166l70 -139l-236 -129q152 -129 236 -306.5t84 -381.5q0 -262 -137.5 -433.5 t-378.5 -171.5q-223 0 -350.5 135t-127.5 332zM354 461q0 -102 47.5 -184t141.5 -82q92 0 153.5 80.5t61.5 263.5q0 82 -42 142t-128 60q-102 0 -168 -78.5t-66 -201.5z" />
-<glyph unicode="&#xf1;" horiz-adv-x="1103" d="M111 0v913l295 48v-168q147 170 333 170q262 0 262 -304v-659h-311v514q0 102 -12 141t-62 39q-82 0 -194 -116v-578h-311zM190 1153q0 39 7.5 78t28 86t69.5 76.5t119 29.5q61 0 112.5 -23.5t79 -53t58 -53t55.5 -23.5q57 0 57 102l-2 37h184q2 -14 3 -35 q0 -39 -7.5 -78t-29 -88t-71.5 -79.5t-122 -30.5q-61 0 -110.5 23.5t-75 53t-54 53t-55.5 23.5q-61 0 -61 -106l2 -31h-184q-3 14 -3 39z" />
-<glyph unicode="&#xf2;" horiz-adv-x="1171" d="M57 467q0 92 29 177t89.5 157.5t165.5 117t245 44.5q260 0 396 -139.5t136 -338.5q0 -88 -28.5 -173t-88 -162.5t-168 -126t-251.5 -48.5q-254 0 -389.5 142.5t-135.5 349.5zM238 1456h282l215 -332l-162 -82zM375 479q0 -113 56 -198.5t153 -85.5q90 0 153.5 74.5 t63.5 191.5q0 111 -56.5 195.5t-156.5 84.5q-90 0 -151.5 -72.5t-61.5 -189.5z" />
-<glyph unicode="&#xf3;" horiz-adv-x="1171" d="M57 467q0 92 29 177t89.5 157.5t165.5 117t245 44.5q260 0 396 -139.5t136 -338.5q0 -88 -28.5 -173t-88 -162.5t-168 -126t-251.5 -48.5q-254 0 -389.5 142.5t-135.5 349.5zM375 479q0 -113 56 -198.5t153 -85.5q90 0 153.5 74.5t63.5 191.5q0 111 -56.5 195.5 t-156.5 84.5q-90 0 -151.5 -72.5t-61.5 -189.5zM444 1124l213 332h281l-336 -414z" />
-<glyph unicode="&#xf4;" horiz-adv-x="1171" d="M57 467q0 92 29 177t89.5 157.5t165.5 117t245 44.5q260 0 396 -139.5t136 -338.5q0 -88 -28.5 -173t-88 -162.5t-168 -126t-251.5 -48.5q-254 0 -389.5 142.5t-135.5 349.5zM260 1106l238 350h182l240 -354l-164 -62l-168 238l-168 -238zM375 479q0 -113 56 -198.5 t153 -85.5q90 0 153.5 74.5t63.5 191.5q0 111 -56.5 195.5t-156.5 84.5q-90 0 -151.5 -72.5t-61.5 -189.5z" />
-<glyph unicode="&#xf5;" horiz-adv-x="1171" d="M57 467q0 92 29 177t89.5 157.5t165.5 117t245 44.5q260 0 396 -139.5t136 -338.5q0 -88 -28.5 -173t-88 -162.5t-168 -126t-251.5 -48.5q-254 0 -389.5 142.5t-135.5 349.5zM211 1153q0 39 7 78t27.5 86t70 76.5t118.5 29.5q61 0 112.5 -23.5t79 -53t58.5 -53t55 -23.5 q57 0 58 102l-2 37h184q2 -14 2 -35q0 -39 -7 -78t-28.5 -88t-72 -79.5t-121.5 -30.5q-61 0 -110.5 23.5t-75 53t-54.5 53t-55 23.5q-61 0 -62 -106l2 -31h-184q-2 14 -2 39zM375 479q0 -113 56 -198.5t153 -85.5q90 0 153.5 74.5t63.5 191.5q0 111 -56.5 195.5t-156.5 84.5 q-90 0 -151.5 -72.5t-61.5 -189.5z" />
-<glyph unicode="&#xf6;" horiz-adv-x="1171" d="M57 467q0 92 29 177t89.5 157.5t165.5 117t245 44.5q260 0 396 -139.5t136 -338.5q0 -88 -28.5 -173t-88 -162.5t-168 -126t-251.5 -48.5q-254 0 -389.5 142.5t-135.5 349.5zM197 1282q0 70 41 109t112.5 39t112.5 -39t41 -109t-41 -107.5t-112.5 -37.5t-112.5 37.5 t-41 107.5zM375 479q0 -113 56 -198.5t153 -85.5q90 0 153.5 74.5t63.5 191.5q0 111 -56.5 195.5t-156.5 84.5q-90 0 -151.5 -72.5t-61.5 -189.5zM672 1282q0 70 41 109t112.5 39t112.5 -39t41 -109t-41 -107.5t-113 -37.5q-74 0 -113.5 37.5t-39.5 107.5z" />
-<glyph unicode="&#xf7;" horiz-adv-x="1064" d="M74 430v182h917v-182h-917zM383 143q0 66 43 112t106 46q66 0 110 -46t44 -112q0 -63 -44 -107t-110 -44q-63 0 -106 44t-43 107zM383 899.5q0 63.5 43 108.5t106 45q66 0 110 -45t44 -108.5t-44 -109t-110 -45.5q-63 0 -106 45.5t-43 109z" />
-<glyph unicode="&#xf8;" horiz-adv-x="1171" d="M57 467q0 94 29 178t89.5 158t167 117t247.5 43q135 0 244 -45l61 81h152l-107 -143q178 -133 178 -367q0 -90 -28.5 -176t-88 -163.5t-168 -126t-251.5 -48.5q-150 0 -258 52l-68 -88h-152l115 153q-162 135 -162 375zM375 485q0 -84 24 -149l283 379q-43 27 -96 26 q-88 0 -149.5 -73.5t-61.5 -182.5zM475 231q51 -37 113 -36q86 0 149.5 75.5t63.5 192.5q0 86 -37 158z" />
-<glyph unicode="&#xf9;" horiz-adv-x="1110" d="M104 258v680h312v-557q0 -76 17.5 -108.5t60.5 -32.5q78 0 188 104v594h311v-653l41 -279l-299 -26q-16 84 -26 151q-160 -156 -342 -156q-117 0 -190 71t-73 212zM197 1456h282l215 -332l-162 -82z" />
-<glyph unicode="&#xfa;" horiz-adv-x="1110" d="M104 258v680h312v-557q0 -76 17.5 -108.5t60.5 -32.5q78 0 188 104v594h311v-653l41 -279l-299 -26q-16 84 -26 151q-160 -156 -342 -156q-117 0 -190 71t-73 212zM403 1124l213 332h281l-336 -414z" />
-<glyph unicode="&#xfb;" horiz-adv-x="1110" d="M104 258v680h312v-557q0 -76 17.5 -108.5t60.5 -32.5q78 0 188 104v594h311v-653l41 -279l-299 -26q-16 84 -26 151q-160 -156 -342 -156q-117 0 -190 71t-73 212zM219 1106l238 350h182l240 -354l-164 -62l-168 238l-168 -238z" />
-<glyph unicode="&#xfc;" horiz-adv-x="1110" d="M104 258v680h312v-557q0 -76 17.5 -108.5t60.5 -32.5q78 0 188 104v594h311v-653l41 -279l-299 -26q-16 84 -26 151q-160 -156 -342 -156q-117 0 -190 71t-73 212zM156 1282q0 70 41 109t112.5 39t112.5 -39t41 -109t-41 -107.5t-112.5 -37.5t-112.5 37.5t-41 107.5z M631 1282q0 70 41 109t112.5 39t112.5 -39t41 -109t-41 -107.5t-113 -37.5q-74 0 -113.5 37.5t-39.5 107.5z" />
-<glyph unicode="&#xfd;" horiz-adv-x="995" d="M-4 938h317l191 -592l184 592h309l-374 -1004q-59 -158 -199.5 -281.5t-323.5 -137.5l-92 239q106 8 200.5 64.5t127.5 136.5l22 53zM356 1124l213 332h281l-336 -414z" />
-<glyph unicode="&#xfe;" horiz-adv-x="1120" d="M115 -485v1908l311 50v-658q74 147 246 148q180 0 285.5 -133.5t105.5 -327.5q0 -215 -123 -371t-348 -156q-115 0 -166 31v-442zM426 266q0 -72 115 -71q88 0 145 71.5t57 214.5q0 117 -36.5 182.5t-102.5 65.5q-94 0 -178 -127v-336z" />
-<glyph unicode="&#xff;" horiz-adv-x="995" d="M-4 938h317l191 -592l184 592h309l-374 -1004q-59 -158 -199.5 -281.5t-323.5 -137.5l-92 239q106 8 200.5 64.5t127.5 136.5l22 53zM109 1282q0 70 40.5 109t112.5 39t113 -39t41 -109t-41 -107.5t-113 -37.5t-112.5 37.5t-40.5 107.5zM584 1282q0 70 41 109t112.5 39 t112.5 -39t41 -109t-41 -107.5t-113 -37.5q-74 0 -113.5 37.5t-39.5 107.5z" />
-<glyph unicode="&#x152;" horiz-adv-x="2035" d="M66 680q0 133 51 260t143 227.5t237.5 162t317.5 61.5q143 0 256 -25h877v-264h-574v-277h455v-268h-455v-293h600v-264h-917q-147 -25 -262 -25q-324 0 -526.5 208t-202.5 497zM395 686q0 -174 111.5 -309t292.5 -135q166 0 258 30v811q-109 41 -244 41 q-188 0 -303 -130t-115 -308z" />
-<glyph unicode="&#x153;" horiz-adv-x="1751" d="M57 469q0 197 136.5 345.5t390.5 148.5q236 0 366 -162q125 162 324 162q186 0 295.5 -130.5t111.5 -363.5l-159 -47l-398 -51q23 -82 80.5 -128t136.5 -46q68 0 138.5 28.5t107.5 57.5l37 30l74 -209q-18 -14 -52 -35.5t-137.5 -57.5t-208.5 -36q-223 0 -356 152 q-133 -152 -373 -152q-246 0 -380 143.5t-134 350.5zM375 479q0 -113 56 -198.5t153 -85.5q86 0 145 74.5t59 191.5q0 111 -53 195.5t-147 84.5q-90 0 -151.5 -72.5t-61.5 -189.5zM1104 541l264 34q0 6 -1 17.5t-9 40.5t-20.5 50.5t-37 38.5t-59.5 17q-57 0 -94 -54 t-43 -144z" />
-<glyph unicode="&#x178;" horiz-adv-x="1284" d="M-10 1366h372l279 -502l295 502h358l-493 -807v-559h-318v557zM209 1628.5q0 69.5 44 111.5t115.5 42t115.5 -42t44 -111.5t-44 -110.5t-115.5 -41t-115.5 41t-44 110.5zM745 1628.5q0 69.5 44.5 111.5t116 42t115.5 -42t44 -111.5t-44 -110.5t-115.5 -41t-116 41 t-44.5 110.5z" />
-<glyph unicode="&#x2c6;" horiz-adv-x="1052" d="M199 1106l237 350h182l240 -354l-164 -62l-168 238l-168 -238z" />
-<glyph unicode="&#x2dc;" horiz-adv-x="1052" d="M156 1153q0 39 7 78t27.5 86t69.5 76.5t119 29.5q61 0 112.5 -23.5t79 -53t58 -53t55.5 -23.5q57 0 57 102l-2 37h185q2 -14 2 -35q0 -39 -7.5 -78t-29 -88t-71.5 -79.5t-122 -30.5q-61 0 -110 23.5t-75 53t-54.5 53t-55.5 23.5q-61 0 -61 -106l2 -31h-184q-2 14 -2 39z " />
-<glyph unicode="&#x2000;" horiz-adv-x="895" />
-<glyph unicode="&#x2001;" horiz-adv-x="1790" />
-<glyph unicode="&#x2002;" horiz-adv-x="895" />
-<glyph unicode="&#x2003;" horiz-adv-x="1790" />
-<glyph unicode="&#x2004;" horiz-adv-x="596" />
-<glyph unicode="&#x2005;" horiz-adv-x="447" />
-<glyph unicode="&#x2006;" horiz-adv-x="298" />
-<glyph unicode="&#x2007;" horiz-adv-x="298" />
-<glyph unicode="&#x2008;" horiz-adv-x="223" />
-<glyph unicode="&#x2009;" horiz-adv-x="358" />
-<glyph unicode="&#x200a;" horiz-adv-x="99" />
-<glyph unicode="&#x2010;" horiz-adv-x="792" d="M102 442v170h588v-170h-588z" />
-<glyph unicode="&#x2011;" horiz-adv-x="792" d="M102 442v170h588v-170h-588z" />
-<glyph unicode="&#x2012;" horiz-adv-x="792" d="M102 442v170h588v-170h-588z" />
-<glyph unicode="&#x2013;" horiz-adv-x="1044" d="M102 436v182h840v-182h-840z" />
-<glyph unicode="&#x2014;" horiz-adv-x="1843" d="M102 436v182h1639v-182h-1639z" />
-<glyph unicode="&#x2018;" horiz-adv-x="473" d="M74 1130q0 217 239 408l97 -104q-141 -109 -142 -232q0 -51 30 -103t118 -155l-223 -121q-119 166 -119 307z" />
-<glyph unicode="&#x2019;" horiz-adv-x="450" d="M49 1417l221 121q123 -168 123 -307q0 -215 -243 -408l-93 105q139 111 140 229q0 53 -30 104.5t-118 155.5z" />
-<glyph unicode="&#x201a;" horiz-adv-x="499" d="M86 225l213 121q119 -166 119 -309q0 -215 -240 -408l-92 107q135 109 135 229q0 55 -26.5 108.5t-108.5 151.5z" />
-<glyph unicode="&#x201c;" horiz-adv-x="897" d="M74 1133q0 215 239 405l97 -104q-141 -109 -142 -230q0 -59 27 -110.5t121 -149.5l-223 -121q-119 167 -119 310zM498 1133q0 215 241 405l95 -104q-139 -109 -140 -230q0 -59 27 -110.5t121 -149.5l-224 -121q-120 165 -120 310z" />
-<glyph unicode="&#x201d;" horiz-adv-x="876" d="M49 1417l221 121q123 -168 123 -307q0 -215 -243 -408l-93 105q139 111 140 229q0 53 -30 104.5t-118 155.5zM475 1417l221 121q121 -168 121 -307q0 -215 -244 -408l-92 105q141 111 142 229q0 53 -30 103.5t-118 156.5z" />
-<glyph unicode="&#x201e;" horiz-adv-x="925" d="M86 225l213 121q119 -166 119 -309q0 -215 -240 -408l-92 107q135 109 135 229q0 55 -26.5 108.5t-108.5 151.5zM510 225l213 121q119 -162 119 -309q0 -217 -240 -408l-92 107q137 106 137 229q0 55 -27.5 108.5t-109.5 151.5z" />
-<glyph unicode="&#x2022;" horiz-adv-x="864" d="M106 524.5q0 137.5 94.5 231.5t231.5 94q139 0 232.5 -93t93.5 -232.5t-93.5 -232.5t-232.5 -93q-137 0 -231.5 94t-94.5 231.5z" />
-<glyph unicode="&#x2026;" horiz-adv-x="1695" d="M90 152q0 74 52.5 127t123.5 53q74 0 126 -53.5t52 -126.5q0 -72 -52 -124.5t-126 -52.5q-72 0 -124 52.5t-52 124.5zM670 152q0 74 52 127t124 53q74 0 127 -53.5t53 -126.5q0 -72 -53 -124.5t-127 -52.5q-72 0 -124 52.5t-52 124.5zM1251 152q0 74 52.5 127t123.5 53 q74 0 126.5 -53.5t52.5 -127t-51.5 -125t-127.5 -51.5q-72 0 -124 52.5t-52 124.5z" />
-<glyph unicode="&#x202f;" horiz-adv-x="358" />
-<glyph unicode="&#x2039;" horiz-adv-x="634" d="M25 510v8q31 25 206 225l177 203l157 -47l-284 -385l284 -385l-157 -47l-161 182l-107 121l-57 66q-26 29 -36 39t-22 20z" />
-<glyph unicode="&#x203a;" horiz-adv-x="634" d="M72 129l282 385l-282 385l157 47q348 -397 369 -416q6 -6 14 -12v-8q-12 -10 -22 -20.5l-36 -38.5l-57 -66l-107 -121l-161 -182z" />
-<glyph unicode="&#x205f;" horiz-adv-x="447" />
-<glyph unicode="&#x20ac;" horiz-adv-x="1163" d="M68 643v127h135q61 182 206.5 293t346.5 111q80 0 161.5 -18.5t122.5 -37.5l41 -18l-73 -228q-109 72 -238 72q-182 0 -248 -174h455l-37 -127h-448q-2 -23 -3 -68q0 -55 5 -79h405l-37 -127h-338q72 -164 252 -164q51 0 110.5 14t94.5 27l35 14l49 -215 q-131 -70 -317 -70q-209 0 -354.5 106.5t-198.5 287.5h-125v127h104q-4 37 -4 59q0 45 6 88h-108z" />
-<glyph unicode="&#x2122;" horiz-adv-x="1476" d="M70 1247v119h510v-119h-179v-426h-153v426h-178zM666 821l20 545h219l111 -326l114 326h213l21 -545h-150l-14 381l-135 -381h-100l-138 383l-10 -383h-151z" />
-<glyph unicode="&#xe000;" horiz-adv-x="940" d="M0 940h940v-940h-940v940z" />
-<glyph unicode="&#xfb01;" horiz-adv-x="1193" d="M37 723v170l145 49v45q0 246 143.5 387.5t364.5 141.5q82 0 158 -20.5t110 -41.5l35 -18l-100 -213q-94 63 -203 63q-197 0 -196 -274v-74h585v-938h-309v733h-276v-733h-312v723h-145z" />
-<glyph unicode="&#xfb02;" horiz-adv-x="1232" d="M37 723v170l145 49v45q0 246 143.5 387.5t364.5 141.5q156 0 279 -68l149 25v-1473h-307v1257q-66 29 -121 29q-197 0 -196 -274v-74h190v-215h-190v-723h-312v723h-145z" />
-<glyph unicode="&#xfb03;" horiz-adv-x="1845" d="M37 723v170l145 49v16q0 238 137.5 373t348.5 135q82 0 156.5 -22.5t103 -41t39.5 -28.5q135 141 354 142q82 0 156.5 -20.5t107.5 -41.5l35 -18l-98 -213q-86 63 -193 63q-182 0 -182 -254v-94h584v-938h-308v733h-276v-733h-309v733h-344v-733h-312v723h-145zM494 938 h344v70q0 80 16 157q-84 72 -178 72q-182 0 -182 -254v-45z" />
-<glyph unicode="&#xfb04;" horiz-adv-x="1886" d="M37 723v170l145 49v16q0 238 137.5 373t348.5 135q176 0 297 -90q129 139 346 140q156 0 274 -74l187 31v-1473h-310v1245q-74 41 -145 41q-170 0 -170 -244v-104h190v-215h-190v-723h-309v733h-344v-733h-312v723h-145zM494 938h344v82q0 86 16 145q-84 72 -178 72 q-182 0 -182 -254v-45z" />
-</font>
-</defs></svg> 
\ No newline at end of file
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansBlack-webfont.ttf b/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansBlack-webfont.ttf
deleted file mode 100644
index dd75879f10c52328758b7a0b67d0af7d950cdbea..0000000000000000000000000000000000000000
Binary files a/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansBlack-webfont.ttf and /dev/null differ
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansBlack-webfont.woff b/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansBlack-webfont.woff
deleted file mode 100644
index 537ba7898eb8431a9bc9a54aa9701d273ff29546..0000000000000000000000000000000000000000
Binary files a/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansBlack-webfont.woff and /dev/null differ
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansBold-webfont.eot b/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansBold-webfont.eot
deleted file mode 100644
index 007016f5d8eeb02a321ba78ef96ca4bf57cc2a73..0000000000000000000000000000000000000000
Binary files a/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansBold-webfont.eot and /dev/null differ
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansBold-webfont.svg b/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansBold-webfont.svg
deleted file mode 100644
index 7c25c8168325979b2cc4862ad141eb74413c1478..0000000000000000000000000000000000000000
--- a/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansBold-webfont.svg
+++ /dev/null
@@ -1,244 +0,0 @@
-<?xml version="1.0" standalone="no"?>
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
-<svg xmlns="http://www.w3.org/2000/svg">
-<metadata>
-This is a custom SVG webfont generated by Fontspring.
-</metadata>
-<defs>
-<font id="webfontHPO6NoNQ" horiz-adv-x="1640" >
-<font-face units-per-em="2048" ascent="1536" descent="-512" />
-<missing-glyph horiz-adv-x="491" />
-<glyph unicode=" "  horiz-adv-x="491" />
-<glyph unicode="&#x09;" horiz-adv-x="491" />
-<glyph unicode="&#xa0;" horiz-adv-x="491" />
-<glyph unicode="!" horiz-adv-x="583" d="M131 131q0 66 46 113t111.5 47t111.5 -47t46 -113q0 -63 -46 -109.5t-111 -46.5q-63 0 -110.5 46.5t-47.5 109.5zM150 1391h292l-47 -930h-202z" />
-<glyph unicode="&#x22;" horiz-adv-x="792" d="M115 823v543h221v-76l-70 -467h-151zM483 823v543h222v-76l-70 -467h-152z" />
-<glyph unicode="#" horiz-adv-x="1400" d="M70 229l22 144h273l57 278h-270l22 144h277l79 389h148l-80 -389h291l80 389h149l-80 -389h293l-22 -144h-299l-58 -278h297l-22 -144h-303l-84 -411h-152l86 411h-291l-84 -411h-149l84 411h-264zM512 373h291l57 278h-291z" />
-<glyph unicode="$" horiz-adv-x="976" d="M74 84l53 211q12 -10 34.5 -25.5t102.5 -43t170 -33.5l8 288q-168 57 -260 139t-92 205q0 125 91 217.5t278 110.5l6 180h98l-6 -176q86 -2 163 -17.5t111 -29.5l33 -14l-65 -203q-98 49 -246 57l-8 -280q172 -57 263 -134t91 -206q0 -137 -99.5 -229.5t-273.5 -110.5 l-4 -172h-98l4 168q-211 6 -350 96zM317 842q0 -51 32 -81t100 -59l6 248q-138 -12 -138 -108zM532 193q133 14 134 116q0 49 -30 80t-97 57z" />
-<glyph unicode="%" horiz-adv-x="1564" d="M70 1044.5q0 135.5 95 228.5t241 93q143 0 238 -93t95 -228.5t-95 -229.5t-238 -94q-145 0 -240.5 94t-95.5 229.5zM231 1044.5q0 -67.5 49.5 -121t125 -53.5t124 53.5t48.5 121t-48.5 120t-124 52.5t-125 -52.5t-49.5 -120zM236 0l968 1397l103 -70l-922 -1327h-149z M827 299q0 135 95.5 228.5t238.5 93.5q145 0 240.5 -93.5t95.5 -228.5t-95 -229.5t-241 -94.5q-143 0 -238.5 94.5t-95.5 229.5zM989 299q0 -70 48 -122t124 -52t125 52t49 122q0 68 -49 120t-125 52t-124 -52t-48 -120z" />
-<glyph unicode="&#x26;" horiz-adv-x="1441" d="M70 340q0 127 72.5 215t201.5 162q-104 182 -104 327q0 141 97 244t288 103q170 0 266 -87t96 -231q0 -139 -82 -229t-227 -170q37 -51 74 -90q74 -90 186 -199q160 207 186 547h228q-37 -416 -252 -688q164 -125 282 -164l-86 -166q-154 20 -366 170 q-162 -109 -371 -109q-197 0 -343 90.5t-146 274.5zM309 352q0 -84 68.5 -130t177.5 -46t203 49q-127 111 -234 238l-71 88q-144 -90 -144 -199zM502 1047q0 -90 65 -211q94 51 144.5 103t50.5 122q0 55 -35 92t-96 37q-63 0 -96 -41t-33 -102z" />
-<glyph unicode="'" horiz-adv-x="423" d="M115 823v543h235v-76l-106 -467h-129z" />
-<glyph unicode="(" horiz-adv-x="618" d="M90 553q0 152 33 298t79 246.5t92 180.5t79 119l33 39l178 -60l-32 -39q-19 -25 -70.5 -109.5t-91.5 -173.5t-71.5 -226.5t-31.5 -274.5q0 -150 31.5 -296t75.5 -246.5t89 -179.5t78 -118l31 -37l-176 -67q-12 14 -35 43t-79 123t-99 196.5t-78 261t-35 320.5z" />
-<glyph unicode=")" horiz-adv-x="618" d="M27 -324l32 40q20 26 73.5 114t93.5 183.5t73 242.5t33 297q0 393 -232 737l-65 86l178 60l34 -41q22 -27 76 -115t96 -184.5t75.5 -243.5t33.5 -299q0 -162 -33.5 -319.5t-81.5 -265t-95.5 -192.5t-79.5 -126l-35 -41z" />
-<glyph unicode="*" horiz-adv-x="1026" d="M76 854l313 92l41 -69l-235 -226zM76 1090l119 202l235 -225l-41 -72zM395 535l78 315h82l76 -315h-236zM395 1409h236l-76 -317h-82zM598 877l39 69l313 -92l-116 -203zM598 1067l236 225l116 -202l-313 -95z" />
-<glyph unicode="+" horiz-adv-x="1064" d="M51 440v166h395v414h175v-414h389v-166h-389v-440h-175v440h-395z" />
-<glyph unicode="," horiz-adv-x="507" d="M55 -301q94 90 119 131q31 53 31 121q0 55 -25.5 111.5t-95.5 156.5l231 76q94 -131 95 -260q0 -213 -263 -428z" />
-<glyph unicode="-" horiz-adv-x="755" d="M106 440v164h543v-164h-543z" />
-<glyph unicode="." horiz-adv-x="518" d="M100 131q0 66 46.5 113t112 47t111.5 -47t46 -113q0 -63 -47 -109.5t-110.5 -46.5t-111 46.5t-47.5 109.5z" />
-<glyph unicode="/" horiz-adv-x="956" d="M41 -401l682 1767h172l-680 -1767h-174z" />
-<glyph unicode="0" horiz-adv-x="1146" d="M84 475q0 209 131 365.5t367 156.5q225 0 353 -144t128 -343q0 -133 -52.5 -252t-169 -201t-274.5 -82q-225 0 -354 148.5t-129 351.5zM324 481q0 -129 60 -217t189 -88q131 0 191.5 88t60.5 219t-60 222.5t-190 91.5q-131 0 -191 -91.5t-60 -224.5z" />
-<glyph unicode="1" horiz-adv-x="874" d="M100 0v199h246v567h-237v207h487v-774h225v-199h-721z" />
-<glyph unicode="2" horiz-adv-x="950" d="M80 868q16 14 47 36t125 57.5t188 35.5q158 0 257.5 -88t99.5 -225q0 -127 -94.5 -242.5t-251.5 -244.5h432v-197h-797v143q18 12 48 35t107.5 87.5t137 124t108 133t48.5 126.5q0 61 -40 99t-106 38q-104 0 -209 -75z" />
-<glyph unicode="3" horiz-adv-x="841" d="M20 866q18 14 50 36t128.5 58.5t190.5 36.5q147 0 246.5 -80.5t99.5 -201.5q0 -205 -252 -340q135 -37 209 -126t74 -202q0 -207 -185.5 -328.5t-459.5 -121.5q-41 0 -62 2l-22 192q49 -4 72 -4q172 0 283.5 67.5t111.5 192.5q0 96 -88 139t-207 43h-43v189 q111 6 209 81.5t98 172.5q0 53 -37 83.5t-94 30.5q-47 0 -99.5 -20.5t-80.5 -40.5l-29 -23z" />
-<glyph unicode="4" horiz-adv-x="1101" d="M49 27v168l547 784h266v-764h182v-188h-182v-422h-248v422h-565zM295 215h319v483z" />
-<glyph unicode="5" horiz-adv-x="841" d="M66 -207q57 -4 84 -4q162 0 264 62.5t102 191.5q0 61 -27.5 108.5t-52 72t-98.5 50t-97.5 30.5t-113.5 22q-27 6 -39 8v639h631v-197h-385v-280q94 -25 164.5 -55.5t138.5 -80t104.5 -126t36.5 -177.5q0 -219 -174 -339.5t-450 -120.5q-43 0 -66 2z" />
-<glyph unicode="6" horiz-adv-x="1069" d="M76 565q0 156 50 299.5t146.5 259t251 187t346.5 80.5l17 -199q-442 -33 -533 -412q92 115 260 115q174 0 282 -127t108 -309q0 -195 -123 -339.5t-332 -144.5q-227 0 -350 170t-123 420zM334 588q0 -182 60.5 -297t170.5 -115q84 0 133.5 71.5t49.5 184.5q0 100 -43 178 t-150 78q-121 0 -221 -100z" />
-<glyph unicode="7" horiz-adv-x="958" d="M51 752v221h862v-150q-229 -580 -569 -1241l-246 51q311 584 527 1119h-574z" />
-<glyph unicode="8" horiz-adv-x="1056" d="M86 336q0 119 68.5 205t189.5 161q-195 158 -194 332q0 152 111.5 254.5t287.5 102.5q162 0 274.5 -88.5t112.5 -241.5q0 -186 -209 -336q115 -76 180.5 -157t65.5 -195q0 -158 -126 -278t-323 -120q-174 0 -306 96.5t-132 264.5zM309 348q0 -76 58.5 -127t138.5 -51 q86 0 149.5 56.5t63.5 127.5q0 43 -33 87t-69.5 72t-108.5 77q-96 -61 -147.5 -116.5t-51.5 -125.5zM403 1055q0 -113 156 -219q152 104 152 215q0 66 -43 105.5t-115 39.5t-111 -40t-39 -101z" />
-<glyph unicode="9" horiz-adv-x="1083" d="M88 514q0 193 123 338t332 145q227 0 350 -170t123 -419q0 -154 -50.5 -295.5t-146.5 -256t-250.5 -185t-347.5 -79.5l-16 199q444 33 532 416q-90 -119 -260 -119q-174 0 -281.5 125t-107.5 301zM346 541q0 -59 13.5 -109.5t58.5 -93.5t121 -43q121 0 219 98 q-2 176 -61.5 290t-168.5 114q-86 0 -134 -71.5t-48 -184.5z" />
-<glyph unicode=":" horiz-adv-x="569" d="M127 131q0 66 46 113t111.5 47t111.5 -47t46 -113q0 -63 -46 -109.5t-111 -46.5q-63 0 -110.5 46.5t-47.5 109.5zM127 797q0 66 46 111.5t111.5 45.5t111.5 -46t46 -111.5t-46 -110.5t-111.5 -45t-111.5 46.5t-46 109.5z" />
-<glyph unicode=";" horiz-adv-x="563" d="M84 -301q94 90 119 131q31 53 30 121q0 55 -25.5 111.5t-94.5 156.5l231 76q94 -131 94 -260q0 -213 -262 -428zM123 795q0 66 46 112.5t111.5 46.5t111.5 -47t46 -112q0 -63 -47 -109.5t-110.5 -46.5t-110.5 46.5t-47 109.5z" />
-<glyph unicode="&#x3c;" horiz-adv-x="1064" d="M53 473v94l873 469l41 -170l-676 -346l676 -368l-41 -166z" />
-<glyph unicode="=" horiz-adv-x="1064" d="M84 252v164h897v-164h-897zM84 610v164h897v-164h-897z" />
-<glyph unicode="&#x3e;" horiz-adv-x="1064" d="M98 152l674 368l-674 346l41 170l873 -469v-94l-873 -487z" />
-<glyph unicode="?" horiz-adv-x="790" d="M86 1235l57 227q23 -6 62 -19t139 -56.5t176 -90.5t138.5 -122.5t62.5 -155.5q0 -53 -31 -107.5t-76 -102.5l-90 -98q-45 -50 -75.5 -115t-30.5 -134h-207q-4 25 -4 47q0 82 36 161t80 129t79.5 102t35.5 85q0 53 -88 115.5t-176 99.5zM162 131q0 66 46 113t109 47 q66 0 113 -47t47 -113q0 -63 -47 -109.5t-113 -46.5q-63 0 -109 46.5t-46 109.5z" />
-<glyph unicode="@" horiz-adv-x="1779" d="M76 395q0 219 106.5 408.5t305 307.5t448.5 118q332 0 543 -193.5t211 -486.5q0 -307 -217 -449q-47 -31 -104.5 -50t-153 -39.5t-146.5 -35.5q-37 143 -39 146q-31 -59 -102.5 -102.5t-151.5 -43.5q-131 0 -220 107.5t-89 284.5q0 242 170 390t407 148q37 0 80 -4t68 -8 l27 -4v-535q0 -41 4 -84t8 -65l4 -23q129 8 195.5 105.5t66.5 242.5q0 229 -150.5 385t-408.5 156q-295 0 -481.5 -199.5t-186.5 -472.5q0 -256 167 -424t382 -180l-31 -166q-303 18 -507.5 235.5t-204.5 530.5zM709 377q0 -88 28.5 -150.5t83.5 -62.5q90 0 158 108v459 q-117 0 -193.5 -104.5t-76.5 -249.5z" />
-<glyph unicode="A" horiz-adv-x="1300" d="M10 0l514 1376h252l514 -1376h-268l-111 307h-528l-111 -307h-262zM461 526h370l-184 516z" />
-<glyph unicode="B" horiz-adv-x="1234" d="M170 0v1366h455q244 0 353 -95t109 -233q0 -170 -159 -297q86 -41 155.5 -123.5t69.5 -220.5q0 -180 -130 -288.5t-337 -108.5h-516zM434 221h221q223 0 224 185q0 82 -56.5 132t-167.5 50h-221v-367zM434 801h277q8 2 28.5 19.5t46 62.5t25.5 98q0 164 -217 164h-160 v-344z" />
-<glyph unicode="C" horiz-adv-x="1382" d="M80 662q0 313 209 521t555 208q276 0 461 -107l12 -6l-100 -223q-16 12 -45 29.5t-129.5 47t-208.5 29.5q-221 0 -352.5 -134t-131.5 -343q0 -217 138.5 -348t340.5 -131q109 0 208.5 30.5t146.5 63.5l45 31l106 -193q-6 -6 -20.5 -17t-63.5 -39t-104 -49.5t-145.5 -39 t-188.5 -17.5q-311 0 -522 186t-211 501z" />
-<glyph unicode="D" horiz-adv-x="1490" d="M170 0v1366h485q145 0 274.5 -36t238 -111.5t173 -207.5t64.5 -306q0 -336 -226.5 -520.5t-600.5 -184.5h-408zM434 221h123q295 0 434 129t139 342q0 209 -129 331t-374 122h-193v-924z" />
-<glyph unicode="E" horiz-adv-x="1126" d="M170 0v1366h862v-221h-598v-342h471v-219h-471v-363h613v-221h-877z" />
-<glyph unicode="F" horiz-adv-x="1083" d="M170 0v1366h858v-221h-594v-352h471v-220h-471v-573h-264z" />
-<glyph unicode="G" horiz-adv-x="1447" d="M78 659q0 197 90 361t270 267.5t420 103.5q262 0 457 -97l8 -4l-100 -223q-18 10 -50 25.5t-130.5 42t-194.5 26.5q-236 0 -368 -139t-132 -346q0 -215 144.5 -343t365.5 -128l217 20v301h-274v219h532v-708q-293 -61 -497 -62q-326 0 -542 187.5t-216 496.5z" />
-<glyph unicode="H" horiz-adv-x="1562" d="M170 0v1366h264v-559h694v559h263v-1366h-263v588h-694v-588h-264z" />
-<glyph unicode="I" horiz-adv-x="604" d="M170 0v1366h264v-1366h-264z" />
-<glyph unicode="J" horiz-adv-x="604" d="M-86 -164q258 23 258 389v1141h264v-1133q0 -117 -19.5 -212t-65.5 -183t-136 -146.5t-219 -76.5z" />
-<glyph unicode="K" horiz-adv-x="1277" d="M170 0v1366h264v-541h37l461 541h325l-563 -639l592 -727h-334l-481 606h-37v-606h-264z" />
-<glyph unicode="L" horiz-adv-x="1083" d="M170 0v1366h264v-1145h619v-221h-883z" />
-<glyph unicode="M" horiz-adv-x="1802" d="M147 0l50 1366h378l330 -948l330 948h373l49 -1366h-256l-39 1069l-379 -1069h-172l-375 1067l-35 -1067h-254z" />
-<glyph unicode="N" horiz-adv-x="1529" d="M170 0v1366h266l666 -963v963h258v-1366h-268l-664 956v-956h-258z" />
-<glyph unicode="O" d="M78 680q0 182 84 342t258 264.5t405 104.5q332 0 534 -197t202 -485q0 -190 -90.5 -357.5t-265.5 -272t-398 -104.5q-328 0 -528.5 207t-200.5 498zM354 688q0 -193 122 -341t337 -148t344 147.5t129 345.5q0 195 -124 335t-341 140t-342 -141t-125 -338z" />
-<glyph unicode="P" horiz-adv-x="1200" d="M170 0v1366h477q250 0 377 -122t127 -312q0 -215 -142.5 -342t-361.5 -127h-213v-463h-264zM434 684h170q270 0 270 234q0 227 -270 227h-170v-461z" />
-<glyph unicode="Q" d="M78 680q0 182 84 342t258 264.5t405 104.5q332 0 534 -197t202 -485q0 -236 -139.5 -430.5t-374.5 -268.5q41 -55 77.5 -93t98 -82t144.5 -65q76 -20 166 -20h17l-37 -235q-57 0 -110 6t-96 15t-86 28l-74 33q-31 14 -66 41l-54 41q-19 15 -48 46l-40 42 q-11 12 -34.5 40.5t-27.5 32.5l-62 72q-47 57 -129 72q-279 47 -443.5 240.5t-164.5 455.5zM354 688q0 -195 122 -345t337 -150t344 149.5t129 349.5q0 195 -124 335t-341 140t-342 -141t-125 -338z" />
-<glyph unicode="R" horiz-adv-x="1290" d="M170 0v1366h455q252 0 377.5 -113.5t125.5 -294.5q0 -127 -64.5 -224t-172.5 -152l385 -582h-311l-336 516h-195v-516h-264zM434 735h150q133 0 200.5 55.5t67.5 155.5q0 199 -270 199h-148v-410z" />
-<glyph unicode="S" horiz-adv-x="1054" d="M80 90l76 234q16 -14 45.5 -35t119.5 -53q84 -31 163 -31h10q90 0 152.5 39t62.5 106.5t-62.5 120.5t-153 97t-179.5 94.5t-151.5 136.5t-62.5 200q0 164 127 278t344 114q84 0 177.5 -15.5t144.5 -32.5l49 -14l-43 -237q-160 70 -324 69q-92 0 -150 -35.5t-58 -99.5 q0 -49 33.5 -91t87 -73t118 -62.5t129 -69.5t117.5 -84t87 -116.5t34 -158.5q0 -180 -136.5 -288t-338.5 -108q-111 0 -215.5 29t-153.5 57z" />
-<glyph unicode="T" horiz-adv-x="1230" d="M35 1145v221h1161v-221h-448v-1145h-263v1145h-450z" />
-<glyph unicode="U" horiz-adv-x="1458" d="M154 512v854h264v-827q0 -176 84 -258t229.5 -82t228 85t82.5 246v836h265v-825q0 -266 -164 -416t-414 -150q-258 0 -416.5 130.5t-158.5 406.5z" />
-<glyph unicode="V" horiz-adv-x="1239" d="M10 1366h281l334 -981l333 981h271l-484 -1376h-251z" />
-<glyph unicode="W" horiz-adv-x="1984" d="M37 1366h272l285 -1001l297 1001h209l297 -1001l286 1001h265l-412 -1376h-268l-277 907l-274 -907h-271z" />
-<glyph unicode="X" horiz-adv-x="1271" d="M31 0l448 678l-448 688h311l297 -473l299 473h303l-448 -682l448 -684h-311l-297 471l-297 -471h-305z" />
-<glyph unicode="Y" horiz-adv-x="1245" d="M-2 1366h309l316 -535l325 535h299l-491 -795v-571h-264v569z" />
-<glyph unicode="Z" horiz-adv-x="1191" d="M74 0v160l676 985h-646v221h986v-160l-666 -985h690v-221h-1040z" />
-<glyph unicode="[" horiz-adv-x="593" d="M152 -332v1698h413v-143h-231v-1409h231v-146h-413z" />
-<glyph unicode="\" horiz-adv-x="964" d="M61 1366h179l682 -1767h-181z" />
-<glyph unicode="]" horiz-adv-x="589" d="M25 -207h231v1448h-231v125h413v-1698h-413v125z" />
-<glyph unicode="^" horiz-adv-x="964" d="M-27 512l439 879h141l438 -879h-184l-328 655l-325 -655h-181z" />
-<glyph unicode="_" horiz-adv-x="1062" d="M18 -76h1024v-141h-1024v141z" />
-<glyph unicode="`" horiz-adv-x="1044" d="M291 1448h241l211 -334l-135 -74z" />
-<glyph unicode="a" horiz-adv-x="1007" d="M53 219q0 289 545 361v32q0 78 -24.5 116t-104.5 38q-145 -2 -295 -111l-61 181q18 14 53 33.5t146.5 53t228.5 33.5q174 0 243.5 -71.5t69.5 -231.5v-360q0 -92 88 -107l16 -2l-73 -198q-197 6 -260 137q-96 -147 -291 -148q-125 0 -203 69t-78 175zM313 240 q0 -78 90 -78q92 0 195 121v149q-285 -40 -285 -192z" />
-<glyph unicode="b" horiz-adv-x="1093" d="M123 27v1400l256 41v-600q88 88 231 88q197 0 304.5 -129t107.5 -325q0 -221 -137 -374t-389 -153q-70 0 -163 12.5t-149.5 25t-60.5 14.5zM379 174q57 -18 119 -18q119 0 190.5 86t71.5 241q0 131 -53.5 205t-143.5 74t-184 -72v-516z" />
-<glyph unicode="c" horiz-adv-x="956" d="M66 449q0 207 142 357t367 150q195 0 328 -90l4 -4l-90 -186q-96 84 -223 84q-115 0 -189.5 -80t-74.5 -217q0 -131 70.5 -211t185.5 -80q63 0 124.5 23.5t90.5 46.5l28 24l78 -172q-12 -12 -35.5 -32.5t-111.5 -53.5t-193 -33q-225 0 -363 135.5t-138 338.5z" />
-<glyph unicode="d" horiz-adv-x="1110" d="M70 438q0 213 129 365.5t360 152.5q90 0 162 -28v499l254 41v-1183q0 -49 10 -121t23 -119l10 -45l-238 -14q-18 70 -28 135q-84 -145 -285 -146q-178 0 -287.5 133t-109.5 330zM336 455q0 -135 48 -212t138 -77q117 0 199 123v360q0 117 -143 117q-115 0 -178.5 -80.5 t-63.5 -230.5z" />
-<glyph unicode="e" horiz-adv-x="1009" d="M70 461q0 209 129 352t333 143q180 0 289 -118.5t111 -337.5l-139 -41l-461 -60q23 -104 90 -165.5t172 -61.5q68 0 138.5 28.5t107.5 57.5l37 29l65 -181q-6 -6 -17.5 -14t-50 -30.5t-80.5 -40t-109 -32t-134 -14.5q-227 0 -354 140.5t-127 345.5zM326 547l329 43 q0 6 -1 18.5t-9 43t-21.5 53t-42 42t-67.5 19.5q-80 0 -129 -60.5t-59 -158.5z" />
-<glyph unicode="f" horiz-adv-x="733" d="M45 750v137l145 51v78q0 229 125 360t322 131q168 -2 285 -80l-91 -190q-88 66 -190 66q-195 0 -195 -269v-102h250v-182h-250v-750h-256v750h-145z" />
-<glyph unicode="g" horiz-adv-x="1050" d="M47 -246q0 143 225 269q-74 27 -110.5 59.5t-36.5 79.5q0 94 147 182q-90 43 -139 119t-49 168q0 152 120 238.5t290 86.5q63 0 143 -19t129 -19h117q29 0 60.5 5t47.5 11l17 4l14 -184h-100q-37 0 -76 6q61 -61 61 -156q0 -135 -129 -218t-299 -83q-41 0 -59 2 q-70 -39 -70 -65q0 -29 207 -82l88 -25q76 -20 120 -36.5t103.5 -47.5t89 -78t29.5 -108q0 -141 -149.5 -244.5t-368.5 -103.5q-172 0 -297 64t-125 175zM272 -199q0 -51 56.5 -79.5t152.5 -28.5q115 0 192 37t77 94q0 39 -45.5 63.5t-167.5 59.5l-101 28q-4 -2 -25.5 -16 t-28.5 -19l-26 -19q-18 -13 -26 -21l-22 -22q-13 -13 -19 -24.5t-11.5 -25t-5.5 -27.5zM326 627q0 -59 44 -106.5t124 -47.5q76 0 124 43t48 107q0 61 -45.5 112t-125 51t-124.5 -49t-45 -110z" />
-<glyph unicode="h" horiz-adv-x="1099" d="M129 0v1427l256 41v-684q158 172 340 172q254 0 254 -292v-664h-254v555q0 96 -21.5 138t-72.5 42q-100 0 -246 -155v-580h-256z" />
-<glyph unicode="i" horiz-adv-x="514" d="M106 1277.5q0 63.5 43.5 103.5t109 40t107.5 -40t42 -103.5t-42 -103t-107.5 -39.5t-109 39.5t-43.5 103zM129 0v932h256v-932h-256z" />
-<glyph unicode="j" horiz-adv-x="514" d="M-119 -287q115 18 181.5 90t66.5 232v897h256v-885q0 -244 -116.5 -374t-311.5 -158zM104 1277.5q0 63.5 43 103.5t109 40t108 -40t42 -103.5t-42 -103t-108 -39.5t-109 39.5t-43 103z" />
-<glyph unicode="k" horiz-adv-x="1064" d="M129 0v1427l256 41v-858h33l305 322h324l-410 -408l428 -524h-317l-330 424h-33v-424h-256z" />
-<glyph unicode="l" horiz-adv-x="514" d="M129 0v1427l256 41v-1468h-256z" />
-<glyph unicode="m" horiz-adv-x="1669" d="M125 0v911l246 41v-170q160 174 342 174q193 0 237 -176q166 176 346 176q252 0 252 -292v-664h-254v555q0 96 -21.5 138t-72.5 42q-92 0 -235 -143v-592h-254v555q0 96 -21.5 138t-73.5 42q-94 0 -235 -145v-590h-256z" />
-<glyph unicode="n" horiz-adv-x="1095" d="M125 0v911l246 41v-172q162 176 352 176q252 0 252 -292v-664h-254v555q0 96 -21.5 138t-72.5 42q-98 0 -246 -147v-588h-256z" />
-<glyph unicode="o" horiz-adv-x="1142" d="M68 463q0 92 29.5 176t88 156.5t158.5 116.5t231 44q238 0 369 -139t131 -332q0 -90 -28.5 -176t-87 -162.5t-160 -124t-232.5 -47.5q-238 0 -368.5 143.5t-130.5 344.5zM332 481q0 -131 62.5 -223t178.5 -92q102 0 170 82t68 211q0 123 -61.5 215t-178.5 92 q-102 0 -170.5 -80t-68.5 -205z" />
-<glyph unicode="p" horiz-adv-x="1101" d="M125 -481v1392l246 41v-151q80 156 268 155q178 0 284.5 -132t106.5 -328q0 -213 -125 -367t-346 -154q-115 0 -178 39v-454zM381 250q0 -39 36 -61.5t99 -22.5q113 0 181.5 81t68.5 232q0 129 -48 203t-128 74q-113 0 -209 -140v-366z" />
-<glyph unicode="q" horiz-adv-x="1095" d="M70 430q0 221 137 373.5t389 152.5q72 0 165 -13t150 -25l58 -13v-1345l-254 -41v544q-84 -88 -234 -88q-195 0 -303 130t-108 325zM334 449q0 -129 52 -201t144 -72q90 0 185 68v512q-59 20 -119 20q-119 0 -190.5 -85.5t-71.5 -241.5z" />
-<glyph unicode="r" horiz-adv-x="747" d="M125 0v911l246 41v-192q117 197 278 196l80 -16l-41 -246q-43 18 -88 19q-115 0 -219 -154v-559h-256z" />
-<glyph unicode="s" horiz-adv-x="843" d="M66 57l53 209q12 -10 34.5 -26.5t91 -43t136.5 -26.5q145 0 145 80q0 41 -68.5 80t-150.5 69.5t-150.5 101t-68.5 167.5q0 123 95.5 205.5t291.5 82.5q172 0 277 -51l-54 -207q-102 63 -223 64q-133 0 -133 -74q0 -35 45 -63.5t109.5 -56t128 -62.5t108.5 -94.5 t45 -139.5q0 -133 -102.5 -215t-284.5 -82q-90 0 -171 20.5t-118 41.5z" />
-<glyph unicode="t" horiz-adv-x="813" d="M43 750v137l154 51v217l247 49v-272h285v-182h-285v-426q0 -139 97 -140q63 0 180 80l70 -186q-14 -12 -42 -28.5t-109 -45.5t-161 -29q-133 0 -212 74t-79 213v488h-145z" />
-<glyph unicode="u" horiz-adv-x="1095" d="M119 256v676h256v-555q0 -94 19.5 -137t76.5 -43q92 0 236 127v608h254v-647q0 -49 10 -120t20 -116l10 -45l-245 -22q-20 90 -29 157q-158 -164 -352 -164q-117 0 -186.5 69t-69.5 212z" />
-<glyph unicode="v" horiz-adv-x="972" d="M12 932h269l200 -604l226 604h258l-373 -938h-232z" />
-<glyph unicode="w" horiz-adv-x="1570" d="M27 932h262l178 -647l213 647h217l209 -647l182 647h256l-303 -938h-248l-209 608l-206 -608h-250z" />
-<glyph unicode="x" horiz-adv-x="987" d="M29 0l319 465l-319 467h290l179 -273l178 273h282l-321 -461l321 -471h-284l-182 279l-187 -279h-276z" />
-<glyph unicode="y" horiz-adv-x="972" d="M8 932h266l218 -610l213 610h258l-388 -1000q-63 -162 -188 -281.5t-289 -135.5l-78 196q100 12 188.5 81t125.5 155l33 78z" />
-<glyph unicode="z" horiz-adv-x="921" d="M74 0v156l426 579h-410v197h741v-156l-434 -579h451v-197h-774z" />
-<glyph unicode="{" horiz-adv-x="688" d="M23 467v141q55 2 97 26.5t66.5 76t40 96.5t20.5 122t6 115.5t1 114.5v31q0 166 119 247t317 81v-136q-88 -6 -138 -22.5t-76.5 -56t-33 -86t-6.5 -136.5q0 -459 -213 -540v-4q213 -82 213 -564q0 -90 6.5 -136t33 -85t76.5 -55t138 -25v-135q-436 0 -436 328v31 q0 74 -1 116.5t-6 120.5t-20.5 126t-40 100.5t-66.5 79t-97 28.5z" />
-<glyph unicode="|" horiz-adv-x="483" d="M150 -461v1995h184v-1995h-184z" />
-<glyph unicode="}" horiz-adv-x="688" d="M-2 -328q88 8 138 24.5t77 55.5t33 85t6 136q0 481 213 564v4q-213 82 -213 540q0 90 -6 136.5t-33 86t-77 56t-138 22.5v136q201 0 318.5 -81t117.5 -247q0 -268 27 -377q51 -201 205 -205v-141q-55 -2 -97.5 -28.5t-67 -80t-40 -100.5t-20.5 -127t-6 -120t-1 -115v-31 q0 -328 -436 -328v135z" />
-<glyph unicode="~" horiz-adv-x="1189" d="M111 344q0 176 75.5 261t210.5 85q66 0 118 -19.5t84 -48t59.5 -57t60.5 -48t69 -19.5q72 0 101 57t29 127h167q0 -176 -75.5 -261t-210.5 -85q-66 0 -118 19.5t-84 48t-59.5 57t-60.5 48t-69 19.5q-72 0 -100.5 -57t-28.5 -127h-168z" />
-<glyph unicode="&#xa1;" horiz-adv-x="579" d="M139 799q0 63 46 109t112 46q63 0 110.5 -46t47.5 -109q0 -66 -46.5 -113t-112 -47t-111.5 47t-46 113zM143 -461l47 930h203l43 -930h-293z" />
-<glyph unicode="&#xa2;" horiz-adv-x="970" d="M74 569q0 174 113.5 301t314.5 142l8 180h98l-8 -180q88 -8 161 -37t101 -53l29 -27l-125 -158q-72 59 -174 74l-19 -475q57 4 113.5 26.5t85.5 43.5l29 20l78 -172q-12 -12 -35 -29.5t-105 -50.5t-174 -39l-6 -180h-98l6 182q-180 20 -286.5 141t-106.5 291zM324 578 q0 -84 39.5 -147.5t111.5 -84.5l19 461q-78 -16 -124 -76.5t-46 -152.5z" />
-<glyph unicode="&#xa3;" horiz-adv-x="1132" d="M74 127q6 2 14 6t31.5 19.5t42 34t36 50t21.5 68.5l21 184h-123v119h137l20 164q20 182 121 288.5t281 106.5q188 0 309 -110l8 -8l-125 -158q-78 80 -194 80q-70 0 -106 -44t-48 -161l-16 -158h344l-14 -119h-340q-8 -76 -24.5 -146.5t-29.5 -102.5l-12 -33 q106 -57 234 -57q104 0 154 40.5t58 149.5h181q-18 -178 -92 -284.5t-242 -106.5q-90 0 -223 44t-195 44q-68 0 -188 -37z" />
-<glyph unicode="&#xa5;" horiz-adv-x="1161" d="M74 1143h270l236 -436l241 436h258l-270 -467h211v-119h-281l-34 -61v-86h315v-119h-315v-291h-254v291h-295v119h295v84l-37 63h-258v119h188z" />
-<glyph unicode="&#xa6;" horiz-adv-x="483" d="M150 365h186v-734h-186v734zM150 682v733h186v-733h-186z" />
-<glyph unicode="&#xa7;" horiz-adv-x="1009" d="M57 -379l62 135q137 -96 291 -96q115 0 175 85t60 220q0 47 -10 113l-107 590q-23 131 -22 206q0 137 53 211l141 -22q-35 -76 -34 -189q0 -53 10 -114l119 -666q12 -68 12 -137q0 -193 -99.5 -317.5t-293.5 -124.5q-190 0 -351 102zM178 946q0 193 99.5 319t293.5 126 q190 0 351 -103l6 -4l-62 -135q-137 96 -291 96q-115 0 -175 -86t-60 -219q0 -63 10 -113l109 -589q20 -123 20 -207q0 -135 -51 -211l-143 22q35 82 34 189q0 53 -10 114l-119 666q-12 67 -12 135z" />
-<glyph unicode="&#xa8;" horiz-adv-x="1044" d="M168 1276q0 59 38 95t97 36q61 0 99 -36t38 -95t-37.5 -95t-99.5 -36q-59 0 -97 36t-38 95zM604 1276q0 59 38 95t97 36q61 0 99.5 -36t38.5 -95t-38 -95t-100 -36q-59 0 -97 36t-38 95z" />
-<glyph unicode="&#xa9;" horiz-adv-x="1568" d="M78 682q0 293 207 500t499.5 207t499.5 -207t207 -500t-207 -500t-499.5 -207t-499.5 207t-207 500zM193 682q0 -250 172 -426t419.5 -176t419.5 176t172 426t-172 426t-419.5 176t-419.5 -176t-172 -426zM389 680q0 168 111.5 295t304.5 127q182 0 287 -113l10 -10 l-92 -133q-8 10 -24.5 26.5t-70 43t-110.5 26.5q-109 0 -168 -71.5t-59 -176.5q0 -109 64.5 -184.5t174.5 -75.5q131 4 225 98l56 -139q-10 -12 -32 -32.5t-97.5 -53.5t-165.5 -33q-180 0 -297 117t-117 289z" />
-<glyph unicode="&#xaa;" horiz-adv-x="804" d="M76 877q0 203 383 253v21q0 47 -15.5 71.5t-66.5 24.5q-49 0 -103.5 -21.5t-85.5 -41.5l-28 -21l-43 142q14 10 38.5 23t106.5 37t168 24q127 0 177 -51.5t50 -159.5v-252q0 -35 18.5 -54.5t37.5 -21.5l18 -2l-51 -139q-154 2 -199 86q-70 -92 -200 -93 q-92 0 -148.5 48.5t-56.5 126.5zM279 899q0 -59 57 -59t123 73v107q-180 -29 -180 -121z" />
-<glyph unicode="&#xab;" horiz-adv-x="1044" d="M33 510v8q31 25 200 217l189 211l141 -41l-293 -391l293 -391l-141 -41l-165 182l-107 121l-59 66q-26 29 -36 39t-22 20zM434 510v8q31 25 201 217l188 211l142 -41l-293 -391l293 -391l-142 -41l-165 182l-107 121l-58 66q-26 29 -36.5 39t-22.5 20z" />
-<glyph unicode="&#xac;" horiz-adv-x="1163" d="M96 643v164h948v-580h-170v416h-778z" />
-<glyph unicode="&#xad;" horiz-adv-x="755" d="M106 440v164h543v-164h-543z" />
-<glyph unicode="&#xae;" horiz-adv-x="864" d="M78 1087.5q0 145.5 104.5 250t250 104.5t249.5 -104.5t104 -250t-104 -250t-249.5 -104.5t-250 104.5t-104.5 250zM154 1087q0 -117 82.5 -202.5t195.5 -85.5q111 0 195 87t84 201.5t-84 200.5t-195 86q-113 0 -195.5 -86t-82.5 -201zM301 918v348h123q143 0 143 -105 q0 -63 -61 -96l108 -147h-104l-88 126h-27v-126h-94zM395 1106h35q41 0 41 47q0 49 -55 49h-21v-96z" />
-<glyph unicode="&#xaf;" horiz-adv-x="964" d="M219 1182v159h526v-159h-526z" />
-<glyph unicode="&#xb0;" horiz-adv-x="649" d="M74 1144.5q0 102.5 72.5 174.5t177 72t177 -72t72.5 -174.5t-72.5 -174t-177 -71.5t-177 71.5t-72.5 174zM190 1144.5q0 -57.5 39 -97t94.5 -39.5t94.5 39.5t39 97t-39 96.5t-94.5 39t-94.5 -39t-39 -96.5z" />
-<glyph unicode="&#xb1;" horiz-adv-x="1064" d="M92 625v166h354v352h175v-352h348v-166h-348v-349h-175v349h-354zM106 0v164h857v-164h-857z" />
-<glyph unicode="&#xb2;" horiz-adv-x="716" d="M55 883q23 23 71 66l74 69l65 64q40 40 62.5 69t46 62.5t34 64.5t10.5 59q0 102 -115 103q-84 0 -147 -62l-99 121q10 12 32 30.5t94.5 50.5t154.5 32q123 0 199.5 -67.5t76.5 -180.5q0 -184 -278 -444h323v-150h-589z" />
-<glyph unicode="&#xb3;" horiz-adv-x="681" d="M39 829l82 136q76 -53 162 -54q59 0 92 30t33 71q0 47 -46.5 69.5t-105.5 22.5h-70v149q70 2 127.5 38t57.5 91q0 68 -82 68q-35 0 -71 -12.5t-54 -24.5l-19 -10l-79 123q111 86 266 86q113 0 179.5 -56.5t66.5 -138.5q0 -74 -49.5 -132t-114.5 -79q201 -43 200 -192 q0 -106 -90 -183t-229 -77q-68 0 -131.5 18.5t-93.5 38.5z" />
-<glyph unicode="&#xb4;" horiz-adv-x="1071" d="M301 1114l211 334h244l-318 -408z" />
-<glyph unicode="&#xb5;" horiz-adv-x="1204" d="M129 -442q20 199 21 362v1012h256v-555q0 -94 19 -137t77 -43q96 0 235 127v608h254v-645q0 -84 22.5 -103.5t110.5 -19.5v-178q-82 -10 -129 -11q-121 0 -176 41t-71 115q-156 -156 -342 -156q-33 0 -66 7q6 -86 28.5 -237t22.5 -187h-262z" />
-<glyph unicode="&#x3bc;" horiz-adv-x="1204" d="M129 -442q20 199 21 362v1012h256v-555q0 -94 19 -137t77 -43q96 0 235 127v608h254v-645q0 -84 22.5 -103.5t110.5 -19.5v-178q-82 -10 -129 -11q-121 0 -176 41t-71 115q-156 -156 -342 -156q-33 0 -66 7q6 -86 28.5 -237t22.5 -187h-262z" />
-<glyph unicode="&#xb6;" horiz-adv-x="1380" d="M63 864q0 203 155 352.5t431 149.5h635v-137h-151v-1229h-146v1229h-153v-1270q0 -444 -379 -444l-31 149q133 0 193.5 74t60.5 242v387h-19q-291 0 -443.5 145t-152.5 352z" />
-<glyph unicode="&#xb7;" horiz-adv-x="530" d="M106 522q0 66 46.5 112t112 46t111.5 -46t46 -111.5t-46 -110.5t-111.5 -45t-112 46t-46.5 109z" />
-<glyph unicode="&#xb8;" horiz-adv-x="1044" d="M328 -422l49 115q70 -59 155 -60q43 0 70 16.5t27 39.5q0 20 -27 38.5t-59.5 31t-59 38t-26.5 58t32 98.5l25 47h125l-18 -39q-18 -41 -19 -55q0 -20 28.5 -36.5t61.5 -29t61.5 -46.5t28.5 -83q0 -84 -68.5 -140t-178.5 -56q-57 0 -108.5 15t-74.5 32z" />
-<glyph unicode="&#xb9;" horiz-adv-x="643" d="M63 770v141h189v545h-172v141h364v-686h172v-141h-553z" />
-<glyph unicode="&#xba;" horiz-adv-x="876" d="M74 1042.5q0 139.5 92 243t276 103.5q170 0 265.5 -97.5t95.5 -232.5q0 -137 -92.5 -247t-274.5 -110q-172 0 -267 100.5t-95 240zM281 1057q0 -90 40.5 -152.5t118.5 -62.5q68 0 112 56t44 142t-40 146.5t-118 60.5q-68 0 -112.5 -54t-44.5 -136z" />
-<glyph unicode="&#xbb;" horiz-adv-x="1044" d="M80 123l295 391l-295 391l141 41q356 -399 375 -416q6 -6 14 -12v-8q-12 -10 -22 -20.5l-36 -38.5l-58 -66l-108 -121l-165 -182zM481 123l293 391l-293 391l142 41q356 -399 374 -416q6 -6 15 -12v-8q-12 -10 -22.5 -20.5t-36.5 -38.5l-58 -66l-108 -121l-164 -182z" />
-<glyph unicode="&#xbc;" horiz-adv-x="1738" d="M90 541v141h189v545h-173v141h365v-686h172v-141h-553zM432 0l815 1417l135 -57l-782 -1360h-168zM997 311l340 520h219v-503h115v-144h-115v-184h-184v184h-358zM1163 328h209v317z" />
-<glyph unicode="&#xbd;" horiz-adv-x="1822" d="M88 541v141h188v545h-172v141h365v-686h172v-141h-553zM469 0l815 1417l135 -57l-782 -1360h-168zM1149 113q23 23 71 66l73 69l66 64q40 40 62.5 69t46 62.5t33.5 64.5t10 59q0 102 -114 103q-84 0 -148 -62l-98 121q10 12 31.5 30.5t94.5 50.5t155 32 q123 0 199.5 -67.5t76.5 -180.5q0 -184 -278 -444h323v-150h-590z" />
-<glyph unicode="&#xbe;" horiz-adv-x="1751" d="M72 600l82 135q76 -53 161 -53q59 0 92 29.5t33 70.5q0 47 -46 69.5t-105 22.5h-70v150q70 2 127 38t57 91q0 68 -81 68q-35 0 -71 -12.5t-54 -24.5l-19 -10l-80 122q111 86 267 86q113 0 179 -56t66 -138q0 -74 -49 -132.5t-115 -78.5q201 -43 201 -193q0 -106 -90 -183 t-229 -77q-68 0 -131.5 18.5t-94.5 39.5zM444 0l816 1417l135 -57l-783 -1360h-168zM1010 311l340 520h219v-503h114v-144h-114v-184h-185v184h-358zM1176 328h208v317z" />
-<glyph unicode="&#xbf;" horiz-adv-x="778" d="M68 -66q0 51 30.5 102.5t75.5 97.5l90 95q45 49 76 111.5t31 130.5h207q4 -25 4 -49q0 -78 -36 -152.5t-80 -123t-80 -97.5t-36 -82q0 -53 88 -115.5t176 -97.5l88 -37l-57 -227q-23 6 -61.5 19.5t-139 56.5t-176 90t-138 122.5t-62.5 155.5zM311 798.5 q0 65.5 47.5 111.5t112.5 46q63 0 109.5 -47t46.5 -110.5t-46 -110.5t-110 -47q-66 0 -113 46t-47 111.5z" />
-<glyph unicode="&#xc0;" horiz-adv-x="1300" d="M10 0l514 1376h252l514 -1376h-268l-111 307h-528l-111 -307h-262zM362 1593l72 189l443 -195l-52 -137zM461 526h370l-184 516z" />
-<glyph unicode="&#xc1;" horiz-adv-x="1300" d="M10 0l514 1376h252l514 -1376h-268l-111 307h-528l-111 -307h-262zM418 1587l442 195l72 -189l-465 -143zM461 526h370l-184 516z" />
-<glyph unicode="&#xc2;" horiz-adv-x="1300" d="M10 0l514 1376h252l514 -1376h-268l-111 307h-528l-111 -307h-262zM287 1559l258 225h200l256 -225l-131 -89l-225 181l-225 -181zM461 526h370l-184 516z" />
-<glyph unicode="&#xc3;" horiz-adv-x="1300" d="M10 0l514 1376h252l514 -1376h-268l-111 307h-528l-111 -307h-262zM260 1522q0 27 4 54.5t17.5 63t36 62.5t65.5 46t100 19q76 0 138.5 -32.5t106.5 -65.5t79 -33q68 0 67 107v20h158v-30q0 -37 -7 -72t-27.5 -80t-70.5 -72.5t-122 -27.5q-61 0 -111.5 20.5t-78 45 t-60.5 45t-63 20.5q-74 0 -74 -105l2 -18h-158q-2 13 -2 33zM461 526h370l-184 516z" />
-<glyph unicode="&#xc4;" horiz-adv-x="1300" d="M10 0l514 1376h252l514 -1376h-268l-111 307h-528l-111 -307h-262zM250 1626q0 61 39 98t100.5 37t101 -36.5t39.5 -98.5q0 -59 -39.5 -97t-101.5 -38q-59 0 -99 38t-40 97zM461 526h370l-184 516zM762 1626q0 61 40 98t101.5 37t100 -36.5t38.5 -98.5q0 -59 -39.5 -97 t-99.5 -38q-61 0 -101 38t-40 97z" />
-<glyph unicode="&#xc5;" horiz-adv-x="1300" d="M10 0l514 1376h252l514 -1376h-268l-111 307h-528l-111 -307h-262zM438 1622q0 66 52.5 114t155 48t154.5 -48t52 -114q0 -74 -52 -123t-154.5 -49t-155 49t-52.5 123zM461 526h370l-184 516zM553 1620q0 -39 23.5 -63.5t68.5 -24.5q43 0 68.5 24.5t25.5 63.5 q0 33 -24.5 57.5t-69.5 24.5t-68.5 -24.5t-23.5 -57.5z" />
-<glyph unicode="&#xc6;" horiz-adv-x="1843" d="M-23 0l771 1366h1001v-221h-598v-342h471v-219h-471v-363h612v-221h-874v379h-420l-209 -379h-283zM592 600h297v537z" />
-<glyph unicode="&#xc7;" horiz-adv-x="1384" d="M82 662q0 313 209 521t555 208q276 0 461 -107l12 -6l-100 -223q-16 12 -45 29.5t-129.5 47t-208.5 29.5q-221 0 -352.5 -134t-131.5 -343q0 -217 138.5 -348t340.5 -131q109 0 208.5 30.5t144.5 63.5l47 31l106 -193q-6 -6 -20 -16t-61.5 -38t-101.5 -48.5t-142 -39 t-183 -20.5l-6 -14q-18 -41 -18 -55q0 -20 27.5 -36.5t62.5 -29t62.5 -46.5t27.5 -83q0 -84 -68.5 -140t-179.5 -56q-57 0 -108 15t-76 32l-23 16l50 115q70 -59 155 -60q43 0 69.5 16.5t26.5 39.5q0 20 -26.5 38.5t-59 31t-59.5 38t-27 58t33 98.5l15 29 q-272 33 -448.5 213t-176.5 467z" />
-<glyph unicode="&#xc8;" horiz-adv-x="1126" d="M170 0v1366h862v-221h-598v-342h471v-219h-471v-363h613v-221h-877zM326 1593l71 189l443 -195l-52 -137z" />
-<glyph unicode="&#xc9;" horiz-adv-x="1126" d="M170 0v1366h862v-221h-598v-342h471v-219h-471v-363h613v-221h-877zM383 1587l442 195l72 -189l-465 -143z" />
-<glyph unicode="&#xca;" horiz-adv-x="1126" d="M170 0v1366h862v-221h-598v-342h471v-219h-471v-363h613v-221h-877zM252 1559l258 225h201l256 -225l-131 -89l-226 181l-225 -181z" />
-<glyph unicode="&#xcb;" horiz-adv-x="1126" d="M170 0v1366h862v-221h-598v-342h471v-219h-471v-363h613v-221h-877zM215 1626q0 61 39 98t100.5 37t101.5 -36.5t40 -98.5q0 -59 -40 -97t-102 -38q-59 0 -99 38t-40 97zM727 1626q0 61 40 98t101.5 37t100.5 -36.5t39 -98.5q0 -59 -40 -97t-100 -38q-61 0 -101 38 t-40 97z" />
-<glyph unicode="&#xcc;" horiz-adv-x="604" d="M23 1593l71 189l443 -195l-52 -137zM170 0v1366h264v-1366h-264z" />
-<glyph unicode="&#xcd;" horiz-adv-x="604" d="M78 1587l442 195l72 -189l-465 -143zM170 0v1366h264v-1366h-264z" />
-<glyph unicode="&#xce;" horiz-adv-x="604" d="M-53 1559l258 225h201l256 -225l-132 -89l-225 181l-225 -181zM170 0v1366h264v-1366h-264z" />
-<glyph unicode="&#xcf;" horiz-adv-x="604" d="M-47 1630.5q0 59.5 38 95t97 35.5q61 0 99 -35.5t38 -95t-37.5 -95.5t-99.5 -36q-59 0 -97 36t-38 95.5zM170 0v1366h264v-1366h-264zM389 1630.5q0 59.5 38 95t97 35.5q61 0 99.5 -35.5t38.5 -95t-38 -95.5t-100 -36q-59 0 -97 36t-38 95.5z" />
-<glyph unicode="&#xd0;" horiz-adv-x="1521" d="M53 592v203h148v571h485q145 0 274.5 -36t238 -111.5t173 -207.5t64.5 -306q0 -336 -226.5 -520.5t-601.5 -184.5h-407v592h-148zM465 221h123q295 0 434 129t139 342q0 209 -129 331t-375 122h-192v-350h315v-203h-315v-371z" />
-<glyph unicode="&#xd1;" horiz-adv-x="1529" d="M170 0v1366h266l666 -963v963h258v-1366h-268l-664 956v-956h-258zM379 1522q0 27 4 54.5t17.5 63t36 62.5t65.5 46t100 19q76 0 138.5 -32.5t106.5 -65.5t79 -33q68 0 67 107v20h158v-30q0 -37 -7 -72t-27.5 -80t-71 -72.5t-121.5 -27.5q-61 0 -111.5 20.5t-78 45 t-60.5 45t-64 20.5q-74 0 -73 -105l2 -18h-158q-2 13 -2 33z" />
-<glyph unicode="&#xd2;" d="M78 680q0 182 84 342t258 264.5t405 104.5q332 0 534 -197t202 -485q0 -190 -90.5 -357.5t-265.5 -272t-398 -104.5q-328 0 -528.5 207t-200.5 498zM354 688q0 -193 122 -341t337 -148t344 147.5t129 345.5q0 195 -124 335t-341 140t-342 -141t-125 -338zM535 1593 l71 189l443 -195l-52 -137z" />
-<glyph unicode="&#xd3;" d="M78 680q0 182 84 342t258 264.5t405 104.5q332 0 534 -197t202 -485q0 -190 -90.5 -357.5t-265.5 -272t-398 -104.5q-328 0 -528.5 207t-200.5 498zM354 688q0 -193 122 -341t337 -148t344 147.5t129 345.5q0 195 -124 335t-341 140t-342 -141t-125 -338zM592 1587 l442 195l72 -189l-465 -143z" />
-<glyph unicode="&#xd4;" d="M78 680q0 182 84 342t258 264.5t405 104.5q332 0 534 -197t202 -485q0 -190 -90.5 -357.5t-265.5 -272t-398 -104.5q-328 0 -528.5 207t-200.5 498zM354 688q0 -193 122 -341t337 -148t344 147.5t129 345.5q0 195 -124 335t-341 140t-342 -141t-125 -338zM461 1559 l258 225h201l256 -225l-132 -89l-225 181l-225 -181z" />
-<glyph unicode="&#xd5;" d="M78 680q0 182 84 342t258 264.5t405 104.5q332 0 534 -197t202 -485q0 -190 -90.5 -357.5t-265.5 -272t-398 -104.5q-328 0 -528.5 207t-200.5 498zM354 688q0 -193 122 -341t337 -148t344 147.5t129 345.5q0 195 -124 335t-341 140t-342 -141t-125 -338zM434 1522 q0 27 4 54.5t17.5 63t36 62.5t65.5 46t100 19q76 0 138.5 -32.5t106.5 -65.5t79 -33q68 0 68 107v20h157v-30q0 -37 -7 -72t-27.5 -80t-70.5 -72.5t-122 -27.5q-61 0 -111.5 20.5t-78 45t-60.5 45t-63 20.5q-74 0 -74 -105l2 -18h-158q-2 13 -2 33z" />
-<glyph unicode="&#xd6;" d="M78 680q0 182 84 342t258 264.5t405 104.5q332 0 534 -197t202 -485q0 -190 -90.5 -357.5t-265.5 -272t-398 -104.5q-328 0 -528.5 207t-200.5 498zM354 688q0 -193 122 -341t337 -148t344 147.5t129 345.5q0 195 -124 335t-341 140t-342 -141t-125 -338zM424 1626 q0 61 39 98t100.5 37t101.5 -36.5t40 -98.5q0 -59 -40 -97t-102 -38q-59 0 -99 38t-40 97zM936 1626q0 61 40 98t101.5 37t100.5 -36.5t39 -98.5q0 -59 -40 -97t-100 -38q-61 0 -101 38t-40 97z" />
-<glyph unicode="&#xd7;" horiz-adv-x="1064" d="M72 160l348 358l-348 361l110 114l350 -360l351 360l110 -114l-350 -361l350 -358l-112 -115l-349 358l-348 -358z" />
-<glyph unicode="&#xd8;" d="M78 680q0 182 84 342t258 264.5t405 104.5q211 0 377 -86l94 122h162l-145 -192q119 -94 183.5 -231.5t64.5 -294.5q0 -190 -90.5 -357.5t-265.5 -272t-398 -104.5q-213 0 -381 95l-100 -131h-164l157 206q-117 98 -179 237.5t-62 297.5zM354 688q0 -201 119 -340 l582 762q-98 57 -234 57q-217 0 -342 -141t-125 -338zM571 264q104 -66 242 -65q215 0 344 147.5t129 345.5q0 201 -129 340z" />
-<glyph unicode="&#xd9;" horiz-adv-x="1458" d="M154 512v854h264v-827q0 -176 84 -258t229.5 -82t228 85t82.5 246v836h265v-825q0 -266 -164 -416t-414 -150q-258 0 -416.5 130.5t-158.5 406.5zM444 1593l72 189l442 -195l-51 -137z" />
-<glyph unicode="&#xda;" horiz-adv-x="1458" d="M154 512v854h264v-827q0 -176 84 -258t229.5 -82t228 85t82.5 246v836h265v-825q0 -266 -164 -416t-414 -150q-258 0 -416.5 130.5t-158.5 406.5zM502 1587l442 195l72 -189l-465 -143z" />
-<glyph unicode="&#xdb;" horiz-adv-x="1458" d="M154 512v854h264v-827q0 -176 84 -258t229.5 -82t228 85t82.5 246v836h265v-825q0 -266 -164 -416t-414 -150q-258 0 -416.5 130.5t-158.5 406.5zM371 1559l258 225h200l256 -225l-131 -89l-225 181l-225 -181z" />
-<glyph unicode="&#xdc;" horiz-adv-x="1458" d="M154 512v854h264v-827q0 -176 84 -258t229.5 -82t228 85t82.5 246v836h265v-825q0 -266 -164 -416t-414 -150q-258 0 -416.5 130.5t-158.5 406.5zM334 1626q0 61 39 98t100.5 37t101 -36.5t39.5 -98.5q0 -59 -39.5 -97t-101.5 -38q-59 0 -99 38t-40 97zM846 1626 q0 61 40 98t101.5 37t100 -36.5t38.5 -98.5q0 -59 -39.5 -97t-99.5 -38q-61 0 -101 38t-40 97z" />
-<glyph unicode="&#xdd;" horiz-adv-x="1245" d="M-2 1366h309l316 -535l325 535h299l-491 -795v-571h-264v569zM395 1587l443 195l71 -189l-465 -143z" />
-<glyph unicode="&#xde;" horiz-adv-x="1191" d="M170 0v1366h264v-281h234q244 0 358.5 -106.5t114.5 -276.5q0 -195 -130 -306t-343 -111h-234v-285h-264zM434 506h193q240 0 239 182q0 178 -239 178h-193v-360z" />
-<glyph unicode="&#xdf;" horiz-adv-x="1222" d="M45 750v137l145 51v72q0 227 115 351t332 124q182 0 288.5 -84t106.5 -221q0 -70 -28.5 -131.5t-64.5 -97.5t-64.5 -82t-28.5 -89q0 -47 34.5 -90t83.5 -80l97 -78q49 -41 84 -103t35 -140q0 -139 -104.5 -226.5t-282.5 -87.5q-147 0 -234 52l37 202q76 -59 176 -59 q68 0 105.5 33t37.5 84q0 43 -30.5 78.5t-74.5 65.5t-89 65.5t-76 95t-31 137.5q0 74 27 135.5t59.5 95t59 83t26.5 102.5q0 78 -45 113.5t-112 35.5q-182 0 -183 -276v-1018h-256v750h-145z" />
-<glyph unicode="&#xe0;" horiz-adv-x="1007" d="M53 219q0 289 545 361v32q0 78 -24.5 116t-104.5 38q-145 -2 -295 -111l-61 181q18 14 53 33.5t146.5 53t228.5 33.5q174 0 243.5 -71.5t69.5 -231.5v-360q0 -92 88 -107l16 -2l-73 -198q-197 6 -260 137q-96 -147 -291 -148q-125 0 -203 69t-78 175zM145 1448h242 l211 -334l-135 -74zM313 240q0 -78 90 -78q92 0 195 121v149q-285 -40 -285 -192z" />
-<glyph unicode="&#xe1;" horiz-adv-x="1007" d="M53 219q0 289 545 361v32q0 78 -24.5 116t-104.5 38q-145 -2 -295 -111l-61 181q18 14 53 33.5t146.5 53t228.5 33.5q174 0 243.5 -71.5t69.5 -231.5v-360q0 -92 88 -107l16 -2l-73 -198q-197 6 -260 137q-96 -147 -291 -148q-125 0 -203 69t-78 175zM313 240 q0 -78 90 -78q92 0 195 121v149q-285 -40 -285 -192zM350 1114l211 334h244l-318 -408z" />
-<glyph unicode="&#xe2;" horiz-adv-x="1007" d="M53 219q0 289 545 361v32q0 78 -24.5 116t-104.5 38q-145 -2 -295 -111l-61 181q18 14 53 33.5t146.5 53t228.5 33.5q174 0 243.5 -71.5t69.5 -231.5v-360q0 -92 88 -107l16 -2l-73 -198q-197 6 -260 137q-96 -147 -291 -148q-125 0 -203 69t-78 175zM162 1098l235 350 h158l233 -352l-139 -58l-174 244l-172 -244zM313 240q0 -78 90 -78q92 0 195 121v149q-285 -40 -285 -192z" />
-<glyph unicode="&#xe3;" horiz-adv-x="1007" d="M53 219q0 289 545 361v32q0 78 -24.5 116t-104.5 38q-145 -2 -295 -111l-61 181q18 14 53 33.5t146.5 53t228.5 33.5q174 0 243.5 -71.5t69.5 -231.5v-360q0 -92 88 -107l16 -2l-73 -198q-197 6 -260 137q-96 -147 -291 -148q-125 0 -203 69t-78 175zM127 1151q0 37 6 73 t25.5 82t64.5 74.5t111 28.5q70 0 124 -39t92 -78t68 -39q59 0 60 117v25h156v-29q0 -37 -7.5 -74t-26 -84t-65.5 -76.5t-114 -29.5q-70 0 -121 39t-87 77.5t-69 38.5q-59 0 -59 -118v-19h-156q-2 13 -2 31zM313 240q0 -78 90 -78q92 0 195 121v149q-285 -40 -285 -192z" />
-<glyph unicode="&#xe4;" horiz-adv-x="1007" d="M53 219q0 289 545 361v32q0 78 -24.5 116t-104.5 38q-145 -2 -295 -111l-61 181q18 14 53 33.5t146.5 53t228.5 33.5q174 0 243.5 -71.5t69.5 -231.5v-360q0 -92 88 -107l16 -2l-73 -198q-197 6 -260 137q-96 -147 -291 -148q-125 0 -203 69t-78 175zM121 1276 q0 59 38 95t97 36q61 0 99 -36t38 -95t-38 -95t-99 -36q-59 0 -97 36t-38 95zM313 240q0 -78 90 -78q92 0 195 121v149q-285 -40 -285 -192zM557 1276q0 59 38 95t97 36q61 0 99 -36t38 -95t-37.5 -95t-99.5 -36q-59 0 -97 36t-38 95z" />
-<glyph unicode="&#xe5;" horiz-adv-x="1007" d="M53 219q0 289 545 361v32q0 78 -24.5 116t-104.5 38q-145 -2 -295 -111l-61 181q18 14 53 33.5t146.5 53t228.5 33.5q174 0 243.5 -71.5t69.5 -231.5v-360q0 -92 88 -107l16 -2l-73 -198q-197 6 -260 137q-96 -147 -291 -148q-125 0 -203 69t-78 175zM268 1282 q0 72 53.5 126t153.5 54t153.5 -54t53.5 -126t-53.5 -129t-153.5 -57t-153.5 57t-53.5 129zM313 240q0 -78 90 -78q92 0 195 121v149q-285 -40 -285 -192zM383 1280q0 -37 24.5 -62.5t67.5 -25.5t68.5 26.5t25.5 61.5t-24.5 60.5t-69.5 25.5t-68.5 -25.5t-23.5 -60.5z" />
-<glyph unicode="&#xe6;" horiz-adv-x="1538" d="M53 219q0 262 557 328v51q0 88 -24.5 128t-106.5 40q-70 0 -145.5 -27.5t-116.5 -54.5l-43 -29l-61 181q18 14 53 33.5t143.5 53t220.5 33.5q190 0 254 -118q109 119 277 118q180 0 288.5 -115.5t110.5 -330.5l-139 -41l-463 -57q18 -111 88 -175.5t176 -64.5 q68 0 138.5 28.5t107.5 57.5l37 29l68 -181q-16 -14 -48 -35.5t-134.5 -58.5t-211.5 -37q-254 0 -381 195q-39 -76 -130 -135.5t-224 -59.5q-131 0 -211 69t-80 175zM313 240q0 -78 101 -78q82 0 138 61.5t56 177.5q-295 -30 -295 -161zM856 561l328 39q0 6 -1 17.5t-9.5 40 t-21.5 50t-42 40t-68 18.5q-78 0 -126 -56.5t-60 -148.5z" />
-<glyph unicode="&#xe7;" horiz-adv-x="958" d="M66 449q0 207 142 357t367 150q195 0 328 -90l4 -4l-90 -186q-96 84 -223 84q-115 0 -189.5 -80t-74.5 -217q0 -131 70.5 -211t185.5 -80q63 0 124.5 23.5t90.5 46.5l28 24l78 -172q-12 -12 -34.5 -31.5t-107.5 -52.5t-185 -35l-7 -14q-18 -41 -18 -55q0 -20 27.5 -36.5 t62.5 -29t62.5 -46.5t27.5 -83q0 -84 -68.5 -140t-179.5 -56q-57 0 -108 15t-76 32l-22 16l49 115q70 -59 155 -60q43 0 70 16.5t27 39.5q0 20 -27 38.5t-59.5 31t-59 38t-26.5 58t32 98.5l17 33q-180 31 -286.5 159t-106.5 304z" />
-<glyph unicode="&#xe8;" horiz-adv-x="1009" d="M70 461q0 209 129 352t333 143q180 0 289 -118.5t111 -337.5l-139 -41l-461 -60q23 -104 90 -165.5t172 -61.5q68 0 138.5 28.5t107.5 57.5l37 29l65 -181q-6 -6 -17.5 -14t-50 -30.5t-80.5 -40t-109 -32t-134 -14.5q-227 0 -354 140.5t-127 345.5zM184 1448h242 l211 -334l-135 -74zM326 547l329 43q0 6 -1 18.5t-9 43t-21.5 53t-42 42t-67.5 19.5q-80 0 -129 -60.5t-59 -158.5z" />
-<glyph unicode="&#xe9;" horiz-adv-x="1009" d="M70 461q0 209 129 352t333 143q180 0 289 -118.5t111 -337.5l-139 -41l-461 -60q23 -104 90 -165.5t172 -61.5q68 0 138.5 28.5t107.5 57.5l37 29l65 -181q-6 -6 -17.5 -14t-50 -30.5t-80.5 -40t-109 -32t-134 -14.5q-227 0 -354 140.5t-127 345.5zM326 547l329 43 q0 6 -1 18.5t-9 43t-21.5 53t-42 42t-67.5 19.5q-80 0 -129 -60.5t-59 -158.5zM389 1114l211 334h244l-318 -408z" />
-<glyph unicode="&#xea;" horiz-adv-x="1009" d="M70 461q0 209 129 352t333 143q180 0 289 -118.5t111 -337.5l-139 -41l-461 -60q23 -104 90 -165.5t172 -61.5q68 0 138.5 28.5t107.5 57.5l37 29l65 -181q-6 -6 -17.5 -14t-50 -30.5t-80.5 -40t-109 -32t-134 -14.5q-227 0 -354 140.5t-127 345.5zM203 1098l235 350h158 l233 -352l-139 -58l-174 244l-172 -244zM326 547l329 43q0 6 -1 18.5t-9 43t-21.5 53t-42 42t-67.5 19.5q-80 0 -129 -60.5t-59 -158.5z" />
-<glyph unicode="&#xeb;" horiz-adv-x="1009" d="M70 461q0 209 129 352t333 143q180 0 289 -118.5t111 -337.5l-139 -41l-461 -60q23 -104 90 -165.5t172 -61.5q68 0 138.5 28.5t107.5 57.5l37 29l65 -181q-6 -6 -17.5 -14t-50 -30.5t-80.5 -40t-109 -32t-134 -14.5q-227 0 -354 140.5t-127 345.5zM162 1276q0 59 38 95 t97 36q61 0 99 -36t38 -95t-38 -95t-99 -36q-59 0 -97 36t-38 95zM326 547l329 43q0 6 -1 18.5t-9 43t-21.5 53t-42 42t-67.5 19.5q-80 0 -129 -60.5t-59 -158.5zM598 1276q0 59 38 95t97 36q61 0 99 -36t38 -95t-37.5 -95t-99.5 -36q-59 0 -97 36t-38 95z" />
-<glyph unicode="&#xec;" horiz-adv-x="514" d="M-72 1448h242l211 -334l-135 -74zM129 0v932h256v-932h-256z" />
-<glyph unicode="&#xed;" horiz-adv-x="514" d="M129 0v932h256v-932h-256zM133 1114l211 334h244l-318 -408z" />
-<glyph unicode="&#xee;" horiz-adv-x="514" d="M-55 1098l235 350h158l233 -352l-139 -58l-174 244l-172 -244zM129 0v932h256v-932h-256z" />
-<glyph unicode="&#xef;" horiz-adv-x="514" d="M-96 1276q0 59 38 95t97 36q61 0 99 -36t38 -95t-38 -95t-99 -36q-59 0 -97 36t-38 95zM129 0v932h256v-932h-256zM340 1276q0 59 38 95t97 36q61 0 99 -36t38 -95t-37.5 -95t-99.5 -36q-59 0 -97 36t-38 95z" />
-<glyph unicode="&#xf0;" horiz-adv-x="1120" d="M68 444q0 201 128 356.5t328 155.5q133 0 201 -67q-68 156 -203 266l-270 -154l-70 129l201 113q-102 59 -248 94l47 185q229 -43 410 -158l297 168l67 -131l-237 -135q309 -276 309 -688q0 -264 -133 -433.5t-365 -169.5q-215 0 -338.5 137t-123.5 332zM319 463 q0 -115 55.5 -206t164.5 -91q106 0 175.5 92t69.5 289q0 94 -50 156.5t-150 62.5q-117 0 -191 -86t-74 -217z" />
-<glyph unicode="&#xf1;" horiz-adv-x="1095" d="M125 0v911l246 41v-172q162 176 352 176q252 0 252 -292v-664h-254v555q0 96 -21.5 138t-72.5 42q-98 0 -246 -147v-588h-256zM213 1151q0 37 6 73t25.5 82t64.5 74.5t111 28.5q70 0 124 -39t92 -78t69 -39q59 0 59 117v25h156v-29q0 -37 -7.5 -74t-26 -84t-65.5 -76.5 t-114 -29.5q-70 0 -121 39t-87 77.5t-69 38.5q-59 0 -59 -118v-19h-156q-2 13 -2 31z" />
-<glyph unicode="&#xf2;" horiz-adv-x="1142" d="M68 463q0 92 29.5 176t88 156.5t158.5 116.5t231 44q238 0 369 -139t131 -332q0 -90 -28.5 -176t-87 -162.5t-160 -124t-232.5 -47.5q-238 0 -368.5 143.5t-130.5 344.5zM244 1448h241l211 -334l-135 -74zM332 481q0 -131 62.5 -223t178.5 -92q102 0 170 82t68 211 q0 123 -61.5 215t-178.5 92q-102 0 -170.5 -80t-68.5 -205z" />
-<glyph unicode="&#xf3;" horiz-adv-x="1142" d="M68 463q0 92 29.5 176t88 156.5t158.5 116.5t231 44q238 0 369 -139t131 -332q0 -90 -28.5 -176t-87 -162.5t-160 -124t-232.5 -47.5q-238 0 -368.5 143.5t-130.5 344.5zM332 481q0 -131 62.5 -223t178.5 -92q102 0 170 82t68 211q0 123 -61.5 215t-178.5 92 q-102 0 -170.5 -80t-68.5 -205zM446 1114l211 334h244l-317 -408z" />
-<glyph unicode="&#xf4;" horiz-adv-x="1142" d="M68 463q0 92 29.5 176t88 156.5t158.5 116.5t231 44q238 0 369 -139t131 -332q0 -90 -28.5 -176t-87 -162.5t-160 -124t-232.5 -47.5q-238 0 -368.5 143.5t-130.5 344.5zM258 1098l236 350h157l234 -352l-140 -58l-174 244l-172 -244zM332 481q0 -131 62.5 -223 t178.5 -92q102 0 170 82t68 211q0 123 -61.5 215t-178.5 92q-102 0 -170.5 -80t-68.5 -205z" />
-<glyph unicode="&#xf5;" horiz-adv-x="1142" d="M68 463q0 92 29.5 176t88 156.5t158.5 116.5t231 44q238 0 369 -139t131 -332q0 -90 -28.5 -176t-87 -162.5t-160 -124t-232.5 -47.5q-238 0 -368.5 143.5t-130.5 344.5zM223 1151q0 37 6.5 73t25.5 82t64.5 74.5t110.5 28.5q70 0 124 -39t92 -78t69 -39q59 0 59 117v25 h156v-29q0 -37 -7.5 -74t-25.5 -84t-65.5 -76.5t-114.5 -29.5q-70 0 -121 39t-87 77.5t-69 38.5q-59 0 -59 -118v-19h-156q-2 13 -2 31zM332 481q0 -131 62.5 -223t178.5 -92q102 0 170 82t68 211q0 123 -61.5 215t-178.5 92q-102 0 -170.5 -80t-68.5 -205z" />
-<glyph unicode="&#xf6;" horiz-adv-x="1142" d="M68 463q0 92 29.5 176t88 156.5t158.5 116.5t231 44q238 0 369 -139t131 -332q0 -90 -28.5 -176t-87 -162.5t-160 -124t-232.5 -47.5q-238 0 -368.5 143.5t-130.5 344.5zM217 1276q0 59 38 95t97 36q61 0 99 -36t38 -95t-37.5 -95t-99.5 -36q-59 0 -97 36t-38 95z M332 481q0 -131 62.5 -223t178.5 -92q102 0 170 82t68 211q0 123 -61.5 215t-178.5 92q-102 0 -170.5 -80t-68.5 -205zM653 1276q0 59 38 95t97 36q61 0 99.5 -36t38.5 -95t-38 -95t-100 -36q-59 0 -97 36t-38 95z" />
-<glyph unicode="&#xf7;" horiz-adv-x="1064" d="M74 436v166h917v-166h-917zM391 135q0 59 41 101.5t100.5 42.5t101.5 -42t42 -101.5t-42 -100.5t-102 -41q-57 0 -99 42t-42 99zM391 901.5q0 59.5 42 101t99 41.5q59 0 101.5 -41.5t42.5 -101t-42 -101.5t-102 -42q-57 0 -99 42t-42 101.5z" />
-<glyph unicode="&#xf8;" horiz-adv-x="1142" d="M68 463q0 92 29.5 176t88 156.5t158.5 116.5t231 44q137 0 244 -51l68 88h143l-115 -151q160 -135 160 -357q0 -90 -28.5 -176t-87 -162.5t-160 -124t-232.5 -47.5q-141 0 -252 56l-69 -92h-146l119 159q-151 138 -151 365zM332 481q0 -102 37 -182l321 430 q-49 37 -119 37q-102 0 -170.5 -80t-68.5 -205zM444 205q55 -39 129 -39q102 0 170 82t68 211q0 102 -43 184z" />
-<glyph unicode="&#xf9;" horiz-adv-x="1095" d="M119 256v676h256v-555q0 -94 19.5 -137t76.5 -43q92 0 236 127v608h254v-647q0 -49 10 -120t20 -116l10 -45l-245 -22q-20 90 -29 157q-158 -164 -352 -164q-117 0 -186.5 69t-69.5 212zM211 1448h242l211 -334l-136 -74z" />
-<glyph unicode="&#xfa;" horiz-adv-x="1095" d="M119 256v676h256v-555q0 -94 19.5 -137t76.5 -43q92 0 236 127v608h254v-647q0 -49 10 -120t20 -116l10 -45l-245 -22q-20 90 -29 157q-158 -164 -352 -164q-117 0 -186.5 69t-69.5 212zM416 1114l211 334h243l-317 -408z" />
-<glyph unicode="&#xfb;" horiz-adv-x="1095" d="M119 256v676h256v-555q0 -94 19.5 -137t76.5 -43q92 0 236 127v608h254v-647q0 -49 10 -120t20 -116l10 -45l-245 -22q-20 90 -29 157q-158 -164 -352 -164q-117 0 -186.5 69t-69.5 212zM225 1098l236 350h157l234 -352l-139 -58l-174 244l-172 -244z" />
-<glyph unicode="&#xfc;" horiz-adv-x="1095" d="M119 256v676h256v-555q0 -94 19.5 -137t76.5 -43q92 0 236 127v608h254v-647q0 -49 10 -120t20 -116l10 -45l-245 -22q-20 90 -29 157q-158 -164 -352 -164q-117 0 -186.5 69t-69.5 212zM184 1276q0 59 38 95t97 36q61 0 99.5 -36t38.5 -95t-38 -95t-100 -36 q-59 0 -97 36t-38 95zM621 1276q0 59 37.5 95t97.5 36q61 0 99 -36t38 -95t-38 -95t-99 -36q-59 0 -97 36t-38 95z" />
-<glyph unicode="&#xfd;" horiz-adv-x="972" d="M8 932h266l218 -610l213 610h258l-388 -1000q-63 -162 -188 -281.5t-289 -135.5l-78 196q100 12 188.5 81t125.5 155l33 78zM367 1114l211 334h243l-317 -408z" />
-<glyph unicode="&#xfe;" horiz-adv-x="1105" d="M129 -481v1908l256 41v-659q80 147 258 147t284.5 -132t106.5 -328q0 -213 -125 -367t-346 -154q-115 0 -178 39v-454zM385 252q0 -86 135 -86q113 0 181.5 81t68.5 232q0 129 -48 203t-128 74q-113 0 -209 -140v-364z" />
-<glyph unicode="&#xff;" horiz-adv-x="972" d="M8 932h266l218 -610l213 610h258l-388 -1000q-63 -162 -188 -281.5t-289 -135.5l-78 196q100 12 188.5 81t125.5 155l33 78zM137 1276q0 59 38 95t97 36q61 0 99.5 -36t38.5 -95t-38 -95t-100 -36q-59 0 -97 36t-38 95zM573 1276q0 59 38 95t98 36q61 0 99 -36t38 -95 t-38 -95t-99 -36q-59 0 -97.5 36t-38.5 95z" />
-<glyph unicode="&#x152;" horiz-adv-x="2027" d="M78 680q0 182 84 342t258 264.5t405 104.5q139 0 256 -25h852v-221h-598v-342h471v-219h-471v-363h613v-221h-877q-137 -25 -264 -25q-328 0 -528.5 207t-200.5 498zM354 688q0 -190 122 -339.5t337 -149.5q154 0 258 26v905q-111 37 -250 37q-217 0 -342 -141t-125 -338 z" />
-<glyph unicode="&#x153;" horiz-adv-x="1746" d="M68 463q0 92 29.5 176t88 156.5t158.5 116.5t231 44q233 0 365 -168q125 168 330 168q180 0 288.5 -118.5t110.5 -337.5l-139 -41l-461 -60q23 -104 90.5 -165.5t171.5 -61.5q68 0 138.5 28.5t107.5 57.5l37 29l65 -181q-6 -6 -17 -14t-50 -30.5t-81 -40t-108.5 -32 t-134.5 -14.5q-227 0 -352 168q-131 -168 -368.5 -168t-368.5 143.5t-131 344.5zM332 481q0 -131 62.5 -223t178.5 -92q102 0 170 82t68 211q0 123 -61.5 215t-178.5 92q-102 0 -170.5 -80t-68.5 -205zM1063 549l330 41q0 6 -1 18.5t-9.5 43t-21.5 53t-42 42t-68 19.5 q-80 0 -129 -59.5t-59 -157.5z" />
-<glyph unicode="&#x178;" horiz-adv-x="1245" d="M-2 1366h309l316 -535l325 535h299l-491 -795v-571h-264v569zM227 1626q0 61 39 98t100.5 37t101.5 -36.5t40 -98.5q0 -59 -40 -97t-101 -38q-59 0 -99.5 38t-40.5 97zM739 1626q0 61 40 98t101.5 37t100.5 -36.5t39 -98.5q0 -59 -40 -97t-99 -38q-61 0 -101.5 38 t-40.5 97z" />
-<glyph unicode="&#x2c6;" horiz-adv-x="1044" d="M209 1098l235 350h158l234 -352l-140 -58l-174 244l-172 -244z" />
-<glyph unicode="&#x2dc;" horiz-adv-x="1044" d="M178 1151q0 37 6 73t25.5 82t64.5 74.5t111 28.5q70 0 124 -39t92 -78t69 -39q59 0 59 117v25h156v-29q0 -37 -7.5 -74t-25.5 -84t-65.5 -76.5t-114.5 -29.5q-70 0 -121 39t-87 77.5t-69 38.5q-59 0 -59 -118v-19h-156q-2 13 -2 31z" />
-<glyph unicode="&#x2000;" horiz-adv-x="892" />
-<glyph unicode="&#x2001;" horiz-adv-x="1784" />
-<glyph unicode="&#x2002;" horiz-adv-x="892" />
-<glyph unicode="&#x2003;" horiz-adv-x="1784" />
-<glyph unicode="&#x2004;" horiz-adv-x="594" />
-<glyph unicode="&#x2005;" horiz-adv-x="446" />
-<glyph unicode="&#x2006;" horiz-adv-x="297" />
-<glyph unicode="&#x2007;" horiz-adv-x="297" />
-<glyph unicode="&#x2008;" horiz-adv-x="223" />
-<glyph unicode="&#x2009;" horiz-adv-x="356" />
-<glyph unicode="&#x200a;" horiz-adv-x="99" />
-<glyph unicode="&#x2010;" horiz-adv-x="755" d="M106 440v164h543v-164h-543z" />
-<glyph unicode="&#x2011;" horiz-adv-x="755" d="M106 440v164h543v-164h-543z" />
-<glyph unicode="&#x2012;" horiz-adv-x="755" d="M106 440v164h543v-164h-543z" />
-<glyph unicode="&#x2013;" horiz-adv-x="1052" d="M106 442v166h840v-166h-840z" />
-<glyph unicode="&#x2014;" horiz-adv-x="1851" d="M106 442v166h1639v-166h-1639z" />
-<glyph unicode="&#x2018;" horiz-adv-x="458" d="M82 1153q0 203 221 377l84 -94q-125 -100 -125 -211q0 -51 30 -102.5t114 -141.5l-209 -111q-115 142 -115 283z" />
-<glyph unicode="&#x2019;" horiz-adv-x="442" d="M47 1419l211 111q113 -139 113 -281q0 -205 -219 -379l-86 95q127 100 127 213q0 51 -31 103t-115 138z" />
-<glyph unicode="&#x201a;" horiz-adv-x="495" d="M78 199l211 110q115 -141 114 -280q0 -203 -221 -377l-86 92q127 100 127 213q0 53 -30.5 103.5t-114.5 138.5z" />
-<glyph unicode="&#x201c;" horiz-adv-x="849" d="M82 1153q0 203 221 377l84 -94q-125 -100 -125 -211q0 -51 30 -102.5t114 -141.5l-209 -111q-115 142 -115 283zM473 1153q0 203 221 377l84 -94q-125 -100 -125 -211q0 -51 30 -102.5t114 -141.5l-209 -111q-115 142 -115 283z" />
-<glyph unicode="&#x201d;" horiz-adv-x="833" d="M47 1419l211 111q113 -139 113 -281q0 -205 -219 -379l-86 95q127 100 127 213q0 51 -31 103t-115 138zM440 1419l209 111q113 -139 113 -281q0 -205 -219 -379l-86 95q127 100 127 213q0 51 -31 103t-113 138z" />
-<glyph unicode="&#x201e;" horiz-adv-x="886" d="M78 199l211 110q115 -141 114 -280q0 -203 -221 -377l-86 92q127 100 127 213q0 53 -30.5 103.5t-114.5 138.5zM469 199l211 110q115 -141 115 -280q0 -205 -222 -377l-86 92q127 100 127 213q0 53 -30.5 103.5t-114.5 138.5z" />
-<glyph unicode="&#x2022;" horiz-adv-x="833" d="M106 524q0 131 90.5 221.5t221.5 90.5t220 -90.5t89 -221.5t-89 -221t-220 -90t-221.5 90t-90.5 221z" />
-<glyph unicode="&#x2026;" horiz-adv-x="1658" d="M100 131q0 66 46.5 113t112 47t111.5 -47t46 -113q0 -63 -47 -109.5t-110.5 -46.5t-111 46.5t-47.5 109.5zM672 131q0 66 46 113t109 47q66 0 113 -47t47 -113q0 -63 -47 -109.5t-113 -46.5q-63 0 -109 46.5t-46 109.5zM1243 131q0 66 46 113t110 47q66 0 113 -47 t47 -113q0 -63 -47.5 -109.5t-112.5 -46.5q-63 0 -109.5 46.5t-46.5 109.5z" />
-<glyph unicode="&#x202f;" horiz-adv-x="356" />
-<glyph unicode="&#x2039;" horiz-adv-x="643" d="M33 510v8q31 25 200 217l189 211l141 -41l-293 -391l293 -391l-141 -41l-165 182l-107 121l-59 66q-26 29 -36 39t-22 20z" />
-<glyph unicode="&#x203a;" horiz-adv-x="643" d="M80 123l295 391l-295 391l141 41q356 -399 375 -416q6 -6 14 -12v-8q-12 -10 -22 -20.5l-36 -38.5l-58 -66l-108 -121l-165 -182z" />
-<glyph unicode="&#x205f;" horiz-adv-x="446" />
-<glyph unicode="&#x20ac;" horiz-adv-x="1155" d="M76 365v118h106q-4 45 -4 74q0 27 4 84h-106v119h131q53 182 195.5 294.5t342.5 112.5q82 0 162 -18.5t121 -38.5l39 -18l-63 -197q-113 76 -254 76q-205 0 -279 -211h494l-35 -119h-486q-2 -23 -2 -68q0 -47 7 -90h438l-35 -118h-373q80 -193 279 -193q57 0 119.5 15.5 t97.5 29.5l33 16l49 -182q-127 -76 -318 -76q-201 0 -342 104.5t-194 285.5h-127z" />
-<glyph unicode="&#x2122;" horiz-adv-x="1433" d="M72 1257v109h493v-109h-178v-436h-137v436h-178zM653 821l21 545h194l117 -340l119 340h192l21 -545h-133l-17 396l-139 -396h-90l-139 398l-13 -398h-133z" />
-<glyph unicode="&#xe000;" horiz-adv-x="930" d="M0 930h930v-930h-930v930z" />
-<glyph unicode="&#xfb01;" horiz-adv-x="1150" d="M45 750v137l145 51v57q0 240 130.5 376t338.5 136q172 -2 293 -80l-90 -180q-96 63 -205 64q-211 0 -211 -297v-82h574v-932h-254v760h-320v-760h-256v750h-145z" />
-<glyph unicode="&#xfb02;" horiz-adv-x="1187" d="M45 750v137l145 51v57q0 240 130.5 376t338.5 136q131 0 261 -61l137 22v-1468h-254v1276q-82 35 -146 35q-211 0 -211 -297v-82h250v-182h-250v-750h-256v750h-145z" />
-<glyph unicode="&#xfb03;" horiz-adv-x="1781" d="M45 750v137l145 51v29q0 229 128 360t329 131q170 0 293 -90q123 139 330 139q166 -2 282 -80l-90 -180q-88 63 -190 64q-195 0 -195 -277v-102h576v-932h-256v760h-320v-760h-254v760h-377v-760h-256v750h-145zM446 932h377v84q0 96 23 176q-90 70 -195 70 q-205 0 -205 -277v-53z" />
-<glyph unicode="&#xfb04;" horiz-adv-x="1818" d="M45 750v137l145 51v29q0 229 128 360t329 131q170 0 293 -90q123 139 330 139q143 0 258 -65l162 26v-1468h-256v1266q-86 45 -160 45q-197 0 -197 -277v-102h250v-182h-250v-750h-254v760h-377v-760h-256v750h-145zM446 932h377v84q0 92 23 176q-90 70 -195 70 q-205 0 -205 -277v-53z" />
-</font>
-</defs></svg> 
\ No newline at end of file
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansBold-webfont.ttf b/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansBold-webfont.ttf
deleted file mode 100644
index 65b27a67a74d75fe8c06d5ef38f2ee6d024a09ba..0000000000000000000000000000000000000000
Binary files a/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansBold-webfont.ttf and /dev/null differ
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansBold-webfont.woff b/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansBold-webfont.woff
deleted file mode 100644
index 9b82237317f9a7be251948eb43fbf6ecb286c481..0000000000000000000000000000000000000000
Binary files a/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansBold-webfont.woff and /dev/null differ
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansLight-webfont.eot b/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansLight-webfont.eot
deleted file mode 100644
index cbc96985981d657802c40a0ec9b343b4f4a4f7c5..0000000000000000000000000000000000000000
Binary files a/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansLight-webfont.eot and /dev/null differ
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansLight-webfont.svg b/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansLight-webfont.svg
deleted file mode 100644
index 616b462d1354740bbf518ba49cb5ed024358c47d..0000000000000000000000000000000000000000
--- a/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansLight-webfont.svg
+++ /dev/null
@@ -1,244 +0,0 @@
-<?xml version="1.0" standalone="no"?>
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
-<svg xmlns="http://www.w3.org/2000/svg">
-<metadata>
-This is a custom SVG webfont generated by Fontspring.
-</metadata>
-<defs>
-<font id="webfonty8j6eXvh" horiz-adv-x="1073" >
-<font-face units-per-em="2048" ascent="1536" descent="-512" />
-<missing-glyph horiz-adv-x="491" />
-<glyph unicode=" "  horiz-adv-x="491" />
-<glyph unicode="&#x09;" horiz-adv-x="491" />
-<glyph unicode="&#xa0;" horiz-adv-x="491" />
-<glyph unicode="!" horiz-adv-x="544" d="M164 86q0 45 32.5 78t77.5 33t78 -33t33 -78t-33 -78t-78 -33t-77.5 33t-32.5 78zM195 1391h153l-20 -1010h-119z" />
-<glyph unicode="&#x22;" horiz-adv-x="684" d="M137 903v463h127v-76l-39 -387h-88zM438 903v463h127v-76l-39 -387h-88z" />
-<glyph unicode="#" horiz-adv-x="1298" d="M76 266l18 101h238l59 295h-239l20 102h242l86 420h108l-86 -420h318l86 420h108l-86 -420h273l-21 -102h-272l-62 -295h277l-19 -101h-278l-90 -448h-111l92 448h-317l-90 -448h-111l92 448h-235zM440 367h318l59 295h-315z" />
-<glyph unicode="$" horiz-adv-x="935" d="M84 86l33 123l39 -27q25 -16 105.5 -46t164.5 -34l10 422q-55 20 -88 33.5t-84 43.5t-80.5 60.5t-52 81t-22.5 109.5q0 121 86 199.5t258 89.5l6 178h88l-6 -178q170 -6 278 -60l-39 -112q-104 49 -241 59l-11 -397q315 -119 316 -346q0 -125 -89 -203t-245 -90l-4 -174 h-88l4 170q-96 2 -180 26.5t-121 46.5zM248 860q0 -76 47 -119t145 -79l11 366q-203 -12 -203 -168zM514 106q193 25 193 179q0 76 -47.5 122t-135.5 82z" />
-<glyph unicode="%" horiz-adv-x="1472" d="M84 1036q0 127 87 215t212 88q127 0 214 -88t87 -215t-87 -214t-214 -87q-125 0 -212 87t-87 214zM180 1036q0 -84 59.5 -147.5t143.5 -63.5t143.5 63.5t59.5 147.5t-59.5 147.5t-145.5 63.5q-82 0 -141.5 -63.5t-59.5 -147.5zM209 0l950 1370l80 -57l-915 -1313h-115z M797 276q0 127 87 215.5t214 88.5q125 0 212 -88.5t87 -215.5q0 -125 -87 -213t-212 -88q-127 0 -214 88t-87 213zM895 276.5q0 -83.5 59.5 -147t143.5 -63.5t142 63.5t58 147t-59 147t-145 63.5q-82 0 -140.5 -63.5t-58.5 -147z" />
-<glyph unicode="&#x26;" horiz-adv-x="1378" d="M94 313q0 127 80 221.5t225 196.5q-121 213 -120 356q0 113 78.5 208.5t234.5 95.5q131 0 204.5 -73t73.5 -185q0 -127 -78.5 -221.5t-226.5 -198.5q72 -115 164 -232q76 -96 164 -184q176 236 205 621h123q-10 -156 -74 -352.5t-174 -342.5q199 -176 354 -207l-57 -102 q-182 35 -383 213q-166 -152 -379 -152q-172 0 -293 91t-121 247zM223 326q0 -113 90 -173.5t211 -60.5q154 0 281 111q-98 102 -174 196q-88 106 -174 236q-115 -82 -174.5 -152.5t-59.5 -156.5zM422 1092q0 -113 88 -283q113 80 170 146.5t57 150.5q0 70 -40 119t-113 49 q-76 0 -119 -53t-43 -129z" />
-<glyph unicode="'" horiz-adv-x="380" d="M137 903v463h121v-76l-25 -387h-96z" />
-<glyph unicode="(" horiz-adv-x="573" d="M115 553q0 154 30.5 298t74.5 240.5t88 172t75 110.5l31 35l108 -31l-32 -39q-19 -25 -68 -107.5t-88 -172.5t-70 -228.5t-31 -277.5q0 -152 31 -299.5t74 -247.5t86 -178t74 -115l30 -39l-104 -34l-34 39q-22 26 -75 115t-93 187.5t-73.5 254t-33.5 317.5z" />
-<glyph unicode=")" horiz-adv-x="573" d="M45 -326q12 14 31.5 40t71 113t90 182t70.5 243.5t32 300.5q0 139 -29.5 275.5t-72.5 231.5t-85 170t-71 111l-31 37l109 31q12 -12 32.5 -36.5t71.5 -107.5t90 -175.5t72 -237.5t33 -299q0 -459 -236 -815q-41 -63 -73 -98z" />
-<glyph unicode="*" horiz-adv-x="978" d="M98 854l285 115l29 -47l-244 -191zM98 1143l70 123l244 -191l-29 -47zM420 588l43 303h53l43 -303h-139zM420 1409h139l-43 -303h-53zM567 922l27 47l287 -115l-70 -123zM567 1075l244 191l70 -123l-287 -115z" />
-<glyph unicode="+" horiz-adv-x="1064" d="M68 449v120h403v424h131v-424h397v-120h-397v-449h-131v449h-403z" />
-<glyph unicode="," horiz-adv-x="456" d="M82 -274q51 45 70.5 64.5t36 55t16.5 82.5q0 111 -88 230l145 49q72 -82 72 -209q0 -205 -187 -338z" />
-<glyph unicode="-" horiz-adv-x="669" d="M117 438v142h434v-142h-434z" />
-<glyph unicode="." horiz-adv-x="477" d="M127 86q0 45 33 78t80 33q45 0 76.5 -33t31.5 -78t-31.5 -78t-76.5 -33q-47 0 -80 33t-33 78z" />
-<glyph unicode="/" horiz-adv-x="931" d="M49 -401l682 1767h131l-680 -1767h-133z" />
-<glyph unicode="0" horiz-adv-x="1116" d="M109 473q0 207 118.5 358.5t337.5 151.5q211 0 327 -141.5t116 -343.5q0 -133 -45 -248t-151.5 -195t-256.5 -80q-213 0 -329.5 146.5t-116.5 351.5zM240 483q0 -160 83 -275.5t240 -115.5q150 0 232 117t82 276q0 156 -83 268.5t-230.5 112.5t-235.5 -114.5t-88 -268.5z " />
-<glyph unicode="1" horiz-adv-x="694" d="M106 0v115h203v745h-186v98h313v-843h193v-115h-523z" />
-<glyph unicode="2" horiz-adv-x="894" d="M94 90l54 40q34 26 120 100.5t151.5 145t120 162t54.5 162.5q0 74 -51 122t-131 48q-57 0 -120 -25.5t-95 -49.5l-35 -25l-60 84q16 14 46 35.5t117 57.5t167 36q129 0 212 -76t83 -196q0 -78 -40 -161t-114.5 -166t-134 -138.5t-147.5 -128.5h522v-117h-696z" />
-<glyph unicode="3" horiz-adv-x="804" d="M45 856q16 14 46 35.5t117 56.5t167 35q129 0 213 -73.5t84 -192.5q0 -104 -76 -194.5t-180 -147.5q139 -27 215 -111t76 -211q0 -193 -160 -316.5t-416 -123.5q-37 0 -55 2l-13 104q20 -2 60 -2q190 0 320 86t130 234q0 131 -92 188.5t-229 57.5h-64v110 q121 14 235 112.5t114 205.5q0 72 -47.5 115.5t-124.5 43.5q-61 0 -125 -23.5t-97 -47.5l-30 -25z" />
-<glyph unicode="4" horiz-adv-x="1050" d="M59 63v87l631 839h88v-815h199v-111h-199v-458h-127v458h-592zM207 174h444v578z" />
-<glyph unicode="5" horiz-adv-x="808" d="M63 -283q18 -2 60 -2q188 0 321.5 88t133.5 246q0 96 -42 166t-118 107.5t-148.5 57t-167.5 32.5v546h562v-114h-439v-334q215 -41 350.5 -149.5t135.5 -305.5q0 -201 -163 -321.5t-417 -120.5q-39 0 -57 2z" />
-<glyph unicode="6" horiz-adv-x="1030" d="M106 567q0 156 44.5 297.5t128 258t223 188t313.5 80.5l10 -107q-236 -12 -381 -157.5t-188 -366.5q88 113 274 112q195 0 303.5 -124.5t108.5 -307.5q0 -186 -109.5 -325.5t-297.5 -139.5q-207 0 -318 170t-111 422zM242 586q0 -207 75.5 -350.5t219.5 -143.5 q123 0 196.5 96.5t73.5 235.5q0 78 -20.5 147.5t-88 128t-174.5 58.5q-162 0 -282 -121v-51z" />
-<glyph unicode="7" horiz-adv-x="919" d="M68 831v127h792v-94q-219 -541 -586 -1263l-122 32q291 526 563 1198h-647z" />
-<glyph unicode="8" horiz-adv-x="1040" d="M104 317q0 123 83 216.5t235 199.5q-227 178 -227 363q0 137 101 216t251 79q147 0 237 -82t90 -207q0 -104 -66.5 -188.5t-184.5 -170.5q74 -55 116.5 -91t95 -90t77 -112.5t24.5 -121.5q0 -147 -122 -250t-300 -103q-188 0 -299 101.5t-111 240.5zM233 328 q0 -111 85 -172.5t204 -61.5q113 0 195 61.5t82 166.5q0 49 -19.5 92t-74 94t-82.5 74l-111 84q-135 -92 -207 -169t-72 -169zM332 1098q0 -78 52 -145.5t151 -141.5q102 76 157.5 140.5t55.5 142.5q0 90 -65 134t-144 44q-78 0 -142.5 -43t-64.5 -131z" />
-<glyph unicode="9" horiz-adv-x="1024" d="M106 538.5q0 182.5 104.5 313.5t289.5 131q207 0 318.5 -170t111.5 -414q0 -319 -187.5 -549.5t-521.5 -242.5l-10 106q250 18 390 152.5t179 343.5q-92 -113 -274 -113q-188 0 -294 130t-106 312.5zM244 553q0 -55 11 -108.5t40 -109.5t86 -90t137 -34q156 0 275 119 q2 14 2 45q0 207 -79 349t-224 142q-113 0 -180.5 -87t-67.5 -226z" />
-<glyph unicode=":" horiz-adv-x="550" d="M166 86q0 45 31.5 78t78.5 33q45 0 78 -33t33 -78t-32.5 -78t-78.5 -33q-47 0 -78.5 33t-31.5 78zM166 799q0 45 31.5 77.5t78.5 32.5q45 0 78 -32.5t33 -77.5t-32.5 -78t-78.5 -33q-47 0 -78.5 33t-31.5 78z" />
-<glyph unicode=";" horiz-adv-x="540" d="M129 -274q51 45 70.5 64.5t36 55t16.5 82.5q0 111 -88 230l145 49q72 -82 72 -209q0 -205 -186 -338zM158 799q0 45 32.5 77.5t79.5 32.5q45 0 77 -32.5t32 -77.5t-32 -78t-77 -33q-47 0 -79.5 33t-32.5 78z" />
-<glyph unicode="&#x3c;" horiz-adv-x="1064" d="M68 459v94l872 469l27 -129l-736 -387l736 -408l-27 -127z" />
-<glyph unicode="=" horiz-adv-x="1064" d="M70 252v123h925v-123h-925zM70 651v123h925v-123h-925z" />
-<glyph unicode="&#x3e;" horiz-adv-x="1064" d="M96 98l731 408l-731 387l27 129l872 -469v-94l-872 -488z" />
-<glyph unicode="?" horiz-adv-x="710" d="M96 1303l29 122l55 -17q35 -11 123 -50t154.5 -81t122 -105.5t55.5 -129.5q0 -51 -34 -104t-82 -105.5t-96 -113t-82 -148.5t-34 -190h-102q-6 29 -6 76q0 96 44 190t96 153.5t96 123t44 106.5q0 66 -96 134.5t-190 103.5zM154 86q0 45 31.5 78t78.5 33t79 -33t32 -78 t-32 -78t-79 -33t-78.5 33t-31.5 78z" />
-<glyph unicode="@" horiz-adv-x="1673" d="M90 401q0 213 97.5 397.5t280.5 300t413 115.5q303 0 494.5 -190t191.5 -477q0 -299 -178 -438q-41 -33 -102.5 -57.5t-99.5 -35t-145 -32.5l-34 -9q-16 80 -25 148q-39 -63 -109.5 -105.5t-148.5 -42.5q-123 0 -204 106.5t-81 285.5q0 252 163 406.5t388 154.5l119 -6 v-654q0 -47 4 -88t8 -57l2 -19q164 20 243 131t79 287q0 258 -151.5 424t-411.5 166q-297 0 -485.5 -212t-188.5 -509q0 -274 159.5 -456.5t383.5 -192.5l-17 -94q-180 6 -329.5 112.5t-232.5 276t-83 364.5zM580 381q0 -121 51 -203t131 -82q113 0 217 158v561 q-174 0 -286.5 -126t-112.5 -308z" />
-<glyph unicode="A" horiz-adv-x="1255" d="M35 0l528 1376h129l529 -1376h-144l-170 449h-565l-170 -449h-137zM385 563h479l-239 631z" />
-<glyph unicode="B" horiz-adv-x="1189" d="M211 0v1366h321q244 0 353.5 -95t109.5 -233q0 -176 -166 -307q37 -12 72 -31.5t80 -56.5t72.5 -100.5t27.5 -145.5q0 -180 -130 -288.5t-337 -108.5h-403zM346 113h238q176 0 263 70.5t87 195.5t-87 197.5t-263 72.5h-238v-536zM346 764h332q6 4 18.5 11t42 31.5 t52 53.5t41 77t18.5 99q0 217 -348 217h-156v-489z" />
-<glyph unicode="C" horiz-adv-x="1376" d="M111 678q0 303 199.5 508t523.5 205q115 0 226 -30t165 -58l53 -31l-55 -125q-18 14 -53 35.5t-140.5 57.5t-210.5 36q-137 0 -247.5 -52.5t-177 -138.5t-101.5 -188t-35 -211q0 -244 160 -420t409 -176q207 0 396 131l14 10l55 -102q-8 -6 -23.5 -16.5t-64.5 -37 t-101 -47t-132 -37t-158 -16.5q-307 0 -504.5 200t-197.5 503z" />
-<glyph unicode="D" horiz-adv-x="1476" d="M211 0v1366h389q147 0 277.5 -36t242 -111.5t177 -207.5t65.5 -306q0 -336 -229.5 -520.5t-610.5 -184.5h-311zM346 113h156q373 0 544 156.5t171 414.5q0 264 -168 416.5t-478 152.5h-225v-1140z" />
-<glyph unicode="E" horiz-adv-x="1103" d="M211 0v1366h784v-113h-649v-497h514v-113h-514v-530h641v-113h-776z" />
-<glyph unicode="F" horiz-adv-x="1036" d="M211 0v1366h762v-113h-627v-503h496v-123h-496v-627h-135z" />
-<glyph unicode="G" horiz-adv-x="1423" d="M111 666q0 301 194.5 513t528.5 212q119 0 231.5 -26t165.5 -50l53 -27l-55 -127q-18 12 -53 31.5t-140.5 51.5t-212.5 32q-182 0 -314 -89t-192.5 -221t-60.5 -288q0 -254 165 -421t447 -167q61 0 130 10.5t108 20.5l37 10v440h-299v113h434v-645q-238 -63 -436 -64 q-309 0 -520 188t-211 503z" />
-<glyph unicode="H" horiz-adv-x="1538" d="M211 0v1366h135v-612h846v612h135v-1366h-135v641h-846v-641h-135z" />
-<glyph unicode="I" horiz-adv-x="557" d="M211 0v1366h135v-1366h-135z" />
-<glyph unicode="J" horiz-adv-x="559" d="M-16 -252q72 8 120 50t70.5 103.5t30.5 115t8 110.5v1239h135v-1239q0 -82 -16.5 -159t-50 -147.5t-95 -118.5t-143.5 -60z" />
-<glyph unicode="K" horiz-adv-x="1155" d="M211 0v1366h135v-594h25l577 594h172l-633 -641l658 -725h-182l-592 659h-25v-659h-135z" />
-<glyph unicode="L" horiz-adv-x="1044" d="M211 0v1366h135v-1253h668v-113h-803z" />
-<glyph unicode="M" horiz-adv-x="1755" d="M190 0l48 1366h192l442 -1192l449 1192h195l49 -1366h-131l-43 1196l-461 -1196h-111l-461 1210l-36 -1210h-132z" />
-<glyph unicode="N" horiz-adv-x="1529" d="M211 0v1366h133l844 -1167v1167h131v-1366h-133l-844 1149v-1149h-131z" />
-<glyph unicode="O" horiz-adv-x="1624" d="M111 680q0 289 194.5 500t517.5 211q305 0 497.5 -196t192.5 -486q0 -299 -200.5 -516.5t-507.5 -217.5q-301 0 -497.5 206t-196.5 499zM256 694q0 -147 62.5 -282.5t193.5 -227.5t299 -92q250 0 402.5 182.5t152.5 418t-150.5 408.5t-404.5 173q-252 0 -403.5 -175.5 t-151.5 -404.5z" />
-<glyph unicode="P" horiz-adv-x="1138" d="M211 0v1366h367q248 0 364.5 -109.5t116.5 -281.5q0 -201 -131 -314.5t-350 -113.5h-232v-547h-135zM346 659h205q182 0 272 78t90 224q0 131 -87 211.5t-275 80.5h-205v-594z" />
-<glyph unicode="Q" horiz-adv-x="1624" d="M115 680q0 186 80.5 346t244.5 262.5t377 102.5q309 0 504 -196t195 -486q0 -252 -148.5 -452t-390.5 -261q55 -74 93 -116t106.5 -104.5t149.5 -93t173 -32.5l-18 -125h-15q-68 0 -133 16q-72 18 -122 45t-103 72t-80 72.5t-65.5 73.5t-44.5 55l-62 71q-35 43 -119 47 q-276 25 -449 227t-173 476zM260 694q0 -150 61.5 -284t190.5 -225t299 -91q248 0 403.5 183.5t155.5 416.5q0 229 -150.5 404.5t-404.5 175.5q-168 0 -298 -86t-193.5 -217.5t-63.5 -276.5z" />
-<glyph unicode="R" horiz-adv-x="1189" d="M211 0v1366h326q246 0 363.5 -103.5t117.5 -256.5q0 -139 -89 -236.5t-210 -148.5l424 -621h-160l-410 596h-227v-596h-135zM346 711h238q100 0 193 75.5t93 202.5q0 113 -87 188.5t-273 75.5h-164v-542z" />
-<glyph unicode="S" horiz-adv-x="1038" d="M104 90l35 131q18 -14 51 -34.5t127.5 -55.5t184.5 -35q127 0 210 57.5t83 159.5q0 92 -69 163t-166 121l-194 104q-97 54 -166 141.5t-69 204.5q0 152 115.5 248t318.5 96q178 0 340 -62l-43 -129q-147 70 -305 70q-129 0 -210 -53.5t-81 -153.5q0 -94 68.5 -165 t166.5 -121l194 -103q97 -53 166 -141.5t69 -208.5q0 -168 -124 -258.5t-314 -90.5q-104 0 -200.5 29t-141.5 57z" />
-<glyph unicode="T" horiz-adv-x="1206" d="M35 1253v113h1136v-113h-507v-1253h-134v1253h-495z" />
-<glyph unicode="U" horiz-adv-x="1476" d="M193 485v881h133v-846q0 -215 113.5 -321.5t299.5 -106.5q184 0 298 103.5t114 310.5v860h133v-852q0 -256 -153.5 -397.5t-393.5 -141.5q-244 0 -394 124t-150 386z" />
-<glyph unicode="V" horiz-adv-x="1193" d="M35 1366h141l422 -1182l424 1182h137l-497 -1376h-132z" />
-<glyph unicode="W" horiz-adv-x="1916" d="M55 1366h138l354 -1180l336 1180h157l332 -1176l359 1176h133l-422 -1376h-137l-344 1173l-347 -1173h-137z" />
-<glyph unicode="X" horiz-adv-x="1191" d="M57 0l461 680l-461 686h160l381 -580l381 580h154l-459 -682l459 -684h-158l-381 580l-383 -580h-154z" />
-<glyph unicode="Y" horiz-adv-x="1153" d="M23 1366h159l398 -635l401 635h149l-485 -762v-604h-135v602z" />
-<glyph unicode="Z" horiz-adv-x="1183" d="M74 0v74l831 1179h-778v113h954v-74l-821 -1179h830v-113h-1016z" />
-<glyph unicode="[" horiz-adv-x="585" d="M182 -313v1679h361v-100h-246v-1477h246v-102h-361z" />
-<glyph unicode="\" horiz-adv-x="927" d="M70 1366h127l682 -1767h-129z" />
-<glyph unicode="]" horiz-adv-x="587" d="M43 -205h246v1462h-246v109h363v-1679h-363v108z" />
-<glyph unicode="^" horiz-adv-x="1028" d="M33 512l438 879h88l438 -879h-145l-340 682l-340 -682h-139z" />
-<glyph unicode="_" horiz-adv-x="1110" d="M43 -76h1024v-114h-1024v114z" />
-<glyph unicode="`" horiz-adv-x="1028" d="M338 1425h154l206 -342l-84 -49z" />
-<glyph unicode="a" horiz-adv-x="944" d="M80 201q0 279 557 354v61q0 39 -1 61.5t-10.5 53.5t-25.5 48.5t-47 29.5t-76 12q-152 -2 -287 -98l-45 111q16 12 47 30.5t127.5 48t192.5 29.5q133 0 191.5 -67.5t58.5 -221.5v-436q0 -55 25.5 -87t52.5 -36l24 -4l-47 -104q-84 14 -123 52t-51 101q-18 -25 -43 -52.5 t-103.5 -69.5t-164.5 -42q-115 0 -183.5 63t-68.5 163zM219 209q0 -111 131 -111q59 0 117.5 31t90.5 60.5t79 80.5v179q-217 -37 -317.5 -93.5t-100.5 -146.5z" />
-<glyph unicode="b" horiz-adv-x="1056" d="M162 16v1420l125 24v-651q35 51 110.5 92t169.5 41q172 0 281.5 -129t109.5 -328q0 -215 -130 -359t-379 -151h-10q-107 0 -277 41zM287 115q68 -25 164 -25q168 0 270 101.5t102 285.5q0 160 -73.5 253t-194.5 93q-154 0 -268 -143v-565z" />
-<glyph unicode="c" horiz-adv-x="925" d="M98 446.5q0 200.5 121 348t332 147.5q86 0 159.5 -25.5t104.5 -52.5l31 -24l-66 -103q-10 10 -30.5 24.5t-82 38t-124.5 23.5q-143 0 -227.5 -106.5t-84.5 -255.5q0 -154 86 -260.5t232 -106.5q68 0 130 24.5t91 49.5l29 27l47 -101q-12 -12 -37 -32.5t-106.5 -53.5 t-170.5 -33q-193 0 -313.5 135.5t-120.5 336z" />
-<glyph unicode="d" horiz-adv-x="1085" d="M100 428q0 213 134.5 363.5t369.5 150.5q111 0 187 -33v527l124 24v-1175q0 -49 10.5 -121t20.5 -119l10 -45l-129 -14q-18 88 -28 153q-43 -70 -124 -117t-183 -47q-172 0 -282 130t-110 323zM236 438q0 -158 76.5 -250t191.5 -92q162 0 287 187v397q0 147 -187 147 q-164 0 -266 -104.5t-102 -284.5z" />
-<glyph unicode="e" horiz-adv-x="993" d="M100 434q0 221 122 364.5t313 143.5q160 0 259 -105.5t99 -289.5l-84 -25l-571 -73q8 -162 92 -258.5t227 -96.5q72 0 144.5 29t109.5 57l39 31l39 -107q-14 -14 -41 -35.5t-116 -57.5t-183 -36q-215 0 -332 134.5t-117 324.5zM244 561l510 66q0 8 -3 21.5t-18.5 49 t-38 62t-66.5 48t-100 21.5q-115 0 -189.5 -74.5t-94.5 -193.5z" />
-<glyph unicode="f" horiz-adv-x="647" d="M61 809v63l146 58v104q0 215 95 333t263 118q66 0 127.5 -19.5t89.5 -38.5l31 -18l-68 -104q-94 66 -188 65q-96 0 -160.5 -81t-64.5 -249v-122h264v-109h-264v-809h-125v809h-146z" />
-<glyph unicode="g" horiz-adv-x="1017" d="M63 -236q0 168 246 281q-154 45 -153 127q0 31 25.5 63.5t46.5 48.5l63 44q-82 43 -128 120.5t-46 172.5q0 145 107.5 233t258.5 88q57 0 137 -19.5t130 -19.5h90q25 0 55.5 5t46.5 10l19 6l14 -129h-123q-57 0 -72 2q68 -76 68 -195q0 -150 -117 -233.5t-260 -83.5 q-49 0 -82 8q-90 -66 -90 -94q0 -31 53.5 -48.5t179.5 -41.5q23 -4 35 -7q84 -16 136.5 -31.5t110.5 -43t86 -71.5t28 -103q0 -141 -144.5 -239.5t-339.5 -98.5q-156 0 -268.5 65t-112.5 184zM184 -221q0 -86 87 -124t188 -38q135 0 234.5 66.5t99.5 152.5q0 66 -59.5 99.5 t-168.5 56.5q-90 16 -137 26q-78 -41 -121 -67.5t-83 -73.5t-40 -98zM254 612q0 -94 58.5 -158.5t170.5 -64.5q100 0 165 53.5t65 149.5t-61.5 171t-174.5 75q-100 0 -161.5 -64t-61.5 -162z" />
-<glyph unicode="h" horiz-adv-x="1075" d="M166 0v1436l125 24v-710q199 193 391 192q106 0 172 -64.5t66 -205.5v-672h-125v649q0 180 -138 180q-141 0 -366 -208v-621h-125z" />
-<glyph unicode="i" horiz-adv-x="454" d="M133 1262q0 41 30 69.5t68.5 28.5t67.5 -30t29 -68q0 -41 -29 -71t-67.5 -30t-68.5 30t-30 71zM166 0v918h125v-918h-125z" />
-<glyph unicode="j" horiz-adv-x="454" d="M-47 -375q213 45 213 342v951h125v-912q0 -231 -72 -348t-225 -143zM131 1262q0 41 28.5 69.5t69.5 28.5q39 0 68 -30t29 -68q0 -41 -29 -71t-68 -30t-68.5 30t-29.5 71z" />
-<glyph unicode="k" horiz-adv-x="931" d="M166 0v1436l125 24v-909h18l387 367h172l-442 -408l489 -510h-172l-432 457h-20v-457h-125z" />
-<glyph unicode="l" horiz-adv-x="454" d="M166 0v1436l125 24v-1460h-125z" />
-<glyph unicode="m" horiz-adv-x="1638" d="M162 0v905l125 25v-187q215 199 385 199q178 0 215 -180q188 180 373 180q98 0 160.5 -65.5t62.5 -204.5v-672h-125v649q0 180 -121 180q-131 0 -342 -188v-641h-125v649q0 180 -123 180q-59 0 -142 -47t-131 -88t-87 -80v-614h-125z" />
-<glyph unicode="n" d="M162 0v905l125 25v-187q215 199 395 199q104 0 170 -65.5t66 -204.5v-672h-125v649q0 180 -136 180q-88 0 -194.5 -72.5t-175.5 -142.5v-614h-125z" />
-<glyph unicode="o" d="M98 463q0 193 119 336t317.5 143t319.5 -140t121 -335t-120 -343.5t-320 -148.5q-197 0 -317 146.5t-120 341.5zM231 475q0 -156 80 -269.5t226 -113.5q135 0 220 100.5t85 260.5q0 154 -78 263t-229 109q-139 0 -221.5 -97t-82.5 -253z" />
-<glyph unicode="p" horiz-adv-x="1062" d="M162 -473v1378l123 25v-142q37 66 111.5 110t176.5 44q176 0 283 -131t107 -326q0 -217 -129 -363.5t-336 -146.5q-133 0 -211 64v-488zM287 227q2 -66 57 -101.5t143 -35.5q154 0 247 104.5t93 280.5q0 158 -74.5 250t-189.5 92q-162 0 -276 -162v-428z" />
-<glyph unicode="q" horiz-adv-x="1056" d="M98 430q0 213 133.5 362.5t378.5 149.5q63 0 134 -10t112 -21l39 -10v-1350l-125 -24v586q-33 -53 -106.5 -95.5t-171.5 -42.5q-174 0 -284 128t-110 327zM233 438q0 -156 76 -250t195 -94q156 0 266 146v565q-74 23 -172 22q-162 0 -263.5 -102.5t-101.5 -286.5z" />
-<glyph unicode="r" horiz-adv-x="661" d="M162 0v905l125 25v-185q117 197 268 197q23 0 43 -4t29 -8l8 -6l-39 -138q-37 14 -76 15q-119 0 -233 -209v-592h-125z" />
-<glyph unicode="s" horiz-adv-x="790" d="M92 57l29 117q119 -88 266 -88q88 0 135 37t47 100q0 61 -47 105.5t-114.5 74t-135 63.5t-114.5 93t-47 141q0 109 79.5 175.5t237.5 66.5q66 0 128 -12t91 -25l29 -14l-39 -109q-113 49 -225 49q-84 0 -128 -32.5t-44 -87.5q0 -57 47 -99.5t114.5 -72t135 -64.5 t114.5 -96.5t47 -147.5q0 -121 -87 -188.5t-234 -67.5q-174 2 -285 82z" />
-<glyph unicode="t" horiz-adv-x="714" d="M74 809v68l125 53v200l125 35v-247h305v-109h-305v-541q0 -96 29.5 -137t88.5 -41q45 0 95.5 21.5t76.5 44.5l29 20l31 -110q-12 -10 -34 -25.5t-88.5 -40.5t-131.5 -25q-221 0 -221 263v571h-125z" />
-<glyph unicode="u" horiz-adv-x="1054" d="M152 250v668h124v-650q0 -180 144 -180q145 0 340 188v642h125v-633q0 -49 10 -121t20 -119l11 -47l-125 -10q-23 100 -31 166q-178 -178 -371 -179q-247 1 -247 275z" />
-<glyph unicode="v" horiz-adv-x="919" d="M45 918h133l258 -764l316 764h133l-396 -930h-122z" />
-<glyph unicode="w" horiz-adv-x="1499" d="M49 918h133l234 -773l282 773h119l221 -773l291 773h135l-377 -930h-120l-224 741l-280 -741h-121z" />
-<glyph unicode="x" horiz-adv-x="915" d="M66 0l315 459l-315 459h153l240 -361l241 361h150l-315 -455l315 -463h-145l-250 371l-250 -371h-139z" />
-<glyph unicode="y" horiz-adv-x="921" d="M41 918h137l289 -672l278 672h138l-422 -988q-80 -188 -161 -293.5t-208 -121.5l-41 110q94 18 158.5 93t122.5 206l69 158z" />
-<glyph unicode="z" horiz-adv-x="876" d="M88 0v76l508 731h-492v111h666v-74l-514 -731h535v-113h-703z" />
-<glyph unicode="{" horiz-adv-x="698" d="M37 485v105q55 2 99 23.5t72 50t48 82t29.5 95.5t14.5 113.5t6 114.5t1 121q0 166 111.5 247t298.5 81v-95q-70 -6 -117 -14t-80 -30.5t-49 -41t-25.5 -65.5t-11.5 -81t-4 -110q-6 -260 -59.5 -376.5t-161.5 -163.5v-4q104 -47 159.5 -172t61.5 -392q2 -74 4 -108.5 t11.5 -80.5t26.5 -65.5t49 -41t79 -30.5t117 -16v-94q-244 0 -327 95.5t-83 336.5q0 117 -13 207t-39 143.5t-51.5 89t-60 51t-56 19.5t-50.5 6z" />
-<glyph unicode="|" horiz-adv-x="475" d="M180 -461v1995h115v-1995h-115z" />
-<glyph unicode="}" horiz-adv-x="698" d="M-18 -369q59 4 102 14.5t74.5 20.5t51 35t31 42t17.5 61t7 74t3 95q6 266 61.5 391t159.5 173v4q-106 47 -160.5 159.5t-60.5 380.5q-2 74 -4 109t-11 81t-26.5 65.5t-49.5 42t-79 30.5t-116 14v95q229 0 319 -93.5t90 -349.5q0 -131 22.5 -227t50.5 -143.5t72 -75 t68.5 -32.5t59.5 -7v-105q-51 -2 -91.5 -19t-85.5 -66.5t-70.5 -159t-25.5 -273.5q0 -240 -82 -335t-327 -95v94z" />
-<glyph unicode="~" horiz-adv-x="1191" d="M137 362q0 309 260 310q80 0 142.5 -32t94.5 -68.5t76 -68.5t93 -32q137 0 137 193h119q0 -309 -260 -310q-80 0 -142.5 32t-94.5 69t-76 68.5t-93 31.5q-137 0 -137 -193h-119z" />
-<glyph unicode="&#xa1;" horiz-adv-x="503" d="M137 831.5q0 45.5 32 78t79 32.5t78.5 -32.5t31.5 -78t-31.5 -78t-78.5 -32.5t-79 32.5t-32 78zM174 -473l21 1010h118l15 -1010h-154z" />
-<glyph unicode="&#xa2;" horiz-adv-x="903" d="M90 569.5q0 157.5 92 280.5t254 147l4 181h88l-4 -174q176 -6 275 -115l8 -10l-80 -97q-8 10 -24.5 24.5t-70.5 42.5t-112 34l-14 -627h4q68 0 130 25.5t91 50.5l29 24l47 -100q-12 -12 -35.5 -32.5t-101.5 -53.5t-162 -33h-4l-4 -182h-86l4 190q-150 31 -239 149 t-89 275.5zM229 575q0 -109 50.5 -191.5t140.5 -113.5l14 609q-96 -23 -150.5 -108t-54.5 -196z" />
-<glyph unicode="&#xa3;" horiz-adv-x="1091" d="M84 104q6 2 14 5.5t31 17.5t41 33.5t35.5 54.5t23.5 76l25 198h-127v97h139l23 172q23 188 102.5 291.5t243.5 103.5q182 0 291 -113l8 -10l-80 -96q-8 10 -25.5 27.5t-77 45t-124.5 27.5q-90 0 -143.5 -61.5t-69.5 -220.5l-19 -166h398l-11 -97h-395q-10 -98 -28.5 -187 t-32.5 -128l-15 -39q217 -70 344 -69q197 0 222 190l8 66h110q-35 -373 -313 -373q-80 0 -235.5 39t-200.5 39q-53 0 -121 -27z" />
-<glyph unicode="&#xa5;" horiz-adv-x="1130" d="M84 1128h152l329 -512l336 512h139l-313 -479h215v-98h-280l-35 -55v-80h315v-99h-315v-317h-125v317h-295v99h295v78l-39 57h-256v98h192z" />
-<glyph unicode="&#xa6;" horiz-adv-x="516" d="M193 350h133v-733h-133v733zM193 668v733h133v-733h-133z" />
-<glyph unicode="&#xa7;" horiz-adv-x="999" d="M57 -379l62 94q127 -96 264 -96q127 0 195.5 93t68.5 241q0 59 -12 125l-115 631q-23 131 -22 204q0 135 53 213l102 -22q-35 -76 -35 -189q0 -53 11 -114l125 -707q12 -70 12 -139q0 -190 -96.5 -315t-282.5 -125q-176 0 -324 102zM205 948q0 190 96 316.5t285 126.5 q84 0 166 -27t120 -53l41 -27l-61 -94q-125 96 -262 96q-129 0 -197.5 -94t-68.5 -242q0 -61 12 -123l115 -630q20 -119 20 -205q0 -137 -51 -213l-103 22q35 82 35 189q0 53 -10 114l-125 707q-12 69 -12 137z" />
-<glyph unicode="&#xa8;" horiz-adv-x="1028" d="M246 1261.5q0 36.5 29.5 65.5t66.5 29q35 0 63.5 -29t28.5 -65.5t-28.5 -65.5t-63.5 -29q-37 0 -66.5 29t-29.5 65.5zM590 1261.5q0 36.5 29.5 65.5t64.5 29q37 0 65.5 -29t28.5 -65.5t-28.5 -65.5t-65.5 -29q-35 0 -64.5 29t-29.5 65.5z" />
-<glyph unicode="&#xa9;" horiz-adv-x="1601" d="M94 682q0 293 207 500t500 207t499.5 -207t206.5 -500t-206.5 -500t-499.5 -207t-500 207t-207 500zM195 682q0 -256 176 -436t430 -180t430 180t176 436t-176 436t-430 180t-430 -180t-176 -436zM406 674q0 174 110.5 301t306.5 127q172 0 285 -113l10 -10l-92 -107 q-8 10 -25.5 26.5t-72 43.5t-111.5 27q-113 0 -181.5 -83t-68.5 -200t77 -197.5t202 -80.5q59 0 112.5 24.5t77.5 48.5l23 25l55 -113q-10 -12 -31.5 -32.5t-96.5 -53.5t-161 -33q-184 0 -301.5 116t-117.5 284z" />
-<glyph unicode="&#xaa;" horiz-adv-x="786" d="M104 872q0 207 392 261v28q0 47 -4.5 70.5t-29 44t-71.5 20.5q-49 0 -101 -19.5t-81 -39.5l-27 -20l-32 98q109 76 272 76q104 0 146 -46.5t42 -156.5v-293q8 -74 74 -82l-37 -94q-121 6 -145 104q-88 -111 -221 -110q-80 0 -128.5 43.5t-48.5 115.5zM229 879 q0 -72 76 -72q39 0 79 23.5t59.5 44t52.5 61.5v111q-141 -27 -204 -67t-63 -101z" />
-<glyph unicode="&#xab;" horiz-adv-x="1046" d="M55 510v8q35 27 281 295l123 133l98 -26l-313 -406l313 -405l-98 -27l-170 182l-112 121l-61 66l-38 38q-11 11 -23 21zM442 510v8q35 27 281 295l123 133l100 -26l-315 -406l315 -405l-100 -27l-170 182l-112 121l-61 66l-38 38q-11 11 -23 21z" />
-<glyph unicode="&#xac;" horiz-adv-x="1181" d="M115 670v123h936v-566h-131v443h-805z" />
-<glyph unicode="&#xad;" horiz-adv-x="669" d="M117 438v142h434v-142h-434z" />
-<glyph unicode="&#xae;" horiz-adv-x="890" d="M92 1087.5q0 145.5 104.5 250t250 104.5t250 -104.5t104.5 -250t-104.5 -250t-250 -104.5t-250 104.5t-104.5 250zM160 1087.5q0 -120.5 83 -208.5t199 -88q119 0 205 88t86 208.5t-86 207.5t-205 87q-117 0 -199.5 -87t-82.5 -207.5zM315 918v348h123q143 0 144 -105 q0 -70 -72 -100l104 -143h-90l-88 126h-41v-126h-80zM395 1098h49q53 0 54 55q0 57 -68 57h-35v-112z" />
-<glyph unicode="&#xaf;" horiz-adv-x="1028" d="M291 1212v113h446v-113h-446z" />
-<glyph unicode="&#xb0;" horiz-adv-x="692" d="M96 1144.5q0 102.5 73 174.5t177.5 72t177 -72t72.5 -174.5t-72.5 -174t-177 -71.5t-177.5 71.5t-73 174zM193 1144.5q0 -65.5 44 -110.5t109 -45q63 0 107.5 45t44.5 110.5t-44 112t-107.5 46.5t-108.5 -46.5t-45 -112z" />
-<glyph unicode="&#xb1;" horiz-adv-x="1064" d="M70 0v121h925v-121h-925zM74 647v121h389v375h131v-375h397v-121h-397v-411h-131v411h-389z" />
-<glyph unicode="&#xb2;" horiz-adv-x="692" d="M57 819l86 86q59 59 84 86l70 75q45 48 64 78l45 69q25 40 34 75t9 70q0 72 -40 111.5t-100 39.5q-41 0 -83 -19.5t-64 -39.5l-23 -18l-63 71q10 12 31.5 30.5t89 48.5t139.5 30q113 0 174 -69.5t61 -166.5q0 -104 -80.5 -225t-248.5 -283h391v-98h-565z" />
-<glyph unicode="&#xb3;" horiz-adv-x="655" d="M53 815l47 90q78 -47 174 -47q78 0 125 35t47 96q0 70 -63.5 108t-157.5 38h-39v96q84 8 154 58t70 126q0 96 -111 96q-90 0 -164 -55l-47 78q100 78 219 78q96 0 160.5 -51.5t64.5 -133.5q0 -121 -165 -213q92 -20 147 -80.5t55 -138.5q0 -102 -88 -170.5t-213 -68.5 q-129 0 -215 59z" />
-<glyph unicode="&#xb4;" horiz-adv-x="1017" d="M330 1083l205 342h155l-276 -391z" />
-<glyph unicode="&#xb5;" horiz-adv-x="1128" d="M152 -442q20 199 20 362v998h125v-650q0 -180 143 -180q152 0 340 188v642h125v-703q0 -82 24.5 -107.5t108.5 -25.5v-96q-55 -10 -88 -11q-88 0 -126 46.5t-44 130.5q-176 -176 -360 -177q-76 0 -127 25q2 -90 7 -248t5 -194h-153z" />
-<glyph unicode="&#x3bc;" horiz-adv-x="1128" d="M152 -442q20 199 20 362v998h125v-650q0 -180 143 -180q152 0 340 188v642h125v-703q0 -82 24.5 -107.5t108.5 -25.5v-96q-55 -10 -88 -11q-88 0 -126 46.5t-44 130.5q-176 -176 -360 -177q-76 0 -127 25q2 -90 7 -248t5 -194h-153z" />
-<glyph unicode="&#xb6;" horiz-adv-x="1343" d="M72 864q0 203 154.5 352.5t430.5 149.5h582v-111h-152v-1255h-118v1255h-154v-1296q0 -444 -352 -444l-31 123q133 0 193.5 73.5t60.5 241.5v414h-18q-291 0 -443.5 145t-152.5 352z" />
-<glyph unicode="&#xb7;" horiz-adv-x="505" d="M143 520q0 45 33 77t78 32t76.5 -32t31.5 -77t-31.5 -77.5t-76.5 -32.5t-78 32.5t-33 77.5z" />
-<glyph unicode="&#xb8;" horiz-adv-x="1028" d="M338 -422l41 96q66 -57 139 -57q45 0 77 21.5t32 50.5q0 25 -26 43t-56.5 29.5t-56 34t-25.5 52.5q0 16 6 35t17.5 45.5t13.5 32.5l16 39h96l-16 -33q-25 -59 -25 -71q0 -23 27 -42.5t59.5 -33t59 -44t26.5 -73.5q0 -74 -63.5 -131t-155.5 -57q-104 0 -186 63z" />
-<glyph unicode="&#xb9;" horiz-adv-x="550" d="M70 770v90h166v647h-154v90h274v-737h158v-90h-444z" />
-<glyph unicode="&#xba;" horiz-adv-x="835" d="M94 1047q0 133 89 238.5t237 105.5q141 0 229 -97.5t88 -228.5q0 -135 -86 -243.5t-237 -108.5q-143 0 -231.5 101.5t-88.5 232.5zM215 1061q0 -104 52 -179t151 -75q88 0 143 66.5t55 173.5q0 102 -50 175.5t-150 73.5q-92 0 -146.5 -64.5t-54.5 -170.5z" />
-<glyph unicode="&#xbb;" horiz-adv-x="1050" d="M104 109l316 405l-316 406l101 26q362 -395 403 -428v-8q-10 -8 -21.5 -18.5l-24.5 -23.5t-43 -46l-64 -71l-104 -111l-146 -158zM492 109l315 405l-315 406l100 26q367 -397 393 -420q4 -4 10 -8v-8q-12 -10 -22 -21l-38 -38l-62 -66l-111 -121l-170 -182z" />
-<glyph unicode="&#xbc;" horiz-adv-x="1646" d="M98 553v90h166v647h-153v90h274v-737h158v-90h-445zM332 0l811 1403l104 -37l-784 -1366h-131zM936 289l418 545h90v-512h127v-95h-127v-227h-117v227h-383zM1073 322h254v329z" />
-<glyph unicode="&#xbd;" horiz-adv-x="1779" d="M96 553v90h166v647h-153v90h274v-737h158v-90h-445zM317 0l811 1403l105 -37l-784 -1366h-132zM1130 49l87 86q59 59 83 86l70 75q45 48 65 78l44 69q25 40 34 75t9 70q0 72 -40 111.5t-100 39.5q-41 0 -83 -19.5t-64 -39.5l-23 -18l-63 71q10 12 31.5 30.5t89 48.5 t139.5 30q113 0 174.5 -70t61.5 -166q0 -104 -81 -225t-249 -283h391v-98h-565z" />
-<glyph unicode="&#xbe;" horiz-adv-x="1611" d="M86 598l47 90q78 -47 174 -47q78 0 125 35t47 96q0 70 -63.5 108t-157.5 38h-39v96q84 8 153.5 58t69.5 126q0 96 -110 96q-90 0 -164 -55l-47 78q100 78 219 78q96 0 160.5 -51.5t64.5 -133.5q0 -121 -166 -213q92 -20 147.5 -80.5t55.5 -138.5q0 -102 -88 -170.5 t-213 -68.5q-129 0 -215 59zM295 0l811 1403l104 -37l-784 -1366h-131zM901 289l418 545h90v-512h127v-95h-127v-227h-117v227h-383zM1038 322h254v329z" />
-<glyph unicode="&#xbf;" horiz-adv-x="694" d="M74 -104q0 49 33.5 101t82 103.5t96.5 109.5t81.5 143t33.5 184h103q6 -29 6 -76q0 -94 -44 -184.5t-96.5 -147.5t-96.5 -118.5t-44 -102.5q0 -66 96.5 -134.5t190.5 -103.5l96 -35l-28 -122l-56 17q-35 11 -123 50t-154.5 81t-121.5 105.5t-55 129.5zM334 831.5 q0 45.5 31.5 78t79 32.5t79 -32.5t31.5 -78t-31.5 -78t-79 -32.5t-79 32.5t-31.5 78z" />
-<glyph unicode="&#xc0;" horiz-adv-x="1255" d="M35 0l528 1376h129l529 -1376h-144l-170 449h-565l-170 -449h-137zM354 1624l60 133l379 -194l-35 -86zM385 563h479l-239 631z" />
-<glyph unicode="&#xc1;" horiz-adv-x="1255" d="M35 0l528 1376h129l529 -1376h-144l-170 449h-565l-170 -449h-137zM385 563h479l-239 631zM457 1563l377 194l61 -133l-403 -147z" />
-<glyph unicode="&#xc2;" horiz-adv-x="1255" d="M35 0l528 1376h129l529 -1376h-144l-170 449h-565l-170 -449h-137zM307 1544l258 240h121l256 -240l-78 -74l-237 211l-242 -211zM385 563h479l-239 631z" />
-<glyph unicode="&#xc3;" horiz-adv-x="1255" d="M35 0l528 1376h129l529 -1376h-144l-170 449h-565l-170 -449h-137zM268 1505q0 18 5.5 46t22.5 76t64.5 81t116.5 33q66 0 116 -35t89 -68.5t82 -33.5q33 0 55.5 18t30.5 46t10 44.5t2 28.5h117q0 -8 -2 -22.5t-7 -45.5t-19.5 -59.5t-37 -56t-61.5 -44t-88 -16.5 q-53 0 -95 21.5t-65.5 47t-56.5 47t-65.5 21.5t-55.5 -18.5t-30 -46t-9 -40.5t-2 -24h-117zM385 563h479l-239 631z" />
-<glyph unicode="&#xc4;" horiz-adv-x="1255" d="M35 0l528 1376h129l529 -1376h-144l-170 449h-565l-170 -449h-137zM305 1624q0 35 28.5 63.5t65.5 28.5q35 0 64 -28.5t29 -63.5q0 -37 -29 -65.5t-64 -28.5q-37 0 -65.5 27.5t-28.5 66.5zM385 563h479l-239 631zM760 1624q0 35 28.5 63.5t63.5 28.5q37 0 65.5 -28.5 t28.5 -63.5q0 -39 -28.5 -66.5t-65.5 -27.5q-35 0 -63.5 28.5t-28.5 65.5z" />
-<glyph unicode="&#xc5;" horiz-adv-x="1255" d="M35 0l528 1376h129l529 -1376h-144l-170 449h-565l-170 -449h-137zM385 563h479l-239 631zM436 1622q0 66 49.5 114t139.5 48t139 -48t49 -114q0 -68 -49 -116t-139 -48t-139.5 48t-49.5 116zM526 1620q0 -39 26 -67.5t73 -28.5t73.5 28.5t26.5 67.5q0 41 -25.5 69.5 t-75 28.5t-74 -28.5t-24.5 -69.5z" />
-<glyph unicode="&#xc6;" horiz-adv-x="1740" d="M2 0l760 1366h870v-113h-651v-497h516v-113h-516v-530h643v-113h-776v485h-434l-269 -485h-143zM475 598h373v672z" />
-<glyph unicode="&#xc7;" horiz-adv-x="1384" d="M113 678q0 303 199.5 508t523.5 205q115 0 226.5 -30t164.5 -58l53 -31l-55 -125q-18 14 -53 35.5t-140.5 57.5t-210.5 36q-137 0 -247.5 -52.5t-177 -138.5t-101.5 -188t-35 -211q0 -244 160 -420t409 -176q207 0 396 131l14 10l55 -102q-8 -6 -23.5 -16.5t-64.5 -37 t-101 -47t-132 -37t-158 -16.5h-10l-4 -8q-25 -59 -25 -71q0 -23 26.5 -42.5t59.5 -33t59.5 -44t26.5 -73.5q0 -74 -63.5 -131t-155.5 -57q-104 0 -186 63l41 96q66 -57 139 -57q45 0 76.5 21.5t31.5 50.5q0 25 -25.5 43t-56 29.5t-56 34t-25.5 52.5q0 16 6 35t17 45.5 t14 32.5l8 23q-266 33 -433 225.5t-167 468.5z" />
-<glyph unicode="&#xc8;" horiz-adv-x="1103" d="M211 0v1366h784v-113h-649v-497h514v-113h-514v-530h641v-113h-776zM346 1624l60 133l378 -194l-34 -86z" />
-<glyph unicode="&#xc9;" horiz-adv-x="1103" d="M211 0v1366h784v-113h-649v-497h514v-113h-514v-530h641v-113h-776zM449 1563l376 194l62 -133l-404 -147z" />
-<glyph unicode="&#xca;" horiz-adv-x="1103" d="M211 0v1366h784v-113h-649v-497h514v-113h-514v-530h641v-113h-776zM299 1544l258 240h121l256 -240l-78 -74l-238 211l-241 -211z" />
-<glyph unicode="&#xcb;" horiz-adv-x="1103" d="M211 0v1366h784v-113h-649v-497h514v-113h-514v-530h641v-113h-776zM297 1624q0 35 28.5 63.5t65.5 28.5q35 0 63.5 -28.5t28.5 -63.5q0 -37 -28.5 -65.5t-63.5 -28.5q-37 0 -65.5 27.5t-28.5 66.5zM752 1624q0 35 28.5 63.5t63.5 28.5q37 0 65.5 -28.5t28.5 -63.5 q0 -39 -28.5 -66.5t-65.5 -27.5q-35 0 -63.5 28.5t-28.5 65.5z" />
-<glyph unicode="&#xcc;" horiz-adv-x="557" d="M8 1624l60 133l378 -194l-34 -86zM211 0v1366h135v-1366h-135z" />
-<glyph unicode="&#xcd;" horiz-adv-x="557" d="M111 1563l376 194l62 -133l-404 -147zM211 0v1366h135v-1366h-135z" />
-<glyph unicode="&#xce;" horiz-adv-x="557" d="M-39 1544l258 240h121l256 -240l-78 -74l-237 211l-242 -211zM211 0v1366h135v-1366h-135z" />
-<glyph unicode="&#xcf;" horiz-adv-x="557" d="M14 1622q0 37 30 65.5t67 28.5q35 0 63.5 -28.5t28.5 -65.5t-29 -65.5t-63 -28.5q-37 0 -67 28.5t-30 65.5zM211 0v1366h135v-1366h-135zM358 1622q0 37 30 65.5t65 28.5q37 0 65.5 -28.5t28.5 -65.5t-29 -65.5t-65 -28.5q-35 0 -65 28.5t-30 65.5z" />
-<glyph unicode="&#xd0;" horiz-adv-x="1488" d="M76 633v119h147v614h387q147 0 278.5 -36t243 -111.5t177 -207.5t65.5 -306q0 -336 -230.5 -520.5t-611.5 -184.5h-309v633h-147zM356 113h156q373 0 543 156.5t170 414.5q0 264 -167 416.5t-476 152.5h-226v-501h365v-119h-365v-520z" />
-<glyph unicode="&#xd1;" horiz-adv-x="1529" d="M211 0v1366h133l844 -1167v1167h131v-1366h-133l-844 1149v-1149h-131zM408 1505q0 18 5 46t22.5 76t64.5 81t116 33q66 0 116 -35t89 -68.5t82 -33.5q33 0 55.5 18t30.5 46t10 44.5t2 28.5h117q0 -8 -2 -22.5t-7 -45.5t-19.5 -59.5t-37 -56t-61.5 -44t-88 -16.5 q-53 0 -95 21.5t-65.5 47t-56.5 47t-65.5 21.5t-55 -18.5t-30 -46t-9.5 -40.5t-2 -24h-116z" />
-<glyph unicode="&#xd2;" horiz-adv-x="1624" d="M111 680q0 289 194.5 500t517.5 211q305 0 497.5 -196t192.5 -486q0 -299 -200.5 -516.5t-507.5 -217.5q-301 0 -497.5 206t-196.5 499zM256 694q0 -147 62.5 -282.5t193.5 -227.5t299 -92q250 0 402.5 182.5t152.5 418t-150.5 408.5t-404.5 173q-252 0 -403.5 -175.5 t-151.5 -404.5zM541 1624l59 133l379 -194l-35 -86z" />
-<glyph unicode="&#xd3;" horiz-adv-x="1624" d="M111 680q0 289 194.5 500t517.5 211q305 0 497.5 -196t192.5 -486q0 -299 -200.5 -516.5t-507.5 -217.5q-301 0 -497.5 206t-196.5 499zM256 694q0 -147 62.5 -282.5t193.5 -227.5t299 -92q250 0 402.5 182.5t152.5 418t-150.5 408.5t-404.5 173q-252 0 -403.5 -175.5 t-151.5 -404.5zM643 1563l377 194l61 -133l-403 -147z" />
-<glyph unicode="&#xd4;" horiz-adv-x="1624" d="M111 680q0 289 194.5 500t517.5 211q305 0 497.5 -196t192.5 -486q0 -299 -200.5 -516.5t-507.5 -217.5q-301 0 -497.5 206t-196.5 499zM256 694q0 -147 62.5 -282.5t193.5 -227.5t299 -92q250 0 402.5 182.5t152.5 418t-150.5 408.5t-404.5 173q-252 0 -403.5 -175.5 t-151.5 -404.5zM494 1544l258 240h120l256 -240l-77 -74l-238 211l-242 -211z" />
-<glyph unicode="&#xd5;" horiz-adv-x="1624" d="M111 680q0 289 194.5 500t517.5 211q305 0 497.5 -196t192.5 -486q0 -299 -200.5 -516.5t-507.5 -217.5q-301 0 -497.5 206t-196.5 499zM256 694q0 -147 62.5 -282.5t193.5 -227.5t299 -92q250 0 402.5 182.5t152.5 418t-150.5 408.5t-404.5 173q-252 0 -403.5 -175.5 t-151.5 -404.5zM455 1505q0 18 5 46t22.5 76t64.5 81t117 33q66 0 115.5 -35t88.5 -68.5t82 -33.5q33 0 55.5 18t30.5 46t10.5 44.5t2.5 28.5h116q0 -8 -2 -22.5t-7 -45.5t-19.5 -59.5t-37 -56t-61.5 -44t-88 -16.5q-53 0 -95 21.5t-65.5 47t-56.5 47t-65.5 21.5t-55 -18.5 t-30 -46t-9.5 -40.5t-2 -24h-116z" />
-<glyph unicode="&#xd6;" horiz-adv-x="1624" d="M111 680q0 289 194.5 500t517.5 211q305 0 497.5 -196t192.5 -486q0 -299 -200.5 -516.5t-507.5 -217.5q-301 0 -497.5 206t-196.5 499zM256 694q0 -147 62.5 -282.5t193.5 -227.5t299 -92q250 0 402.5 182.5t152.5 418t-150.5 408.5t-404.5 173q-252 0 -403.5 -175.5 t-151.5 -404.5zM492 1624q0 35 28.5 63.5t65.5 28.5q35 0 63.5 -28.5t28.5 -63.5q0 -37 -28.5 -65.5t-63.5 -28.5q-37 0 -65.5 27.5t-28.5 66.5zM946 1624q0 35 29 63.5t63 28.5q37 0 66 -28.5t29 -63.5q0 -39 -29 -66.5t-66 -27.5q-35 0 -63.5 28.5t-28.5 65.5z" />
-<glyph unicode="&#xd7;" horiz-adv-x="1064" d="M86 137l363 373l-363 375l82 86l364 -375l365 375l82 -86l-365 -375l365 -373l-84 -86l-363 373l-362 -373z" />
-<glyph unicode="&#xd8;" horiz-adv-x="1624" d="M111 680q0 289 194.5 500t517.5 211q211 0 381 -105l107 141h125l-152 -198q229 -197 229 -520q0 -299 -200.5 -516.5t-507.5 -217.5q-217 0 -387 115l-115 -151h-127l162 213q-227 204 -227 528zM256 694q0 -256 166 -434l700 922q-135 92 -311 92q-252 0 -403.5 -176.5 t-151.5 -403.5zM496 195q139 -102 315 -103q250 0 402.5 182.5t152.5 417.5q0 254 -166 424z" />
-<glyph unicode="&#xd9;" horiz-adv-x="1476" d="M193 485v881h133v-846q0 -215 113.5 -321.5t299.5 -106.5q184 0 298 103.5t114 310.5v860h133v-852q0 -256 -153.5 -397.5t-393.5 -141.5q-244 0 -394 124t-150 386zM467 1624l59 133l379 -194l-35 -86z" />
-<glyph unicode="&#xda;" horiz-adv-x="1476" d="M193 485v881h133v-846q0 -215 113.5 -321.5t299.5 -106.5q184 0 298 103.5t114 310.5v860h133v-852q0 -256 -153.5 -397.5t-393.5 -141.5q-244 0 -394 124t-150 386zM569 1563l377 194l62 -133l-404 -147z" />
-<glyph unicode="&#xdb;" horiz-adv-x="1476" d="M193 485v881h133v-846q0 -215 113.5 -321.5t299.5 -106.5q184 0 298 103.5t114 310.5v860h133v-852q0 -256 -153.5 -397.5t-393.5 -141.5q-244 0 -394 124t-150 386zM420 1544l258 240h121l256 -240l-78 -74l-238 211l-241 -211z" />
-<glyph unicode="&#xdc;" horiz-adv-x="1476" d="M193 485v881h133v-846q0 -215 113.5 -321.5t299.5 -106.5q184 0 298 103.5t114 310.5v860h133v-852q0 -256 -153.5 -397.5t-393.5 -141.5q-244 0 -394 124t-150 386zM418 1624q0 35 28.5 63.5t65.5 28.5q35 0 63.5 -28.5t28.5 -63.5q0 -37 -28.5 -65.5t-63.5 -28.5 q-37 0 -65.5 27.5t-28.5 66.5zM872 1624q0 35 29 63.5t64 28.5q37 0 65.5 -28.5t28.5 -63.5q0 -39 -29 -66.5t-65 -27.5q-35 0 -64 28.5t-29 65.5z" />
-<glyph unicode="&#xdd;" horiz-adv-x="1153" d="M23 1366h159l398 -635l401 635h149l-485 -762v-604h-135v602zM424 1563l377 194l61 -133l-403 -147z" />
-<glyph unicode="&#xde;" horiz-adv-x="1132" d="M211 0v1366h135v-324h266q240 0 345.5 -98t105.5 -256q0 -184 -120 -286.5t-331 -102.5h-266v-299h-135zM346 412h240q332 0 332 262q0 256 -332 256h-240v-518z" />
-<glyph unicode="&#xdf;" horiz-adv-x="1134" d="M61 809v63l146 58v80q0 215 99.5 335.5t277.5 120.5q160 0 244.5 -86t84.5 -192q0 -57 -32.5 -116.5t-72.5 -101.5t-73 -101.5t-33 -114.5q0 -57 37 -108.5t90 -92.5l107 -83q53 -42 90 -102.5t37 -129.5q0 -119 -84 -191t-229 -72q-78 0 -149 20.5t-101 41.5l-33 22 l35 119q115 -92 254 -92q84 0 129 40t45 103q0 66 -56.5 126.5t-123 103.5t-123 116.5t-56.5 161.5q0 66 32 129.5t69 105.5t68.5 98t31.5 110q0 78 -59.5 122t-139.5 44q-106 0 -173.5 -80t-67.5 -248v-1018h-125v809h-146z" />
-<glyph unicode="&#xe0;" horiz-adv-x="944" d="M80 201q0 279 557 354v61q0 39 -1 61.5t-10.5 53.5t-25.5 48.5t-47 29.5t-76 12q-152 -2 -287 -98l-45 111q16 12 47 30.5t127.5 48t192.5 29.5q133 0 191.5 -67.5t58.5 -221.5v-436q0 -55 25.5 -87t52.5 -36l24 -4l-47 -104q-84 14 -123 52t-51 101q-18 -25 -43 -52.5 t-103.5 -69.5t-164.5 -42q-115 0 -183.5 63t-68.5 163zM176 1425h154l207 -342l-84 -49zM219 209q0 -111 131 -111q59 0 117.5 31t90.5 60.5t79 80.5v179q-217 -37 -317.5 -93.5t-100.5 -146.5z" />
-<glyph unicode="&#xe1;" horiz-adv-x="944" d="M80 201q0 279 557 354v61q0 39 -1 61.5t-10.5 53.5t-25.5 48.5t-47 29.5t-76 12q-152 -2 -287 -98l-45 111q16 12 47 30.5t127.5 48t192.5 29.5q133 0 191.5 -67.5t58.5 -221.5v-436q0 -55 25.5 -87t52.5 -36l24 -4l-47 -104q-84 14 -123 52t-51 101q-18 -25 -43 -52.5 t-103.5 -69.5t-164.5 -42q-115 0 -183.5 63t-68.5 163zM219 209q0 -111 131 -111q59 0 117.5 31t90.5 60.5t79 80.5v179q-217 -37 -317.5 -93.5t-100.5 -146.5zM381 1083l205 342h155l-276 -391z" />
-<glyph unicode="&#xe2;" horiz-adv-x="944" d="M80 201q0 279 557 354v61q0 39 -1 61.5t-10.5 53.5t-25.5 48.5t-47 29.5t-76 12q-152 -2 -287 -98l-45 111q16 12 47 30.5t127.5 48t192.5 29.5q133 0 191.5 -67.5t58.5 -221.5v-436q0 -55 25.5 -87t52.5 -36l24 -4l-47 -104q-84 14 -123 52t-51 101q-18 -25 -43 -52.5 t-103.5 -69.5t-164.5 -42q-115 0 -183.5 63t-68.5 163zM184 1081l228 344h94l227 -344l-86 -49l-188 260l-189 -260zM219 209q0 -111 131 -111q59 0 117.5 31t90.5 60.5t79 80.5v179q-217 -37 -317.5 -93.5t-100.5 -146.5z" />
-<glyph unicode="&#xe3;" horiz-adv-x="944" d="M80 201q0 279 557 354v61q0 39 -1 61.5t-10.5 53.5t-25.5 48.5t-47 29.5t-76 12q-152 -2 -287 -98l-45 111q16 12 47 30.5t127.5 48t192.5 29.5q133 0 191.5 -67.5t58.5 -221.5v-436q0 -55 25.5 -87t52.5 -36l24 -4l-47 -104q-84 14 -123 52t-51 101q-18 -25 -43 -52.5 t-103.5 -69.5t-164.5 -42q-115 0 -183.5 63t-68.5 163zM174 1135q0 10 1 25.5t9.5 56t23.5 71.5t49 56.5t81 25.5t85 -24.5t57.5 -54t44 -54.5t48.5 -25q66 10 72 146h94q0 -10 -1 -26.5t-9 -58.5t-24.5 -75t-51.5 -59.5t-82 -26.5q-59 0 -101 40t-71.5 80t-60.5 40 t-48.5 -34t-19.5 -69l-2 -34h-94zM219 209q0 -111 131 -111q59 0 117.5 31t90.5 60.5t79 80.5v179q-217 -37 -317.5 -93.5t-100.5 -146.5z" />
-<glyph unicode="&#xe4;" horiz-adv-x="944" d="M80 201q0 279 557 354v61q0 39 -1 61.5t-10.5 53.5t-25.5 48.5t-47 29.5t-76 12q-152 -2 -287 -98l-45 111q16 12 47 30.5t127.5 48t192.5 29.5q133 0 191.5 -67.5t58.5 -221.5v-436q0 -55 25.5 -87t52.5 -36l24 -4l-47 -104q-84 14 -123 52t-51 101q-18 -25 -43 -52.5 t-103.5 -69.5t-164.5 -42q-115 0 -183.5 63t-68.5 163zM190 1261.5q0 36.5 30 65.5t67 29q35 0 63.5 -29t28.5 -65.5t-28.5 -65.5t-63.5 -29q-37 0 -67 29t-30 65.5zM219 209q0 -111 131 -111q59 0 117.5 31t90.5 60.5t79 80.5v179q-217 -37 -317.5 -93.5t-100.5 -146.5z M535 1261.5q0 36.5 29.5 65.5t64.5 29q37 0 65.5 -29t28.5 -65.5t-28.5 -65.5t-65.5 -29q-35 0 -64.5 29t-29.5 65.5z" />
-<glyph unicode="&#xe5;" horiz-adv-x="944" d="M80 201q0 279 557 354v61q0 39 -1 61.5t-10.5 53.5t-25.5 48.5t-47 29.5t-76 12q-152 -2 -287 -98l-45 111q16 12 47 30.5t127.5 48t192.5 29.5q133 0 191.5 -67.5t58.5 -221.5v-436q0 -55 25.5 -87t52.5 -36l24 -4l-47 -104q-84 14 -123 52t-51 101q-18 -25 -43 -52.5 t-103.5 -69.5t-164.5 -42q-115 0 -183.5 63t-68.5 163zM219 209q0 -111 131 -111q59 0 117.5 31t90.5 60.5t79 80.5v179q-217 -37 -317.5 -93.5t-100.5 -146.5zM276 1266q0 68 46.5 113.5t136.5 45.5t136 -46t46 -113q0 -70 -46 -119t-136 -49t-136.5 49t-46.5 119z M365 1264q0 -39 22.5 -64.5t71.5 -25.5q47 0 71.5 26.5t24.5 63t-23.5 62.5t-72.5 26q-94 0 -94 -88z" />
-<glyph unicode="&#xe6;" horiz-adv-x="1538" d="M80 205q0 274 582 342v49q0 127 -33 176t-129 49q-74 0 -152 -24.5t-119 -48.5l-39 -25l-45 111q16 12 48 30.5t127.5 48t191.5 29.5q109 0 167 -38t81 -118q125 156 323 156q156 0 256.5 -105.5t98.5 -283.5l-84 -29l-574 -73q6 -156 92 -256.5t228 -100.5 q154 0 280 109l6 4l54 -94q-6 -6 -16.5 -15.5t-44 -33t-71.5 -42t-97.5 -33t-120.5 -14.5q-129 0 -228.5 60.5t-152.5 171.5q-41 -94 -128 -163t-221 -69q-121 0 -200.5 62t-79.5 168zM219 209q0 -53 40 -84t114 -31q125 0 200.5 91t75.5 253q-430 -65 -430 -229zM788 563 l510 68q0 8 -3 21.5t-18 47t-37.5 60t-68 48t-102.5 21.5q-113 0 -185.5 -72.5t-95.5 -193.5z" />
-<glyph unicode="&#xe7;" horiz-adv-x="925" d="M98 446q0 201 121 348.5t332 147.5q86 0 159.5 -25.5t104.5 -52.5l31 -24l-66 -103q-10 10 -30.5 24.5t-82 38t-124.5 23.5q-143 0 -227.5 -106.5t-84.5 -255.5q0 -154 86 -260.5t232 -106.5q68 0 130 24.5t91 49.5l29 27l47 -101q-12 -12 -37 -32.5t-106.5 -53.5 t-170.5 -33h-10l-4 -10q-25 -59 -24 -71q0 -23 26.5 -42.5t59 -33t59.5 -44t27 -73.5q0 -74 -63.5 -131t-156.5 -57q-104 0 -186 63l41 96q66 -57 139 -57q45 0 77 21.5t32 50.5q0 25 -25.5 43t-56.5 29.5t-56.5 34t-25.5 52.5q0 16 6 35t17.5 45.5t13.5 32.5l10 27 q-152 33 -243 160.5t-91 299.5z" />
-<glyph unicode="&#xe8;" horiz-adv-x="993" d="M100 434q0 221 122 364.5t313 143.5q160 0 259 -105.5t99 -289.5l-84 -25l-571 -73q8 -162 92 -258.5t227 -96.5q72 0 144.5 29t109.5 57l39 31l39 -107q-14 -14 -41 -35.5t-116 -57.5t-183 -36q-215 0 -332 134.5t-117 324.5zM231 1425h154l207 -342l-84 -49zM244 561 l510 66q0 8 -3 21.5t-18.5 49t-38 62t-66.5 48t-100 21.5q-115 0 -189.5 -74.5t-94.5 -193.5z" />
-<glyph unicode="&#xe9;" horiz-adv-x="993" d="M100 434q0 221 122 364.5t313 143.5q160 0 259 -105.5t99 -289.5l-84 -25l-571 -73q8 -162 92 -258.5t227 -96.5q72 0 144.5 29t109.5 57l39 31l39 -107q-14 -14 -41 -35.5t-116 -57.5t-183 -36q-215 0 -332 134.5t-117 324.5zM244 561l510 66q0 8 -3 21.5t-18.5 49 t-38 62t-66.5 48t-100 21.5q-115 0 -189.5 -74.5t-94.5 -193.5zM436 1083l205 342h156l-277 -391z" />
-<glyph unicode="&#xea;" horiz-adv-x="993" d="M100 434q0 221 122 364.5t313 143.5q160 0 259 -105.5t99 -289.5l-84 -25l-571 -73q8 -162 92 -258.5t227 -96.5q72 0 144.5 29t109.5 57l39 31l39 -107q-14 -14 -41 -35.5t-116 -57.5t-183 -36q-215 0 -332 134.5t-117 324.5zM240 1081l227 344h94l227 -344l-86 -49 l-188 260l-188 -260zM244 561l510 66q0 8 -3 21.5t-18.5 49t-38 62t-66.5 48t-100 21.5q-115 0 -189.5 -74.5t-94.5 -193.5z" />
-<glyph unicode="&#xeb;" horiz-adv-x="993" d="M100 434q0 221 122 364.5t313 143.5q160 0 259 -105.5t99 -289.5l-84 -25l-571 -73q8 -162 92 -258.5t227 -96.5q72 0 144.5 29t109.5 57l39 31l39 -107q-14 -14 -41 -35.5t-116 -57.5t-183 -36q-215 0 -332 134.5t-117 324.5zM244 561l510 66q0 8 -3 21.5t-18.5 49 t-38 62t-66.5 48t-100 21.5q-115 0 -189.5 -74.5t-94.5 -193.5zM246 1261.5q0 36.5 29.5 65.5t66.5 29q35 0 63.5 -29t28.5 -65.5t-28.5 -65.5t-63.5 -29q-37 0 -66.5 29t-29.5 65.5zM590 1261.5q0 36.5 29.5 65.5t64.5 29q37 0 65.5 -29t28.5 -65.5t-28.5 -65.5t-65.5 -29 q-35 0 -64.5 29t-29.5 65.5z" />
-<glyph unicode="&#xec;" horiz-adv-x="454" d="M-55 1425h153l207 -342l-84 -49zM166 0v918h125v-918h-125z" />
-<glyph unicode="&#xed;" horiz-adv-x="454" d="M152 1083l204 342h156l-276 -391zM166 0v918h125v-918h-125z" />
-<glyph unicode="&#xee;" horiz-adv-x="454" d="M-47 1081l227 344h94l228 -344l-86 -49l-189 260l-188 -260zM166 0v918h125v-918h-125z" />
-<glyph unicode="&#xef;" horiz-adv-x="454" d="M-41 1261.5q0 36.5 29.5 65.5t66.5 29q35 0 63.5 -29t28.5 -65.5t-28.5 -65.5t-63.5 -29q-37 0 -66.5 29t-29.5 65.5zM166 0v918h125v-918h-125zM303 1261.5q0 36.5 29.5 65.5t64.5 29q37 0 66 -29t29 -65.5t-29 -65.5t-66 -29q-35 0 -64.5 29t-29.5 65.5z" />
-<glyph unicode="&#xf0;" horiz-adv-x="1097" d="M98 451q0 197 128 344t315 147q178 0 264 -94q-74 211 -242 356l-252 -157l-57 92l219 137q-135 88 -291 133l31 104q209 -53 371 -167l282 176l54 -95l-246 -153q303 -274 303 -703q0 -270 -123 -433t-334 -163q-193 0 -307.5 145t-114.5 331zM236 465q0 -143 78.5 -256 t215.5 -113q139 0 227.5 117t88.5 356q0 119 -66.5 185.5t-204.5 66.5q-152 0 -245.5 -100t-93.5 -256z" />
-<glyph unicode="&#xf1;" d="M162 0v905l125 25v-187q215 199 395 199q104 0 170 -65.5t66 -204.5v-672h-125v649q0 180 -136 180q-88 0 -194.5 -72.5t-175.5 -142.5v-614h-125zM262 1135q0 10 1 25.5t9.5 56t23.5 71.5t49 56.5t81 25.5t85 -24.5t57.5 -54t44 -54.5t49.5 -25q66 10 71 146h94 q0 -10 -1 -26.5t-9 -58.5t-24.5 -75t-51 -59.5t-82.5 -26.5q-59 0 -101 40t-71.5 80t-60.5 40t-48.5 -34t-19.5 -69l-2 -34h-94z" />
-<glyph unicode="&#xf2;" d="M98 463q0 193 119 336t317.5 143t319.5 -140t121 -335t-120 -343.5t-320 -148.5q-197 0 -317 146.5t-120 341.5zM231 475q0 -156 80 -269.5t226 -113.5q135 0 220 100.5t85 260.5q0 154 -78 263t-229 109q-139 0 -221.5 -97t-82.5 -253zM252 1425h154l206 -342l-84 -49z " />
-<glyph unicode="&#xf3;" d="M98 463q0 193 119 336t317.5 143t319.5 -140t121 -335t-120 -343.5t-320 -148.5q-197 0 -317 146.5t-120 341.5zM231 475q0 -156 80 -269.5t226 -113.5q135 0 220 100.5t85 260.5q0 154 -78 263t-229 109q-139 0 -221.5 -97t-82.5 -253zM459 1083l205 342h155l-276 -391z " />
-<glyph unicode="&#xf4;" d="M98 463q0 193 119 336t317.5 143t319.5 -140t121 -335t-120 -343.5t-320 -148.5q-197 0 -317 146.5t-120 341.5zM231 475q0 -156 80 -269.5t226 -113.5q135 0 220 100.5t85 260.5q0 154 -78 263t-229 109q-139 0 -221.5 -97t-82.5 -253zM260 1081l227 344h95l227 -344 l-86 -49l-188 260l-189 -260z" />
-<glyph unicode="&#xf5;" d="M98 463q0 193 119 336t317.5 143t319.5 -140t121 -335t-120 -343.5t-320 -148.5q-197 0 -317 146.5t-120 341.5zM231 475q0 -156 80 -269.5t226 -113.5q135 0 220 100.5t85 260.5q0 154 -78 263t-229 109q-139 0 -221.5 -97t-82.5 -253zM250 1135q0 10 1 25.5t9 56 t23.5 71.5t49.5 56.5t81 25.5t85 -24.5t57 -54t44 -54.5t49 -25q66 10 72 146h94q0 -10 -1 -26.5t-9 -58.5t-24.5 -75t-51.5 -59.5t-82 -26.5q-59 0 -101 40t-72 80t-60.5 40t-48 -34t-19.5 -69l-2 -34h-94z" />
-<glyph unicode="&#xf6;" d="M98 463q0 193 119 336t317.5 143t319.5 -140t121 -335t-120 -343.5t-320 -148.5q-197 0 -317 146.5t-120 341.5zM231 475q0 -156 80 -269.5t226 -113.5q135 0 220 100.5t85 260.5q0 154 -78 263t-229 109q-139 0 -221.5 -97t-82.5 -253zM266 1261.5q0 36.5 30 65.5t66 29 q35 0 64 -29t29 -65.5t-29 -65.5t-64 -29q-37 0 -66.5 29t-29.5 65.5zM610 1261.5q0 36.5 30 65.5t65 29q37 0 65.5 -29t28.5 -65.5t-29 -65.5t-65 -29q-35 0 -65 29t-30 65.5z" />
-<glyph unicode="&#xf7;" horiz-adv-x="1064" d="M74 451v120h917v-120h-917zM416 117q0 47 34.5 80.5t82 33.5t82 -33.5t34.5 -80.5q0 -49 -34.5 -83t-82 -34t-82 34t-34.5 83zM416 907q0 47 34.5 81t82 34t82 -34t34.5 -81q0 -49 -34.5 -82.5t-82 -33.5t-82 33.5t-34.5 82.5z" />
-<glyph unicode="&#xf8;" d="M92 -61l131 176q-125 141 -125 340q0 186 120 336.5t321 150.5q137 0 245 -76l84 113h121l-133 -178q119 -137 119 -324q0 -119 -49 -230.5t-153.5 -191.5t-242.5 -80q-133 0 -233 72l-82 -108h-123zM231 473q0 -152 70 -254l410 549q-74 53 -176 53q-139 0 -221.5 -94 t-82.5 -254zM371 145q70 -49 166 -49q139 0 222 98.5t83 256.5q0 143 -64 243z" />
-<glyph unicode="&#xf9;" horiz-adv-x="1056" d="M154 250v668h125v-650q0 -180 143 -180q145 0 340 188v642h125v-633q0 -49 10 -121t21 -119l10 -47l-125 -10q-23 100 -31 166q-178 -178 -371 -179q-247 1 -247 275zM242 1425h153l207 -342l-84 -49z" />
-<glyph unicode="&#xfa;" horiz-adv-x="1056" d="M154 250v668h125v-650q0 -180 143 -180q145 0 340 188v642h125v-633q0 -49 10 -121t21 -119l10 -47l-125 -10q-23 100 -31 166q-178 -178 -371 -179q-247 1 -247 275zM446 1083l205 342h156l-277 -391z" />
-<glyph unicode="&#xfb;" horiz-adv-x="1056" d="M154 250v668h125v-650q0 -180 143 -180q145 0 340 188v642h125v-633q0 -49 10 -121t21 -119l10 -47l-125 -10q-23 100 -31 166q-178 -178 -371 -179q-247 1 -247 275zM250 1081l227 344h94l228 -344l-86 -49l-189 260l-188 -260z" />
-<glyph unicode="&#xfc;" horiz-adv-x="1056" d="M154 250v668h125v-650q0 -180 143 -180q145 0 340 188v642h125v-633q0 -49 10 -121t21 -119l10 -47l-125 -10q-23 100 -31 166q-178 -178 -371 -179q-247 1 -247 275zM256 1261.5q0 36.5 29.5 65.5t66.5 29q35 0 63.5 -29t28.5 -65.5t-28.5 -65.5t-63.5 -29 q-37 0 -66.5 29t-29.5 65.5zM600 1261.5q0 36.5 29.5 65.5t64.5 29q37 0 65.5 -29t28.5 -65.5t-28.5 -65.5t-65.5 -29q-35 0 -64.5 29t-29.5 65.5z" />
-<glyph unicode="&#xfd;" horiz-adv-x="921" d="M41 918h137l289 -672l278 672h138l-422 -988q-80 -188 -161 -293.5t-208 -121.5l-41 110q94 18 158.5 93t122.5 206l69 158zM395 1083l205 342h156l-277 -391z" />
-<glyph unicode="&#xfe;" horiz-adv-x="1067" d="M166 -473v1909l125 24v-665q37 63 110.5 105t173.5 42q178 0 285 -131t107 -330q0 -213 -130 -359.5t-343 -146.5q-137 0 -203 62v-486zM291 227q0 -131 184 -131q168 0 262 101.5t94 275.5q0 160 -74.5 253t-189.5 93q-70 0 -136 -38t-94 -67.5t-46 -58.5v-428z" />
-<glyph unicode="&#xff;" horiz-adv-x="921" d="M41 918h137l289 -672l278 672h138l-422 -988q-80 -188 -161 -293.5t-208 -121.5l-41 110q94 18 158.5 93t122.5 206l69 158zM205 1261.5q0 36.5 29.5 65.5t66.5 29q35 0 63.5 -29t28.5 -65.5t-28.5 -65.5t-63.5 -29q-37 0 -66.5 29t-29.5 65.5zM549 1261.5 q0 36.5 29.5 65.5t64.5 29q37 0 65.5 -29t28.5 -65.5t-28.5 -65.5t-65.5 -29q-35 0 -64.5 29t-29.5 65.5z" />
-<glyph unicode="&#x152;" horiz-adv-x="2002" d="M111 680q0 188 78.5 346t251.5 261.5t415 103.5q121 0 256 -25h782v-113h-651v-497h516v-113h-516v-530h643v-113h-776q-152 -25 -270 -25q-336 0 -532.5 203t-196.5 502zM256 694q0 -104 33 -205.5t100.5 -192.5t187 -147.5t275.5 -56.5q131 0 258 19v1134 q-117 29 -270 29q-190 0 -326.5 -87t-197 -215t-60.5 -278z" />
-<glyph unicode="&#x153;" horiz-adv-x="1736" d="M98 453q0 199 116 344t325 145q125 0 224 -58.5t155 -154.5q57 100 148 156.5t208 56.5q162 0 262 -105.5t100 -289.5l-84 -25l-579 -76q8 -164 96 -258t227 -94q156 0 281 107l6 6l53 -94l-15 -16q-9 -9 -44 -32.5t-73 -42t-97 -33t-121 -14.5q-129 0 -229.5 59.5 t-153.5 158.5q-127 -217 -373 -218q-197 0 -314.5 142.5t-117.5 335.5zM231 465q0 -160 85 -266.5t227 -106.5q135 0 217 101.5t82 261.5q0 154 -77 262t-226 108q-141 0 -224.5 -102t-83.5 -258zM979 559l516 68q0 8 -3 21.5t-18.5 49t-38 62t-67.5 48t-104 21.5 q-115 0 -190 -75.5t-95 -194.5z" />
-<glyph unicode="&#x178;" horiz-adv-x="1153" d="M23 1366h159l398 -635l401 635h149l-485 -762v-604h-135v602zM272 1624q0 35 29 63.5t66 28.5q35 0 63.5 -28.5t28.5 -63.5q0 -37 -29 -65.5t-63 -28.5q-37 0 -66 27.5t-29 66.5zM727 1624q0 35 28.5 63.5t63.5 28.5q37 0 65.5 -28.5t28.5 -63.5q0 -39 -28.5 -66.5 t-65.5 -27.5q-35 0 -63.5 28.5t-28.5 65.5z" />
-<glyph unicode="&#x2c6;" horiz-adv-x="1028" d="M240 1081l227 344h94l227 -344l-86 -49l-188 260l-188 -260z" />
-<glyph unicode="&#x2dc;" horiz-adv-x="1028" d="M227 1135q0 10 1 25.5t9.5 56t23.5 71.5t49 56.5t81 25.5t85 -24.5t57.5 -54t44 -54.5t49.5 -25q66 10 71 146h95q0 -10 -1 -26.5t-9.5 -58.5t-25 -75t-51 -59.5t-81.5 -26.5q-59 0 -101.5 40t-72 80t-60.5 40t-48 -34t-19 -69l-2 -34h-95z" />
-<glyph unicode="&#x2000;" horiz-adv-x="892" />
-<glyph unicode="&#x2001;" horiz-adv-x="1784" />
-<glyph unicode="&#x2002;" horiz-adv-x="892" />
-<glyph unicode="&#x2003;" horiz-adv-x="1784" />
-<glyph unicode="&#x2004;" horiz-adv-x="594" />
-<glyph unicode="&#x2005;" horiz-adv-x="446" />
-<glyph unicode="&#x2006;" horiz-adv-x="297" />
-<glyph unicode="&#x2007;" horiz-adv-x="297" />
-<glyph unicode="&#x2008;" horiz-adv-x="223" />
-<glyph unicode="&#x2009;" horiz-adv-x="356" />
-<glyph unicode="&#x200a;" horiz-adv-x="99" />
-<glyph unicode="&#x2010;" horiz-adv-x="669" d="M117 438v142h434v-142h-434z" />
-<glyph unicode="&#x2011;" horiz-adv-x="669" d="M117 438v142h434v-142h-434z" />
-<glyph unicode="&#x2012;" horiz-adv-x="669" d="M117 438v142h434v-142h-434z" />
-<glyph unicode="&#x2013;" horiz-adv-x="1075" d="M117 457v121h839v-121h-839z" />
-<glyph unicode="&#x2014;" horiz-adv-x="1873" d="M117 457v121h1638v-121h-1638z" />
-<glyph unicode="&#x2018;" horiz-adv-x="421" d="M106 1204q0 84 45.5 165t120.5 138l68 -65q-92 -74 -92 -170q0 -104 94 -203l-137 -82q-99 82 -99 217z" />
-<glyph unicode="&#x2019;" horiz-adv-x="417" d="M88 1425l137 82q98 -84 99 -215q0 -84 -45.5 -167t-120.5 -138l-68 66q92 74 92 170q0 106 -94 202z" />
-<glyph unicode="&#x201a;" horiz-adv-x="485" d="M109 137l153 84q104 -90 105 -217q0 -84 -49.5 -166t-124.5 -139l-66 68q98 80 98 167q1 80 -116 203z" />
-<glyph unicode="&#x201c;" horiz-adv-x="733" d="M106 1200q0 182 166 307l68 -65q-92 -76 -92 -176q0 -98 94 -197l-137 -82q-99 82 -99 213zM418 1200q0 182 166 307l65 -65q-90 -72 -90 -178q0 -94 92 -195l-135 -82q-98 82 -98 213z" />
-<glyph unicode="&#x201d;" horiz-adv-x="727" d="M88 1425l137 82q98 -84 99 -215q0 -84 -45.5 -167t-120.5 -138l-68 66q92 74 92 170q0 106 -94 202zM399 1425l136 82q98 -82 98 -215q0 -84 -45 -167t-121 -138l-66 66q90 72 91 170q-1 106 -93 202z" />
-<glyph unicode="&#x201e;" horiz-adv-x="794" d="M109 137l153 84q104 -90 105 -217q0 -84 -49.5 -166t-124.5 -139l-66 68q98 80 98 167q1 80 -116 203zM418 137l153 84q106 -90 107 -217q0 -84 -49 -166t-125 -139l-68 68q100 78 101 167q0 80 -119 203z" />
-<glyph unicode="&#x2022;" horiz-adv-x="757" d="M106 524.5q0 114.5 79 193.5t194 79t193.5 -79t78.5 -193.5t-78.5 -193.5t-193.5 -79t-194 79t-79 193.5z" />
-<glyph unicode="&#x2026;" horiz-adv-x="1570" d="M127 86q0 45 33 78t80 33q45 0 76.5 -33t31.5 -78t-31.5 -78t-76.5 -33q-47 0 -80 33t-33 78zM674 86q0 45 32.5 78t77.5 33q47 0 79 -33t32 -78t-32 -78t-79 -33q-45 0 -77.5 33t-32.5 78zM1221 86q0 45 32.5 78t77.5 33t78 -33t33 -78t-33 -78t-78 -33t-77.5 33 t-32.5 78z" />
-<glyph unicode="&#x202f;" horiz-adv-x="356" />
-<glyph unicode="&#x2039;" horiz-adv-x="659" d="M55 510v8q35 27 281 295l123 133l98 -26l-313 -406l313 -405l-98 -27l-170 182l-112 121l-61 66l-38 38q-11 11 -23 21z" />
-<glyph unicode="&#x203a;" horiz-adv-x="661" d="M104 109l316 405l-316 406l101 26q362 -395 403 -428v-8q-10 -8 -21.5 -18.5l-24.5 -23.5t-43 -46l-64 -71l-104 -111l-146 -158z" />
-<glyph unicode="&#x205f;" horiz-adv-x="446" />
-<glyph unicode="&#x20ac;" horiz-adv-x="1138" d="M90 379v96h109q-4 27 -4 84q0 51 2 76h-103v98h119q43 190 174 305t332 115q180 -2 309 -80l-35 -127q-14 10 -38.5 24.5t-100.5 39t-149 24.5q-145 0 -234.5 -84t-124.5 -217h586l-29 -98h-573q-2 -23 -2 -64q0 -51 6 -96h522l-29 -96h-471q41 -131 134.5 -208 t224.5 -77q70 0 136.5 18.5t98.5 39.5l33 18l49 -104q-14 -10 -38.5 -25.5t-107.5 -40.5t-173 -25q-186 0 -318.5 110t-179.5 294h-125z" />
-<glyph unicode="&#x2122;" horiz-adv-x="1333" d="M78 1284v82h450v-82h-178v-463h-94v463h-178zM621 821l20 545h141l131 -379l131 379h138l20 -545h-90l-16 432l-154 -432h-63l-152 430l-12 -430h-94z" />
-<glyph unicode="&#xe000;" horiz-adv-x="920" d="M0 920h920v-920h-920v920z" />
-<glyph unicode="&#xfb01;" horiz-adv-x="1048" d="M61 809v63l146 58v84q0 223 101.5 347t275.5 124q72 0 140.5 -19.5t100.5 -38.5l33 -18l-67 -109q-102 66 -211 66q-104 0 -176 -85t-72 -261v-102h551v-918h-125v819h-426v-819h-125v809h-146z" />
-<glyph unicode="&#xfb02;" horiz-adv-x="1077" d="M61 809v63l146 58v84q0 223 101.5 347t275.5 124q119 0 217 -47l110 22v-1460h-125v1303q-115 63 -206 63q-104 0 -176 -85t-72 -261v-102h264v-109h-264v-809h-125v809h-146z" />
-<glyph unicode="&#xfb03;" horiz-adv-x="1628" d="M61 809v63l146 58v53q0 215 105.5 333t289.5 118q139 0 270 -80q98 131 273 131q66 0 128 -19.5t91 -38.5l29 -18l-68 -109q-92 66 -186 66q-96 0 -161 -79t-65 -247v-122h551v-918h-127v819h-424v-819h-127v819h-454v-819h-125v809h-146zM332 918h454v116q0 121 31 209 q-121 72 -221 72q-115 0 -189.5 -79t-74.5 -249v-69z" />
-<glyph unicode="&#xfb04;" horiz-adv-x="1656" d="M61 809v63l146 58v53q0 215 105.5 333t289.5 118q145 0 279 -86q104 137 290 137q109 0 218 -45l104 20v-1460h-127v1309q-109 57 -201 57q-109 0 -180.5 -88t-71.5 -266v-94h265v-109h-265v-809h-127v819h-454v-819h-125v809h-146zM332 918h454v90q0 133 37 231 q-123 76 -227 76q-115 0 -189.5 -79t-74.5 -249v-69z" />
-</font>
-</defs></svg> 
\ No newline at end of file
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansLight-webfont.ttf b/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansLight-webfont.ttf
deleted file mode 100644
index 5eacf6d088d7d4420657c3d251df206908e89535..0000000000000000000000000000000000000000
Binary files a/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansLight-webfont.ttf and /dev/null differ
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansLight-webfont.woff b/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansLight-webfont.woff
deleted file mode 100644
index 08c76f87126d89b7b8c6859a833329998d591970..0000000000000000000000000000000000000000
Binary files a/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansLight-webfont.woff and /dev/null differ
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansRegular-webfont.eot b/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansRegular-webfont.eot
deleted file mode 100644
index db87f6c488d72297e573d5bfac2ebe17e637cca9..0000000000000000000000000000000000000000
Binary files a/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansRegular-webfont.eot and /dev/null differ
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansRegular-webfont.svg b/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansRegular-webfont.svg
deleted file mode 100644
index 6fd374788dfd55d86182cf5fe95aa3e3005d6218..0000000000000000000000000000000000000000
--- a/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansRegular-webfont.svg
+++ /dev/null
@@ -1,244 +0,0 @@
-<?xml version="1.0" standalone="no"?>
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
-<svg xmlns="http://www.w3.org/2000/svg">
-<metadata>
-This is a custom SVG webfont generated by Fontspring.
-</metadata>
-<defs>
-<font id="webfontnehNrF5g" horiz-adv-x="1064" >
-<font-face units-per-em="2048" ascent="1536" descent="-512" />
-<missing-glyph horiz-adv-x="491" />
-<glyph unicode=" "  horiz-adv-x="491" />
-<glyph unicode="&#x09;" horiz-adv-x="491" />
-<glyph unicode="&#xa0;" horiz-adv-x="491" />
-<glyph unicode="!" horiz-adv-x="555" d="M156 98.5q0 51.5 35.5 87t87 35.5t87 -35.5t35.5 -87t-35.5 -87.5t-87 -36t-87 36t-35.5 87.5zM182 1391h191l-27 -990h-141z" />
-<glyph unicode="&#x22;" horiz-adv-x="712" d="M131 883v483h152v-76l-47 -407h-105zM451 883v483h151v-76l-47 -407h-104z" />
-<glyph unicode="#" horiz-adv-x="1325" d="M74 256l20 113h246l59 290h-247l20 113h252l84 412h119l-84 -412h311l84 412h119l-84 -412h276l-20 -113h-281l-59 -290h282l-20 -113h-285l-88 -438h-121l91 438h-312l-88 -438h-121l90 438h-243zM459 369h311l59 290h-311z" />
-<glyph unicode="$" horiz-adv-x="946" d="M82 86l37 145l39 -26q25 -16 105.5 -46t164.5 -34l10 387q-72 27 -119 49.5t-102 61.5t-84 95t-29 128q0 121 87.5 204t263.5 95l6 178h90l-4 -176q174 -6 284 -62l-47 -137q-102 49 -241 60l-11 -367q150 -55 238 -135t88 -209t-91 -210t-253 -95l-4 -174h-90l4 170 q-96 2 -182 26.5t-123 46.5zM266 856q0 -70 44 -110.5t132 -73.5l11 336q-187 -13 -187 -152zM518 127q178 23 178 164q0 70 -43 111.5t-125 74.5z" />
-<glyph unicode="%" horiz-adv-x="1497" d="M80 1038q0 129 89 218.5t220 89.5t220 -89.5t89 -218.5t-89 -218t-220 -89t-220 89t-89 218zM195 1038q0 -80 56 -140t138 -60t138.5 60t56.5 140t-56.5 140.5t-140.5 60.5q-80 0 -136 -60.5t-56 -140.5zM215 0l956 1376l86 -59l-917 -1317h-125zM805 283q0 129 89 218 t220 89t220 -89t89 -218t-89 -218.5t-220 -89.5t-220 89.5t-89 218.5zM920 282.5q0 -79.5 56 -140t138 -60.5t138.5 60.5t56.5 140t-56.5 140t-140.5 60.5q-80 0 -136 -60.5t-56 -140z" />
-<glyph unicode="&#x26;" horiz-adv-x="1394" d="M88 319q0 127 79 219.5t220 184.5q-119 211 -119 352q0 121 84 218.5t248 97.5q141 0 221 -76t80 -199q0 -127 -81 -219t-230 -192q74 -111 145 -197q92 -113 170 -189q172 229 199 603h151q-12 -162 -74.5 -354.5t-174.5 -338.5q186 -160 335 -196l-65 -119 q-168 27 -379 201q-164 -139 -375 -140q-178 0 -306 90t-128 254zM246 332q0 -104 85 -160.5t201 -56.5q143 0 263 90q-90 84 -193 211q-70 82 -149 198q-207 -143 -207 -282zM442 1079q0 -109 84 -266q104 70 160.5 135.5t56.5 145.5q0 66 -38.5 111.5t-108.5 45.5 q-74 0 -114 -50t-40 -122z" />
-<glyph unicode="'" horiz-adv-x="393" d="M131 883v483h152v-76l-47 -407h-105z" />
-<glyph unicode="(" horiz-adv-x="585" d="M109 553q0 432 231 772q41 57 72 90l127 -37l-32 -39q-19 -25 -69.5 -108.5t-88.5 -173.5t-69.5 -227.5t-31.5 -276.5q0 -434 229 -786q39 -59 68 -93l-123 -43l-34 41q-22 27 -76 117t-95 189.5t-74.5 256t-33.5 318.5z" />
-<glyph unicode=")" horiz-adv-x="585" d="M41 -326q12 14 31.5 40t71 113t91 182t71.5 243.5t32 300.5q0 399 -227 741l-64 84l127 37q12 -12 32.5 -36.5t73 -109.5t92.5 -177.5t72.5 -239.5t32.5 -299q0 -459 -237 -821q-43 -66 -76 -101z" />
-<glyph unicode="*" horiz-adv-x="991" d="M92 854l293 109l31 -54l-242 -198zM92 1128l82 144l242 -199l-31 -53zM414 573l51 308h61l52 -308h-164zM414 1409h164l-52 -307h-61zM575 909l31 54l293 -109l-82 -143zM575 1073l242 199l82 -144l-293 -108z" />
-<glyph unicode="+" d="M63 446v134h402v419h141v-419h395v-134h-395v-446h-141v446h-402z" />
-<glyph unicode="," horiz-adv-x="471" d="M76 -281q53 47 71.5 66.5t38 59.5t19.5 89q0 104 -96 240l167 55q78 -92 78 -221q0 -205 -207 -362z" />
-<glyph unicode="-" horiz-adv-x="692" d="M115 438v148h463v-148h-463z" />
-<glyph unicode="." horiz-adv-x="487" d="M121 98.5q0 51.5 36 87t87 35.5t87 -35.5t36 -87t-36 -87.5t-87 -36t-87 36t-36 87.5z" />
-<glyph unicode="/" horiz-adv-x="937" d="M47 -401l682 1767h141l-680 -1767h-143z" />
-<glyph unicode="0" horiz-adv-x="1124" d="M102 467q0 213 123 366.5t346 153.5q217 0 334 -140t117 -339q0 -137 -46 -254t-156.5 -198t-266.5 -81q-209 0 -330 147.5t-121 344.5zM262 485q0 -150 81 -260t218 -110q147 0 224 109.5t77 264.5q0 145 -77.5 252t-221.5 107q-139 0 -220 -109t-81 -254z" />
-<glyph unicode="1" horiz-adv-x="741" d="M104 0v137h215v699h-200v127h360v-826h201v-137h-576z" />
-<glyph unicode="2" horiz-adv-x="909" d="M92 104l53 39q33 25 116 97.5t147.5 141.5t117 156t52.5 154q0 70 -48.5 113t-123.5 43q-55 0 -116 -23.5t-93 -46.5l-31 -24l-70 104q16 14 47 35.5t119 57.5t170 36q135 0 224 -79t89 -195q0 -78 -35.5 -158t-106.5 -160t-128 -133t-143 -125h499v-137h-722z" />
-<glyph unicode="3" horiz-adv-x="815" d="M41 858q16 14 47 35.5t119 57.5t172 36q133 0 221 -75.5t88 -194.5q0 -106 -72.5 -195.5t-175.5 -148.5q135 -29 209 -114t74 -208q0 -197 -167 -319.5t-429 -122.5q-37 0 -55 2l-15 127q20 -2 62 -2q186 0 311 81t125 222q0 121 -91 175t-224 54h-58v131 q119 12 228.5 105.5t109.5 195.5q0 68 -45 108t-117 40q-127 -2 -247 -94z" />
-<glyph unicode="4" d="M57 53v109l609 825h135v-803h194v-131h-194v-448h-160v448h-584zM231 184h410v555z" />
-<glyph unicode="5" horiz-adv-x="817" d="M63 -262q20 -2 64 -2q182 0 308 81t126 230q0 74 -29.5 132.5t-71.5 93t-109.5 60t-123 37t-129.5 21.5v572h580v-138h-424v-319q475 -96 475 -451q0 -205 -166 -325.5t-426 -120.5q-39 0 -59 2z" />
-<glyph unicode="6" horiz-adv-x="1040" d="M98 567q0 156 46 298.5t133.5 258t229.5 187t322 80.5l13 -131q-238 -14 -377 -149.5t-182 -344.5q90 113 270 113q190 0 297.5 -126t107.5 -309q0 -188 -112.5 -328.5t-306.5 -140.5q-213 0 -327 170t-114 422zM266 623q0 -240 73 -374t210 -134q111 0 176.5 89 t65.5 222q0 53 -11.5 102.5t-38 99.5t-80 80.5t-129.5 30.5q-155 1 -266 -116z" />
-<glyph unicode="7" horiz-adv-x="929" d="M63 811v152h811v-109q-221 -551 -581 -1257l-156 36q295 539 553 1178h-627z" />
-<glyph unicode="8" horiz-adv-x="1044" d="M100 334q0 119 79 207t222 184q-219 174 -219 354q0 141 104.5 226.5t260.5 85.5q152 0 248 -83t96 -216q0 -106 -63.5 -190.5t-176.5 -164.5q139 -98 216 -188t77 -209q0 -152 -122 -258.5t-306 -106.5q-182 0 -299 106t-117 253zM254 340q0 -98 80 -161.5t184.5 -63.5 t181 59t76.5 156q0 59 -44 118.5t-87 93.5l-135 101q-127 -84 -191.5 -151.5t-64.5 -151.5zM350 1085q0 -74 49.5 -136t141.5 -132q94 68 145 129.5t51 134.5q0 84 -58 127t-136 43q-76 0 -134.5 -42t-58.5 -124z" />
-<glyph unicode="9" horiz-adv-x="1040" d="M102 532q0 184 110 319.5t300 135.5q213 0 326.5 -170t113.5 -422q0 -152 -46 -288t-133 -247.5t-229.5 -180t-322.5 -76.5l-12 131q238 12 377 144t182 327q-90 -111 -268 -111q-186 0 -292 128t-106 310zM270 561q0 -57 10.5 -109.5t36 -104.5t77.5 -83t126 -31 q150 0 264 115q0 225 -72.5 362.5t-209.5 137.5q-104 0 -168 -83t-64 -204z" />
-<glyph unicode=":" horiz-adv-x="555" d="M156 98.5q0 51.5 35.5 87t87 35.5t87 -35.5t35.5 -87t-35.5 -87.5t-87 -36t-87 36t-35.5 87.5zM156 799q0 51 35.5 87t87 36t87 -36t35.5 -87t-35.5 -87t-87 -36t-87 36t-35.5 87z" />
-<glyph unicode=";" horiz-adv-x="546" d="M119 -281q53 47 71.5 66.5t38 59.5t19.5 89q0 104 -96 240l167 55q78 -92 78 -221q0 -205 -207 -362zM150 799q0 51 35.5 87t87 36t87 -36t35.5 -87t-35.5 -87t-87 -36t-87 36t-35.5 87z" />
-<glyph unicode="&#x3c;" d="M63 463v94l873 469l31 -139l-719 -377l719 -397l-31 -138z" />
-<glyph unicode="=" d="M74 252v133h917v-133h-917zM74 641v133h917v-133h-917z" />
-<glyph unicode="&#x3e;" d="M96 113l717 397l-717 377l31 139l872 -469v-94l-872 -488z" />
-<glyph unicode="?" horiz-adv-x="731" d="M94 1284l35 152q20 -6 56 -18.5t127 -52.5t161 -83t127 -110.5t57 -135.5q0 -51 -32.5 -105t-80.5 -105.5t-95.5 -109t-80 -140t-32.5 -175.5h-129q-6 29 -6 70q0 92 42 182t92 147.5t92 117t42 100.5q0 115 -293 235zM156 98.5q0 51.5 35.5 87t87 35.5t87 -35.5 t35.5 -87t-35.5 -87.5t-87 -36t-87 36t-35.5 87.5z" />
-<glyph unicode="@" horiz-adv-x="1701" d="M86 399q0 213 99.5 399.5t288 303.5t421.5 117q311 0 507.5 -191.5t196.5 -480.5q0 -299 -188 -441q-23 -18 -51.5 -32.5t-51 -23.5t-64.5 -21.5t-61.5 -16.5t-77.5 -17t-81 -20q-18 84 -29 152q-35 -63 -105.5 -107.5t-152.5 -44.5q-123 0 -207 107.5t-84 284.5 q0 250 165 402.5t393 152.5l135 -9v-622q0 -45 4 -87t8 -61l2 -18q156 18 231.5 124.5t75.5 274.5q0 250 -152.5 414t-410.5 164q-295 0 -483.5 -209t-188.5 -500q0 -270 162 -448t383 -189l-20 -112q-283 12 -473.5 232t-190.5 523zM614 379q0 -113 45.5 -188.5 t116.5 -75.5q51 0 102.5 37.5t75.5 76.5l25 37v527q-160 0 -262.5 -120t-102.5 -294z" />
-<glyph unicode="A" horiz-adv-x="1267" d="M29 0l524 1376h162l524 -1376h-176l-154 412h-557l-153 -412h-170zM406 553h450l-225 602z" />
-<glyph unicode="B" horiz-adv-x="1202" d="M201 0v1366h356q244 0 353.5 -95t109.5 -233q0 -178 -166 -305q37 -12 73 -32.5t78 -59.5t68.5 -101.5t26.5 -142.5q0 -180 -130 -288.5t-337 -108.5h-432zM369 141h233q160 0 239 65.5t79 178.5q0 115 -79 181.5t-239 66.5h-233v-492zM369 774h317l16.5 10.5t37 29 t47 49t37 69.5t16.5 90q0 203 -314 203h-157v-451z" />
-<glyph unicode="C" horiz-adv-x="1378" d="M102 674q0 305 202 511t532 206q121 0 234.5 -30t166.5 -58l51 -29l-67 -152q-18 14 -51 35t-136.5 54.5t-210.5 33.5q-172 0 -298 -83t-184 -207t-58 -269q0 -238 154.5 -401.5t389.5 -163.5q211 0 394 127l14 10l70 -127q-23 -18 -63 -44t-168 -69t-261 -43 q-309 0 -510 197t-201 502z" />
-<glyph unicode="D" horiz-adv-x="1480" d="M201 0v1366h413q147 0 277.5 -36t241 -111.5t176 -207.5t65.5 -306q0 -336 -229.5 -520.5t-607.5 -184.5h-336zM369 141h147q352 0 515 149.5t163 395.5q0 250 -157.5 394.5t-450.5 144.5h-217v-1084z" />
-<glyph unicode="E" horiz-adv-x="1110" d="M201 0v1366h805v-141h-637v-457h503v-141h-503v-486h635v-141h-803z" />
-<glyph unicode="F" horiz-adv-x="1048" d="M201 0v1366h786v-141h-618v-463h489v-150h-489v-612h-168z" />
-<glyph unicode="G" horiz-adv-x="1429" d="M102 664q0 303 199 515t539 212q121 0 234.5 -26t166.5 -50l53 -27l-67 -151q-18 12 -52 30.5t-138.5 48t-207.5 29.5q-260 0 -404 -167t-144 -400q0 -244 159.5 -400.5t425.5 -156.5l258 35v403h-293v141h461v-661q-252 -63 -452 -64q-313 0 -525.5 188t-212.5 501z" />
-<glyph unicode="H" horiz-adv-x="1544" d="M201 0v1366h168v-598h807v598h167v-1366h-167v627h-807v-627h-168z" />
-<glyph unicode="I" horiz-adv-x="569" d="M201 0v1366h168v-1366h-168z" />
-<glyph unicode="J" horiz-adv-x="571" d="M-35 -229q238 29 238 383v1212h168v-1210q0 -92 -17.5 -174t-54.5 -157t-105.5 -125t-162.5 -65z" />
-<glyph unicode="K" horiz-adv-x="1187" d="M201 0v1366h168v-580h28l547 580h213l-614 -641l639 -725h-221l-564 645h-28v-645h-168z" />
-<glyph unicode="L" horiz-adv-x="1054" d="M201 0v1366h168v-1225h655v-141h-823z" />
-<glyph unicode="M" horiz-adv-x="1767" d="M178 0l49 1366h242l412 -1128l417 1128h242l49 -1366h-164l-43 1161l-438 -1161h-127l-438 1176l-37 -1176h-164z" />
-<glyph unicode="N" horiz-adv-x="1529" d="M201 0v1366h168l796 -1114v1114h164v-1366h-168l-796 1098v-1098h-164z" />
-<glyph unicode="O" horiz-adv-x="1628" d="M102 680q0 184 82 344t250 263.5t389 103.5q313 0 508 -196t195 -486q0 -299 -203 -516.5t-518 -217.5q-307 0 -505 207t-198 498zM283 692q0 -221 144 -396t384 -175q242 0 388.5 173t146.5 398q0 223 -144.5 388t-388.5 165q-242 0 -386 -166t-144 -387z" />
-<glyph unicode="P" horiz-adv-x="1155" d="M201 0v1366h395q248 0 367.5 -112.5t119.5 -290.5q0 -205 -134 -322t-353 -117h-227v-524h-168zM369 666h196q170 0 254 73.5t84 208.5q0 125 -81 201t-257 76h-196v-559z" />
-<glyph unicode="Q" horiz-adv-x="1628" d="M104 680q0 184 82 344t248 263.5t385 103.5q315 0 512 -196t197 -486q0 -248 -146.5 -447t-386.5 -262l69 -87q26 -32 80 -83t102 -80t119 -51.5t148 -22.5l-24 -153h-15q-72 0 -141 17q-76 19 -125 42t-107.5 71t-81 70.5t-66.5 76t-46 55.5l-61 71q-37 45 -123 54 q-276 31 -447.5 229.5t-171.5 470.5zM285 692q0 -104 34.5 -204.5t98 -183.5t166 -133t227.5 -50q240 0 388.5 174t148.5 399q0 219 -143.5 385t-387.5 166q-242 0 -387 -166t-145 -387z" />
-<glyph unicode="R" horiz-adv-x="1216" d="M201 0v1366h358q248 0 368 -106.5t120 -266.5q0 -137 -82 -234t-201 -149l414 -610h-199l-391 575h-219v-575h-168zM369 717h215q109 0 195.5 70.5t86.5 189.5q0 106 -82 177t-256 71h-159v-508z" />
-<glyph unicode="S" horiz-adv-x="1042" d="M98 90l45 158q18 -14 50 -34.5t125.5 -54.5t181.5 -34q117 0 194.5 52t77.5 147q0 86 -66.5 151.5t-162.5 114.5l-192 102q-95 53 -161.5 140.5t-66.5 201.5q0 154 118.5 255.5t325.5 101.5q80 0 167 -15.5t134 -32.5l47 -14l-43 -158q-152 70 -311 70q-119 0 -193.5 -49 t-74.5 -139q0 -86 66.5 -152.5t162.5 -114t191.5 -100.5t162 -141t66.5 -209q0 -172 -127 -266.5t-321 -94.5q-106 0 -205 29t-146 57z" />
-<glyph unicode="T" horiz-adv-x="1212" d="M35 1225v141h1143v-141h-492v-1225h-168v1225h-483z" />
-<glyph unicode="U" horiz-adv-x="1472" d="M182 492v874h168v-842q0 -205 105.5 -304t281.5 -99q174 0 279.5 98t105.5 293v854h168v-846q0 -258 -157.5 -401.5t-397.5 -143.5q-248 0 -400.5 126.5t-152.5 390.5z" />
-<glyph unicode="V" horiz-adv-x="1206" d="M29 1366h178l399 -1128l400 1128h172l-494 -1376h-164z" />
-<glyph unicode="W" horiz-adv-x="1935" d="M51 1366h172l336 -1130l326 1130h172l323 -1130l338 1130h168l-420 -1376h-172l-325 1102l-328 -1102h-172z" />
-<glyph unicode="X" horiz-adv-x="1212" d="M51 0l457 680l-457 686h199l358 -551l361 551h192l-456 -682l456 -684h-198l-359 551l-360 -551h-193z" />
-<glyph unicode="Y" horiz-adv-x="1177" d="M16 1366h199l377 -608l381 608h188l-487 -770v-596h-168v594z" />
-<glyph unicode="Z" horiz-adv-x="1185" d="M74 0v96l794 1129h-747v141h962v-96l-784 -1129h797v-141h-1022z" />
-<glyph unicode="[" horiz-adv-x="587" d="M174 -317v1683h375v-113h-242v-1458h242v-112h-375z" />
-<glyph unicode="\" horiz-adv-x="937" d="M68 1366h141l682 -1767h-143z" />
-<glyph unicode="]" horiz-adv-x="587" d="M39 -205h242v1458h-242v113h375v-1683h-375v112z" />
-<glyph unicode="^" horiz-adv-x="1011" d="M16 512l439 879h102l438 -879h-155l-336 676l-336 -676h-152z" />
-<glyph unicode="_" horiz-adv-x="1097" d="M37 -76h1024v-121h-1024v121z" />
-<glyph unicode="`" horiz-adv-x="1032" d="M328 1432h174l207 -340l-95 -56z" />
-<glyph unicode="a" horiz-adv-x="960" d="M74 207q0 141 143 230t410 124v35q0 45 -1 65.5t-8.5 54.5t-22.5 49t-45 28.5t-75 13.5q-150 -2 -289 -102l-49 129q16 12 49 30.5t132.5 50t201.5 31.5q147 0 206.5 -67.5t59.5 -225.5v-415q0 -104 88 -121l15 -2l-53 -129q-164 18 -199 149q-10 -16 -30.5 -37.5 t-57.5 -52.5t-94.5 -50.5t-122.5 -19.5q-117 0 -187.5 65t-70.5 167zM244 217q0 -102 121 -102q125 0 262 159v170q-199 -33 -291 -86t-92 -141z" />
-<glyph unicode="b" horiz-adv-x="1067" d="M152 16v1418l159 28v-637q94 121 267 121q180 0 288.5 -129t108.5 -325q0 -215 -133 -366t-381 -151q-145 0 -309 41zM311 129q70 -20 158 -20q152 0 245 97t93 275q0 150 -68.5 238t-181.5 88q-135 0 -246 -123v-555z" />
-<glyph unicode="c" horiz-adv-x="933" d="M90 451q0 201 128 348t343 147q88 0 163 -24.5t107 -49.5l31 -26l-71 -125q-10 10 -31 24.5t-83.5 38t-125.5 23.5q-133 0 -213 -100.5t-80 -247.5q0 -145 81 -244.5t218 -99.5q143 4 250 98l55 -119q-12 -12 -35.5 -32.5t-106.5 -53.5t-175 -33q-201 0 -328 135.5 t-127 340.5z" />
-<glyph unicode="d" horiz-adv-x="1091" d="M92 430q0 213 133 364.5t369 151.5q100 0 178 -33v521l160 28v-1177q0 -49 10 -121t21 -119l10 -45l-158 -14q-18 84 -29 147q-98 -158 -299 -158q-176 0 -285.5 130t-109.5 325zM262 440q0 -150 69.5 -237.5t176.5 -87.5q66 0 128 36.5t89 68.5t47 63v397 q-6 131 -176 131q-150 0 -242 -98.5t-92 -272.5z" />
-<glyph unicode="e" horiz-adv-x="997" d="M92 440q0 219 124 362.5t319 143.5q164 0 266 -109.5t102 -301.5l-98 -29l-543 -72q10 -145 91 -232t214 -87q70 0 142.5 28.5t109.5 57.5l37 30l47 -122q-14 -14 -43 -37t-121 -60t-190 -37q-217 0 -337 135t-120 330zM264 557l463 59q0 8 -3 21.5t-15.5 47.5t-33 59.5 t-60.5 47t-91 21.5q-106 0 -174 -71.5t-86 -184.5z" />
-<glyph unicode="f" horiz-adv-x="669" d="M57 793v84l146 55v98q0 217 103.5 339t277.5 122q68 0 132 -19.5t95 -37.5l31 -21l-74 -127q-92 66 -188 66q-94 0 -156 -76t-62 -238v-116h261v-129h-261v-793h-159v793h-146z" />
-<glyph unicode="g" horiz-adv-x="1026" d="M59 -240q0 158 240 281q-154 45 -154 125t142 164q-84 43 -131 120.5t-47 174.5q0 145 111.5 233t268.5 88q53 0 134.5 -19.5t130.5 -19.5h98q27 0 56.5 5.5t45.5 9.5l19 6l14 -144h-117q-35 0 -75 4q70 -76 69 -180q0 -152 -118.5 -235.5t-272.5 -83.5q-39 0 -74 6 q-82 -59 -82 -86t58.5 -46.5t199.5 -49.5q8 -2 13 -2q82 -18 133 -34t108.5 -44.5t86 -73.5t28.5 -104q0 -139 -146.5 -239.5t-344.5 -100.5q-162 0 -278 64t-116 181zM207 -217q0 -76 80 -110.5t178 -34.5q129 0 222 58t93 136q0 61 -61.5 94t-183.5 60q-41 10 -103 20 q-57 -31 -83.5 -47t-66.5 -47t-57.5 -61.5t-17.5 -67.5zM272 614q0 -84 55.5 -143t159.5 -59q94 0 153.5 50t59.5 138q0 86 -57 154.5t-160 68.5q-96 0 -153.5 -59.5t-57.5 -149.5z" />
-<glyph unicode="h" horiz-adv-x="1081" d="M156 0v1434l159 28v-704q176 188 379 188q111 0 176.5 -67.5t65.5 -208.5v-670h-160v625q0 180 -125 180q-127 0 -336 -195v-610h-159z" />
-<glyph unicode="i" horiz-adv-x="471" d="M127 1266q0 45 33 77.5t78 32.5t77.5 -32.5t32.5 -77.5t-32.5 -78t-77.5 -33t-78 33t-33 78zM156 0v922h159v-922h-159z" />
-<glyph unicode="j" horiz-adv-x="471" d="M-66 -352q221 43 222 338v936h159v-906q0 -233 -84 -354t-247 -147zM125 1266q0 45 31.5 77.5t79 32.5t79 -32.5t31.5 -77.5t-31.5 -78t-79 -33t-79 33t-31.5 78z" />
-<glyph unicode="k" horiz-adv-x="966" d="M156 0v1434l159 28v-895h23l364 355h213l-430 -408l469 -514h-215l-399 449h-25v-449h-159z" />
-<glyph unicode="l" horiz-adv-x="471" d="M156 0v1434l159 28v-1462h-159z" />
-<glyph unicode="m" horiz-adv-x="1646" d="M152 0v907l159 29v-178q176 188 371 188q184 0 221 -184q184 184 367 184q104 0 167.5 -67.5t63.5 -208.5v-670h-160v625q0 180 -114 180q-121 0 -314 -180v-625h-159v625q0 180 -115 180q-133 0 -328 -195v-610h-159z" />
-<glyph unicode="n" horiz-adv-x="1079" d="M152 0v907l159 29v-180q184 190 381 190q111 0 176.5 -67.5t65.5 -208.5v-670h-160v625q0 180 -125 180q-135 0 -338 -197v-608h-159z" />
-<glyph unicode="o" horiz-adv-x="1091" d="M90 457q0 121 49 229.5t156.5 184t253.5 75.5q205 0 328.5 -139t123.5 -328q0 -119 -48 -230.5t-157.5 -192.5t-254.5 -81q-205 0 -328 143.5t-123 338.5zM258 475.5q0 -149.5 74 -255t215 -105.5q129 0 208 94t79 244q0 147 -72 250.5t-217 103.5q-131 0 -209 -91 t-78 -240.5z" />
-<glyph unicode="p" horiz-adv-x="1073" d="M152 -475v1382l155 29v-143q37 66 108.5 109.5t174.5 43.5q176 0 283.5 -131t107.5 -328q0 -215 -128 -363.5t-335 -148.5q-133 0 -207 58v-479zM311 231q0 -121 174 -120q150 0 238 97t88 267q0 152 -67.5 240t-174.5 88q-150 0 -258 -158v-414z" />
-<glyph unicode="q" horiz-adv-x="1067" d="M92 430q0 215 133 365.5t381 150.5l309 -41v-1351l-159 -29v573q-84 -123 -267 -123q-180 0 -288.5 129t-108.5 326zM260 440q0 -147 68.5 -234t181.5 -87q131 0 246 121v551q-70 20 -158 20q-152 0 -245 -96.5t-93 -274.5z" />
-<glyph unicode="r" horiz-adv-x="684" d="M152 0v907l159 29v-182q39 70 107.5 131t161.5 61q23 0 43 -4t28 -8l8 -6l-41 -172q-41 16 -77 16q-121 0 -230 -188v-584h-159z" />
-<glyph unicode="s" horiz-adv-x="804" d="M86 57l35 142q117 -90 264 -90q84 0 128 32.5t44 87.5q0 53 -47 94.5t-112.5 71t-132 63.5t-114 93t-47.5 141q0 113 84 183.5t252 70.5q70 0 133.5 -12t94.5 -25l28 -14l-43 -135q-111 53 -225 53q-80 0 -121 -29.5t-41 -78.5q0 -51 47 -90.5t113 -68t132.5 -63 t113.5 -96t47 -145.5q0 -123 -91 -195t-247 -72q-82 0 -155.5 20.5t-106.5 41.5z" />
-<glyph unicode="t" horiz-adv-x="741" d="M66 793v86l131 53v205l159 39v-254h299v-129h-299v-506q0 -172 113 -172q94 0 195 84l38 -129q-12 -10 -35.5 -25.5t-93 -42.5t-137.5 -27q-240 0 -239 269v549h-131z" />
-<glyph unicode="u" d="M143 252v670h160v-625q0 -180 131 -180q139 0 311 172v633h160v-637q0 -49 10.5 -121t20.5 -119l10 -45l-158 -14q-23 102 -30 168q-166 -178 -365 -179q-250 1 -250 277z" />
-<glyph unicode="v" horiz-adv-x="933" d="M37 922h168l244 -723l290 723h166l-389 -932h-151z" />
-<glyph unicode="w" horiz-adv-x="1517" d="M43 922h168l219 -742l264 742h144l221 -742l260 742h166l-357 -932h-155l-219 702l-260 -702h-156z" />
-<glyph unicode="x" horiz-adv-x="933" d="M55 0l318 461l-318 461h191l223 -338l225 338h185l-318 -457l318 -465h-183l-231 346l-234 -346h-176z" />
-<glyph unicode="y" horiz-adv-x="935" d="M33 922h174l268 -652l260 652h168l-411 -992q-74 -178 -167.5 -288.5t-230.5 -126.5l-51 133q180 37 289 282l59 138z" />
-<glyph unicode="z" horiz-adv-x="888" d="M84 96l491 688h-475v138h686v-97l-499 -688h518v-137h-719z" />
-<glyph unicode="{" horiz-adv-x="696" d="M33 481v113q53 2 96 24.5t69.5 52t46 85t29 95.5t14.5 109.5t5 102.5v98v29q0 166 113.5 247t304.5 81v-105q-98 -6 -153.5 -24.5t-83.5 -63.5t-35 -95t-7 -149q0 -457 -219 -540v-4q94 -37 156.5 -171.5t62.5 -392.5q0 -98 7 -148t35 -94t83 -62.5t154 -26.5v-105 q-418 0 -418 328v29v100q0 37 -5 106.5t-14.5 112.5t-29 99.5t-46 88t-69.5 55t-96 25.5z" />
-<glyph unicode="|" horiz-adv-x="477" d="M172 -461v1995h133v-1995h-133z" />
-<glyph unicode="}" horiz-adv-x="696" d="M-14 -358q98 8 153.5 26.5t83 62.5t34.5 94t7 148q0 258 62.5 392.5t156.5 171.5v4q-219 84 -219 540q0 98 -7 148.5t-34.5 95.5t-83 63.5t-153.5 24.5v105q190 0 303.5 -81t113.5 -247v-29v-98q0 -35 5.5 -102.5t14.5 -109.5t28.5 -95.5t46 -84t69.5 -53t97 -24.5v-113 q-53 -2 -96.5 -25.5t-70 -55t-46 -88t-28.5 -99.5t-14.5 -113.5t-5.5 -105.5v-100v-29q0 -328 -417 -328v105z" />
-<glyph unicode="~" horiz-adv-x="1191" d="M131 358q0 317 266 318q80 0 141.5 -31t93.5 -68.5t76 -68.5t91 -31q135 0 135 191h131q0 -317 -266 -318q-80 0 -141.5 31t-93.5 68.5t-76 68.5t-91 31q-135 0 -135 -191h-131z" />
-<glyph unicode="&#xa1;" horiz-adv-x="524" d="M137 823q0 51 36 87t87 36t87 -36t36 -87t-36 -87t-87 -36t-87 36t-36 87zM166 -469l27 989h141l22 -989h-190z" />
-<glyph unicode="&#xa2;" horiz-adv-x="921" d="M86 569q0 162 97.5 286t269.5 146l6 181h90l-4 -178q176 -8 278 -113l6 -8l-92 -113q-76 82 -196 94l-17 -588q139 4 246 99l55 -119q-12 -12 -35.5 -31.5t-102.5 -53.5t-167 -34l-4 -182h-90l4 188q-156 27 -250 146.5t-94 279.5zM254 575q0 -100 47 -179t133 -107 l15 571q-92 -20 -143.5 -99.5t-51.5 -185.5z" />
-<glyph unicode="&#xa3;" horiz-adv-x="1101" d="M82 111q14 4 35.5 14t61.5 57t48 113l23 194h-125v103h137l23 170q49 395 360 395q182 0 295 -113l10 -10l-92 -112q-8 10 -25.5 26.5t-75 43t-118.5 26.5q-84 0 -133 -57.5t-64 -204.5l-16 -164h381l-10 -103h-381q-8 -90 -26.5 -174t-33.5 -122l-14 -39 q184 -66 322 -66q98 0 152 53.5t67 184.5h129q-8 -76 -24.5 -136.5t-50.5 -119t-96.5 -90t-148.5 -31.5q-82 0 -232.5 40t-199.5 40q-61 0 -137 -29z" />
-<glyph unicode="&#xa5;" horiz-adv-x="1138" d="M82 1133h182l305 -496l312 496h170l-303 -478h215v-102h-281l-35 -57v-82h316v-103h-316v-311h-160v311h-294v103h294v80l-38 59h-256v102h192z" />
-<glyph unicode="&#xa6;" horiz-adv-x="507" d="M180 354h148v-733h-148v733zM180 672v733h148v-733h-148z" />
-<glyph unicode="&#xa7;" horiz-adv-x="1001" d="M57 -379l62 105q129 -96 270 -97q125 0 190.5 91.5t65.5 236.5q0 70 -10 121l-113 620q-23 131 -22 205q0 135 53 213l113 -22q-35 -76 -35 -189q0 -53 10 -114l123 -697q12 -70 12 -139q0 -190 -96 -315t-287 -125q-86 0 -170 26.5t-125 52.5zM199 948q0 193 97 318 t286 125q86 0 170 -27t125 -53l41 -27l-62 -104q-129 96 -270 96q-125 0 -191.5 -92t-66.5 -236q0 -59 12 -121l113 -620q20 -119 20 -205q0 -137 -51 -213l-113 23q35 82 35 188q0 53 -10 115l-123 696q-12 69 -12 137z" />
-<glyph unicode="&#xa8;" horiz-adv-x="1032" d="M225 1266q0 43 32 73.5t75 30.5q41 0 72.5 -30.5t31.5 -73.5t-31.5 -74t-72.5 -31q-43 0 -75 31t-32 74zM594 1266q0 43 31.5 73.5t72.5 30.5q43 0 75 -30.5t32 -73.5t-32 -74t-75 -31q-41 0 -72.5 31t-31.5 74z" />
-<glyph unicode="&#xa9;" horiz-adv-x="1593" d="M90 682q0 293 207 500t500 207t499.5 -207t206.5 -500t-206.5 -500t-499.5 -207t-500 207t-207 500zM195 682q0 -254 175 -433t427 -179t427 179t175 433t-175 433t-427 179t-427 -179t-175 -433zM401 676q0 172 111 299t307 127q180 0 285 -113l10 -10l-92 -113l-28 27 q-17 16 -73.5 43t-113.5 27q-113 0 -175.5 -78t-62.5 -193q0 -117 72 -197.5t190 -80.5q129 4 224 98l55 -119q-10 -12 -31.5 -32.5t-97.5 -53.5t-162 -33q-182 0 -300 116t-118 286z" />
-<glyph unicode="&#xaa;" horiz-adv-x="790" d="M96 874q0 205 389 259v22q0 70 -18 99.5t-80 29.5q-49 0 -101.5 -20.5t-80.5 -40.5l-29 -21l-35 111q111 78 283 78q111 0 155 -47.5t44 -157.5v-283q8 -74 73 -80l-41 -106q-131 6 -159 100q-84 -106 -215 -106q-84 0 -134.5 44.5t-50.5 118.5zM242 885q0 -68 71 -68 q76 0 172 113v108q-127 -23 -185 -59.5t-58 -93.5z" />
-<glyph unicode="&#xab;" horiz-adv-x="1046" d="M49 510v8q35 27 285 303l115 125l110 -31l-309 -401l309 -401l-110 -31l-168 182l-111 121l-60 66l-38 38q-11 11 -23 21zM440 510v8q35 27 285 303l115 125l110 -31l-309 -401l309 -401l-110 -31l-168 182l-111 121l-60 66l-38 38q-11 11 -23 21z" />
-<glyph unicode="&#xac;" horiz-adv-x="1177" d="M111 664v133h938v-570h-142v437h-796z" />
-<glyph unicode="&#xad;" horiz-adv-x="692" d="M115 438v148h463v-148h-463z" />
-<glyph unicode="&#xae;" horiz-adv-x="884" d="M88 1087.5q0 145.5 104.5 250t250 104.5t250 -104.5t104.5 -250t-104.5 -250t-250 -104.5t-250 104.5t-104.5 250zM158 1087.5q0 -120.5 83 -207.5t199.5 -87t201.5 87t85 207q0 119 -85 206t-201.5 87t-199.5 -86t-83 -206.5zM311 918v348h123q143 0 144 -105 q0 -68 -68 -100l104 -143h-94l-88 126h-37v-126h-84zM395 1100h45q51 0 52 53q0 55 -66 55h-31v-108z" />
-<glyph unicode="&#xaf;" horiz-adv-x="1011" d="M272 1204v125h467v-125h-467z" />
-<glyph unicode="&#xb0;" horiz-adv-x="679" d="M90 1144.5q0 102.5 73 174.5t177 72t177 -72t73 -174.5t-73 -174t-177 -71.5t-177 71.5t-73 174zM193 1144.5q0 -63.5 43 -107.5t104 -44t104 44t43 107.5t-43 107.5t-104 44t-104 -44t-43 -107.5z" />
-<glyph unicode="&#xb1;" d="M78 641v133h381v369h141v-369h385v-133h-385v-395h-141v395h-381zM80 0v133h907v-133h-907z" />
-<glyph unicode="&#xb2;" horiz-adv-x="698" d="M57 836q213 207 271 274q113 139 112 248q0 63 -37.5 98t-97.5 35q-39 0 -79 -18.5t-62 -36.5l-21 -19l-71 82q10 12 30.5 30.5t90 50.5t143.5 32q117 0 182.5 -66.5t65.5 -171.5q0 -96 -65.5 -201.5t-248.5 -289.5h369v-113h-571z" />
-<glyph unicode="&#xb3;" horiz-adv-x="661" d="M49 819l55 99q78 -45 172 -46q74 0 117 34t43 89q0 63 -58.5 97t-144.5 34h-47v111q80 6 146.5 53t66.5 117q0 88 -102 88q-39 0 -80 -12.5t-61 -24.5l-21 -14l-53 88q96 80 231 80q100 0 166 -52.5t66 -134.5q0 -131 -166 -213q94 -20 148.5 -77.5t54.5 -135.5 q0 -102 -88 -172.5t-220 -70.5q-59 0 -115.5 15t-82.5 32z" />
-<glyph unicode="&#xb4;" horiz-adv-x="1032" d="M324 1092l206 340h175l-287 -396z" />
-<glyph unicode="&#xb5;" horiz-adv-x="1148" d="M145 -442q20 199 21 362v1002h160v-625q0 -180 131 -180q139 0 311 172v633h160v-684q0 -82 22.5 -102.5t110.5 -20.5v-129q-61 -10 -98 -11q-172 0 -191 170q-164 -170 -356 -170q-61 0 -111 19q2 -88 12.5 -244t10.5 -192h-183z" />
-<glyph unicode="&#x3bc;" horiz-adv-x="1148" d="M145 -442q20 199 21 362v1002h160v-625q0 -180 131 -180q139 0 311 172v633h160v-684q0 -82 22.5 -102.5t110.5 -20.5v-129q-61 -10 -98 -11q-172 0 -191 170q-164 -170 -356 -170q-61 0 -111 19q2 -88 12.5 -244t10.5 -192h-183z" />
-<glyph unicode="&#xb6;" horiz-adv-x="1353" d="M70 864q0 203 154.5 352.5t430.5 149.5h596v-117h-151v-1249h-127v1249h-154v-1290q0 -444 -358 -444l-31 129q133 0 193.5 73.5t60.5 241.5v408h-18q-291 0 -443.5 145t-152.5 352z" />
-<glyph unicode="&#xb7;" horiz-adv-x="512" d="M133 520q0 51 36 87t87 36t87 -36t36 -87t-36 -87t-87 -36t-87 36t-36 87z" />
-<glyph unicode="&#xb8;" horiz-adv-x="1032" d="M336 -422l43 100q66 -57 143 -57q45 0 75 19.5t30 48.5q0 23 -26 41t-57.5 30.5t-57 36t-25.5 53.5q0 25 37 109l18 41h102l-16 -35q-23 -49 -22 -67q0 -23 27.5 -40.5t59 -30.5t59.5 -45t28 -77q0 -76 -65.5 -133t-162.5 -57q-49 0 -97 15t-71 32z" />
-<glyph unicode="&#xb9;" horiz-adv-x="575" d="M68 770v104h172v619h-158v104h297v-723h162v-104h-473z" />
-<glyph unicode="&#xba;" horiz-adv-x="845" d="M90 1049q0 133 90 237.5t246 104.5q150 0 240 -97.5t90 -230.5t-89 -242.5t-247 -109.5q-150 0 -240 100.5t-90 237.5zM233 1061q0 -100 48.5 -172t142.5 -72q86 0 137 63.5t51 163.5q0 98 -48 169t-142 71q-86 0 -137.5 -61.5t-51.5 -161.5z" />
-<glyph unicode="&#xbb;" horiz-adv-x="1048" d="M98 113l310 401l-310 401l111 31q362 -397 389 -420q4 -2 10 -8v-8q-12 -10 -22 -21l-38 -38l-61 -66l-110 -121l-168 -182zM489 113l310 401l-310 401l111 31q362 -397 389 -420q4 -2 10 -8v-8q-12 -10 -22 -21l-38 -38l-60 -66l-111 -121l-168 -182z" />
-<glyph unicode="&#xbc;" horiz-adv-x="1671" d="M96 549v104h172v619h-157v104h297v-723h161v-104h-473zM354 0l813 1407l117 -43l-784 -1364h-146zM952 295l398 539h125v-510h122v-109h-122v-215h-136v215h-376zM1098 324h241v325z" />
-<glyph unicode="&#xbd;" horiz-adv-x="1792" d="M94 549v104h172v619h-157v104h297v-723h161v-104h-473zM354 0l813 1407l117 -43l-784 -1364h-146zM1137 66q213 207 270 274q113 139 113 248q0 63 -38 98t-98 35q-39 0 -78.5 -18.5t-60.5 -36.5l-22 -19l-72 82q10 12 30.5 30.5t90 50.5t143.5 32q117 0 182.5 -66.5 t65.5 -171.5q0 -96 -65.5 -201.5t-247.5 -289.5h368v-113h-571z" />
-<glyph unicode="&#xbe;" horiz-adv-x="1648" d="M82 598l55 98q78 -45 172 -45q74 0 117 34t43 89q0 63 -58.5 97t-144.5 34h-47v111q80 6 146.5 53t66.5 117q0 88 -102 88q-39 0 -80 -12.5t-62 -24.5l-20 -14l-53 88q96 80 231 80q100 0 166 -52.5t66 -134.5q0 -131 -166 -213q94 -20 148 -77.5t54 -135.5 q0 -102 -88 -172.5t-219 -70.5q-59 0 -115.5 15t-82.5 32zM332 0l813 1407l117 -43l-785 -1364h-145zM930 295l397 539h125v-510h123v-109h-123v-215h-135v215h-377zM1075 324h242v325z" />
-<glyph unicode="&#xbf;" horiz-adv-x="716" d="M72 -94q0 49 32.5 101t79.5 103l96 106q48 56 80.5 135t32.5 169h129q6 -29 6 -69q0 -90 -42 -176.5t-92 -141.5t-92 -112.5t-42 -96.5q0 -115 293 -235l82 -31l-35 -152q-20 6 -56 18.5t-127 52.5t-161 83t-127 110.5t-57 135.5zM328 823q0 51 35.5 87t87 36t87 -36 t35.5 -87t-35.5 -87t-87 -36t-87 36t-35.5 87z" />
-<glyph unicode="&#xc0;" horiz-adv-x="1267" d="M29 0l524 1376h162l524 -1376h-176l-154 412h-557l-153 -412h-170zM356 1616l64 147l395 -194l-39 -99zM406 553h450l-225 602z" />
-<glyph unicode="&#xc1;" horiz-adv-x="1267" d="M29 0l524 1376h162l524 -1376h-176l-154 412h-557l-153 -412h-170zM406 553h450l-225 602zM446 1569l396 194l63 -147l-420 -146z" />
-<glyph unicode="&#xc2;" horiz-adv-x="1267" d="M29 0l524 1376h162l524 -1376h-176l-154 412h-557l-153 -412h-170zM303 1548l258 236h141l256 -236l-92 -78l-233 203l-238 -203zM406 553h450l-225 602z" />
-<glyph unicode="&#xc3;" horiz-adv-x="1267" d="M29 0l524 1376h162l524 -1376h-176l-154 412h-557l-153 -412h-170zM268 1501v12q0 29 6.5 60t23.5 75t63.5 71.5t113.5 27.5q70 0 123 -34t95 -67.5t83 -33.5q90 0 90 119v16h127v-14q0 -29 -6 -61t-24.5 -77t-65.5 -73.5t-116.5 -28.5t-122 34t-92.5 67.5t-81 33.5 q-90 0 -90 -115v-12h-127zM406 553h450l-225 602z" />
-<glyph unicode="&#xc4;" horiz-adv-x="1267" d="M29 0l524 1376h162l524 -1376h-176l-154 412h-557l-153 -412h-170zM291 1624q0 43 31.5 74t74.5 31q41 0 73 -31t32 -74t-32 -73.5t-73 -30.5q-43 0 -74.5 30.5t-31.5 73.5zM406 553h450l-225 602zM762 1624q0 43 31.5 74t72.5 31q43 0 75 -31t32 -74t-32 -73.5 t-75 -30.5q-41 0 -72.5 30.5t-31.5 73.5z" />
-<glyph unicode="&#xc5;" horiz-adv-x="1267" d="M29 0l524 1376h162l524 -1376h-176l-154 412h-557l-153 -412h-170zM406 553h450l-225 602zM438 1622q0 66 50.5 114t142.5 48t142 -48t50 -114q0 -68 -50 -117t-142 -49t-142.5 49t-50.5 117zM535 1620q0 -39 24.5 -66.5t71.5 -27.5q45 0 71.5 28.5t26.5 65.5 q0 39 -25.5 66.5t-72.5 27.5q-49 0 -72.5 -27.5t-23.5 -66.5z" />
-<glyph unicode="&#xc6;" horiz-adv-x="1767" d="M-4 0l762 1366h905v-141h-637v-457h504v-141h-504v-486h635v-141h-803v457h-430l-252 -457h-180zM506 598h352v637z" />
-<glyph unicode="&#xc7;" horiz-adv-x="1384" d="M104 674q0 305 202 511t532 206q121 0 234.5 -30t164.5 -58l53 -29l-67 -152q-18 14 -51 35t-136.5 54.5t-210.5 33.5q-172 0 -298 -83t-184 -207t-58 -269q0 -238 154.5 -401.5t389.5 -163.5q211 0 394 127l14 10l70 -127q-23 -18 -63 -44t-168 -69t-261 -43h-4l-4 -10 q-23 -49 -23 -67q0 -23 28 -40.5t59.5 -30.5t59 -45t27.5 -77q0 -76 -65.5 -133t-161.5 -57q-49 0 -97 15t-71 32l-22 16l43 100q66 -57 143 -57q45 0 74.5 19.5t29.5 48.5q0 23 -25.5 41t-57 30.5t-57 36t-25.5 53.5q0 25 36 109l11 23q-270 33 -439.5 223t-169.5 469z" />
-<glyph unicode="&#xc8;" horiz-adv-x="1110" d="M201 0v1366h805v-141h-637v-457h503v-141h-503v-486h635v-141h-803zM340 1616l63 147l396 -194l-39 -99z" />
-<glyph unicode="&#xc9;" horiz-adv-x="1110" d="M201 0v1366h805v-141h-637v-457h503v-141h-503v-486h635v-141h-803zM430 1569l395 194l64 -147l-420 -146z" />
-<glyph unicode="&#xca;" horiz-adv-x="1110" d="M201 0v1366h805v-141h-637v-457h503v-141h-503v-486h635v-141h-803zM287 1548l258 236h141l256 -236l-92 -78l-234 203l-237 -203z" />
-<glyph unicode="&#xcb;" horiz-adv-x="1110" d="M201 0v1366h805v-141h-637v-457h503v-141h-503v-486h635v-141h-803zM274 1624q0 43 32 74t75 31q41 0 72.5 -31t31.5 -74t-31.5 -73.5t-72.5 -30.5q-43 0 -75 30.5t-32 73.5zM745 1624q0 43 32 74t73 31q43 0 74.5 -31t31.5 -74t-31.5 -73.5t-74.5 -30.5q-41 0 -73 30.5 t-32 73.5z" />
-<glyph unicode="&#xcc;" horiz-adv-x="569" d="M10 1616l64 147l395 -194l-39 -99zM201 0v1366h168v-1366h-168z" />
-<glyph unicode="&#xcd;" horiz-adv-x="569" d="M100 1569l396 194l63 -147l-420 -146zM201 0v1366h168v-1366h-168z" />
-<glyph unicode="&#xce;" horiz-adv-x="569" d="M-43 1548l258 236h141l256 -236l-92 -78l-233 203l-238 -203zM201 0v1366h168v-1366h-168z" />
-<glyph unicode="&#xcf;" horiz-adv-x="569" d="M-2 1624q0 43 31.5 74t74.5 31q41 0 73 -31t32 -74t-32 -73.5t-73 -30.5q-43 0 -74.5 30.5t-31.5 73.5zM201 0v1366h168v-1366h-168zM367 1624q0 43 31.5 74t72.5 31q43 0 75 -31t32 -74t-32 -73.5t-75 -30.5q-41 0 -72.5 30.5t-31.5 73.5z" />
-<glyph unicode="&#xd0;" horiz-adv-x="1497" d="M70 623v141h147v602h414q147 0 277 -36t241 -111.5t176.5 -207.5t65.5 -306q0 -336 -229.5 -520.5t-608.5 -184.5h-336v623h-147zM385 141h147q350 0 513 149.5t163 395.5q0 250 -157.5 394.5t-448.5 144.5h-217v-461h352v-141h-352v-482z" />
-<glyph unicode="&#xd1;" horiz-adv-x="1529" d="M201 0v1366h168l796 -1114v1114h164v-1366h-168l-796 1098v-1098h-164zM401 1501v12q0 29 6.5 60t24 75t63.5 71.5t113 27.5q70 0 123 -34t95 -67.5t83 -33.5q90 0 90 119v16h127v-14q0 -29 -6 -61t-24.5 -77t-65.5 -73.5t-116.5 -28.5t-122 34t-92.5 67.5t-81 33.5 q-90 0 -90 -115v-12h-127z" />
-<glyph unicode="&#xd2;" horiz-adv-x="1628" d="M102 680q0 184 82 344t250 263.5t389 103.5q313 0 508 -196t195 -486q0 -299 -203 -516.5t-518 -217.5q-307 0 -505 207t-198 498zM283 692q0 -221 144 -396t384 -175q242 0 388.5 173t146.5 398q0 223 -144.5 388t-388.5 165q-242 0 -386 -166t-144 -387zM539 1616 l63 147l395 -194l-39 -99z" />
-<glyph unicode="&#xd3;" horiz-adv-x="1628" d="M102 680q0 184 82 344t250 263.5t389 103.5q313 0 508 -196t195 -486q0 -299 -203 -516.5t-518 -217.5q-307 0 -505 207t-198 498zM283 692q0 -221 144 -396t384 -175q242 0 388.5 173t146.5 398q0 223 -144.5 388t-388.5 165q-242 0 -386 -166t-144 -387zM629 1569 l395 194l63 -147l-419 -146z" />
-<glyph unicode="&#xd4;" horiz-adv-x="1628" d="M102 680q0 184 82 344t250 263.5t389 103.5q313 0 508 -196t195 -486q0 -299 -203 -516.5t-518 -217.5q-307 0 -505 207t-198 498zM283 692q0 -221 144 -396t384 -175q242 0 388.5 173t146.5 398q0 223 -144.5 388t-388.5 165q-242 0 -386 -166t-144 -387zM485 1548 l258 236h142l256 -236l-92 -78l-234 203l-237 -203z" />
-<glyph unicode="&#xd5;" horiz-adv-x="1628" d="M102 680q0 184 82 344t250 263.5t389 103.5q313 0 508 -196t195 -486q0 -299 -203 -516.5t-518 -217.5q-307 0 -505 207t-198 498zM283 692q0 -221 144 -396t384 -175q242 0 388.5 173t146.5 398q0 223 -144.5 388t-388.5 165q-242 0 -386 -166t-144 -387zM451 1501v12 q0 29 6 60t23.5 75t63.5 71.5t113 27.5q70 0 123.5 -34t95.5 -67.5t82 -33.5q90 0 91 119v16h127v-14q0 -29 -6.5 -61t-25 -77t-65.5 -73.5t-116.5 -28.5t-122 34t-92 67.5t-80.5 33.5q-90 0 -90 -115v-12h-127z" />
-<glyph unicode="&#xd6;" horiz-adv-x="1628" d="M102 680q0 184 82 344t250 263.5t389 103.5q313 0 508 -196t195 -486q0 -299 -203 -516.5t-518 -217.5q-307 0 -505 207t-198 498zM283 692q0 -221 144 -396t384 -175q242 0 388.5 173t146.5 398q0 223 -144.5 388t-388.5 165q-242 0 -386 -166t-144 -387zM473 1624 q0 43 32 74t75 31q41 0 72.5 -31t31.5 -74t-31.5 -73.5t-72.5 -30.5q-43 0 -75 30.5t-32 73.5zM944 1624q0 43 32 74t73 31q43 0 74.5 -31t31.5 -74t-31.5 -73.5t-74.5 -30.5q-41 0 -73 30.5t-32 73.5z" />
-<glyph unicode="&#xd7;" d="M82 143l358 369l-358 371l90 94l360 -371l361 371l90 -94l-360 -371l360 -369l-92 -94l-359 369l-358 -369z" />
-<glyph unicode="&#xd8;" horiz-adv-x="1628" d="M102 680q0 184 82 344t250 263.5t389 103.5q215 0 381 -99l103 135h135l-150 -196q233 -199 234 -522q0 -299 -203 -516.5t-518 -217.5q-219 0 -385 109l-111 -145h-137l160 211q-230 206 -230 530zM283 692q0 -238 153 -407l668 878q-125 82 -291 82q-242 0 -386 -167 t-144 -386zM516 211q131 -90 295 -90q242 0 388.5 173t146.5 398q0 240 -158 402z" />
-<glyph unicode="&#xd9;" horiz-adv-x="1472" d="M182 492v874h168v-842q0 -205 105.5 -304t281.5 -99q174 0 279.5 98t105.5 293v854h168v-846q0 -258 -157.5 -401.5t-397.5 -143.5q-248 0 -400.5 126.5t-152.5 390.5zM461 1616l63 147l396 -194l-39 -99z" />
-<glyph unicode="&#xda;" horiz-adv-x="1472" d="M182 492v874h168v-842q0 -205 105.5 -304t281.5 -99q174 0 279.5 98t105.5 293v854h168v-846q0 -258 -157.5 -401.5t-397.5 -143.5q-248 0 -400.5 126.5t-152.5 390.5zM551 1569l395 194l64 -147l-420 -146z" />
-<glyph unicode="&#xdb;" horiz-adv-x="1472" d="M182 492v874h168v-842q0 -205 105.5 -304t281.5 -99q174 0 279.5 98t105.5 293v854h168v-846q0 -258 -157.5 -401.5t-397.5 -143.5q-248 0 -400.5 126.5t-152.5 390.5zM408 1548l258 236h141l256 -236l-92 -78l-234 203l-237 -203z" />
-<glyph unicode="&#xdc;" horiz-adv-x="1472" d="M182 492v874h168v-842q0 -205 105.5 -304t281.5 -99q174 0 279.5 98t105.5 293v854h168v-846q0 -258 -157.5 -401.5t-397.5 -143.5q-248 0 -400.5 126.5t-152.5 390.5zM395 1624q0 43 32 74t75 31q41 0 72.5 -31t31.5 -74t-31.5 -73.5t-72.5 -30.5q-43 0 -75 30.5 t-32 73.5zM866 1624q0 43 32 74t73 31q43 0 74.5 -31t31.5 -74t-31.5 -73.5t-74.5 -30.5q-41 0 -73 30.5t-32 73.5z" />
-<glyph unicode="&#xdd;" horiz-adv-x="1177" d="M16 1366h199l377 -608l381 608h188l-487 -770v-596h-168v594zM416 1569l395 194l63 -147l-419 -146z" />
-<glyph unicode="&#xde;" horiz-adv-x="1148" d="M201 0v1366h168v-311h258q242 0 349 -101.5t107 -261.5q0 -188 -121.5 -292.5t-334.5 -104.5h-258v-295h-168zM369 436h227q307 0 307 242q0 236 -307 235h-227v-477z" />
-<glyph unicode="&#xdf;" horiz-adv-x="1157" d="M57 793v84l146 55v78q0 219 102.5 339.5t292.5 120.5q164 0 255 -85t91 -199q0 -76 -49 -150l-98 -142q-49 -69 -49 -134q0 -57 35.5 -107.5t86.5 -90.5l102 -83q50 -43 86 -103.5t36 -133.5q0 -123 -91.5 -195t-242.5 -72q-78 0 -144.5 18.5t-95.5 39.5l-28 18l34 142 q102 -84 238 -84q78 0 120 33.5t42 90.5q0 51 -35 97.5t-86 85.5l-102 81q-50 42 -84.5 103.5t-34.5 134.5q0 68 29.5 131.5t66.5 103.5t66.5 94t29.5 107q0 76 -55 118t-133 42q-100 0 -163 -76.5t-63 -236.5v-1018h-159v793h-146z" />
-<glyph unicode="&#xe0;" horiz-adv-x="960" d="M74 207q0 141 143 230t410 124v35q0 45 -1 65.5t-8.5 54.5t-22.5 49t-45 28.5t-75 13.5q-150 -2 -289 -102l-49 129q16 12 49 30.5t132.5 50t201.5 31.5q147 0 206.5 -67.5t59.5 -225.5v-415q0 -104 88 -121l15 -2l-53 -129q-164 18 -199 149q-10 -16 -30.5 -37.5 t-57.5 -52.5t-94.5 -50.5t-122.5 -19.5q-117 0 -187.5 65t-70.5 167zM170 1432h174l207 -340l-94 -56zM244 217q0 -102 121 -102q125 0 262 159v170q-199 -33 -291 -86t-92 -141z" />
-<glyph unicode="&#xe1;" horiz-adv-x="960" d="M74 207q0 141 143 230t410 124v35q0 45 -1 65.5t-8.5 54.5t-22.5 49t-45 28.5t-75 13.5q-150 -2 -289 -102l-49 129q16 12 49 30.5t132.5 50t201.5 31.5q147 0 206.5 -67.5t59.5 -225.5v-415q0 -104 88 -121l15 -2l-53 -129q-164 18 -199 149q-10 -16 -30.5 -37.5 t-57.5 -52.5t-94.5 -50.5t-122.5 -19.5q-117 0 -187.5 65t-70.5 167zM244 217q0 -102 121 -102q125 0 262 159v170q-199 -33 -291 -86t-92 -141zM375 1092l207 340h174l-287 -396z" />
-<glyph unicode="&#xe2;" horiz-adv-x="960" d="M74 207q0 141 143 230t410 124v35q0 45 -1 65.5t-8.5 54.5t-22.5 49t-45 28.5t-75 13.5q-150 -2 -289 -102l-49 129q16 12 49 30.5t132.5 50t201.5 31.5q147 0 206.5 -67.5t59.5 -225.5v-415q0 -104 88 -121l15 -2l-53 -129q-164 18 -199 149q-10 -16 -30.5 -37.5 t-57.5 -52.5t-94.5 -50.5t-122.5 -19.5q-117 0 -187.5 65t-70.5 167zM178 1085l230 347h110l230 -347l-101 -51l-184 256l-184 -256zM244 217q0 -102 121 -102q125 0 262 159v170q-199 -33 -291 -86t-92 -141z" />
-<glyph unicode="&#xe3;" horiz-adv-x="960" d="M74 207q0 141 143 230t410 124v35q0 45 -1 65.5t-8.5 54.5t-22.5 49t-45 28.5t-75 13.5q-150 -2 -289 -102l-49 129q16 12 49 30.5t132.5 50t201.5 31.5q147 0 206.5 -67.5t59.5 -225.5v-415q0 -104 88 -121l15 -2l-53 -129q-164 18 -199 149q-10 -16 -30.5 -37.5 t-57.5 -52.5t-94.5 -50.5t-122.5 -19.5q-117 0 -187.5 65t-70.5 167zM162 1130v11q0 20 2 42.5t12 60.5t27.5 65.5t51.5 49t81 21.5q49 0 90 -24.5t61.5 -54t46 -54t50.5 -24.5q61 0 69 131v14h111v-10q0 -29 -5 -60.5t-20.5 -79t-55.5 -78t-97 -30.5q-49 0 -89 24.5 t-60.5 54.5t-46 54.5t-50.5 24.5q-68 0 -68 -129v-9h-110zM244 217q0 -102 121 -102q125 0 262 159v170q-199 -33 -291 -86t-92 -141z" />
-<glyph unicode="&#xe4;" horiz-adv-x="960" d="M74 207q0 141 143 230t410 124v35q0 45 -1 65.5t-8.5 54.5t-22.5 49t-45 28.5t-75 13.5q-150 -2 -289 -102l-49 129q16 12 49 30.5t132.5 50t201.5 31.5q147 0 206.5 -67.5t59.5 -225.5v-415q0 -104 88 -121l15 -2l-53 -129q-164 18 -199 149q-10 -16 -30.5 -37.5 t-57.5 -52.5t-94.5 -50.5t-122.5 -19.5q-117 0 -187.5 65t-70.5 167zM172 1266q0 43 32 73.5t75 30.5q41 0 72.5 -30.5t31.5 -73.5t-32 -74t-72 -31q-43 0 -75 31t-32 74zM244 217q0 -102 121 -102q125 0 262 159v170q-199 -33 -291 -86t-92 -141zM541 1266q0 43 31.5 73.5 t72.5 30.5q43 0 75 -30.5t32 -73.5t-32 -74t-75 -31q-41 0 -72.5 31t-31.5 74z" />
-<glyph unicode="&#xe5;" horiz-adv-x="960" d="M74 207q0 141 143 230t410 124v35q0 45 -1 65.5t-8.5 54.5t-22.5 49t-45 28.5t-75 13.5q-150 -2 -289 -102l-49 129q16 12 49 30.5t132.5 50t201.5 31.5q147 0 206.5 -67.5t59.5 -225.5v-415q0 -104 88 -121l15 -2l-53 -129q-164 18 -199 149q-10 -16 -30.5 -37.5 t-57.5 -52.5t-94.5 -50.5t-122.5 -19.5q-117 0 -187.5 65t-70.5 167zM244 217q0 -102 121 -102q125 0 262 159v170q-199 -33 -291 -86t-92 -141zM274 1269.5q0 69.5 48.5 118t140.5 48.5t140 -48.5t48 -118t-48 -120.5t-140 -51t-140.5 51t-48.5 120.5zM369 1268 q0 -37 23.5 -63.5t70.5 -26.5t71.5 26.5t24.5 63.5t-23.5 62.5t-72.5 25.5q-94 0 -94 -88z" />
-<glyph unicode="&#xe6;" horiz-adv-x="1538" d="M74 207q0 131 147.5 219t425.5 121v49q0 57 -3 85t-16.5 62.5t-46 49t-87.5 14.5q-72 0 -149 -25.5t-118 -52.5l-41 -24l-49 129q18 12 50 30.5t131.5 50t197.5 31.5q201 0 250 -139q123 139 311 139q162 0 264.5 -108.5t102.5 -296.5l-98 -29l-545 -72q10 -143 91 -234 t214 -91q72 0 143.5 28.5t106.5 57.5l35 26l57 -116q-14 -14 -43 -37t-123 -61t-195 -38q-266 0 -380 222q-41 -88 -130.5 -155t-216.5 -67q-125 0 -205.5 66t-80.5 166zM244 217q0 -102 137 -102q117 0 187.5 83t70.5 230q-395 -57 -395 -211zM807 563l461 60q0 8 -3 20 t-15.5 45t-33 58.5t-61.5 46t-94 20.5q-102 0 -169 -68.5t-85 -181.5z" />
-<glyph unicode="&#xe7;" horiz-adv-x="933" d="M90 451q0 201 128 348t343 147q88 0 163 -24.5t107 -49.5l31 -26l-71 -125q-10 10 -31 24.5t-83.5 38t-125.5 23.5q-133 0 -213 -100.5t-80 -247.5q0 -145 81 -244.5t218 -99.5q143 4 250 98l55 -119q-12 -12 -35.5 -32.5t-106.5 -53.5t-175 -33h-6l-7 -12 q-23 -49 -22 -67q0 -23 27.5 -40.5t59.5 -30.5t59.5 -45t27.5 -77q0 -76 -65.5 -133t-161.5 -57q-49 0 -97.5 16t-70.5 33l-23 14l43 100q66 -57 144 -57q45 0 74.5 19.5t29.5 48.5q0 23 -25.5 41t-57.5 30.5t-57.5 36t-25.5 53.5q0 25 37 109l12 29q-160 33 -255 161 t-95 304z" />
-<glyph unicode="&#xe8;" horiz-adv-x="997" d="M92 440q0 219 124 362.5t319 143.5q164 0 266 -109.5t102 -301.5l-98 -29l-543 -72q10 -145 91 -232t214 -87q70 0 142.5 28.5t109.5 57.5l37 30l47 -122q-14 -14 -43 -37t-121 -60t-190 -37q-217 0 -337 135t-120 330zM221 1432h174l207 -340l-94 -56zM264 557l463 59 q0 8 -3 21.5t-15.5 47.5t-33 59.5t-60.5 47t-91 21.5q-106 0 -174 -71.5t-86 -184.5z" />
-<glyph unicode="&#xe9;" horiz-adv-x="997" d="M92 440q0 219 124 362.5t319 143.5q164 0 266 -109.5t102 -301.5l-98 -29l-543 -72q10 -145 91 -232t214 -87q70 0 142.5 28.5t109.5 57.5l37 30l47 -122q-14 -14 -43 -37t-121 -60t-190 -37q-217 0 -337 135t-120 330zM264 557l463 59q0 8 -3 21.5t-15.5 47.5t-33 59.5 t-60.5 47t-91 21.5q-106 0 -174 -71.5t-86 -184.5zM426 1092l207 340h174l-287 -396z" />
-<glyph unicode="&#xea;" horiz-adv-x="997" d="M92 440q0 219 124 362.5t319 143.5q164 0 266 -109.5t102 -301.5l-98 -29l-543 -72q10 -145 91 -232t214 -87q70 0 142.5 28.5t109.5 57.5l37 30l47 -122q-14 -14 -43 -37t-121 -60t-190 -37q-217 0 -337 135t-120 330zM229 1085l230 347h110l230 -347l-101 -51l-184 256 l-184 -256zM264 557l463 59q0 8 -3 21.5t-15.5 47.5t-33 59.5t-60.5 47t-91 21.5q-106 0 -174 -71.5t-86 -184.5z" />
-<glyph unicode="&#xeb;" horiz-adv-x="997" d="M92 440q0 219 124 362.5t319 143.5q164 0 266 -109.5t102 -301.5l-98 -29l-543 -72q10 -145 91 -232t214 -87q70 0 142.5 28.5t109.5 57.5l37 30l47 -122q-14 -14 -43 -37t-121 -60t-190 -37q-217 0 -337 135t-120 330zM223 1266q0 43 32 73.5t75 30.5q41 0 72.5 -30.5 t31.5 -73.5t-31.5 -74t-72.5 -31q-43 0 -75 31t-32 74zM264 557l463 59q0 8 -3 21.5t-15.5 47.5t-33 59.5t-60.5 47t-91 21.5q-106 0 -174 -71.5t-86 -184.5zM592 1266q0 43 31.5 73.5t72.5 30.5q43 0 75 -30.5t32 -73.5t-32 -74t-75 -31q-41 0 -72.5 31t-31.5 74z" />
-<glyph unicode="&#xec;" horiz-adv-x="471" d="M-57 1432h174l207 -340l-95 -56zM156 0v922h159v-922h-159z" />
-<glyph unicode="&#xed;" horiz-adv-x="471" d="M147 1092l207 340h174l-286 -396zM156 0v922h159v-922h-159z" />
-<glyph unicode="&#xee;" horiz-adv-x="471" d="M-49 1085l229 347h111l229 -347l-100 -51l-184 256l-185 -256zM156 0v922h159v-922h-159z" />
-<glyph unicode="&#xef;" horiz-adv-x="471" d="M-55 1266q0 43 31.5 73.5t74.5 30.5q41 0 73 -30.5t32 -73.5t-32 -74t-73 -31q-43 0 -74.5 31t-31.5 74zM156 0v922h159v-922h-159zM313 1266q0 43 32 73.5t73 30.5q43 0 74.5 -30.5t31.5 -73.5t-31.5 -74t-74.5 -31q-41 0 -73 31t-32 74z" />
-<glyph unicode="&#xf0;" horiz-adv-x="1103" d="M90 449q0 199 128 348t319 149q166 0 247 -88q-74 197 -231 334l-258 -158l-59 103l215 131q-131 80 -281 123l35 125q215 -43 385 -164l282 172l58 -103l-244 -147q145 -135 225 -317.5t80 -383.5q0 -270 -125 -434t-344 -164q-197 0 -314.5 143t-117.5 331zM258 465 q0 -135 71.5 -242.5t203 -107.5t214 110.5t82.5 337.5q0 111 -62 177.5t-189 66.5q-141 0 -230.5 -96t-89.5 -246z" />
-<glyph unicode="&#xf1;" horiz-adv-x="1079" d="M152 0v907l159 29v-180q184 190 381 190q111 0 176.5 -67.5t65.5 -208.5v-670h-160v625q0 180 -125 180q-135 0 -338 -197v-608h-159zM250 1130v11q0 20 2 42.5t12 60.5t27.5 65.5t51.5 49t81 21.5q49 0 90 -24.5t61.5 -54t46 -54t50.5 -24.5q61 0 69 131v14h111v-10 q0 -29 -5 -60.5t-20.5 -79t-55.5 -78t-97 -30.5q-49 0 -89 24.5t-60.5 54.5t-46 54.5t-50.5 24.5q-68 0 -68 -129v-9h-110z" />
-<glyph unicode="&#xf2;" horiz-adv-x="1091" d="M90 457q0 121 49 229.5t156.5 184t253.5 75.5q205 0 328.5 -139t123.5 -328q0 -119 -48 -230.5t-157.5 -192.5t-254.5 -81q-205 0 -328 143.5t-123 338.5zM252 1432h174l207 -340l-94 -56zM258 475.5q0 -149.5 74 -255t215 -105.5q129 0 208 94t79 244q0 147 -72 250.5 t-217 103.5q-131 0 -209 -91t-78 -240.5z" />
-<glyph unicode="&#xf3;" horiz-adv-x="1091" d="M90 457q0 121 49 229.5t156.5 184t253.5 75.5q205 0 328.5 -139t123.5 -328q0 -119 -48 -230.5t-157.5 -192.5t-254.5 -81q-205 0 -328 143.5t-123 338.5zM258 475.5q0 -149.5 74 -255t215 -105.5q129 0 208 94t79 244q0 147 -72 250.5t-217 103.5q-131 0 -209 -91 t-78 -240.5zM457 1092l207 340h174l-287 -396z" />
-<glyph unicode="&#xf4;" horiz-adv-x="1091" d="M90 457q0 121 49 229.5t156.5 184t253.5 75.5q205 0 328.5 -139t123.5 -328q0 -119 -48 -230.5t-157.5 -192.5t-254.5 -81q-205 0 -328 143.5t-123 338.5zM258 475.5q0 -149.5 74 -255t215 -105.5q129 0 208 94t79 244q0 147 -72 250.5t-217 103.5q-131 0 -209 -91 t-78 -240.5zM260 1085l229 347h111l229 -347l-100 -51l-184 256l-185 -256z" />
-<glyph unicode="&#xf5;" horiz-adv-x="1091" d="M90 457q0 121 49 229.5t156.5 184t253.5 75.5q205 0 328.5 -139t123.5 -328q0 -119 -48 -230.5t-157.5 -192.5t-254.5 -81q-205 0 -328 143.5t-123 338.5zM244 1130v11q0 20 2 42.5t12 60.5t27.5 65.5t51.5 49t81 21.5q49 0 90 -24.5t61.5 -54t46 -54t50.5 -24.5 q61 0 69 131v14h111v-10q0 -29 -5 -60.5t-20.5 -79t-55.5 -78t-97 -30.5q-49 0 -89 24.5t-60.5 54.5t-46.5 54.5t-50 24.5q-68 0 -68 -129v-9h-110zM258 475.5q0 -149.5 74 -255t215 -105.5q129 0 208 94t79 244q0 147 -72 250.5t-217 103.5q-131 0 -209 -91t-78 -240.5z " />
-<glyph unicode="&#xf6;" horiz-adv-x="1091" d="M90 457q0 121 49 229.5t156.5 184t253.5 75.5q205 0 328.5 -139t123.5 -328q0 -119 -48 -230.5t-157.5 -192.5t-254.5 -81q-205 0 -328 143.5t-123 338.5zM254 1266q0 43 31.5 73.5t74.5 30.5q41 0 73 -30.5t32 -73.5t-32 -74t-73 -31q-43 0 -74.5 31t-31.5 74z M258 475.5q0 -149.5 74 -255t215 -105.5q129 0 208 94t79 244q0 147 -72 250.5t-217 103.5q-131 0 -209 -91t-78 -240.5zM623 1266q0 43 31.5 73.5t72.5 30.5q43 0 75 -30.5t32 -73.5t-32 -74t-75 -31q-41 0 -72.5 31t-31.5 74z" />
-<glyph unicode="&#xf7;" d="M74 446v134h917v-134h-917zM410 121q0 51 35.5 87t87 36t87 -36t35.5 -87t-35.5 -87t-87 -36t-87 36t-35.5 87zM410 905q0 51 35.5 87t87 36t87 -36t35.5 -87t-35.5 -87t-87 -36t-87 36t-35.5 87z" />
-<glyph unicode="&#xf8;" horiz-adv-x="1091" d="M90 457q0 121 49 229.5t156.5 184t253.5 75.5q137 0 244 -69l79 106h127l-127 -172q129 -139 129 -332q0 -119 -48 -230.5t-157.5 -192.5t-254.5 -81q-137 0 -240 68l-78 -104h-129l127 170q-131 141 -131 348zM258 475q0 -141 61 -235l386 518q-66 49 -160 49 q-131 0 -209 -91t-78 -241zM389 162q70 -47 158 -47q129 0 208 94t79 244q0 133 -58 229z" />
-<glyph unicode="&#xf9;" horiz-adv-x="1067" d="M145 252v670h160v-625q0 -180 131 -180q139 0 312 172v633h159v-637q0 -49 10.5 -121t20.5 -119l10 -45l-157 -14q-23 102 -31 168q-166 -178 -365 -179q-250 1 -250 277zM236 1432h174l206 -340l-94 -56z" />
-<glyph unicode="&#xfa;" horiz-adv-x="1067" d="M145 252v670h160v-625q0 -180 131 -180q139 0 312 172v633h159v-637q0 -49 10.5 -121t20.5 -119l10 -45l-157 -14q-23 102 -31 168q-166 -178 -365 -179q-250 1 -250 277zM440 1092l207 340h174l-286 -396z" />
-<glyph unicode="&#xfb;" horiz-adv-x="1067" d="M145 252v670h160v-625q0 -180 131 -180q139 0 312 172v633h159v-637q0 -49 10.5 -121t20.5 -119l10 -45l-157 -14q-23 102 -31 168q-166 -178 -365 -179q-250 1 -250 277zM244 1085l229 347h111l229 -347l-100 -51l-185 256l-184 -256z" />
-<glyph unicode="&#xfc;" horiz-adv-x="1067" d="M145 252v670h160v-625q0 -180 131 -180q139 0 312 172v633h159v-637q0 -49 10.5 -121t20.5 -119l10 -45l-157 -14q-23 102 -31 168q-166 -178 -365 -179q-250 1 -250 277zM238 1266q0 43 31.5 73.5t74.5 30.5q41 0 73 -30.5t32 -73.5t-32 -74t-73 -31q-43 0 -74.5 31 t-31.5 74zM606 1266q0 43 32 73.5t73 30.5q43 0 74.5 -30.5t31.5 -73.5t-31.5 -74t-74.5 -31q-41 0 -73 31t-32 74z" />
-<glyph unicode="&#xfd;" horiz-adv-x="935" d="M33 922h174l268 -652l260 652h168l-411 -992q-74 -178 -167.5 -288.5t-230.5 -126.5l-51 133q180 37 289 282l59 138zM389 1092l207 340h174l-287 -396z" />
-<glyph unicode="&#xfe;" horiz-adv-x="1077" d="M156 -475v1909l159 28v-663q88 147 279 147q178 0 284.5 -131t106.5 -330q0 -213 -129 -361.5t-344 -148.5q-131 0 -197 56v-477zM315 231q0 -117 172 -116q154 0 241 96t87 264q0 152 -67.5 240t-174.5 88q-150 0 -258 -158v-414z" />
-<glyph unicode="&#xff;" horiz-adv-x="935" d="M33 922h174l268 -652l260 652h168l-411 -992q-74 -178 -167.5 -288.5t-230.5 -126.5l-51 133q180 37 289 282l59 138zM186 1266q0 43 32 73.5t75 30.5q41 0 72.5 -30.5t31.5 -73.5t-31.5 -74t-72.5 -31q-43 0 -75 31t-32 74zM555 1266q0 43 31.5 73.5t72.5 30.5 q43 0 75 -30.5t32 -73.5t-32 -74t-75 -31q-41 0 -72.5 31t-31.5 74z" />
-<glyph unicode="&#x152;" horiz-adv-x="2009" d="M102 680q0 139 47.5 265t137.5 226.5t235.5 160t325.5 59.5q127 0 256 -25h801v-141h-637v-457h504v-141h-504v-486h635v-141h-803q-141 -25 -269 -25q-334 0 -531.5 204t-197.5 501zM283 692q0 -100 31.5 -197.5t96 -183.5t176 -138t255 -52t258.5 20v1073 q-117 31 -264 31q-264 0 -408.5 -164t-144.5 -389z" />
-<glyph unicode="&#x153;" horiz-adv-x="1738" d="M90 457q0 121 49 229.5t156.5 184t253.5 75.5q244 0 375 -201q119 201 352 201q164 0 266.5 -109.5t102.5 -301.5l-99 -29l-549 -72q10 -145 92 -232t220 -87q70 0 140.5 28.5t106.5 57.5l35 26l58 -116q-16 -14 -45 -37t-122 -61t-192 -38q-254 0 -377 203 q-131 -203 -372 -203q-205 0 -328 143.5t-123 338.5zM258 475.5q0 -149.5 74 -255t215 -105.5q129 0 208 94t79 244q0 147 -72 250.5t-217 103.5q-131 0 -209 -91t-78 -240.5zM999 555l469 61q0 8 -3 21.5t-15 47.5t-32.5 59.5t-60.5 47t-91 21.5q-111 0 -180 -71.5 t-87 -186.5z" />
-<glyph unicode="&#x178;" horiz-adv-x="1177" d="M16 1366h199l377 -608l381 608h188l-487 -770v-596h-168v594zM260 1624q0 43 32 74t75 31q41 0 72.5 -31t31.5 -74t-31.5 -73.5t-72.5 -30.5q-43 0 -75 30.5t-32 73.5zM731 1624q0 43 32 74t73 31q43 0 74.5 -31t31.5 -74t-31.5 -73.5t-74.5 -30.5q-41 0 -73 30.5 t-32 73.5z" />
-<glyph unicode="&#x2c6;" horiz-adv-x="1032" d="M231 1085l230 347h110l230 -347l-101 -51l-184 256l-184 -256z" />
-<glyph unicode="&#x2dc;" horiz-adv-x="1032" d="M215 1130v11q0 20 2 42.5t12.5 60.5t27.5 65.5t51 49t81 21.5q49 0 90 -24.5t61.5 -54t46 -54t50.5 -24.5q61 0 70 131v14h110v-10q0 -29 -5 -60.5t-20.5 -79t-55.5 -78t-97 -30.5q-49 0 -89 24.5t-60.5 54.5t-46 54.5t-50.5 24.5q-68 0 -67 -129v-9h-111z" />
-<glyph unicode="&#x2000;" horiz-adv-x="892" />
-<glyph unicode="&#x2001;" horiz-adv-x="1784" />
-<glyph unicode="&#x2002;" horiz-adv-x="892" />
-<glyph unicode="&#x2003;" horiz-adv-x="1784" />
-<glyph unicode="&#x2004;" horiz-adv-x="594" />
-<glyph unicode="&#x2005;" horiz-adv-x="446" />
-<glyph unicode="&#x2006;" horiz-adv-x="297" />
-<glyph unicode="&#x2007;" horiz-adv-x="297" />
-<glyph unicode="&#x2008;" horiz-adv-x="223" />
-<glyph unicode="&#x2009;" horiz-adv-x="356" />
-<glyph unicode="&#x200a;" horiz-adv-x="99" />
-<glyph unicode="&#x2010;" horiz-adv-x="692" d="M115 438v148h463v-148h-463z" />
-<glyph unicode="&#x2011;" horiz-adv-x="692" d="M115 438v148h463v-148h-463z" />
-<glyph unicode="&#x2012;" horiz-adv-x="692" d="M115 438v148h463v-148h-463z" />
-<glyph unicode="&#x2013;" horiz-adv-x="1069" d="M115 453v133h839v-133h-839z" />
-<glyph unicode="&#x2014;" horiz-adv-x="1867" d="M115 453v133h1638v-133h-1638z" />
-<glyph unicode="&#x2018;" horiz-adv-x="432" d="M100 1190q0 186 181 323l71 -73q-100 -80 -100 -180q0 -102 106 -213l-155 -91q-103 97 -103 234z" />
-<glyph unicode="&#x2019;" horiz-adv-x="423" d="M78 1423l155 90q102 -96 103 -233q0 -186 -180 -324l-72 74q100 80 100 180q0 102 -106 213z" />
-<glyph unicode="&#x201a;" horiz-adv-x="487" d="M100 154l168 90q109 -102 109 -234q0 -88 -50.5 -173t-136.5 -150l-71 73q106 84 106 181q0 82 -125 213z" />
-<glyph unicode="&#x201c;" horiz-adv-x="763" d="M100 1190q0 186 181 323l71 -73q-100 -80 -100 -180q0 -102 106 -213l-155 -91q-103 97 -103 234zM432 1190q0 186 180 323l72 -73q-100 -80 -100 -180q0 -102 106 -213l-155 -91q-103 97 -103 234z" />
-<glyph unicode="&#x201d;" horiz-adv-x="755" d="M78 1423l155 90q102 -96 103 -233q0 -186 -180 -324l-72 74q100 80 100 180q0 102 -106 213zM410 1423l155 90q102 -96 103 -233q0 -186 -181 -324l-71 74q100 80 100 180q0 102 -106 213z" />
-<glyph unicode="&#x201e;" horiz-adv-x="819" d="M100 154l168 90q109 -102 109 -234q0 -88 -50.5 -173t-136.5 -150l-71 73q106 84 106 181q0 82 -125 213zM432 154l168 90q109 -102 109 -234q0 -88 -50.5 -173t-136.5 -150l-71 73q106 84 106 181q0 82 -125 213z" />
-<glyph unicode="&#x2022;" horiz-adv-x="778" d="M106 524.5q0 118.5 82 200.5t201 82t201 -82t82 -200.5t-82 -200.5t-201 -82t-201 82t-82 200.5z" />
-<glyph unicode="&#x2026;" horiz-adv-x="1593" d="M121 98.5q0 51.5 36 87t87 35.5t87 -35.5t36 -87t-36 -87.5t-87 -36t-87 36t-36 87.5zM674 98.5q0 51.5 35.5 87t87 35.5t87.5 -35.5t36 -87t-36 -87.5t-87.5 -36t-87 36t-35.5 87.5zM1227 98.5q0 51.5 35.5 87t87 35.5t87.5 -35.5t36 -87t-36 -87.5t-87.5 -36t-87 36 t-35.5 87.5z" />
-<glyph unicode="&#x202f;" horiz-adv-x="356" />
-<glyph unicode="&#x2039;" horiz-adv-x="655" d="M49 510v8q35 27 285 303l115 125l110 -31l-309 -401l309 -401l-110 -31l-168 182l-111 121l-60 66l-38 38q-11 11 -23 21z" />
-<glyph unicode="&#x203a;" horiz-adv-x="657" d="M98 113l310 401l-310 401l111 31q362 -397 389 -420q4 -2 10 -8v-8q-12 -10 -22 -21l-38 -38l-61 -66l-110 -121l-168 -182z" />
-<glyph unicode="&#x205f;" horiz-adv-x="446" />
-<glyph unicode="&#x20ac;" horiz-adv-x="1142" d="M86 375v102h109q-4 27 -5 82q0 25 5 78h-105v102h121q45 188 179 303t335 115q180 -2 313 -80l-43 -145q-119 86 -278 86q-137 0 -221 -77t-117 -202h561l-31 -102h-549q-2 -23 -2 -66q0 -47 7 -94h499l-30 -102h-445q39 -119 127 -189.5t211 -70.5q66 0 131.5 18.5 t97.5 34.5l33 18l49 -125q-14 -10 -39.5 -24t-110.5 -38t-173 -24q-190 0 -322.5 107.5t-179.5 292.5h-127z" />
-<glyph unicode="&#x2122;" horiz-adv-x="1359" d="M76 1278v88h463v-88h-179v-457h-106v457h-178zM629 821l20 545h156l127 -371l129 371h151l21 -545h-103l-16 422l-149 -422h-70l-150 424l-12 -424h-104z" />
-<glyph unicode="&#xe000;" horiz-adv-x="920" d="M0 920h920v-920h-920v920z" />
-<glyph unicode="&#xfb01;" horiz-adv-x="1075" d="M57 793v84l146 55v78q0 225 108.5 353t292.5 128q162 0 279 -78l-74 -127q-100 66 -209 66q-102 0 -170 -82t-68 -252v-96h558v-922h-160v803h-398v-803h-159v793h-146z" />
-<glyph unicode="&#xfb02;" horiz-adv-x="1105" d="M57 793v84l146 55v78q0 225 108.5 353t292.5 128q115 0 227 -51l119 22v-1462h-159v1296q-98 55 -191 56q-102 0 -170 -82t-68 -252v-96h261v-129h-261v-793h-159v793h-146z" />
-<glyph unicode="&#xfb03;" horiz-adv-x="1669" d="M57 793v84l146 55v47q0 217 111.5 339t299.5 122q141 0 275 -82q104 133 289 133q68 0 132 -19.5t95 -37.5l31 -21l-74 -127q-92 66 -188 66q-94 0 -156 -76t-62 -238v-116h557v-922h-159v803h-398v-803h-159v803h-435v-803h-159v793h-146zM362 922h435v108q0 109 28 199 q-115 72 -215 71q-109 0 -178.5 -75.5t-69.5 -237.5v-65z" />
-<glyph unicode="&#xfb04;" horiz-adv-x="1699" d="M57 793v84l146 55v47q0 217 111.5 339t299.5 122q147 0 283 -88q109 139 301 139q115 0 227 -51l119 22v-1462h-160v1296q-98 55 -190 56q-102 0 -170 -82t-68 -252v-96h261v-129h-261v-793h-159v803h-435v-803h-159v793h-146zM362 922h435v88q0 125 32 215 q-119 76 -219 75q-109 0 -178.5 -75.5t-69.5 -237.5v-65z" />
-</font>
-</defs></svg> 
\ No newline at end of file
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansRegular-webfont.ttf b/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansRegular-webfont.ttf
deleted file mode 100644
index 9856192a5d6fc9a8c0f7c17c5135d6ccc7df2520..0000000000000000000000000000000000000000
Binary files a/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansRegular-webfont.ttf and /dev/null differ
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansRegular-webfont.woff b/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansRegular-webfont.woff
deleted file mode 100644
index 9477ccebc8b71a1372e3dcb2dd9f51abdc13cb46..0000000000000000000000000000000000000000
Binary files a/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansRegular-webfont.woff and /dev/null differ
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansSemiBold-webfont.eot b/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansSemiBold-webfont.eot
deleted file mode 100644
index 2833c1bf81cfc3be091dbe4aa7f8c920db677c9f..0000000000000000000000000000000000000000
Binary files a/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansSemiBold-webfont.eot and /dev/null differ
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansSemiBold-webfont.svg b/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansSemiBold-webfont.svg
deleted file mode 100644
index 3cee70eab9e0f457c5185043f43f62851e594dd6..0000000000000000000000000000000000000000
--- a/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansSemiBold-webfont.svg
+++ /dev/null
@@ -1,243 +0,0 @@
-<?xml version="1.0" standalone="no"?>
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
-<svg xmlns="http://www.w3.org/2000/svg">
-<metadata>
-This is a custom SVG webfont generated by Fontspring.
-</metadata>
-<defs>
-<font id="webfontFCImWf6J" horiz-adv-x="491" >
-<font-face units-per-em="2048" ascent="1536" descent="-512" />
-<missing-glyph horiz-adv-x="500" />
-<glyph unicode=" " />
-<glyph unicode="!" horiz-adv-x="567" d="M145 112.5q0 57.5 40 98.5t97.5 41t98.5 -40t41 -99q0 -57 -41 -97.5t-98.5 -40.5t-97.5 40t-40 97.5zM168 1391h235l-34 -963h-170z" />
-<glyph unicode="&#x22;" horiz-adv-x="747" d="M125 856v510h182v-76l-57 -434h-125zM465 856v510h184v-76l-59 -434h-125z" />
-<glyph unicode="#" horiz-adv-x="1359" d="M72 244l22 127h256l60 284h-258l20 127h262l84 402h131l-82 -402h301l84 402h131l-82 -402h285l-22 -127h-289l-57 -284h288l-20 -127h-295l-86 -426h-133l86 426h-301l-86 -426h-133l86 426h-252zM483 371h301l60 284h-303z" />
-<glyph unicode="$" horiz-adv-x="960" d="M78 86l45 174q12 -10 35.5 -26.5t103.5 -45t168 -34.5l10 344q-160 57 -251 134t-91 206q0 123 89 210t270 101l6 178h94l-6 -176q82 -2 155.5 -17.5t106.5 -29.5l33 -14l-55 -166q-100 49 -244 57l-8 -328q160 -57 249 -135t89 -207q0 -133 -94.5 -219t-262.5 -100 l-4 -174h-94l4 170q-98 2 -185 26.5t-126 46.5zM289 850q0 -61 39 -96t116 -68l9 295q-164 -16 -164 -131zM524 156q158 20 158 143q0 61 -36 97t-114 67z" />
-<glyph unicode="%" horiz-adv-x="1527" d="M76 1040q0 131 91 222.5t228 91.5q139 0 230.5 -91.5t91.5 -222.5t-92.5 -222t-229.5 -91t-228 91t-91 222zM211 1040q0 -74 53 -131t131 -57q80 0 133.5 57.5t53.5 130.5q0 76 -53.5 132.5t-133.5 56.5t-132 -56.5t-52 -132.5zM223 0l963 1384l94 -63l-920 -1321h-137z M815 289q0 131 91 223t229 92q139 0 230 -91t91 -224q0 -131 -92 -222.5t-229.5 -91.5t-228.5 91.5t-91 222.5zM950 289q0 -74 53.5 -130.5t131.5 -56.5q80 0 133 56.5t53 130.5q0 76 -53.5 132t-133 56t-132 -56t-52.5 -132z" />
-<glyph unicode="&#x26;" horiz-adv-x="1415" d="M80 328q0 127 75.5 218t211.5 173q-111 199 -111 342q0 131 89 230.5t265 99.5q156 0 243 -82t87 -213q0 -133 -81 -223.5t-230 -182.5q68 -96 112 -147q72 -88 179 -195q166 221 192 578h186q-14 -168 -76.5 -357.5t-172.5 -332.5q180 -145 311 -183l-76 -139 q-158 23 -373 184q-162 -123 -372 -123q-186 0 -322.5 90.5t-136.5 262.5zM274 340q0 -94 78 -146.5t191 -52.5q125 0 235 72q-92 82 -211 223q-68 82 -114 148q-179 -117 -179 -244zM469 1065q0 -100 76 -240q207 125 207 254q0 61 -37 103.5t-103 42.5q-70 0 -106.5 -46 t-36.5 -114z" />
-<glyph unicode="'" horiz-adv-x="407" d="M125 856v510h188v-76l-73 -434h-115z" />
-<glyph unicode="(" horiz-adv-x="600" d="M100 553q0 152 32 297t78 244.5t91 177.5t76 114l33 37l149 -45l-32 -39q-19 -25 -69 -108.5t-89 -173.5t-71 -228.5t-32 -275.5q0 -152 31 -298t75 -246.5t88 -179.5t75 -116l30 -39l-145 -53q-12 14 -33.5 42t-77 119t-97.5 192.5t-77 259t-35 319.5z" />
-<glyph unicode=")" horiz-adv-x="600" d="M35 -326l33 40q20 26 71 114t91 183t73 242.5t33 299.5q0 137 -31 273.5t-74 231.5t-86 171t-73 112l-31 37l152 45l32 -39q20 -25 73.5 -110.5t94.5 -180t74 -241.5t33 -299q0 -459 -242 -829q-43 -66 -76 -103z" />
-<glyph unicode="*" horiz-adv-x="1007" d="M86 854l301 102l35 -61l-240 -211zM86 1110l96 170l240 -209l-35 -61zM406 555l63 311h70l63 -311h-196zM406 1409h196l-63 -311h-70zM586 895l35 61l301 -102l-99 -170zM586 1071l237 209l99 -170l-301 -100z" />
-<glyph unicode="+" horiz-adv-x="1064" d="M57 444v148h400v416h155v-416h394v-148h-394v-444h-155v444h-400z" />
-<glyph unicode="," horiz-adv-x="487" d="M68 -289q90 82 110 119q27 47 27 111q0 102 -107 254l197 63q84 -111 84 -238q0 -207 -232 -393z" />
-<glyph unicode="-" horiz-adv-x="720" d="M111 438v156h499v-156h-499z" />
-<glyph unicode="." horiz-adv-x="501" d="M113 112.5q0 57.5 40 98.5t97 41t98 -41t41 -98.5t-41 -97.5t-98 -40t-97 40t-40 97.5z" />
-<glyph unicode="/" horiz-adv-x="946" d="M45 -401l682 1767h154l-680 -1767h-156z" />
-<glyph unicode="0" horiz-adv-x="1134" d="M94 471q0 209 127 364.5t354 155.5q221 0 343 -142t122 -341q0 -135 -49 -253t-161.5 -199t-270.5 -81q-217 0 -341 147.5t-124 348.5zM289 483q0 -139 71.5 -240.5t206.5 -101.5q139 0 209 100.5t70 245.5q0 139 -69.5 238.5t-207 99.5t-209 -100.5t-71.5 -241.5z" />
-<glyph unicode="1" horiz-adv-x="800" d="M102 0v164h230v641h-217v162h417v-803h211v-164h-641z" />
-<glyph unicode="2" horiz-adv-x="927" d="M90 123l50 38q32 24 113 92.5t142.5 132t111.5 144t50 142.5q0 66 -44 107.5t-114 41.5q-53 0 -109.5 -21.5t-86.5 -43.5l-31 -23l-82 129q16 14 47 36t121 57.5t178 35.5q145 0 238.5 -83t93.5 -208q0 -96 -65.5 -202.5t-136 -175t-179.5 -158.5h467v-164h-756z" />
-<glyph unicode="3" horiz-adv-x="827" d="M35 862q16 14 47 36t122 57.5t179 35.5q141 0 233.5 -77.5t92.5 -196.5q0 -109 -73 -197t-177 -145q137 -33 210.5 -120t73.5 -206q0 -201 -176 -323.5t-444 -122.5q-37 0 -57 2l-17 157q23 -2 66 -2q180 0 298.5 74t118.5 209q0 109 -90 158t-217 49h-49v158 q113 10 218.5 95t105.5 185q0 59 -42 96t-106 37q-109 0 -229 -88z" />
-<glyph unicode="4" horiz-adv-x="1081" d="M53 41v135l582 807h192v-784h191v-158h-191v-436h-198v436h-576zM260 199h369v522z" />
-<glyph unicode="5" horiz-adv-x="827" d="M63 -238q199 -16 338.5 54.5t139.5 228.5q0 70 -29 124t-69 85t-107.5 55.5t-115.5 33.5t-126 22v602h602v-164h-407v-299q207 -49 335 -152.5t128 -296.5q0 -223 -189.5 -345t-480.5 -105z" />
-<glyph unicode="6" horiz-adv-x="1052" d="M88 567q0 156 48 298.5t139.5 258t239 187t333.5 80.5l14 -162q-238 -16 -372 -141t-175 -318q88 115 265 115q184 0 291.5 -126t107.5 -308q0 -193 -117 -334.5t-319 -141.5q-219 0 -337 170t-118 422zM297 586q0 -190 67.5 -317.5t190.5 -127.5q100 0 157.5 81 t57.5 206q0 70 -16.5 129t-69.5 109.5t-141 50.5q-137 0 -246 -109v-22z" />
-<glyph unicode="7" horiz-adv-x="942" d="M57 784v183h836v-127q-221 -551 -578 -1250l-196 43q301 557 540 1151h-602z" />
-<glyph unicode="8" horiz-adv-x="1050" d="M94 334q0 119 75 207t206 174q-207 166 -207 344q0 145 107.5 238.5t271.5 93.5q158 0 261 -86t103 -228q0 -106 -60 -187t-169 -157q129 -88 200.5 -175t71.5 -204q0 -154 -122.5 -266.5t-311.5 -112.5q-178 0 -302 101.5t-124 257.5zM279 344q0 -88 69.5 -146.5 t163.5 -58.5q96 0 167 58.5t71 142.5q0 51 -38 104.5t-80 87t-124 89.5q-113 -74 -171 -136.5t-58 -140.5zM375 1071q0 -119 174 -246q176 125 176 242q0 76 -52 118t-126 42t-123 -42t-49 -114z" />
-<glyph unicode="9" horiz-adv-x="1060" d="M96 524q0 188 116 327.5t314 139.5q219 0 337 -170t118 -420q0 -154 -48 -292t-139.5 -250.5t-238.5 -182t-334 -77.5l-14 161q240 14 374 137t175 310q-88 -115 -267 -115q-180 0 -286.5 127t-106.5 305zM305 553q0 -51 9.5 -97t32 -93.5t69.5 -75t112 -27.5 q137 0 244 107v6q0 199 -66.5 325.5t-191.5 126.5q-96 0 -152.5 -77.5t-56.5 -194.5z" />
-<glyph unicode=":" horiz-adv-x="561" d="M143 112.5q0 57.5 40 98.5t98 41q59 0 99 -40t40 -99q0 -57 -41 -97.5t-98.5 -40.5t-97.5 40t-40 97.5zM143 798.5q0 57.5 40 97.5t97.5 40t98.5 -40t41 -97.5t-41 -98.5t-98.5 -41t-97.5 41t-40 98.5z" />
-<glyph unicode=";" horiz-adv-x="552" d="M104 -289q90 82 111 119q27 47 27 111q0 102 -107 254l197 63q84 -111 84 -238q0 -207 -232 -393zM139 796.5q0 57.5 40 98.5t97.5 41t98.5 -41t41 -98.5t-41 -97.5t-98.5 -40t-97.5 40t-40 97.5z" />
-<glyph unicode="&#x3c;" horiz-adv-x="1064" d="M59 467v94l873 469l35 -151l-699 -365l699 -383l-35 -151z" />
-<glyph unicode="=" horiz-adv-x="1064" d="M78 252v147h909v-147h-909zM78 627v147h909v-147h-909z" />
-<glyph unicode="&#x3e;" horiz-adv-x="1064" d="M96 131l699 383l-699 365l37 151l873 -469v-94l-873 -487z" />
-<glyph unicode="?" horiz-adv-x="757" d="M90 1262l45 186q23 -6 59.5 -18.5t132 -54.5t168 -87t132 -115.5t59.5 -144.5q0 -53 -32.5 -106.5t-79 -103.5t-91.5 -104.5t-77.5 -129t-32.5 -156.5h-164q-6 27 -6 59q0 88 39 173t87 138.5t87 111t39 94.5q0 57 -91.5 121.5t-183.5 99.5zM158 112.5q0 57.5 41 98.5 t98 41t98 -41t41 -98.5t-41 -97.5t-98 -40t-98 40t-41 97.5z" />
-<glyph unicode="@" horiz-adv-x="1736" d="M82 397q0 217 102.5 404.5t295 304.5t433.5 117q322 0 524.5 -192.5t202.5 -483.5q0 -133 -49 -252t-153 -191q-35 -25 -84 -45t-81 -29.5t-113 -27.5l-116 -27q-20 84 -32 150q-33 -61 -104.5 -105.5t-151.5 -44.5q-129 0 -215 107.5t-86 284.5q0 246 168 397t399 151 l152 -12v-584l16 -167q143 12 215 115.5t72 258.5q0 242 -151.5 401.5t-410.5 159.5q-295 0 -482 -204.5t-187 -487.5q0 -264 163.5 -436t383.5 -184l-25 -137q-293 14 -489.5 233t-196.5 526zM657 379q0 -102 37 -172t103 -70q100 0 182 131v498q-139 0 -230.5 -113.5 t-91.5 -273.5z" />
-<glyph unicode="A" horiz-adv-x="1282" d="M20 0l521 1376h200l521 -1376h-218l-135 365h-544l-134 -365h-211zM430 541h416l-209 565z" />
-<glyph unicode="B" horiz-adv-x="1216" d="M186 0v1366h402q244 0 353.5 -95t109.5 -233q0 -174 -164 -301q238 -98 237 -340q0 -180 -130 -288.5t-337 -108.5h-471zM397 176h230q137 0 205.5 58.5t68.5 159t-68.5 159.5t-205.5 59h-230v-436zM397 786h299q6 2 14.5 8.5t31 26t40 43t31.5 61.5t14 79 q0 186 -270 186h-160v-404z" />
-<glyph unicode="C" horiz-adv-x="1380" d="M92 667.5q0 309.5 206 516.5t542 207q127 0 242.5 -29t166.5 -57l51 -29l-81 -184q-16 12 -48 31.5t-134.5 52t-209.5 32.5q-240 0 -377 -152.5t-137 -369.5q0 -229 146.5 -378.5t367.5 -149.5q106 0 208 33.5t149 66.5l49 33l86 -158l-23 -17q-14 -11 -63 -38 t-103.5 -47.5t-140.5 -38t-176 -17.5q-309 0 -515 191.5t-206 501z" />
-<glyph unicode="D" horiz-adv-x="1484" d="M186 0v1366h447q145 0 275 -36t241 -111.5t175.5 -207.5t64.5 -306q0 -336 -227.5 -520.5t-606.5 -184.5h-369zM397 176h138q326 0 478 140.5t152 371.5q0 233 -144 367.5t-417 134.5h-207v-1014z" />
-<glyph unicode="E" horiz-adv-x="1116" d="M186 0v1366h832v-176h-621v-406h490v-178h-490v-430h627v-176h-838z" />
-<glyph unicode="F" horiz-adv-x="1064" d="M186 0v1366h820v-176h-609v-414h482v-182h-482v-594h-211z" />
-<glyph unicode="G" horiz-adv-x="1437" d="M92 662q0 303 204 516t552 213q258 0 450 -99l9 -4l-82 -182q-18 12 -52 28.5t-135.5 45t-199.5 28.5q-248 0 -387.5 -154.5t-139.5 -375.5q0 -231 152.5 -375.5t398.5 -144.5q53 0 112.5 7t94.5 15l33 6v359h-285v176h494v-682q-270 -63 -473 -64q-319 0 -532.5 188 t-213.5 499z" />
-<glyph unicode="H" horiz-adv-x="1552" d="M186 0v1366h211v-580h758v580h209v-1366h-209v608h-758v-608h-211z" />
-<glyph unicode="I" horiz-adv-x="585" d="M186 0v1366h211v-1366h-211z" />
-<glyph unicode="J" horiz-adv-x="585" d="M-57 -201q246 25 245 387v1180h211v-1176q0 -506 -385 -563z" />
-<glyph unicode="K" horiz-adv-x="1228" d="M186 0v1366h211v-561h33l508 561h264l-592 -641l619 -725h-273l-526 627h-33v-627h-211z" />
-<glyph unicode="L" horiz-adv-x="1067" d="M186 0v1366h211v-1190h639v-176h-850z" />
-<glyph unicode="M" horiz-adv-x="1783" d="M164 0l49 1366h303l375 -1051l379 1051h301l49 -1366h-205l-41 1118l-411 -1118h-148l-412 1126l-34 -1126h-205z" />
-<glyph unicode="N" horiz-adv-x="1529" d="M186 0v1366h213l738 -1047v1047h206v-1366h-213l-737 1034v-1034h-207z" />
-<glyph unicode="O" horiz-adv-x="1634" d="M92 680q0 184 83 344t253 263.5t395 103.5q324 0 521.5 -196t197.5 -486q0 -299 -207 -516.5t-530 -217.5q-315 0 -514 207t-199 498zM315 690q0 -209 134.5 -371.5t361.5 -162.5q229 0 368.5 161.5t139.5 374.5q0 211 -135 364.5t-366.5 153.5t-367 -154.5 t-135.5 -365.5z" />
-<glyph unicode="P" horiz-adv-x="1175" d="M186 0v1366h432q250 0 373 -118t123 -300q0 -209 -138 -329.5t-358 -120.5h-221v-498h-211zM397 674h187q307 0 307 260q0 117 -73 186.5t-234 69.5h-187v-516z" />
-<glyph unicode="Q" horiz-adv-x="1634" d="M92 680q0 184 83 344t253 263.5t393 103.5q324 0 522.5 -196t198.5 -486q0 -242 -143.5 -439.5t-380.5 -265.5q49 -63 85 -102t100.5 -91.5t146.5 -77.5q76 -24 165 -24h15l-31 -190q-11 0 -22 -1q-61 0 -118 10q-67 11 -123 36.5t-98 49.5t-85 64l-64 61q-20 19 -56 62 t-40 47l-62 72q-41 49 -124 62q-279 37 -447 234.5t-168 463.5zM315 690q0 -211 133.5 -373.5t362.5 -162.5t369.5 162.5t140.5 377.5q0 207 -135 361.5t-366.5 154.5t-368 -155.5t-136.5 -364.5z" />
-<glyph unicode="R" horiz-adv-x="1249" d="M186 0v1366h402q250 0 372.5 -110.5t122.5 -278.5q0 -131 -74.5 -228.5t-187.5 -150.5l402 -598h-250l-365 549h-211v-549h-211zM397 725h187q119 0 197.5 63.5t78.5 174.5q0 100 -73.5 163.5t-233.5 63.5h-156v-465z" />
-<glyph unicode="S" horiz-adv-x="1048" d="M90 90l60 193q16 -14 46.5 -35t122 -54.5t179.5 -33.5q104 0 174.5 47t70.5 129q0 66 -47 120t-116 90l-152 82q-82 46 -151.5 92t-116.5 124t-47 174q0 160 122.5 266.5t333.5 106.5q184 0 359 -62l-43 -192q-156 70 -318 69q-106 0 -173.5 -44t-67.5 -122 q0 -66 47 -120t116.5 -88.5t151.5 -79.5t151.5 -92.5t116.5 -127t47 -180.5q0 -176 -132 -276.5t-328 -100.5q-106 0 -208 29t-149 57z" />
-<glyph unicode="T" horiz-adv-x="1220" d="M35 1190v176h1151v-176h-473v-1190h-209v1190h-469z" />
-<glyph unicode="U" horiz-adv-x="1466" d="M170 500v866h211v-836q0 -193 96 -283.5t258 -90.5q160 0 256 92t96 272v846h209v-838q0 -260 -160.5 -406.5t-402.5 -146.5q-252 0 -407.5 128.5t-155.5 396.5z" />
-<glyph unicode="V" horiz-adv-x="1220" d="M20 1366h224l370 -1063l371 1063h215l-489 -1376h-203z" />
-<glyph unicode="W" horiz-adv-x="1957" d="M45 1366h217l313 -1071l312 1071h190l309 -1073l316 1073h211l-416 -1376h-215l-303 1014l-303 -1014h-217z" />
-<glyph unicode="X" horiz-adv-x="1239" d="M43 0l453 680l-453 686h248l332 -516l331 516h242l-453 -682l453 -684h-248l-332 516l-331 -516h-242z" />
-<glyph unicode="Y" horiz-adv-x="1208" d="M8 1366h248l350 -575l357 575h237l-489 -780v-586h-211v584z" />
-<glyph unicode="Z" horiz-adv-x="1187" d="M74 0v125l741 1065h-700v176h970v-125l-731 -1065h750v-176h-1030z" />
-<glyph unicode="[" horiz-adv-x="589" d="M164 -324v1690h391v-127h-236v-1436h236v-127h-391z" />
-<glyph unicode="\" horiz-adv-x="950" d="M66 1366h157l682 -1767h-160z" />
-<glyph unicode="]" horiz-adv-x="587" d="M33 -205h237v1452h-237v119h391v-1690h-391v119z" />
-<glyph unicode="^" horiz-adv-x="991" d="M-4 512l438 879h121l438 -879h-168l-331 668l-332 -668h-166z" />
-<glyph unicode="_" horiz-adv-x="1081" d="M29 -76h1024v-129h-1024v129z" />
-<glyph unicode="`" horiz-adv-x="1038" d="M311 1438h205l209 -336l-113 -64z" />
-<glyph unicode="a" horiz-adv-x="980" d="M66 213q0 285 548 356v17q0 43 -1 64.5t-8 53t-21.5 47t-42 26.5t-68.5 11q-68 0 -140.5 -26.5t-111.5 -52.5l-41 -27l-53 152q18 12 51 31.5t137.5 52t212.5 32.5q162 0 225.5 -68.5t63.5 -228.5v-391q0 -51 25.5 -79.5t50.5 -32.5l27 -5l-62 -159q-180 12 -227 143 q-18 -29 -48 -58.5t-99.5 -62.5t-151.5 -33q-121 0 -193.5 67t-72.5 171zM274 227q0 -92 109 -92t231 144v159q-340 -51 -340 -211z" />
-<glyph unicode="b" horiz-adv-x="1079" d="M139 20v1412l203 32v-618q92 104 250 104q186 0 294.5 -129t108.5 -325q0 -217 -134 -369t-384 -152q-145 0 -338 45zM342 150q63 -20 139 -21q137 0 221 92t84 260q0 143 -62 224t-165 81q-111 0 -217 -96v-540z" />
-<glyph unicode="c" horiz-adv-x="944" d="M80 451q0 203 134 351t353 148q90 0 169 -24.5t112 -48.5l35 -25l-80 -152q-96 86 -232 86q-125 0 -202.5 -91t-77.5 -234q0 -139 75.5 -229.5t202.5 -90.5q141 4 248 97l66 -144q-12 -12 -36 -32.5t-109 -53.5t-183 -33q-213 0 -344 135.5t-131 340.5z" />
-<glyph unicode="d" horiz-adv-x="1099" d="M82 434q0 213 131 364.5t365 151.5q92 0 172 -30v512l202 32v-1179q0 -49 10.5 -121t20.5 -119l10 -45l-194 -14q-18 76 -29 141q-94 -152 -291 -152q-178 0 -287.5 132t-109.5 327zM295 446q0 -143 60.5 -226t158.5 -83q135 0 236 150v381q-6 123 -162 123 q-135 0 -214 -90.5t-79 -254.5z" />
-<glyph unicode="e" horiz-adv-x="1003" d="M82 449q0 215 126 358t327 143q170 0 275 -113.5t105 -318.5l-116 -33l-506 -67q16 -129 92 -203t195 -74q70 0 140.5 29t106.5 57l37 29l58 -147q-16 -14 -46 -37t-127.5 -60t-199.5 -37q-221 0 -344 137.5t-123 336.5zM293 553l401 51q0 8 -2 20.5t-13 45t-27.5 57.5 t-51.5 45.5t-80 20.5q-94 0 -153.5 -67t-73.5 -173z" />
-<glyph unicode="f" horiz-adv-x="698" d="M51 772v109l146 53v90q0 223 113.5 348t297.5 125q72 0 139.5 -19.5t98.5 -39.5l31 -19l-80 -155q-90 66 -191 65q-90 0 -148.5 -70.5t-58.5 -222.5v-110h256v-154h-256v-772h-202v772h-146z" />
-<glyph unicode="g" horiz-adv-x="1036" d="M53 -242q0 152 236 275q-152 51 -152 131q0 90 146 172q-88 43 -136.5 119.5t-48.5 171.5q0 150 115 236.5t279 86.5q57 0 138 -19.5t130 -19.5h106q27 0 57.5 5.5t47.5 9.5l18 6l15 -162h-111q-39 0 -76 6q68 -78 68 -170q0 -143 -124 -227t-286 -84q-47 0 -67 4 q-76 -51 -76 -76q0 -33 235 -90l47 -12q63 -16 101.5 -27.5t91.5 -34t83 -47t52.5 -64.5t22.5 -89q0 -141 -148.5 -242.5t-357.5 -101.5q-166 0 -286 64t-120 179zM236 -209q0 -63 68.5 -96t166.5 -33q123 0 209 48t86 118q0 55 -58.5 84t-209.5 68q-20 6 -62 14 q-63 -35 -95 -55.5t-68.5 -62.5t-36.5 -85zM297 621q0 -74 50 -128.5t142 -54.5q86 0 140.5 47t54.5 125q0 76 -51 136.5t-144 60.5q-88 0 -140 -55t-52 -131z" />
-<glyph unicode="h" horiz-adv-x="1089" d="M143 0v1432l203 32v-694q170 180 363 180q117 0 182 -69.5t65 -212.5v-668h-202v594q0 180 -111 180q-119 0 -297 -178v-596h-203z" />
-<glyph unicode="i" d="M119 1272q0 53 37 89t90 36q55 0 92 -36t37 -89t-37 -89t-92 -36q-53 0 -90 36t-37 89zM143 0v926h203v-926h-203z" />
-<glyph unicode="j" d="M-90 -324q111 20 172 96t61 236v918h203v-895q0 -457 -375 -516zM117 1272q0 53 36.5 89t90.5 36q55 0 92 -36t37 -89t-37 -89t-92 -36q-53 0 -90 36t-37 89z" />
-<glyph unicode="k" horiz-adv-x="1011" d="M143 0v1432l203 32v-876h29l336 338h264l-422 -406l451 -520h-261l-368 438h-29v-438h-203z" />
-<glyph unicode="l" d="M143 0v1432l203 32v-1464h-203z" />
-<glyph unicode="m" horiz-adv-x="1656" d="M139 0v909l199 33v-174q166 182 358 182q188 0 230 -182q168 182 356 182q113 0 176.5 -69.5t63.5 -212.5v-668h-201v594q0 180 -106.5 180t-278.5 -168v-606h-203v594q0 180 -104 180q-115 0 -287 -172v-602h-203z" />
-<glyph unicode="n" horiz-adv-x="1085" d="M139 0v909l199 33v-176q168 184 369 184q115 0 180 -69.5t65 -212.5v-668h-202v594q0 180 -111 180q-117 0 -297 -174v-600h-203z" />
-<glyph unicode="o" horiz-adv-x="1114" d="M80 459q0 195 125 343t356 148q219 0 346 -139t127 -330q0 -88 -29.5 -175t-85 -161.5t-151.5 -122t-215 -47.5q-219 0 -346 143.5t-127 340.5zM291 477q0 -141 68.5 -240.5t199.5 -99.5q117 0 190.5 89t73.5 229q0 137 -67.5 235t-198.5 98q-119 0 -192.5 -86 t-73.5 -225z" />
-<glyph unicode="p" horiz-adv-x="1085" d="M139 -477v1386l197 33v-147q84 156 276 155q178 0 285 -132t107 -326q0 -215 -127 -366t-340 -151q-127 0 -195 50v-469zM342 240q0 -104 158 -105q133 0 212 89t79 253q0 141 -58.5 223t-154.5 82q-133 0 -236 -149v-393z" />
-<glyph unicode="q" horiz-adv-x="1079" d="M82 430q0 217 135 368.5t385 151.5l338 -45v-1349l-203 -33v555q-94 -102 -252 -103q-186 0 -294.5 129t-108.5 326zM293 444q0 -139 61.5 -219t163.5 -80q115 0 219 95v534q-66 20 -139 21q-137 0 -221 -91.5t-84 -259.5z" />
-<glyph unicode="r" horiz-adv-x="712" d="M139 0v909l199 33v-186q113 195 272 194l80 -16l-41 -205q-41 16 -82 16q-117 0 -225 -172v-573h-203z" />
-<glyph unicode="s" horiz-adv-x="823" d="M78 57l43 172q12 -10 34.5 -25.5t92 -42t135.5 -26.5q78 0 119 27.5t41 75.5q0 53 -70 98t-152.5 76.5t-152.5 101.5t-70 168q0 117 89 192.5t270 75.5q162 0 264 -51l-47 -166q-106 57 -225 58q-147 0 -148 -93q0 -43 46 -77.5t110.5 -63.5t130 -63.5t111.5 -95 t46 -142.5q0 -127 -96 -204t-264 -77q-86 0 -163 20.5t-111 41.5z" />
-<glyph unicode="t" horiz-adv-x="774" d="M55 772v111l142 51v211l198 43v-262h293v-154h-293v-469q0 -158 107 -158q27 0 59.5 11.5t52.5 23.5l48 30q27 17 28 17l51 -153l-39 -27q-25 -16 -98.5 -44t-146.5 -28q-125 0 -194.5 69t-69.5 208v520h-138z" />
-<glyph unicode="u" horiz-adv-x="1079" d="M133 254v672h203v-594q0 -180 115 -180q113 0 276 151v623h203v-641q0 -49 10 -120t21 -116l10 -47l-197 -18q-20 96 -31 163q-162 -172 -358 -172q-252 0 -252 279z" />
-<glyph unicode="v" horiz-adv-x="952" d="M27 926h213l225 -672l260 672h207l-381 -934h-189z" />
-<glyph unicode="w" horiz-adv-x="1542" d="M37 926h209l203 -701l239 701h176l217 -697l224 697h206l-331 -934h-199l-213 659l-238 -659h-196z" />
-<glyph unicode="x" horiz-adv-x="958" d="M43 0l319 463l-319 463h236l202 -308l205 308h227l-317 -459l317 -467h-227l-209 315l-213 -315h-221z" />
-<glyph unicode="y" horiz-adv-x="952" d="M23 926h215l243 -635l240 635h209l-402 -996q-156 -385 -432 -415l-63 161q98 16 177 88t122 173l49 110z" />
-<glyph unicode="z" horiz-adv-x="903" d="M80 0v123l461 639h-445v164h711v-123l-471 -639h487v-164h-743z" />
-<glyph unicode="{" horiz-adv-x="692" d="M29 475v125q45 2 81.5 16.5t61.5 46t43 61.5t29.5 82t17.5 86t9 95.5t3 87.5v84v31q0 166 117 247t311 81v-119q-94 -6 -147 -23.5t-79.5 -60.5t-34 -91t-7.5 -143q0 -457 -217 -540v-4q92 -35 154.5 -169.5t62.5 -394.5q0 -76 4 -117.5t18.5 -82.5t44 -61.5t78 -35 t123.5 -20.5v-119q-428 0 -428 328q0 279 -28 393q-55 213 -217 217z" />
-<glyph unicode="|" horiz-adv-x="479" d="M162 -461v1995h155v-1995h-155z" />
-<glyph unicode="}" horiz-adv-x="692" d="M-8 -344q76 6 123 20.5t76.5 35t44 61.5t18.5 83t4 117q0 260 62.5 394.5t154.5 169.5v4q-217 84 -217 540q0 94 -7 143.5t-34 91.5t-79 59.5t-146 23.5v119q195 0 310.5 -81t115.5 -247q0 -268 28 -377q53 -209 218 -213v-125q-45 -2 -82 -17.5t-61.5 -48t-43 -64.5 t-30 -86t-17.5 -90t-9 -99.5t-3 -89.5v-84v-31q0 -328 -426 -328v119z" />
-<glyph unicode="~" horiz-adv-x="1191" d="M123 352q0 330 274 330q80 0 141.5 -30.5t92.5 -67.5t74 -68t90 -31q133 0 133 189h145q0 -330 -274 -330q-80 0 -141.5 31t-92 67.5t-73.5 67.5t-91 31q-133 0 -133 -189h-145z" />
-<glyph unicode="&#xa0;" />
-<glyph unicode="&#xa1;" horiz-adv-x="548" d="M137 813q0 57 41 97t98.5 40t97.5 -40t40 -97t-40 -98t-98 -41q-59 0 -99 40t-40 99zM156 -465l34 963h170l31 -963h-235z" />
-<glyph unicode="&#xa2;" horiz-adv-x="944" d="M80 569q0 168 104.5 293t290.5 144l6 180h94l-6 -178q178 -12 281 -113l6 -6l-106 -133q-72 70 -185 84l-18 -537q59 2 118.5 25.5t88.5 46.5l30 22l66 -141q-12 -12 -35.5 -31.5t-102.5 -52.5t-169 -35l-6 -182h-95l7 186q-168 25 -268.5 144.5t-100.5 283.5zM285 575 q0 -92 44 -163.5t124 -96.5l16 521q-86 -20 -135 -91.5t-49 -169.5z" />
-<glyph unicode="&#xa3;" horiz-adv-x="1116" d="M78 117q6 2 14 5t31.5 18.5t42 34t36 52t21.5 72.5l23 190h-125v109h139l21 168q49 395 378 395q57 0 110.5 -12t88.5 -29.5t61.5 -36t38.5 -30.5l13 -13l-109 -133q-8 10 -24.5 25.5t-70.5 40t-112 24.5q-78 0 -122 -52t-56 -185l-16 -162h364l-12 -109h-362 q-8 -84 -25.5 -161.5t-32.5 -114.5l-12 -35q150 -63 283 -63q178 0 204 149l13 68h151q-8 -80 -26.5 -141.5t-53 -120t-97 -90t-150.5 -31.5q-86 0 -227.5 42t-196.5 42q-70 0 -162 -33z" />
-<glyph unicode="&#xa5;" horiz-adv-x="1148" d="M78 1137h221l274 -471l281 471h209l-289 -473h215v-109h-280l-35 -59v-84h315v-109h-315v-303h-203v303h-295v109h295v82l-39 61h-256v109h191z" />
-<glyph unicode="&#xa6;" horiz-adv-x="497" d="M166 358h166v-733h-166v733zM166 676v733h166v-733h-166z" />
-<glyph unicode="&#xa7;" horiz-adv-x="1005" d="M57 -379l62 119q133 -96 278 -96q121 0 184.5 88t63.5 229q0 66 -10 117l-111 606q-23 131 -22 205q0 135 53 213l127 -23q-35 -76 -35 -188q0 -53 10 -115l121 -682q12 -70 13 -137q0 -193 -98.5 -317.5t-291.5 -124.5q-184 0 -338 102zM190 948q0 193 97.5 318 t290.5 125q184 0 337 -103l7 -4l-62 -119q-133 96 -278 97q-121 0 -184.5 -89.5t-63.5 -228.5q0 -68 10 -117l111 -606q20 -119 20 -205q0 -137 -51 -213l-125 23q35 82 35 188q0 53 -10 115l-121 682q-13 69 -13 137z" />
-<glyph unicode="&#xa8;" horiz-adv-x="1038" d="M199 1270q0 51 34.5 83.5t86 32.5t85 -32.5t33.5 -83.5t-33.5 -83t-85 -32t-86 33t-34.5 82zM598 1270q0 51 34 83.5t85 32.5t86 -32.5t35 -83.5q0 -49 -35 -82t-86 -33t-85 32t-34 83z" />
-<glyph unicode="&#xa9;" horiz-adv-x="1583" d="M84 682q0 293 208 500t498.5 207t498.5 -207t208 -500t-208 -500t-498.5 -207t-498.5 207t-208 500zM195 682q0 -252 173 -430t423 -178q252 0 425 178t173 430t-173.5 430t-424.5 178q-250 0 -423 -178t-173 -430zM395 678q0 170 111.5 297t306.5 127q180 0 287 -113 l8 -10l-92 -121q-8 10 -25.5 26.5t-72 43t-111.5 26.5q-111 0 -172.5 -75.5t-61.5 -186.5q0 -113 69 -191.5t183 -78.5q129 4 224 98l55 -127q-10 -12 -31.5 -32.5t-96.5 -53.5t-163 -33q-184 0 -301 116t-117 288z" />
-<glyph unicode="&#xaa;" horiz-adv-x="796" d="M88 874q0 201 387 256q0 76 -16.5 107t-75.5 31q-109 0 -213 -84l-39 125q115 80 295 80q119 0 166 -48.5t47 -158.5v-269q8 -72 74 -79l-45 -121q-143 6 -179 94q-78 -100 -208 -100q-86 0 -139.5 45.5t-53.5 121.5zM258 891q0 -63 66 -64q68 0 151 97v106 q-217 -35 -217 -139z" />
-<glyph unicode="&#xab;" horiz-adv-x="1046" d="M43 510v8q31 23 199 211l194 217l125 -35l-303 -397l303 -397l-125 -35l-166 182l-109 121l-60 66q-26 29 -36 39t-22 20zM438 510v8q29 23 197 209l199 219l122 -35l-301 -397l301 -397l-122 -35l-168 182l-109 121l-59 66q-27 29 -37.5 39t-22.5 20z" />
-<glyph unicode="&#xac;" horiz-adv-x="1171" d="M104 655v146h943v-574h-154v428h-789z" />
-<glyph unicode="&#xad;" horiz-adv-x="720" d="M111 438v156h499v-156h-499z" />
-<glyph unicode="&#xae;" horiz-adv-x="876" d="M84 1087.5q0 145.5 104.5 250t250 104.5t250 -104.5t104.5 -250t-104.5 -250t-250 -104.5t-250 104.5t-104.5 250zM156 1087.5q0 -118.5 83 -205.5t197.5 -87t199.5 87t85 205.5t-85 204.5t-199.5 86t-197.5 -86t-83 -204.5zM307 918v348h123q143 0 143 -105 q0 -66 -65 -98l106 -145h-98l-88 126h-33v-126h-88zM395 1102h41q47 0 47 51q0 53 -61 53h-27v-104z" />
-<glyph unicode="&#xaf;" horiz-adv-x="991" d="M248 1194v141h493v-141h-493z" />
-<glyph unicode="&#xb0;" horiz-adv-x="665" d="M84 1144.5q0 102.5 72.5 174.5t177 72t177.5 -72t73 -174.5t-73 -174t-177.5 -71.5t-177 71.5t-72.5 174zM193 1144.5q0 -61.5 40.5 -103.5t100 -42t99.5 42t40 103.5t-40 103.5t-99.5 42t-100 -42t-40.5 -103.5z" />
-<glyph unicode="&#xb1;" horiz-adv-x="1064" d="M84 635v145h369v363h155v-363h371v-145h-371v-375h-155v375h-369zM92 0v147h885v-147h-885z" />
-<glyph unicode="&#xb2;" horiz-adv-x="706" d="M57 856l76 74l78 76l67 68q44 46 63 74l45 65q26 38 35 71t9 66q0 57 -35 87.5t-90 30.5q-39 0 -78 -17t-59 -34l-18 -18l-84 100q10 12 31.5 30.5t91 50.5t147.5 32q121 0 191.5 -66.5t70.5 -175.5q0 -96 -65.5 -200.5t-235.5 -270.5h350v-129h-579z" />
-<glyph unicode="&#xb3;" horiz-adv-x="669" d="M45 823l66 115q78 -47 168 -47q68 0 106.5 31.5t38.5 78.5q0 57 -53.5 86t-126.5 29h-58v127q76 4 138.5 47t62.5 107q0 78 -94 78q-37 0 -76 -12.5t-57 -24.5l-21 -13l-63 105q102 82 246 82q106 0 171.5 -54.5t65.5 -136.5q0 -72 -47 -127t-117 -84q94 -20 147.5 -73.5 t53.5 -130.5q0 -104 -89 -177t-224 -73q-140 -1 -238 67z" />
-<glyph unicode="&#xb4;" horiz-adv-x="1050" d="M313 1102l209 336h205l-301 -400z" />
-<glyph unicode="&#xb5;" horiz-adv-x="1173" d="M139 -442q20 199 21 362v1006h200v-594q0 -180 117 -180q111 0 277 151v623h202v-666q0 -84 22.5 -103.5t111.5 -19.5v-151q-72 -10 -113 -11q-106 0 -153.5 43t-59.5 121q-164 -164 -352 -164q-49 0 -93 13q4 -86 20.5 -240t16.5 -190h-217z" />
-<glyph unicode="&#x3bc;" horiz-adv-x="1173" d="M139 -442q20 199 21 362v1006h200v-594q0 -180 117 -180q111 0 277 151v623h202v-666q0 -84 22.5 -103.5t111.5 -19.5v-151q-72 -10 -113 -11q-106 0 -153.5 43t-59.5 121q-164 -164 -352 -164q-49 0 -93 13q4 -86 20.5 -240t16.5 -190h-217z" />
-<glyph unicode="&#xb6;" horiz-adv-x="1366" d="M68 864q0 203 154.5 352.5t430.5 149.5h613v-125h-152v-1241h-135v1241h-154v-1282q0 -444 -366 -444l-31 137q133 0 193.5 73.5t60.5 241.5v400h-18q-291 0 -443.5 145t-152.5 352z" />
-<glyph unicode="&#xb7;" horiz-adv-x="520" d="M121 520q0 57 41 98t98 41t98 -40.5t41 -98.5q0 -55 -41 -96t-98 -41t-98 41t-41 96z" />
-<glyph unicode="&#xb8;" horiz-adv-x="1038" d="M332 -422l47 107q66 -57 147 -58q45 0 73 17.5t28 44.5q0 23 -27 41t-57.5 30.5t-57 36t-26.5 56.5q0 25 35 104l22 43h111l-17 -37q-20 -41 -20 -61q0 -23 27.5 -40.5t60.5 -29.5t60.5 -45t27.5 -80q0 -78 -66.5 -135t-169.5 -57q-53 0 -102 15t-72 32z" />
-<glyph unicode="&#xb9;" horiz-adv-x="606" d="M66 770v121h180v586h-164v120h326v-706h167v-121h-509z" />
-<glyph unicode="&#xba;" horiz-adv-x="860" d="M84 1044q0 135 91 240t259 105q160 0 252 -97.5t92 -230.5q0 -135 -91 -244.5t-259 -109.5q-160 0 -252 100t-92 237zM256 1059q0 -96 45 -164t131 -68q78 0 126 60.5t48 154.5q0 92 -44 159t-132 67q-78 0 -126 -58.5t-48 -150.5z" />
-<glyph unicode="&#xbb;" horiz-adv-x="1046" d="M90 117l303 397l-303 397l125 35q360 -399 379 -418q6 -4 14 -10v-8q-12 -10 -22.5 -20.5t-35.5 -38.5l-60 -66l-109 -121l-166 -182zM485 117l303 397l-303 397l125 35q360 -401 396 -428v-8q-12 -10 -22.5 -20.5l-38.5 -39.5l-59 -66l-109 -120l-167 -182z" />
-<glyph unicode="&#xbc;" horiz-adv-x="1701" d="M94 545v121h180v585h-163v121h325v-706h168v-121h-510zM389 0l813 1411l125 -49l-782 -1362h-156zM973 301l373 533h165v-508h119v-125h-119v-201h-155v201h-371zM1126 326h230v325z" />
-<glyph unicode="&#xbd;" horiz-adv-x="1806" d="M92 545v121h180v585h-163v121h325v-706h168v-121h-510zM408 0l813 1411l125 -49l-783 -1362h-155zM1143 86l76 74l77 76l67 68q44 46 63 74l45 65q26 38 35.5 71t9.5 66q0 57 -35 87.5t-90 30.5q-39 0 -78 -17t-60 -34l-18 -18l-84 100q10 12 31.5 30.5t91 50.5t147.5 32 q121 0 191.5 -66.5t70.5 -175.5q0 -96 -65.5 -200.5t-235.5 -270.5h351v-129h-580z" />
-<glyph unicode="&#xbe;" horiz-adv-x="1695" d="M78 598l65 115q78 -47 168 -47q68 0 107 31.5t39 78.5q0 57 -53.5 86t-127.5 29h-57v127q76 4 138.5 47t62.5 106q0 78 -94 78q-37 0 -76 -12t-57 -25l-21 -12l-63 105q102 82 245 81q106 0 172 -54t66 -136q0 -72 -47 -127t-117 -84q94 -20 147.5 -73.5t53.5 -131.5 q0 -104 -89 -177t-225 -73q-139 0 -237 68zM383 0l813 1411l125 -49l-782 -1362h-156zM967 301l372 533h166v-508h119v-125h-119v-201h-155v201h-371zM1120 326h230v325z" />
-<glyph unicode="&#xbf;" horiz-adv-x="743" d="M70 -82q0 49 32.5 101.5t77.5 100.5l91 100q46 52 79 125t33 153h164q6 -27 6 -60q0 -84 -39 -166t-87 -133t-87 -105t-39 -91q0 -57 91 -122t181 -100l93 -36l-45 -187q-23 6 -60 18.5t-132 54.5t-168 87t-132 115.5t-59 144.5zM319 813q0 57 41 97t98.5 40t98.5 -40 t41 -97t-41 -98t-98.5 -41t-98.5 41t-41 98z" />
-<glyph unicode="&#xc0;" horiz-adv-x="1282" d="M20 0l521 1376h200l521 -1376h-218l-135 365h-544l-134 -365h-211zM358 1606l68 166l416 -195l-43 -115zM430 541h416l-209 565z" />
-<glyph unicode="&#xc1;" horiz-adv-x="1282" d="M20 0l521 1376h200l521 -1376h-218l-135 365h-544l-134 -365h-211zM430 541h416l-209 565zM434 1577l416 195l68 -166l-441 -144z" />
-<glyph unicode="&#xc2;" horiz-adv-x="1282" d="M20 0l521 1376h200l521 -1376h-218l-135 365h-544l-134 -365h-211zM297 1552l258 232h168l256 -232l-111 -82l-229 191l-233 -191zM430 541h416l-209 565z" />
-<glyph unicode="&#xc3;" horiz-adv-x="1282" d="M20 0l521 1376h200l521 -1376h-218l-135 365h-544l-134 -365h-211zM266 1495q4 2 0 26.5t7.5 64.5t28.5 78t64.5 64.5t112.5 26.5q72 0 129.5 -33.5t100.5 -66.5t82 -33q80 16 79 131h142q-4 -2 0 -27.5t-8.5 -66.5t-31 -79t-66.5 -65.5t-115 -27.5q-72 0 -127.5 33.5 t-95.5 67.5t-79 34q-82 -16 -83 -127h-140zM430 541h416l-209 565z" />
-<glyph unicode="&#xc4;" horiz-adv-x="1282" d="M20 0l521 1376h200l521 -1376h-218l-135 365h-544l-134 -365h-211zM272 1624q0 51 35 85t88 34q49 0 84 -34t35 -85q0 -49 -35 -83t-84 -34q-51 0 -87 34t-36 83zM430 541h416l-209 565zM762 1624q0 51 34.5 85t86 34t86.5 -34t35 -85q0 -49 -35 -83t-86.5 -34t-86 34 t-34.5 83z" />
-<glyph unicode="&#xc5;" horiz-adv-x="1282" d="M20 0l521 1376h200l521 -1376h-218l-135 365h-544l-134 -365h-211zM430 541h416l-209 565zM438 1622q0 66 51.5 114t147.5 48t147.5 -48t51.5 -114q0 -72 -50.5 -120t-148.5 -48t-148.5 48t-50.5 120zM543 1620q0 -39 24.5 -65.5t69.5 -26.5q43 0 69.5 27.5t26.5 64.5 q0 35 -24.5 61.5t-71.5 26.5t-70.5 -25.5t-23.5 -62.5z" />
-<glyph unicode="&#xc6;" horiz-adv-x="1802" d="M-12 0l766 1366h948v-176h-621v-406h490v-178h-490v-430h627v-176h-836v422h-426l-233 -422h-225zM543 598h329v592z" />
-<glyph unicode="&#xc7;" horiz-adv-x="1384" d="M94 668q0 309 206 516t542 207q127 0 242.5 -29t166.5 -57l52 -29l-82 -184q-16 12 -48 31.5t-134.5 52t-209.5 32.5q-240 0 -377 -152.5t-137 -369.5q0 -229 146.5 -378.5t367.5 -149.5q106 0 208 33.5t151 66.5l47 33l86 -158l-22 -16q-13 -10 -62 -38t-103.5 -48.5 t-139.5 -38t-175 -17.5l-4 -12q-20 -41 -20 -61q0 -23 27.5 -40.5t60 -29.5t60.5 -45t28 -80q0 -78 -66.5 -135t-169.5 -57q-53 0 -102 15t-72 32l-24 16l47 107q66 -57 147 -58q45 0 72.5 17.5t27.5 44.5q0 23 -26.5 41t-57 30.5t-57 36t-26.5 56.5q0 25 34 104l13 25 q-270 31 -443.5 217t-173.5 469z" />
-<glyph unicode="&#xc8;" horiz-adv-x="1116" d="M186 0v1366h832v-176h-621v-406h490v-178h-490v-430h627v-176h-838zM334 1606l67 166l416 -195l-43 -115z" />
-<glyph unicode="&#xc9;" horiz-adv-x="1116" d="M186 0v1366h832v-176h-621v-406h490v-178h-490v-430h627v-176h-838zM410 1577l415 195l68 -166l-440 -144z" />
-<glyph unicode="&#xca;" horiz-adv-x="1116" d="M186 0v1366h832v-176h-621v-406h490v-178h-490v-430h627v-176h-838zM272 1552l258 232h168l256 -232l-110 -82l-230 191l-233 -191z" />
-<glyph unicode="&#xcb;" horiz-adv-x="1116" d="M186 0v1366h832v-176h-621v-406h490v-178h-490v-430h627v-176h-838zM248 1624q0 51 34.5 85t88.5 34q49 0 83.5 -34t34.5 -85q0 -49 -34.5 -83t-83.5 -34q-51 0 -87 34t-36 83zM737 1624q0 51 35 85t86 34t86 -34t35 -85q0 -49 -35 -83t-86 -34t-86 34t-35 83z" />
-<glyph unicode="&#xcc;" horiz-adv-x="585" d="M14 1606l68 166l416 -195l-43 -115zM186 0v1366h211v-1366h-211z" />
-<glyph unicode="&#xcd;" horiz-adv-x="585" d="M90 1577l416 195l67 -166l-440 -144zM186 0v1366h211v-1366h-211z" />
-<glyph unicode="&#xce;" horiz-adv-x="585" d="M-47 1552l258 232h168l256 -232l-111 -82l-229 191l-234 -191zM186 0v1366h211v-1366h-211z" />
-<glyph unicode="&#xcf;" horiz-adv-x="585" d="M-23 1626q0 51 35 84t86.5 33t85 -33t33.5 -84t-33.5 -83t-85 -32t-86.5 33t-35 82zM186 0v1366h211v-1366h-211zM377 1626q0 51 33.5 84t85 33t86 -33t34.5 -84q0 -49 -34.5 -82t-86 -33t-85 32t-33.5 83z" />
-<glyph unicode="&#xd0;" horiz-adv-x="1507" d="M63 608v170h148v588h444q145 0 275.5 -36t241 -111.5t175 -207.5t64.5 -306q0 -336 -227.5 -520.5t-605.5 -184.5h-367v608h-148zM420 176h137q326 0 478.5 140.5t152.5 372t-145.5 366.5t-415.5 135h-207v-412h338v-170h-338v-432z" />
-<glyph unicode="&#xd1;" horiz-adv-x="1529" d="M186 0v1366h213l738 -1047v1047h206v-1366h-213l-737 1034v-1034h-207zM393 1495q4 2 0 26.5t7.5 64.5t28.5 78t64.5 64.5t112.5 26.5q72 0 129.5 -33.5t100.5 -66.5t82 -33q80 16 79 131h142q-4 -2 0 -27.5t-8.5 -66.5t-31 -79t-66.5 -65.5t-115 -27.5 q-72 0 -127.5 33.5t-95.5 67.5t-79 34q-82 -16 -84 -127h-139z" />
-<glyph unicode="&#xd2;" horiz-adv-x="1634" d="M92 680q0 184 83 344t253 263.5t395 103.5q324 0 521.5 -196t197.5 -486q0 -299 -207 -516.5t-530 -217.5q-315 0 -514 207t-199 498zM315 690q0 -209 134.5 -371.5t361.5 -162.5q229 0 368.5 161.5t139.5 374.5q0 211 -135 364.5t-366.5 153.5t-367 -154.5 t-135.5 -365.5zM537 1606l67 166l416 -195l-43 -115z" />
-<glyph unicode="&#xd3;" horiz-adv-x="1634" d="M92 680q0 184 83 344t253 263.5t395 103.5q324 0 521.5 -196t197.5 -486q0 -299 -207 -516.5t-530 -217.5q-315 0 -514 207t-199 498zM315 690q0 -209 134.5 -371.5t361.5 -162.5q229 0 368.5 161.5t139.5 374.5q0 211 -135 364.5t-366.5 153.5t-367 -154.5 t-135.5 -365.5zM612 1577l416 195l68 -166l-441 -144z" />
-<glyph unicode="&#xd4;" horiz-adv-x="1634" d="M92 680q0 184 83 344t253 263.5t395 103.5q324 0 521.5 -196t197.5 -486q0 -299 -207 -516.5t-530 -217.5q-315 0 -514 207t-199 498zM315 690q0 -209 134.5 -371.5t361.5 -162.5q229 0 368.5 161.5t139.5 374.5q0 211 -135 364.5t-366.5 153.5t-367 -154.5 t-135.5 -365.5zM475 1552l258 232h168l256 -232l-110 -82l-230 191l-233 -191z" />
-<glyph unicode="&#xd5;" horiz-adv-x="1634" d="M92 680q0 184 83 344t253 263.5t395 103.5q324 0 521.5 -196t197.5 -486q0 -299 -207 -516.5t-530 -217.5q-315 0 -514 207t-199 498zM315 690q0 -209 134.5 -371.5t361.5 -162.5q229 0 368.5 161.5t139.5 374.5q0 211 -135 364.5t-366.5 153.5t-367 -154.5 t-135.5 -365.5zM444 1495q4 2 0 26.5t7.5 64.5t29 78t64.5 64.5t112 26.5q72 0 129.5 -33.5t100.5 -66.5t82 -33q80 16 80 131h141q-4 -2 0 -27.5t-8.5 -66.5t-30.5 -79t-66.5 -65.5t-115.5 -27.5q-72 0 -127.5 33.5t-95 67.5t-78.5 34q-82 -16 -84 -127h-140z" />
-<glyph unicode="&#xd6;" horiz-adv-x="1634" d="M92 680q0 184 83 344t253 263.5t395 103.5q324 0 521.5 -196t197.5 -486q0 -299 -207 -516.5t-530 -217.5q-315 0 -514 207t-199 498zM315 690q0 -209 134.5 -371.5t361.5 -162.5q229 0 368.5 161.5t139.5 374.5q0 211 -135 364.5t-366.5 153.5t-367 -154.5 t-135.5 -365.5zM451 1624q0 51 34.5 85t87.5 34q49 0 84 -34t35 -85q0 -49 -34.5 -83t-84.5 -34q-51 0 -86.5 34t-35.5 83zM940 1624q0 51 35 85t86 34t86 -34t35 -85q0 -49 -35 -83t-86 -34t-86 34t-35 83z" />
-<glyph unicode="&#xd7;" horiz-adv-x="1064" d="M78 150l354 364l-354 367l98 102l356 -367l357 367l98 -102l-356 -367l356 -364l-100 -103l-355 365l-354 -365z" />
-<glyph unicode="&#xd8;" horiz-adv-x="1634" d="M92 680q0 184 83 344t253 263.5t395 103.5q213 0 381 -95l99 131h145l-148 -194q115 -94 178.5 -230.5t63.5 -293.5q0 -299 -207 -516.5t-530 -217.5q-211 0 -383 103l-107 -139h-147l160 208q-236 207 -236 533zM315 690q0 -221 138 -377l630 826q-117 72 -266 71 q-231 0 -366.5 -155.5t-135.5 -364.5zM541 236q119 -80 270 -80q229 0 368.5 161.5t139.5 374.5q0 223 -145 375z" />
-<glyph unicode="&#xd9;" horiz-adv-x="1466" d="M170 500v866h211v-836q0 -193 96 -283.5t258 -90.5q160 0 256 92t96 272v846h209v-838q0 -260 -160.5 -406.5t-402.5 -146.5q-252 0 -407.5 128.5t-155.5 396.5zM453 1606l67 166l416 -195l-43 -115z" />
-<glyph unicode="&#xda;" horiz-adv-x="1466" d="M170 500v866h211v-836q0 -193 96 -283.5t258 -90.5q160 0 256 92t96 272v846h209v-838q0 -260 -160.5 -406.5t-402.5 -146.5q-252 0 -407.5 128.5t-155.5 396.5zM528 1577l416 195l68 -166l-441 -144z" />
-<glyph unicode="&#xdb;" horiz-adv-x="1466" d="M170 500v866h211v-836q0 -193 96 -283.5t258 -90.5q160 0 256 92t96 272v846h209v-838q0 -260 -160.5 -406.5t-402.5 -146.5q-252 0 -407.5 128.5t-155.5 396.5zM391 1552l258 232h168l256 -232l-110 -82l-230 191l-233 -191z" />
-<glyph unicode="&#xdc;" horiz-adv-x="1466" d="M170 500v866h211v-836q0 -193 96 -283.5t258 -90.5q160 0 256 92t96 272v846h209v-838q0 -260 -160.5 -406.5t-402.5 -146.5q-252 0 -407.5 128.5t-155.5 396.5zM367 1624q0 51 34.5 85t87.5 34q49 0 84 -34t35 -85q0 -49 -34.5 -83t-84.5 -34q-51 0 -86.5 34t-35.5 83z M856 1624q0 51 35 85t86 34t86 -34t35 -85q0 -49 -35 -83t-86 -34t-86 34t-35 83z" />
-<glyph unicode="&#xdd;" horiz-adv-x="1208" d="M8 1366h248l350 -575l357 575h237l-489 -780v-586h-211v584zM408 1577l415 195l68 -166l-440 -144z" />
-<glyph unicode="&#xde;" horiz-adv-x="1169" d="M186 0v1366h211v-297h248q242 0 353.5 -104.5t111.5 -268.5q0 -190 -126 -297.5t-339 -107.5h-248v-291h-211zM397 467h213q276 0 277 215q0 211 -277 211h-213v-426z" />
-<glyph unicode="&#xdf;" horiz-adv-x="1185" d="M51 772v109l146 53v76q0 223 108.5 345t310.5 122q172 0 269.5 -84t97.5 -209q0 -66 -29.5 -126.5t-65.5 -99t-65.5 -91t-29.5 -99.5q0 -53 34.5 -99t84.5 -85l101 -81q50 -42 85 -104.5t35 -136.5q0 -129 -97.5 -208t-261.5 -79q-158 0 -252 66l35 168q92 -74 211 -74 q72 0 113 34t41 89q0 47 -34 89t-81 77t-94 74t-81 99t-34 136q0 72 28.5 133.5t62.5 98t62.5 89t28.5 105.5q0 76 -51 116t-123 40q-96 0 -151.5 -73t-55.5 -224v-1018h-202v772h-146z" />
-<glyph unicode="&#xe0;" horiz-adv-x="980" d="M66 213q0 285 548 356v17q0 43 -1 64.5t-8 53t-21.5 47t-42 26.5t-68.5 11q-68 0 -140.5 -26.5t-111.5 -52.5l-41 -27l-53 152q18 12 51 31.5t137.5 52t212.5 32.5q162 0 225.5 -68.5t63.5 -228.5v-391q0 -51 25.5 -79.5t50.5 -32.5l27 -5l-62 -159q-180 12 -227 143 q-18 -29 -48 -58.5t-99.5 -62.5t-151.5 -33q-121 0 -193.5 67t-72.5 171zM160 1438h205l208 -336l-112 -64zM274 227q0 -92 109 -92t231 144v159q-340 -51 -340 -211z" />
-<glyph unicode="&#xe1;" horiz-adv-x="980" d="M66 213q0 285 548 356v17q0 43 -1 64.5t-8 53t-21.5 47t-42 26.5t-68.5 11q-68 0 -140.5 -26.5t-111.5 -52.5l-41 -27l-53 152q18 12 51 31.5t137.5 52t212.5 32.5q162 0 225.5 -68.5t63.5 -228.5v-391q0 -51 25.5 -79.5t50.5 -32.5l27 -5l-62 -159q-180 12 -227 143 q-18 -29 -48 -58.5t-99.5 -62.5t-151.5 -33q-121 0 -193.5 67t-72.5 171zM274 227q0 -92 109 -92t231 144v159q-340 -51 -340 -211zM365 1102l208 336h205l-301 -400z" />
-<glyph unicode="&#xe2;" horiz-adv-x="980" d="M66 213q0 285 548 356v17q0 43 -1 64.5t-8 53t-21.5 47t-42 26.5t-68.5 11q-68 0 -140.5 -26.5t-111.5 -52.5l-41 -27l-53 152q18 12 51 31.5t137.5 52t212.5 32.5q162 0 225.5 -68.5t63.5 -228.5v-391q0 -51 25.5 -79.5t50.5 -32.5l27 -5l-62 -159q-180 12 -227 143 q-18 -29 -48 -58.5t-99.5 -62.5t-151.5 -33q-121 0 -193.5 67t-72.5 171zM170 1092l233 346h132l231 -348l-119 -54l-180 250l-178 -250zM274 227q0 -92 109 -92t231 144v159q-340 -51 -340 -211z" />
-<glyph unicode="&#xe3;" horiz-adv-x="980" d="M66 213q0 285 548 356v17q0 43 -1 64.5t-8 53t-21.5 47t-42 26.5t-68.5 11q-68 0 -140.5 -26.5t-111.5 -52.5l-41 -27l-53 152q18 12 51 31.5t137.5 52t212.5 32.5q162 0 225.5 -68.5t63.5 -228.5v-391q0 -51 25.5 -79.5t50.5 -32.5l27 -5l-62 -159q-180 12 -227 143 q-18 -29 -48 -58.5t-99.5 -62.5t-151.5 -33q-121 0 -193.5 67t-72.5 171zM145 1126q4 2 0 28t6.5 67t26 78.5t56 65.5t100.5 28q53 0 96 -25t65.5 -53.5t50 -53t52.5 -24.5q66 10 66 143h131q-4 -2 0 -28.5t-7.5 -68.5t-27 -81t-58.5 -67.5t-102 -28.5q-53 0 -95 24.5 t-63.5 54t-48 54.5t-53.5 25q-63 -8 -64 -138h-131zM274 227q0 -92 109 -92t231 144v159q-340 -51 -340 -211z" />
-<glyph unicode="&#xe4;" horiz-adv-x="980" d="M66 213q0 285 548 356v17q0 43 -1 64.5t-8 53t-21.5 47t-42 26.5t-68.5 11q-68 0 -140.5 -26.5t-111.5 -52.5l-41 -27l-53 152q18 12 51 31.5t137.5 52t212.5 32.5q162 0 225.5 -68.5t63.5 -228.5v-391q0 -51 25.5 -79.5t50.5 -32.5l27 -5l-62 -159q-180 12 -227 143 q-18 -29 -48 -58.5t-99.5 -62.5t-151.5 -33q-121 0 -193.5 67t-72.5 171zM147 1270q0 51 35 83.5t86 32.5t85 -32.5t34 -83.5t-34 -83t-85 -32t-86 33t-35 82zM274 227q0 -92 109 -92t231 144v159q-340 -51 -340 -211zM547 1270q0 51 33.5 83.5t85 32.5t86 -32.5t34.5 -83.5 q0 -49 -34.5 -82t-86 -33t-85 32t-33.5 83z" />
-<glyph unicode="&#xe5;" horiz-adv-x="980" d="M66 213q0 285 548 356v17q0 43 -1 64.5t-8 53t-21.5 47t-42 26.5t-68.5 11q-68 0 -140.5 -26.5t-111.5 -52.5l-41 -27l-53 152q18 12 51 31.5t137.5 52t212.5 32.5q162 0 225.5 -68.5t63.5 -228.5v-391q0 -51 25.5 -79.5t50.5 -32.5l27 -5l-62 -159q-180 12 -227 143 q-18 -29 -48 -58.5t-99.5 -62.5t-151.5 -33q-121 0 -193.5 67t-72.5 171zM270 1276q0 70 50.5 121t146.5 51t146.5 -51t50.5 -121q0 -72 -50.5 -125t-146.5 -53t-146.5 53t-50.5 125zM274 227q0 -92 109 -92t231 144v159q-340 -51 -340 -211zM375 1274q0 -37 23.5 -63.5 t68.5 -26.5t70.5 26.5t25.5 63.5q0 35 -24.5 60.5t-71.5 25.5t-69.5 -24.5t-22.5 -61.5z" />
-<glyph unicode="&#xe6;" horiz-adv-x="1538" d="M66 213q0 266 565 334v49q0 68 -6.5 102.5t-39 62t-98.5 27.5q-152 0 -303 -104l-4 -2l-53 152q18 12 51 31.5t136.5 52t207.5 32.5q197 0 252 -129q117 129 297 129q170 0 274.5 -111.5t104.5 -312.5l-115 -34l-508 -64q12 -129 88 -208t197 -79q72 0 142.5 28t105.5 56 l37 29l61 -145q-16 -14 -46 -37t-127 -60t-202 -37q-262 0 -381 209q-39 -82 -129 -145.5t-219 -63.5t-208.5 67t-79.5 171zM274 227q0 -92 121 -92q92 0 161 69.5t69 172.5v39q-351 -46 -351 -189zM829 563l402 49q0 8 -2 19.5t-13.5 43.5t-29 55.5t-52 43t-81.5 19.5 q-92 0 -150 -64t-74 -166z" />
-<glyph unicode="&#xe7;" horiz-adv-x="944" d="M80 451q0 203 134 351t353 148q90 0 169 -24.5t112 -48.5l35 -25l-80 -152q-96 86 -232 86q-125 0 -202.5 -91t-77.5 -234q0 -139 75.5 -229.5t202.5 -90.5q141 4 248 97l66 -144q-12 -12 -36 -31.5t-108 -53.5t-182 -34l-6 -14q-20 -41 -21 -61q0 -23 28 -40.5 t60.5 -29.5t60.5 -45t28 -80q0 -78 -67 -135t-169 -57q-53 0 -102.5 16t-73.5 33l-23 14l47 107q66 -57 148 -58q45 0 72.5 17.5t27.5 44.5q0 23 -26.5 41t-57 30.5t-57.5 36t-27 55.5q0 25 35 105l15 31q-170 33 -269.5 160t-99.5 305z" />
-<glyph unicode="&#xe8;" horiz-adv-x="1003" d="M82 449q0 215 126 358t327 143q170 0 275 -113.5t105 -318.5l-116 -33l-506 -67q16 -129 92 -203t195 -74q70 0 140.5 29t106.5 57l37 29l58 -147q-16 -14 -46 -37t-127.5 -60t-199.5 -37q-221 0 -344 137.5t-123 336.5zM205 1438h205l208 -336l-112 -64zM293 553l401 51 q0 8 -2 20.5t-13 45t-27.5 57.5t-51.5 45.5t-80 20.5q-94 0 -153.5 -67t-73.5 -173z" />
-<glyph unicode="&#xe9;" horiz-adv-x="1003" d="M82 449q0 215 126 358t327 143q170 0 275 -113.5t105 -318.5l-116 -33l-506 -67q16 -129 92 -203t195 -74q70 0 140.5 29t106.5 57l37 29l58 -147q-16 -14 -46 -37t-127.5 -60t-199.5 -37q-221 0 -344 137.5t-123 336.5zM293 553l401 51q0 8 -2 20.5t-13 45t-27.5 57.5 t-51.5 45.5t-80 20.5q-94 0 -153.5 -67t-73.5 -173zM410 1102l208 336h205l-301 -400z" />
-<glyph unicode="&#xea;" horiz-adv-x="1003" d="M82 449q0 215 126 358t327 143q170 0 275 -113.5t105 -318.5l-116 -33l-506 -67q16 -129 92 -203t195 -74q70 0 140.5 29t106.5 57l37 29l58 -147q-16 -14 -46 -37t-127.5 -60t-199.5 -37q-221 0 -344 137.5t-123 336.5zM217 1092l234 346h131l231 -348l-119 -54 l-180 250l-178 -250zM293 553l401 51q0 8 -2 20.5t-13 45t-27.5 57.5t-51.5 45.5t-80 20.5q-94 0 -153.5 -67t-73.5 -173z" />
-<glyph unicode="&#xeb;" horiz-adv-x="1003" d="M82 449q0 215 126 358t327 143q170 0 275 -113.5t105 -318.5l-116 -33l-506 -67q16 -129 92 -203t195 -74q70 0 140.5 29t106.5 57l37 29l58 -147q-16 -14 -46 -37t-127.5 -60t-199.5 -37q-221 0 -344 137.5t-123 336.5zM195 1270q0 51 34.5 83.5t86 32.5t85 -32.5 t33.5 -83.5t-33.5 -83t-85 -32t-86 33t-34.5 82zM293 553l401 51q0 8 -2 20.5t-13 45t-27.5 57.5t-51.5 45.5t-80 20.5q-94 0 -153.5 -67t-73.5 -173zM594 1270q0 51 34 83.5t85 32.5t86 -32.5t35 -83.5q0 -49 -35 -82t-86 -33t-85 32t-34 83z" />
-<glyph unicode="&#xec;" d="M-63 1438h204l209 -336l-112 -64zM143 0v926h203v-926h-203z" />
-<glyph unicode="&#xed;" d="M141 1102l209 336h205l-301 -400zM143 0v926h203v-926h-203z" />
-<glyph unicode="&#xee;" d="M-53 1092l233 346h131l232 -348l-119 -54l-180 250l-178 -250zM143 0v926h203v-926h-203z" />
-<glyph unicode="&#xef;" d="M-76 1270q0 51 35 83.5t86 32.5t85 -32.5t34 -83.5t-34 -83t-85 -32t-86 33t-35 82zM143 0v926h203v-926h-203zM324 1270q0 51 33.5 83.5t85 32.5t86 -32.5t34.5 -83.5q0 -49 -34.5 -82t-86 -33t-85 32t-33.5 83z" />
-<glyph unicode="&#xf0;" horiz-adv-x="1110" d="M80 446q0 201 128 352.5t322 151.5q158 0 228 -78q-72 176 -219 304l-265 -156l-63 115l209 122q-117 70 -266 109l41 152q217 -41 395 -160l289 170l63 -115l-242 -141q147 -133 227.5 -313.5t80.5 -383.5q0 -268 -128 -434t-354 -166q-205 0 -325.5 140.5t-120.5 330.5 zM285 465q0 -127 65.5 -227.5t184.5 -100.5q121 0 197.5 102.5t76.5 317.5q0 102 -57.5 166.5t-171.5 64.5q-129 0 -212 -91t-83 -232z" />
-<glyph unicode="&#xf1;" horiz-adv-x="1085" d="M139 0v909l199 33v-176q168 184 369 184q115 0 180 -69.5t65 -212.5v-668h-202v594q0 180 -111 180q-117 0 -297 -174v-600h-203zM233 1126q4 2 0 28t6.5 67t26 78.5t56 65.5t100.5 28q53 0 96 -25t65.5 -53.5t50.5 -53t52 -24.5q66 10 66 143h131q-4 -2 0 -28.5 t-7.5 -68.5t-26.5 -81t-58 -67.5t-103 -28.5q-53 0 -95 24.5t-63.5 54t-48 54.5t-53.5 25q-63 -8 -63 -138h-132z" />
-<glyph unicode="&#xf2;" horiz-adv-x="1114" d="M80 459q0 195 125 343t356 148q219 0 346 -139t127 -330q0 -88 -29.5 -175t-85 -161.5t-151.5 -122t-215 -47.5q-219 0 -346 143.5t-127 340.5zM248 1438h205l209 -336l-113 -64zM291 477q0 -141 68.5 -240.5t199.5 -99.5q117 0 190.5 89t73.5 229q0 137 -67.5 235 t-198.5 98q-119 0 -192.5 -86t-73.5 -225z" />
-<glyph unicode="&#xf3;" horiz-adv-x="1114" d="M80 459q0 195 125 343t356 148q219 0 346 -139t127 -330q0 -88 -29.5 -175t-85 -161.5t-151.5 -122t-215 -47.5q-219 0 -346 143.5t-127 340.5zM291 477q0 -141 68.5 -240.5t199.5 -99.5q117 0 190.5 89t73.5 229q0 137 -67.5 235t-198.5 98q-119 0 -192.5 -86 t-73.5 -225zM453 1102l209 336h204l-301 -400z" />
-<glyph unicode="&#xf4;" horiz-adv-x="1114" d="M80 459q0 195 125 343t356 148q219 0 346 -139t127 -330q0 -88 -29.5 -175t-85 -161.5t-151.5 -122t-215 -47.5q-219 0 -346 143.5t-127 340.5zM260 1092l234 346h131l231 -348l-119 -54l-180 250l-178 -250zM291 477q0 -141 68.5 -240.5t199.5 -99.5q117 0 190.5 89 t73.5 229q0 137 -67.5 235t-198.5 98q-119 0 -192.5 -86t-73.5 -225z" />
-<glyph unicode="&#xf5;" horiz-adv-x="1114" d="M80 459q0 195 125 343t356 148q219 0 346 -139t127 -330q0 -88 -29.5 -175t-85 -161.5t-151.5 -122t-215 -47.5q-219 0 -346 143.5t-127 340.5zM236 1126q4 2 -0.5 28t6 67t26 78.5t56.5 65.5t100 28q53 0 96 -25t65.5 -53.5t50.5 -53t52 -24.5q66 10 66 143h131 q-4 -2 0 -28.5t-7.5 -68.5t-26.5 -81t-58 -67.5t-103 -28.5q-53 0 -95 24.5t-63.5 54t-48 54.5t-53.5 25q-63 -8 -63 -138h-131zM291 477q0 -141 68.5 -240.5t199.5 -99.5q117 0 190.5 89t73.5 229q0 137 -67.5 235t-198.5 98q-119 0 -192.5 -86t-73.5 -225z" />
-<glyph unicode="&#xf6;" horiz-adv-x="1114" d="M80 459q0 195 125 343t356 148q219 0 346 -139t127 -330q0 -88 -29.5 -175t-85 -161.5t-151.5 -122t-215 -47.5q-219 0 -346 143.5t-127 340.5zM238 1270q0 51 34.5 83.5t86 32.5t85 -32.5t33.5 -83.5t-33.5 -83t-85 -32t-86 33t-34.5 82zM291 477q0 -141 68.5 -240.5 t199.5 -99.5q117 0 190.5 89t73.5 229q0 137 -67.5 235t-198.5 98q-119 0 -192.5 -86t-73.5 -225zM637 1270q0 51 34 83.5t85 32.5t86 -32.5t35 -83.5q0 -49 -35 -82t-86 -33t-85 32t-34 83z" />
-<glyph unicode="&#xf7;" horiz-adv-x="1064" d="M74 442v148h917v-148h-917zM401 127q0 55 39 94t92 39q55 0 93.5 -39t38.5 -94q0 -53 -38 -92t-94 -39q-53 0 -92 39t-39 92zM401 903q0 53 39 92t92 39q55 0 93.5 -39t38.5 -92t-38 -92t-94 -39q-53 0 -92 39t-39 92z" />
-<glyph unicode="&#xf8;" horiz-adv-x="1114" d="M80 459q0 195 125 343t356 148q137 0 244 -61l74 98h135l-121 -162q141 -137 141 -344q0 -88 -29.5 -175t-85 -161.5t-151.5 -122t-215 -47.5q-133 0 -246 62l-74 -98h-137l123 165q-139 140 -139 355zM291 477q0 -121 49 -211l358 479q-59 43 -141 43q-119 0 -192.5 -86 t-73.5 -225zM414 182q61 -45 145 -45q117 0 190.5 89t73.5 229q0 119 -51 209z" />
-<glyph unicode="&#xf9;" horiz-adv-x="1079" d="M135 254v672h203v-594q0 -180 115 -180q113 0 276 151v623h203v-641q0 -49 10 -120t21 -116l10 -47l-197 -18q-20 96 -31 163q-162 -172 -358 -172q-252 0 -252 279zM225 1438h205l209 -336l-113 -64z" />
-<glyph unicode="&#xfa;" horiz-adv-x="1079" d="M135 254v672h203v-594q0 -180 115 -180q113 0 276 151v623h203v-641q0 -49 10 -120t21 -116l10 -47l-197 -18q-20 96 -31 163q-162 -172 -358 -172q-252 0 -252 279zM430 1102l209 336h205l-301 -400z" />
-<glyph unicode="&#xfb;" horiz-adv-x="1079" d="M135 254v672h203v-594q0 -180 115 -180q113 0 276 151v623h203v-641q0 -49 10 -120t21 -116l10 -47l-197 -18q-20 96 -31 163q-162 -172 -358 -172q-252 0 -252 279zM236 1092l233 346h131l231 -348l-118 -54l-181 250l-178 -250z" />
-<glyph unicode="&#xfc;" horiz-adv-x="1079" d="M135 254v672h203v-594q0 -180 115 -180q113 0 276 151v623h203v-641q0 -49 10 -120t21 -116l10 -47l-197 -18q-20 96 -31 163q-162 -172 -358 -172q-252 0 -252 279zM213 1270q0 51 35 83.5t86 32.5t85 -32.5t34 -83.5t-34 -83t-85 -32t-86 33t-35 82zM612 1270 q0 51 34 83.5t85 32.5t86 -32.5t35 -83.5q0 -49 -35 -82t-86 -33t-85 32t-34 83z" />
-<glyph unicode="&#xfd;" horiz-adv-x="952" d="M23 926h215l243 -635l240 635h209l-402 -996q-156 -385 -432 -415l-63 161q98 16 177 88t122 173l49 110zM379 1102l209 336h205l-301 -400z" />
-<glyph unicode="&#xfe;" horiz-adv-x="1089" d="M143 -477v1909l203 32v-661q86 147 270 147q178 0 285 -131t107 -330q0 -213 -127 -363.5t-346 -150.5q-123 0 -189 50v-469zM346 236q0 -47 42 -73t114 -26q135 0 214 89t79 251q0 141 -58.5 223t-154.5 82q-129 0 -236 -149v-397z" />
-<glyph unicode="&#xff;" horiz-adv-x="952" d="M23 926h215l243 -635l240 635h209l-402 -996q-156 -385 -432 -415l-63 161q98 16 177 88t122 173l49 110zM164 1270q0 51 34.5 83.5t86 32.5t85 -32.5t33.5 -83.5t-33.5 -83t-85 -32t-86 33t-34.5 82zM563 1270q0 51 34 83.5t85 32.5t86 -32.5t35 -83.5q0 -49 -35 -82 t-86 -33t-85 32t-34 83z" />
-<glyph unicode="&#x152;" horiz-adv-x="2017" d="M92 680q0 137 48 263t139.5 226.5t235.5 161t323 60.5q133 0 256 -25h823v-176h-619v-406h490v-178h-490v-430h625v-176h-836q-133 -25 -266 -25q-332 0 -530.5 205t-198.5 500zM315 690q0 -96 31 -188t91.5 -171t161.5 -127t230 -48q154 0 258 22v1000q-113 33 -258 32 q-242 0 -378 -153.5t-136 -366.5z" />
-<glyph unicode="&#x153;" horiz-adv-x="1742" d="M80 459q0 195 125 343t356 148q240 0 369 -184q125 184 344 184q170 0 275.5 -113.5t105.5 -318.5l-115 -33l-512 -69q16 -127 92 -201t199 -74q70 0 140.5 28t105.5 56l37 29l61 -145q-16 -14 -46 -37t-127 -60t-200 -37q-242 0 -368 187q-131 -186 -369 -187 q-219 0 -346 143.5t-127 340.5zM291 477q0 -141 68.5 -240.5t199.5 -99.5q117 0 190.5 89t73.5 229q0 137 -67.5 235t-198.5 98q-119 0 -192.5 -86t-73.5 -225zM1028 553l406 51q0 8 -2 20.5t-12.5 45t-28 57.5t-52 45.5t-79.5 20.5q-98 0 -158 -67t-74 -173z" />
-<glyph unicode="&#x178;" horiz-adv-x="1208" d="M8 1366h248l350 -575l357 575h237l-489 -780v-586h-211v584zM246 1624q0 51 34.5 85t88.5 34q49 0 83.5 -34t34.5 -85q0 -49 -34.5 -83t-83.5 -34q-51 0 -87 34t-36 83zM735 1624q0 51 35 85t86 34t86 -34t35 -85q0 -49 -35 -83t-86 -34t-86 34t-35 83z" />
-<glyph unicode="&#x2c6;" horiz-adv-x="1038" d="M221 1092l234 346h131l231 -348l-119 -54l-180 250l-178 -250z" />
-<glyph unicode="&#x2dc;" horiz-adv-x="1038" d="M199 1126q4 2 0 28t6 67t25.5 78.5t56.5 65.5t100 28q53 0 96 -25t65.5 -53.5t50.5 -53t52 -24.5q66 10 66 143h131q-4 -2 0 -28.5t-7.5 -68.5t-26.5 -81t-58 -67.5t-103 -28.5q-53 0 -95 24.5t-63.5 54t-48 54.5t-53.5 25q-63 -8 -63 -138h-131z" />
-<glyph unicode="&#x2000;" horiz-adv-x="892" />
-<glyph unicode="&#x2001;" horiz-adv-x="1784" />
-<glyph unicode="&#x2002;" horiz-adv-x="892" />
-<glyph unicode="&#x2003;" horiz-adv-x="1784" />
-<glyph unicode="&#x2004;" horiz-adv-x="594" />
-<glyph unicode="&#x2005;" horiz-adv-x="446" />
-<glyph unicode="&#x2006;" horiz-adv-x="297" />
-<glyph unicode="&#x2007;" horiz-adv-x="297" />
-<glyph unicode="&#x2008;" horiz-adv-x="223" />
-<glyph unicode="&#x2009;" horiz-adv-x="356" />
-<glyph unicode="&#x200a;" horiz-adv-x="99" />
-<glyph unicode="&#x2010;" horiz-adv-x="720" d="M111 438v156h499v-156h-499z" />
-<glyph unicode="&#x2011;" horiz-adv-x="720" d="M111 438v156h499v-156h-499z" />
-<glyph unicode="&#x2012;" horiz-adv-x="720" d="M111 438v156h499v-156h-499z" />
-<glyph unicode="&#x2013;" horiz-adv-x="1062" d="M111 449v147h839v-147h-839z" />
-<glyph unicode="&#x2014;" horiz-adv-x="1861" d="M111 449v147h1638v-147h-1638z" />
-<glyph unicode="&#x2018;" horiz-adv-x="444" d="M92 1174q0 195 199 346l78 -82q-113 -86 -113 -195q0 -94 123 -225l-178 -100q-109 117 -109 256z" />
-<glyph unicode="&#x2019;" horiz-adv-x="432" d="M63 1421l181 99q109 -115 108 -254q0 -193 -198 -348l-78 83q113 86 112 195q0 51 -26.5 101t-98.5 124z" />
-<glyph unicode="&#x201a;" d="M90 174l186 98q113 -119 113 -254q0 -190 -203 -348l-77 84q117 90 116 193q0 49 -29.5 99t-105.5 128z" />
-<glyph unicode="&#x201c;" horiz-adv-x="802" d="M92 1174q0 195 199 346l78 -82q-113 -86 -113 -195q0 -94 123 -225l-178 -100q-109 117 -109 256zM451 1174q0 195 198 346l78 -82q-113 -86 -113 -195q0 -94 123 -225l-178 -100q-108 117 -108 256z" />
-<glyph unicode="&#x201d;" horiz-adv-x="790" d="M63 1421l181 99q109 -115 108 -254q0 -193 -198 -348l-78 83q113 86 112 195q0 51 -26.5 101t-98.5 124zM424 1421l178 99q109 -115 109 -254q0 -193 -199 -348l-78 83q113 86 113 195q0 94 -123 225z" />
-<glyph unicode="&#x201e;" horiz-adv-x="849" d="M90 174l186 98q113 -119 113 -254q0 -190 -203 -348l-77 84q117 90 116 193q0 49 -29.5 99t-105.5 128zM449 174l186 98q113 -119 113 -254q0 -190 -203 -348l-78 84q117 90 117 193q0 49 -29.5 99t-105.5 128z" />
-<glyph unicode="&#x2022;" horiz-adv-x="802" d="M106 524q0 125 85 210t210 85t210 -85t85 -210t-85 -210t-210 -85t-210 85t-85 210z" />
-<glyph unicode="&#x2026;" horiz-adv-x="1622" d="M113 112.5q0 57.5 40 98.5t97 41t98 -41t41 -98.5t-41 -97.5t-98 -40t-97 40t-40 97.5zM674 112.5q0 57.5 40 98.5t97 41t98 -41t41 -98.5t-41 -97.5t-98 -40t-97 40t-40 97.5zM1233 112.5q0 57.5 41 98.5t98.5 41t98 -41t40.5 -98.5t-40.5 -97.5t-98 -40t-98.5 40 t-41 97.5z" />
-<glyph unicode="&#x202f;" horiz-adv-x="356" />
-<glyph unicode="&#x2039;" horiz-adv-x="649" d="M43 510v8q31 23 199 211l194 217l125 -35l-303 -397l303 -397l-125 -35l-166 182l-109 121l-60 66q-26 29 -36 39t-22 20z" />
-<glyph unicode="&#x203a;" horiz-adv-x="651" d="M90 117l303 397l-303 397l125 35q360 -399 379 -418q6 -4 14 -10v-8q-12 -10 -22.5 -20.5t-35.5 -38.5l-60 -66l-109 -121l-166 -182z" />
-<glyph unicode="&#x205f;" horiz-adv-x="446" />
-<glyph unicode="&#x20ac;" horiz-adv-x="1148" d="M82 371v108h106q-4 25 -4 80q0 53 4 80h-104v109h123q49 186 187 299.5t339 113.5q82 0 162 -19.5t117 -39.5l39 -19l-52 -168q-117 82 -268 82q-123 0 -201.5 -68.5t-111.5 -180.5h532l-32 -109h-521q-2 -23 -2 -68q0 -49 6 -92h473l-32 -108h-414q39 -106 119 -168 t194 -62q61 0 125 16.5t97 32.5l34 17l50 -150q-127 -82 -322 -82t-332 106.5t-186 289.5h-125z" />
-<glyph unicode="&#x2122;" horiz-adv-x="1392" d="M74 1270v96h477v-96h-178v-449h-121v449h-178zM639 821l20 545h175l122 -358l125 358h168l21 -545h-115l-16 412l-146 -412h-78l-145 414l-12 -414h-119z" />
-<glyph unicode="&#xe000;" horiz-adv-x="925" d="M0 925h925v-925h-925v925z" />
-<glyph unicode="&#xfb01;" horiz-adv-x="1110" d="M51 772v109l146 53v70q0 231 118.5 362t313.5 131q168 -2 284 -78l-79 -151q-98 66 -207 65q-100 0 -164 -76.5t-64 -240.5v-90h566v-926h-203v782h-363v-782h-202v772h-146z" />
-<glyph unicode="&#xfb02;" horiz-adv-x="1142" d="M51 772v109l146 53v70q0 231 118.5 362t313.5 131q125 0 241 -53l127 20v-1464h-200v1288q-94 45 -170 45q-100 0 -164 -76.5t-64 -240.5v-90h256v-154h-256v-772h-202v772h-146z" />
-<glyph unicode="&#xfb03;" horiz-adv-x="1720" d="M51 772v109l146 53v39q0 225 118.5 350t313.5 125q145 0 282 -86q113 135 308 135q72 0 139 -19.5t100 -39.5l31 -19l-82 -151q-90 66 -188 65q-92 0 -149.5 -70.5t-57.5 -226.5v-110h563v-926h-201v782h-362v-782h-203v782h-410v-782h-202v772h-146zM399 926h410v98 q0 102 25 186q-100 72 -205 72q-102 0 -166 -70.5t-64 -224.5v-61z" />
-<glyph unicode="&#xfb04;" horiz-adv-x="1753" d="M51 772v109l146 53v39q0 225 118.5 350t313.5 125q158 0 289 -90q115 139 313 139q125 0 239 -55l140 22v-1464h-203v1282q-96 51 -178 51q-96 0 -156.5 -74.5t-60.5 -234.5v-98h254v-154h-254v-772h-203v782h-410v-782h-202v772h-146zM399 926h410v86q0 106 29 196 q-106 74 -209 74t-166.5 -70.5t-63.5 -224.5v-61z" />
-</font>
-</defs></svg> 
\ No newline at end of file
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansSemiBold-webfont.ttf b/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansSemiBold-webfont.ttf
deleted file mode 100644
index b6a7ac228aca0015479521d21c48781ce909df52..0000000000000000000000000000000000000000
Binary files a/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansSemiBold-webfont.ttf and /dev/null differ
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansSemiBold-webfont.woff b/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansSemiBold-webfont.woff
deleted file mode 100644
index f643b28633bbcd624879f20e9bebe37cd92af384..0000000000000000000000000000000000000000
Binary files a/app/code/Magento/DesignEditor/view/adminhtml/web/css/fonts/calluna/CallunaSansSemiBold-webfont.woff and /dev/null differ
diff --git a/app/code/Magento/DesignEditor/view/adminhtml/web/css/styles.css b/app/code/Magento/DesignEditor/view/adminhtml/web/css/styles.css
index 4fc48344f6534ca1966590735f2ab186d642be6a..66863048bff89e1ebb75667192f1f48c20e4dd1a 100644
--- a/app/code/Magento/DesignEditor/view/adminhtml/web/css/styles.css
+++ b/app/code/Magento/DesignEditor/view/adminhtml/web/css/styles.css
@@ -116,7 +116,7 @@
 }
 
 .fade .popup .popup-title {
-    font: 20px/1 'CallunaSans', Arial, sans-serif;
+    font: 20px/1 Arial, sans-serif;
     font-weight: 300;
     padding-left: 0;
 }
@@ -307,7 +307,7 @@
 .theme-title {
     margin: 0;
     color: #f2ebde;
-    font-family: 'CallunaSans', Arial, sans-serif;
+    font-family: Arial, sans-serif;
     font-weight: 200;
     font-size: 24px;
 }
@@ -900,7 +900,7 @@
 }
 
 .vde-tab-content-title {
-    font: 20px/52px "CallunaSans", Arial, sans-serif;
+    font: 20px/52px Arial, sans-serif;
     font-weight: 400;
     color: #f2ebde;
     text-shadow: 0 -1px 1px #000;
@@ -922,7 +922,7 @@
 }
 
 .vde-tab-data .title {
-    font: 24px/1.333 "CallunaSans", Arial, sans-serif;
+    font: 24px/1.333 Arial, sans-serif;
     font-weight: 500;
     color: #f2ebde;
     margin: 0;
@@ -994,7 +994,7 @@
 
 .vde-tab-content-header .vde-tab-controls > .item > a {
     display: inline-block;
-    font: 13px "CallunaSans", Arial, sans-serif;
+    font: 13px Arial, sans-serif;
     font-weight: 600;
     line-height: 40px;
     text-align: center;
@@ -2266,7 +2266,7 @@
     text-align: center;
     text-transform: uppercase;
     color: #a69a8f;
-    font: 18px/110px 'CallunaSans', Arial, sans-serif;
+    font: 18px/110px Arial, sans-serif;
     font-weight: 500;
     z-index: 1;
 }
diff --git a/app/code/Magento/DesignEditor/view/frontend/templates/translate_inline.phtml b/app/code/Magento/DesignEditor/view/frontend/templates/translate_inline.phtml
index 525c46c3ef04cac7f9e9579564ca62d0e456dd19..a8346f1dfdc34a95be869bbc277605cc5e899071 100644
--- a/app/code/Magento/DesignEditor/view/frontend/templates/translate_inline.phtml
+++ b/app/code/Magento/DesignEditor/view/frontend/templates/translate_inline.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php /** @var $this \Magento\Framework\View\Element\Template */ ?>
@@ -27,7 +30,7 @@
      data-mage-init='{"loader": {"icon": "<?php echo $this->getViewFileUrl('images/ajax-loader-tr.gif', ['area' => \Magento\Backend\App\Area\FrontNameResolver::AREA_CODE]) ?>"}}'>
  </div>
 
-<script type="text/javascript">
+<script>
 require([
     "jquery",
     "mage/translate",
diff --git a/app/code/Magento/Dhl/Block/Adminhtml/Unitofmeasure.php b/app/code/Magento/Dhl/Block/Adminhtml/Unitofmeasure.php
index 66d9168c8e79e5c2822777b713bc34ceaf925e48..2cf8353c40866cd2e577bc93b1f8cd6b4ed1f36d 100644
--- a/app/code/Magento/Dhl/Block/Adminhtml/Unitofmeasure.php
+++ b/app/code/Magento/Dhl/Block/Adminhtml/Unitofmeasure.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Dhl\Block\Adminhtml;
 
 /**
diff --git a/app/code/Magento/Dhl/Model/Carrier.php b/app/code/Magento/Dhl/Model/Carrier.php
index edf7b9c422530a27898ba83143aa5685299ddd23..6b82978549bf8b8676bc89ef1f42f84ee6c14895 100644
--- a/app/code/Magento/Dhl/Model/Carrier.php
+++ b/app/code/Magento/Dhl/Model/Carrier.php
@@ -3,18 +3,24 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Dhl\Model;
 
 use Magento\Catalog\Model\Product\Type;
 use Magento\Framework\App\Filesystem\DirectoryList;
 use Magento\Sales\Model\Order\Shipment;
-use Magento\Sales\Model\Quote\Address\RateRequest;
-use Magento\Sales\Model\Quote\Address\RateResult\Error;
+use Magento\Quote\Model\Quote\Address\RateRequest;
+use Magento\Quote\Model\Quote\Address\RateResult\Error;
 use Magento\Shipping\Model\Carrier\AbstractCarrier;
 use Magento\Shipping\Model\Rate\Result;
 
 /**
  * DHL International (API v1.4)
+ * @SuppressWarnings(PHPMD.TooManyFields)
+ * @SuppressWarnings(PHPMD.ExcessiveClassComplexity)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Carrier extends \Magento\Dhl\Model\AbstractDhl implements \Magento\Shipping\Model\Carrier\CarrierInterface
 {
@@ -184,11 +190,11 @@ class Carrier extends \Magento\Dhl\Model\AbstractDhl implements \Magento\Shippin
 
     /**
      * @param \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig
-     * @param \Magento\Sales\Model\Quote\Address\RateResult\ErrorFactory $rateErrorFactory
+     * @param \Magento\Quote\Model\Quote\Address\RateResult\ErrorFactory $rateErrorFactory
      * @param \Psr\Log\LoggerInterface $logger
      * @param \Magento\Shipping\Model\Simplexml\ElementFactory $xmlElFactory
      * @param \Magento\Shipping\Model\Rate\ResultFactory $rateFactory
-     * @param \Magento\Sales\Model\Quote\Address\RateResult\MethodFactory $rateMethodFactory
+     * @param \Magento\Quote\Model\Quote\Address\RateResult\MethodFactory $rateMethodFactory
      * @param \Magento\Shipping\Model\Tracking\ResultFactory $trackFactory
      * @param \Magento\Shipping\Model\Tracking\Result\ErrorFactory $trackErrorFactory
      * @param \Magento\Shipping\Model\Tracking\Result\StatusFactory $trackStatusFactory
@@ -207,14 +213,15 @@ class Carrier extends \Magento\Dhl\Model\AbstractDhl implements \Magento\Shippin
      * @param \Magento\Framework\HTTP\ZendClientFactory $httpClientFactory
      * @param \Magento\CatalogInventory\Api\StockRegistryInterface $stockRegistry
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig,
-        \Magento\Sales\Model\Quote\Address\RateResult\ErrorFactory $rateErrorFactory,
+        \Magento\Quote\Model\Quote\Address\RateResult\ErrorFactory $rateErrorFactory,
         \Psr\Log\LoggerInterface $logger,
         \Magento\Shipping\Model\Simplexml\ElementFactory $xmlElFactory,
         \Magento\Shipping\Model\Rate\ResultFactory $rateFactory,
-        \Magento\Sales\Model\Quote\Address\RateResult\MethodFactory $rateMethodFactory,
+        \Magento\Quote\Model\Quote\Address\RateResult\MethodFactory $rateMethodFactory,
         \Magento\Shipping\Model\Tracking\ResultFactory $trackFactory,
         \Magento\Shipping\Model\Tracking\Result\ErrorFactory $trackErrorFactory,
         \Magento\Shipping\Model\Tracking\Result\StatusFactory $trackStatusFactory,
@@ -370,6 +377,8 @@ class Carrier extends \Magento\Dhl\Model\AbstractDhl implements \Magento\Shippin
      *
      * @param \Magento\Framework\Object $request
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function setRequest(\Magento\Framework\Object $request)
     {
@@ -611,6 +620,7 @@ class Carrier extends \Magento\Dhl\Model\AbstractDhl implements \Magento\Shippin
      *
      * @param string $code One-symbol code (see getDhlProducts())
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getDhlProductTitle($code)
     {
@@ -657,6 +667,8 @@ class Carrier extends \Magento\Dhl\Model\AbstractDhl implements \Magento\Shippin
      * Prepare items to pieces
      *
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _getAllItems()
     {
@@ -747,6 +759,7 @@ class Carrier extends \Magento\Dhl\Model\AbstractDhl implements \Magento\Shippin
      *
      * @param \Magento\Shipping\Model\Simplexml\Element $nodeBkgDetails
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _makePieces(\Magento\Shipping\Model\Simplexml\Element $nodeBkgDetails)
     {
@@ -1009,6 +1022,8 @@ class Carrier extends \Magento\Dhl\Model\AbstractDhl implements \Magento\Shippin
      * @param string $response
      * @return bool|\Magento\Framework\Object|Result|Error
      * @throws \Magento\Framework\Model\Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _parseResponse($response)
     {
@@ -1070,7 +1085,7 @@ class Carrier extends \Magento\Dhl\Model\AbstractDhl implements \Magento\Shippin
             foreach ($this->_rates as $rate) {
                 $method = $rate['service'];
                 $data = $rate['data'];
-                /* @var $rate \Magento\Sales\Model\Quote\Address\RateResult\Method */
+                /* @var $rate \Magento\Quote\Model\Quote\Address\RateResult\Method */
                 $rate = $this->_rateMethodFactory->create();
                 $rate->setCarrier(self::CODE);
                 $rate->setCarrierTitle($this->getConfigData('title'));
@@ -1096,6 +1111,7 @@ class Carrier extends \Magento\Dhl\Model\AbstractDhl implements \Magento\Shippin
      *
      * @param \SimpleXMLElement $shipmentDetails
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _addRate(\SimpleXMLElement $shipmentDetails)
     {
@@ -1291,6 +1307,7 @@ class Carrier extends \Magento\Dhl\Model\AbstractDhl implements \Magento\Shippin
      *
      * @param \Magento\Framework\Object|null $params
      * @return array
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function getContainerTypes(\Magento\Framework\Object $params = null)
     {
@@ -1360,6 +1377,9 @@ class Carrier extends \Magento\Dhl\Model\AbstractDhl implements \Magento\Shippin
      *
      * @return Result|\Magento\Framework\Object
      * @throws \Magento\Framework\Model\Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _doRequest()
     {
@@ -1553,6 +1573,8 @@ class Carrier extends \Magento\Dhl\Model\AbstractDhl implements \Magento\Shippin
      * @param RateRequest $rawRequest
      * @param string $originRegion
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _shipmentDetails($xml, $rawRequest, $originRegion = '')
     {
@@ -1741,6 +1763,8 @@ class Carrier extends \Magento\Dhl\Model\AbstractDhl implements \Magento\Shippin
      * @param string[] $trackings
      * @param string $response
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _parseXmlTrackingResponse($trackings, $response)
     {
diff --git a/app/code/Magento/Dhl/Model/Plugin/Checkout/Block/Cart/Shipping.php b/app/code/Magento/Dhl/Model/Plugin/Checkout/Block/Cart/Shipping.php
index 459a363a26597ad9824f301632ee1e56db8f7f95..43ed90ffedcdc732a05cde308c5c914b27ec59b0 100644
--- a/app/code/Magento/Dhl/Model/Plugin/Checkout/Block/Cart/Shipping.php
+++ b/app/code/Magento/Dhl/Model/Plugin/Checkout/Block/Cart/Shipping.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Dhl\Model\Plugin\Checkout\Block\Cart;
 
 /**
diff --git a/app/code/Magento/Dhl/composer.json b/app/code/Magento/Dhl/composer.json
index c9d78cbed3b5ac7553e67dc19cc92d1fac0cd72a..4019644d6dd1efb24e13dc43e12615049d3ae586 100644
--- a/app/code/Magento/Dhl/composer.json
+++ b/app/code/Magento/Dhl/composer.json
@@ -3,21 +3,22 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-shipping": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/module-directory": "0.42.0-beta3",
-        "magento/module-core": "0.42.0-beta3",
-        "magento/module-sales": "0.42.0-beta3",
-        "magento/module-checkout": "0.42.0-beta3",
-        "magento/module-catalog": "0.42.0-beta3",
-        "magento/module-catalog-inventory": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-shipping": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/module-directory": "0.42.0-beta4",
+        "magento/module-core": "0.42.0-beta4",
+        "magento/module-sales": "0.42.0-beta4",
+        "magento/module-checkout": "0.42.0-beta4",
+        "magento/module-catalog": "0.42.0-beta4",
+        "magento/module-catalog-inventory": "0.42.0-beta4",
+        "magento/module-quote": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "lib-libxml": "*",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/Dhl/view/adminhtml/templates/unitofmeasure.phtml b/app/code/Magento/Dhl/view/adminhtml/templates/unitofmeasure.phtml
index f2a47260baa63bb12a32b319d30f3472185db5f2..b8f5f077f9f11c408ba865495e2dba541d2353c6 100644
--- a/app/code/Magento/Dhl/view/adminhtml/templates/unitofmeasure.phtml
+++ b/app/code/Magento/Dhl/view/adminhtml/templates/unitofmeasure.phtml
@@ -9,7 +9,7 @@
  * @var $this \Magento\Dhl\Block\Adminhtml\Unitofmeasure
  */
 ?>
-<script type="text/javascript">
+<script>
 require(['prototype'], function(){
 
     //<![CDATA[
diff --git a/app/code/Magento/Directory/Model/Country.php b/app/code/Magento/Directory/Model/Country.php
index 03c8fdc65eb13226ca32ff3bd87ba716da70dc1f..4da7c58e06f0a90b3fe09ba1c45cd4887b535c34 100644
--- a/app/code/Magento/Directory/Model/Country.php
+++ b/app/code/Magento/Directory/Model/Country.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Country model
  *
diff --git a/app/code/Magento/Directory/Model/Currency.php b/app/code/Magento/Directory/Model/Currency.php
index c20e8f7e80a5d6996621385e25789e1d446f0cdc..fc34e67f0c1656778c5d9b9727fec2d9ccb52b78 100644
--- a/app/code/Magento/Directory/Model/Currency.php
+++ b/app/code/Magento/Directory/Model/Currency.php
@@ -14,6 +14,9 @@ namespace Magento\Directory\Model;
 use Magento\Directory\Exception;
 use Magento\Directory\Model\Currency\Filter;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class Currency extends \Magento\Framework\Model\AbstractModel
 {
     /**
@@ -73,6 +76,7 @@ class Currency extends \Magento\Framework\Model\AbstractModel
      * @param \Magento\Framework\Model\Resource\AbstractResource $resource
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
diff --git a/app/code/Magento/Directory/Model/Currency/Import/Factory.php b/app/code/Magento/Directory/Model/Currency/Import/Factory.php
index 894a203a069bc5e74eab9cacb9192885d527adad..3b9970ba5cfb4aeb47bdcfc3d62f36f01f575b5b 100644
--- a/app/code/Magento/Directory/Model/Currency/Import/Factory.php
+++ b/app/code/Magento/Directory/Model/Currency/Import/Factory.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Directory\Model\Currency\Import;
 
 class Factory
diff --git a/app/code/Magento/Directory/Model/Currency/Import/Webservicex.php b/app/code/Magento/Directory/Model/Currency/Import/Webservicex.php
index 60a2c9c21d9b0b35f0fa9ad1cb8ac93e45367df9..9068c4429d7925d5a2f761b9e954177fce5e7bee 100644
--- a/app/code/Magento/Directory/Model/Currency/Import/Webservicex.php
+++ b/app/code/Magento/Directory/Model/Currency/Import/Webservicex.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Currency rate import model (From www.webservicex.net)
  */
diff --git a/app/code/Magento/Directory/Model/Observer.php b/app/code/Magento/Directory/Model/Observer.php
index 59d2499e08630f22ece378df0bbaf4420f7f9227..23d0b5c52f010583ae316fd3ee91fea5c6743a29 100644
--- a/app/code/Magento/Directory/Model/Observer.php
+++ b/app/code/Magento/Directory/Model/Observer.php
@@ -84,6 +84,7 @@ class Observer
     /**
      * @param mixed $schedule
      * @return void
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function scheduledUpdateCurrencyRates($schedule)
     {
diff --git a/app/code/Magento/Directory/Model/PriceCurrency.php b/app/code/Magento/Directory/Model/PriceCurrency.php
index 6e6b5872f379550ac670f24d3a4b846eb7fab12b..8232d9220b4128888b13b215597efa9a22e3c601 100644
--- a/app/code/Magento/Directory/Model/PriceCurrency.php
+++ b/app/code/Magento/Directory/Model/PriceCurrency.php
@@ -58,18 +58,12 @@ class PriceCurrency implements \Magento\Framework\Pricing\PriceCurrencyInterface
     }
 
     /**
-     * Convert and round price value for specified store or passed currency
-     *
-     * @param float $amount
-     * @param null|string|bool|int|\Magento\Store\Model\Store $store
-     * @param Currency|string|null $currency
-     * @param int $precision
-     * @return float
+     * {@inheritdoc}
      */
-    public function convertAndRound($amount, $store = null, $currency = null, $precision = self::DEFAULT_PRECISION)
+    public function convertAndRound($amount, $scope = null, $currency = null, $precision = self::DEFAULT_PRECISION)
     {
-        $currentCurrency = $this->getCurrency($store, $currency);
-        $convertedValue = $this->getStore($store)->getBaseCurrency()->convert($amount, $currentCurrency);
+        $currentCurrency = $this->getCurrency($scope, $currency);
+        $convertedValue = $this->getStore($scope)->getBaseCurrency()->convert($amount, $currentCurrency);
         return round($convertedValue, $precision);
     }
 
diff --git a/app/code/Magento/Directory/Model/Resource/Country/Collection.php b/app/code/Magento/Directory/Model/Resource/Country/Collection.php
index e97ae6aa0b99c61653aa339e3361cea26fd8a487..2c188154998a6392fac02525810c060d488475a3 100644
--- a/app/code/Magento/Directory/Model/Resource/Country/Collection.php
+++ b/app/code/Magento/Directory/Model/Resource/Country/Collection.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Directory Country Resource Collection
  */
@@ -54,6 +56,7 @@ class Collection extends \Magento\Framework\Model\Resource\Db\Collection\Abstrac
      * @param \Magento\Framework\Locale\ResolverInterface $localeResolver
      * @param mixed $connection
      * @param \Magento\Framework\Model\Resource\Db\AbstractDb $resource
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Core\Model\EntityFactory $entityFactory,
diff --git a/app/code/Magento/Directory/Model/Resource/Currency.php b/app/code/Magento/Directory/Model/Resource/Currency.php
index db63429f1c00999713e1e105f79b908f367ce620..078faf74e58d765253c17b890bf4ade7da1f55d1 100644
--- a/app/code/Magento/Directory/Model/Resource/Currency.php
+++ b/app/code/Magento/Directory/Model/Resource/Currency.php
@@ -161,6 +161,7 @@ class Currency extends \Magento\Framework\Model\Resource\Db\AbstractDb
      * @param \Magento\Directory\Model\Currency $model
      * @param string $path
      * @return array
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function getConfigCurrencies($model, $path)
     {
diff --git a/app/code/Magento/Directory/Model/Resource/Region.php b/app/code/Magento/Directory/Model/Resource/Region.php
index 9346c0cc49aea9c7aed15f201d8d14d89aa590ff..f6d3ddeed228616dfec7f0da30cdb5e57eeaded1 100644
--- a/app/code/Magento/Directory/Model/Resource/Region.php
+++ b/app/code/Magento/Directory/Model/Resource/Region.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Directory Region Resource Model
  */
diff --git a/app/code/Magento/Directory/composer.json b/app/code/Magento/Directory/composer.json
index 58c7f5ad1dda239ef53be4a755a24cc5b772bfa0..d2f73d089a3f0c40cbe9f025a74ef814e9d92db7 100644
--- a/app/code/Magento/Directory/composer.json
+++ b/app/code/Magento/Directory/composer.json
@@ -3,15 +3,15 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-core": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-core": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "lib-libxml": "*",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/Directory/view/adminhtml/templates/js/optional_zip_countries.phtml b/app/code/Magento/Directory/view/adminhtml/templates/js/optional_zip_countries.phtml
index 8749bd686a23a64f703b748113a8bd460eab95f6..81d3f24b019f4610cb74f90d1e9d82e1faec0107 100644
--- a/app/code/Magento/Directory/view/adminhtml/templates/js/optional_zip_countries.phtml
+++ b/app/code/Magento/Directory/view/adminhtml/templates/js/optional_zip_countries.phtml
@@ -12,7 +12,7 @@
  * @see \Magento\Backend\Block\Template
  */
 ?>
-<script type="text/javascript">
+<script>
 require([
     "prototype",
     "mage/adminhtml/events"
diff --git a/app/code/Magento/Directory/view/frontend/templates/currency.phtml b/app/code/Magento/Directory/view/frontend/templates/currency.phtml
index bcc61f1a3e7db0d0670fec6ae803046e597b305b..e0f3b9f24f32762d099ab5ecc954647fc5de33ea 100644
--- a/app/code/Magento/Directory/view/frontend/templates/currency.phtml
+++ b/app/code/Magento/Directory/view/frontend/templates/currency.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/Directory/view/frontend/templates/currency/switch.phtml b/app/code/Magento/Directory/view/frontend/templates/currency/switch.phtml
index af561c5147681222ffba29079f3eb6a30c2d0e12..6589dc8816982535772cdbbb042b1caadd0626e1 100644
--- a/app/code/Magento/Directory/view/frontend/templates/currency/switch.phtml
+++ b/app/code/Magento/Directory/view/frontend/templates/currency/switch.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <p><?php echo __('Your current currency is: %1.', $currency->getCode()) ?></p>
 <p><a href="<?php echo $this->getBaseUrl(); ?>" class="action continue"><span><?php echo __('Continue') ?></span></a></p>
diff --git a/app/code/Magento/Downloadable/Block/Adminhtml/Catalog/Product/Edit/Tab/Downloadable/Links.php b/app/code/Magento/Downloadable/Block/Adminhtml/Catalog/Product/Edit/Tab/Downloadable/Links.php
index 96e198f9b12c3ddd340149cb092bf4beb85e7a7a..50cdaebedacbc9b6b7aa2030f5bd136248a88aec 100644
--- a/app/code/Magento/Downloadable/Block/Adminhtml/Catalog/Product/Edit/Tab/Downloadable/Links.php
+++ b/app/code/Magento/Downloadable/Block/Adminhtml/Catalog/Product/Edit/Tab/Downloadable/Links.php
@@ -9,6 +9,7 @@ namespace Magento\Downloadable\Block\Adminhtml\Catalog\Product\Edit\Tab\Download
  * Adminhtml catalog product downloadable items tab links section
  *
  * @author      Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Links extends \Magento\Backend\Block\Template
 {
@@ -88,6 +89,7 @@ class Links extends \Magento\Backend\Block\Template
      * @param \Magento\Eav\Model\Entity\AttributeFactory $attributeFactory
      * @param \Magento\Backend\Model\UrlFactory $urlFactory
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Backend\Block\Template\Context $context,
@@ -215,6 +217,7 @@ class Links extends \Magento\Backend\Block\Template
      * Check exists defined links title
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getUsedDefault()
     {
@@ -225,6 +228,7 @@ class Links extends \Magento\Backend\Block\Template
      * Return true if price in website scope
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsPriceWebsiteScope()
     {
@@ -242,6 +246,8 @@ class Links extends \Magento\Backend\Block\Template
      * Return array of links
      *
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function getLinkData()
     {
diff --git a/app/code/Magento/Downloadable/Block/Adminhtml/Catalog/Product/Edit/Tab/Downloadable/Samples.php b/app/code/Magento/Downloadable/Block/Adminhtml/Catalog/Product/Edit/Tab/Downloadable/Samples.php
index dd8b6b932b6197f6bdd96c2431471443a8ad7438..8725016bcd3eb00ac56f4b515df51c9ab091fb96 100644
--- a/app/code/Magento/Downloadable/Block/Adminhtml/Catalog/Product/Edit/Tab/Downloadable/Samples.php
+++ b/app/code/Magento/Downloadable/Block/Adminhtml/Catalog/Product/Edit/Tab/Downloadable/Samples.php
@@ -189,6 +189,7 @@ class Samples extends \Magento\Backend\Block\Widget
      * Check exists defined samples title
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getUsedDefault()
     {
diff --git a/app/code/Magento/Downloadable/Block/Adminhtml/Sales/Items/Column/Downloadable/Name.php b/app/code/Magento/Downloadable/Block/Adminhtml/Sales/Items/Column/Downloadable/Name.php
index 2ce0a5886f70c57457e8c2c2ba579b8b40546e0a..f2724cdfbd8c669014b7527331c89b2a32f2637f 100644
--- a/app/code/Magento/Downloadable/Block/Adminhtml/Sales/Items/Column/Downloadable/Name.php
+++ b/app/code/Magento/Downloadable/Block/Adminhtml/Sales/Items/Column/Downloadable/Name.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Downloadable\Block\Adminhtml\Sales\Items\Column\Downloadable;
 
 use Magento\Downloadable\Model\Link\Purchased;
diff --git a/app/code/Magento/Downloadable/Block/Catalog/Product/Links.php b/app/code/Magento/Downloadable/Block/Catalog/Product/Links.php
index 18d7fb4d305be749403a520336c2d3e11ff743a4..544d9c091faf67a14c96ad0627c53d04da988162 100644
--- a/app/code/Magento/Downloadable/Block/Catalog/Product/Links.php
+++ b/app/code/Magento/Downloadable/Block/Catalog/Product/Links.php
@@ -46,6 +46,7 @@ class Links extends \Magento\Catalog\Block\Product\AbstractProduct
      * Enter description here...
      *
      * @return boolean
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getLinksPurchasedSeparately()
     {
@@ -54,6 +55,7 @@ class Links extends \Magento\Catalog\Block\Product\AbstractProduct
 
     /**
      * @return boolean
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getLinkSelectionRequired()
     {
@@ -137,6 +139,7 @@ class Links extends \Magento\Catalog\Block\Product\AbstractProduct
      * Return true if target of link new window
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsOpenInNewWindow()
     {
@@ -151,6 +154,7 @@ class Links extends \Magento\Catalog\Block\Product\AbstractProduct
      *
      * @param Link $link
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsLinkChecked($link)
     {
diff --git a/app/code/Magento/Downloadable/Block/Catalog/Product/Samples.php b/app/code/Magento/Downloadable/Block/Catalog/Product/Samples.php
index 4fd51e7e64136231b721f23c18e73a3cdccb0d36..179b2816b92e3e001b32ad04ff40d61861b07e2b 100644
--- a/app/code/Magento/Downloadable/Block/Catalog/Product/Samples.php
+++ b/app/code/Magento/Downloadable/Block/Catalog/Product/Samples.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Downloadable\Block\Catalog\Product;
 
 use Magento\Downloadable\Model\Resource\Sample;
@@ -60,6 +63,7 @@ class Samples extends \Magento\Catalog\Block\Product\AbstractProduct
      * Return true if target of link new window
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsOpenInNewWindow()
     {
diff --git a/app/code/Magento/Downloadable/Block/Checkout/Cart/Item/Renderer.php b/app/code/Magento/Downloadable/Block/Checkout/Cart/Item/Renderer.php
index a2a4b9839c58e950c31cdd898343805104135e11..4d4506765375100de70a7c5b8c3923166d775ded 100644
--- a/app/code/Magento/Downloadable/Block/Checkout/Cart/Item/Renderer.php
+++ b/app/code/Magento/Downloadable/Block/Checkout/Cart/Item/Renderer.php
@@ -33,6 +33,7 @@ class Renderer extends \Magento\Checkout\Block\Cart\Item\Renderer
      * @param \Magento\Downloadable\Helper\Catalog\Product\Configuration $downloadableProductConfiguration
      * @param \Magento\Framework\Module\Manager $moduleManager
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\View\Element\Template\Context $context,
diff --git a/app/code/Magento/Downloadable/Block/Checkout/Success.php b/app/code/Magento/Downloadable/Block/Checkout/Success.php
index 752f4e2109e32a2f32636eb59ed1ddda0f3688b5..644ecc9688535b31ac5d42420568a0099677b319 100644
--- a/app/code/Magento/Downloadable/Block/Checkout/Success.php
+++ b/app/code/Magento/Downloadable/Block/Checkout/Success.php
@@ -56,6 +56,7 @@ class Success extends \Magento\Checkout\Block\Onepage\Success
      * Return true if order(s) has one or more downloadable products
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getOrderHasDownloadable()
     {
diff --git a/app/code/Magento/Downloadable/Block/Customer/Products/ListProducts.php b/app/code/Magento/Downloadable/Block/Customer/Products/ListProducts.php
index 62a2044250e530371c98e15beea95c8cd893eea1..66356a4b33bdc28e7fc62d1fce5c48d712df2b77 100644
--- a/app/code/Magento/Downloadable/Block/Customer/Products/ListProducts.php
+++ b/app/code/Magento/Downloadable/Block/Customer/Products/ListProducts.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Downloadable\Block\Customer\Products;
 
 use Magento\Downloadable\Model\Link\Purchased\Item;
@@ -159,6 +162,7 @@ class ListProducts extends \Magento\Framework\View\Element\Template
      * Return true if target of link new window
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsOpenInNewWindow()
     {
diff --git a/app/code/Magento/Downloadable/Block/Sales/Order/Email/Items/Downloadable.php b/app/code/Magento/Downloadable/Block/Sales/Order/Email/Items/Downloadable.php
index fa5792e201c06c14eddb0d07e00c8d4545775984..80c7998839e1f2cc996f4be85d2f41bc5e98d37e 100644
--- a/app/code/Magento/Downloadable/Block/Sales/Order/Email/Items/Downloadable.php
+++ b/app/code/Magento/Downloadable/Block/Sales/Order/Email/Items/Downloadable.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Downloadable\Block\Sales\Order\Email\Items;
 
 use Magento\Downloadable\Model\Link\Purchased;
diff --git a/app/code/Magento/Downloadable/Block/Sales/Order/Email/Items/Order/Downloadable.php b/app/code/Magento/Downloadable/Block/Sales/Order/Email/Items/Order/Downloadable.php
index 253484b4ca699a6c83e4827ed37f1da804fbba37..2def86d9c63e08f4123847c905bf66e8aba8eff2 100644
--- a/app/code/Magento/Downloadable/Block/Sales/Order/Email/Items/Order/Downloadable.php
+++ b/app/code/Magento/Downloadable/Block/Sales/Order/Email/Items/Order/Downloadable.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Downloadable\Block\Sales\Order\Email\Items\Order;
 
 use Magento\Downloadable\Model\Link\Purchased\Item;
diff --git a/app/code/Magento/Downloadable/Block/Sales/Order/Item/Renderer/Downloadable.php b/app/code/Magento/Downloadable/Block/Sales/Order/Item/Renderer/Downloadable.php
index 941fb00b40bb3ae376e24370e4b01c970a2937b0..7176465cae4437758a013a619683582b42949145 100644
--- a/app/code/Magento/Downloadable/Block/Sales/Order/Item/Renderer/Downloadable.php
+++ b/app/code/Magento/Downloadable/Block/Sales/Order/Item/Renderer/Downloadable.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Downloadable\Block\Sales\Order\Item\Renderer;
 
 use Magento\Downloadable\Model\Link\Purchased;
diff --git a/app/code/Magento/Downloadable/Controller/Customer/Products.php b/app/code/Magento/Downloadable/Controller/Customer/Products.php
index 2033aa4de701130fc05b870aaad5e32f7cebeb79..33c4360bb9fb526d0426a36f53d37a2ba243b09a 100644
--- a/app/code/Magento/Downloadable/Controller/Customer/Products.php
+++ b/app/code/Magento/Downloadable/Controller/Customer/Products.php
@@ -4,6 +4,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Downloadable\Controller\Customer;
 
 use Magento\Framework\App\RequestInterface;
diff --git a/app/code/Magento/Downloadable/Controller/Download/Link.php b/app/code/Magento/Downloadable/Controller/Download/Link.php
index ac1766522120e32fd0359c88b1ac8271dba70128..0c0cd1bbe8544c02137b5e0d853112b908b59c8f 100644
--- a/app/code/Magento/Downloadable/Controller/Download/Link.php
+++ b/app/code/Magento/Downloadable/Controller/Download/Link.php
@@ -26,6 +26,10 @@ class Link extends \Magento\Downloadable\Controller\Download
      * Download link action
      *
      * @return void|ResponseInterface
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
+     * @SuppressWarnings(PHPMD.ExitExpression)
      */
     public function execute()
     {
diff --git a/app/code/Magento/Downloadable/Controller/Download/LinkSample.php b/app/code/Magento/Downloadable/Controller/Download/LinkSample.php
index 130992ca01acc177a7c21c5ba0172d3950eb0bab..351fc26c55c5f73eb3d02914e044da4b69267a2c 100644
--- a/app/code/Magento/Downloadable/Controller/Download/LinkSample.php
+++ b/app/code/Magento/Downloadable/Controller/Download/LinkSample.php
@@ -15,6 +15,7 @@ class LinkSample extends \Magento\Downloadable\Controller\Download
      * Download link's sample action
      *
      * @return ResponseInterface
+     * @SuppressWarnings(PHPMD.ExitExpression)
      */
     public function execute()
     {
diff --git a/app/code/Magento/Downloadable/Controller/Download/Sample.php b/app/code/Magento/Downloadable/Controller/Download/Sample.php
index 4b1102ac5b35b0de05e6c9680115f1e56441cf8b..a8cecbc48bd075a86d2f201c024d3e790fcadff2 100644
--- a/app/code/Magento/Downloadable/Controller/Download/Sample.php
+++ b/app/code/Magento/Downloadable/Controller/Download/Sample.php
@@ -15,6 +15,7 @@ class Sample extends \Magento\Downloadable\Controller\Download
      * Download sample action
      *
      * @return ResponseInterface
+     * @SuppressWarnings(PHPMD.ExitExpression)
      */
     public function execute()
     {
diff --git a/app/code/Magento/Downloadable/Helper/Catalog/Product/Configuration.php b/app/code/Magento/Downloadable/Helper/Catalog/Product/Configuration.php
index 749126e47bf5de88e2b6a510bb4f0c0c2af5fb07..8d4df3c04791accc9fdc49e496a4c777a584178a 100644
--- a/app/code/Magento/Downloadable/Helper/Catalog/Product/Configuration.php
+++ b/app/code/Magento/Downloadable/Helper/Catalog/Product/Configuration.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Downloadable\Helper\Catalog\Product;
 
 /**
diff --git a/app/code/Magento/Downloadable/Helper/Data.php b/app/code/Magento/Downloadable/Helper/Data.php
index 622cdcd1487a08a220acc3d9e636e405a36c5189..faab224de0f9ece8f5081a8122c28ccc3ff8ab13 100644
--- a/app/code/Magento/Downloadable/Helper/Data.php
+++ b/app/code/Magento/Downloadable/Helper/Data.php
@@ -38,6 +38,7 @@ class Data extends \Magento\Framework\App\Helper\AbstractHelper
      *
      * @param \Magento\Downloadable\Model\Link|Item $link
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsShareable($link)
     {
diff --git a/app/code/Magento/Downloadable/Helper/Download.php b/app/code/Magento/Downloadable/Helper/Download.php
index d54c436b78179da2e62ba65921b6831a48bc00a8..4351cf3dccbf55249f5086184630cc662080abd7 100644
--- a/app/code/Magento/Downloadable/Helper/Download.php
+++ b/app/code/Magento/Downloadable/Helper/Download.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Downloadable\Helper;
 
 use Magento\Framework\App\Filesystem\DirectoryList;
@@ -11,6 +14,7 @@ use Magento\Framework\Model\Exception as CoreException;
 
 /**
  * Downloadable Products Download Helper
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Download extends \Magento\Framework\App\Helper\AbstractHelper
 {
@@ -294,6 +298,7 @@ class Download extends \Magento\Framework\App\Helper\AbstractHelper
      *
      * @param mixed $store
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getContentDisposition($store = null)
     {
diff --git a/app/code/Magento/Downloadable/Model/Observer.php b/app/code/Magento/Downloadable/Model/Observer.php
index 970c00f828d14947e57602d35a402d7ccfc5faf8..87fce9c49a4dd5ada0eb52a37307673164351675 100644
--- a/app/code/Magento/Downloadable/Model/Observer.php
+++ b/app/code/Magento/Downloadable/Model/Observer.php
@@ -11,6 +11,7 @@ use Magento\Store\Model\ScopeInterface;
  * Downloadable Products Observer
  *
  * @author      Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Observer
 {
@@ -111,6 +112,8 @@ class Observer
      *
      * @param \Magento\Framework\Object $observer
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function saveDownloadableOrderItem($observer)
     {
@@ -230,6 +233,8 @@ class Observer
      *
      * @param \Magento\Framework\Object $observer
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function setLinkStatus($observer)
     {
@@ -352,7 +357,7 @@ class Observer
             return $this;
         }
 
-        /* @var $quote \Magento\Sales\Model\Quote */
+        /* @var $quote \Magento\Quote\Model\Quote */
         $quote = $observer->getEvent()->getQuote();
 
         foreach ($quote->getAllItems() as $item) {
diff --git a/app/code/Magento/Downloadable/Model/Product/Type.php b/app/code/Magento/Downloadable/Model/Product/Type.php
index 7eb14f6d66d5e6cbf01620430b6a2cb2ce95e4ab..7fcce95622ed09df8a726120b6920c85e9afa88b 100644
--- a/app/code/Magento/Downloadable/Model/Product/Type.php
+++ b/app/code/Magento/Downloadable/Model/Product/Type.php
@@ -11,6 +11,7 @@ use Magento\Catalog\Api\ProductRepositoryInterface;
  * Downloadable product type model
  *
  * @author      Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Type extends \Magento\Catalog\Model\Product\Type\Virtual
 {
@@ -73,6 +74,7 @@ class Type extends \Magento\Catalog\Model\Product\Type\Virtual
      * @param \Magento\Downloadable\Model\Resource\Sample\CollectionFactory $samplesFactory
      * @param \Magento\Downloadable\Model\SampleFactory $sampleFactory
      * @param \Magento\Downloadable\Model\LinkFactory $linkFactory
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Catalog\Model\Product\Option $catalogProductOption,
@@ -187,6 +189,7 @@ class Type extends \Magento\Catalog\Model\Product\Type\Virtual
      *
      * @param \Magento\Catalog\Model\Product $product
      * @return boolean
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getLinkSelectionRequired($product)
     {
@@ -229,6 +232,9 @@ class Type extends \Magento\Catalog\Model\Product\Type\Virtual
      *
      * @param \Magento\Catalog\Model\Product $product
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public function save($product)
     {
@@ -374,7 +380,7 @@ class Type extends \Magento\Catalog\Model\Product\Type\Virtual
     {
         parent::checkProductBuyState($product);
         $option = $product->getCustomOption('info_buyRequest');
-        if ($option instanceof \Magento\Sales\Model\Quote\Item\Option) {
+        if ($option instanceof \Magento\Quote\Model\Quote\Item\Option) {
             $buyRequest = new \Magento\Framework\Object(unserialize($option->getValue()));
             if (!$buyRequest->hasLinks()) {
                 if (!$product->getLinksPurchasedSeparately()) {
@@ -490,6 +496,7 @@ class Type extends \Magento\Catalog\Model\Product\Type\Virtual
      * @param  \Magento\Catalog\Model\Product $product
      * @param  \Magento\Framework\Object $buyRequest
      * @return array
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function processBuyRequest($product, $buyRequest)
     {
@@ -561,6 +568,8 @@ class Type extends \Magento\Catalog\Model\Product\Type\Virtual
      * @param \Magento\Catalog\Model\Product $product
      * @param string $processMode
      * @return array|string
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _prepareProduct(\Magento\Framework\Object $buyRequest, $product, $processMode)
     {
diff --git a/app/code/Magento/Downloadable/Model/Resource/Link.php b/app/code/Magento/Downloadable/Model/Resource/Link.php
index a8551127a09eac9969ff77eef80e325a274b4d02..758401cb4b2e7778fe5f71f110582bfbb4e9627f 100644
--- a/app/code/Magento/Downloadable/Model/Resource/Link.php
+++ b/app/code/Magento/Downloadable/Model/Resource/Link.php
@@ -70,6 +70,7 @@ class Link extends \Magento\Framework\Model\Resource\Db\AbstractDb
      *
      * @param \Magento\Downloadable\Model\Link $linkObject
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function saveItemTitleAndPrice($linkObject)
     {
diff --git a/app/code/Magento/Downloadable/Model/Sales/Order/Pdf/Items/AbstractItems.php b/app/code/Magento/Downloadable/Model/Sales/Order/Pdf/Items/AbstractItems.php
index 6d37b4b34e41c1c0ed26d7cea1e12328a54cbe55..913d2f31f15cf928e1be3f38e5503b40d24c650e 100644
--- a/app/code/Magento/Downloadable/Model/Sales/Order/Pdf/Items/AbstractItems.php
+++ b/app/code/Magento/Downloadable/Model/Sales/Order/Pdf/Items/AbstractItems.php
@@ -3,10 +3,14 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Downloadable\Model\Sales\Order\Pdf\Items;
 
 /**
  * Order Downloadable Pdf Items renderer
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 abstract class AbstractItems extends \Magento\Sales\Model\Order\Pdf\Items\AbstractItems
 {
@@ -46,6 +50,7 @@ abstract class AbstractItems extends \Magento\Sales\Model\Order\Pdf\Items\Abstra
      * @param \Magento\Framework\Model\Resource\AbstractResource $resource
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
diff --git a/app/code/Magento/Downloadable/Model/Sales/Order/Pdf/Items/Creditmemo.php b/app/code/Magento/Downloadable/Model/Sales/Order/Pdf/Items/Creditmemo.php
index f36030df917aa4c09ec9c02cfeb5d6f71a1bfee9..63a063842af1a697af18dca537728709b4b74b4d 100644
--- a/app/code/Magento/Downloadable/Model/Sales/Order/Pdf/Items/Creditmemo.php
+++ b/app/code/Magento/Downloadable/Model/Sales/Order/Pdf/Items/Creditmemo.php
@@ -28,6 +28,7 @@ class Creditmemo extends \Magento\Downloadable\Model\Sales\Order\Pdf\Items\Abstr
      * @param \Magento\Framework\Model\Resource\AbstractResource $resource
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
diff --git a/app/code/Magento/Downloadable/Model/Sales/Order/Pdf/Items/Invoice.php b/app/code/Magento/Downloadable/Model/Sales/Order/Pdf/Items/Invoice.php
index f78c138699d5495cb4ad4656d6c9b5cf45ea3955..1bd20800ae0383b8639da82874783266a95e91b2 100644
--- a/app/code/Magento/Downloadable/Model/Sales/Order/Pdf/Items/Invoice.php
+++ b/app/code/Magento/Downloadable/Model/Sales/Order/Pdf/Items/Invoice.php
@@ -28,6 +28,7 @@ class Invoice extends \Magento\Downloadable\Model\Sales\Order\Pdf\Items\Abstract
      * @param \Magento\Framework\Model\Resource\AbstractResource $resource
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
@@ -63,6 +64,7 @@ class Invoice extends \Magento\Downloadable\Model\Sales\Order\Pdf\Items\Abstract
      * Draw item line
      *
      * @return void
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public function draw()
     {
diff --git a/app/code/Magento/Downloadable/composer.json b/app/code/Magento/Downloadable/composer.json
index c8c0562e888739e18304a81ad9d996da13f29589..4dfe131efbf3337990ad2ff4c18f6686164e8d2c 100644
--- a/app/code/Magento/Downloadable/composer.json
+++ b/app/code/Magento/Downloadable/composer.json
@@ -3,26 +3,27 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-catalog": "0.42.0-beta3",
-        "magento/module-core": "0.42.0-beta3",
-        "magento/module-customer": "0.42.0-beta3",
-        "magento/module-tax": "0.42.0-beta3",
-        "magento/module-theme": "0.42.0-beta3",
-        "magento/module-eav": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/module-sales": "0.42.0-beta3",
-        "magento/module-checkout": "0.42.0-beta3",
-        "magento/module-directory": "0.42.0-beta3",
-        "magento/module-wishlist": "0.42.0-beta3",
-        "magento/module-gift-message": "0.42.0-beta3",
-        "magento/module-catalog-inventory": "0.42.0-beta3",
-        "magento/module-msrp": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-catalog": "0.42.0-beta4",
+        "magento/module-core": "0.42.0-beta4",
+        "magento/module-customer": "0.42.0-beta4",
+        "magento/module-tax": "0.42.0-beta4",
+        "magento/module-theme": "0.42.0-beta4",
+        "magento/module-eav": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/module-sales": "0.42.0-beta4",
+        "magento/module-checkout": "0.42.0-beta4",
+        "magento/module-directory": "0.42.0-beta4",
+        "magento/module-wishlist": "0.42.0-beta4",
+        "magento/module-gift-message": "0.42.0-beta4",
+        "magento/module-catalog-inventory": "0.42.0-beta4",
+        "magento/module-msrp": "0.42.0-beta4",
+        "magento/module-quote": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/Downloadable/etc/catalog_attributes.xml b/app/code/Magento/Downloadable/etc/catalog_attributes.xml
index f8608a1708b26e3b7336c56ac3e05cf0cd89f93e..cf8f4d0beca553ad48cd90d5bc5d6655e854dbcb 100644
--- a/app/code/Magento/Downloadable/etc/catalog_attributes.xml
+++ b/app/code/Magento/Downloadable/etc/catalog_attributes.xml
@@ -6,7 +6,7 @@
  */
 -->
 <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../Catalog/etc/catalog_attributes.xsd">
-    <group name="sales_quote_item">
+    <group name="quote_item">
         <attribute name="links_purchased_separately"/>
         <attribute name="links_title"/>
     </group>
diff --git a/app/code/Magento/Downloadable/view/adminhtml/templates/product/composite/fieldset/downloadable.phtml b/app/code/Magento/Downloadable/view/adminhtml/templates/product/composite/fieldset/downloadable.phtml
index d4f9b44380ac31595fbf5d50a2c3e01a012ea678..a5d10ad338f57501b29d8988d914fafbd1b6f8d5 100644
--- a/app/code/Magento/Downloadable/view/adminhtml/templates/product/composite/fieldset/downloadable.phtml
+++ b/app/code/Magento/Downloadable/view/adminhtml/templates/product/composite/fieldset/downloadable.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /* @var $this \Magento\Downloadable\Block\Adminhtml\Catalog\Product\Composite\Fieldset\Downloadable */ ?>
 <?php $_linksPurchasedSeparately = $this->getLinksPurchasedSeparately(); ?>
@@ -33,7 +36,7 @@
                     <?php endif; ?>
                     </label>
                 <?php if ($_isRequired): ?>
-                    <script type="text/javascript">
+                    <script>
 require(['prototype'], function(){
 
     //<![CDATA[
@@ -53,7 +56,7 @@ require(['prototype'], function(){
     </div>
 </fieldset>
 
-    <script type="text/javascript">
+    <script>
 require(['prototype'], function(){
 
 //<![CDATA[
diff --git a/app/code/Magento/Downloadable/view/adminhtml/templates/product/edit/downloadable.phtml b/app/code/Magento/Downloadable/view/adminhtml/templates/product/edit/downloadable.phtml
index 7dd05a1a327988a8949ec072d59675776c64f4c9..bb64dbcfa41d59cbbfcd59e953838fdc49961b9c 100644
--- a/app/code/Magento/Downloadable/view/adminhtml/templates/product/edit/downloadable.phtml
+++ b/app/code/Magento/Downloadable/view/adminhtml/templates/product/edit/downloadable.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php
@@ -10,7 +13,7 @@
  * @see \Magento\Downloadable\Block\Adminhtml\Catalog\Product\Edit\Tab\Downloadable
  */
 ?>
-<script type="text/javascript">
+<script>
 require([
     'jquery',
     'Magento_Ui/js/lib/registry/registry',
@@ -214,7 +217,7 @@ var uploaderTemplate = '<div class="no-display" id="[[idName]]-template">' +
     <div id="custom-advice-container"></div>
 </div>
 <?php if ($this->isReadonly()): ?>
-<script type="text/javascript">
+<script>
 require(['prototype'], function(){
 
 $(<?= $this->getContentTabId(); ?>).select('input', 'select', 'textarea', 'button').each(function (item){
diff --git a/app/code/Magento/Downloadable/view/adminhtml/templates/product/edit/downloadable/links.phtml b/app/code/Magento/Downloadable/view/adminhtml/templates/product/edit/downloadable/links.phtml
index 43f4f66aa12ed5af65d05a2bbe7bf92291c60efc..63e1d5dd1a39ea67eae20fbe854e8e070c891485 100644
--- a/app/code/Magento/Downloadable/view/adminhtml/templates/product/edit/downloadable/links.phtml
+++ b/app/code/Magento/Downloadable/view/adminhtml/templates/product/edit/downloadable/links.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 
@@ -65,7 +68,7 @@
 
 
 </div>
-<script type="text/javascript">
+<script>
 require([
     'jquery',
     'Magento_Ui/js/lib/registry/registry',
@@ -116,7 +119,7 @@ require([
                             '<div class="fileinput-button form-buttons">'+
                                 '<span><?php echo __('Browse Files...') ?></span>' +
                                 '<input id="downloadable_link_{{id}}_sample_file" type="file" name="<?php echo $this->getFileFieldName('link_samples') ?>">' +
-                                '<script type="text/javascript">' +
+                                '<script>' +
                                 '/*<![CDATA[*/' +
                                     'linksUploader("#downloadable_link_{{id}}_sample_file", "<?php echo $this->getUploadUrl('link_samples') ?>"); ' +
                                 '/*]]>*/' +
@@ -144,7 +147,7 @@ require([
                             '<div class="fileinput-button form-buttons">'+
                                 '<span><?php echo __('Browse Files...') ?></span>' +
                                 '<input id="downloadable_link_{{id}}_file" type="file" name="<?php echo $this->getFileFieldName('links') ?>">' +
-                                '<script type="text/javascript">' +
+                                '<script>' +
                                 '/*<![CDATA[*/' +
                                     'linksUploader("#downloadable_link_{{id}}_file", "<?php echo $this->getUploadUrl('links') ?>"); ' +
                                 '/*]]>*/' +
diff --git a/app/code/Magento/Downloadable/view/adminhtml/templates/product/edit/downloadable/samples.phtml b/app/code/Magento/Downloadable/view/adminhtml/templates/product/edit/downloadable/samples.phtml
index 9a2bfea2fe2b18031bf1d0f746b8af62311bf997..fc38586b5b3fb070a834b511523523b90baab8d2 100644
--- a/app/code/Magento/Downloadable/view/adminhtml/templates/product/edit/downloadable/samples.phtml
+++ b/app/code/Magento/Downloadable/view/adminhtml/templates/product/edit/downloadable/samples.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
@@ -47,7 +50,7 @@ $this->getConfigJson();
 
     <div><small><?php echo __('Alphanumeric, dash and underscore characters are recommended for filenames. Improper characters are replaced with \'_\'.')?></small></div>
 </div>
-<script type="text/javascript">
+<script>
 require([
     'jquery',
     'Magento_Ui/js/lib/registry/registry',
@@ -73,7 +76,7 @@ require([
                                             '<div class="fileinput-button form-buttons">'+
                                                 '<span><?php echo __('Browse Files...') ?></span>' +
                                                 '<input id="downloadable_sample_{{id}}_file" type="file" name="<?php echo $this->getConfig()->getFileField() ?>" data-url="<?php echo $this->getConfig()->getUrl() ?>">' +
-                                                '<script type="text/javascript">' +
+                                                '<script>' +
                                                 '/*<![CDATA[*/' +
                                                     'sampleUploader("#downloadable_sample_{{id}}_file"); ' +
                                                 '/*]]>*/' +
diff --git a/app/code/Magento/Downloadable/view/adminhtml/templates/sales/items/column/downloadable/creditmemo/name.phtml b/app/code/Magento/Downloadable/view/adminhtml/templates/sales/items/column/downloadable/creditmemo/name.phtml
index 228a493784bdabea802da628ebe3035b3b8fe477..a02c238cb9014ed1e6d86b3a8a8ea8a7fe328150 100644
--- a/app/code/Magento/Downloadable/view/adminhtml/templates/sales/items/column/downloadable/creditmemo/name.phtml
+++ b/app/code/Magento/Downloadable/view/adminhtml/templates/sales/items/column/downloadable/creditmemo/name.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php if ($_item = $this->getItem()): ?>
@@ -19,7 +22,7 @@
                 <?php echo $this->truncateString($_option['value'], 55, '', $_remainder);?>
                 <?php if ($_remainder):?>
                     ... <span id="<?php echo $_id = 'id' . uniqid()?>"><?php echo $_remainder ?></span>
-                    <script type="text/javascript">
+                    <script>
 require(['prototype'], function(){
 
     $('<?php echo $_id ?>').hide();
diff --git a/app/code/Magento/Downloadable/view/adminhtml/templates/sales/items/column/downloadable/invoice/name.phtml b/app/code/Magento/Downloadable/view/adminhtml/templates/sales/items/column/downloadable/invoice/name.phtml
index 0f60181f3f5c4e9057dc6cc27f42b27bca18b47b..c6aab1a4b0dbf391b8eae857e56c05474a37a015 100644
--- a/app/code/Magento/Downloadable/view/adminhtml/templates/sales/items/column/downloadable/invoice/name.phtml
+++ b/app/code/Magento/Downloadable/view/adminhtml/templates/sales/items/column/downloadable/invoice/name.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php if ($_item = $this->getItem()): ?>
@@ -19,7 +22,7 @@
                 <?php echo $this->truncateString($_option['value'], 55, '', $_remainder);?>
                 <?php if ($_remainder):?>
                     ... <span id="<?php echo $_id = 'id' . uniqid()?>"><?php echo $_remainder ?></span>
-                    <script type="text/javascript">
+                    <script>
 require(['prototype'], function(){
 
     $('<?php echo $_id ?>').hide();
diff --git a/app/code/Magento/Downloadable/view/adminhtml/templates/sales/items/column/downloadable/name.phtml b/app/code/Magento/Downloadable/view/adminhtml/templates/sales/items/column/downloadable/name.phtml
index 0520458a3de82fdd4d19da5268fe8741a425c638..e723058544141e3e21e8dde66f7a058eaaceda17 100644
--- a/app/code/Magento/Downloadable/view/adminhtml/templates/sales/items/column/downloadable/name.phtml
+++ b/app/code/Magento/Downloadable/view/adminhtml/templates/sales/items/column/downloadable/name.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php if ($_item = $this->getItem()): ?>
@@ -19,7 +22,7 @@
                 <?php echo $this->truncateString($_option['value'], 55, '', $_remainder);?>
                 <?php if ($_remainder):?>
                     ... <span id="<?php echo $_id = 'id' . uniqid()?>"><?php echo $_remainder ?></span>
-                    <script type="text/javascript">
+                    <script>
 require(['prototype'], function(){
 
     $('<?php echo $_id ?>').hide();
diff --git a/app/code/Magento/Downloadable/view/frontend/templates/catalog/product/links.phtml b/app/code/Magento/Downloadable/view/frontend/templates/catalog/product/links.phtml
index dd3ab9d975d1009edbd19bfd9c5f13dd7a6ae213..f5de1b1c17d6c8b42750fe777fa9301dc3abf564 100644
--- a/app/code/Magento/Downloadable/view/frontend/templates/catalog/product/links.phtml
+++ b/app/code/Magento/Downloadable/view/frontend/templates/catalog/product/links.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /* @var $this \Magento\Downloadable\Block\Catalog\Product\Links */ ?>
 <?php $_linksPurchasedSeparately = $this->getLinksPurchasedSeparately(); ?>
diff --git a/app/code/Magento/Downloadable/view/frontend/templates/catalog/product/samples.phtml b/app/code/Magento/Downloadable/view/frontend/templates/catalog/product/samples.phtml
index ddba63489926f1d4c37c64205e40a66ceff727a5..0d623925b828dce85b32352b39c92d63180f71dd 100644
--- a/app/code/Magento/Downloadable/view/frontend/templates/catalog/product/samples.phtml
+++ b/app/code/Magento/Downloadable/view/frontend/templates/catalog/product/samples.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Downloadable product links
  *
diff --git a/app/code/Magento/Downloadable/view/frontend/templates/catalog/product/type.phtml b/app/code/Magento/Downloadable/view/frontend/templates/catalog/product/type.phtml
index afeaa4371f4ecca6e16c14cd31441cac6e2cc24c..23790561051795c0e66f383d57df3ed3514eb473 100644
--- a/app/code/Magento/Downloadable/view/frontend/templates/catalog/product/type.phtml
+++ b/app/code/Magento/Downloadable/view/frontend/templates/catalog/product/type.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Downloadable product type
  *
diff --git a/app/code/Magento/Downloadable/view/frontend/templates/checkout/cart/item/default.phtml b/app/code/Magento/Downloadable/view/frontend/templates/checkout/cart/item/default.phtml
index 3d5ea337e96fd36df32b03d5468dd743b4da866a..70bd4cb6afd6dcfe27901756f64fcb490fad73a3 100644
--- a/app/code/Magento/Downloadable/view/frontend/templates/checkout/cart/item/default.phtml
+++ b/app/code/Magento/Downloadable/view/frontend/templates/checkout/cart/item/default.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 $_item = $this->getItem();
@@ -68,7 +71,7 @@ $canApplyMsrp = $helper->isShowBeforeOrderConfirm($product) && $helper->isMinima
                 <span class="msrp notice"><?php echo __('See price before order confirmation.'); ?></span>
                 <?php $helpLinkId = 'cart-msrp-help-' . $_item->getId(); ?>
                 <a id="<?php echo $helpLinkId ?>" href="#" class="action help map"><?php echo __("What's this?"); ?></a>
-                <script type="text/javascript">
+                <script>
                     require(['prototype'], function () {
                         Catalog.Map.addHelpLink($('<?php echo $helpLinkId ?>'), "<?php echo __("What's this?") ?>");
                     });
diff --git a/app/code/Magento/Downloadable/view/frontend/templates/checkout/links.phtml b/app/code/Magento/Downloadable/view/frontend/templates/checkout/links.phtml
index cff04cebc6d05cdd1749b223ae49f0b248ca4e27..57f170df1b92a5482967237333de305cb3109116 100644
--- a/app/code/Magento/Downloadable/view/frontend/templates/checkout/links.phtml
+++ b/app/code/Magento/Downloadable/view/frontend/templates/checkout/links.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php if ($links = $this->getLinks()): ?>
     <dl class="cart item options">
diff --git a/app/code/Magento/Downloadable/view/frontend/templates/checkout/success.phtml b/app/code/Magento/Downloadable/view/frontend/templates/checkout/success.phtml
index 978a4aa1b1dfdae11d28f2b726cd3fd7f9d5deb3..00d340b828f17de72c49a78dba92c210843a4b83 100644
--- a/app/code/Magento/Downloadable/view/frontend/templates/checkout/success.phtml
+++ b/app/code/Magento/Downloadable/view/frontend/templates/checkout/success.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php if ($this->getOrderHasDownloadable()): ?>
     <?php echo __('Go to <a href="%1">My Downloadable Products</a>', $this->getDownloadableProductsUrl()) ?>
diff --git a/app/code/Magento/Downloadable/view/frontend/templates/customer/products/list.phtml b/app/code/Magento/Downloadable/view/frontend/templates/customer/products/list.phtml
index 4a59b0a4fbdb7af0f101ccaf80631bc0745765f6..d0de5703b59caa9051ef41f3b927f0a54fe579bb 100644
--- a/app/code/Magento/Downloadable/view/frontend/templates/customer/products/list.phtml
+++ b/app/code/Magento/Downloadable/view/frontend/templates/customer/products/list.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/Downloadable/view/frontend/templates/email/order/items/creditmemo/downloadable.phtml b/app/code/Magento/Downloadable/view/frontend/templates/email/order/items/creditmemo/downloadable.phtml
index 9247a39475b14143002b349db73be1232a0430d3..fc595b4c5635aed29c8442b007f1d6c0296ad621 100644
--- a/app/code/Magento/Downloadable/view/frontend/templates/email/order/items/creditmemo/downloadable.phtml
+++ b/app/code/Magento/Downloadable/view/frontend/templates/email/order/items/creditmemo/downloadable.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\Downloadable\Block\Sales\Order\Email\Items\Downloadable */ ?>
 <?php $_item = $this->getItem() ?>
diff --git a/app/code/Magento/Downloadable/view/frontend/templates/email/order/items/invoice/downloadable.phtml b/app/code/Magento/Downloadable/view/frontend/templates/email/order/items/invoice/downloadable.phtml
index ac4b6bf730fa4c15210a45d6bcf70c5e6a9e5bb0..be81eaad8641c45a67faa24d7163352734503a08 100644
--- a/app/code/Magento/Downloadable/view/frontend/templates/email/order/items/invoice/downloadable.phtml
+++ b/app/code/Magento/Downloadable/view/frontend/templates/email/order/items/invoice/downloadable.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\Downloadable\Block\Sales\Order\Email\Items\Downloadable */ ?>
 <?php $_item = $this->getItem() ?>
diff --git a/app/code/Magento/Downloadable/view/frontend/templates/email/order/items/order/downloadable.phtml b/app/code/Magento/Downloadable/view/frontend/templates/email/order/items/order/downloadable.phtml
index a06956972c957a60ffca485e8de105cae6793f90..46a48ae27569f719d57b852eed32d8cdc4157c91 100644
--- a/app/code/Magento/Downloadable/view/frontend/templates/email/order/items/order/downloadable.phtml
+++ b/app/code/Magento/Downloadable/view/frontend/templates/email/order/items/order/downloadable.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\Downloadable\Block\Sales\Order\Email\Items\Order\Downloadable */ ?>
 <?php $_item = $this->getItem() ?>
diff --git a/app/code/Magento/Downloadable/view/frontend/templates/js/components.phtml b/app/code/Magento/Downloadable/view/frontend/templates/js/components.phtml
index 99be8e37348cec69521e018a61f416324e582a94..43f7e9c30c0126f46204910ee749ef83ad81e815 100644
--- a/app/code/Magento/Downloadable/view/frontend/templates/js/components.phtml
+++ b/app/code/Magento/Downloadable/view/frontend/templates/js/components.phtml
@@ -3,5 +3,8 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php echo $this->getChildHtml() ?>
diff --git a/app/code/Magento/Downloadable/view/frontend/templates/sales/order/creditmemo/items/renderer/downloadable.phtml b/app/code/Magento/Downloadable/view/frontend/templates/sales/order/creditmemo/items/renderer/downloadable.phtml
index 6ee377d824ed26a5634094faefef9c841f33a702..e29b554e00970abdeff254115476727b8c24c3b4 100644
--- a/app/code/Magento/Downloadable/view/frontend/templates/sales/order/creditmemo/items/renderer/downloadable.phtml
+++ b/app/code/Magento/Downloadable/view/frontend/templates/sales/order/creditmemo/items/renderer/downloadable.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Downloadable\Block\Sales\Order\Item\Renderer\Downloadable */
 ?>
 <?php $_item = $this->getItem() ?>
diff --git a/app/code/Magento/Downloadable/view/frontend/templates/sales/order/invoice/items/renderer/downloadable.phtml b/app/code/Magento/Downloadable/view/frontend/templates/sales/order/invoice/items/renderer/downloadable.phtml
index 95dcf7c0480e0ede447cf01a5c80797e58ee871f..759bfb0f913d721f0d7ad5bf1c66b89502871b3c 100644
--- a/app/code/Magento/Downloadable/view/frontend/templates/sales/order/invoice/items/renderer/downloadable.phtml
+++ b/app/code/Magento/Downloadable/view/frontend/templates/sales/order/invoice/items/renderer/downloadable.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Downloadable\Block\Sales\Order\Item\Renderer\Downloadable */
 ?>
 <?php $_item = $this->getItem() ?>
diff --git a/app/code/Magento/Downloadable/view/frontend/templates/sales/order/items/renderer/downloadable.phtml b/app/code/Magento/Downloadable/view/frontend/templates/sales/order/items/renderer/downloadable.phtml
index a90322e4c2c7e40ea89492db85c95280d4fe91b6..407c4d359c6f679f56ce4e16407fa5ca3dbff478 100644
--- a/app/code/Magento/Downloadable/view/frontend/templates/sales/order/items/renderer/downloadable.phtml
+++ b/app/code/Magento/Downloadable/view/frontend/templates/sales/order/items/renderer/downloadable.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Downloadable\Block\Sales\Order\Item\Renderer\Downloadable */
 ?>
 <?php $_item = $this->getItem() ?>
diff --git a/app/code/Magento/Eav/Api/Data/AttributeInterface.php b/app/code/Magento/Eav/Api/Data/AttributeInterface.php
index b6bc71a689cd62e6dece743e00dadfaf8ca4fcd3..4d91ac5c841494f513100b556448de980597e5fe 100644
--- a/app/code/Magento/Eav/Api/Data/AttributeInterface.php
+++ b/app/code/Magento/Eav/Api/Data/AttributeInterface.php
@@ -74,6 +74,7 @@ interface AttributeInterface extends \Magento\Framework\Api\ExtensibleDataInterf
      * Whether attribute is required.
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsRequired();
 
diff --git a/app/code/Magento/Eav/Block/Adminhtml/Attribute/Edit/Main/AbstractMain.php b/app/code/Magento/Eav/Block/Adminhtml/Attribute/Edit/Main/AbstractMain.php
index cd8b740e487b59a4b8bcfbe7c1d9db44a4c1d84a..e24bded921403101d8d4a412e0cd0b968e74a468 100644
--- a/app/code/Magento/Eav/Block/Adminhtml/Attribute/Edit/Main/AbstractMain.php
+++ b/app/code/Magento/Eav/Block/Adminhtml/Attribute/Edit/Main/AbstractMain.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Product attribute add/edit form main tab
  *
@@ -100,6 +102,7 @@ abstract class AbstractMain extends \Magento\Backend\Block\Widget\Form\Generic
      * Preparing default form elements for editing attribute
      *
      * @return $this
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _prepareForm()
     {
diff --git a/app/code/Magento/Eav/Helper/Data.php b/app/code/Magento/Eav/Helper/Data.php
index 208af48b6cb59be3c11763592ae0447773cb2c37..851c189bc9f06aaba86f4f53c4dc0042591bba5e 100644
--- a/app/code/Magento/Eav/Helper/Data.php
+++ b/app/code/Magento/Eav/Helper/Data.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Eav\Helper;
 
 /**
diff --git a/app/code/Magento/Eav/Model/Attribute.php b/app/code/Magento/Eav/Model/Attribute.php
index c5066616623ad3b7209a7217dd0c027d8e85199e..d6a034e9bbebb4d7ff5629f257cdde3e27df70c8 100644
--- a/app/code/Magento/Eav/Model/Attribute.php
+++ b/app/code/Magento/Eav/Model/Attribute.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * EAV attribute resource model (Using Forms)
  *
diff --git a/app/code/Magento/Eav/Model/Attribute/Data/AbstractData.php b/app/code/Magento/Eav/Model/Attribute/Data/AbstractData.php
index 8e0c35eb117d26de987fa4975230df1544510bb1..9e0889d58fd3f48064a1c9776ffd8ed111e6cf46 100644
--- a/app/code/Magento/Eav/Model/Attribute/Data/AbstractData.php
+++ b/app/code/Magento/Eav/Model/Attribute/Data/AbstractData.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Eav\Model\Attribute\Data;
 
 use Magento\Framework\App\RequestInterface;
@@ -12,6 +15,7 @@ use Magento\Framework\Model\Exception as CoreException;
  * EAV Attribute Abstract Data Model
  *
  * @author      Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 abstract class AbstractData
 {
@@ -285,6 +289,8 @@ abstract class AbstractData
      *
      * @param string $value
      * @return string|true
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _validateInputRule($value)
     {
@@ -479,6 +485,7 @@ abstract class AbstractData
      * Return is AJAX Request
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsAjaxRequest()
     {
diff --git a/app/code/Magento/Eav/Model/Attribute/Data/Date.php b/app/code/Magento/Eav/Model/Attribute/Data/Date.php
index a0d20a8134f5c57c7e2271a451572f522875df59..b1ef1c3c84b35eb61667b8c14c18ff326ce0a5c6 100644
--- a/app/code/Magento/Eav/Model/Attribute/Data/Date.php
+++ b/app/code/Magento/Eav/Model/Attribute/Data/Date.php
@@ -32,6 +32,8 @@ class Date extends \Magento\Eav\Model\Attribute\Data\AbstractData
      *
      * @param array|string $value
      * @return bool|array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function validateValue($value)
     {
diff --git a/app/code/Magento/Eav/Model/Attribute/Data/File.php b/app/code/Magento/Eav/Model/Attribute/Data/File.php
index f0b4209e275e940bcbedcb085228d601a265d39c..d01a73a73d9ebed99dc98d7abca252d718d03e63 100644
--- a/app/code/Magento/Eav/Model/Attribute/Data/File.php
+++ b/app/code/Magento/Eav/Model/Attribute/Data/File.php
@@ -64,6 +64,7 @@ class File extends \Magento\Eav\Model\Attribute\Data\AbstractData
      *
      * @param RequestInterface $request
      * @return array|string|bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function extractValue(RequestInterface $request)
     {
@@ -163,6 +164,8 @@ class File extends \Magento\Eav\Model\Attribute\Data\AbstractData
      *
      * @param array|string $value
      * @return bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function validateValue($value)
     {
@@ -205,6 +208,7 @@ class File extends \Magento\Eav\Model\Attribute\Data\AbstractData
      *
      * @param array|string $value
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function compactValue($value)
     {
diff --git a/app/code/Magento/Eav/Model/Attribute/Data/Image.php b/app/code/Magento/Eav/Model/Attribute/Data/Image.php
index ae8ea362d1248a9b0e8fab1e045b6719b25f5cd0..4110ddba02cf4dc03f9b477f4a8f753a617f2870 100644
--- a/app/code/Magento/Eav/Model/Attribute/Data/Image.php
+++ b/app/code/Magento/Eav/Model/Attribute/Data/Image.php
@@ -18,6 +18,8 @@ class Image extends \Magento\Eav\Model\Attribute\Data\File
      *
      * @param array $value
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _validateByRules($value)
     {
diff --git a/app/code/Magento/Eav/Model/Attribute/Data/Text.php b/app/code/Magento/Eav/Model/Attribute/Data/Text.php
index 5a6dabc2951b3f2f751870ead63a43f8f9ef4d81..4826543c56fbd9b33cccc0d4676a7365ca39e8f5 100644
--- a/app/code/Magento/Eav/Model/Attribute/Data/Text.php
+++ b/app/code/Magento/Eav/Model/Attribute/Data/Text.php
@@ -53,6 +53,8 @@ class Text extends \Magento\Eav\Model\Attribute\Data\AbstractData
      *
      * @param array|string $value
      * @return bool|array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function validateValue($value)
     {
diff --git a/app/code/Magento/Eav/Model/AttributeDataFactory.php b/app/code/Magento/Eav/Model/AttributeDataFactory.php
index 4ce92246b7a58ffdd188c1447b0e03b62d10bb32..84e3a099faa843a3c4c0ecdfc0a31afea89d2c17 100644
--- a/app/code/Magento/Eav/Model/AttributeDataFactory.php
+++ b/app/code/Magento/Eav/Model/AttributeDataFactory.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Eav\Model;
 
 /**
diff --git a/app/code/Magento/Eav/Model/AttributeRepository.php b/app/code/Magento/Eav/Model/AttributeRepository.php
index 52af10c54d8812ddd4c2b500cd5aa2554e8761fd..86437cdbf3d48452e55aaefa5b6c2c0702c643a1 100644
--- a/app/code/Magento/Eav/Model/AttributeRepository.php
+++ b/app/code/Magento/Eav/Model/AttributeRepository.php
@@ -12,6 +12,9 @@ use Magento\Framework\Exception\InputException;
 use Magento\Framework\Exception\NoSuchEntityException;
 use Magento\Framework\Exception\StateException;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class AttributeRepository implements \Magento\Eav\Api\AttributeRepositoryInterface
 {
     /**
diff --git a/app/code/Magento/Eav/Model/AttributeSetRepository.php b/app/code/Magento/Eav/Model/AttributeSetRepository.php
index 975c4dab62d8f14b18018646dfc38ee7f5ab364e..29cfc020a170711c6f2560f924faf45870866aa8 100644
--- a/app/code/Magento/Eav/Model/AttributeSetRepository.php
+++ b/app/code/Magento/Eav/Model/AttributeSetRepository.php
@@ -16,6 +16,9 @@ use Magento\Framework\Exception\CouldNotDeleteException;
 use Magento\Framework\Exception\CouldNotSaveException;
 use Magento\Framework\Exception\NoSuchEntityException;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class AttributeSetRepository implements AttributeSetRepositoryInterface
 {
     /**
diff --git a/app/code/Magento/Eav/Model/Config.php b/app/code/Magento/Eav/Model/Config.php
index 226fc7497a04ba7bdde5fa4351a87844c991cc41..e6afd9b32c8216ecb443e2d6b41a1680716071a5 100644
--- a/app/code/Magento/Eav/Model/Config.php
+++ b/app/code/Magento/Eav/Model/Config.php
@@ -7,6 +7,9 @@ namespace Magento\Eav\Model;
 
 use Magento\Eav\Model\Entity\Type;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class Config
 {
     /**#@+
@@ -450,6 +453,8 @@ class Config
      * @param  mixed $entityType
      * @param  \Magento\Framework\Object $object
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function getEntityAttributeCodes($entityType, $object = null)
     {
diff --git a/app/code/Magento/Eav/Model/Entity/AbstractEntity.php b/app/code/Magento/Eav/Model/Entity/AbstractEntity.php
index 90cd32c09b102f794a76ccb29d7ef491d0ec405b..e7d7baa3cd43b1c27343564047e694d5f6c0999b 100644
--- a/app/code/Magento/Eav/Model/Entity/AbstractEntity.php
+++ b/app/code/Magento/Eav/Model/Entity/AbstractEntity.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Eav\Model\Entity;
 
 use Magento\Eav\Model\Entity\Attribute\AbstractAttribute;
@@ -17,6 +20,9 @@ use Magento\Framework\Model\Exception;
  * Entity/Attribute/Model - entity abstract
  *
  * @author     Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.TooManyFields)
+ * @SuppressWarnings(PHPMD.ExcessiveClassComplexity)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 abstract class AbstractEntity extends \Magento\Framework\Model\Resource\AbstractResource implements EntityInterface
 {
@@ -414,6 +420,7 @@ abstract class AbstractEntity extends \Magento\Framework\Model\Resource\Abstract
      *
      * @param string|int|Element $attribute
      * @return AbstractAttribute|false
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function getAttribute($attribute)
     {
@@ -637,6 +644,7 @@ abstract class AbstractEntity extends \Magento\Framework\Model\Resource\Abstract
      * @param   \Magento\Framework\Object $object
      * @param   AbstractAttribute $attribute
      * @return  bool
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     protected function _isApplicableAttribute($object, $attribute)
     {
@@ -657,6 +665,8 @@ abstract class AbstractEntity extends \Magento\Framework\Model\Resource\Abstract
      *
      * @throws \Exception|\Magento\Eav\Model\Entity\Attribute\Exception
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function walkAttributes($partMethod, array $args = [], $collectExceptionMessages = null)
     {
@@ -739,6 +749,7 @@ abstract class AbstractEntity extends \Magento\Framework\Model\Resource\Abstract
      * @param string $method
      * @param array $args array of arguments
      * @return bool
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     protected function _isCallableAttributeInstance($instance, $method, $args)
     {
@@ -931,13 +942,11 @@ abstract class AbstractEntity extends \Magento\Framework\Model\Resource\Abstract
         $select = $adapter->select();
         if ($attribute->getBackend()->getType() === 'static') {
             $value = $object->getData($attribute->getAttributeCode());
-            $bind = ['entity_type_id' => $this->getTypeId(), 'attribute_code' => trim($value)];
+            $bind = ['attribute_code' => trim($value)];
 
             $select->from(
                 $this->getEntityTable(),
                 $this->getEntityIdField()
-            )->where(
-                'entity_type_id = :entity_type_id'
             )->where(
                 $attribute->getAttributeCode() . ' = :attribute_code'
             );
@@ -948,21 +957,24 @@ abstract class AbstractEntity extends \Magento\Framework\Model\Resource\Abstract
                 $value = $date->toString(\Magento\Framework\Stdlib\DateTime::DATETIME_INTERNAL_FORMAT);
             }
             $bind = [
-                'entity_type_id' => $this->getTypeId(),
                 'attribute_id' => $attribute->getId(),
                 'value' => trim($value),
             ];
             $select->from(
                 $attribute->getBackend()->getTable(),
                 $attribute->getBackend()->getEntityIdField()
-            )->where(
-                'entity_type_id = :entity_type_id'
             )->where(
                 'attribute_id = :attribute_id'
             )->where(
                 'value = :value'
             );
         }
+
+        if ($this->getEntityTable() == \Magento\Eav\Model\Entity::DEFAULT_ENTITY_TABLE) {
+            $bind['entity_type_id'] = $this->getTypeId();
+            $select->where('entity_type_id = :entity_type_id');
+        }
+
         $data = $adapter->fetchCol($select, $bind);
 
         if ($object->getId()) {
@@ -1080,6 +1092,7 @@ abstract class AbstractEntity extends \Magento\Framework\Model\Resource\Abstract
      * @param   \Magento\Framework\Object $object
      * @param   string|int $rowId
      * @return  \Zend_Db_Select
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     protected function _getLoadRowSelect($object, $rowId)
     {
@@ -1137,6 +1150,7 @@ abstract class AbstractEntity extends \Magento\Framework\Model\Resource\Abstract
      *
      * @param   \Magento\Framework\Object $object
      * @return $this
+     * @throws \Exception
      */
     public function save(\Magento\Framework\Object $object)
     {
@@ -1158,7 +1172,9 @@ abstract class AbstractEntity extends \Magento\Framework\Model\Resource\Abstract
                     $this->loadAllAttributes($object);
                 }
 
-                if (!$object->getEntityTypeId()) {
+                if ($this->getEntityTable() ==  \Magento\Eav\Model\Entity::DEFAULT_ENTITY_TABLE
+                    && !$object->getEntityTypeId()
+                ) {
                     $object->setEntityTypeId($this->getTypeId());
                 }
 
@@ -1225,6 +1241,8 @@ abstract class AbstractEntity extends \Magento\Framework\Model\Resource\Abstract
      *
      * @param   \Magento\Framework\Object $newObject
      * @return  array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _collectSaveData($newObject)
     {
@@ -1329,6 +1347,7 @@ abstract class AbstractEntity extends \Magento\Framework\Model\Resource\Abstract
      * @param mixed $v New value of the attribute. Can be used in subclasses.
      * @param array $origData
      * @return bool
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     protected function _canUpdateAttribute(AbstractAttribute $attribute, $v, array &$origData)
     {
@@ -1383,6 +1402,8 @@ abstract class AbstractEntity extends \Magento\Framework\Model\Resource\Abstract
      *
      * @param   array $saveData array('newObject', 'entityRow', 'insert', 'update', 'delete')
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _processSaveData($saveData)
     {
@@ -1492,6 +1513,7 @@ abstract class AbstractEntity extends \Magento\Framework\Model\Resource\Abstract
      * @param   mixed $valueId
      * @param   mixed $value
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     protected function _updateAttribute($object, $attribute, $valueId, $value)
     {
@@ -1518,12 +1540,15 @@ abstract class AbstractEntity extends \Magento\Framework\Model\Resource\Abstract
         $entityIdField = $attribute->getBackend()->getEntityIdField();
 
         $data = [
-            'entity_type_id' => $object->getEntityTypeId(),
             $entityIdField => $object->getId(),
             'attribute_id' => $attribute->getId(),
             'value' => $this->_prepareValueForSave($value, $attribute),
         ];
 
+        if (!$this->getEntityTable()) {
+            $data['entity_type_id'] = $object->getEntityTypeId();
+        }
+
         $this->_attributeValuesToSave[$table][] = $data;
 
         return $this;
@@ -1582,6 +1607,7 @@ abstract class AbstractEntity extends \Magento\Framework\Model\Resource\Abstract
      * @param   string $table
      * @param   array $info
      * @return  \Magento\Framework\Object
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     protected function _deleteAttributes($object, $table, $info)
     {
@@ -1610,6 +1636,7 @@ abstract class AbstractEntity extends \Magento\Framework\Model\Resource\Abstract
      * @param string $attributeCode
      * @return $this
      * @throws \Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function saveAttribute(\Magento\Framework\Object $object, $attributeCode)
     {
@@ -1617,14 +1644,8 @@ abstract class AbstractEntity extends \Magento\Framework\Model\Resource\Abstract
         $backend = $attribute->getBackend();
         $table = $backend->getTable();
         $entity = $attribute->getEntity();
-        $entityIdField = $entity->getEntityIdField();
         $adapter = $this->_getWriteAdapter();
-
-        $row = [
-            'entity_type_id' => $entity->getTypeId(),
-            'attribute_id' => $attribute->getId(),
-            $entityIdField => $object->getData($entityIdField),
-        ];
+        $row = $this->getAttributeRow($entity, $object, $attribute);
 
         $newValue = $object->getData($attributeCode);
         if ($attribute->isValueEmpty($newValue)) {
@@ -1660,12 +1681,35 @@ abstract class AbstractEntity extends \Magento\Framework\Model\Resource\Abstract
         return $this;
     }
 
+    /**
+     * Return attribute row to prepare where statement
+     *
+     * @param \Magento\Framework\Object $entity
+     * @param \Magento\Framework\Object $object
+     * @param \Magento\Eav\Model\Entity\Attribute\AbstractAttribute $attribute
+     * @return array
+     */
+    protected function getAttributeRow($entity, $object, $attribute)
+    {
+        $data = [
+            'attribute_id' => $attribute->getId(),
+            $entity->getEntityIdField() => $object->getData($entity->getEntityIdField()),
+        ];
+
+        if (!$this->getEntityTable()) {
+            $data['entity_type_id'] = $entity->getTypeId();
+        }
+
+        return $data;
+    }
+
     /**
      * Delete entity using current object's data
      *
      * @param \Magento\Framework\Object|int|string $object
      * @return $this
      * @throws \Exception
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function delete($object)
     {
diff --git a/app/code/Magento/Eav/Model/Entity/Attribute.php b/app/code/Magento/Eav/Model/Entity/Attribute.php
index ab1c45e9d61471f0c9cffa273888febb84831f13..681ab2a4fc09226caac4b05785430a34a74506c6 100644
--- a/app/code/Magento/Eav/Model/Entity/Attribute.php
+++ b/app/code/Magento/Eav/Model/Entity/Attribute.php
@@ -12,6 +12,7 @@ use Magento\Framework\Api\AttributeDataBuilder;
  * EAV Entity attribute model
  *
  * @method \Magento\Eav\Model\Entity\Attribute setOption($value)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Attribute extends \Magento\Eav\Model\Entity\Attribute\AbstractAttribute implements
     \Magento\Framework\Object\IdentityInterface
@@ -80,6 +81,7 @@ class Attribute extends \Magento\Eav\Model\Entity\Attribute\AbstractAttribute im
      * @param \Magento\Framework\Model\Resource\AbstractResource $resource
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
@@ -208,6 +210,8 @@ class Attribute extends \Magento\Eav\Model\Entity\Attribute\AbstractAttribute im
      *
      * @return $this
      * @throws Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function beforeSave()
     {
@@ -307,6 +311,7 @@ class Attribute extends \Magento\Eav\Model\Entity\Attribute\AbstractAttribute im
      *
      * @param string $type frontend_input field value
      * @return string backend_type field value
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function getBackendTypeByInput($type)
     {
@@ -350,6 +355,7 @@ class Attribute extends \Magento\Eav\Model\Entity\Attribute\AbstractAttribute im
      *
      * @param string $type frontend_input field name
      * @return string default_value field value
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function getDefaultValueByInput($type)
     {
diff --git a/app/code/Magento/Eav/Model/Entity/Attribute/AbstractAttribute.php b/app/code/Magento/Eav/Model/Entity/Attribute/AbstractAttribute.php
index c954b9fe13601a8cdd1286aa31291f78d90fd7a0..71280078353b11e150f7b680187ea55eee614bb4 100644
--- a/app/code/Magento/Eav/Model/Entity/Attribute/AbstractAttribute.php
+++ b/app/code/Magento/Eav/Model/Entity/Attribute/AbstractAttribute.php
@@ -10,6 +10,9 @@ use Magento\Framework\Api\AttributeDataBuilder;
 
 /**
  * Entity/Attribute/Model - attribute abstract
+ * @SuppressWarnings(PHPMD.ExcessivePublicCount)
+ * @SuppressWarnings(PHPMD.ExcessiveClassComplexity)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 abstract class AbstractAttribute extends \Magento\Framework\Model\AbstractExtensibleModel implements
     AttributeInterface,
@@ -118,6 +121,7 @@ abstract class AbstractAttribute extends \Magento\Framework\Model\AbstractExtens
      * @param \Magento\Framework\Model\Resource\AbstractResource $resource
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
@@ -300,6 +304,7 @@ abstract class AbstractAttribute extends \Magento\Framework\Model\AbstractExtens
 
     /**
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsVisibleOnFront()
     {
@@ -657,6 +662,7 @@ abstract class AbstractAttribute extends \Magento\Framework\Model\AbstractExtens
      * Retrieve flat columns DDL definition
      *
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function _getFlatColumnsDdlDefinition()
     {
@@ -740,6 +746,7 @@ abstract class AbstractAttribute extends \Magento\Framework\Model\AbstractExtens
      * Used in database compatible mode
      *
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _getFlatColumnsOldDefinition()
     {
@@ -814,6 +821,7 @@ abstract class AbstractAttribute extends \Magento\Framework\Model\AbstractExtens
      * Retrieve index data for flat table
      *
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function getFlatIndexes()
     {
diff --git a/app/code/Magento/Eav/Model/Entity/Attribute/Backend/AbstractBackend.php b/app/code/Magento/Eav/Model/Entity/Attribute/Backend/AbstractBackend.php
index a3b44a9821819470b9fbb6d229604ceb2858e1bb..e0b6cf4a8d77e15d36cbe92c105ecef18a4a4f68 100644
--- a/app/code/Magento/Eav/Model/Entity/Attribute/Backend/AbstractBackend.php
+++ b/app/code/Magento/Eav/Model/Entity/Attribute/Backend/AbstractBackend.php
@@ -7,6 +7,7 @@ namespace Magento\Eav\Model\Entity\Attribute\Backend;
 
 /**
  * Entity/Attribute/Model - attribute backend abstract
+ * @SuppressWarnings(PHPMD.NumberOfChildren)
  */
 abstract class AbstractBackend implements \Magento\Eav\Model\Entity\Attribute\Backend\BackendInterface
 {
@@ -212,6 +213,7 @@ abstract class AbstractBackend implements \Magento\Eav\Model\Entity\Attribute\Ba
      * @param \Magento\Framework\Object $object
      * @throws \Magento\Eav\Exception
      * @return bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function validate($object)
     {
@@ -244,6 +246,7 @@ abstract class AbstractBackend implements \Magento\Eav\Model\Entity\Attribute\Ba
      *
      * @param \Magento\Framework\Object $object
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function afterLoad($object)
     {
@@ -271,6 +274,7 @@ abstract class AbstractBackend implements \Magento\Eav\Model\Entity\Attribute\Ba
      *
      * @param \Magento\Framework\Object $object
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function afterSave($object)
     {
@@ -282,6 +286,7 @@ abstract class AbstractBackend implements \Magento\Eav\Model\Entity\Attribute\Ba
      *
      * @param \Magento\Framework\Object $object
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function beforeDelete($object)
     {
@@ -293,6 +298,7 @@ abstract class AbstractBackend implements \Magento\Eav\Model\Entity\Attribute\Ba
      *
      * @param \Magento\Framework\Object $object
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function afterDelete($object)
     {
diff --git a/app/code/Magento/Eav/Model/Entity/Attribute/Backend/Datetime.php b/app/code/Magento/Eav/Model/Entity/Attribute/Backend/Datetime.php
index e88a8af0ce75ba5b615f31771ed6d37aaa37401f..c4bc5512eda1a02174145d824e053dc5db7d4ff3 100644
--- a/app/code/Magento/Eav/Model/Entity/Attribute/Backend/Datetime.php
+++ b/app/code/Magento/Eav/Model/Entity/Attribute/Backend/Datetime.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Eav\Model\Entity\Attribute\Backend;
 
 use Magento\Eav\Exception as EavException;
diff --git a/app/code/Magento/Eav/Model/Entity/Attribute/Frontend/Datetime.php b/app/code/Magento/Eav/Model/Entity/Attribute/Frontend/Datetime.php
index 2ce33331461d31caf574e72495d796c70ab48d2d..57f0b73b6c7589bc64f66324209ea3e63ffd4a54 100644
--- a/app/code/Magento/Eav/Model/Entity/Attribute/Frontend/Datetime.php
+++ b/app/code/Magento/Eav/Model/Entity/Attribute/Frontend/Datetime.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Eav\Model\Entity\Attribute\Frontend;
 
 class Datetime extends \Magento\Eav\Model\Entity\Attribute\Frontend\AbstractFrontend
diff --git a/app/code/Magento/Eav/Model/Entity/Attribute/Set.php b/app/code/Magento/Eav/Model/Entity/Attribute/Set.php
index b4c7dd586fb03ffd92125f1f6dfe684b6f5dc252..6d0775efb81a7e5593060b82e2d71b1cbe27377b 100644
--- a/app/code/Magento/Eav/Model/Entity/Attribute/Set.php
+++ b/app/code/Magento/Eav/Model/Entity/Attribute/Set.php
@@ -22,6 +22,9 @@ namespace Magento\Eav\Model\Entity\Attribute;
 use Magento\Eav\Model\Entity\Type;
 use Magento\Framework\Api\AttributeDataBuilder;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class Set extends \Magento\Framework\Model\AbstractExtensibleModel implements
     \Magento\Eav\Api\Data\AttributeSetInterface
 {
@@ -70,6 +73,7 @@ class Set extends \Magento\Framework\Model\AbstractExtensibleModel implements
      * @param \Magento\Framework\Model\Resource\AbstractResource $resource
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
@@ -156,6 +160,8 @@ class Set extends \Magento\Framework\Model\AbstractExtensibleModel implements
      *
      * @param array $data
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function organizeData($data)
     {
@@ -263,6 +269,7 @@ class Set extends \Magento\Framework\Model\AbstractExtensibleModel implements
      * @param array $attributes
      * @param int $setId
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function addSetInfo($entityType, array $attributes, $setId = null)
     {
diff --git a/app/code/Magento/Eav/Model/Entity/Attribute/Source/AbstractSource.php b/app/code/Magento/Eav/Model/Entity/Attribute/Source/AbstractSource.php
index 59451eec414a5626e3a590fd75f32edf573bc636..9c805984a21cd0bb9e2f67818189945b8ac35433 100644
--- a/app/code/Magento/Eav/Model/Entity/Attribute/Source/AbstractSource.php
+++ b/app/code/Magento/Eav/Model/Entity/Attribute/Source/AbstractSource.php
@@ -9,6 +9,7 @@ namespace Magento\Eav\Model\Entity\Attribute\Source;
  * Entity/Attribute/Model - attribute selection source abstract
  *
  * @author     Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.NumberOfChildren)
  */
 abstract class AbstractSource implements
     \Magento\Eav\Model\Entity\Attribute\Source\SourceInterface,
@@ -94,6 +95,7 @@ abstract class AbstractSource implements
      * @param \Magento\Eav\Model\Entity\Collection\AbstractCollection $collection
      * @param string $dir direction
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function addValueSortToCollection($collection, $dir = \Magento\Framework\Data\Collection::SORT_ORDER_DESC)
     {
@@ -125,6 +127,7 @@ abstract class AbstractSource implements
      *
      * @param int $store
      * @return \Magento\Framework\DB\Select|null
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function getFlatUpdateSelect($store)
     {
diff --git a/app/code/Magento/Eav/Model/Entity/Collection/AbstractCollection.php b/app/code/Magento/Eav/Model/Entity/Collection/AbstractCollection.php
index c00a7b116a1fb43bf05028b0c6f79af4388b3bb9..17d41237c1621f0315938b72e3d03c6fa726d35b 100644
--- a/app/code/Magento/Eav/Model/Entity/Collection/AbstractCollection.php
+++ b/app/code/Magento/Eav/Model/Entity/Collection/AbstractCollection.php
@@ -9,6 +9,9 @@ use Magento\Framework\DB\Select;
 
 /**
  * Entity/Attribute/Model - collection abstract
+ * @SuppressWarnings(PHPMD.TooManyFields)
+ * @SuppressWarnings(PHPMD.ExcessiveClassComplexity)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 abstract class AbstractCollection extends \Magento\Framework\Data\Collection\Db
 {
@@ -125,6 +128,7 @@ abstract class AbstractCollection extends \Magento\Framework\Data\Collection\Db
      * @param \Magento\Eav\Model\Resource\Helper $resourceHelper
      * @param \Magento\Framework\Validator\UniversalFactory $universalFactory
      * @param mixed $connection
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Core\Model\EntityFactory $entityFactory,
@@ -192,7 +196,8 @@ abstract class AbstractCollection extends \Magento\Framework\Data\Collection\Db
     protected function _initSelect()
     {
         $this->getSelect()->from(['e' => $this->getEntity()->getEntityTable()]);
-        if ($this->getEntity()->getTypeId()) {
+        $entity = $this->getEntity();
+        if ($entity->getTypeId() && $entity->getEntityTable() == \Magento\Eav\Model\Entity::DEFAULT_ENTITY_TABLE) {
             $this->addAttributeToFilter('entity_type_id', $this->getEntity()->getTypeId());
         }
         return $this;
@@ -620,6 +625,8 @@ abstract class AbstractCollection extends \Magento\Framework\Data\Collection\Db
      * @param null $storeId
      * @return $this
      * @throws \Magento\Eav\Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function joinAttribute($alias, $attribute, $bind, $filter = null, $joinType = 'inner', $storeId = null)
     {
@@ -770,6 +777,7 @@ abstract class AbstractCollection extends \Magento\Framework\Data\Collection\Db
      * @param string $joinType
      * @return $this
      * @throws \Magento\Eav\Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function joinTable($table, $bind, $fields = null, $cond = null, $joinType = 'inner')
     {
@@ -1097,6 +1105,9 @@ abstract class AbstractCollection extends \Magento\Framework\Data\Collection\Db
      * @param bool $logQuery
      * @return $this
      * @throws \Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function _loadAttributes($printQuery = false, $logQuery = false)
     {
@@ -1162,13 +1173,11 @@ abstract class AbstractCollection extends \Magento\Framework\Data\Collection\Db
         if (empty($attributeIds)) {
             $attributeIds = $this->_selectAttributes;
         }
-        $entityIdField = $this->getEntity()->getEntityIdField();
+        $entity = $this->getEntity();
+        $entityIdField = $entity->getEntityIdField();
         $select = $this->getConnection()->select()->from(
             $table,
             [$entityIdField, 'attribute_id']
-        )->where(
-            'entity_type_id =?',
-            $this->getEntity()->getTypeId()
         )->where(
             "{$entityIdField} IN (?)",
             array_keys($this->_itemsById)
@@ -1176,6 +1185,13 @@ abstract class AbstractCollection extends \Magento\Framework\Data\Collection\Db
             'attribute_id IN (?)',
             $attributeIds
         );
+
+        if ($entity->getEntityTable() == \Magento\Eav\Model\Entity::DEFAULT_ENTITY_TABLE && $entity->getTypeId()) {
+            $select->where(
+                'entity_type_id =?',
+                $entity->getTypeId()
+            );
+        }
         return $select;
     }
 
@@ -1186,6 +1202,7 @@ abstract class AbstractCollection extends \Magento\Framework\Data\Collection\Db
      * @param string $table
      * @param string $type
      * @return Select
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     protected function _addLoadAttributesSelectValues($select, $table, $type)
     {
@@ -1282,6 +1299,7 @@ abstract class AbstractCollection extends \Magento\Framework\Data\Collection\Db
      * @param   string $joinType inner|left
      * @return $this
      * @throws \Magento\Eav\Exception
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _addAttributeJoin($attributeCode, $joinType = 'inner')
     {
diff --git a/app/code/Magento/Eav/Model/Entity/Setup.php b/app/code/Magento/Eav/Model/Entity/Setup.php
index dd5aaec360adc744834204f788388977d834a523..d2d6a1fc1754ef45d4115cadab3e7becda4414d8 100644
--- a/app/code/Magento/Eav/Model/Entity/Setup.php
+++ b/app/code/Magento/Eav/Model/Entity/Setup.php
@@ -7,6 +7,9 @@
  */
 namespace Magento\Eav\Model\Entity;
 
+/**
+ * @SuppressWarnings(PHPMD.ExcessiveClassComplexity)
+ */
 class Setup extends \Magento\Framework\Module\DataSetup
 {
     /**
@@ -768,6 +771,7 @@ class Setup extends \Magento\Framework\Module\DataSetup
      * @param array $option
      * @return void
      * @throws \Magento\Framework\Model\Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function addAttributeOption($option)
     {
@@ -1217,6 +1221,8 @@ class Setup extends \Magento\Framework\Module\DataSetup
      *
      * @param array $entities
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function installEntities($entities = null)
     {
diff --git a/app/code/Magento/Eav/Model/Entity/Setup/Context.php b/app/code/Magento/Eav/Model/Entity/Setup/Context.php
index bbd61209c57d8931767d8415dd38675de5e570f2..031c7b8ad9464b85c3eefdb01fccb692266dfa27 100644
--- a/app/code/Magento/Eav/Model/Entity/Setup/Context.php
+++ b/app/code/Magento/Eav/Model/Entity/Setup/Context.php
@@ -25,6 +25,7 @@ class Context extends \Magento\Framework\Module\Setup\Context
      * @param \Magento\Framework\Encryption\EncryptorInterface $encryptor
      * @param \Magento\Framework\Filesystem $filesystem
      * @param PropertyMapperInterface $attributeMapper
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Psr\Log\LoggerInterface $logger,
diff --git a/app/code/Magento/Eav/Model/Form.php b/app/code/Magento/Eav/Model/Form.php
index 6d960254fe485e91c3a1c167f8e28b9c6541b451..919985062333e000196f493d4b4d05a192b88890 100644
--- a/app/code/Magento/Eav/Model/Form.php
+++ b/app/code/Magento/Eav/Model/Form.php
@@ -11,6 +11,8 @@ use Magento\Framework\App\RequestInterface;
  * EAV Entity Form Model
  *
  * @author      Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.TooManyFields)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 abstract class Form
 {
@@ -577,6 +579,7 @@ abstract class Form
      * Return is AJAX Request
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsAjaxRequest()
     {
diff --git a/app/code/Magento/Eav/Model/Resource/Attribute.php b/app/code/Magento/Eav/Model/Resource/Attribute.php
index 86b228f3da99359eac6c5d4ca6d5977845b18411..0111844ee74cb846742034214dd39ba3f387c62a 100644
--- a/app/code/Magento/Eav/Model/Resource/Attribute.php
+++ b/app/code/Magento/Eav/Model/Resource/Attribute.php
@@ -86,6 +86,7 @@ abstract class Attribute extends \Magento\Eav\Model\Resource\Entity\Attribute
      *
      * @param \Magento\Framework\Model\AbstractModel $object
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _afterSave(AbstractModel $object)
     {
diff --git a/app/code/Magento/Eav/Model/Resource/Entity/Attribute.php b/app/code/Magento/Eav/Model/Resource/Entity/Attribute.php
index 2b9ea59ec2b4715501f053bdb5e91510269b5a08..0d10528a5ae92b55676465d5a977e525a88d1ea5 100644
--- a/app/code/Magento/Eav/Model/Resource/Entity/Attribute.php
+++ b/app/code/Magento/Eav/Model/Resource/Entity/Attribute.php
@@ -261,6 +261,7 @@ class Attribute extends \Magento\Framework\Model\Resource\Db\AbstractDb
      * @param null $attributeGroupId
      * @param null $attributeSortOrder
      * @return $this
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function saveInSetIncluding(
         AbstractModel $object,
diff --git a/app/code/Magento/Eav/Model/Resource/Form/Fieldset.php b/app/code/Magento/Eav/Model/Resource/Form/Fieldset.php
index 04eebbc2c110dfd1c63226389f58f77bb10960c8..0cbb38ec3dd7f5c0464a2f3443d166c4ba121f4e 100644
--- a/app/code/Magento/Eav/Model/Resource/Form/Fieldset.php
+++ b/app/code/Magento/Eav/Model/Resource/Form/Fieldset.php
@@ -34,6 +34,8 @@ class Fieldset extends \Magento\Framework\Model\Resource\Db\AbstractDb
      *
      * @param FormFieldset|AbstractModel $object
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _afterSave(AbstractModel $object)
     {
diff --git a/app/code/Magento/Eav/composer.json b/app/code/Magento/Eav/composer.json
index c60d271e7cf02b4de60a0736683fe62f9869ea01..d02b7871d607bcd51504fe3f254dfc85dc0bd99b 100644
--- a/app/code/Magento/Eav/composer.json
+++ b/app/code/Magento/Eav/composer.json
@@ -3,15 +3,15 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-core": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/module-catalog": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-core": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/module-catalog": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/Email/Block/Adminhtml/Template/Edit/Form.php b/app/code/Magento/Email/Block/Adminhtml/Template/Edit/Form.php
index 906a59d8854a4c7ba4caf609b155f7fc2ceaec23..e36aaf6c4c8ab773f756426a8cadae647867a4ea 100644
--- a/app/code/Magento/Email/Block/Adminhtml/Template/Edit/Form.php
+++ b/app/code/Magento/Email/Block/Adminhtml/Template/Edit/Form.php
@@ -81,7 +81,7 @@ class Form extends \Magento\Backend\Block\Widget\Form\Generic
                 [
                     'label' => __('Used Currently For'),
                     'container_id' => 'used_currently_for',
-                    'after_element_html' => '<script type="text/javascript">' .
+                    'after_element_html' => '<script>' .
                     (!$this->getEmailTemplate()->getSystemConfigPathsWhereUsedCurrently() ? '$(\'' .
                     'used_currently_for' .
                     '\').hide(); ' : '') .
@@ -97,7 +97,7 @@ class Form extends \Magento\Backend\Block\Widget\Form\Generic
                 [
                     'label' => __('Used as Default For'),
                     'container_id' => 'used_default_for',
-                    'after_element_html' => '<script type="text/javascript">' .
+                    'after_element_html' => '<script>' .
                     (!(bool)$this->getEmailTemplate()->getOrigTemplateCode() ? '$(\'' .
                     'used_default_for' .
                     '\').hide(); ' : '') .
diff --git a/app/code/Magento/Email/Model/AbstractTemplate.php b/app/code/Magento/Email/Model/AbstractTemplate.php
index ca38c73e7c6243ea8e1610b4b5aba0425f9876d9..dbc58086db9bc348c5b92496c4c489e4b68cdc7f 100644
--- a/app/code/Magento/Email/Model/AbstractTemplate.php
+++ b/app/code/Magento/Email/Model/AbstractTemplate.php
@@ -56,7 +56,7 @@ abstract class AbstractTemplate extends AbstractModel implements TemplateTypesIn
     protected $_design = null;
 
     /**
-     * @var \Magento\Core\Model\App\Emulation
+     * @var \Magento\Store\Model\App\Emulation
      */
     protected $_appEmulation;
 
@@ -69,7 +69,7 @@ abstract class AbstractTemplate extends AbstractModel implements TemplateTypesIn
      * @param \Magento\Framework\Model\Context $context
      * @param \Magento\Framework\View\DesignInterface $design
      * @param \Magento\Framework\Registry $registry
-     * @param \Magento\Core\Model\App\Emulation $appEmulation
+     * @param \Magento\Store\Model\App\Emulation $appEmulation
      * @param \Magento\Store\Model\StoreManagerInterface $storeManager
      * @param array $data
      */
@@ -77,7 +77,7 @@ abstract class AbstractTemplate extends AbstractModel implements TemplateTypesIn
         \Magento\Framework\Model\Context $context,
         \Magento\Framework\View\DesignInterface $design,
         \Magento\Framework\Registry $registry,
-        \Magento\Core\Model\App\Emulation $appEmulation,
+        \Magento\Store\Model\App\Emulation $appEmulation,
         \Magento\Store\Model\StoreManagerInterface $storeManager,
         array $data = []
     ) {
diff --git a/app/code/Magento/Email/Model/BackendTemplate.php b/app/code/Magento/Email/Model/BackendTemplate.php
index abc963099c9b558588bf5580684ba0700116a2f4..27c6084b4382fb0ac0aad564a7d5edf92742ebad 100644
--- a/app/code/Magento/Email/Model/BackendTemplate.php
+++ b/app/code/Magento/Email/Model/BackendTemplate.php
@@ -21,7 +21,7 @@ class BackendTemplate extends Template
      * @param \Magento\Framework\Model\Context $context
      * @param \Magento\Framework\View\DesignInterface $design
      * @param \Magento\Framework\Registry $registry
-     * @param \Magento\Core\Model\App\Emulation $appEmulation
+     * @param \Magento\Store\Model\App\Emulation $appEmulation
      * @param \Magento\Store\Model\StoreManagerInterface $storeManager
      * @param \Magento\Framework\Filesystem $filesystem
      * @param \Magento\Framework\View\Asset\Repository $assetRepo
@@ -38,7 +38,7 @@ class BackendTemplate extends Template
         \Magento\Framework\Model\Context $context,
         \Magento\Framework\View\DesignInterface $design,
         \Magento\Framework\Registry $registry,
-        \Magento\Core\Model\App\Emulation $appEmulation,
+        \Magento\Store\Model\App\Emulation $appEmulation,
         \Magento\Store\Model\StoreManagerInterface $storeManager,
         \Magento\Framework\Filesystem $filesystem,
         \Magento\Framework\View\Asset\Repository $assetRepo,
diff --git a/app/code/Magento/Email/Model/Template.php b/app/code/Magento/Email/Model/Template.php
index a397317ff4cd9474192f26d83d8a35f0a30fe07f..e3b52978ca6541b3004af2ed20b1d42fe9ab9575 100644
--- a/app/code/Magento/Email/Model/Template.php
+++ b/app/code/Magento/Email/Model/Template.php
@@ -157,7 +157,7 @@ class Template extends \Magento\Email\Model\AbstractTemplate implements \Magento
      * @param \Magento\Framework\Model\Context $context
      * @param \Magento\Framework\View\DesignInterface $design
      * @param \Magento\Framework\Registry $registry
-     * @param \Magento\Core\Model\App\Emulation $appEmulation
+     * @param \Magento\Store\Model\App\Emulation $appEmulation
      * @param \Magento\Store\Model\StoreManagerInterface $storeManager
      * @param \Magento\Framework\Filesystem $filesystem
      * @param \Magento\Framework\View\Asset\Repository $assetRepo
@@ -173,7 +173,7 @@ class Template extends \Magento\Email\Model\AbstractTemplate implements \Magento
         \Magento\Framework\Model\Context $context,
         \Magento\Framework\View\DesignInterface $design,
         \Magento\Framework\Registry $registry,
-        \Magento\Core\Model\App\Emulation $appEmulation,
+        \Magento\Store\Model\App\Emulation $appEmulation,
         StoreManagerInterface $storeManager,
         \Magento\Framework\Filesystem $filesystem,
         \Magento\Framework\View\Asset\Repository $assetRepo,
diff --git a/app/code/Magento/Email/composer.json b/app/code/Magento/Email/composer.json
index 9afda3f5b33af47523fce6dbb845b7bb071d50e5..d228422e79fa1999657fc2c8da42f89d901f8967 100644
--- a/app/code/Magento/Email/composer.json
+++ b/app/code/Magento/Email/composer.json
@@ -3,15 +3,15 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-core": "0.42.0-beta3",
-        "magento/module-cms": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-core": "0.42.0-beta4",
+        "magento/module-cms": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/Email/view/adminhtml/templates/template/edit.phtml b/app/code/Magento/Email/view/adminhtml/templates/template/edit.phtml
index 23a913cdb43744f1a3b46b71b7284bb17fab024e..5c1ae09ee32b085bb7ad06d7bd918abfcf8fd427 100644
--- a/app/code/Magento/Email/view/adminhtml/templates/template/edit.phtml
+++ b/app/code/Magento/Email/view/adminhtml/templates/template/edit.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php if (!$this->getEditMode()): ?>
 <form action="<?php echo $this->getLoadUrl() ?>" method="post" id="email_template_load_form">
@@ -49,7 +52,7 @@
         <input type="hidden" id="preview_styles" name="styles" value="" />
     </div>
 </form>
-<script type="text/javascript">
+<script>
 require([
     "jquery",
     "mage/mage",
diff --git a/app/code/Magento/Email/view/adminhtml/templates/template/list.phtml b/app/code/Magento/Email/view/adminhtml/templates/template/list.phtml
index 04c42695a8c0784d43d1975cabc76be0b6c412eb..0f136e1bfbc4819a3c3f24b08a921917ff04e1bb 100644
--- a/app/code/Magento/Email/view/adminhtml/templates/template/list.phtml
+++ b/app/code/Magento/Email/view/adminhtml/templates/template/list.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <div class="page-actions"><?php echo $this->getChildHtml('add_button') ?></div>
 <?php echo $this->getChildHtml('grid') ?>
diff --git a/app/code/Magento/Fedex/Model/Carrier.php b/app/code/Magento/Fedex/Model/Carrier.php
index 9eb7fc7908ea3611ade4d103ab763d466f770049..e71ed00512e0c84d04726a585b8516fe3de40972 100644
--- a/app/code/Magento/Fedex/Model/Carrier.php
+++ b/app/code/Magento/Fedex/Model/Carrier.php
@@ -3,9 +3,12 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Fedex\Model;
 
-use Magento\Sales\Model\Quote\Address\RateRequest;
+use Magento\Quote\Model\Quote\Address\RateRequest;
 use Magento\Shipping\Model\Carrier\AbstractCarrierOnline;
 use Magento\Shipping\Model\Rate\Result;
 
@@ -13,6 +16,8 @@ use Magento\Shipping\Model\Rate\Result;
  * Fedex shipping implementation
  *
  * @author     Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.ExcessiveClassComplexity)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Carrier extends AbstractCarrierOnline implements \Magento\Shipping\Model\Carrier\CarrierInterface
 {
@@ -114,11 +119,11 @@ class Carrier extends AbstractCarrierOnline implements \Magento\Shipping\Model\C
 
     /**
      * @param \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig
-     * @param \Magento\Sales\Model\Quote\Address\RateResult\ErrorFactory $rateErrorFactory
+     * @param \Magento\Quote\Model\Quote\Address\RateResult\ErrorFactory $rateErrorFactory
      * @param \Psr\Log\LoggerInterface $logger
      * @param \Magento\Shipping\Model\Simplexml\ElementFactory $xmlElFactory
      * @param \Magento\Shipping\Model\Rate\ResultFactory $rateFactory
-     * @param \Magento\Sales\Model\Quote\Address\RateResult\MethodFactory $rateMethodFactory
+     * @param \Magento\Quote\Model\Quote\Address\RateResult\MethodFactory $rateMethodFactory
      * @param \Magento\Shipping\Model\Tracking\ResultFactory $trackFactory
      * @param \Magento\Shipping\Model\Tracking\Result\ErrorFactory $trackErrorFactory
      * @param \Magento\Shipping\Model\Tracking\Result\StatusFactory $trackStatusFactory
@@ -136,11 +141,11 @@ class Carrier extends AbstractCarrierOnline implements \Magento\Shipping\Model\C
      */
     public function __construct(
         \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig,
-        \Magento\Sales\Model\Quote\Address\RateResult\ErrorFactory $rateErrorFactory,
+        \Magento\Quote\Model\Quote\Address\RateResult\ErrorFactory $rateErrorFactory,
         \Psr\Log\LoggerInterface $logger,
         \Magento\Shipping\Model\Simplexml\ElementFactory $xmlElFactory,
         \Magento\Shipping\Model\Rate\ResultFactory $rateFactory,
-        \Magento\Sales\Model\Quote\Address\RateResult\MethodFactory $rateMethodFactory,
+        \Magento\Quote\Model\Quote\Address\RateResult\MethodFactory $rateMethodFactory,
         \Magento\Shipping\Model\Tracking\ResultFactory $trackFactory,
         \Magento\Shipping\Model\Tracking\Result\ErrorFactory $trackErrorFactory,
         \Magento\Shipping\Model\Tracking\Result\StatusFactory $trackStatusFactory,
@@ -253,6 +258,8 @@ class Carrier extends AbstractCarrierOnline implements \Magento\Shipping\Model\C
      *
      * @param RateRequest $request
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function setRequest(RateRequest $request)
     {
@@ -493,6 +500,7 @@ class Carrier extends AbstractCarrierOnline implements \Magento\Shipping\Model\C
      *
      * @param mixed $response
      * @return Result
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _prepareRateResponse($response)
     {
@@ -690,6 +698,7 @@ class Carrier extends AbstractCarrierOnline implements \Magento\Shipping\Model\C
      *
      * @param mixed $response
      * @return Result
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _parseXmlResponse($response)
     {
@@ -778,6 +787,7 @@ class Carrier extends AbstractCarrierOnline implements \Magento\Shipping\Model\C
      * @param string $type
      * @param string $code
      * @return array|false
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public function getCode($type, $code = '')
     {
@@ -1048,6 +1058,9 @@ class Carrier extends AbstractCarrierOnline implements \Magento\Shipping\Model\C
      * @param string[] $trackingValue
      * @param \stdClass $response
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _parseTrackingResponse($trackingValue, $response)
     {
@@ -1223,6 +1236,9 @@ class Carrier extends AbstractCarrierOnline implements \Magento\Shipping\Model\C
      *
      * @param \Magento\Framework\Object $request
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _formShipmentRequest(\Magento\Framework\Object $request)
     {
@@ -1452,6 +1468,7 @@ class Carrier extends AbstractCarrierOnline implements \Magento\Shipping\Model\C
      *
      * @param \Magento\Framework\Object|null $params
      * @return array|bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function getContainerTypes(\Magento\Framework\Object $params = null)
     {
diff --git a/app/code/Magento/Fedex/composer.json b/app/code/Magento/Fedex/composer.json
index c4bb50094eda0bee2c612fc9cca0e07438bca465..7290419698c2bdecb97b92cfa44c8ea5bc8e5c52 100644
--- a/app/code/Magento/Fedex/composer.json
+++ b/app/code/Magento/Fedex/composer.json
@@ -3,19 +3,20 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-shipping": "0.42.0-beta3",
-        "magento/module-directory": "0.42.0-beta3",
-        "magento/module-core": "0.42.0-beta3",
-        "magento/module-catalog": "0.42.0-beta3",
-        "magento/module-sales": "0.42.0-beta3",
-        "magento/module-catalog-inventory": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-shipping": "0.42.0-beta4",
+        "magento/module-directory": "0.42.0-beta4",
+        "magento/module-core": "0.42.0-beta4",
+        "magento/module-catalog": "0.42.0-beta4",
+        "magento/module-sales": "0.42.0-beta4",
+        "magento/module-catalog-inventory": "0.42.0-beta4",
+        "magento/module-quote": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "lib-libxml": "*",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/GiftMessage/Block/Adminhtml/Sales/Order/Create/Items.php b/app/code/Magento/GiftMessage/Block/Adminhtml/Sales/Order/Create/Items.php
index de5a412fd2ed9154b0cd2e752fc82d0173f6f95a..ebd3613070da152027828aa917a87d1514f9e2a5 100644
--- a/app/code/Magento/GiftMessage/Block/Adminhtml/Sales/Order/Create/Items.php
+++ b/app/code/Magento/GiftMessage/Block/Adminhtml/Sales/Order/Create/Items.php
@@ -34,7 +34,7 @@ class Items extends \Magento\Backend\Block\Template
     /**
      * Get order item
      *
-     * @return \Magento\Sales\Model\Quote\Item
+     * @return \Magento\Quote\Model\Quote\Item
      */
     public function getItem()
     {
diff --git a/app/code/Magento/GiftMessage/Block/Message/Inline.php b/app/code/Magento/GiftMessage/Block/Message/Inline.php
index cc2a2554eebd40046368d98154804e4ed94616fa..dedec8c760dc868263e5970756baf036d2505d70 100644
--- a/app/code/Magento/GiftMessage/Block/Message/Inline.php
+++ b/app/code/Magento/GiftMessage/Block/Message/Inline.php
@@ -275,6 +275,7 @@ class Inline extends \Magento\Framework\View\Element\Template
      * Check if items has messages
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getItemsHasMesssages()
     {
@@ -290,6 +291,7 @@ class Inline extends \Magento\Framework\View\Element\Template
      * Check if entity has message
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getEntityHasMessage()
     {
diff --git a/app/code/Magento/GiftMessage/Helper/Message.php b/app/code/Magento/GiftMessage/Helper/Message.php
index cc885e7d2882d34d3116055f71e86e36e2bab0f6..7672d3f08763ecb24e284aba464b34bcf15789fe 100644
--- a/app/code/Magento/GiftMessage/Helper/Message.php
+++ b/app/code/Magento/GiftMessage/Helper/Message.php
@@ -3,10 +3,14 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\GiftMessage\Helper;
 
 /**
  * Gift Message helper
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Message extends \Magento\Core\Helper\Data
 {
@@ -71,6 +75,7 @@ class Message extends \Magento\Core\Helper\Data
      * @param \Magento\Framework\Escaper $escaper
      * @param array $skipMessageCheck
      * @param bool $dbCompatibleMode
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\App\Helper\Context $context,
@@ -136,6 +141,7 @@ class Message extends \Magento\Core\Helper\Data
      * @param \Magento\Framework\Object $entity
      * @param \Magento\Store\Model\Store|int|null $store
      * @return bool|string|null
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function isMessagesAvailable($type, \Magento\Framework\Object $entity, $store = null)
     {
@@ -144,7 +150,7 @@ class Message extends \Magento\Core\Helper\Data
             if (!is_array($items) || empty($items)) {
                 return $this->_scopeConfig->getValue(self::XPATH_CONFIG_GIFT_MESSAGE_ALLOW_ITEMS, \Magento\Store\Model\ScopeInterface::SCOPE_STORE, $store);
             }
-            if ($entity instanceof \Magento\Sales\Model\Quote) {
+            if ($entity instanceof \Magento\Quote\Model\Quote) {
                 $_type = $entity->getIsMultiShipping() ? 'address_item' : 'item';
             } else {
                 $_type = 'order_item';
@@ -288,6 +294,7 @@ class Message extends \Magento\Core\Helper\Data
      * @param array $quote
      * @param \Magento\Store\Model\Store|int|null $store
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getAvailableForQuoteItems($quote, $store = null)
     {
@@ -305,6 +312,7 @@ class Message extends \Magento\Core\Helper\Data
      * @param array $items
      * @param \Magento\Store\Model\Store|int|null $store
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getAvailableForAddressItems($items, $store = null)
     {
diff --git a/app/code/Magento/GiftMessage/Model/GiftMessageManager.php b/app/code/Magento/GiftMessage/Model/GiftMessageManager.php
index 87fb1a8dbd32b2e0348bf1f3a3b740ea63fcdd68..5fcbe852b191e91cd95cfc888860db033339ba4f 100644
--- a/app/code/Magento/GiftMessage/Model/GiftMessageManager.php
+++ b/app/code/Magento/GiftMessage/Model/GiftMessageManager.php
@@ -23,8 +23,9 @@ class GiftMessageManager
 
     /**
      * @param array $giftMessages
-     * @param \Magento\Sales\Model\Quote $quote
+     * @param \Magento\Quote\Model\Quote $quote
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function add($giftMessages, $quote)
     {
diff --git a/app/code/Magento/GiftMessage/Model/Observer.php b/app/code/Magento/GiftMessage/Model/Observer.php
index a646fcd0f6625d5cf2143ee2c6a296b607345822..4c3f7b8bd57c20ba55c88953c65e16aafd8b3d3b 100644
--- a/app/code/Magento/GiftMessage/Model/Observer.php
+++ b/app/code/Magento/GiftMessage/Model/Observer.php
@@ -36,22 +36,6 @@ class Observer extends \Magento\Framework\Object
         $this->_giftMessageMessage = $giftMessageMessage;
     }
 
-    /**
-     * Set gift messages to order from quote address
-     *
-     * @param \Magento\Framework\Object $observer
-     * @return $this
-     */
-    public function salesEventConvertQuoteAddressToOrder($observer)
-    {
-        if ($observer->getEvent()->getAddress()->getGiftMessageId()) {
-            $observer->getEvent()->getOrder()->setGiftMessageId(
-                $observer->getEvent()->getAddress()->getGiftMessageId()
-            );
-        }
-        return $this;
-    }
-
     /**
      * Set gift messages to order from quote address
      *
@@ -115,7 +99,7 @@ class Observer extends \Magento\Framework\Object
             return $this;
         }
 
-        /** @var $quoteItem \Magento\Sales\Model\Quote\Item */
+        /** @var $quoteItem \Magento\Quote\Model\Quote\Item */
         $quoteItem = $observer->getEvent()->getQuoteItem();
         if ($giftMessageId = $orderItem->getGiftMessageId()) {
             $giftMessage = $this->_messageFactory->create()->load($giftMessageId)->setId(null)->save();
diff --git a/app/code/Magento/GiftMessage/Model/Plugin/QuoteItem.php b/app/code/Magento/GiftMessage/Model/Plugin/QuoteItem.php
index 3b829713f5a13d61c1e2e14acece91fb01a41e74..bd4bbe9e1c8eb74f554289d156b6a70d632c66f0 100644
--- a/app/code/Magento/GiftMessage/Model/Plugin/QuoteItem.php
+++ b/app/code/Magento/GiftMessage/Model/Plugin/QuoteItem.php
@@ -24,19 +24,21 @@ class QuoteItem
     }
 
     /**
-     * @param \Magento\Sales\Model\Convert\Quote $subject
-     * @param Closure $proceed
-     * @param \Magento\Sales\Model\Quote\Item\AbstractItem $item
+     * @param \Magento\Quote\Model\Quote\Item\ToOrderItem $subject
+     * @param callable $proceed
+     * @param \Magento\Quote\Model\Quote\Item\AbstractItem $item
+     * @param array $additional
      * @return Item
      * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
-    public function aroundItemToOrderItem(
-        \Magento\Sales\Model\Convert\Quote $subject,
+    public function aroundConvert(
+        \Magento\Quote\Model\Quote\Item\ToOrderItem $subject,
         Closure $proceed,
-        \Magento\Sales\Model\Quote\Item\AbstractItem $item
+        \Magento\Quote\Model\Quote\Item\AbstractItem $item,
+        $additional
     ) {
         /** @var $orderItem Item */
-        $orderItem = $proceed($item);
+        $orderItem = $proceed($item, $additional);
         $isAvailable = $this->_helper->isMessagesAvailable('item', $item, $item->getStoreId());
 
         $orderItem->setGiftMessageId($item->getGiftMessageId());
diff --git a/app/code/Magento/GiftMessage/Model/Resource/Setup.php b/app/code/Magento/GiftMessage/Model/Resource/Setup.php
index 4756cde895e6c065a07bf5345c8b32d9b305b4f9..c7242c14bd061201d9751461f61810a05a000dab 100644
--- a/app/code/Magento/GiftMessage/Model/Resource/Setup.php
+++ b/app/code/Magento/GiftMessage/Model/Resource/Setup.php
@@ -7,53 +7,82 @@
  */
 namespace Magento\GiftMessage\Model\Resource;
 
-class Setup extends \Magento\Sales\Model\Resource\Setup
+class Setup extends \Magento\Framework\Module\DataSetup
 {
     /**
      * @var \Magento\Catalog\Model\Resource\SetupFactory
      */
-    protected $_catalogSetupFactory;
+    protected $catalogSetupFactory;
+
+    /**
+     * @var \Magento\Quote\Model\Resource\SetupFactory
+     */
+    protected $quoteSetupFactory;
+
+    /**
+     * @var \Magento\Sales\Model\Resource\SetupFactory
+     */
+    protected $salesSetupFactory;
 
     /**
      * @param \Magento\Eav\Model\Entity\Setup\Context $context
      * @param string $resourceName
-     * @param \Magento\Framework\App\CacheInterface $cache
-     * @param \Magento\Eav\Model\Resource\Entity\Attribute\Group\CollectionFactory $attrGroupCollectionFactory
-     * @param \Magento\Framework\App\Config\ScopeConfigInterface $config
      * @param \Magento\Catalog\Model\Resource\SetupFactory $catalogSetupFactory
+     * @param \Magento\Quote\Model\Resource\SetupFactory $quoteSetupFactory
+     * @param \Magento\Sales\Model\Resource\SetupFactory $salesSetupFactory
      * @param string $moduleName
      * @param string $connectionName
      */
     public function __construct(
         \Magento\Eav\Model\Entity\Setup\Context $context,
         $resourceName,
-        \Magento\Framework\App\CacheInterface $cache,
-        \Magento\Eav\Model\Resource\Entity\Attribute\Group\CollectionFactory $attrGroupCollectionFactory,
-        \Magento\Framework\App\Config\ScopeConfigInterface $config,
         \Magento\Catalog\Model\Resource\SetupFactory $catalogSetupFactory,
+        \Magento\Quote\Model\Resource\SetupFactory $quoteSetupFactory,
+        \Magento\Sales\Model\Resource\SetupFactory $salesSetupFactory,
         $moduleName = 'Magento_GiftMessage',
         $connectionName = \Magento\Framework\Module\Updater\SetupInterface::DEFAULT_SETUP_CONNECTION
     ) {
-        $this->_catalogSetupFactory = $catalogSetupFactory;
+        $this->catalogSetupFactory = $catalogSetupFactory;
+        $this->quoteSetupFactory = $quoteSetupFactory;
+        $this->salesSetupFactory = $salesSetupFactory;
         parent::__construct(
             $context,
             $resourceName,
-            $cache,
-            $attrGroupCollectionFactory,
-            $config,
             $moduleName,
             $connectionName
         );
     }
 
+    /**
+     * Create Quote Setup Factory for GiftMessage
+     *
+     * @param array $data
+     * @return \Magento\Quote\Model\Resource\Setup
+     */
+    public function createQuoteSetup(array $data = [])
+    {
+        return $this->quoteSetupFactory->create($data);
+    }
+
+    /**
+     * Create Sales Setup Factory for GiftMessage
+     *
+     * @param array $data
+     * @return \Magento\Sales\Model\Resource\Setup
+     */
+    public function createSalesSetup(array $data = [])
+    {
+        return $this->salesSetupFactory->create($data);
+    }
+
     /**
      * Create Catalog Setup Factory for GiftMessage
      *
      * @param array $data
      * @return \Magento\Catalog\Model\Resource\Setup
      */
-    public function createGiftMessageSetup(array $data = [])
+    public function createCatalogSetup(array $data = [])
     {
-        return $this->_catalogSetupFactory->create($data);
+        return $this->catalogSetupFactory->create($data);
     }
 }
diff --git a/app/code/Magento/GiftMessage/Model/Save.php b/app/code/Magento/GiftMessage/Model/Save.php
index 61cbd08c3734b22bdf153cc54c902e26e133c17e..ee45cb98cf92405349b68eabeea9772aee3c4b4d 100644
--- a/app/code/Magento/GiftMessage/Model/Save.php
+++ b/app/code/Magento/GiftMessage/Model/Save.php
@@ -80,6 +80,7 @@ class Save extends \Magento\Framework\Object
 
     /**
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getSaved()
     {
@@ -243,6 +244,7 @@ class Save extends \Magento\Framework\Object
      *
      * @param  \Magento\Framework\Object $item
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsAllowedQuoteItem($item)
     {
@@ -352,7 +354,7 @@ class Save extends \Magento\Framework\Object
     /**
      * Retrieve quote object
      *
-     * @return \Magento\Sales\Model\Quote
+     * @return \Magento\Quote\Model\Quote
      */
     protected function _getQuote()
     {
diff --git a/app/code/Magento/GiftMessage/Model/TypeFactory.php b/app/code/Magento/GiftMessage/Model/TypeFactory.php
index 989bd044ae3fa12908140f1c09b5a60d4f9c7acb..7c0e15b1aa764fe4e2b34a2df23ed3170cfce4e2 100644
--- a/app/code/Magento/GiftMessage/Model/TypeFactory.php
+++ b/app/code/Magento/GiftMessage/Model/TypeFactory.php
@@ -19,10 +19,10 @@ class TypeFactory
         'order' => 'Magento\Sales\Model\Order',
         'order_item' => 'Magento\Sales\Model\Order\Item',
         'order_address' => 'Magento\Sales\Model\Order\Address',
-        'quote' => 'Magento\Sales\Model\Quote',
-        'quote_item' => 'Magento\Sales\Model\Quote\Item',
-        'quote_address' => 'Magento\Sales\Model\Quote\Address',
-        'quote_address_item' => 'Magento\Sales\Model\Quote\Address\Item',
+        'quote' => 'Magento\Quote\Model\Quote',
+        'quote_item' => 'Magento\Quote\Model\Quote\Item',
+        'quote_address' => 'Magento\Quote\Model\Quote\Address',
+        'quote_address_item' => 'Magento\Quote\Model\Quote\Address\Item',
     ];
 
     /**
diff --git a/app/code/Magento/GiftMessage/Service/V1/ReadService.php b/app/code/Magento/GiftMessage/Service/V1/ReadService.php
index abbf2cb5e037b07ab3bc03b38c654b1ec407f57f..e1e0dda0ace03d2329a4ecd324c4584d5056aaa3 100644
--- a/app/code/Magento/GiftMessage/Service/V1/ReadService.php
+++ b/app/code/Magento/GiftMessage/Service/V1/ReadService.php
@@ -15,7 +15,7 @@ class ReadService implements ReadServiceInterface
     /**
      * Quote repository.
      *
-     * @var \Magento\Sales\Model\QuoteRepository
+     * @var \Magento\Quote\Model\QuoteRepository
      */
     protected $quoteRepository;
 
@@ -36,12 +36,12 @@ class ReadService implements ReadServiceInterface
     /**
      * Constructs a shopping cart gift message service object.
      *
-     * @param \Magento\Sales\Model\QuoteRepository $quoteRepository Quote repository.
+     * @param \Magento\Quote\Model\QuoteRepository $quoteRepository Quote repository.
      * @param \Magento\GiftMessage\Model\MessageFactory $messageFactory Message factory.
      * @param \Magento\GiftMessage\Service\V1\Data\MessageMapper $messageMapper Message mapper.
      */
     public function __construct(
-        \Magento\Sales\Model\QuoteRepository $quoteRepository,
+        \Magento\Quote\Model\QuoteRepository $quoteRepository,
         \Magento\GiftMessage\Model\MessageFactory $messageFactory,
         \Magento\GiftMessage\Service\V1\Data\MessageMapper $messageMapper
     ) {
@@ -58,7 +58,7 @@ class ReadService implements ReadServiceInterface
      */
     public function get($cartId)
     {
-        /** @var \Magento\Sales\Model\Quote $quote */
+        /** @var \Magento\Quote\Model\Quote $quote */
         $quote = $this->quoteRepository->getActive($cartId);
 
         $messageId = $quote->getGiftMessageId();
@@ -85,7 +85,7 @@ class ReadService implements ReadServiceInterface
         /**
          * Quote.
          *
-         * @var \Magento\Sales\Model\Quote $quote
+         * @var \Magento\Quote\Model\Quote $quote
          */
         $quote = $this->quoteRepository->getActive($cartId);
         if (!$item = $quote->getItemById($itemId)) {
diff --git a/app/code/Magento/GiftMessage/Service/V1/WriteService.php b/app/code/Magento/GiftMessage/Service/V1/WriteService.php
index 2fbfda4b74ef0238ef2729870721faedeafb8ce1..0163c329a40ce534ae237c060f91de5f6b568507 100644
--- a/app/code/Magento/GiftMessage/Service/V1/WriteService.php
+++ b/app/code/Magento/GiftMessage/Service/V1/WriteService.php
@@ -18,7 +18,7 @@ class WriteService implements WriteServiceInterface
     /**
      * Quote repository.
      *
-     * @var \Magento\Sales\Model\QuoteRepository
+     * @var \Magento\Quote\Model\QuoteRepository
      */
     protected $quoteRepository;
 
@@ -46,13 +46,13 @@ class WriteService implements WriteServiceInterface
     /**
      * Constructs a gift message write service data object.
      *
-     * @param \Magento\Sales\Model\QuoteRepository $quoteRepository Quote repository.
+     * @param \Magento\Quote\Model\QuoteRepository $quoteRepository Quote repository.
      * @param \Magento\Store\Model\StoreManagerInterface $storeManager Store manager.
      * @param \Magento\GiftMessage\Model\GiftMessageManager $giftMessageManager Gift message manager.
      * @param \Magento\GiftMessage\Helper\Message $helper Message helper.
      */
     public function __construct(
-        \Magento\Sales\Model\QuoteRepository $quoteRepository,
+        \Magento\Quote\Model\QuoteRepository $quoteRepository,
         \Magento\Store\Model\StoreManagerInterface $storeManager,
         \Magento\GiftMessage\Model\GiftMessageManager $giftMessageManager,
         \Magento\GiftMessage\Helper\Message $helper
@@ -78,7 +78,7 @@ class WriteService implements WriteServiceInterface
         /**
          * Quote.
          *
-         * @var \Magento\Sales\Model\Quote $quote
+         * @var \Magento\Quote\Model\Quote $quote
          */
         $quote = $this->quoteRepository->getActive($cartId);
 
@@ -107,7 +107,7 @@ class WriteService implements WriteServiceInterface
      */
     public function setForItem($cartId, \Magento\GiftMessage\Service\V1\Data\Message $giftMessage, $itemId)
     {
-        /** @var \Magento\Sales\Model\Quote $quote */
+        /** @var \Magento\Quote\Model\Quote $quote */
         $quote = $this->quoteRepository->getActive($cartId);
 
         if (!$item = $quote->getItemById($itemId)) {
@@ -125,7 +125,7 @@ class WriteService implements WriteServiceInterface
     /**
      * Sets the gift message to item or quote.
      *
-     * @param \Magento\Sales\Model\Quote $quote The quote.
+     * @param \Magento\Quote\Model\Quote $quote The quote.
      * @param string $type The type.
      * @param \Magento\GiftMessage\Service\V1\Data\Message $giftMessage The gift message.
      * @param null|int $entityId The entity ID.
@@ -133,7 +133,7 @@ class WriteService implements WriteServiceInterface
      * @throws \Magento\Framework\Exception\CouldNotSaveException The specified gift message is not available.
      * @throws \Magento\Framework\Exception\State\InvalidTransitionException The billing or shipping address is not set.
      */
-    protected function setMessage(\Magento\Sales\Model\Quote $quote, $type, $giftMessage, $entityId = null)
+    protected function setMessage(\Magento\Quote\Model\Quote $quote, $type, $giftMessage, $entityId = null)
     {
         if (is_null($quote->getBillingAddress()->getCountryId())) {
             throw new InvalidTransitionException('Billing address is not set');
diff --git a/app/code/Magento/GiftMessage/composer.json b/app/code/Magento/GiftMessage/composer.json
index 2f330a2b6f519f925ef7d14319065a7e34bd3620..3a01616c8d4e4762c68bfc3c7dc76e5fa38a1879 100644
--- a/app/code/Magento/GiftMessage/composer.json
+++ b/app/code/Magento/GiftMessage/composer.json
@@ -3,20 +3,21 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-catalog": "0.42.0-beta3",
-        "magento/module-checkout": "0.42.0-beta3",
-        "magento/module-multishipping": "0.42.0-beta3",
-        "magento/module-sales": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/module-core": "0.42.0-beta3",
-        "magento/module-customer": "0.42.0-beta3",
-        "magento/module-eav": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-catalog": "0.42.0-beta4",
+        "magento/module-checkout": "0.42.0-beta4",
+        "magento/module-multishipping": "0.42.0-beta4",
+        "magento/module-sales": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/module-core": "0.42.0-beta4",
+        "magento/module-customer": "0.42.0-beta4",
+        "magento/module-eav": "0.42.0-beta4",
+        "magento/module-quote": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/GiftMessage/data/giftmessage_setup/data-install-2.0.0.php b/app/code/Magento/GiftMessage/data/giftmessage_setup/data-install-2.0.0.php
index 64928a37b81341ec7b70d3e2c3966be4d060c429..80b59718e63a54b55281fcd836a1bf96ec0ebf2d 100644
--- a/app/code/Magento/GiftMessage/data/giftmessage_setup/data-install-2.0.0.php
+++ b/app/code/Magento/GiftMessage/data/giftmessage_setup/data-install-2.0.0.php
@@ -9,19 +9,25 @@ $installer = $this;
 /**
  * Add 'gift_message_id' attributes for entities
  */
-$entities = ['quote', 'quote_address', 'quote_item', 'quote_address_item', 'order', 'order_item'];
+
 $options = ['type' => \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER, 'visible' => false, 'required' => false];
+$entities = ['quote', 'quote_address', 'quote_item', 'quote_address_item'];
 foreach ($entities as $entity) {
-    $installer->addAttribute($entity, 'gift_message_id', $options);
+    $installer->createQuoteSetup(
+        ['resourceName' => 'quote_setup']
+    )->addAttribute($entity, 'gift_message_id', $options);
 }
 
+$salesSetup = $installer->createSalesSetup(['resourceName' => 'sales_setup']);
+$salesSetup->addAttribute('order', 'gift_message_id', $options);
+$salesSetup->addAttribute('order_item', 'gift_message_id', $options);
 /**
  * Add 'gift_message_available' attributes for entities
  */
-$installer->addAttribute('order_item', 'gift_message_available', $options);
-$installer->createGiftMessageSetup(
-    ['resourceName' => 'catalog_setup']
-)->addAttribute(
+$salesSetup->addAttribute('order_item', 'gift_message_available', $options);
+
+$catalogSetup = $installer->createCatalogSetup(['resourceName' => 'catalog_setup']);
+$catalogSetup->addAttribute(
     \Magento\Catalog\Model\Product::ENTITY,
     'gift_message_available',
     [
@@ -45,14 +51,14 @@ $installer->createGiftMessageSetup(
 /** @var $this \Magento\GiftMessage\Model\Resource\Setup */
 
 $groupName = 'Autosettings';
-$entityTypeId = $this->getEntityTypeId(\Magento\Catalog\Model\Product::ENTITY);
-$attributeSetId = $this->getAttributeSetId($entityTypeId, 'Default');
+$entityTypeId = $catalogSetup->getEntityTypeId(\Magento\Catalog\Model\Product::ENTITY);
+$attributeSetId = $catalogSetup->getAttributeSetId($entityTypeId, 'Default');
 
-$attribute = $this->getAttribute($entityTypeId, 'gift_message_available');
+$attribute = $catalogSetup->getAttribute($entityTypeId, 'gift_message_available');
 if ($attribute) {
-    $this->addAttributeToGroup($entityTypeId, $attributeSetId, $groupName, $attribute['attribute_id'], 60);
+    $catalogSetup->addAttributeToGroup($entityTypeId, $attributeSetId, $groupName, $attribute['attribute_id'], 60);
 }
 
-if (!$this->getAttributesNumberInGroup($entityTypeId, $attributeSetId, 'Gift Options')) {
-    $this->removeAttributeGroup($entityTypeId, $attributeSetId, 'Gift Options');
+if (!$catalogSetup->getAttributesNumberInGroup($entityTypeId, $attributeSetId, 'Gift Options')) {
+    $catalogSetup->removeAttributeGroup($entityTypeId, $attributeSetId, 'Gift Options');
 }
diff --git a/app/code/Magento/GiftMessage/etc/adminhtml/di.xml b/app/code/Magento/GiftMessage/etc/adminhtml/di.xml
index 8638ae3efb82ff2662a09919f54826151822749e..961c8c6ff61369d74a53d6a9a943c067933e6345 100644
--- a/app/code/Magento/GiftMessage/etc/adminhtml/di.xml
+++ b/app/code/Magento/GiftMessage/etc/adminhtml/di.xml
@@ -7,7 +7,7 @@
 -->
 <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../lib/internal/Magento/Framework/ObjectManager/etc/config.xsd">
     <type name="Magento\GiftMessage\Model\Plugin\QuoteItem" shared="false" />
-    <type name="Magento\Sales\Model\Convert\Quote">
+    <type name="Magento\Quote\Model\Quote\Item\ToOrderItem">
         <plugin name="gift_message_quote_item_conversion" type="Magento\GiftMessage\Model\Plugin\QuoteItem"/>
     </type>
 </config>
diff --git a/app/code/Magento/GiftMessage/etc/adminhtml/events.xml b/app/code/Magento/GiftMessage/etc/adminhtml/events.xml
index c1f076935629b49a621c857f05724d87247784a4..68ce9ea43da8b8b82ce7a8ed2fdca3689b40f32e 100644
--- a/app/code/Magento/GiftMessage/etc/adminhtml/events.xml
+++ b/app/code/Magento/GiftMessage/etc/adminhtml/events.xml
@@ -6,9 +6,6 @@
  */
 -->
 <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../lib/internal/Magento/Framework/Event/etc/events.xsd">
-    <event name="sales_convert_quote_address_to_order">
-        <observer name="giftmessage" instance="Magento\GiftMessage\Model\Observer" method="salesEventConvertQuoteAddressToOrder" shared="false" />
-    </event>
     <event name="sales_convert_quote_to_order">
         <observer name="giftmessage" instance="Magento\GiftMessage\Model\Observer" method="salesEventConvertQuoteToOrder" shared="false" />
     </event>
diff --git a/app/code/Magento/GiftMessage/etc/catalog_attributes.xml b/app/code/Magento/GiftMessage/etc/catalog_attributes.xml
index c6cdea9a0a4d694ed0f2413115b2a7d0761748e8..5bef2c686eee22c76a004454ad9e171df75f411a 100644
--- a/app/code/Magento/GiftMessage/etc/catalog_attributes.xml
+++ b/app/code/Magento/GiftMessage/etc/catalog_attributes.xml
@@ -6,7 +6,7 @@
  */
 -->
 <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../Catalog/etc/catalog_attributes.xsd">
-    <group name="sales_quote_item">
+    <group name="quote_item">
         <attribute name="gift_message_available"/>
     </group>
 </config>
diff --git a/app/code/Magento/GiftMessage/etc/fieldset.xml b/app/code/Magento/GiftMessage/etc/fieldset.xml
new file mode 100644
index 0000000000000000000000000000000000000000..6a29ef01f74342b8ecef36b6697030005fa24c61
--- /dev/null
+++ b/app/code/Magento/GiftMessage/etc/fieldset.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0"?>
+<!--
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+-->
+<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+        xsi:noNamespaceSchemaLocation="../../../../../lib/internal/Magento/Framework/Object/etc/fieldset.xsd">
+    <scope id="global">
+        <fieldset id="quote_convert_address">
+            <field name="gift_message_id">
+                <aspect name="to_order" />
+            </field>
+        </fieldset>
+    </scope>
+</config>
\ No newline at end of file
diff --git a/app/code/Magento/GiftMessage/etc/frontend/di.xml b/app/code/Magento/GiftMessage/etc/frontend/di.xml
index 1fbc9a726cbb6c9abb0744f2ed1bf970115466b3..2db23d49ced7cdd7f1fed8495efc5899da27d8af 100644
--- a/app/code/Magento/GiftMessage/etc/frontend/di.xml
+++ b/app/code/Magento/GiftMessage/etc/frontend/di.xml
@@ -7,7 +7,7 @@
 -->
 <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../lib/internal/Magento/Framework/ObjectManager/etc/config.xsd">
     <type name="Magento\GiftMessage\Model\Plugin\QuoteItem" shared="false" />
-    <type name="Magento\Sales\Model\Convert\Quote">
+    <type name="Magento\Quote\Model\Quote\Item\ToOrderItem">
         <plugin name="gift_message_quote_item_conversion" type="Magento\GiftMessage\Model\Plugin\QuoteItem"/>
     </type>
     <type name="Magento\Multishipping\Block\Checkout\Shipping">
diff --git a/app/code/Magento/GiftMessage/etc/frontend/events.xml b/app/code/Magento/GiftMessage/etc/frontend/events.xml
index 9412f3a1085d6966493f6f05f661279be308aacf..bceffb520f1a58ac23051b986126e1e3aa6fe9f6 100644
--- a/app/code/Magento/GiftMessage/etc/frontend/events.xml
+++ b/app/code/Magento/GiftMessage/etc/frontend/events.xml
@@ -6,9 +6,6 @@
  */
 -->
 <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../lib/internal/Magento/Framework/Event/etc/events.xsd">
-    <event name="sales_convert_quote_address_to_order">
-        <observer name="giftmessage" instance="Magento\GiftMessage\Model\Observer" method="salesEventConvertQuoteAddressToOrder" shared="false" />
-    </event>
     <event name="sales_convert_quote_to_order">
         <observer name="giftmessage" instance="Magento\GiftMessage\Model\Observer" method="salesEventConvertQuoteToOrder" shared="false" />
     </event>
diff --git a/app/code/Magento/GiftMessage/etc/module.xml b/app/code/Magento/GiftMessage/etc/module.xml
index 67af45ac59288bc8625d29e3a91a0ca800ba5cdc..3e80542291b60f027d380df5c5d77e6cb3cd2cd6 100644
--- a/app/code/Magento/GiftMessage/etc/module.xml
+++ b/app/code/Magento/GiftMessage/etc/module.xml
@@ -10,6 +10,7 @@
         <sequence>
             <module name="Magento_Catalog"/>
             <module name="Magento_Sales"/>
+            <module name="Magento_Quote"/>
         </sequence>
     </module>
 </config>
diff --git a/app/code/Magento/GiftMessage/view/adminhtml/templates/giftoptionsform.phtml b/app/code/Magento/GiftMessage/view/adminhtml/templates/giftoptionsform.phtml
index 243c87efbe082413886056c419d7110c39584811..a1975f3e8fbb35a4fb4ea17fa2202b83bc6e2abf 100644
--- a/app/code/Magento/GiftMessage/view/adminhtml/templates/giftoptionsform.phtml
+++ b/app/code/Magento/GiftMessage/view/adminhtml/templates/giftoptionsform.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php if ($this->canDisplayGiftmessageForm()): ?>
diff --git a/app/code/Magento/GiftMessage/view/adminhtml/templates/popup.phtml b/app/code/Magento/GiftMessage/view/adminhtml/templates/popup.phtml
index 1e42399a2f01e2ce4522ebef442a9b63de096367..18cc1e82bf760f0963918df6e06732d577420452 100644
--- a/app/code/Magento/GiftMessage/view/adminhtml/templates/popup.phtml
+++ b/app/code/Magento/GiftMessage/view/adminhtml/templates/popup.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php if ($this->getChildHtml()) :?>
@@ -21,7 +24,7 @@
     <div id="giftoptions_tooltip_window_content">&nbsp;</div>
 </div>
 
-<script type="text/javascript">
+<script>
 require([
     "Magento_Sales/order/create/giftmessage",
     "Magento_Sales/order/giftoptions_tooltip"
diff --git a/app/code/Magento/GiftMessage/view/adminhtml/templates/sales/order/create/giftoptions.phtml b/app/code/Magento/GiftMessage/view/adminhtml/templates/sales/order/create/giftoptions.phtml
index ce6e96ce00e75c46756607419cf550b8afcf65cc..c628714a4f72e75810550f3c297388631f3a7a78 100644
--- a/app/code/Magento/GiftMessage/view/adminhtml/templates/sales/order/create/giftoptions.phtml
+++ b/app/code/Magento/GiftMessage/view/adminhtml/templates/sales/order/create/giftoptions.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php $_item = $this->getItem() ?>
@@ -12,7 +15,7 @@
         <tr class="border">
             <td colspan="8">
                 <a class="action-link" href="#" id="gift_options_link_<?php echo $_item->getId() ?>"><?php echo __('Gift Options') ?></a>
-                <script type="text/javascript">
+                <script>
 require([
     "Magento_Sales/order/giftoptions_tooltip"
 ], function(){
diff --git a/app/code/Magento/GiftMessage/view/adminhtml/templates/sales/order/create/items.phtml b/app/code/Magento/GiftMessage/view/adminhtml/templates/sales/order/create/items.phtml
index 4778d49229e1d5496c2391edc49530d53aa69872..08308c4ba999243c4507e57585dcbc4bd119f883 100644
--- a/app/code/Magento/GiftMessage/view/adminhtml/templates/sales/order/create/items.phtml
+++ b/app/code/Magento/GiftMessage/view/adminhtml/templates/sales/order/create/items.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php if ($this->canDisplayGiftMessage()): ?>
diff --git a/app/code/Magento/GiftMessage/view/adminhtml/templates/sales/order/view/giftoptions.phtml b/app/code/Magento/GiftMessage/view/adminhtml/templates/sales/order/view/giftoptions.phtml
index 2b7ab0e251f2e4f77ba0759898db1e1d43874c0b..ea281e18a9f2325c50a5341d88090ba302fb40e9 100644
--- a/app/code/Magento/GiftMessage/view/adminhtml/templates/sales/order/view/giftoptions.phtml
+++ b/app/code/Magento/GiftMessage/view/adminhtml/templates/sales/order/view/giftoptions.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php $_childHtml = trim($this->getChildHtml('', false)); ?>
@@ -11,7 +14,7 @@
 <tr>
     <td colspan="10" class="last">
         <a class="action-link" href="#" id="gift_options_link_<?php echo $_item->getId() ?>"><?php echo __('Gift Options') ?></a>
-        <script type="text/javascript">
+        <script>
 require([
 	"Magento_Sales/order/giftoptions_tooltip"
 ], function(){
diff --git a/app/code/Magento/GiftMessage/view/adminhtml/templates/sales/order/view/items.phtml b/app/code/Magento/GiftMessage/view/adminhtml/templates/sales/order/view/items.phtml
index d337ebc21f9446d8337d7623e4370d51ff6da6ad..09b181ebdfbfbdb99245ee62813aad3db14cd1c0 100644
--- a/app/code/Magento/GiftMessage/view/adminhtml/templates/sales/order/view/items.phtml
+++ b/app/code/Magento/GiftMessage/view/adminhtml/templates/sales/order/view/items.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php if ($this->canDisplayGiftmessage()): ?>
diff --git a/app/code/Magento/GiftMessage/view/frontend/templates/inline.phtml b/app/code/Magento/GiftMessage/view/frontend/templates/inline.phtml
index b68d714e598a0c2bd06f09746481e5515e9a9a42..4e70de76630fb707de0fbcd01d539bb83524aee1 100644
--- a/app/code/Magento/GiftMessage/view/frontend/templates/inline.phtml
+++ b/app/code/Magento/GiftMessage/view/frontend/templates/inline.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php $_giftMessage = false; ?>
 <?php switch ($this->getCheckoutType()): ?>
@@ -49,7 +52,7 @@
                                 </div>
                             </div>
                         </fieldset>
-                        <script type="text/javascript">
+                        <script>
 require(['jquery'], function(jQuery){
 
     jQuery('#add-gift-options-<?php echo $this->getEntity()->getId() ?>')
@@ -116,7 +119,7 @@ require(['jquery'], function(jQuery){
                     <?php endforeach; ?>
                 </ol>
             </dd>
-            <script type="text/javascript">
+            <script>
 require(['jquery'], function(jQuery){
 
     jQuery('#add-gift-options-<?php echo $this->getEntity()->getId() ?>')
@@ -128,7 +131,7 @@ require(['jquery'], function(jQuery){
             <dt class="extra-options-container" id="extra-options-container-<?php echo $this->getEntity()->getId() ?>"></dt>
         </dl>
     </fieldset>
-    <script type="text/javascript">
+    <script>
 require([
     'jquery',
     'mage/mage'
@@ -250,7 +253,7 @@ require([
             <dt class="extra-options-container" id="extra-options-container-<?php echo $this->getEntity()->getId() ?>"></dt>
         </dl>
     </fieldset>
-<script type="text/javascript">
+<script>
     require(['jquery', 'mage/mage'], function(jQuery){
 
     jQuery('#allow_gift_options_<?php echo $this->getEntity()->getId() ?>')
@@ -263,7 +266,7 @@ require([
     <?php break; ?>
 <?php endswitch ?>
 <?php if ($_giftMessage): ?>
-<script type="text/javascript">
+<script>
 require(['jquery', "mage/mage"], function(jQuery){
 
     jQuery('#shipping_method_form').mage('validation');
diff --git a/app/code/Magento/GoogleAdwords/composer.json b/app/code/Magento/GoogleAdwords/composer.json
index 0e10e7361b8b586e89995f99588e9652c92295cb..39e31ce86c536b67eabaad0ee94847ddbfc453fd 100644
--- a/app/code/Magento/GoogleAdwords/composer.json
+++ b/app/code/Magento/GoogleAdwords/composer.json
@@ -3,13 +3,13 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-sales": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-sales": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/GoogleAdwords/view/frontend/templates/code.phtml b/app/code/Magento/GoogleAdwords/view/frontend/templates/code.phtml
index 882bc07f2cdad9555564b274ecc37af9abf9fbe2..4b007df125b19fd3f2209f51c1e04809d50b664a 100644
--- a/app/code/Magento/GoogleAdwords/view/frontend/templates/code.phtml
+++ b/app/code/Magento/GoogleAdwords/view/frontend/templates/code.phtml
@@ -8,7 +8,7 @@
 /** @var $this \Magento\GoogleAdwords\Block\Code */
 ?>
 <!-- Google Code for Sale Conversion Page -->
-<script type="text/javascript">
+<script>
     /* <![CDATA[ */
     var google_conversion_id = <?php echo $this->getHelper()->getConversionId() ?>;
     var google_conversion_language = "<?php echo $this->getHelper()->getConversionLanguage() ?>";
diff --git a/app/code/Magento/GoogleAnalytics/Block/Ga.php b/app/code/Magento/GoogleAnalytics/Block/Ga.php
index 9d43e1f144d71de2ebb5f617f0264e0b097a426a..8236e5fac9e5422e43293066b922e852e8a5668b 100644
--- a/app/code/Magento/GoogleAnalytics/Block/Ga.php
+++ b/app/code/Magento/GoogleAnalytics/Block/Ga.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\GoogleAnalytics\Block;
 
 /**
diff --git a/app/code/Magento/GoogleAnalytics/Helper/Data.php b/app/code/Magento/GoogleAnalytics/Helper/Data.php
index 2545895e56b2ae1c7710ba68866a3d3b70701ab7..49b29bc28cf3e6b34418f3a7fabf1b87eb46bb01 100644
--- a/app/code/Magento/GoogleAnalytics/Helper/Data.php
+++ b/app/code/Magento/GoogleAnalytics/Helper/Data.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\GoogleAnalytics\Helper;
 
 use Magento\Store\Model\Store;
diff --git a/app/code/Magento/GoogleAnalytics/composer.json b/app/code/Magento/GoogleAnalytics/composer.json
index ad2a5c677de09ca4d4ee68da044d85955c34d409..36c520368a0fcaff30376d928cb52fa8b07cf051 100644
--- a/app/code/Magento/GoogleAnalytics/composer.json
+++ b/app/code/Magento/GoogleAnalytics/composer.json
@@ -3,13 +3,13 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-sales": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-sales": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/GoogleAnalytics/view/frontend/templates/ga.phtml b/app/code/Magento/GoogleAnalytics/view/frontend/templates/ga.phtml
index 4b1c7f1921645df47849d664db5967d327d5b5e7..09e206fa5a82daeb879a6f6c4b9a3ede220e8458 100644
--- a/app/code/Magento/GoogleAnalytics/view/frontend/templates/ga.phtml
+++ b/app/code/Magento/GoogleAnalytics/view/frontend/templates/ga.phtml
@@ -3,12 +3,15 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\GoogleAnalytics\Block\Ga */ ?>
 <?php if (!$this->helper('Magento\Store\Helper\Cookie')->isUserNotAllowSaveCookie()): ?>
 <?php $accountId = $this->getConfig(\Magento\GoogleAnalytics\Helper\Data::XML_PATH_ACCOUNT) ?>
 <!-- BEGIN GOOGLE ANALYTICS CODE -->
-<script type="text/javascript">
+<script>
 //<![CDATA[
     (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
     (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
diff --git a/app/code/Magento/GoogleOptimizer/Block/Adminhtml/Catalog/Category/Edit/Tab/Googleoptimizer.php b/app/code/Magento/GoogleOptimizer/Block/Adminhtml/Catalog/Category/Edit/Tab/Googleoptimizer.php
index 1895625c2479a7aa2c60efda9731ca715b0d9607..2fc44ab02315a9c60de7ca26b166a351576a3fc9 100644
--- a/app/code/Magento/GoogleOptimizer/Block/Adminhtml/Catalog/Category/Edit/Tab/Googleoptimizer.php
+++ b/app/code/Magento/GoogleOptimizer/Block/Adminhtml/Catalog/Category/Edit/Tab/Googleoptimizer.php
@@ -7,6 +7,9 @@
  */
 namespace Magento\GoogleOptimizer\Block\Adminhtml\Catalog\Category\Edit\Tab;
 
+/**
+ * @SuppressWarnings(PHPMD.DepthOfInheritance)
+ */
 class Googleoptimizer extends \Magento\Catalog\Block\Adminhtml\Form
 {
     /**
diff --git a/app/code/Magento/GoogleOptimizer/Block/Code/Category.php b/app/code/Magento/GoogleOptimizer/Block/Code/Category.php
index 3a6a42e58907cde1fa1f29b1ec1d5c9b439f8245..5e611ec1be1362947f3ccd0923a0604ad9a933ec 100644
--- a/app/code/Magento/GoogleOptimizer/Block/Code/Category.php
+++ b/app/code/Magento/GoogleOptimizer/Block/Code/Category.php
@@ -5,6 +5,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\GoogleOptimizer\Block\Code;
 
 class Category extends \Magento\GoogleOptimizer\Block\AbstractCode implements \Magento\Framework\View\Block\IdentityInterface
diff --git a/app/code/Magento/GoogleOptimizer/Block/Code/Product.php b/app/code/Magento/GoogleOptimizer/Block/Code/Product.php
index 98a9888c196dcd0e7fa1f59cde4c7b70a6a566c3..371debd2a72741b724fbcd2c69238240f094f626 100644
--- a/app/code/Magento/GoogleOptimizer/Block/Code/Product.php
+++ b/app/code/Magento/GoogleOptimizer/Block/Code/Product.php
@@ -5,6 +5,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\GoogleOptimizer\Block\Code;
 
 class Product extends \Magento\GoogleOptimizer\Block\AbstractCode implements \Magento\Framework\View\Block\IdentityInterface
diff --git a/app/code/Magento/GoogleOptimizer/Helper/Data.php b/app/code/Magento/GoogleOptimizer/Helper/Data.php
index 6f6ef4e1956d0e0dc621f12a4a492d07200dc54c..8010a5fc27292710c38eaa3e366b4d8c7648a765 100644
--- a/app/code/Magento/GoogleOptimizer/Helper/Data.php
+++ b/app/code/Magento/GoogleOptimizer/Helper/Data.php
@@ -5,6 +5,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\GoogleOptimizer\Helper;
 
 class Data extends \Magento\Framework\App\Helper\AbstractHelper
diff --git a/app/code/Magento/GoogleOptimizer/Model/Observer/Block/Category/Tab.php b/app/code/Magento/GoogleOptimizer/Model/Observer/Block/Category/Tab.php
index a2077c5ed4f029b6d5d095208925409bd4f07b93..3c9b1b2d3fb63e62fdb19866ee4be5bd29bd8121 100644
--- a/app/code/Magento/GoogleOptimizer/Model/Observer/Block/Category/Tab.php
+++ b/app/code/Magento/GoogleOptimizer/Model/Observer/Block/Category/Tab.php
@@ -5,6 +5,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\GoogleOptimizer\Model\Observer\Block\Category;
 
 use Magento\Framework\Event\Observer as EventObserver;
diff --git a/app/code/Magento/GoogleOptimizer/composer.json b/app/code/Magento/GoogleOptimizer/composer.json
index 6f3640d73b6b3b03ddbb6c4401430a7c6bba8361..35eb2dec491b69593e2e624f7c3ee87c5be66c05 100644
--- a/app/code/Magento/GoogleOptimizer/composer.json
+++ b/app/code/Magento/GoogleOptimizer/composer.json
@@ -3,16 +3,16 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-google-analytics": "0.42.0-beta3",
-        "magento/module-catalog": "0.42.0-beta3",
-        "magento/module-cms": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-google-analytics": "0.42.0-beta4",
+        "magento/module-catalog": "0.42.0-beta4",
+        "magento/module-cms": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/GoogleShopping/Block/Adminhtml/Items/Item.php b/app/code/Magento/GoogleShopping/Block/Adminhtml/Items/Item.php
index 2a213dd90e5633227e1d31080e7de947d5aed786..073826ff9ebb613492bb4daafbb1fb5753f67310 100644
--- a/app/code/Magento/GoogleShopping/Block/Adminhtml/Items/Item.php
+++ b/app/code/Magento/GoogleShopping/Block/Adminhtml/Items/Item.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\GoogleShopping\Block\Adminhtml\Items;
 
 /**
diff --git a/app/code/Magento/GoogleShopping/Block/Adminhtml/Types/Edit/Form.php b/app/code/Magento/GoogleShopping/Block/Adminhtml/Types/Edit/Form.php
index 6c4edeb942f464491cca2c16db2f026bb7e11900..7d2ca2231ef508fd48b19b10c03258d910b0c6ab 100644
--- a/app/code/Magento/GoogleShopping/Block/Adminhtml/Types/Edit/Form.php
+++ b/app/code/Magento/GoogleShopping/Block/Adminhtml/Types/Edit/Form.php
@@ -71,6 +71,7 @@ class Form extends \Magento\Backend\Block\Widget\Form\Generic
      * @param \Magento\Framework\Data\Form\Element\Factory $elementFactory
      * @param \Magento\GoogleShopping\Helper\Category $googleShoppingCategory
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Backend\Block\Template\Context $context,
diff --git a/app/code/Magento/GoogleShopping/Controller/Adminhtml/Googleshopping/Items/Index.php b/app/code/Magento/GoogleShopping/Controller/Adminhtml/Googleshopping/Items/Index.php
index 6dea87aa9a32833f7529a8c6e92443183065400f..56380c2148cfacfde955603861af9d03fa33fbb4 100644
--- a/app/code/Magento/GoogleShopping/Controller/Adminhtml/Googleshopping/Items/Index.php
+++ b/app/code/Magento/GoogleShopping/Controller/Adminhtml/Googleshopping/Items/Index.php
@@ -4,6 +4,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\GoogleShopping\Controller\Adminhtml\Googleshopping\Items;
 
 use Magento\Backend\App\Action;
diff --git a/app/code/Magento/GoogleShopping/Controller/Adminhtml/Googleshopping/Items/Refresh.php b/app/code/Magento/GoogleShopping/Controller/Adminhtml/Googleshopping/Items/Refresh.php
index ee0b27779d6ddb569cfbcc53deb7b37e1d9c6532..03fc43a2939797febd4ccdcc5bb1b837a3e9783c 100644
--- a/app/code/Magento/GoogleShopping/Controller/Adminhtml/Googleshopping/Items/Refresh.php
+++ b/app/code/Magento/GoogleShopping/Controller/Adminhtml/Googleshopping/Items/Refresh.php
@@ -5,6 +5,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\GoogleShopping\Controller\Adminhtml\Googleshopping\Items;
 
 class Refresh extends \Magento\GoogleShopping\Controller\Adminhtml\Googleshopping\Items
diff --git a/app/code/Magento/GoogleShopping/Controller/Adminhtml/Googleshopping/Types/Save.php b/app/code/Magento/GoogleShopping/Controller/Adminhtml/Googleshopping/Types/Save.php
index 3da4fe25f1c62e215917ff22268098dc6f9bfc3b..78368e75a7f77f457db3fc467b31d208d4d2ba2a 100644
--- a/app/code/Magento/GoogleShopping/Controller/Adminhtml/Googleshopping/Types/Save.php
+++ b/app/code/Magento/GoogleShopping/Controller/Adminhtml/Googleshopping/Types/Save.php
@@ -12,6 +12,7 @@ class Save extends \Magento\GoogleShopping\Controller\Adminhtml\Googleshopping\T
      * Save attribute set mapping
      *
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function execute()
     {
diff --git a/app/code/Magento/GoogleShopping/Helper/Category.php b/app/code/Magento/GoogleShopping/Helper/Category.php
index 38d17c11f9e0a2ef0ca1b2f2b1b8d8ca14818160..36f2b197544fe02a3bab927d02acfb86cfde367e 100644
--- a/app/code/Magento/GoogleShopping/Helper/Category.php
+++ b/app/code/Magento/GoogleShopping/Helper/Category.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\GoogleShopping\Helper;
 
 /**
diff --git a/app/code/Magento/GoogleShopping/Helper/Data.php b/app/code/Magento/GoogleShopping/Helper/Data.php
index 18469118375f4208178ede60243f72a45f4a8d2b..30e39ba157abfeb04d30bb66a9ec9636aa757106 100644
--- a/app/code/Magento/GoogleShopping/Helper/Data.php
+++ b/app/code/Magento/GoogleShopping/Helper/Data.php
@@ -86,6 +86,7 @@ class Data extends \Magento\Framework\App\Helper\AbstractHelper
      * @param string $message \Exception message to parse
      * @param null|\Magento\Catalog\Model\Product $product
      * @return string
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function parseGdataExceptionMessage($message, $product = null)
     {
diff --git a/app/code/Magento/GoogleShopping/Model/Attribute.php b/app/code/Magento/GoogleShopping/Model/Attribute.php
index 545c91d2f45b21f280dcd39923231f6293335f02..adbe22f41a86b983e875e59cf36cc2beae5b1915 100644
--- a/app/code/Magento/GoogleShopping/Model/Attribute.php
+++ b/app/code/Magento/GoogleShopping/Model/Attribute.php
@@ -109,6 +109,7 @@ class Attribute extends \Magento\Framework\Model\AbstractModel
      *
      * @param int $setId attribute set id
      * @return array
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function getAllowedAttributes($setId)
     {
diff --git a/app/code/Magento/GoogleShopping/Model/Attribute/ContentLanguage.php b/app/code/Magento/GoogleShopping/Model/Attribute/ContentLanguage.php
index 56d7dc701b8a5a28b97f1438ed4e6b5f903f37ee..e78e3b68c2f1d995c31965e33e8538d70f3657d0 100644
--- a/app/code/Magento/GoogleShopping/Model/Attribute/ContentLanguage.php
+++ b/app/code/Magento/GoogleShopping/Model/Attribute/ContentLanguage.php
@@ -30,6 +30,7 @@ class ContentLanguage extends \Magento\GoogleShopping\Model\Attribute\DefaultAtt
      * @param \Magento\GoogleShopping\Model\Config $config
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
diff --git a/app/code/Magento/GoogleShopping/Model/Attribute/DefaultAttribute.php b/app/code/Magento/GoogleShopping/Model/Attribute/DefaultAttribute.php
index b3f83375ce1ad5fe01c32385e7b942c4d4af81f8..0c9b83bf976edf37780fbf404fec3f43c905745b 100644
--- a/app/code/Magento/GoogleShopping/Model/Attribute/DefaultAttribute.php
+++ b/app/code/Magento/GoogleShopping/Model/Attribute/DefaultAttribute.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Default attribute model
  *
@@ -11,6 +13,9 @@
  */
 namespace Magento\GoogleShopping\Model\Attribute;
 
+/**
+ * @SuppressWarnings(PHPMD.NumberOfChildren)
+ */
 class DefaultAttribute extends \Magento\GoogleShopping\Model\Attribute
 {
     /**
diff --git a/app/code/Magento/GoogleShopping/Model/Attribute/Destinations.php b/app/code/Magento/GoogleShopping/Model/Attribute/Destinations.php
index 19b6b01e582dac6790f15af4a8f1a9a051f002f2..43dc01798d763a0d517a2c0eef59bf653c227d25 100644
--- a/app/code/Magento/GoogleShopping/Model/Attribute/Destinations.php
+++ b/app/code/Magento/GoogleShopping/Model/Attribute/Destinations.php
@@ -30,6 +30,7 @@ class Destinations extends \Magento\GoogleShopping\Model\Attribute\DefaultAttrib
      * @param \Magento\GoogleShopping\Model\Config $config
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
diff --git a/app/code/Magento/GoogleShopping/Model/Attribute/GoogleProductCategory.php b/app/code/Magento/GoogleShopping/Model/Attribute/GoogleProductCategory.php
index 98bfca9bd664f98155d88341dc22a2f533c4aec4..1ac9b00897baee8d298808acc0c356a16c97bc1b 100644
--- a/app/code/Magento/GoogleShopping/Model/Attribute/GoogleProductCategory.php
+++ b/app/code/Magento/GoogleShopping/Model/Attribute/GoogleProductCategory.php
@@ -38,6 +38,7 @@ class GoogleProductCategory extends \Magento\GoogleShopping\Model\Attribute\Defa
      * @param \Magento\GoogleShopping\Model\Config $config
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
diff --git a/app/code/Magento/GoogleShopping/Model/Attribute/ImageLink.php b/app/code/Magento/GoogleShopping/Model/Attribute/ImageLink.php
index 7afd93bcff94abc8078de14df0e1120f22ae209e..e286f926ea2ca575528a1aba0bc07a69bc9071ae 100644
--- a/app/code/Magento/GoogleShopping/Model/Attribute/ImageLink.php
+++ b/app/code/Magento/GoogleShopping/Model/Attribute/ImageLink.php
@@ -28,6 +28,7 @@ class ImageLink extends \Magento\GoogleShopping\Model\Attribute\DefaultAttribute
      * @param \Magento\Catalog\Helper\Product $catalogProduct
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
diff --git a/app/code/Magento/GoogleShopping/Model/Attribute/Link.php b/app/code/Magento/GoogleShopping/Model/Attribute/Link.php
index a234faf07f410d8d1d7b042fe26386cf6cd71b53..1e9b15cd96b556b55fada2f964136dab97b9f013 100644
--- a/app/code/Magento/GoogleShopping/Model/Attribute/Link.php
+++ b/app/code/Magento/GoogleShopping/Model/Attribute/Link.php
@@ -28,6 +28,7 @@ class Link extends \Magento\GoogleShopping\Model\Attribute\DefaultAttribute
      * @param \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
diff --git a/app/code/Magento/GoogleShopping/Model/Attribute/Price.php b/app/code/Magento/GoogleShopping/Model/Attribute/Price.php
index 6a7eba0a92b034794a85d4762b5e755d6ea25a2f..a75a1f1a774fb21782fce489c671a8783e8ea4db 100644
--- a/app/code/Magento/GoogleShopping/Model/Attribute/Price.php
+++ b/app/code/Magento/GoogleShopping/Model/Attribute/Price.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\GoogleShopping\Model\Attribute;
 
 use Magento\Catalog\Model\Product;
diff --git a/app/code/Magento/GoogleShopping/Model/Attribute/ProductType.php b/app/code/Magento/GoogleShopping/Model/Attribute/ProductType.php
index 2a614ea22daacd1674de3a64ae76d45b7fd322de..9be717ab564b6981c6e527319631dce30853c65f 100644
--- a/app/code/Magento/GoogleShopping/Model/Attribute/ProductType.php
+++ b/app/code/Magento/GoogleShopping/Model/Attribute/ProductType.php
@@ -30,6 +30,7 @@ class ProductType extends \Magento\GoogleShopping\Model\Attribute\DefaultAttribu
      * @param \Magento\Catalog\Api\CategoryRepositoryInterface $categoryRepository
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
diff --git a/app/code/Magento/GoogleShopping/Model/Attribute/SalePriceEffectiveDate.php b/app/code/Magento/GoogleShopping/Model/Attribute/SalePriceEffectiveDate.php
index a7c7a14ce20255386c97c7c4308b37d3b8a3d477..494e7185eb277037d3213af27e6613495c08ca1f 100644
--- a/app/code/Magento/GoogleShopping/Model/Attribute/SalePriceEffectiveDate.php
+++ b/app/code/Magento/GoogleShopping/Model/Attribute/SalePriceEffectiveDate.php
@@ -19,6 +19,8 @@ class SalePriceEffectiveDate extends \Magento\GoogleShopping\Model\Attribute\Def
      * @param \Magento\Catalog\Model\Product $product
      * @param \Magento\Framework\Gdata\Gshopping\Entry $entry
      * @return \Magento\Framework\Gdata\Gshopping\Entry
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function convertAttribute($product, $entry)
     {
diff --git a/app/code/Magento/GoogleShopping/Model/Attribute/TargetCountry.php b/app/code/Magento/GoogleShopping/Model/Attribute/TargetCountry.php
index f83f5ce54b5757ebeaabe59566799787be446b9f..ca24c2f97d22f743da7c37ae9dd432134bb4b6a6 100644
--- a/app/code/Magento/GoogleShopping/Model/Attribute/TargetCountry.php
+++ b/app/code/Magento/GoogleShopping/Model/Attribute/TargetCountry.php
@@ -30,6 +30,7 @@ class TargetCountry extends \Magento\GoogleShopping\Model\Attribute\DefaultAttri
      * @param \Magento\GoogleShopping\Model\Config $config
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
diff --git a/app/code/Magento/GoogleShopping/Model/Attribute/Tax.php b/app/code/Magento/GoogleShopping/Model/Attribute/Tax.php
index ead001020d259969ffd49b479b723da0cf47ce6f..1e49ece6ae9170f70a7e26beab7fc5fe0d4d41b3 100644
--- a/app/code/Magento/GoogleShopping/Model/Attribute/Tax.php
+++ b/app/code/Magento/GoogleShopping/Model/Attribute/Tax.php
@@ -13,6 +13,7 @@ use Magento\Tax\Api\Data\TaxClassKeyInterface;
  * Tax attribute model
  *
  * @author     Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Tax extends \Magento\GoogleShopping\Model\Attribute\DefaultAttribute
 {
@@ -93,6 +94,7 @@ class Tax extends \Magento\GoogleShopping\Model\Attribute\DefaultAttribute
      * @param \Magento\Customer\Api\GroupManagementInterface $groupManagement
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
diff --git a/app/code/Magento/GoogleShopping/Model/Config.php b/app/code/Magento/GoogleShopping/Model/Config.php
index 7007b555fbdb84a2095bb8814444653a598a5675..5e4ef7014d13d80afb2c1a834654a1b2f481f22b 100644
--- a/app/code/Magento/GoogleShopping/Model/Config.php
+++ b/app/code/Magento/GoogleShopping/Model/Config.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\GoogleShopping\Model;
 
 /**
@@ -244,6 +247,7 @@ class Config extends \Magento\Framework\Object
      * where: key - attribute name, value - group name
      *
      * @return array
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function getAttributeGroupsFlat()
     {
@@ -272,6 +276,7 @@ class Config extends \Magento\Framework\Object
      *
      * @param int $storeId
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsDebug($storeId)
     {
@@ -282,6 +287,7 @@ class Config extends \Magento\Framework\Object
      * Returns all required attributes
      *
      * @return array
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function getRequiredAttributes()
     {
diff --git a/app/code/Magento/GoogleShopping/Model/MassOperations.php b/app/code/Magento/GoogleShopping/Model/MassOperations.php
index d22319e6aa225b8da954b8d634307c1d862371c6..7cabe18ba1a86c9175a3559f49d91429b75408e5 100644
--- a/app/code/Magento/GoogleShopping/Model/MassOperations.php
+++ b/app/code/Magento/GoogleShopping/Model/MassOperations.php
@@ -12,6 +12,7 @@ use Magento\GoogleShopping\Model\Resource\Item\Collection as ItemCollection;
  * Controller for mass opertions with items
  *
  * @author     Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class MassOperations
 {
@@ -74,6 +75,7 @@ class MassOperations
      * @param \Magento\GoogleShopping\Helper\Data $gleShoppingData
      * @param \Magento\GoogleShopping\Helper\Category $gleShoppingCategory
      * @param array $data
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function __construct(
         \Magento\GoogleShopping\Model\Resource\Item\CollectionFactory $collectionFactory,
@@ -143,6 +145,8 @@ class MassOperations
      * @param int $storeId
      * @return $this
      * @throws \Exception|\Zend_Gdata_App_CaptchaRequiredException
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function addProducts($productIds, $storeId)
     {
@@ -217,6 +221,7 @@ class MassOperations
      * @param int[]|ItemCollection $items
      * @return $this
      * @throws \Exception|\Zend_Gdata_App_CaptchaRequiredException
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function synchronizeItems($items)
     {
@@ -303,6 +308,7 @@ class MassOperations
      * @param int[]|ItemCollection $items
      * @return $this
      * @throws \Exception|\Zend_Gdata_App_CaptchaRequiredException
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function deleteItems($items)
     {
diff --git a/app/code/Magento/GoogleShopping/Model/Observer.php b/app/code/Magento/GoogleShopping/Model/Observer.php
index 92308116337d14600eabafed794995be5334d54b..3fc97c0a8991d02824a0dac071a9e0ae1b09abbd 100644
--- a/app/code/Magento/GoogleShopping/Model/Observer.php
+++ b/app/code/Magento/GoogleShopping/Model/Observer.php
@@ -146,6 +146,7 @@ class Observer
      *
      * @param  \Magento\Framework\Event\Observer $observer
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function checkSynchronizationOperations(\Magento\Framework\Event\Observer $observer)
     {
diff --git a/app/code/Magento/GoogleShopping/Model/Resource/Attribute/Collection.php b/app/code/Magento/GoogleShopping/Model/Resource/Attribute/Collection.php
index fc26f93ff7850a9cf22ec037027cdd27e5309e7c..855192cfab25a71a28a7b1b6eadb1f4217c10ad3 100644
--- a/app/code/Magento/GoogleShopping/Model/Resource/Attribute/Collection.php
+++ b/app/code/Magento/GoogleShopping/Model/Resource/Attribute/Collection.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\GoogleShopping\Model\Resource\Attribute;
 
 /**
@@ -94,6 +97,7 @@ class Collection extends \Magento\Framework\Model\Resource\Db\Collection\Abstrac
      * Get flag - whether to join attribute_set_id to attributes or not
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getJoinAttributeSetFlag()
     {
diff --git a/app/code/Magento/GoogleShopping/Model/Resource/Grid/Collection.php b/app/code/Magento/GoogleShopping/Model/Resource/Grid/Collection.php
index f0c4e582e1c8bcb558511b28a9bc9f44f5026847..9771f00fe4084cbdd33832bddc699e351b53236a 100644
--- a/app/code/Magento/GoogleShopping/Model/Resource/Grid/Collection.php
+++ b/app/code/Magento/GoogleShopping/Model/Resource/Grid/Collection.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * GoogleShopping Types collection
  *
diff --git a/app/code/Magento/GoogleShopping/Model/Service.php b/app/code/Magento/GoogleShopping/Model/Service.php
index 134a4c6c4c75a7d5347301e4cbd1dc93d5202558..87192e45dfc7bce6db60b1e68a9098ac6c02408d 100644
--- a/app/code/Magento/GoogleShopping/Model/Service.php
+++ b/app/code/Magento/GoogleShopping/Model/Service.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\GoogleShopping\Model;
 
 /**
diff --git a/app/code/Magento/GoogleShopping/Model/Source/Destinationstates.php b/app/code/Magento/GoogleShopping/Model/Source/Destinationstates.php
index 03ee3addbba8e5234fca2b614899b05aae168a8a..836245c56de98013b440a784a8e01ad012f2ecc8 100644
--- a/app/code/Magento/GoogleShopping/Model/Source/Destinationstates.php
+++ b/app/code/Magento/GoogleShopping/Model/Source/Destinationstates.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\GoogleShopping\Model\Source;
 
 /**
diff --git a/app/code/Magento/GoogleShopping/Model/Type.php b/app/code/Magento/GoogleShopping/Model/Type.php
index 4c95a44c3e59b21da7a2159ebb9c1e156d6288a7..715f76597a6eb4ed222a092099a10d7f23e0e6a6 100644
--- a/app/code/Magento/GoogleShopping/Model/Type.php
+++ b/app/code/Magento/GoogleShopping/Model/Type.php
@@ -64,6 +64,7 @@ class Type extends \Magento\Framework\Model\AbstractModel
      * @param \Magento\GoogleShopping\Model\Resource\Type $resource
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
@@ -111,6 +112,7 @@ class Type extends \Magento\Framework\Model\AbstractModel
      * @param CatalogModelProduct $product
      * @param Entry $entry
      * @return Entry
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function convertProductToEntry($product, $entry)
     {
diff --git a/app/code/Magento/GoogleShopping/composer.json b/app/code/Magento/GoogleShopping/composer.json
index 38e35843f414a7d63be87908dc6b5709a63f58df..06930c045265755931ac1ee41acca725dcd28f1e 100644
--- a/app/code/Magento/GoogleShopping/composer.json
+++ b/app/code/Magento/GoogleShopping/composer.json
@@ -3,19 +3,19 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-core": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/module-catalog": "0.42.0-beta3",
-        "magento/module-customer": "0.42.0-beta3",
-        "magento/module-directory": "0.42.0-beta3",
-        "magento/module-eav": "0.42.0-beta3",
-        "magento/module-tax": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-core": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/module-catalog": "0.42.0-beta4",
+        "magento/module-customer": "0.42.0-beta4",
+        "magento/module-directory": "0.42.0-beta4",
+        "magento/module-eav": "0.42.0-beta4",
+        "magento/module-tax": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/GoogleShopping/view/adminhtml/templates/captcha.phtml b/app/code/Magento/GoogleShopping/view/adminhtml/templates/captcha.phtml
index c957e3269413dbe2faa762f473716b8df57234d7..651229c12f515b8374923adb125cc6eab5489538 100644
--- a/app/code/Magento/GoogleShopping/view/adminhtml/templates/captcha.phtml
+++ b/app/code/Magento/GoogleShopping/view/adminhtml/templates/captcha.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php if ($this->getGcontentCaptchaToken() && $this->getGcontentCaptchaUrl()): ?>
diff --git a/app/code/Magento/GoogleShopping/view/adminhtml/templates/items.phtml b/app/code/Magento/GoogleShopping/view/adminhtml/templates/items.phtml
index a47868e38dbc148b727be8aaf18c00e1149d5027..15de0a51f35684c4111ee873df9ed4edb52c1962 100644
--- a/app/code/Magento/GoogleShopping/view/adminhtml/templates/items.phtml
+++ b/app/code/Magento/GoogleShopping/view/adminhtml/templates/items.phtml
@@ -22,7 +22,7 @@
 <?php echo $this->getChildHtml('product') ?>
 </div>
 
-<script type="text/javascript">
+<script>
 require([
 	'Magento_GoogleShopping/googleshopping'
 ], function(){
diff --git a/app/code/Magento/GoogleShopping/view/adminhtml/templates/types/edit.phtml b/app/code/Magento/GoogleShopping/view/adminhtml/templates/types/edit.phtml
index 43f000ad13e38806b3fb5e0114f7085d6dca503f..e456f8529a0149f5fcae156cf2a110ee394cc105 100644
--- a/app/code/Magento/GoogleShopping/view/adminhtml/templates/types/edit.phtml
+++ b/app/code/Magento/GoogleShopping/view/adminhtml/templates/types/edit.phtml
@@ -3,9 +3,12 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
-<script type="text/javascript">
+<script>
 require(['prototype'], function(){
 
 //<![CDATA[
diff --git a/app/code/Magento/GoogleShopping/view/adminhtml/templates/types/edit/attributes.phtml b/app/code/Magento/GoogleShopping/view/adminhtml/templates/types/edit/attributes.phtml
index 823ebb910ed59a1b98dddf06262017c96092475b..e693dbb9e672a7b0550dae9dfe47d98296f2b2b6 100644
--- a/app/code/Magento/GoogleShopping/view/adminhtml/templates/types/edit/attributes.phtml
+++ b/app/code/Magento/GoogleShopping/view/adminhtml/templates/types/edit/attributes.phtml
@@ -3,10 +3,13 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php if ($this->getAttributeSetSelected()): ?>
-<script type="text/javascript">
+<script>
 require(['prototype'], function(){
 
 //<![CDATA[
@@ -99,7 +102,7 @@ gContentAttribute = new Gcontent.Attribute(attributesSelectTemplate);
 </div>
 
 <?php if ($this->getAttributesData()): ?>
-<script type="text/javascript">
+<script>
 require(['prototype'], function(){
 
 //<![CDATA[
diff --git a/app/code/Magento/GoogleShopping/view/adminhtml/templates/types/edit/select.phtml b/app/code/Magento/GoogleShopping/view/adminhtml/templates/types/edit/select.phtml
index 1903c6e5f62b3d7831a986dcf65b584db2a4bc0e..d9d5652ad3b265252698c4a34f4e595d971fa0b4 100644
--- a/app/code/Magento/GoogleShopping/view/adminhtml/templates/types/edit/select.phtml
+++ b/app/code/Magento/GoogleShopping/view/adminhtml/templates/types/edit/select.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <select id="<?php echo $this->getId() ?>" name="<?php echo $this->getName() ?>" class="<?php echo $this->getClass() ?>" title="">
diff --git a/app/code/Magento/GroupedImportExport/composer.json b/app/code/Magento/GroupedImportExport/composer.json
index f53791499fbd23f37a76758db445e76e6a5abeb9..98e7b3d0940d987ad6e8249ac47803be02d21318 100644
--- a/app/code/Magento/GroupedImportExport/composer.json
+++ b/app/code/Magento/GroupedImportExport/composer.json
@@ -3,16 +3,16 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-catalog": "0.42.0-beta3",
-        "magento/module-import-export": "0.42.0-beta3",
-        "magento/module-catalog-import-export": "0.42.0-beta3",
-        "magento/module-grouped-product": "0.42.0-beta3",
-        "magento/module-eav": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-catalog": "0.42.0-beta4",
+        "magento/module-import-export": "0.42.0-beta4",
+        "magento/module-catalog-import-export": "0.42.0-beta4",
+        "magento/module-grouped-product": "0.42.0-beta4",
+        "magento/module-eav": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/GroupedProduct/Model/Sales/AdminOrder/Product/Quote/Plugin/Initializer.php b/app/code/Magento/GroupedProduct/Model/Sales/AdminOrder/Product/Quote/Plugin/Initializer.php
index d4e92fd8ebc15baaa7aa0affa1fb572cedf1bcf1..5e1c7511fee9b9799ca1c780869d3583667f7060 100644
--- a/app/code/Magento/GroupedProduct/Model/Sales/AdminOrder/Product/Quote/Plugin/Initializer.php
+++ b/app/code/Magento/GroupedProduct/Model/Sales/AdminOrder/Product/Quote/Plugin/Initializer.php
@@ -19,17 +19,17 @@ class Initializer
     /**
      * @param \Magento\Sales\Model\AdminOrder\Product\Quote\Initializer $subject
      * @param callable $proceed
-     * @param \Magento\Sales\Model\Quote $quote
+     * @param \Magento\Quote\Model\Quote $quote
      * @param \Magento\Catalog\Model\Product $product
      * @param \Magento\Framework\Object $config
      *
-     * @return \Magento\Sales\Model\Quote\Item|string
+     * @return \Magento\Quote\Model\Quote\Item|string
      * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function aroundInit(
         \Magento\Sales\Model\AdminOrder\Product\Quote\Initializer $subject,
         \Closure $proceed,
-        \Magento\Sales\Model\Quote $quote,
+        \Magento\Quote\Model\Quote $quote,
         \Magento\Catalog\Model\Product $product,
         \Magento\Framework\Object $config
     ) {
diff --git a/app/code/Magento/GroupedProduct/composer.json b/app/code/Magento/GroupedProduct/composer.json
index d276a035dacf7122a205827da67150952ed2cf58..a39cb2bef2398cf164bf84c794237fcf1d4e9a50 100644
--- a/app/code/Magento/GroupedProduct/composer.json
+++ b/app/code/Magento/GroupedProduct/composer.json
@@ -3,21 +3,22 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-catalog": "0.42.0-beta3",
-        "magento/module-catalog-inventory": "0.42.0-beta3",
-        "magento/module-sales": "0.42.0-beta3",
-        "magento/module-core": "0.42.0-beta3",
-        "magento/module-checkout": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/module-eav": "0.42.0-beta3",
-        "magento/module-customer": "0.42.0-beta3",
-        "magento/module-msrp": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-catalog": "0.42.0-beta4",
+        "magento/module-catalog-inventory": "0.42.0-beta4",
+        "magento/module-sales": "0.42.0-beta4",
+        "magento/module-core": "0.42.0-beta4",
+        "magento/module-checkout": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/module-eav": "0.42.0-beta4",
+        "magento/module-customer": "0.42.0-beta4",
+        "magento/module-msrp": "0.42.0-beta4",
+        "magento/module-quote": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/GroupedProduct/etc/di.xml b/app/code/Magento/GroupedProduct/etc/di.xml
index fb11b7039c596e86560fb112292b538bd1740ec6..b63434c152b9fa611117a4a8c49716ecdc2b6129 100644
--- a/app/code/Magento/GroupedProduct/etc/di.xml
+++ b/app/code/Magento/GroupedProduct/etc/di.xml
@@ -13,7 +13,7 @@
             </argument>
         </arguments>
     </type>
-    <type name="Magento\Sales\Model\Quote\Item\RelatedProducts">
+    <type name="Magento\Quote\Model\Quote\Item\RelatedProducts">
         <arguments>
             <argument name="relatedProductTypes" xsi:type="array">
                 <item name="grouped" xsi:type="const">Magento\GroupedProduct\Model\Product\Type\Grouped::TYPE_CODE</item>
diff --git a/app/code/Magento/GroupedProduct/etc/module.xml b/app/code/Magento/GroupedProduct/etc/module.xml
index f28b5a0d5692d99bbbdd145789b870a458886728..8f84d994e5ae96d41d3a9ce9a789f182b4de4abc 100644
--- a/app/code/Magento/GroupedProduct/etc/module.xml
+++ b/app/code/Magento/GroupedProduct/etc/module.xml
@@ -11,6 +11,7 @@
             <module name="Magento_Catalog"/>
             <module name="Magento_CatalogInventory"/>
             <module name="Magento_Sales"/>
+            <module name="Magento_Quote"/>
         </sequence>
     </module>
 </config>
diff --git a/app/code/Magento/GroupedProduct/view/adminhtml/templates/catalog/product/composite/fieldset/grouped.phtml b/app/code/Magento/GroupedProduct/view/adminhtml/templates/catalog/product/composite/fieldset/grouped.phtml
index 227515794af60b326ecd0c496955e812ecbfc045..11465a7d2396956b83b75ab5941f928473d5991d 100644
--- a/app/code/Magento/GroupedProduct/view/adminhtml/templates/catalog/product/composite/fieldset/grouped.phtml
+++ b/app/code/Magento/GroupedProduct/view/adminhtml/templates/catalog/product/composite/fieldset/grouped.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
  ?>
 
 <?php /* @var $this \Magento\GroupedProduct\Block\Adminhtml\Product\Composite\Fieldset\Grouped */ ?>
diff --git a/app/code/Magento/GroupedProduct/view/adminhtml/templates/product/grouped/grouped.phtml b/app/code/Magento/GroupedProduct/view/adminhtml/templates/product/grouped/grouped.phtml
index af984f3c1bbd61ea190a97bd4094f89eaa47a0d4..c3b4134cfbe2f0500b3f82d2a5ec320e40eb0586 100644
--- a/app/code/Magento/GroupedProduct/view/adminhtml/templates/product/grouped/grouped.phtml
+++ b/app/code/Magento/GroupedProduct/view/adminhtml/templates/product/grouped/grouped.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Framework\View\Element\Template */
 
 /** @var $this \Magento\Framework\View\Element\Template */
diff --git a/app/code/Magento/GroupedProduct/view/adminhtml/templates/product/stock/disabler.phtml b/app/code/Magento/GroupedProduct/view/adminhtml/templates/product/stock/disabler.phtml
index 6e878f2b2348e675858290963b107fa8596db415..749c5d6da791807c021f044b33b6188e4e4d921a 100644
--- a/app/code/Magento/GroupedProduct/view/adminhtml/templates/product/stock/disabler.phtml
+++ b/app/code/Magento/GroupedProduct/view/adminhtml/templates/product/stock/disabler.phtml
@@ -4,7 +4,7 @@
  * See COPYING.txt for license details.
  */
 ?>
-<script type="text/javascript">
+<script>
 require(['jquery'], function($){
     $('[data-tab-panel=product-details]').on('stockbeforedisable', function(e) {
         if (e.productType === 'grouped') {
diff --git a/app/code/Magento/GroupedProduct/view/base/templates/product/price/final_price.phtml b/app/code/Magento/GroupedProduct/view/base/templates/product/price/final_price.phtml
index e5a522a2241bf879ed061774a81ccaf0a9bf741b..2d2fd99f62dbb6b917961c132dc389120d47b343 100644
--- a/app/code/Magento/GroupedProduct/view/base/templates/product/price/final_price.phtml
+++ b/app/code/Magento/GroupedProduct/view/base/templates/product/price/final_price.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Template for displaying grouped product price
  */
diff --git a/app/code/Magento/GroupedProduct/view/frontend/templates/product/view/type/default.phtml b/app/code/Magento/GroupedProduct/view/frontend/templates/product/view/type/default.phtml
index 6e4bfd48d9479f6a5ce4a727a3e294a179d80fa0..95b5c5e5006567f25fdb62d55673bb53649b36b6 100644
--- a/app/code/Magento/GroupedProduct/view/frontend/templates/product/view/type/default.phtml
+++ b/app/code/Magento/GroupedProduct/view/frontend/templates/product/view/type/default.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /* @var $this \Magento\Catalog\Block\Product\View\AbstractView */?>
 <?php $_product = $this->getProduct() ?>
diff --git a/app/code/Magento/GroupedProduct/view/frontend/templates/product/view/type/grouped.phtml b/app/code/Magento/GroupedProduct/view/frontend/templates/product/view/type/grouped.phtml
index f345a7cef3005290e730a858bcf7c51882ff196b..edc0122cabe56955edd50cb338776cb9bdb1a4c3 100644
--- a/app/code/Magento/GroupedProduct/view/frontend/templates/product/view/type/grouped.phtml
+++ b/app/code/Magento/GroupedProduct/view/frontend/templates/product/view/type/grouped.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Grouped product data template
  *
diff --git a/app/code/Magento/ImportExport/Block/Adminhtml/Export/Filter.php b/app/code/Magento/ImportExport/Block/Adminhtml/Export/Filter.php
index 578407449813ab5126cb7ddea0a3d746a08be4f9..c4f2d1ab861a75f235ec17169cfe1a445ee8f196 100644
--- a/app/code/Magento/ImportExport/Block/Adminhtml/Export/Filter.php
+++ b/app/code/Magento/ImportExport/Block/Adminhtml/Export/Filter.php
@@ -210,6 +210,7 @@ class Filter extends \Magento\Backend\Block\Widget\Grid\Extended
      * @param Attribute $attribute
      * @param mixed $value
      * @return string
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     protected function _getSelectHtmlWithValue(Attribute $attribute, $value)
     {
@@ -323,6 +324,7 @@ class Filter extends \Magento\Backend\Block\Widget\Grid\Extended
      * @param \Magento\Framework\Object $column
      * @param boolean $isExport
      * @return string
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function decorateFilter($value, Attribute $row, \Magento\Framework\Object $column, $isExport)
     {
diff --git a/app/code/Magento/ImportExport/Controller/Adminhtml/Import/Validate.php b/app/code/Magento/ImportExport/Controller/Adminhtml/Import/Validate.php
index c80bf415a60471136ab8a3495de88bceb135f90a..35c8fd607b04e7449529b804a29919275b70508b 100644
--- a/app/code/Magento/ImportExport/Controller/Adminhtml/Import/Validate.php
+++ b/app/code/Magento/ImportExport/Controller/Adminhtml/Import/Validate.php
@@ -63,12 +63,6 @@ class Validate extends \Magento\ImportExport\Controller\Adminhtml\Import
             $resultBlock->addAction(
                 'show',
                 'import_validation_container'
-            )->addAction(
-                'clear',
-                [
-                    \Magento\ImportExport\Model\Import::FIELD_NAME_SOURCE_FILE,
-                    \Magento\ImportExport\Model\Import::FIELD_NAME_IMG_ARCHIVE_FILE
-                ]
             );
 
             try {
diff --git a/app/code/Magento/ImportExport/Helper/Data.php b/app/code/Magento/ImportExport/Helper/Data.php
index 6000763b63598824fa45f72c9a1c678c91882675..43ec77d4f66f10c73bc0f8f8e3054da28813b29d 100644
--- a/app/code/Magento/ImportExport/Helper/Data.php
+++ b/app/code/Magento/ImportExport/Helper/Data.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\ImportExport\Helper;
 
 /**
diff --git a/app/code/Magento/ImportExport/Model/Export.php b/app/code/Magento/ImportExport/Model/Export.php
index 21cfc97d95726bc5231f83bdfe3dea9a7ab6b0c9..6abad2c2ee392421d5938a520f7d649d1ea0e296 100644
--- a/app/code/Magento/ImportExport/Model/Export.php
+++ b/app/code/Magento/ImportExport/Model/Export.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\ImportExport\Model;
 
 /**
diff --git a/app/code/Magento/ImportExport/Model/Export/AbstractEntity.php b/app/code/Magento/ImportExport/Model/Export/AbstractEntity.php
index 283f27d5e523658b7b216dde850f51a2af9d8a05..7241c25053d9dc8c567ba7a65fd5bdcae43d156f 100644
--- a/app/code/Magento/ImportExport/Model/Export/AbstractEntity.php
+++ b/app/code/Magento/ImportExport/Model/Export/AbstractEntity.php
@@ -5,12 +5,15 @@
  */
 namespace Magento\ImportExport\Model\Export;
 
+use Magento\Eav\Model\Entity\Attribute\AbstractAttribute;
 use Magento\ImportExport\Model\Export\Adapter\AbstractAdapter;
+use Magento\ImportExport\Model\Export;
 
 /**
  * Export entity abstract model
  *
  * @author      Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.TooManyFields)
  */
 abstract class AbstractEntity
 {
@@ -154,12 +157,27 @@ abstract class AbstractEntity
      */
     protected $_scopeConfig;
 
+    /**
+     * Attribute code to its values. Only attributes with options and only default store values used
+     *
+     * @var array
+     */
+    protected $_attributeCodes = null;
+
+    /**
+     * Permanent entity columns
+     *
+     * @var string[]
+     */
+    protected $_permanentAttributes = [];
+
     /**
      * @param \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig
      * @param \Magento\Store\Model\StoreManagerInterface $storeManager
      * @param \Magento\ImportExport\Model\Export\Factory $collectionFactory
      * @param \Magento\ImportExport\Model\Resource\CollectionByPagesIteratorFactory $resourceColFactory
      * @param array $data
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function __construct(
         \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig,
@@ -276,6 +294,38 @@ abstract class AbstractEntity
         $this->_byPagesIterator->iterate($collection, $this->_pageSize, [[$this, 'exportItem']]);
     }
 
+    /**
+     * Get attributes codes which are appropriate for export
+     *
+     * @return array
+     */
+    protected function _getExportAttributeCodes()
+    {
+        if (null === $this->_attributeCodes) {
+            if (!empty($this->_parameters[Export::FILTER_ELEMENT_SKIP])
+                && is_array($this->_parameters[Export::FILTER_ELEMENT_SKIP])
+            ) {
+                $skippedAttributes = array_flip(
+                    $this->_parameters[Export::FILTER_ELEMENT_SKIP]
+                );
+            } else {
+                $skippedAttributes = [];
+            }
+            $attributeCodes = [];
+
+            /** @var $attribute AbstractAttribute */
+            foreach ($this->filterAttributeCollection($this->getAttributeCollection()) as $attribute) {
+                if (!isset($skippedAttributes[$attribute->getAttributeId()])
+                    || in_array($attribute->getAttributeCode(), $this->_permanentAttributes)
+                ) {
+                    $attributeCodes[] = $attribute->getAttributeCode();
+                }
+            }
+            $this->_attributeCodes = $attributeCodes;
+        }
+        return $this->_attributeCodes;
+    }
+
     /**
      * Entity type code getter
      *
diff --git a/app/code/Magento/ImportExport/Model/Export/Adapter/AbstractAdapter.php b/app/code/Magento/ImportExport/Model/Export/Adapter/AbstractAdapter.php
index 715d06f80402a6f0e5af667f50f0fa7b34b6f9f7..51b3a8a9a4690cf9f09083d6a46ca118c729615a 100644
--- a/app/code/Magento/ImportExport/Model/Export/Adapter/AbstractAdapter.php
+++ b/app/code/Magento/ImportExport/Model/Export/Adapter/AbstractAdapter.php
@@ -109,6 +109,7 @@ abstract class AbstractAdapter
      *
      * @param array $headerColumns
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function setHeaderCols(array $headerColumns)
     {
diff --git a/app/code/Magento/ImportExport/Model/Export/Entity/AbstractEav.php b/app/code/Magento/ImportExport/Model/Export/Entity/AbstractEav.php
index ec4c6111a5771f2a4af168ab3b33840539a74fcf..8803d34fc3d7061be086a9d5ad8c2627ac41377b 100644
--- a/app/code/Magento/ImportExport/Model/Export/Entity/AbstractEav.php
+++ b/app/code/Magento/ImportExport/Model/Export/Entity/AbstractEav.php
@@ -14,6 +14,7 @@ use Magento\Store\Model\Store;
  * Export EAV entity abstract model
  *
  * @author      Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 abstract class AbstractEav extends \Magento\ImportExport\Model\Export\AbstractEntity
 {
@@ -24,13 +25,6 @@ abstract class AbstractEav extends \Magento\ImportExport\Model\Export\AbstractEn
      */
     protected $_attributeValues = [];
 
-    /**
-     * Attribute code to its values. Only attributes with options and only default store values used
-     *
-     * @var array
-     */
-    protected $_attributeCodes = null;
-
     /**
      * Entity type id.
      *
@@ -45,13 +39,6 @@ abstract class AbstractEav extends \Magento\ImportExport\Model\Export\AbstractEn
      */
     protected $_indexValueAttributes = [];
 
-    /**
-     * Permanent entity columns
-     *
-     * @var string[]
-     */
-    protected $_permanentAttributes = [];
-
     /**
      * @var \Magento\Framework\Stdlib\DateTime\TimezoneInterface
      */
@@ -85,43 +72,6 @@ abstract class AbstractEav extends \Magento\ImportExport\Model\Export\AbstractEn
         }
     }
 
-    /**
-     * Get attributes codes which are appropriate for export
-     *
-     * @return array
-     */
-    protected function _getExportAttributeCodes()
-    {
-        if (null === $this->_attributeCodes) {
-            if (!empty($this->_parameters[Export::FILTER_ELEMENT_SKIP]) && is_array(
-                $this->_parameters[Export::FILTER_ELEMENT_SKIP]
-            )
-            ) {
-                $skippedAttributes = array_flip(
-                    $this->_parameters[Export::FILTER_ELEMENT_SKIP]
-                );
-            } else {
-                $skippedAttributes = [];
-            }
-            $attributeCodes = [];
-
-            /** @var $attribute AbstractAttribute */
-            foreach ($this->filterAttributeCollection($this->getAttributeCollection()) as $attribute) {
-                if (!isset(
-                    $skippedAttributes[$attribute->getAttributeId()]
-                ) || in_array(
-                    $attribute->getAttributeCode(),
-                    $this->_permanentAttributes
-                )
-                ) {
-                    $attributeCodes[] = $attribute->getAttributeCode();
-                }
-            }
-            $this->_attributeCodes = $attributeCodes;
-        }
-        return $this->_attributeCodes;
-    }
-
     /**
      * Initialize attribute option values
      *
@@ -154,6 +104,7 @@ abstract class AbstractEav extends \Magento\ImportExport\Model\Export\AbstractEn
      *
      * @param AbstractCollection $collection
      * @return AbstractCollection
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function filterEntityCollection(AbstractCollection $collection)
     {
diff --git a/app/code/Magento/ImportExport/Model/Export/Entity/AbstractEntity.php b/app/code/Magento/ImportExport/Model/Export/Entity/AbstractEntity.php
index 0adea8ff300f690cf349bb5613524b27e38a4193..584b19dc908930fcfb0cba7c1b977e22490d9274 100644
--- a/app/code/Magento/ImportExport/Model/Export/Entity/AbstractEntity.php
+++ b/app/code/Magento/ImportExport/Model/Export/Entity/AbstractEntity.php
@@ -11,6 +11,8 @@ use Magento\ImportExport\Model\Export\Adapter\AbstractAdapter;
  * Export entity abstract model
  *
  * @author      Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.TooManyFields)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 abstract class AbstractEntity
 {
@@ -244,6 +246,7 @@ abstract class AbstractEntity
      *
      * @param \Magento\Eav\Model\Entity\Collection\AbstractCollection $collection
      * @return \Magento\Eav\Model\Entity\Collection\AbstractCollection
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _prepareEntityCollection(\Magento\Eav\Model\Entity\Collection\AbstractCollection $collection)
     {
diff --git a/app/code/Magento/ImportExport/Model/Export/Entity/Factory.php b/app/code/Magento/ImportExport/Model/Export/Entity/Factory.php
index 751da52806ae7a668c52c16c410fd3ed65dc1236..dd377a1235de87f9d564e7bf63126b6926bff615 100644
--- a/app/code/Magento/ImportExport/Model/Export/Entity/Factory.php
+++ b/app/code/Magento/ImportExport/Model/Export/Entity/Factory.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Export entity factory
  */
diff --git a/app/code/Magento/ImportExport/Model/Import.php b/app/code/Magento/ImportExport/Model/Import.php
index 743492a45e6b264cb6b1dc76b96a9e22c3691f77..69d0912b2d22e3f1716dc453b466d6a88187a5ff 100644
--- a/app/code/Magento/ImportExport/Model/Import.php
+++ b/app/code/Magento/ImportExport/Model/Import.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\ImportExport\Model;
 
 use Magento\Framework\App\Filesystem\DirectoryList;
@@ -15,6 +18,7 @@ use Magento\Framework\HTTP\Adapter\FileTransferFactory;
  *
  * @method string getBehavior() getBehavior()
  * @method \Magento\ImportExport\Model\Import setEntity() setEntity(string $value)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Import extends \Magento\ImportExport\Model\AbstractModel
 {
@@ -124,6 +128,7 @@ class Import extends \Magento\ImportExport\Model\AbstractModel
      * @param Source\Import\Behavior\Factory $behaviorFactory
      * @param \Magento\Indexer\Model\IndexerRegistry $indexerRegistry
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Psr\Log\LoggerInterface $logger,
diff --git a/app/code/Magento/ImportExport/Model/Import/AbstractEntity.php b/app/code/Magento/ImportExport/Model/Import/AbstractEntity.php
index e52bff681c7fcb7cad69c2fe95d2a5d4e10791a1..4285ddd4224050551ab26e86dfcfb7981c0c1b03 100644
--- a/app/code/Magento/ImportExport/Model/Import/AbstractEntity.php
+++ b/app/code/Magento/ImportExport/Model/Import/AbstractEntity.php
@@ -8,6 +8,8 @@ namespace Magento\ImportExport\Model\Import;
 
 /**
  * Import entity abstract model
+ * @SuppressWarnings(PHPMD.TooManyFields)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 abstract class AbstractEntity
 {
@@ -244,6 +246,7 @@ abstract class AbstractEntity
      * @param \Magento\ImportExport\Model\Resource\Helper $resourceHelper
      * @param \Magento\Framework\App\Resource $resource
      * @param array $data
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function __construct(
         \Magento\Core\Helper\Data $coreData,
@@ -319,6 +322,8 @@ abstract class AbstractEntity
      * Validate data rows and save bunches to DB
      *
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _saveValidatedBunches()
     {
@@ -596,6 +601,7 @@ abstract class AbstractEntity
      * @param array $rowData Row data
      * @param int $rowNumber
      * @return bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function isAttributeValid($attributeCode, array $attributeParams, array $rowData, $rowNumber)
     {
diff --git a/app/code/Magento/ImportExport/Model/Import/Entity/AbstractEav.php b/app/code/Magento/ImportExport/Model/Import/Entity/AbstractEav.php
index defdbc98c945d8a7b2b25fbfbc39e1d40ba90c23..1345aa9c341d26fa3fa84c5412fc6bfa34259ca7 100644
--- a/app/code/Magento/ImportExport/Model/Import/Entity/AbstractEav.php
+++ b/app/code/Magento/ImportExport/Model/Import/Entity/AbstractEav.php
@@ -7,6 +7,7 @@ namespace Magento\ImportExport\Model\Import\Entity;
 
 /**
  * Import EAV entity abstract model
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 abstract class AbstractEav extends \Magento\ImportExport\Model\Import\AbstractEntity
 {
@@ -82,6 +83,7 @@ abstract class AbstractEav extends \Magento\ImportExport\Model\Import\AbstractEn
      * @param \Magento\ImportExport\Model\Export\Factory $collectionFactory
      * @param \Magento\Eav\Model\Config $eavConfig
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Core\Helper\Data $coreData,
diff --git a/app/code/Magento/ImportExport/Model/Import/Entity/AbstractEntity.php b/app/code/Magento/ImportExport/Model/Import/Entity/AbstractEntity.php
index e2b48ff43fad41fc18099a9d38e14e84b3160bae..bdb200723d9b9893a7ef5df648452b1f076a2bd5 100644
--- a/app/code/Magento/ImportExport/Model/Import/Entity/AbstractEntity.php
+++ b/app/code/Magento/ImportExport/Model/Import/Entity/AbstractEntity.php
@@ -9,6 +9,8 @@ use Magento\ImportExport\Model\Import\AbstractSource;
 
 /**
  * Import entity abstract model
+ * @SuppressWarnings(PHPMD.TooManyFields)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 abstract class AbstractEntity
 {
@@ -257,6 +259,7 @@ abstract class AbstractEntity
      *
      * @param array $rowData
      * @return bool
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     protected function _isRowScopeDefault(array $rowData)
     {
@@ -288,6 +291,7 @@ abstract class AbstractEntity
      * Validate data rows and save bunches to DB.
      *
      * @return $this|void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _saveValidatedBunches()
     {
@@ -574,6 +578,7 @@ abstract class AbstractEntity
      * @param array $rowData Row data
      * @param int $rowNum
      * @return boolean
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function isAttributeValid($attrCode, array $attrParams, array $rowData, $rowNum)
     {
diff --git a/app/code/Magento/ImportExport/Model/Import/Entity/Factory.php b/app/code/Magento/ImportExport/Model/Import/Entity/Factory.php
index 38d3b5a1edd5fc6e5df35b7695894c52ec28df75..d07e8c13081d812397f0e52cc425cee48cb9db7e 100644
--- a/app/code/Magento/ImportExport/Model/Import/Entity/Factory.php
+++ b/app/code/Magento/ImportExport/Model/Import/Entity/Factory.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Import entity factory
  */
diff --git a/app/code/Magento/ImportExport/composer.json b/app/code/Magento/ImportExport/composer.json
index 89e4b1aab980510822a89ccc9849d16e81efe31b..cf1edd4bf677045853afd1798e2fe0ad5740ab43 100644
--- a/app/code/Magento/ImportExport/composer.json
+++ b/app/code/Magento/ImportExport/composer.json
@@ -3,17 +3,17 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-core": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/module-eav": "0.42.0-beta3",
-        "magento/module-indexer": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-core": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/module-eav": "0.42.0-beta4",
+        "magento/module-indexer": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "ext-ctype": "*",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/ImportExport/view/adminhtml/templates/export/form/after.phtml b/app/code/Magento/ImportExport/view/adminhtml/templates/export/form/after.phtml
index 32873a220f156c0718749dda875e0b9cfebe10e5..a92ec76485195771250e41872ad9599d1a7942b9 100644
--- a/app/code/Magento/ImportExport/view/adminhtml/templates/export/form/after.phtml
+++ b/app/code/Magento/ImportExport/view/adminhtml/templates/export/form/after.phtml
@@ -17,7 +17,7 @@
         echo __('Continue')
     ?></span></button>
 </fieldset>
-<script type="text/javascript">
+<script>
 require(['prototype'], function(){
 
 //<![CDATA[
diff --git a/app/code/Magento/ImportExport/view/adminhtml/templates/export/form/before.phtml b/app/code/Magento/ImportExport/view/adminhtml/templates/export/form/before.phtml
index c49c574e3b038bad7dfc70ef03aa9a9cfb7ef88a..60cef499d263d6f6b70df8108203db16628f81f3 100644
--- a/app/code/Magento/ImportExport/view/adminhtml/templates/export/form/before.phtml
+++ b/app/code/Magento/ImportExport/view/adminhtml/templates/export/form/before.phtml
@@ -4,7 +4,7 @@
  * See COPYING.txt for license details.
  */
 ?>
-<script type="text/javascript">
+<script>
 require(['prototype'], function(){
 
 //<![CDATA[
diff --git a/app/code/Magento/ImportExport/view/adminhtml/templates/export/form/filter/after.phtml b/app/code/Magento/ImportExport/view/adminhtml/templates/export/form/filter/after.phtml
index 4f7fc39241c8ccffe611f2b10aa35125645c5885..08f4d9c572593d2eb56605ba710ba83943f49d69 100644
--- a/app/code/Magento/ImportExport/view/adminhtml/templates/export/form/filter/after.phtml
+++ b/app/code/Magento/ImportExport/view/adminhtml/templates/export/form/filter/after.phtml
@@ -4,7 +4,7 @@
  * See COPYING.txt for license details.
  */
 ?>
-<script type="text/javascript">
+<script>
 //<![CDATA[
 if (window['export_filter_gridJsObject'] != undefined) {
     export_filter_gridJsObject.resetFilter = function () {
diff --git a/app/code/Magento/ImportExport/view/adminhtml/templates/import/form/after.phtml b/app/code/Magento/ImportExport/view/adminhtml/templates/import/form/after.phtml
index eb7a9a67972ab518f58cbf854b5dd5ab2903da88..bfc09cbbdf22a7bb7f7ab0489f4a5ecaec17f765 100644
--- a/app/code/Magento/ImportExport/view/adminhtml/templates/import/form/after.phtml
+++ b/app/code/Magento/ImportExport/view/adminhtml/templates/import/form/after.phtml
@@ -11,7 +11,7 @@
     </div><br>
     <div id="import_validation_messages" class="fieldset "><!-- --></div>
 </div>
-<script type="text/javascript">
+<script>
 require(['jquery', 'prototype'], function(jQuery){
 //<![CDATA[
     varienImport.resetSelectIndex('entity'); // forced resetting entity selector after page refresh
diff --git a/app/code/Magento/ImportExport/view/adminhtml/templates/import/form/before.phtml b/app/code/Magento/ImportExport/view/adminhtml/templates/import/form/before.phtml
index 267547afa9320ddd25784f0a5cd6b767cce7fb25..a1af82242490bc64d7c630a72596bcff5d00d366 100644
--- a/app/code/Magento/ImportExport/view/adminhtml/templates/import/form/before.phtml
+++ b/app/code/Magento/ImportExport/view/adminhtml/templates/import/form/before.phtml
@@ -7,7 +7,7 @@
 <?php
 /** @var $this \Magento\ImportExport\Block\Adminhtml\Import\Edit\Before */
 ?>
-<script type="text/javascript">
+<script>
 require(['jquery', 'prototype'], function(jQuery){
 
 //<![CDATA[
diff --git a/app/code/Magento/Indexer/Model/Processor/InvalidateCache.php b/app/code/Magento/Indexer/Model/Processor/InvalidateCache.php
index 233559a219a8f20555d675bc1eec12950bb80448..df397b3f720fd5cd0746dad8fd9c5ed10ed51767 100644
--- a/app/code/Magento/Indexer/Model/Processor/InvalidateCache.php
+++ b/app/code/Magento/Indexer/Model/Processor/InvalidateCache.php
@@ -46,6 +46,7 @@ class InvalidateCache
      *
      * @param \Magento\Indexer\Model\Processor $subject
      * @return void
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function afterUpdateMview(\Magento\Indexer\Model\Processor $subject)
     {
diff --git a/app/code/Magento/Indexer/composer.json b/app/code/Magento/Indexer/composer.json
index 98cc0400270d64ccc74c9e9faea2ab02b8da6f3d..3639c8c5acc7463bcb5a49c1cac4b231fe867646 100644
--- a/app/code/Magento/Indexer/composer.json
+++ b/app/code/Magento/Indexer/composer.json
@@ -3,13 +3,13 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/module-page-cache": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/module-page-cache": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/Integration/Controller/Adminhtml/Integration/LoginSuccessCallback.php b/app/code/Magento/Integration/Controller/Adminhtml/Integration/LoginSuccessCallback.php
index b31cfa268a5ec6493d22ad2fbd6c0e3bbec1186b..7b72344442057760cf3bd644b6d4644427c95a32 100644
--- a/app/code/Magento/Integration/Controller/Adminhtml/Integration/LoginSuccessCallback.php
+++ b/app/code/Magento/Integration/Controller/Adminhtml/Integration/LoginSuccessCallback.php
@@ -15,6 +15,6 @@ class LoginSuccessCallback extends \Magento\Integration\Controller\Adminhtml\Int
      */
     public function execute()
     {
-        $this->getResponse()->setBody('<script type="text/javascript">setTimeout("self.close()",1000);</script>');
+        $this->getResponse()->setBody('<script>setTimeout("self.close()",1000);</script>');
     }
 }
diff --git a/app/code/Magento/Integration/composer.json b/app/code/Magento/Integration/composer.json
index 39da0e6194a83f5863e4f35372c5299e1b6e0ca2..5173a1289899445da8a7731b62e3cbd400cb9157 100644
--- a/app/code/Magento/Integration/composer.json
+++ b/app/code/Magento/Integration/composer.json
@@ -3,17 +3,17 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-core": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/module-customer": "0.42.0-beta3",
-        "magento/module-user": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
-        "magento/module-authorization": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-core": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/module-customer": "0.42.0-beta4",
+        "magento/module-user": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
+        "magento/module-authorization": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/Integration/view/adminhtml/templates/integration/popup_container.phtml b/app/code/Magento/Integration/view/adminhtml/templates/integration/popup_container.phtml
index bdd23ba76a3cf09a68140db43119d0a7c5cda88c..9617469d0593c61fb0bf5102a4abf106a8f5d02a 100644
--- a/app/code/Magento/Integration/view/adminhtml/templates/integration/popup_container.phtml
+++ b/app/code/Magento/Integration/view/adminhtml/templates/integration/popup_container.phtml
@@ -8,7 +8,7 @@
  * @var \Magento\Backend\Block\Template $this
  */
 ?>
-<script type="text/javascript">
+<script>
 require([
     "jquery",
     "jquery/ui",
diff --git a/app/code/Magento/Integration/view/adminhtml/templates/integration/tokens_exchange.phtml b/app/code/Magento/Integration/view/adminhtml/templates/integration/tokens_exchange.phtml
index 0d6bf6a6041fcb92818b0ed82d563e6372309340..cfc1c7b134e7e7aaedd810f7d46d822cf09a2e69 100644
--- a/app/code/Magento/Integration/view/adminhtml/templates/integration/tokens_exchange.phtml
+++ b/app/code/Magento/Integration/view/adminhtml/templates/integration/tokens_exchange.phtml
@@ -7,5 +7,8 @@
  *
  * @var \Magento\Backend\Block\Template $this
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <div><p><?php echo __("Please setup or sign in into your 3rd party account to complete setup of this integration."); ?></p></div>
diff --git a/app/code/Magento/LayeredNavigation/composer.json b/app/code/Magento/LayeredNavigation/composer.json
index a4cf2dc2cef49b0fd30cf34a060974b0f9b9cfa8..076de1684536d16b841880998fd83f75951f2e54 100644
--- a/app/code/Magento/LayeredNavigation/composer.json
+++ b/app/code/Magento/LayeredNavigation/composer.json
@@ -3,13 +3,13 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-catalog": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-catalog": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/LayeredNavigation/view/frontend/templates/layer/filter.phtml b/app/code/Magento/LayeredNavigation/view/frontend/templates/layer/filter.phtml
index b604f334f5376ded65ca962400b719f2277a3778..b87ca94f8b4bb95605aa6c70ad3a45728b3d0a20 100644
--- a/app/code/Magento/LayeredNavigation/view/frontend/templates/layer/filter.phtml
+++ b/app/code/Magento/LayeredNavigation/view/frontend/templates/layer/filter.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/LayeredNavigation/view/frontend/templates/layer/state.phtml b/app/code/Magento/LayeredNavigation/view/frontend/templates/layer/state.phtml
index f8213d988d5aecc4d9a13db393533dac6c667957..970c7bcb9d8bc1de3c9c47828ebb4d33a9ac84b6 100644
--- a/app/code/Magento/LayeredNavigation/view/frontend/templates/layer/state.phtml
+++ b/app/code/Magento/LayeredNavigation/view/frontend/templates/layer/state.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/LayeredNavigation/view/frontend/templates/layer/view.phtml b/app/code/Magento/LayeredNavigation/view/frontend/templates/layer/view.phtml
index ba471a9a2815fd8bdae4f077417c255f666b6bf5..20e288a9115fb07e2085ea13e2076d4ff62ae762 100644
--- a/app/code/Magento/LayeredNavigation/view/frontend/templates/layer/view.phtml
+++ b/app/code/Magento/LayeredNavigation/view/frontend/templates/layer/view.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/Log/Model/Aggregation.php b/app/code/Magento/Log/Model/Aggregation.php
index 9fa40f6d3ad93230bc3ab1cce2f139f1f86d249c..30046eeb81353401489020c17e019ec12b862301 100644
--- a/app/code/Magento/Log/Model/Aggregation.php
+++ b/app/code/Magento/Log/Model/Aggregation.php
@@ -75,6 +75,7 @@ class Aggregation extends \Magento\Framework\Model\AbstractModel
      *
      * @param  string $lastDate
      * @return null|void
+     * @SuppressWarnings(PHPMD.UnusedPrivateMethod)
      */
     private function _removeEmpty($lastDate)
     {
@@ -186,6 +187,7 @@ class Aggregation extends \Magento\Framework\Model\AbstractModel
      * @param int|string $in
      * @param null $offset
      * @return bool|string
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     private function _date($in, $offset = null)
     {
@@ -202,6 +204,7 @@ class Aggregation extends \Magento\Framework\Model\AbstractModel
      * @param int|string $in
      * @param null $offset
      * @return int
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     private function _timestamp($in, $offset = null)
     {
diff --git a/app/code/Magento/Log/Model/Cron.php b/app/code/Magento/Log/Model/Cron.php
index dcf9c7501c8ac290de1e521247cd5dbc3cc8bbe3..80396b78c15d65db02107c5660b066aa72969fa8 100644
--- a/app/code/Magento/Log/Model/Cron.php
+++ b/app/code/Magento/Log/Model/Cron.php
@@ -66,6 +66,7 @@ class Cron extends \Magento\Framework\Model\AbstractModel
      * @param \Magento\Framework\Model\Resource\AbstractResource $resource
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
diff --git a/app/code/Magento/Log/Model/Resource/Log.php b/app/code/Magento/Log/Model/Resource/Log.php
index 72e43569fc8d355ecadb8f758e0a94f427a1a0fb..a5f9996ba45631d8e930ae89197f9e1edcae9f0a 100644
--- a/app/code/Magento/Log/Model/Resource/Log.php
+++ b/app/code/Magento/Log/Model/Resource/Log.php
@@ -131,6 +131,7 @@ class Log extends \Magento\Framework\Model\Resource\Db\AbstractDb
      *
      * @param int $time
      * @return $this
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _cleanCustomers($time)
     {
diff --git a/app/code/Magento/Log/Model/Resource/Visitor/Collection.php b/app/code/Magento/Log/Model/Resource/Visitor/Collection.php
index 379fabc98cedf29585c9816a4ff4d832ddeea454..a067aa6865dea50793277a9c61ea428d07e22494 100644
--- a/app/code/Magento/Log/Model/Resource/Visitor/Collection.php
+++ b/app/code/Magento/Log/Model/Resource/Visitor/Collection.php
@@ -173,6 +173,7 @@ class Collection extends \Magento\Framework\Model\Resource\Db\Collection\Abstrac
      * Return true if online filter used
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsOnlineFilterUsed()
     {
diff --git a/app/code/Magento/Log/Model/Resource/Visitor/Online.php b/app/code/Magento/Log/Model/Resource/Visitor/Online.php
index 69060784d35c30c6cc3cf13432d9926e22fd1a5b..ffdfe18859e6a8d64858130694b0485f33079e16 100644
--- a/app/code/Magento/Log/Model/Resource/Visitor/Online.php
+++ b/app/code/Magento/Log/Model/Resource/Visitor/Online.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Log\Model\Resource\Visitor;
 
 /**
@@ -43,6 +46,7 @@ class Online extends \Magento\Framework\Model\Resource\Db\AbstractDb
      * @param \Magento\Log\Model\Visitor\Online $object
      * @return $this
      * @throws \Exception
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public function prepare(\Magento\Log\Model\Visitor\Online $object)
     {
diff --git a/app/code/Magento/Log/Model/Visitor.php b/app/code/Magento/Log/Model/Visitor.php
index c22caad70e98e05f93d5d8db0586bafe74232d27..ddd051f7ba5c3703625e49e65ac9510caefe296c 100644
--- a/app/code/Magento/Log/Model/Visitor.php
+++ b/app/code/Magento/Log/Model/Visitor.php
@@ -63,6 +63,7 @@ class Visitor extends \Magento\Framework\Model\AbstractModel
      * @param \Magento\Framework\Model\Resource\AbstractResource $resource
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
diff --git a/app/code/Magento/Log/composer.json b/app/code/Magento/Log/composer.json
index 4bf9ba061b87fc64c85a36fb5abd091ad00e9142..5217997ddac9441daa4a223c3afd6e70be0488aa 100644
--- a/app/code/Magento/Log/composer.json
+++ b/app/code/Magento/Log/composer.json
@@ -3,16 +3,16 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-core": "0.42.0-beta3",
-        "magento/module-customer": "0.42.0-beta3",
-        "magento/module-eav": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-core": "0.42.0-beta4",
+        "magento/module-customer": "0.42.0-beta4",
+        "magento/module-eav": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/Log/view/adminhtml/templates/customer/status.phtml b/app/code/Magento/Log/view/adminhtml/templates/customer/status.phtml
index d07c88fe1b38c57eee0fbd44b7f526a76e71cca8..aac139b1a3cd8932d6b7b132178d45e5f292e793 100644
--- a/app/code/Magento/Log/view/adminhtml/templates/customer/status.phtml
+++ b/app/code/Magento/Log/view/adminhtml/templates/customer/status.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Template for block \Magento\Log\Block\Adminhtml\Customer\Edit\Tab\View\Status
  */
diff --git a/app/code/Magento/Log/view/adminhtml/templates/online.phtml b/app/code/Magento/Log/view/adminhtml/templates/online.phtml
index 9228aa320afa5a3a1b7e14c79d3773991984487f..1d27f92b1d57cdd4045ec77cdb17e900c03c669d 100644
--- a/app/code/Magento/Log/view/adminhtml/templates/online.phtml
+++ b/app/code/Magento/Log/view/adminhtml/templates/online.phtml
@@ -3,5 +3,8 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php echo $this->getChildHtml('grid') ?>
diff --git a/app/code/Magento/Msrp/Model/Observer/Frontend/Quote/SetCanApplyMsrp.php b/app/code/Magento/Msrp/Model/Observer/Frontend/Quote/SetCanApplyMsrp.php
index bec16b28f6ffb51b4d68a0ea5319ecf221a5a1b3..36b750f2fc4af62527fd6bcee1f75e0ca6f375bc 100644
--- a/app/code/Magento/Msrp/Model/Observer/Frontend/Quote/SetCanApplyMsrp.php
+++ b/app/code/Magento/Msrp/Model/Observer/Frontend/Quote/SetCanApplyMsrp.php
@@ -31,7 +31,7 @@ class SetCanApplyMsrp
      */
     public function execute(\Magento\Framework\Event\Observer $observer)
     {
-        /** @var $quote \Magento\Sales\Model\Quote */
+        /** @var $quote \Magento\Quote\Model\Quote */
         $quote = $observer->getEvent()->getQuote();
 
         $canApplyMsrp = false;
diff --git a/app/code/Magento/Msrp/Model/Quote/Address/Total.php b/app/code/Magento/Msrp/Model/Quote/Address/Total.php
index f076c7e6d0ff585ae4c4cab0d9bfd474c1aaef15..fa3ccbd9d76da239ea8cb50fff359af875781ad1 100644
--- a/app/code/Magento/Msrp/Model/Quote/Address/Total.php
+++ b/app/code/Magento/Msrp/Model/Quote/Address/Total.php
@@ -8,7 +8,7 @@ namespace Magento\Msrp\Model\Quote\Address;
 /**
  * Msrp items total
  */
-class Total extends \Magento\Sales\Model\Quote\Address\Total\AbstractTotal
+class Total extends \Magento\Quote\Model\Quote\Address\Total\AbstractTotal
 {
     /**
      * @var \Magento\Msrp\Helper\Data
@@ -26,10 +26,10 @@ class Total extends \Magento\Sales\Model\Quote\Address\Total\AbstractTotal
     /**
      * Collect information about MSRP price enabled
      *
-     * @param  \Magento\Sales\Model\Quote\Address $address
+     * @param  \Magento\Quote\Model\Quote\Address $address
      * @return $this
      */
-    public function collect(\Magento\Sales\Model\Quote\Address $address)
+    public function collect(\Magento\Quote\Model\Quote\Address $address)
     {
         parent::collect($address);
 
diff --git a/app/code/Magento/Msrp/Plugin/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Attributes.php b/app/code/Magento/Msrp/Plugin/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Attributes.php
index 1ca4ddac5de30588112c4308a42aeffe4bc62b37..78f19112ba19bbfc81b9602acf18f917c280f115 100644
--- a/app/code/Magento/Msrp/Plugin/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Attributes.php
+++ b/app/code/Magento/Msrp/Plugin/Bundle/Block/Adminhtml/Catalog/Product/Edit/Tab/Attributes.php
@@ -21,7 +21,7 @@ class Attributes
         $mapEnabled = $subject->getForm()->getElement('msrp');
         if ($mapEnabled && $subject->getCanEditPrice() !== false) {
             $mapEnabled->setAfterElementHtml(
-                '<script type="text/javascript">' .
+                '<script>' .
                 "
                 function changePriceTypeMap() {
                     if ($('price_type').value == " . \Magento\Bundle\Model\Product\Price::PRICE_TYPE_DYNAMIC . ") {
diff --git a/app/code/Magento/Msrp/composer.json b/app/code/Magento/Msrp/composer.json
index 3d83446f5e40c398079bdb741af853cad0d2f2e7..f0ae88d6a9313dc841786629b11a14643f65e542 100644
--- a/app/code/Magento/Msrp/composer.json
+++ b/app/code/Magento/Msrp/composer.json
@@ -3,20 +3,20 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-bundle": "0.42.0-beta3",
-        "magento/module-catalog": "0.42.0-beta3",
-        "magento/module-core": "0.42.0-beta3",
-        "magento/module-downloadable": "0.42.0-beta3",
-        "magento/module-eav": "0.42.0-beta3",
-        "magento/module-grouped-product": "0.42.0-beta3",
-        "magento/module-sales": "0.42.0-beta3",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-tax": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-bundle": "0.42.0-beta4",
+        "magento/module-catalog": "0.42.0-beta4",
+        "magento/module-core": "0.42.0-beta4",
+        "magento/module-downloadable": "0.42.0-beta4",
+        "magento/module-eav": "0.42.0-beta4",
+        "magento/module-grouped-product": "0.42.0-beta4",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-tax": "0.42.0-beta4",
+        "magento/module-quote": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/Msrp/etc/catalog_attributes.xml b/app/code/Magento/Msrp/etc/catalog_attributes.xml
index 487a8d2d2c66032584275a00e87cb4f80dfa41c9..10f4fcd97b7f89c66db134199dfd5375956d1617 100644
--- a/app/code/Magento/Msrp/etc/catalog_attributes.xml
+++ b/app/code/Magento/Msrp/etc/catalog_attributes.xml
@@ -6,7 +6,7 @@
  */
 -->
 <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../Catalog/etc/catalog_attributes.xsd">
-    <group name="sales_quote_item">
+    <group name="quote_item">
         <attribute name="msrp"/>
         <attribute name="msrp_display_actual_price_type"/>
     </group>
diff --git a/app/code/Magento/Msrp/view/base/templates/product/price/msrp.phtml b/app/code/Magento/Msrp/view/base/templates/product/price/msrp.phtml
index 5bd225acf1a2bd437151334646233828e1912708..e20d53d4d9d6fa36720ea4429fd432f9e48d20af 100644
--- a/app/code/Magento/Msrp/view/base/templates/product/price/msrp.phtml
+++ b/app/code/Magento/Msrp/view/base/templates/product/price/msrp.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Template for displaying product price at product view page, gift registry and wish-list
  *
diff --git a/lib/web/css/source/lib/ui-dialog.less b/app/code/Magento/Msrp/view/base/web/css/source/module.less
similarity index 56%
rename from lib/web/css/source/lib/ui-dialog.less
rename to app/code/Magento/Msrp/view/base/web/css/source/module.less
index b5e337c8b918a7671dcbd9819f0df0a0bb3168f6..e4436118e9df0c34cd7f8f999be922da4a9eb22d 100644
--- a/lib/web/css/source/lib/ui-dialog.less
+++ b/app/code/Magento/Msrp/view/base/web/css/source/module.less
@@ -4,10 +4,10 @@
 //  */
 
 .mage-dropdown-dialog.ui-dialog {
-  .ui-dialog-content {
-    overflow: visible;
-  }
-  .ui-dialog-buttonpane {
-    padding: 0;
-  }
+    .ui-dialog-content {
+        overflow: visible;
+    }
+    .ui-dialog-buttonpane {
+        padding: 0;
+    }
 }
diff --git a/app/code/Magento/Msrp/view/frontend/templates/popup.phtml b/app/code/Magento/Msrp/view/frontend/templates/popup.phtml
index 48287e72b1d1fdec3fe70e8effad0fecde27ea10..a73e2da7bef60760adb39cc36bdd4d751a4b46f4 100644
--- a/app/code/Magento/Msrp/view/frontend/templates/popup.phtml
+++ b/app/code/Magento/Msrp/view/frontend/templates/popup.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /** @var \Magento\Msrp\Block\Popup $this */
diff --git a/app/code/Magento/Msrp/view/frontend/templates/render/item/price_msrp_item.phtml b/app/code/Magento/Msrp/view/frontend/templates/render/item/price_msrp_item.phtml
index be002953de589539a6827aa8e961afbd05b99357..3751ec3ae109cd0ae457557ea6f46e713e3dfb87 100644
--- a/app/code/Magento/Msrp/view/frontend/templates/render/item/price_msrp_item.phtml
+++ b/app/code/Magento/Msrp/view/frontend/templates/render/item/price_msrp_item.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php
diff --git a/app/code/Magento/Msrp/view/frontend/templates/render/item/price_msrp_rss.phtml b/app/code/Magento/Msrp/view/frontend/templates/render/item/price_msrp_rss.phtml
index 642bda0d48756f03fa01172f37dc0706aad13fef..d3cb59434cbac9c3dda56453eed9f02d0b54c001 100644
--- a/app/code/Magento/Msrp/view/frontend/templates/render/item/price_msrp_rss.phtml
+++ b/app/code/Magento/Msrp/view/frontend/templates/render/item/price_msrp_rss.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/Multishipping/Block/Checkout/Billing.php b/app/code/Magento/Multishipping/Block/Checkout/Billing.php
index dbe01148e7a749005e1b1986e51dd9fd1b9dedf8..b0815e26756b3429383b9fdd3050b21aa7f6e62f 100644
--- a/app/code/Magento/Multishipping/Block/Checkout/Billing.php
+++ b/app/code/Magento/Multishipping/Block/Checkout/Billing.php
@@ -98,7 +98,7 @@ class Billing extends \Magento\Payment\Block\Form\Container
     /**
      * Retrieve billing address
      *
-     * @return \Magento\Sales\Model\Quote\Address
+     * @return \Magento\Quote\Model\Quote\Address
      */
     public function getAddress()
     {
@@ -113,7 +113,7 @@ class Billing extends \Magento\Payment\Block\Form\Container
     /**
      * Retrieve quote model object
      *
-     * @return \Magento\Sales\Model\Quote
+     * @return \Magento\Quote\Model\Quote
      */
     public function getQuote()
     {
diff --git a/app/code/Magento/Multishipping/Block/Checkout/Billing/Items.php b/app/code/Magento/Multishipping/Block/Checkout/Billing/Items.php
index 0d0fcad78b37f6f64c2530abced776d5c90269f0..5368a22a5ec81f2f88ff87fd9ac83acd1a5746be 100644
--- a/app/code/Magento/Multishipping/Block/Checkout/Billing/Items.php
+++ b/app/code/Magento/Multishipping/Block/Checkout/Billing/Items.php
@@ -54,7 +54,7 @@ class Items extends \Magento\Sales\Block\Items\AbstractItems
     /**
      * Retrieve quote model object
      *
-     * @return \Magento\Sales\Model\Quote
+     * @return \Magento\Quote\Model\Quote
      */
     public function getQuote()
     {
diff --git a/app/code/Magento/Multishipping/Block/Checkout/Link.php b/app/code/Magento/Multishipping/Block/Checkout/Link.php
index 3e215684727ce68f27e698063770a5314464ce5b..d6ec7ca3cbd61c05085f14f0b9f4e24385e77083 100644
--- a/app/code/Magento/Multishipping/Block/Checkout/Link.php
+++ b/app/code/Magento/Multishipping/Block/Checkout/Link.php
@@ -41,7 +41,7 @@ class Link extends \Magento\Framework\View\Element\Template
     }
 
     /**
-     * @return \Magento\Sales\Model\Quote
+     * @return \Magento\Quote\Model\Quote
      */
     public function getQuote()
     {
diff --git a/app/code/Magento/Multishipping/Block/Checkout/Overview.php b/app/code/Magento/Multishipping/Block/Checkout/Overview.php
index 58697d47df2ee17917f07506b3ff8a6da32caef4..21d9e51815452b76c0aed6d6d089cbb4c61650a4 100644
--- a/app/code/Magento/Multishipping/Block/Checkout/Overview.php
+++ b/app/code/Magento/Multishipping/Block/Checkout/Overview.php
@@ -6,7 +6,7 @@
 namespace Magento\Multishipping\Block\Checkout;
 
 use Magento\Framework\Pricing\PriceCurrencyInterface;
-use Magento\Sales\Model\Quote\Address;
+use Magento\Quote\Model\Quote\Address;
 
 /**
  * Multishipping checkout overview information
@@ -133,6 +133,7 @@ class Overview extends \Magento\Sales\Block\Items\AbstractItems
     /**
      * @param Address $address
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getShippingAddressRate($address)
     {
@@ -305,7 +306,7 @@ class Overview extends \Magento\Sales\Block\Items\AbstractItems
     /**
      * Retrieve quote
      *
-     * @return \Magento\Sales\Model\Quote
+     * @return \Magento\Quote\Model\Quote
      */
     public function getQuote()
     {
diff --git a/app/code/Magento/Multishipping/Block/Checkout/Shipping.php b/app/code/Magento/Multishipping/Block/Checkout/Shipping.php
index b65588e6c93e29810b367efd0832a0b42175ae31..33e18d922427df1a04f301e76b11eb6ccb6b2e72 100644
--- a/app/code/Magento/Multishipping/Block/Checkout/Shipping.php
+++ b/app/code/Magento/Multishipping/Block/Checkout/Shipping.php
@@ -6,7 +6,7 @@
 namespace Magento\Multishipping\Block\Checkout;
 
 use Magento\Framework\Pricing\PriceCurrencyInterface;
-use Magento\Sales\Model\Quote\Address;
+use Magento\Quote\Model\Quote\Address;
 
 /**
  * Mustishipping checkout shipping
diff --git a/app/code/Magento/Multishipping/Controller/Checkout.php b/app/code/Magento/Multishipping/Controller/Checkout.php
index 230c7ad46c693df099342294f41a5d1b97573b17..baa5cffd12797b2e98fde9da51c8b9a49c0fcd78 100644
--- a/app/code/Magento/Multishipping/Controller/Checkout.php
+++ b/app/code/Magento/Multishipping/Controller/Checkout.php
@@ -11,6 +11,7 @@ use Magento\Framework\App\RequestInterface;
 
 /**
  * Multishipping checkout controller
+ * @SuppressWarnings(PHPMD.NumberOfChildren)
  */
 class Checkout extends \Magento\Checkout\Controller\Action implements
     \Magento\Checkout\Controller\Express\RedirectLoginInterface
@@ -77,6 +78,8 @@ class Checkout extends \Magento\Checkout\Controller\Action implements
      *
      * @param RequestInterface $request
      * @return \Magento\Framework\App\ResponseInterface
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function dispatch(RequestInterface $request)
     {
diff --git a/app/code/Magento/Multishipping/Controller/Checkout/OverviewPost.php b/app/code/Magento/Multishipping/Controller/Checkout/OverviewPost.php
index bd56ac135c7f5baf8fdab2d1329b29dd15b2f478..4e9fce82bde999c519d1693f29b9a2dfc0a1e98d 100644
--- a/app/code/Magento/Multishipping/Controller/Checkout/OverviewPost.php
+++ b/app/code/Magento/Multishipping/Controller/Checkout/OverviewPost.php
@@ -43,6 +43,7 @@ class OverviewPost extends \Magento\Multishipping\Controller\Checkout
      * Overview action
      *
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function execute()
     {
diff --git a/app/code/Magento/Multishipping/Helper/Data.php b/app/code/Magento/Multishipping/Helper/Data.php
index 3d85088207977b3ad327c6dcc95736ef9d6e027e..d7458c1e1a0470bb40acb6ef00a22b9c77e9494a 100644
--- a/app/code/Magento/Multishipping/Helper/Data.php
+++ b/app/code/Magento/Multishipping/Helper/Data.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Multishipping\Helper;
 
 /**
@@ -53,7 +56,7 @@ class Data extends \Magento\Framework\App\Helper\AbstractHelper
     /**
      * Retrieve checkout quote
      *
-     * @return \Magento\Sales\Model\Quote
+     * @return \Magento\Quote\Model\Quote
      */
     public function getQuote()
     {
diff --git a/app/code/Magento/Multishipping/Model/Checkout/Type/Multishipping.php b/app/code/Magento/Multishipping/Model/Checkout/Type/Multishipping.php
index d051ff5d6b0c6464ac19f3cf1fe5b621f9f893bd..16088de7f6e184c6a29e6394e12a5faac5fd4fc3 100644
--- a/app/code/Magento/Multishipping/Model/Checkout/Type/Multishipping.php
+++ b/app/code/Magento/Multishipping/Model/Checkout/Type/Multishipping.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Multishipping\Model\Checkout\Type;
 
 use Magento\Customer\Api\AddressRepositoryInterface;
@@ -11,6 +14,9 @@ use Magento\Sales\Model\Order\Email\Sender\OrderSender;
 
 /**
  * Multishipping checkout model
+ * @SuppressWarnings(PHPMD.TooManyFields)
+ * @SuppressWarnings(PHPMD.ExcessiveClassComplexity)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Multishipping extends \Magento\Framework\Object
 {
@@ -46,15 +52,10 @@ class Multishipping extends \Magento\Framework\Object
     protected $_storeManager;
 
     /**
-     * @var \Magento\Sales\Model\Quote\AddressFactory
+     * @var \Magento\Quote\Model\Quote\AddressFactory
      */
     protected $_addressFactory;
 
-    /**
-     * @var \Magento\Sales\Model\Convert\Quote
-     */
-    protected $_quote;
-
     /**
      * @var \Magento\Payment\Model\Method\SpecificationInterface
      */
@@ -98,7 +99,7 @@ class Multishipping extends \Magento\Framework\Object
     protected $priceCurrency;
 
     /**
-     * @var \Magento\Sales\Model\QuoteRepository
+     * @var \Magento\Quote\Model\QuoteRepository
      */
     protected $quoteRepository;
 
@@ -112,6 +113,26 @@ class Multishipping extends \Magento\Framework\Object
      */
     protected $filterBuilder;
 
+    /**
+     * @var \Magento\Quote\Model\Quote\Address\ToOrder
+     */
+    protected $quoteAddressToOrder;
+
+    /**
+     * @var \Magento\Quote\Model\Quote\Item\ToOrderItem
+     */
+    protected $quoteItemToOrderItem;
+
+    /**
+     * @var \Magento\Quote\Model\Quote\Payment\ToOrderPayment
+     */
+    protected $quotePaymentToOrderPayment;
+
+    /**
+     * @var \Magento\Quote\Model\Quote\Address\ToOrderAddress
+     */
+    protected $quoteAddressToOrderAddress;
+
     /**
      * @param \Magento\Checkout\Model\Session $checkoutSession
      * @param \Magento\Customer\Model\Session $customerSession
@@ -120,17 +141,21 @@ class Multishipping extends \Magento\Framework\Object
      * @param \Magento\Framework\Event\ManagerInterface $eventManager
      * @param \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig
      * @param \Magento\Framework\Session\Generic $session
-     * @param \Magento\Sales\Model\Quote\AddressFactory $addressFactory
-     * @param \Magento\Sales\Model\Convert\Quote $quote
+     * @param \Magento\Quote\Model\Quote\AddressFactory $addressFactory
+     * @param \Magento\Quote\Model\Quote\Address\ToOrder $quoteAddressToOrder
+     * @param \Magento\Quote\Model\Quote\Address\ToOrderAddress $quoteAddressToOrderAddress
+     * @param \Magento\Quote\Model\Quote\Payment\ToOrderPayment $quotePaymentToOrderPayment
+     * @param \Magento\Quote\Model\Quote\Item\ToOrderItem $quoteItemToOrderItem
      * @param \Magento\Store\Model\StoreManagerInterface $storeManager
      * @param \Magento\Payment\Model\Method\SpecificationInterface $paymentSpecification
      * @param \Magento\Multishipping\Helper\Data $helper
      * @param OrderSender $orderSender
      * @param PriceCurrencyInterface $priceCurrency
-     * @param \Magento\Sales\Model\QuoteRepository $quoteRepository
-     * @param \Magento\Framework\Api\SearchCriteriaBuilder $searchCriteriaBuilder,
-     * @param \Magento\Framework\Api\FilterBuilder $filterBuilder,
+     * @param \Magento\Quote\Model\QuoteRepository $quoteRepository
+     * @param \Magento\Framework\Api\SearchCriteriaBuilder $searchCriteriaBuilder
+     * @param \Magento\Framework\Api\FilterBuilder $filterBuilder
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Checkout\Model\Session $checkoutSession,
@@ -140,14 +165,17 @@ class Multishipping extends \Magento\Framework\Object
         \Magento\Framework\Event\ManagerInterface $eventManager,
         \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig,
         \Magento\Framework\Session\Generic $session,
-        \Magento\Sales\Model\Quote\AddressFactory $addressFactory,
-        \Magento\Sales\Model\Convert\Quote $quote,
+        \Magento\Quote\Model\Quote\AddressFactory $addressFactory,
+        \Magento\Quote\Model\Quote\Address\ToOrder $quoteAddressToOrder,
+        \Magento\Quote\Model\Quote\Address\ToOrderAddress $quoteAddressToOrderAddress,
+        \Magento\Quote\Model\Quote\Payment\ToOrderPayment $quotePaymentToOrderPayment,
+        \Magento\Quote\Model\Quote\Item\ToOrderItem $quoteItemToOrderItem,
         \Magento\Store\Model\StoreManagerInterface $storeManager,
         \Magento\Payment\Model\Method\SpecificationInterface $paymentSpecification,
         \Magento\Multishipping\Helper\Data $helper,
         OrderSender $orderSender,
         PriceCurrencyInterface $priceCurrency,
-        \Magento\Sales\Model\QuoteRepository $quoteRepository,
+        \Magento\Quote\Model\QuoteRepository $quoteRepository,
         \Magento\Framework\Api\SearchCriteriaBuilder $searchCriteriaBuilder,
         \Magento\Framework\Api\FilterBuilder $filterBuilder,
         array $data = []
@@ -156,7 +184,6 @@ class Multishipping extends \Magento\Framework\Object
         $this->_scopeConfig = $scopeConfig;
         $this->_session = $session;
         $this->_addressFactory = $addressFactory;
-        $this->_quote = $quote;
         $this->_storeManager = $storeManager;
         $this->paymentSpecification = $paymentSpecification;
         $this->helper = $helper;
@@ -169,6 +196,10 @@ class Multishipping extends \Magento\Framework\Object
         $this->quoteRepository = $quoteRepository;
         $this->searchCriteriaBuilder = $searchCriteriaBuilder;
         $this->filterBuilder = $filterBuilder;
+        $this->quoteAddressToOrder = $quoteAddressToOrder;
+        $this->quoteItemToOrderItem = $quoteItemToOrderItem;
+        $this->quotePaymentToOrderPayment = $quotePaymentToOrderPayment;
+        $this->quoteAddressToOrderAddress = $quoteAddressToOrderAddress;
         parent::__construct($data);
         $this->_init();
     }
@@ -178,6 +209,7 @@ class Multishipping extends \Magento\Framework\Object
      * Split virtual/not virtual items between default billing/shipping addresses
      *
      * @return \Magento\Multishipping\Model\Checkout\Type\Multishipping
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _init()
     {
@@ -289,7 +321,7 @@ class Multishipping extends \Magento\Framework\Object
     public function removeAddressItem($addressId, $itemId)
     {
         $address = $this->getQuote()->getAddressById($addressId);
-        /* @var $address \Magento\Sales\Model\Quote\Address */
+        /* @var $address \Magento\Quote\Model\Quote\Address */
         if ($address) {
             $item = $address->getValidItemById($itemId);
             if ($item) {
@@ -337,6 +369,8 @@ class Multishipping extends \Magento\Framework\Object
      * @param array $info
      * @return \Magento\Multishipping\Model\Checkout\Type\Multishipping
      * @throws \Magento\Framework\Model\Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function setShippingItemsInformation($info)
     {
@@ -420,6 +454,8 @@ class Multishipping extends \Magento\Framework\Object
      * @param int $quoteItemId
      * @param array $data array('qty'=>$qty, 'address'=>$customerAddressId)
      * @return \Magento\Multishipping\Model\Checkout\Type\Multishipping
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _addShippingItem($quoteItemId, $data)
     {
@@ -562,28 +598,28 @@ class Multishipping extends \Magento\Framework\Object
     /**
      * Prepare order based on quote address
      *
-     * @param   \Magento\Sales\Model\Quote\Address $address
+     * @param   \Magento\Quote\Model\Quote\Address $address
      * @return  \Magento\Sales\Model\Order
      * @throws  \Magento\Checkout\Exception
      */
-    protected function _prepareOrder(\Magento\Sales\Model\Quote\Address $address)
+    protected function _prepareOrder(\Magento\Quote\Model\Quote\Address $address)
     {
         $quote = $this->getQuote();
         $quote->unsReservedOrderId();
         $quote->reserveOrderId();
         $quote->collectTotals();
 
-        $order = $this->_quote->addressToOrder($address);
+        $order = $this->quoteAddressToOrder->convert($address);
         $order->setQuote($quote);
-        $order->setBillingAddress($this->_quote->addressToOrderAddress($quote->getBillingAddress()));
+        $order->setBillingAddress($this->quoteAddressToOrderAddress->convert($quote->getBillingAddress()));
 
         if ($address->getAddressType() == 'billing') {
             $order->setIsVirtual(1);
         } else {
-            $order->setShippingAddress($this->_quote->addressToOrderAddress($address));
+            $order->setShippingAddress($this->quoteAddressToOrderAddress->addressToOrderAddress($address));
         }
 
-        $order->setPayment($this->_quote->paymentToOrderPayment($quote->getPayment()));
+        $order->setPayment($this->quotePaymentToOrderPayment->paymentToOrderPayment($quote->getPayment()));
         if ($this->priceCurrency->round($address->getGrandTotal()) == 0) {
             $order->getPayment()->setMethod('free');
         }
@@ -598,7 +634,7 @@ class Multishipping extends \Magento\Framework\Object
             )->setProductOptions(
                 $_quoteItem->getProduct()->getTypeInstance()->getOrderOptions($_quoteItem->getProduct())
             );
-            $orderItem = $this->_quote->itemToOrderItem($item);
+            $orderItem = $this->quoteItemToOrderItem->itemToOrderItem($item);
             if ($item->getParentItem()) {
                 $orderItem->setParentItem($order->getItemByQuoteItemId($item->getParentItem()->getId()));
             }
@@ -859,7 +895,7 @@ class Multishipping extends \Magento\Framework\Object
     /**
      * Retrieve quote model
      *
-     * @return \Magento\Sales\Model\Quote
+     * @return \Magento\Quote\Model\Quote
      */
     public function getQuote()
     {
@@ -869,7 +905,7 @@ class Multishipping extends \Magento\Framework\Object
     /**
      * Retrieve quote items
      *
-     * @return \Magento\Sales\Model\Quote\Item[]
+     * @return \Magento\Quote\Model\Quote\Item[]
      */
     public function getQuoteItems()
     {
diff --git a/app/code/Magento/Multishipping/Model/Checkout/Type/Multishipping/State.php b/app/code/Magento/Multishipping/Model/Checkout/Type/Multishipping/State.php
index 462968de8d120b6de47e4d9114916ab472acac98..793a808e2a2ecf54d319f23c79ee780cea0305ce 100644
--- a/app/code/Magento/Multishipping/Model/Checkout/Type/Multishipping/State.php
+++ b/app/code/Magento/Multishipping/Model/Checkout/Type/Multishipping/State.php
@@ -144,6 +144,7 @@ class State extends \Magento\Framework\Object
      *
      * @param string $step
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getCompleteStep($step)
     {
diff --git a/app/code/Magento/Multishipping/composer.json b/app/code/Magento/Multishipping/composer.json
index 756598d1fa2a9ecb3ce53957535768d124a9bfd7..b6ad3579769b9c440a855bcead48b50edaadb5e2 100644
--- a/app/code/Magento/Multishipping/composer.json
+++ b/app/code/Magento/Multishipping/composer.json
@@ -3,19 +3,20 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-core": "0.42.0-beta3",
-        "magento/module-checkout": "0.42.0-beta3",
-        "magento/module-sales": "0.42.0-beta3",
-        "magento/module-payment": "0.42.0-beta3",
-        "magento/module-tax": "0.42.0-beta3",
-        "magento/module-customer": "0.42.0-beta3",
-        "magento/module-theme": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-core": "0.42.0-beta4",
+        "magento/module-checkout": "0.42.0-beta4",
+        "magento/module-sales": "0.42.0-beta4",
+        "magento/module-payment": "0.42.0-beta4",
+        "magento/module-tax": "0.42.0-beta4",
+        "magento/module-customer": "0.42.0-beta4",
+        "magento/module-theme": "0.42.0-beta4",
+        "magento/module-quote": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/Multishipping/view/frontend/layout/multishipping_checkout_success.xml b/app/code/Magento/Multishipping/view/frontend/layout/multishipping_checkout_success.xml
index 5ea53255269edf7ca4d32b50a0b90fe176d3c146..e9bca9477d829c01fe0c92260310c6378b5a71ac 100644
--- a/app/code/Magento/Multishipping/view/frontend/layout/multishipping_checkout_success.xml
+++ b/app/code/Magento/Multishipping/view/frontend/layout/multishipping_checkout_success.xml
@@ -7,6 +7,9 @@
 -->
 <page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../../lib/internal/Magento/Framework/View/Layout/etc/page_configuration.xsd">
     <update handle="multishipping_checkout"/>
+    <head>
+        <title>Success Page</title>
+    </head>
     <body>
         <referenceBlock name="page.main.title">
             <action method="setPageTitle">
diff --git a/app/code/Magento/Multishipping/view/frontend/templates/checkout/address/select.phtml b/app/code/Magento/Multishipping/view/frontend/templates/checkout/address/select.phtml
index d38b6b9b7b990d43a0e41c8ff304d68e63a30d6e..dac5501e9d214e70855ce28d96c48b2e0216d92a 100644
--- a/app/code/Magento/Multishipping/view/frontend/templates/checkout/address/select.phtml
+++ b/app/code/Magento/Multishipping/view/frontend/templates/checkout/address/select.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var \Magento\Multishipping\Block\Checkout\Address\Select $this */
 ?>
 <div class="multicheckout">
@@ -37,7 +39,7 @@
         </div>
     </div>
 </div>
-<script type="text/javascript">
+<script>
 require(['jquery', 'mage/mage'], function(jQuery){
 
     jQuery('.actions').mage('address', {
diff --git a/app/code/Magento/Multishipping/view/frontend/templates/checkout/addresses.phtml b/app/code/Magento/Multishipping/view/frontend/templates/checkout/addresses.phtml
index 3ac80bc353af543ddb23918fa12172e29cba5935..367ae99a906472da4c47e0cf902e774eff577941 100644
--- a/app/code/Magento/Multishipping/view/frontend/templates/checkout/addresses.phtml
+++ b/app/code/Magento/Multishipping/view/frontend/templates/checkout/addresses.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/Multishipping/view/frontend/templates/checkout/billing.phtml b/app/code/Magento/Multishipping/view/frontend/templates/checkout/billing.phtml
index 8c5434048885c1d817e2cb9b3b15ee583d524a3e..c286971abb7d5ceaf1c718d5c2964ac85f0beffc 100644
--- a/app/code/Magento/Multishipping/view/frontend/templates/checkout/billing.phtml
+++ b/app/code/Magento/Multishipping/view/frontend/templates/checkout/billing.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
@@ -67,7 +70,7 @@
         </div>
     </div>
 </form>
-<script type="text/javascript">
+<script>
 require(['jquery', 'mage/mage'], function(jQuery){
 
     var addtocartForm = jQuery('#multishipping-billing-form');
diff --git a/app/code/Magento/Multishipping/view/frontend/templates/checkout/billing/items.phtml b/app/code/Magento/Multishipping/view/frontend/templates/checkout/billing/items.phtml
index f802304418c63d3396c154499f77143b38b7c1e3..0dd1962c34f010c95fc965cc165d804e657aaa8e 100644
--- a/app/code/Magento/Multishipping/view/frontend/templates/checkout/billing/items.phtml
+++ b/app/code/Magento/Multishipping/view/frontend/templates/checkout/billing/items.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php if ($this->getQuote()->hasVirtualItems()): ?>
 <div class="block block-other">
diff --git a/app/code/Magento/Multishipping/view/frontend/templates/checkout/item/default.phtml b/app/code/Magento/Multishipping/view/frontend/templates/checkout/item/default.phtml
index b2a877b9d859d7fe2c62a2464e45f0bb82c80dde..b9b4988bcf5c8da55a5d1e7dcaa92722f2a92d3b 100644
--- a/app/code/Magento/Multishipping/view/frontend/templates/checkout/item/default.phtml
+++ b/app/code/Magento/Multishipping/view/frontend/templates/checkout/item/default.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <strong class="product name product-item-name"><a href="<?php echo $this->getProductUrl() ?>"><?php echo $this->escapeHtml($this->getProductName()) ?></a></strong>
 <?php if ($_options = $this->getOptionList()): ?>
diff --git a/app/code/Magento/Multishipping/view/frontend/templates/checkout/link.phtml b/app/code/Magento/Multishipping/view/frontend/templates/checkout/link.phtml
index f225bbca3a9a415e64a9df136095d51310ace0dc..cc1f8ff73222abe5f393a046b9c8c073eb1323cc 100644
--- a/app/code/Magento/Multishipping/view/frontend/templates/checkout/link.phtml
+++ b/app/code/Magento/Multishipping/view/frontend/templates/checkout/link.phtml
@@ -3,5 +3,8 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <a class="action multicheckout" href="<?php echo $this->getCheckoutUrl()?>" title="<?php echo __('Checkout with Multiple Addresses');?>"><span><?php echo __('Checkout with Multiple Addresses');?></span></a>
diff --git a/app/code/Magento/Multishipping/view/frontend/templates/checkout/overview.phtml b/app/code/Magento/Multishipping/view/frontend/templates/checkout/overview.phtml
index 79b0fb5b282c3333b8a6d08b934a28dd2c9dd9a5..51302fd4e104d3220833aa9ecc88b1fda7a3432b 100644
--- a/app/code/Magento/Multishipping/view/frontend/templates/checkout/overview.phtml
+++ b/app/code/Magento/Multishipping/view/frontend/templates/checkout/overview.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <form action="<?php echo $this->getPostActionUrl() ?>" method="post" id="review-order-form" data-mage-init='{"orderOverview": {}}' class="form multicheckout order-review">
     <?php echo $this->getBlockHtml('formkey'); ?>
diff --git a/app/code/Magento/Multishipping/view/frontend/templates/checkout/overview/item.phtml b/app/code/Magento/Multishipping/view/frontend/templates/checkout/overview/item.phtml
index 5dd56e7b200318d4b60527a1bca4cce39da03927..c2e07722eccc543f06b36d3f284593707c5679ad 100644
--- a/app/code/Magento/Multishipping/view/frontend/templates/checkout/overview/item.phtml
+++ b/app/code/Magento/Multishipping/view/frontend/templates/checkout/overview/item.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/Multishipping/view/frontend/templates/checkout/shipping.phtml b/app/code/Magento/Multishipping/view/frontend/templates/checkout/shipping.phtml
index bf788a1793236c776889c2694ff44e713a326806..c58c8f5efd3d51fbb2c002d0469bc37694f3dc00 100644
--- a/app/code/Magento/Multishipping/view/frontend/templates/checkout/shipping.phtml
+++ b/app/code/Magento/Multishipping/view/frontend/templates/checkout/shipping.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/Multishipping/view/frontend/templates/checkout/state.phtml b/app/code/Magento/Multishipping/view/frontend/templates/checkout/state.phtml
index 9788426ab3b8afb91524de3654870b6127effb91..e71b701338f20fc4a65e744c3eb36fb6c7623a53 100644
--- a/app/code/Magento/Multishipping/view/frontend/templates/checkout/state.phtml
+++ b/app/code/Magento/Multishipping/view/frontend/templates/checkout/state.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/Multishipping/view/frontend/templates/checkout/success.phtml b/app/code/Magento/Multishipping/view/frontend/templates/checkout/success.phtml
index ba9b64fa1e8ff4d5915fe325ead214075c603e43..f0e0d9512e113afbdb89c0c28864a804f912384c 100644
--- a/app/code/Magento/Multishipping/view/frontend/templates/checkout/success.phtml
+++ b/app/code/Magento/Multishipping/view/frontend/templates/checkout/success.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <div class="multicheckout success">
     <h2 class="subtitle"><?php echo __('Thank you for your purchase!') ?></h2>
diff --git a/app/code/Magento/Multishipping/view/frontend/templates/js/components.phtml b/app/code/Magento/Multishipping/view/frontend/templates/js/components.phtml
index 99be8e37348cec69521e018a61f416324e582a94..43f7e9c30c0126f46204910ee749ef83ad81e815 100644
--- a/app/code/Magento/Multishipping/view/frontend/templates/js/components.phtml
+++ b/app/code/Magento/Multishipping/view/frontend/templates/js/components.phtml
@@ -3,5 +3,8 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php echo $this->getChildHtml() ?>
diff --git a/app/code/Magento/Multishipping/view/frontend/templates/multishipping/item/default.phtml b/app/code/Magento/Multishipping/view/frontend/templates/multishipping/item/default.phtml
index 8f9c7c23cf2d39317bd12d2f3a8b1c0341c70a35..bafd229b4d6ba455b26eb6c5d43cbb1a5e8686b5 100644
--- a/app/code/Magento/Multishipping/view/frontend/templates/multishipping/item/default.phtml
+++ b/app/code/Magento/Multishipping/view/frontend/templates/multishipping/item/default.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <div class="product details">
     <strong class="product name"><a href="<?php echo $this->getProductUrl() ?>"><?php echo $this->escapeHtml($this->getProductName()) ?></a></strong>
diff --git a/app/code/Magento/Newsletter/Block/Adminhtml/Problem.php b/app/code/Magento/Newsletter/Block/Adminhtml/Problem.php
index cad43065e2dbc6d2f3485b26ee5a8d45eb626f63..c3ae83df04bcea5d47684129144a8670a51af796 100644
--- a/app/code/Magento/Newsletter/Block/Adminhtml/Problem.php
+++ b/app/code/Magento/Newsletter/Block/Adminhtml/Problem.php
@@ -40,6 +40,7 @@ class Problem extends \Magento\Backend\Block\Template
 
     /**
      * @return void
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     protected function _construct()
     {
@@ -101,6 +102,7 @@ class Problem extends \Magento\Backend\Block\Template
      * Return true if the size is greater than 0
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getShowButtons()
     {
diff --git a/app/code/Magento/Newsletter/Block/Adminhtml/Queue/Edit.php b/app/code/Magento/Newsletter/Block/Adminhtml/Queue/Edit.php
index 6ef487bb2bab83ac5e2685fb09ff737981f2fd24..271ae2c7c6635a82217e8a47b6936cb4f9cb2f29 100644
--- a/app/code/Magento/Newsletter/Block/Adminhtml/Queue/Edit.php
+++ b/app/code/Magento/Newsletter/Block/Adminhtml/Queue/Edit.php
@@ -218,6 +218,7 @@ class Edit extends \Magento\Backend\Block\Template
      * Getter for availability preview mode
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsPreview()
     {
@@ -241,6 +242,7 @@ class Edit extends \Magento\Backend\Block\Template
      * Getter for id of current store (the only one in single-store mode and current in multi-stores mode)
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     protected function getStoreId()
     {
@@ -251,6 +253,7 @@ class Edit extends \Magento\Backend\Block\Template
      * Getter for check is this newsletter the plain text.
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsTextType()
     {
@@ -261,6 +264,7 @@ class Edit extends \Magento\Backend\Block\Template
      * Getter for availability resume action
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getCanResume()
     {
@@ -271,6 +275,7 @@ class Edit extends \Magento\Backend\Block\Template
      * Getter for header text
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getHeaderText()
     {
diff --git a/app/code/Magento/Newsletter/Block/Adminhtml/Queue/Edit/Form.php b/app/code/Magento/Newsletter/Block/Adminhtml/Queue/Edit/Form.php
index 716d3272bc449092e3e56f69a35ab48af4262a64..7675ac57c9a7104c31a23ad4eef0006eaccbbefe 100644
--- a/app/code/Magento/Newsletter/Block/Adminhtml/Queue/Edit/Form.php
+++ b/app/code/Magento/Newsletter/Block/Adminhtml/Queue/Edit/Form.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Newsletter\Block\Adminhtml\Queue\Edit;
 
 /**
@@ -57,6 +60,9 @@ class Form extends \Magento\Backend\Block\Widget\Form\Generic
      * or from  newsletter queue grid by edit option.
      *
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _prepareForm()
     {
diff --git a/app/code/Magento/Newsletter/Block/Adminhtml/Queue/Preview/Form.php b/app/code/Magento/Newsletter/Block/Adminhtml/Queue/Preview/Form.php
index 936ab42d14178c2308b1e196e504371402b44c43..c6b88dfe2eafbefd4f2b08e6b539662d83b58b22 100644
--- a/app/code/Magento/Newsletter/Block/Adminhtml/Queue/Preview/Form.php
+++ b/app/code/Magento/Newsletter/Block/Adminhtml/Queue/Preview/Form.php
@@ -17,6 +17,7 @@ class Form extends \Magento\Backend\Block\Widget\Form\Generic
      * Preparing from for revision page
      *
      * @return \Magento\Backend\Block\Widget\Form
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     protected function _prepareForm()
     {
diff --git a/app/code/Magento/Newsletter/Block/Adminhtml/Template/Edit.php b/app/code/Magento/Newsletter/Block/Adminhtml/Template/Edit.php
index 5ff6b98580345bd7043c75eb3952a7e267d1ca95..52641dcdc49fd239243a59d5a89c6dc6a02a27f5 100644
--- a/app/code/Magento/Newsletter/Block/Adminhtml/Template/Edit.php
+++ b/app/code/Magento/Newsletter/Block/Adminhtml/Template/Edit.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Newsletter Template Edit Block
  *
@@ -56,6 +58,7 @@ class Edit extends \Magento\Backend\Block\Widget
      * Preparing block layout
      *
      * @return $this
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _prepareLayout()
     {
@@ -171,6 +174,7 @@ class Edit extends \Magento\Backend\Block\Widget
      * Return edit flag for block
      *
      * @return boolean
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getEditMode()
     {
@@ -278,6 +282,7 @@ class Edit extends \Magento\Backend\Block\Widget
      * Getter for id of current store (the only one in single-store mode and current in multi-stores mode)
      *
      * @return boolean
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     protected function getStoreId()
     {
diff --git a/app/code/Magento/Newsletter/Block/Adminhtml/Template/Edit/Form.php b/app/code/Magento/Newsletter/Block/Adminhtml/Template/Edit/Form.php
index fe3d2e7e12bdf84b08b2c41db4ad0a9abeaa45ad..18de6a18d03c5ebeb6e6079bda4bf10fa9b7e9e7 100644
--- a/app/code/Magento/Newsletter/Block/Adminhtml/Template/Edit/Form.php
+++ b/app/code/Magento/Newsletter/Block/Adminhtml/Template/Edit/Form.php
@@ -50,6 +50,8 @@ class Form extends \Magento\Backend\Block\Widget\Form\Generic
      * Prepare form before rendering HTML
      *
      * @return $this
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _prepareForm()
     {
diff --git a/app/code/Magento/Newsletter/Block/Adminhtml/Template/Preview/Form.php b/app/code/Magento/Newsletter/Block/Adminhtml/Template/Preview/Form.php
index ff54609427df62940a8d140001078d687a1be9a1..b88a7309a7282d724004dcc1a525dead6117af25 100644
--- a/app/code/Magento/Newsletter/Block/Adminhtml/Template/Preview/Form.php
+++ b/app/code/Magento/Newsletter/Block/Adminhtml/Template/Preview/Form.php
@@ -17,6 +17,7 @@ class Form extends \Magento\Backend\Block\Widget\Form\Generic
      * Preparing from for revision page
      *
      * @return \Magento\Backend\Block\Widget\Form
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     protected function _prepareForm()
     {
diff --git a/app/code/Magento/Newsletter/Controller/Adminhtml/Queue/Save.php b/app/code/Magento/Newsletter/Controller/Adminhtml/Queue/Save.php
index 0da1c89d1c6b835aa189bf4b7198067b2e569ae0..8bcc262340cc5d620447cbbc679e403de312620f 100644
--- a/app/code/Magento/Newsletter/Controller/Adminhtml/Queue/Save.php
+++ b/app/code/Magento/Newsletter/Controller/Adminhtml/Queue/Save.php
@@ -4,6 +4,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Newsletter\Controller\Adminhtml\Queue;
 
 class Save extends \Magento\Newsletter\Controller\Adminhtml\Queue
@@ -13,6 +16,7 @@ class Save extends \Magento\Newsletter\Controller\Adminhtml\Queue
      *
      * @throws \Magento\Framework\Model\Exception
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function execute()
     {
diff --git a/app/code/Magento/Newsletter/Helper/Data.php b/app/code/Magento/Newsletter/Helper/Data.php
index 8537d5fc749b427f7b372cfb7784df7e30cbb869..87951892524f72310c92b332a25cff6d58fcd1ba 100644
--- a/app/code/Magento/Newsletter/Helper/Data.php
+++ b/app/code/Magento/Newsletter/Helper/Data.php
@@ -11,8 +11,21 @@
  */
 namespace Magento\Newsletter\Helper;
 
-class Data extends \Magento\Framework\App\Helper\AbstractHelper
+class Data
 {
+    /**
+     * @var \Magento\Framework\UrlInterface
+     */
+    protected $_frontendUrlBuilder;
+
+    /**
+     * @param \Magento\Framework\UrlInterface $frontendUrlBuilder
+     */
+    public function __construct(\Magento\Framework\UrlInterface $frontendUrlBuilder)
+    {
+        $this->_frontendUrlBuilder = $frontendUrlBuilder;
+    }
+
     /**
      * Retrieve subsription confirmation url
      *
@@ -21,7 +34,7 @@ class Data extends \Magento\Framework\App\Helper\AbstractHelper
      */
     public function getConfirmationUrl($subscriber)
     {
-        return $this->_urlBuilder->setScope(
+        return $this->_frontendUrlBuilder->setScope(
             $subscriber->getStoreId()
         )->getUrl(
             'newsletter/subscriber/confirm',
@@ -37,7 +50,7 @@ class Data extends \Magento\Framework\App\Helper\AbstractHelper
      */
     public function getUnsubscribeUrl($subscriber)
     {
-        return $this->_urlBuilder->setScope(
+        return $this->_frontendUrlBuilder->setScope(
             $subscriber->getStoreId()
         )->getUrl(
             'newsletter/subscriber/unsubscribe',
diff --git a/app/code/Magento/Newsletter/Model/Queue.php b/app/code/Magento/Newsletter/Model/Queue.php
index cb84858cfff0b77e1b3e28a75d8f553df892a206..72239c7dcfabd57bc466a3773e292e719169dfbf 100644
--- a/app/code/Magento/Newsletter/Model/Queue.php
+++ b/app/code/Magento/Newsletter/Model/Queue.php
@@ -31,6 +31,7 @@ namespace Magento\Newsletter\Model;
  * @method string getQueueFinishAt()
  * @method \Magento\Newsletter\Model\Queue setQueueFinishAt(string $value)
  * @SuppressWarnings(PHPMD.LongVariable)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Queue extends \Magento\Email\Model\AbstractTemplate
 {
@@ -114,7 +115,7 @@ class Queue extends \Magento\Email\Model\AbstractTemplate
      * @param \Magento\Framework\Model\Context $context
      * @param \Magento\Framework\View\DesignInterface $design
      * @param \Magento\Framework\Registry $registry
-     * @param \Magento\Core\Model\App\Emulation $appEmulation
+     * @param \Magento\Store\Model\App\Emulation $appEmulation
      * @param \Magento\Store\Model\StoreManagerInterface $storeManager
      * @param \Magento\Newsletter\Model\Template\Filter $templateFilter
      * @param \Magento\Framework\Stdlib\DateTime\TimezoneInterface $localeDate
@@ -124,12 +125,13 @@ class Queue extends \Magento\Email\Model\AbstractTemplate
      * @param \Magento\Newsletter\Model\Resource\Subscriber\CollectionFactory $subscriberCollectionFactory
      * @param \Magento\Newsletter\Model\Queue\TransportBuilder $transportBuilder
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
         \Magento\Framework\View\DesignInterface $design,
         \Magento\Framework\Registry $registry,
-        \Magento\Core\Model\App\Emulation $appEmulation,
+        \Magento\Store\Model\App\Emulation $appEmulation,
         \Magento\Store\Model\StoreManagerInterface $storeManager,
         \Magento\Newsletter\Model\Template\Filter $templateFilter,
         \Magento\Framework\Stdlib\DateTime\TimezoneInterface $localeDate,
@@ -196,6 +198,7 @@ class Queue extends \Magento\Email\Model\AbstractTemplate
      *
      * @param int $count
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function sendPerSubscriber($count = 20)
     {
@@ -320,6 +323,7 @@ class Queue extends \Magento\Email\Model\AbstractTemplate
      * Getter for save stores flag.
      *
      * @return boolean
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getSaveStoresFlag()
     {
diff --git a/app/code/Magento/Newsletter/Model/Resource/Grid/Collection.php b/app/code/Magento/Newsletter/Model/Resource/Grid/Collection.php
index 8ddac79f305ae15f7eb452b7ae004ee718ea720b..0de676b32e8cd6b8d79016a445897f8892c678aa 100644
--- a/app/code/Magento/Newsletter/Model/Resource/Grid/Collection.php
+++ b/app/code/Magento/Newsletter/Model/Resource/Grid/Collection.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Newsletter problems collection
  *
diff --git a/app/code/Magento/Newsletter/Model/Resource/Subscriber/Collection.php b/app/code/Magento/Newsletter/Model/Resource/Subscriber/Collection.php
index 04c57f977d4891fe1555b432c90aeb9ead5d39ea..9c3afee8b9da91dcd1c112a6f0b57143d5b4b6d9 100644
--- a/app/code/Magento/Newsletter/Model/Resource/Subscriber/Collection.php
+++ b/app/code/Magento/Newsletter/Model/Resource/Subscriber/Collection.php
@@ -264,6 +264,7 @@ class Collection extends \Magento\Framework\Model\Resource\Db\Collection\Abstrac
      * Get queue joined flag
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getQueueJoinedFlag()
     {
diff --git a/app/code/Magento/Newsletter/Model/Resource/Template.php b/app/code/Magento/Newsletter/Model/Resource/Template.php
index 9fea41a14401409ed28f4e7721533d76f13f4e65..9ca3e1351e2942367fc4eb35e05db427bc647732 100644
--- a/app/code/Magento/Newsletter/Model/Resource/Template.php
+++ b/app/code/Magento/Newsletter/Model/Resource/Template.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Newsletter\Model\Resource;
 
 /**
diff --git a/app/code/Magento/Newsletter/Model/Subscriber.php b/app/code/Magento/Newsletter/Model/Subscriber.php
index bbc21a7dcc9ebb32da57d17f6e263bdc2aa2528c..a201e88646585247aa7deb2860f5419c94a5cd32 100644
--- a/app/code/Magento/Newsletter/Model/Subscriber.php
+++ b/app/code/Magento/Newsletter/Model/Subscriber.php
@@ -136,6 +136,7 @@ class Subscriber extends \Magento\Framework\Model\AbstractModel
      * @param \Magento\Framework\Model\Resource\AbstractResource $resource
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
diff --git a/app/code/Magento/Newsletter/Model/Template.php b/app/code/Magento/Newsletter/Model/Template.php
index ddb12607ece31ab8514cd981bfdedfb16f2852cc..4ff5e4d526c661f2cad580ffdf468e27c121da3a 100644
--- a/app/code/Magento/Newsletter/Model/Template.php
+++ b/app/code/Magento/Newsletter/Model/Template.php
@@ -32,6 +32,7 @@ namespace Magento\Newsletter\Model;
  * @method \Magento\Newsletter\Model\Template setModifiedAt(string $value)
  *
  * @author      Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Template extends \Magento\Email\Model\AbstractTemplate
 {
@@ -93,7 +94,7 @@ class Template extends \Magento\Email\Model\AbstractTemplate
      * @param \Magento\Framework\Model\Context $context
      * @param \Magento\Framework\View\DesignInterface $design
      * @param \Magento\Framework\Registry $registry
-     * @param \Magento\Core\Model\App\Emulation $appEmulation
+     * @param \Magento\Store\Model\App\Emulation $appEmulation
      * @param \Magento\Store\Model\StoreManagerInterface $storeManager
      * @param \Magento\Framework\App\RequestInterface $request
      * @param \Magento\Newsletter\Model\Template\Filter $filter
@@ -101,12 +102,13 @@ class Template extends \Magento\Email\Model\AbstractTemplate
      * @param \Magento\Newsletter\Model\TemplateFactory $templateFactory
      * @param \Magento\Framework\Filter\FilterManager $filterManager
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
         \Magento\Framework\View\DesignInterface $design,
         \Magento\Framework\Registry $registry,
-        \Magento\Core\Model\App\Emulation $appEmulation,
+        \Magento\Store\Model\App\Emulation $appEmulation,
         \Magento\Store\Model\StoreManagerInterface $storeManager,
         \Magento\Framework\App\RequestInterface $request,
         \Magento\Newsletter\Model\Template\Filter $filter,
@@ -217,6 +219,7 @@ class Template extends \Magento\Email\Model\AbstractTemplate
      * Check Template Text Preprocessed
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getTemplateTextPreprocessed()
     {
diff --git a/app/code/Magento/Newsletter/composer.json b/app/code/Magento/Newsletter/composer.json
index 4c9e57f393230426484438f842b65c8597b7784e..8fd1f35d11f8a1601f3bbd1c5f0cc3f066071ae9 100644
--- a/app/code/Magento/Newsletter/composer.json
+++ b/app/code/Magento/Newsletter/composer.json
@@ -3,20 +3,20 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-core": "0.42.0-beta3",
-        "magento/module-customer": "0.42.0-beta3",
-        "magento/module-widget": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/module-cms": "0.42.0-beta3",
-        "magento/module-email": "0.42.0-beta3",
-        "magento/module-cron": "0.42.0-beta3",
-        "magento/module-eav": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-core": "0.42.0-beta4",
+        "magento/module-customer": "0.42.0-beta4",
+        "magento/module-widget": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/module-cms": "0.42.0-beta4",
+        "magento/module-email": "0.42.0-beta4",
+        "magento/module-cron": "0.42.0-beta4",
+        "magento/module-eav": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/Newsletter/etc/di.xml b/app/code/Magento/Newsletter/etc/di.xml
index 48ea746ae100b544242d92f2bd20161471713363..b90d0f8064b32445fcfb417d70eb884eab78155d 100644
--- a/app/code/Magento/Newsletter/etc/di.xml
+++ b/app/code/Magento/Newsletter/etc/di.xml
@@ -16,6 +16,11 @@
             <argument name="storage" xsi:type="object">Magento\Newsletter\Model\Session\Storage</argument>
         </arguments>
     </type>
+    <type name="Magento\Newsletter\Helper\Data">
+        <arguments>
+            <argument name="frontendUrlBuilder" xsi:type="object">Magento\Framework\Url</argument>
+        </arguments>
+    </type>
     <type name="Magento\Customer\Api\CustomerRepositoryInterface">
         <plugin name="update_newsletter_subscription_on_customer_update"
                 type="Magento\Newsletter\Model\Plugin\CustomerPlugin"/>
diff --git a/app/code/Magento/Newsletter/view/adminhtml/templates/preview/iframeswitcher.phtml b/app/code/Magento/Newsletter/view/adminhtml/templates/preview/iframeswitcher.phtml
index b9bfaec868a8b78f9a80972e4eb503e82be2985e..cf09d83f1df88cfaeb3d991ba09c4f30ff5fe579 100644
--- a/app/code/Magento/Newsletter/view/adminhtml/templates/preview/iframeswitcher.phtml
+++ b/app/code/Magento/Newsletter/view/adminhtml/templates/preview/iframeswitcher.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <div id="preview" class="cms-revision-preview">
     <div class="toolbar">
@@ -16,7 +19,7 @@
     <?php echo $this->getChildHtml('preview_form'); ?>
 </div>
 
-<script type="text/javascript">
+<script>
 require(['jquery', 'js/theme', 'prototype'], function(jQuery){
 
 //<![CDATA[
diff --git a/app/code/Magento/Newsletter/view/adminhtml/templates/preview/store.phtml b/app/code/Magento/Newsletter/view/adminhtml/templates/preview/store.phtml
index 65f63dc0692c9ed1c4d15dcb2a423fcd7ce96379..b9c42dfe7a2bc86d6c4d95673bbe8804a852a8ab 100644
--- a/app/code/Magento/Newsletter/view/adminhtml/templates/preview/store.phtml
+++ b/app/code/Magento/Newsletter/view/adminhtml/templates/preview/store.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php if ($websites = $this->getWebsites()): ?>
@@ -34,7 +37,7 @@
     </div>
     <?php echo $this->getHintHtml() ?>
 </div>
-<script type="text/javascript">
+<script>
 require(['prototype'], function(){
 
 //<![CDATA[
diff --git a/app/code/Magento/Newsletter/view/adminhtml/templates/problem/list.phtml b/app/code/Magento/Newsletter/view/adminhtml/templates/problem/list.phtml
index 98318525939a6e09700a87199e47966adb99e344..fb872704914cc35329afc00a4d3ef94103874dfd 100644
--- a/app/code/Magento/Newsletter/view/adminhtml/templates/problem/list.phtml
+++ b/app/code/Magento/Newsletter/view/adminhtml/templates/problem/list.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php echo $this->getChildHtml('grid') ?>
 
@@ -12,7 +15,7 @@
     <?php echo $this->getDeleteButtonHtml(); ?>
 </div>
 <?php endif ?>
-<script type="text/javascript">
+<script>
 require(["prototype", "mage/adminhtml/events"], function(){
 
     <!--
diff --git a/app/code/Magento/Newsletter/view/adminhtml/templates/queue/edit.phtml b/app/code/Magento/Newsletter/view/adminhtml/templates/queue/edit.phtml
index b7e72275c935278db93059d7e0741d0cfe26bf34..bfb2eb9c81c064a57b703612312098eb584097b1 100644
--- a/app/code/Magento/Newsletter/view/adminhtml/templates/queue/edit.phtml
+++ b/app/code/Magento/Newsletter/view/adminhtml/templates/queue/edit.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /* @var $this \Magento\Newsletter\Block\Adminhtml\Queue\Edit */
 ?>
 <div class="page-actions">
@@ -30,7 +33,7 @@
         <input type="hidden" id="preview_id" name="id" value="" />
     </div>
 </form>
-<script type="text/javascript">
+<script>
 require(['jquery', 'mage/mage', 'prototype'], function(jQuery){
 
 //<![CDATA[
diff --git a/app/code/Magento/Newsletter/view/adminhtml/templates/queue/list.phtml b/app/code/Magento/Newsletter/view/adminhtml/templates/queue/list.phtml
index c1e2599f8e5d8fe14d88a0161ce8a871470a7b97..edc99139da10c27628a4141d12e176be722a7ae1 100644
--- a/app/code/Magento/Newsletter/view/adminhtml/templates/queue/list.phtml
+++ b/app/code/Magento/Newsletter/view/adminhtml/templates/queue/list.phtml
@@ -3,5 +3,8 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php echo $this->getChildHtml('grid'); ?>
diff --git a/app/code/Magento/Newsletter/view/adminhtml/templates/subscriber/list.phtml b/app/code/Magento/Newsletter/view/adminhtml/templates/subscriber/list.phtml
index 0d4c7d5e790d67b1b44134c263fa6eb0714a27eb..dc0936b43a3de087faa0c5159be962cdb24ed0d6 100644
--- a/app/code/Magento/Newsletter/view/adminhtml/templates/subscriber/list.phtml
+++ b/app/code/Magento/Newsletter/view/adminhtml/templates/subscriber/list.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php echo $this->getChildHtml('grid') ?>
 <?php if (count($this->getQueueAsOptions())>0 && $this->getShowQueueAdd()): ?>
@@ -15,7 +18,7 @@
     <button class="scalable" onclick="subscriberController.addToQueue();"><span><span><span><?php echo __('Add to Queue'); ?></span></span></span></button>
 </div>
 <?php endif ?>
-<script type="text/javascript">
+<script>
 require(["prototype", "mage/adminhtml/events"], function(){
 
 <!--
diff --git a/app/code/Magento/Newsletter/view/adminhtml/templates/template/edit.phtml b/app/code/Magento/Newsletter/view/adminhtml/templates/template/edit.phtml
index 075951d4034e44b373c29626f5570b82a8aa8e75..f4d7f8f1d5a14bc64c21f8f3decd727002347c4d 100644
--- a/app/code/Magento/Newsletter/view/adminhtml/templates/template/edit.phtml
+++ b/app/code/Magento/Newsletter/view/adminhtml/templates/template/edit.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /* @var $this \Magento\Newsletter\Block\Adminhtml\Template\Edit */
 ?>
 <form action="<?php echo $this->getSaveUrl() ?>" method="post" id="newsletter_template_edit_form">
@@ -22,7 +25,7 @@
         <input type="hidden" id="preview_id" name="id" value="" />
     </div>
 </form>
-<script type="text/javascript">
+<script>
 require(['jquery', 'mage/mage', 'prototype'], function(jQuery){
 
 //<![CDATA[
diff --git a/app/code/Magento/Newsletter/view/adminhtml/templates/template/list.phtml b/app/code/Magento/Newsletter/view/adminhtml/templates/template/list.phtml
index 9228aa320afa5a3a1b7e14c79d3773991984487f..1d27f92b1d57cdd4045ec77cdb17e900c03c669d 100644
--- a/app/code/Magento/Newsletter/view/adminhtml/templates/template/list.phtml
+++ b/app/code/Magento/Newsletter/view/adminhtml/templates/template/list.phtml
@@ -3,5 +3,8 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php echo $this->getChildHtml('grid') ?>
diff --git a/app/code/Magento/Newsletter/view/frontend/templates/js/components.phtml b/app/code/Magento/Newsletter/view/frontend/templates/js/components.phtml
index 99be8e37348cec69521e018a61f416324e582a94..43f7e9c30c0126f46204910ee749ef83ad81e815 100644
--- a/app/code/Magento/Newsletter/view/frontend/templates/js/components.phtml
+++ b/app/code/Magento/Newsletter/view/frontend/templates/js/components.phtml
@@ -3,5 +3,8 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php echo $this->getChildHtml() ?>
diff --git a/app/code/Magento/Newsletter/view/frontend/templates/subscribe.phtml b/app/code/Magento/Newsletter/view/frontend/templates/subscribe.phtml
index d3134fd7eb4ced6e1780239a7beecea39979de21..b98b69a605794e4836b217d7cb9660d1ef0f4e1a 100644
--- a/app/code/Magento/Newsletter/view/frontend/templates/subscribe.phtml
+++ b/app/code/Magento/Newsletter/view/frontend/templates/subscribe.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <div class="block newsletter">
     <div class="title"><strong>Newsletter</strong></div>
diff --git a/app/code/Magento/OfflinePayments/Block/Form/AbstractInstruction.php b/app/code/Magento/OfflinePayments/Block/Form/AbstractInstruction.php
new file mode 100644
index 0000000000000000000000000000000000000000..4ad7357cfdad92245256ae974a65cdc7ab7497b5
--- /dev/null
+++ b/app/code/Magento/OfflinePayments/Block/Form/AbstractInstruction.php
@@ -0,0 +1,32 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+namespace Magento\OfflinePayments\Block\Form;
+
+/**
+ * Abstract class for Cash On Delivery and Bank Transfer payment method form
+ */
+abstract class AbstractInstruction extends \Magento\Payment\Block\Form
+{
+    /**
+     * Instructions text
+     *
+     * @var string
+     */
+    protected $_instructions;
+
+    /**
+     * Get instructions text from config
+     *
+     * @return string
+     */
+    public function getInstructions()
+    {
+        if (is_null($this->_instructions)) {
+            $this->_instructions = $this->getMethod()->getInstructions();
+        }
+        return $this->_instructions;
+    }
+}
diff --git a/app/code/Magento/OfflinePayments/Block/Form/Banktransfer.php b/app/code/Magento/OfflinePayments/Block/Form/Banktransfer.php
index 1693929cdaabdc74e1661aee498d1d1bbf13765b..d71654418a38f9dc5a8939c6fa0952a0f3ab4edf 100644
--- a/app/code/Magento/OfflinePayments/Block/Form/Banktransfer.php
+++ b/app/code/Magento/OfflinePayments/Block/Form/Banktransfer.php
@@ -8,32 +8,12 @@ namespace Magento\OfflinePayments\Block\Form;
 /**
  * Block for Bank Transfer payment method form
  */
-class Banktransfer extends \Magento\Payment\Block\Form
+class Banktransfer extends \Magento\OfflinePayments\Block\Form\AbstractInstruction
 {
-    /**
-     * Instructions text
-     *
-     * @var string
-     */
-    protected $_instructions;
-
     /**
      * Bank transfer template
      *
      * @var string
      */
     protected $_template = 'form/banktransfer.phtml';
-
-    /**
-     * Get instructions text from config
-     *
-     * @return string
-     */
-    public function getInstructions()
-    {
-        if (is_null($this->_instructions)) {
-            $this->_instructions = $this->getMethod()->getInstructions();
-        }
-        return $this->_instructions;
-    }
 }
diff --git a/app/code/Magento/OfflinePayments/Block/Form/Cashondelivery.php b/app/code/Magento/OfflinePayments/Block/Form/Cashondelivery.php
index af0850e5860b8a762eb3b5ae0ce13ae1950aeea6..1e14cabb9ba2b08204d3b62a029f2aa793f22d62 100644
--- a/app/code/Magento/OfflinePayments/Block/Form/Cashondelivery.php
+++ b/app/code/Magento/OfflinePayments/Block/Form/Cashondelivery.php
@@ -8,32 +8,12 @@ namespace Magento\OfflinePayments\Block\Form;
 /**
  * Block for Cash On Delivery payment method form
  */
-class Cashondelivery extends \Magento\Payment\Block\Form
+class Cashondelivery extends \Magento\OfflinePayments\Block\Form\AbstractInstruction
 {
-    /**
-     * Instructions text
-     *
-     * @var string
-     */
-    protected $_instructions;
-
     /**
      * Cash on delivery template
      *
      * @var string
      */
     protected $_template = 'form/cashondelivery.phtml';
-
-    /**
-     * Get instructions text from config
-     *
-     * @return string
-     */
-    public function getInstructions()
-    {
-        if (is_null($this->_instructions)) {
-            $this->_instructions = $this->getMethod()->getInstructions();
-        }
-        return $this->_instructions;
-    }
 }
diff --git a/app/code/Magento/OfflinePayments/Model/Banktransfer.php b/app/code/Magento/OfflinePayments/Model/Banktransfer.php
index 044dd3301ba602fa85727bd7e6f9a71d5e816d75..4cc48a575272039644fe0c1211c4172249647f60 100644
--- a/app/code/Magento/OfflinePayments/Model/Banktransfer.php
+++ b/app/code/Magento/OfflinePayments/Model/Banktransfer.php
@@ -39,14 +39,4 @@ class Banktransfer extends \Magento\Payment\Model\Method\AbstractMethod
      * @var bool
      */
     protected $_isOffline = true;
-
-    /**
-     * Get instructions text from config
-     *
-     * @return string
-     */
-    public function getInstructions()
-    {
-        return trim($this->getConfigData('instructions'));
-    }
 }
diff --git a/app/code/Magento/OfflinePayments/Model/Observer.php b/app/code/Magento/OfflinePayments/Model/Observer.php
index 61fc00d538940128a62e8aecafed8b3c22a7c433..1cb45ac753f568f3ffca0f55a33ea4a8a14d2000 100644
--- a/app/code/Magento/OfflinePayments/Model/Observer.php
+++ b/app/code/Magento/OfflinePayments/Model/Observer.php
@@ -21,9 +21,11 @@ class Observer
     {
         /** @var \Magento\Sales\Model\Order\Payment $payment */
         $payment = $observer->getEvent()->getPayment();
-        $banktransfer = \Magento\OfflinePayments\Model\Banktransfer::PAYMENT_METHOD_BANKTRANSFER_CODE;
-        if ($payment->getMethod() === $banktransfer) {
-            $payment->setAdditionalInformation('instructions', $payment->getMethodInstance()->getInstructions());
+        if ($payment->getMethod() === Banktransfer::PAYMENT_METHOD_BANKTRANSFER_CODE) {
+            $payment->setAdditionalInformation(
+                'instructions',
+                $payment->getMethodInstance()->getConfigData('instructions')
+            );
         }
     }
 }
diff --git a/app/code/Magento/OfflinePayments/composer.json b/app/code/Magento/OfflinePayments/composer.json
index ebd7adb688e87e7d74e562b3e9efc3dbca9e5365..c04204b657bd8091ccc5ee7e16490a5b75f90bae 100644
--- a/app/code/Magento/OfflinePayments/composer.json
+++ b/app/code/Magento/OfflinePayments/composer.json
@@ -3,12 +3,12 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-payment": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-payment": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/OfflinePayments/view/adminhtml/templates/form/banktransfer.phtml b/app/code/Magento/OfflinePayments/view/adminhtml/templates/form/banktransfer.phtml
index 1614526442054e579a736d55704928c29903a232..00c2561926980aa38e5eaa3bd63996707b0d1611 100644
--- a/app/code/Magento/OfflinePayments/view/adminhtml/templates/form/banktransfer.phtml
+++ b/app/code/Magento/OfflinePayments/view/adminhtml/templates/form/banktransfer.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php if ($instructions = $this->getInstructions()): ?>
     <ul class="form-list checkout-agreements" id="payment_form_<?php echo $this->getMethodCode() ?>" style="display:none;">
diff --git a/app/code/Magento/OfflinePayments/view/adminhtml/templates/form/cashondelivery.phtml b/app/code/Magento/OfflinePayments/view/adminhtml/templates/form/cashondelivery.phtml
index 0a5c26ad023bceae16049d1cb103fb6dd4362c43..7ff8963cc97da2b0053375a6586b716ff5328ac8 100644
--- a/app/code/Magento/OfflinePayments/view/adminhtml/templates/form/cashondelivery.phtml
+++ b/app/code/Magento/OfflinePayments/view/adminhtml/templates/form/cashondelivery.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * @var $this \Magento\OfflinePayments\Block\Form\Cashondelivery
  */
diff --git a/app/code/Magento/OfflinePayments/view/adminhtml/templates/form/checkmo.phtml b/app/code/Magento/OfflinePayments/view/adminhtml/templates/form/checkmo.phtml
index b7f61d6302315b76676d37b466c6ecd66d123cca..f8173386f3e8f0bceb76d1009fde8576970d8166 100644
--- a/app/code/Magento/OfflinePayments/view/adminhtml/templates/form/checkmo.phtml
+++ b/app/code/Magento/OfflinePayments/view/adminhtml/templates/form/checkmo.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <fieldset class="fieldset payment method" id="payment_form_<?php echo $this->getMethodCode() ?>" style="display:none">
     <?php if ($this->getMethod()->getPayableTo()): ?>
diff --git a/app/code/Magento/OfflinePayments/view/adminhtml/templates/form/purchaseorder.phtml b/app/code/Magento/OfflinePayments/view/adminhtml/templates/form/purchaseorder.phtml
index f4cebb6ed674bfcde647badcf8e2817e1b142463..4996b06a724b2c6cad2e17dc6b5b3ddf8fe1588f 100644
--- a/app/code/Magento/OfflinePayments/view/adminhtml/templates/form/purchaseorder.phtml
+++ b/app/code/Magento/OfflinePayments/view/adminhtml/templates/form/purchaseorder.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <fieldset class="fieldset payment method" id="payment_form_<?php echo $this->getMethodCode() ?>" style="display:none">
     <div class="field field-number required">
diff --git a/app/code/Magento/OfflinePayments/view/adminhtml/templates/info/checkmo.phtml b/app/code/Magento/OfflinePayments/view/adminhtml/templates/info/checkmo.phtml
index fbfb425f02e518e31b82f7bf7c5231568430f653..7fba0d299840c717df6c17b711e9a88405f4a629 100644
--- a/app/code/Magento/OfflinePayments/view/adminhtml/templates/info/checkmo.phtml
+++ b/app/code/Magento/OfflinePayments/view/adminhtml/templates/info/checkmo.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php echo $this->escapeHtml($this->getMethod()->getTitle()) ?>
 <?php if ($this->getInfo()->getAdditionalData()): ?>
diff --git a/app/code/Magento/OfflinePayments/view/adminhtml/templates/info/pdf/checkmo.phtml b/app/code/Magento/OfflinePayments/view/adminhtml/templates/info/pdf/checkmo.phtml
index d89c99066fa6a523cd9a76a5e89ad5a777eb0dfa..ab8c7e3d74d597b669886117a1c5e05053d15d71 100644
--- a/app/code/Magento/OfflinePayments/view/adminhtml/templates/info/pdf/checkmo.phtml
+++ b/app/code/Magento/OfflinePayments/view/adminhtml/templates/info/pdf/checkmo.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php echo $this->escapeHtml($this->getMethod()->getTitle()) ?>
     {{pdf_row_separator}}
diff --git a/app/code/Magento/OfflinePayments/view/frontend/templates/form/banktransfer.phtml b/app/code/Magento/OfflinePayments/view/frontend/templates/form/banktransfer.phtml
index fb12d3bb982f9e3c5d7f7032077dc28b7f20d591..c1e8d9c0a5625fc662c349b33621f0070862bd68 100644
--- a/app/code/Magento/OfflinePayments/view/frontend/templates/form/banktransfer.phtml
+++ b/app/code/Magento/OfflinePayments/view/frontend/templates/form/banktransfer.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php if ($instructions = $this->getInstructions()): ?>
     <div class="items <?php echo $this->getMethodCode() ?> instructions agreement content" id="payment_form_<?php echo $this->getMethodCode() ?>" style="display: none;">
diff --git a/app/code/Magento/OfflinePayments/view/frontend/templates/form/cashondelivery.phtml b/app/code/Magento/OfflinePayments/view/frontend/templates/form/cashondelivery.phtml
index 8d608055fa9468c19920eed7d6383d6d739088f4..0f6277e6868e8b257eb18363716baa0e3ddf2091 100644
--- a/app/code/Magento/OfflinePayments/view/frontend/templates/form/cashondelivery.phtml
+++ b/app/code/Magento/OfflinePayments/view/frontend/templates/form/cashondelivery.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * @see \Magento\OfflinePayments\Block\Form\Cashondelivery
  */
diff --git a/app/code/Magento/OfflinePayments/view/frontend/templates/form/checkmo.phtml b/app/code/Magento/OfflinePayments/view/frontend/templates/form/checkmo.phtml
index c012151c31a36dfd260924629e9771e3e4df8be7..4fcebe8885965b94d6b2238cea15e962b5e2daaa 100644
--- a/app/code/Magento/OfflinePayments/view/frontend/templates/form/checkmo.phtml
+++ b/app/code/Magento/OfflinePayments/view/frontend/templates/form/checkmo.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php if ($this->getMethod()->getMailingAddress() || $this->getMethod()->getPayableTo()): ?>
     <dl class="items check payable" id="payment_form_<?php echo $this->getMethodCode() ?>" style="display:none;">
diff --git a/app/code/Magento/OfflinePayments/view/frontend/templates/form/purchaseorder.phtml b/app/code/Magento/OfflinePayments/view/frontend/templates/form/purchaseorder.phtml
index 050b7b7d07cff9b6e87623e85fb469c7d4a6a076..905181a1274f9611c33ca73262d83961803c399e 100644
--- a/app/code/Magento/OfflinePayments/view/frontend/templates/form/purchaseorder.phtml
+++ b/app/code/Magento/OfflinePayments/view/frontend/templates/form/purchaseorder.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <fieldset class="fieldset items <?php echo $this->getMethodCode() ?>" id="payment_form_<?php echo $this->getMethodCode() ?>" style="display: none">
     <div class="field number required">
diff --git a/app/code/Magento/OfflinePayments/view/frontend/templates/info/checkmo.phtml b/app/code/Magento/OfflinePayments/view/frontend/templates/info/checkmo.phtml
index daf65b7812a03d5a2337e3779e42e35f7334428d..c482883c6e0ed4743df973c91b85f94474717157 100644
--- a/app/code/Magento/OfflinePayments/view/frontend/templates/info/checkmo.phtml
+++ b/app/code/Magento/OfflinePayments/view/frontend/templates/info/checkmo.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <dl class="payment-method checkmemo">
     <dt class="title"><?php echo $this->escapeHtml($this->getMethod()->getTitle()) ?></dt>
diff --git a/app/code/Magento/OfflineShipping/Block/Adminhtml/Form/Field/Import.php b/app/code/Magento/OfflineShipping/Block/Adminhtml/Form/Field/Import.php
index 9ec682cf4a5075e8365a6fc9f813386596afd787..b646ccf5bfdb3eacda4fa7683595a974483f7a69 100644
--- a/app/code/Magento/OfflineShipping/Block/Adminhtml/Form/Field/Import.php
+++ b/app/code/Magento/OfflineShipping/Block/Adminhtml/Form/Field/Import.php
@@ -33,7 +33,7 @@ class Import extends \Magento\Framework\Data\Form\Element\AbstractElement
         $html .= '<input id="time_condition" type="hidden" name="' . $this->getName() . '" value="' . time() . '" />';
 
         $html .= <<<EndHTML
-        <script type="text/javascript">
+        <script>
         Event.observe($('carriers_tablerate_condition_name'), 'change', checkConditionName.bind(this));
         function checkConditionName(event)
         {
diff --git a/app/code/Magento/OfflineShipping/Model/Carrier/Flatrate.php b/app/code/Magento/OfflineShipping/Model/Carrier/Flatrate.php
index 0b9317ec79f85a8554227a68c36a977ed813b3c7..ff96421b77034d67dc4cf1cb6ab6c4d83077d3ad 100644
--- a/app/code/Magento/OfflineShipping/Model/Carrier/Flatrate.php
+++ b/app/code/Magento/OfflineShipping/Model/Carrier/Flatrate.php
@@ -29,24 +29,24 @@ class Flatrate extends \Magento\Shipping\Model\Carrier\AbstractCarrier implement
     protected $_rateResultFactory;
 
     /**
-     * @var \Magento\Sales\Model\Quote\Address\RateResult\MethodFactory
+     * @var \Magento\Quote\Model\Quote\Address\RateResult\MethodFactory
      */
     protected $_rateMethodFactory;
 
     /**
      * @param \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig
-     * @param \Magento\Sales\Model\Quote\Address\RateResult\ErrorFactory $rateErrorFactory
+     * @param \Magento\Quote\Model\Quote\Address\RateResult\ErrorFactory $rateErrorFactory
      * @param \Psr\Log\LoggerInterface $logger
      * @param \Magento\Shipping\Model\Rate\ResultFactory $rateResultFactory
-     * @param \Magento\Sales\Model\Quote\Address\RateResult\MethodFactory $rateMethodFactory
+     * @param \Magento\Quote\Model\Quote\Address\RateResult\MethodFactory $rateMethodFactory
      * @param array $data
      */
     public function __construct(
         \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig,
-        \Magento\Sales\Model\Quote\Address\RateResult\ErrorFactory $rateErrorFactory,
+        \Magento\Quote\Model\Quote\Address\RateResult\ErrorFactory $rateErrorFactory,
         \Psr\Log\LoggerInterface $logger,
         \Magento\Shipping\Model\Rate\ResultFactory $rateResultFactory,
-        \Magento\Sales\Model\Quote\Address\RateResult\MethodFactory $rateMethodFactory,
+        \Magento\Quote\Model\Quote\Address\RateResult\MethodFactory $rateMethodFactory,
         array $data = []
     ) {
         $this->_rateResultFactory = $rateResultFactory;
@@ -55,10 +55,12 @@ class Flatrate extends \Magento\Shipping\Model\Carrier\AbstractCarrier implement
     }
 
     /**
-     * @param \Magento\Sales\Model\Quote\Address\RateRequest $request
+     * @param \Magento\Quote\Model\Quote\Address\RateRequest $request
      * @return Result|bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
-    public function collectRates(\Magento\Sales\Model\Quote\Address\RateRequest $request)
+    public function collectRates(\Magento\Quote\Model\Quote\Address\RateRequest $request)
     {
         if (!$this->getConfigFlag('active')) {
             return false;
@@ -103,7 +105,7 @@ class Flatrate extends \Magento\Shipping\Model\Carrier\AbstractCarrier implement
         $shippingPrice = $this->getFinalPriceWithHandlingFee($shippingPrice);
 
         if ($shippingPrice !== false) {
-            /** @var \Magento\Sales\Model\Quote\Address\RateResult\Method $method */
+            /** @var \Magento\Quote\Model\Quote\Address\RateResult\Method $method */
             $method = $this->_rateMethodFactory->create();
 
             $method->setCarrier('flatrate');
diff --git a/app/code/Magento/OfflineShipping/Model/Carrier/Freeshipping.php b/app/code/Magento/OfflineShipping/Model/Carrier/Freeshipping.php
index ab82bfa33343be9a2e22954daa1bb85db4a22783..0586b180b8832ae34b16ca6267c77dab93df82e4 100644
--- a/app/code/Magento/OfflineShipping/Model/Carrier/Freeshipping.php
+++ b/app/code/Magento/OfflineShipping/Model/Carrier/Freeshipping.php
@@ -30,24 +30,24 @@ class Freeshipping extends \Magento\Shipping\Model\Carrier\AbstractCarrier imple
     protected $_rateResultFactory;
 
     /**
-     * @var \Magento\Sales\Model\Quote\Address\RateResult\MethodFactory
+     * @var \Magento\Quote\Model\Quote\Address\RateResult\MethodFactory
      */
     protected $_rateMethodFactory;
 
     /**
      * @param \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig
-     * @param \Magento\Sales\Model\Quote\Address\RateResult\ErrorFactory $rateErrorFactory
+     * @param \Magento\Quote\Model\Quote\Address\RateResult\ErrorFactory $rateErrorFactory
      * @param \Psr\Log\LoggerInterface $logger
      * @param \Magento\Shipping\Model\Rate\ResultFactory $rateResultFactory
-     * @param \Magento\Sales\Model\Quote\Address\RateResult\MethodFactory $rateMethodFactory
+     * @param \Magento\Quote\Model\Quote\Address\RateResult\MethodFactory $rateMethodFactory
      * @param array $data
      */
     public function __construct(
         \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig,
-        \Magento\Sales\Model\Quote\Address\RateResult\ErrorFactory $rateErrorFactory,
+        \Magento\Quote\Model\Quote\Address\RateResult\ErrorFactory $rateErrorFactory,
         \Psr\Log\LoggerInterface $logger,
         \Magento\Shipping\Model\Rate\ResultFactory $rateResultFactory,
-        \Magento\Sales\Model\Quote\Address\RateResult\MethodFactory $rateMethodFactory,
+        \Magento\Quote\Model\Quote\Address\RateResult\MethodFactory $rateMethodFactory,
         array $data = []
     ) {
         $this->_rateResultFactory = $rateResultFactory;
@@ -58,10 +58,10 @@ class Freeshipping extends \Magento\Shipping\Model\Carrier\AbstractCarrier imple
     /**
      * FreeShipping Rates Collector
      *
-     * @param \Magento\Sales\Model\Quote\Address\RateRequest $request
+     * @param \Magento\Quote\Model\Quote\Address\RateRequest $request
      * @return \Magento\Shipping\Model\Rate\Result|bool
      */
-    public function collectRates(\Magento\Sales\Model\Quote\Address\RateRequest $request)
+    public function collectRates(\Magento\Quote\Model\Quote\Address\RateRequest $request)
     {
         if (!$this->getConfigFlag('active')) {
             return false;
@@ -76,7 +76,7 @@ class Freeshipping extends \Magento\Shipping\Model\Carrier\AbstractCarrier imple
             'free_shipping_subtotal'
         )
         ) {
-            /** @var \Magento\Sales\Model\Quote\Address\RateResult\Method $method */
+            /** @var \Magento\Quote\Model\Quote\Address\RateResult\Method $method */
             $method = $this->_rateMethodFactory->create();
 
             $method->setCarrier('freeshipping');
@@ -97,7 +97,7 @@ class Freeshipping extends \Magento\Shipping\Model\Carrier\AbstractCarrier imple
     /**
      * Allows free shipping when all product items have free shipping (promotions etc.)
      *
-     * @param \Magento\Sales\Model\Quote\Address\RateRequest $request
+     * @param \Magento\Quote\Model\Quote\Address\RateRequest $request
      * @return void
      */
     protected function _updateFreeMethodQuote($request)
diff --git a/app/code/Magento/OfflineShipping/Model/Carrier/Pickup.php b/app/code/Magento/OfflineShipping/Model/Carrier/Pickup.php
index 917b1f28a8e7187d0e9d2b29550369d162819605..e1411217d1d5d1b96dae3cfd82ee4ba78047b4b1 100644
--- a/app/code/Magento/OfflineShipping/Model/Carrier/Pickup.php
+++ b/app/code/Magento/OfflineShipping/Model/Carrier/Pickup.php
@@ -24,24 +24,24 @@ class Pickup extends \Magento\Shipping\Model\Carrier\AbstractCarrier implements
     protected $_rateResultFactory;
 
     /**
-     * @var \Magento\Sales\Model\Quote\Address\RateResult\MethodFactory
+     * @var \Magento\Quote\Model\Quote\Address\RateResult\MethodFactory
      */
     protected $_rateMethodFactory;
 
     /**
      * @param \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig
-     * @param \Magento\Sales\Model\Quote\Address\RateResult\ErrorFactory $rateErrorFactory
+     * @param \Magento\Quote\Model\Quote\Address\RateResult\ErrorFactory $rateErrorFactory
      * @param \Psr\Log\LoggerInterface $logger
      * @param \Magento\Shipping\Model\Rate\ResultFactory $rateResultFactory
-     * @param \Magento\Sales\Model\Quote\Address\RateResult\MethodFactory $rateMethodFactory
+     * @param \Magento\Quote\Model\Quote\Address\RateResult\MethodFactory $rateMethodFactory
      * @param array $data
      */
     public function __construct(
         \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig,
-        \Magento\Sales\Model\Quote\Address\RateResult\ErrorFactory $rateErrorFactory,
+        \Magento\Quote\Model\Quote\Address\RateResult\ErrorFactory $rateErrorFactory,
         \Psr\Log\LoggerInterface $logger,
         \Magento\Shipping\Model\Rate\ResultFactory $rateResultFactory,
-        \Magento\Sales\Model\Quote\Address\RateResult\MethodFactory $rateMethodFactory,
+        \Magento\Quote\Model\Quote\Address\RateResult\MethodFactory $rateMethodFactory,
         array $data = []
     ) {
         $this->_rateResultFactory = $rateResultFactory;
@@ -50,10 +50,11 @@ class Pickup extends \Magento\Shipping\Model\Carrier\AbstractCarrier implements
     }
 
     /**
-     * @param \Magento\Sales\Model\Quote\Address\RateRequest $request
+     * @param \Magento\Quote\Model\Quote\Address\RateRequest $request
      * @return \Magento\Shipping\Model\Rate\Result
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
-    public function collectRates(\Magento\Sales\Model\Quote\Address\RateRequest $request)
+    public function collectRates(\Magento\Quote\Model\Quote\Address\RateRequest $request)
     {
         if (!$this->getConfigFlag('active')) {
             return false;
@@ -63,7 +64,7 @@ class Pickup extends \Magento\Shipping\Model\Carrier\AbstractCarrier implements
         $result = $this->_rateResultFactory->create();
 
         if (!empty($rate)) {
-            /** @var \Magento\Sales\Model\Quote\Address\RateResult\Method $method */
+            /** @var \Magento\Quote\Model\Quote\Address\RateResult\Method $method */
             $method = $this->_rateMethodFactory->create();
 
             $method->setCarrier('pickup');
diff --git a/app/code/Magento/OfflineShipping/Model/Carrier/Tablerate.php b/app/code/Magento/OfflineShipping/Model/Carrier/Tablerate.php
index d9088f362f7bb5a74f8bfbb3bd8bdf01a4128c09..4456feee0578c38c56347f4ec2f474d5d5d765fa 100644
--- a/app/code/Magento/OfflineShipping/Model/Carrier/Tablerate.php
+++ b/app/code/Magento/OfflineShipping/Model/Carrier/Tablerate.php
@@ -34,7 +34,7 @@ class Tablerate extends \Magento\Shipping\Model\Carrier\AbstractCarrier implemen
     protected $_rateResultFactory;
 
     /**
-     * @var \Magento\Sales\Model\Quote\Address\RateResult\MethodFactory
+     * @var \Magento\Quote\Model\Quote\Address\RateResult\MethodFactory
      */
     protected $_resultMethodFactory;
 
@@ -45,19 +45,20 @@ class Tablerate extends \Magento\Shipping\Model\Carrier\AbstractCarrier implemen
 
     /**
      * @param \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig
-     * @param \Magento\Sales\Model\Quote\Address\RateResult\ErrorFactory $rateErrorFactory
+     * @param \Magento\Quote\Model\Quote\Address\RateResult\ErrorFactory $rateErrorFactory
      * @param \Psr\Log\LoggerInterface $logger
      * @param \Magento\Shipping\Model\Rate\ResultFactory $rateResultFactory
-     * @param \Magento\Sales\Model\Quote\Address\RateResult\MethodFactory $resultMethodFactory
+     * @param \Magento\Quote\Model\Quote\Address\RateResult\MethodFactory $resultMethodFactory
      * @param \Magento\OfflineShipping\Model\Resource\Carrier\TablerateFactory $tablerateFactory
      * @param array $data
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function __construct(
         \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig,
-        \Magento\Sales\Model\Quote\Address\RateResult\ErrorFactory $rateErrorFactory,
+        \Magento\Quote\Model\Quote\Address\RateResult\ErrorFactory $rateErrorFactory,
         \Psr\Log\LoggerInterface $logger,
         \Magento\Shipping\Model\Rate\ResultFactory $rateResultFactory,
-        \Magento\Sales\Model\Quote\Address\RateResult\MethodFactory $resultMethodFactory,
+        \Magento\Quote\Model\Quote\Address\RateResult\MethodFactory $resultMethodFactory,
         \Magento\OfflineShipping\Model\Resource\Carrier\TablerateFactory $tablerateFactory,
         array $data = []
     ) {
@@ -71,10 +72,13 @@ class Tablerate extends \Magento\Shipping\Model\Carrier\AbstractCarrier implemen
     }
 
     /**
-     * @param \Magento\Sales\Model\Quote\Address\RateRequest $request
+     * @param \Magento\Quote\Model\Quote\Address\RateRequest $request
      * @return \Magento\Shipping\Model\Rate\Result
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
-    public function collectRates(\Magento\Sales\Model\Quote\Address\RateRequest $request)
+    public function collectRates(\Magento\Quote\Model\Quote\Address\RateRequest $request)
     {
         if (!$this->getConfigFlag('active')) {
             return false;
@@ -144,7 +148,7 @@ class Tablerate extends \Magento\Shipping\Model\Carrier\AbstractCarrier implemen
         $request->setPackageQty($oldQty);
 
         if (!empty($rate) && $rate['price'] >= 0) {
-            /** @var \Magento\Sales\Model\Quote\Address\RateResult\Method $method */
+            /** @var \Magento\Quote\Model\Quote\Address\RateResult\Method $method */
             $method = $this->_resultMethodFactory->create();
 
             $method->setCarrier('tablerate');
@@ -164,7 +168,7 @@ class Tablerate extends \Magento\Shipping\Model\Carrier\AbstractCarrier implemen
 
             $result->append($method);
         } else {
-            /** @var \Magento\Sales\Model\Quote\Address\RateResult\Error $error */
+            /** @var \Magento\Quote\Model\Quote\Address\RateResult\Error $error */
             $error = $this->_rateErrorFactory->create(
                 [
                     'data' => [
@@ -181,10 +185,10 @@ class Tablerate extends \Magento\Shipping\Model\Carrier\AbstractCarrier implemen
     }
 
     /**
-     * @param \Magento\Sales\Model\Quote\Address\RateRequest $request
+     * @param \Magento\Quote\Model\Quote\Address\RateRequest $request
      * @return array|bool
      */
-    public function getRate(\Magento\Sales\Model\Quote\Address\RateRequest $request)
+    public function getRate(\Magento\Quote\Model\Quote\Address\RateRequest $request)
     {
         return $this->_tablerateFactory->create()->getRate($request);
     }
diff --git a/app/code/Magento/OfflineShipping/Model/Config/Backend/Tablerate.php b/app/code/Magento/OfflineShipping/Model/Config/Backend/Tablerate.php
index 6056d7dbbb79206acb1bbc821790824db609a667..c0b311a1073addee40ce31187c130a2d8f7dfc98 100644
--- a/app/code/Magento/OfflineShipping/Model/Config/Backend/Tablerate.php
+++ b/app/code/Magento/OfflineShipping/Model/Config/Backend/Tablerate.php
@@ -46,6 +46,8 @@ class Tablerate extends \Magento\Framework\App\Config\Value
      */
     public function afterSave()
     {
-        $this->_tablerateFactory->create()->uploadAndImport($this);
+        /** @var \Magento\OfflineShipping\Model\Resource\Carrier\Tablerate $tableRate */
+        $tableRate = $this->_tablerateFactory->create();
+        $tableRate->uploadAndImport($this);
     }
 }
diff --git a/app/code/Magento/OfflineShipping/Model/Observer/SalesRule/ActionsTab.php b/app/code/Magento/OfflineShipping/Model/Observer/SalesRule/ActionsTab.php
index b1e56563d747751aa40a5e68d34fbf05dee31348..10068f3d7e548a1d290ddc5dcc98a4e934dcab03 100644
--- a/app/code/Magento/OfflineShipping/Model/Observer/SalesRule/ActionsTab.php
+++ b/app/code/Magento/OfflineShipping/Model/Observer/SalesRule/ActionsTab.php
@@ -24,22 +24,24 @@ class ActionsTab
         $form = $observer->getForm();
         foreach ($form->getElements() as $element) {
             /** @var \Magento\Framework\Data\Form\Element\AbstractElement $element */
-            if ($element->getId() == 'action_fieldset') {
-                $element->addField(
-                    'simple_free_shipping',
-                    'select',
-                    [
-                        'label' => __('Free Shipping'),
-                        'title' => __('Free Shipping'),
-                        'name' => 'simple_free_shipping',
-                        'options' => [
-                            0 => __('No'),
-                            Rule::FREE_SHIPPING_ITEM => __('For matching items only'),
-                            Rule::FREE_SHIPPING_ADDRESS => __('For shipment with matching items'),
-                        ]
-                    ]
-                );
+            if ($element->getId() != 'action_fieldset') {
+                continue;
             }
+
+            $element->addField(
+                'simple_free_shipping',
+                'select',
+                [
+                    'label' => __('Free Shipping'),
+                    'title' => __('Free Shipping'),
+                    'name' => 'simple_free_shipping',
+                    'options' => [
+                        0 => __('No'),
+                        Rule::FREE_SHIPPING_ITEM => __('For matching items only'),
+                        Rule::FREE_SHIPPING_ADDRESS => __('For shipment with matching items'),
+                    ]
+                ]
+            );
         }
     }
 }
diff --git a/app/code/Magento/OfflineShipping/Model/Plugin/Checkout/Block/Cart/Shipping.php b/app/code/Magento/OfflineShipping/Model/Plugin/Checkout/Block/Cart/Shipping.php
index 6247a343565f386fa8d6b7833a1f864463f69a42..b3bc246030b9386d471eb0819511a097e7edb208 100644
--- a/app/code/Magento/OfflineShipping/Model/Plugin/Checkout/Block/Cart/Shipping.php
+++ b/app/code/Magento/OfflineShipping/Model/Plugin/Checkout/Block/Cart/Shipping.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Checkout cart shipping block plugin
  *
diff --git a/app/code/Magento/OfflineShipping/Model/Quote/Freeshipping.php b/app/code/Magento/OfflineShipping/Model/Quote/Freeshipping.php
index 2bee101e64c5bf9d28fe802788bfa64b72b22615..efe7c7f63f4062d051244b81ce6fc64f12953ebc 100644
--- a/app/code/Magento/OfflineShipping/Model/Quote/Freeshipping.php
+++ b/app/code/Magento/OfflineShipping/Model/Quote/Freeshipping.php
@@ -5,9 +5,9 @@
  */
 namespace Magento\OfflineShipping\Model\Quote;
 
-use Magento\Sales\Model\Quote\Address;
+use Magento\Quote\Model\Quote\Address;
 
-class Freeshipping extends \Magento\Sales\Model\Quote\Address\Total\AbstractTotal
+class Freeshipping extends \Magento\Quote\Model\Quote\Address\Total\AbstractTotal
 {
     /**
      * Discount calculation object
@@ -37,8 +37,9 @@ class Freeshipping extends \Magento\Sales\Model\Quote\Address\Total\AbstractTota
     /**
      * Collect information about free shipping for all address items
      *
-     * @param   \Magento\Sales\Model\Quote\Address $address
+     * @param   \Magento\Quote\Model\Quote\Address $address
      * @return  \Magento\OfflineShipping\Model\Quote\Freeshipping
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function collect(Address $address)
     {
@@ -91,8 +92,9 @@ class Freeshipping extends \Magento\Sales\Model\Quote\Address\Total\AbstractTota
      * Add information about free shipping for all address items to address object
      * By default we not present such information
      *
-     * @param   \Magento\Sales\Model\Quote\Address $address
+     * @param   \Magento\Quote\Model\Quote\Address $address
      * @return  \Magento\OfflineShipping\Model\Quote\Freeshipping
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function fetch(Address $address)
     {
diff --git a/app/code/Magento/OfflineShipping/Model/Resource/Carrier/Tablerate.php b/app/code/Magento/OfflineShipping/Model/Resource/Carrier/Tablerate.php
index 71115790441eda305dc29ce836b6cc2f9a3c56e0..23985af45cddcce41807863f3aa01f40b40dfb14 100644
--- a/app/code/Magento/OfflineShipping/Model/Resource/Carrier/Tablerate.php
+++ b/app/code/Magento/OfflineShipping/Model/Resource/Carrier/Tablerate.php
@@ -14,6 +14,10 @@ namespace Magento\OfflineShipping\Model\Resource\Carrier;
 use Magento\Framework\Filesystem;
 use Magento\Framework\Filesystem\DirectoryList;
 
+/**
+ * @SuppressWarnings(PHPMD.TooManyFields)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class Tablerate extends \Magento\Framework\Model\Resource\Db\AbstractDb
 {
     /**
@@ -160,10 +164,10 @@ class Tablerate extends \Magento\Framework\Model\Resource\Db\AbstractDb
     /**
      * Return table rate array or false by rate request
      *
-     * @param \Magento\Sales\Model\Quote\Address\RateRequest $request
+     * @param \Magento\Quote\Model\Quote\Address\RateRequest $request
      * @return array|bool
      */
-    public function getRate(\Magento\Sales\Model\Quote\Address\RateRequest $request)
+    public function getRate(\Magento\Quote\Model\Quote\Address\RateRequest $request)
     {
         $adapter = $this->_getReadAdapter();
         $bind = [
@@ -241,6 +245,8 @@ class Tablerate extends \Magento\Framework\Model\Resource\Db\AbstractDb
      * @return \Magento\OfflineShipping\Model\Resource\Carrier\Tablerate
      * @todo: this method should be refactored as soon as updated design will be provided
      * @see https://wiki.corp.x.com/display/MCOMS/Magento+Filesystem+Decisions
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function uploadAndImport(\Magento\Framework\Object $object)
     {
@@ -403,6 +409,8 @@ class Tablerate extends \Magento\Framework\Model\Resource\Db\AbstractDb
      * @param array $row
      * @param int $rowNumber
      * @return array|false
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _getImportRow($row, $rowNumber = 0)
     {
diff --git a/app/code/Magento/OfflineShipping/Model/SalesRule/Calculator.php b/app/code/Magento/OfflineShipping/Model/SalesRule/Calculator.php
index 91472f535d0de7b666b8a0ce73ad97ac978f6e0a..1654e43f567b336ffc5bbcd0a8ed41f300916507 100644
--- a/app/code/Magento/OfflineShipping/Model/SalesRule/Calculator.php
+++ b/app/code/Magento/OfflineShipping/Model/SalesRule/Calculator.php
@@ -18,10 +18,10 @@ class Calculator extends \Magento\SalesRule\Model\Validator
      * This process not affect information about applied rules, coupon code etc.
      * This information will be added during discount amounts processing
      *
-     * @param   \Magento\Sales\Model\Quote\Item\AbstractItem $item
+     * @param   \Magento\Quote\Model\Quote\Item\AbstractItem $item
      * @return  \Magento\OfflineShipping\Model\SalesRule\Calculator
      */
-    public function processFreeShipping(\Magento\Sales\Model\Quote\Item\AbstractItem $item)
+    public function processFreeShipping(\Magento\Quote\Model\Quote\Item\AbstractItem $item)
     {
         $address = $item->getAddress();
         $item->setFreeShipping(false);
diff --git a/app/code/Magento/OfflineShipping/composer.json b/app/code/Magento/OfflineShipping/composer.json
index f233c74afbce1774f2e970ab6526181b9f7adf0e..f3929a902fdafb878a0a2ba086be0c198e90c143 100644
--- a/app/code/Magento/OfflineShipping/composer.json
+++ b/app/code/Magento/OfflineShipping/composer.json
@@ -3,19 +3,20 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/module-shipping": "0.42.0-beta3",
-        "magento/module-catalog": "0.42.0-beta3",
-        "magento/module-sales": "0.42.0-beta3",
-        "magento/module-sales-rule": "0.42.0-beta3",
-        "magento/module-directory": "0.42.0-beta3",
-        "magento/module-checkout": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/module-shipping": "0.42.0-beta4",
+        "magento/module-catalog": "0.42.0-beta4",
+        "magento/module-sales": "0.42.0-beta4",
+        "magento/module-sales-rule": "0.42.0-beta4",
+        "magento/module-directory": "0.42.0-beta4",
+        "magento/module-checkout": "0.42.0-beta4",
+        "magento/module-quote": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/OfflineShipping/etc/module.xml b/app/code/Magento/OfflineShipping/etc/module.xml
index 5da3359ec501835cf840114f4259880bf075d630..84e7bb228b473549cbe494f2e85c7742fb4c14a3 100644
--- a/app/code/Magento/OfflineShipping/etc/module.xml
+++ b/app/code/Magento/OfflineShipping/etc/module.xml
@@ -10,6 +10,7 @@
         <sequence>
             <module name="Magento_Store"/>
             <module name="Magento_Sales"/>
+            <module name="Magento_Quote"/>
             <module name="Magento_SalesRule"/>
         </sequence>
     </module>
diff --git a/app/code/Magento/OfflineShipping/sql/offlineshipping_setup/install-2.0.0.php b/app/code/Magento/OfflineShipping/sql/offlineshipping_setup/install-2.0.0.php
index 58a2c907d2b583b5528c2c551968d40ecf14cd68..578f6ec469c2ab6027c13ed2ded120f0a8ee8665 100644
--- a/app/code/Magento/OfflineShipping/sql/offlineshipping_setup/install-2.0.0.php
+++ b/app/code/Magento/OfflineShipping/sql/offlineshipping_setup/install-2.0.0.php
@@ -98,7 +98,7 @@ $installer->getConnection()->addColumn(
     'Free Shipping'
 );
 $installer->getConnection()->addColumn(
-    $installer->getTable('sales_quote_address'),
+    $installer->getTable('quote_address'),
     'free_shipping',
     \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT,
     null,
@@ -106,7 +106,7 @@ $installer->getConnection()->addColumn(
     'Free Shipping'
 );
 $installer->getConnection()->addColumn(
-    $installer->getTable('sales_quote_item'),
+    $installer->getTable('quote_item'),
     'free_shipping',
     \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT,
     null,
@@ -114,7 +114,7 @@ $installer->getConnection()->addColumn(
     'Free Shipping'
 );
 $installer->getConnection()->addColumn(
-    $installer->getTable('sales_quote_address_item'),
+    $installer->getTable('quote_address_item'),
     'free_shipping',
     \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
     null,
diff --git a/app/code/Magento/PageCache/Model/App/FrontController/BuiltinPlugin.php b/app/code/Magento/PageCache/Model/App/FrontController/BuiltinPlugin.php
index 50fb8210de847b77a69fe3fca838c7cd98b7c62f..83b9140a6c6adc3f34b02ceabb225eac10221316 100644
--- a/app/code/Magento/PageCache/Model/App/FrontController/BuiltinPlugin.php
+++ b/app/code/Magento/PageCache/Model/App/FrontController/BuiltinPlugin.php
@@ -57,6 +57,7 @@ class BuiltinPlugin
      * @param callable $proceed
      * @param \Magento\Framework\App\RequestInterface $request
      * @return \Magento\Framework\Controller\ResultInterface|\Magento\Framework\App\Response\Http
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function aroundDispatch(
         \Magento\Framework\App\FrontControllerInterface $subject,
diff --git a/app/code/Magento/PageCache/Model/App/FrontController/VarnishPlugin.php b/app/code/Magento/PageCache/Model/App/FrontController/VarnishPlugin.php
index 99ed432631319828421421921d74add7edf5520a..da41b208c7859b4081ee2ac8d50ae227580cabee 100644
--- a/app/code/Magento/PageCache/Model/App/FrontController/VarnishPlugin.php
+++ b/app/code/Magento/PageCache/Model/App/FrontController/VarnishPlugin.php
@@ -45,6 +45,7 @@ class VarnishPlugin
      * @param callable $proceed
      * @param \Magento\Framework\App\RequestInterface $request
      * @return false|\Magento\Framework\App\Response\Http|\Magento\Framework\Controller\ResultInterface
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function aroundDispatch(
         \Magento\Framework\App\FrontControllerInterface $subject,
diff --git a/app/code/Magento/PageCache/Model/Controller/Result/BuiltinPlugin.php b/app/code/Magento/PageCache/Model/Controller/Result/BuiltinPlugin.php
index 554d300c2a9996d3815675d59175058c9db31ac2..a9d3bbaaa6e89309eb151c44d7474622b29bce3f 100644
--- a/app/code/Magento/PageCache/Model/Controller/Result/BuiltinPlugin.php
+++ b/app/code/Magento/PageCache/Model/Controller/Result/BuiltinPlugin.php
@@ -57,6 +57,7 @@ class BuiltinPlugin
      * @param callable $proceed
      * @param ResponseHttp $response
      * @return \Magento\Framework\Controller\ResultInterface
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function aroundRenderResult(
         \Magento\Framework\Controller\ResultInterface $subject,
diff --git a/app/code/Magento/PageCache/composer.json b/app/code/Magento/PageCache/composer.json
index ea05fb95664aede50963b3e2160b9970a7916805..055bc6ae45fa3b9ea2a7d9dbfa09ee14629bdc88 100644
--- a/app/code/Magento/PageCache/composer.json
+++ b/app/code/Magento/PageCache/composer.json
@@ -3,13 +3,13 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/PageCache/view/adminhtml/templates/page_cache_validation.phtml b/app/code/Magento/PageCache/view/adminhtml/templates/page_cache_validation.phtml
index 850b1485f3c09b7f0b2a3b927ed98ae819c3beb1..8eec48025d43653dfe2e60470a0ef7d235571465 100644
--- a/app/code/Magento/PageCache/view/adminhtml/templates/page_cache_validation.phtml
+++ b/app/code/Magento/PageCache/view/adminhtml/templates/page_cache_validation.phtml
@@ -7,7 +7,7 @@
 
 <?php /** @var \Magento\PageCache\Block\System\Config\Form\Field\Export $this */
 ?>
-<script type="text/javascript">
+<script>
 require(['jquery'], function($){
 
     //<![CDATA[
diff --git a/app/code/Magento/PageCache/view/frontend/templates/javascript.phtml b/app/code/Magento/PageCache/view/frontend/templates/javascript.phtml
index 6ca6c0f13f0978db0ebc100e2c49920bbfdba4a0..2a3100b1acee5ff75c8e48ddff4086f8d589668e 100644
--- a/app/code/Magento/PageCache/view/frontend/templates/javascript.phtml
+++ b/app/code/Magento/PageCache/view/frontend/templates/javascript.phtml
@@ -5,7 +5,7 @@
  */
 ?>
 <?php /** @var \Magento\PageCache\Block\Javascript $this */ ?>
-<script type="text/javascript">
+<script>
 require([
 	"jquery",
 	"mage/mage"
diff --git a/app/code/Magento/PageCache/view/frontend/templates/js/components.phtml b/app/code/Magento/PageCache/view/frontend/templates/js/components.phtml
index 99be8e37348cec69521e018a61f416324e582a94..43f7e9c30c0126f46204910ee749ef83ad81e815 100644
--- a/app/code/Magento/PageCache/view/frontend/templates/js/components.phtml
+++ b/app/code/Magento/PageCache/view/frontend/templates/js/components.phtml
@@ -3,5 +3,8 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php echo $this->getChildHtml() ?>
diff --git a/app/code/Magento/Payment/Block/Form/Cc.php b/app/code/Magento/Payment/Block/Form/Cc.php
index e6ae5c10e030493187d089d8d7d285376c065077..494e76a7a7580eba2cbdb06aaa66526f33c29cab 100644
--- a/app/code/Magento/Payment/Block/Form/Cc.php
+++ b/app/code/Magento/Payment/Block/Form/Cc.php
@@ -37,6 +37,7 @@ class Cc extends \Magento\Payment\Block\Form
      * Retrieve availables credit card types
      *
      * @return array
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function getCcAvailableTypes()
     {
diff --git a/app/code/Magento/Payment/Block/Form/Container.php b/app/code/Magento/Payment/Block/Form/Container.php
index e6de064e3ff0eead9557e6f7299b3d36ba6f2639..a1d596a98d8f553b2c4b23274eecbe5ba306b246 100644
--- a/app/code/Magento/Payment/Block/Form/Container.php
+++ b/app/code/Magento/Payment/Block/Form/Container.php
@@ -10,7 +10,7 @@ use Magento\Payment\Model\Method\AbstractMethod;
 /**
  * Base container block for payment methods forms
  *
- * @method \Magento\Sales\Model\Quote getQuote()
+ * @method \Magento\Quote\Model\Quote getQuote()
  *
  * @author      Magento Core Team <core@magentocommerce.com>
  */
diff --git a/app/code/Magento/Payment/Block/Info.php b/app/code/Magento/Payment/Block/Info.php
index bb1ecc9dec5b1f4b8efbe76efe96e571268e01d9..533acfaaf234635529a3b42d1a55cfb35ab8565a 100644
--- a/app/code/Magento/Payment/Block/Info.php
+++ b/app/code/Magento/Payment/Block/Info.php
@@ -114,6 +114,7 @@ class Info extends \Magento\Framework\View\Element\Template
      * false => full information may be shown
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsSecureMode()
     {
diff --git a/app/code/Magento/Payment/Block/Info/Instructions.php b/app/code/Magento/Payment/Block/Info/Instructions.php
index 2caeeb5f2f9e65098cdbc7ea5876b7f30ebc4771..55ffee89fa13694ff993d40637e4a2e14c2ba205 100644
--- a/app/code/Magento/Payment/Block/Info/Instructions.php
+++ b/app/code/Magento/Payment/Block/Info/Instructions.php
@@ -33,7 +33,7 @@ class Instructions extends \Magento\Payment\Block\Info
         if (is_null($this->_instructions)) {
             $this->_instructions = $this->getInfo()->getAdditionalInformation(
                 'instructions'
-            ) ?: $this->getMethod()->getInstructions();
+            ) ?: $this->getMethod()->getConfigData('instructions');
         }
         return $this->_instructions;
     }
diff --git a/app/code/Magento/Payment/Helper/Data.php b/app/code/Magento/Payment/Helper/Data.php
index 057619e94bba0cc2303bb4d3aeba9e5aa29b6aff..6f77f919472e893a745e1ae516f3c7dc88e90cac 100644
--- a/app/code/Magento/Payment/Helper/Data.php
+++ b/app/code/Magento/Payment/Helper/Data.php
@@ -6,7 +6,7 @@
 namespace Magento\Payment\Helper;
 
 use Magento\Payment\Model\Method\Substitution;
-use Magento\Sales\Model\Quote;
+use Magento\Quote\Model\Quote;
 use Magento\Store\Model\Store;
 use Magento\Payment\Block\Form;
 use Magento\Payment\Model\Info;
@@ -18,6 +18,7 @@ use Magento\Payment\Model\MethodInterface;
 
 /**
  * Payment module base helper
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Data extends \Magento\Framework\App\Helper\AbstractHelper
 {
@@ -52,7 +53,7 @@ class Data extends \Magento\Framework\App\Helper\AbstractHelper
     /**
      * App emulation model
      *
-     * @var \Magento\Core\Model\App\Emulation
+     * @var \Magento\Store\Model\App\Emulation
      */
     protected $_appEmulation;
 
@@ -68,7 +69,7 @@ class Data extends \Magento\Framework\App\Helper\AbstractHelper
      * @param \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig
      * @param LayoutFactory $layoutFactory
      * @param \Magento\Payment\Model\Method\Factory $paymentMethodFactory
-     * @param \Magento\Core\Model\App\Emulation $appEmulation
+     * @param \Magento\Store\Model\App\Emulation $appEmulation
      * @param \Magento\Payment\Model\Config $paymentConfig
      * @param \Magento\Framework\App\Config\Initial $initialConfig
      */
@@ -77,7 +78,7 @@ class Data extends \Magento\Framework\App\Helper\AbstractHelper
         \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig,
         LayoutFactory $layoutFactory,
         \Magento\Payment\Model\Method\Factory $paymentMethodFactory,
-        \Magento\Core\Model\App\Emulation $appEmulation,
+        \Magento\Store\Model\App\Emulation $appEmulation,
         \Magento\Payment\Model\Config $paymentConfig,
         \Magento\Framework\App\Config\Initial $initialConfig
     ) {
@@ -265,6 +266,8 @@ class Data extends \Magento\Framework\App\Helper\AbstractHelper
      * @param bool $withGroups
      * @param Store|null $store
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function getPaymentMethodList($sorted = true, $asLabelValue = false, $withGroups = false, $store = null)
     {
diff --git a/app/code/Magento/Payment/Model/Cart.php b/app/code/Magento/Payment/Model/Cart.php
index 92ff2846c4bd1118fcb1a0e285decba84cec4da3..85962afa760aac013aa161f98e21225336030a10 100644
--- a/app/code/Magento/Payment/Model/Cart.php
+++ b/app/code/Magento/Payment/Model/Cart.php
@@ -75,7 +75,7 @@ class Cart
     /**
      * @param \Magento\Payment\Model\Cart\SalesModel\Factory $salesModelFactory
      * @param \Magento\Framework\Event\ManagerInterface $eventManager
-     * @param \Magento\Sales\Model\Order|\Magento\Sales\Model\Quote $salesModel
+     * @param \Magento\Sales\Model\Order|\Magento\Quote\Model\Quote $salesModel
      */
     public function __construct(
         \Magento\Payment\Model\Cart\SalesModel\Factory $salesModelFactory,
diff --git a/app/code/Magento/Payment/Model/Cart/SalesModel/Factory.php b/app/code/Magento/Payment/Model/Cart/SalesModel/Factory.php
index b40ba8827fb01cf6c09fdb4677f91ed3d9e5a5e4..186a6fc45f5c8dc0ffe77e8f31aa54476da796ba 100644
--- a/app/code/Magento/Payment/Model/Cart/SalesModel/Factory.php
+++ b/app/code/Magento/Payment/Model/Cart/SalesModel/Factory.php
@@ -26,14 +26,14 @@ class Factory
     /**
      * Wrap sales model with Magento\Payment\Model\Cart\SalesModel\SalesModelInterface
      *
-     * @param \Magento\Sales\Model\Order|\Magento\Sales\Model\Quote $salesModel
+     * @param \Magento\Sales\Model\Order|\Magento\Quote\Model\Quote $salesModel
      * @return \Magento\Payment\Model\Cart\SalesModel\SalesModelInterface
      * @throws \InvalidArgumentException
      */
     public function create($salesModel)
     {
         $arguments = ['salesModel' => $salesModel];
-        if ($salesModel instanceof \Magento\Sales\Model\Quote) {
+        if ($salesModel instanceof \Magento\Quote\Model\Quote) {
             return $this->_objectManager->create('Magento\Payment\Model\Cart\SalesModel\Quote', $arguments);
         } elseif ($salesModel instanceof \Magento\Sales\Model\Order) {
             return $this->_objectManager->create('Magento\Payment\Model\Cart\SalesModel\Order', $arguments);
diff --git a/app/code/Magento/Payment/Model/Cart/SalesModel/Quote.php b/app/code/Magento/Payment/Model/Cart/SalesModel/Quote.php
index cde66236a50e950b0f9b01149b215fe72ca22221..e63c59eedb7d841d911c410e6158539128506389 100644
--- a/app/code/Magento/Payment/Model/Cart/SalesModel/Quote.php
+++ b/app/code/Magento/Payment/Model/Cart/SalesModel/Quote.php
@@ -6,26 +6,26 @@
 namespace Magento\Payment\Model\Cart\SalesModel;
 
 /**
- * Wrapper for \Magento\Sales\Model\Quote sales model
+ * Wrapper for \Magento\Quote\Model\Quote sales model
  */
 class Quote implements \Magento\Payment\Model\Cart\SalesModel\SalesModelInterface
 {
     /**
      * Sales quote model instance
      *
-     * @var \Magento\Sales\Model\Quote
+     * @var \Magento\Quote\Model\Quote
      */
     protected $_salesModel;
 
     /**
-     * @var \Magento\Sales\Model\Quote\Address
+     * @var \Magento\Quote\Model\Quote\Address
      */
     protected $_address;
 
     /**
-     * @param \Magento\Sales\Model\Quote $salesModel
+     * @param \Magento\Quote\Model\Quote $salesModel
      */
-    public function __construct(\Magento\Sales\Model\Quote $salesModel)
+    public function __construct(\Magento\Quote\Model\Quote $salesModel)
     {
         $this->_salesModel = $salesModel;
         $this->_address = $this
diff --git a/app/code/Magento/Payment/Model/Cart/SalesModel/SalesModelInterface.php b/app/code/Magento/Payment/Model/Cart/SalesModel/SalesModelInterface.php
index 0bddf3c020ebf7fc48e11efc7dd47321ff3f74e5..117eb8b1d48e2ba5fd61cf5c504e67f6730c7003 100644
--- a/app/code/Magento/Payment/Model/Cart/SalesModel/SalesModelInterface.php
+++ b/app/code/Magento/Payment/Model/Cart/SalesModel/SalesModelInterface.php
@@ -49,7 +49,7 @@ interface SalesModelInterface
     /**
      * Return object that contains tax related fields
      *
-     * @return \Magento\Sales\Model\Order|\Magento\Sales\Model\Quote\Address
+     * @return \Magento\Sales\Model\Order|\Magento\Quote\Model\Quote\Address
      */
     public function getTaxContainer();
 }
diff --git a/app/code/Magento/Payment/Model/Checks/CanUseCheckout.php b/app/code/Magento/Payment/Model/Checks/CanUseCheckout.php
index 5011f79ea55b1124328cbb9d0f436b5780b83ec0..62a4866cc94b5246a66c6b1108025fcfb95ee0ca 100644
--- a/app/code/Magento/Payment/Model/Checks/CanUseCheckout.php
+++ b/app/code/Magento/Payment/Model/Checks/CanUseCheckout.php
@@ -5,7 +5,7 @@
  */
 namespace Magento\Payment\Model\Checks;
 
-use Magento\Sales\Model\Quote;
+use Magento\Quote\Model\Quote;
 
 class CanUseCheckout implements SpecificationInterface
 {
diff --git a/app/code/Magento/Payment/Model/Checks/CanUseForCountry.php b/app/code/Magento/Payment/Model/Checks/CanUseForCountry.php
index 13df707a97fc26892432a2d8e702355cf7a5cb67..0a5920ad18120f2f861dbdbf36f50da7d87284ac 100644
--- a/app/code/Magento/Payment/Model/Checks/CanUseForCountry.php
+++ b/app/code/Magento/Payment/Model/Checks/CanUseForCountry.php
@@ -5,7 +5,7 @@
  */
 namespace Magento\Payment\Model\Checks;
 
-use Magento\Sales\Model\Quote;
+use Magento\Quote\Model\Quote;
 
 class CanUseForCountry implements SpecificationInterface
 {
diff --git a/app/code/Magento/Payment/Model/Checks/CanUseForCurrency.php b/app/code/Magento/Payment/Model/Checks/CanUseForCurrency.php
index e795aa0c9a752bbefe0de96e34ecb39c793a2fc2..0087598de9c14ba93be23f5d065b44ba5b295e46 100644
--- a/app/code/Magento/Payment/Model/Checks/CanUseForCurrency.php
+++ b/app/code/Magento/Payment/Model/Checks/CanUseForCurrency.php
@@ -5,7 +5,7 @@
  */
 namespace Magento\Payment\Model\Checks;
 
-use Magento\Sales\Model\Quote;
+use Magento\Quote\Model\Quote;
 
 class CanUseForCurrency implements SpecificationInterface
 {
@@ -14,7 +14,7 @@ class CanUseForCurrency implements SpecificationInterface
      * Purposed to allow use in controllers some logic that was implemented in blocks only before
      *
      * @param PaymentMethodChecksInterface $paymentMethod
-     * @param \Magento\Sales\Model\Quote $quote
+     * @param \Magento\Quote\Model\Quote $quote
      * @return bool
      */
     public function isApplicable(PaymentMethodChecksInterface $paymentMethod, Quote $quote)
diff --git a/app/code/Magento/Payment/Model/Checks/CanUseInternal.php b/app/code/Magento/Payment/Model/Checks/CanUseInternal.php
index c055d114c62ce592f7d44f3173a452cb43f18ac2..49b558cc4a253881b0e9f085da9c7889a057e36d 100644
--- a/app/code/Magento/Payment/Model/Checks/CanUseInternal.php
+++ b/app/code/Magento/Payment/Model/Checks/CanUseInternal.php
@@ -5,7 +5,7 @@
  */
 namespace Magento\Payment\Model\Checks;
 
-use Magento\Sales\Model\Quote;
+use Magento\Quote\Model\Quote;
 
 class CanUseInternal implements SpecificationInterface
 {
@@ -14,7 +14,7 @@ class CanUseInternal implements SpecificationInterface
      * Purposed to allow use in controllers some logic that was implemented in blocks only before
      *
      * @param PaymentMethodChecksInterface $paymentMethod
-     * @param \Magento\Sales\Model\Quote $quote
+     * @param \Magento\Quote\Model\Quote $quote
      * @return bool
      */
     public function isApplicable(PaymentMethodChecksInterface $paymentMethod, Quote $quote)
diff --git a/app/code/Magento/Payment/Model/Checks/Composite.php b/app/code/Magento/Payment/Model/Checks/Composite.php
index 8aee06f32fd7a60d68f4c5147d845cf4fad470f7..c96af9b1a949a1067109f8cae811daaa9419e02e 100644
--- a/app/code/Magento/Payment/Model/Checks/Composite.php
+++ b/app/code/Magento/Payment/Model/Checks/Composite.php
@@ -5,7 +5,7 @@
  */
 namespace Magento\Payment\Model\Checks;
 
-use Magento\Sales\Model\Quote;
+use Magento\Quote\Model\Quote;
 
 class Composite implements SpecificationInterface
 {
@@ -24,7 +24,7 @@ class Composite implements SpecificationInterface
      * Check whether payment method is applicable to quote
      *
      * @param PaymentMethodChecksInterface $paymentMethod
-     * @param \Magento\Sales\Model\Quote $quote
+     * @param \Magento\Quote\Model\Quote $quote
      * @return bool
      */
     public function isApplicable(PaymentMethodChecksInterface $paymentMethod, Quote $quote)
diff --git a/app/code/Magento/Payment/Model/Checks/SpecificationInterface.php b/app/code/Magento/Payment/Model/Checks/SpecificationInterface.php
index 420e36b0bc48291a9a6245240fd9e3dbc3c6f9b7..9a93c05d0c26f531a5ffc80ff11d17e78bcdb5a9 100644
--- a/app/code/Magento/Payment/Model/Checks/SpecificationInterface.php
+++ b/app/code/Magento/Payment/Model/Checks/SpecificationInterface.php
@@ -5,7 +5,7 @@
  */
 namespace Magento\Payment\Model\Checks;
 
-use Magento\Sales\Model\Quote;
+use Magento\Quote\Model\Quote;
 
 /**
  * Specification checks interface
@@ -16,7 +16,7 @@ interface SpecificationInterface
      * Check whether payment method is applicable to quote
      *
      * @param PaymentMethodChecksInterface $paymentMethod
-     * @param \Magento\Sales\Model\Quote $quote
+     * @param \Magento\Quote\Model\Quote $quote
      * @return bool
      */
     public function isApplicable(PaymentMethodChecksInterface $paymentMethod, Quote $quote);
diff --git a/app/code/Magento/Payment/Model/Checks/TotalMinMax.php b/app/code/Magento/Payment/Model/Checks/TotalMinMax.php
index 409c258267b131b98179b8e269e3b1a5dcc59deb..1503da90a7ecf752e2a2ef718cdcd91bf32753b7 100644
--- a/app/code/Magento/Payment/Model/Checks/TotalMinMax.php
+++ b/app/code/Magento/Payment/Model/Checks/TotalMinMax.php
@@ -5,7 +5,7 @@
  */
 namespace Magento\Payment\Model\Checks;
 
-use Magento\Sales\Model\Quote;
+use Magento\Quote\Model\Quote;
 
 class TotalMinMax implements SpecificationInterface
 {
@@ -23,7 +23,7 @@ class TotalMinMax implements SpecificationInterface
      * Check whether payment method is applicable to quote
      *
      * @param PaymentMethodChecksInterface $paymentMethod
-     * @param \Magento\Sales\Model\Quote $quote
+     * @param \Magento\Quote\Model\Quote $quote
      * @return bool
      */
     public function isApplicable(PaymentMethodChecksInterface $paymentMethod, Quote $quote)
diff --git a/app/code/Magento/Payment/Model/Checks/ZeroTotal.php b/app/code/Magento/Payment/Model/Checks/ZeroTotal.php
index c0771bb69d480d033e63d46d273f8a8e72341012..f28b43300124acf8dd77159eaeba845820761211 100644
--- a/app/code/Magento/Payment/Model/Checks/ZeroTotal.php
+++ b/app/code/Magento/Payment/Model/Checks/ZeroTotal.php
@@ -5,7 +5,7 @@
  */
 namespace Magento\Payment\Model\Checks;
 
-use Magento\Sales\Model\Quote;
+use Magento\Quote\Model\Quote;
 
 class ZeroTotal implements SpecificationInterface
 {
@@ -14,7 +14,7 @@ class ZeroTotal implements SpecificationInterface
      * Purposed to allow use in controllers some logic that was implemented in blocks only before
      *
      * @param PaymentMethodChecksInterface $paymentMethod
-     * @param \Magento\Sales\Model\Quote $quote
+     * @param \Magento\Quote\Model\Quote $quote
      * @return bool
      */
     public function isApplicable(PaymentMethodChecksInterface $paymentMethod, Quote $quote)
diff --git a/app/code/Magento/Payment/Model/Method/AbstractMethod.php b/app/code/Magento/Payment/Model/Method/AbstractMethod.php
index 4da1c5e8f1da8203a6f8c3c19256bd1481c097b0..d34a730f44babe204a2412b7e2f70ff9cdd2f83d 100644
--- a/app/code/Magento/Payment/Model/Method/AbstractMethod.php
+++ b/app/code/Magento/Payment/Model/Method/AbstractMethod.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Payment\Model\Method;
 
 use Magento\Payment\Model\Checks\PaymentMethodChecksInterface;
@@ -13,6 +16,8 @@ use Magento\Sales\Model\Order\Payment;
 /**
  * Payment method abstract model
  * @method AbstractMethod setStore()
+ * @SuppressWarnings(PHPMD.ExcessivePublicCount)
+ * @SuppressWarnings(PHPMD.TooManyFields)
  */
 abstract class AbstractMethod extends \Magento\Framework\Object implements MethodInterface, PaymentMethodChecksInterface
 {
@@ -305,6 +310,7 @@ abstract class AbstractMethod extends \Magento\Framework\Object implements Metho
      *
      * @param   \Magento\Framework\Object $payment
      * @return  bool
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function canVoid(\Magento\Framework\Object $payment)
     {
@@ -358,6 +364,7 @@ abstract class AbstractMethod extends \Magento\Framework\Object implements Metho
      * @param \Magento\Payment\Model\Info $payment
      * @param string $transactionId
      * @return array
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function fetchTransactionInfo(\Magento\Payment\Model\Info $payment, $transactionId)
     {
@@ -419,6 +426,7 @@ abstract class AbstractMethod extends \Magento\Framework\Object implements Metho
      *
      * @param string $currencyCode
      * @return bool
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function canUseForCurrency($currencyCode)
     {
@@ -507,6 +515,7 @@ abstract class AbstractMethod extends \Magento\Framework\Object implements Metho
      *
      * @return $this
      * @throws \Magento\Framework\Model\Exception
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function order(\Magento\Framework\Object $payment, $amount)
     {
@@ -524,6 +533,7 @@ abstract class AbstractMethod extends \Magento\Framework\Object implements Metho
      *
      * @return $this
      * @throws \Magento\Framework\Model\Exception
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function authorize(\Magento\Framework\Object $payment, $amount)
     {
@@ -541,6 +551,7 @@ abstract class AbstractMethod extends \Magento\Framework\Object implements Metho
      *
      * @return $this
      * @throws \Magento\Framework\Model\Exception
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function capture(\Magento\Framework\Object $payment, $amount)
     {
@@ -588,6 +599,7 @@ abstract class AbstractMethod extends \Magento\Framework\Object implements Metho
      * @param float $amount
      * @return $this
      * @throws \Magento\Framework\Model\Exception
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function refund(\Magento\Framework\Object $payment, $amount)
     {
@@ -615,6 +627,7 @@ abstract class AbstractMethod extends \Magento\Framework\Object implements Metho
      * @param \Magento\Framework\Object $payment
      *
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function cancel(\Magento\Framework\Object $payment)
     {
@@ -641,6 +654,7 @@ abstract class AbstractMethod extends \Magento\Framework\Object implements Metho
      *
      * @param \Magento\Payment\Model\Info $payment
      * @return bool
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function canReviewPayment(\Magento\Payment\Model\Info $payment)
     {
@@ -735,7 +749,7 @@ abstract class AbstractMethod extends \Magento\Framework\Object implements Metho
      *
      * TODO: payment method instance is not supposed to know about quote
      *
-     * @param \Magento\Sales\Model\Quote|null $quote
+     * @param \Magento\Quote\Model\Quote|null $quote
      * @return bool
      */
     public function isAvailable($quote = null)
@@ -761,6 +775,7 @@ abstract class AbstractMethod extends \Magento\Framework\Object implements Metho
      * @param object $stateObject
      *
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function initialize($paymentAction, $stateObject)
     {
@@ -795,6 +810,7 @@ abstract class AbstractMethod extends \Magento\Framework\Object implements Metho
      * Define if debugging is enabled
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getDebugFlag()
     {
diff --git a/app/code/Magento/Payment/Model/Method/Cc.php b/app/code/Magento/Payment/Model/Method/Cc.php
index ed926439af75a54d6e115e7556546102b97969b3..031f6155cbf5b2ecdda8fe1fadc8887c6b28f992 100644
--- a/app/code/Magento/Payment/Model/Method/Cc.php
+++ b/app/code/Magento/Payment/Model/Method/Cc.php
@@ -339,7 +339,7 @@ class Cc extends \Magento\Payment\Model\Method\AbstractMethod
     /**
      * Check whether there are CC types set in configuration
      *
-     * @param \Magento\Sales\Model\Quote|null $quote
+     * @param \Magento\Quote\Model\Quote|null $quote
      * @return bool
      */
     public function isAvailable($quote = null)
@@ -464,7 +464,7 @@ class Cc extends \Magento\Payment\Model\Method\AbstractMethod
     private function _isPlaceOrder()
     {
         $info = $this->getInfoInstance();
-        if ($info instanceof \Magento\Sales\Model\Quote\Payment) {
+        if ($info instanceof \Magento\Quote\Model\Quote\Payment) {
             return false;
         } elseif ($info instanceof \Magento\Sales\Model\Order\Payment) {
             return true;
diff --git a/app/code/Magento/Payment/Model/Method/Free.php b/app/code/Magento/Payment/Model/Method/Free.php
index 17b55736f52808a95b9eab74860dae9c5516d9c5..c229101b5a514a689bbd31604d1d9c2ff5d0abbd 100644
--- a/app/code/Magento/Payment/Model/Method/Free.php
+++ b/app/code/Magento/Payment/Model/Method/Free.php
@@ -63,7 +63,7 @@ class Free extends \Magento\Payment\Model\Method\AbstractMethod
     /**
      * Check whether method is available
      *
-     * @param \Magento\Sales\Model\Quote|null $quote
+     * @param \Magento\Quote\Model\Quote|null $quote
      * @return bool
      */
     public function isAvailable($quote = null)
diff --git a/app/code/Magento/Payment/Model/MethodList.php b/app/code/Magento/Payment/Model/MethodList.php
index e6777330456e6df7b71a9aa8dd1d739f7ef6fa83..8ba8a76d77acc33da2bb8e9c2f1423776ed76313 100644
--- a/app/code/Magento/Payment/Model/MethodList.php
+++ b/app/code/Magento/Payment/Model/MethodList.php
@@ -33,10 +33,10 @@ class MethodList
     }
 
     /**
-     * @param \Magento\Sales\Model\Quote $quote
+     * @param \Magento\Quote\Model\Quote $quote
      * @return \Magento\Payment\Model\MethodInterface[]
      */
-    public function getAvailableMethods(\Magento\Sales\Model\Quote $quote = null)
+    public function getAvailableMethods(\Magento\Quote\Model\Quote $quote = null)
     {
         $store = $quote ? $quote->getStoreId() : null;
         $methods = [];
@@ -54,10 +54,10 @@ class MethodList
      * Check payment method model
      *
      * @param \Magento\Payment\Model\MethodInterface $method
-     * @param \Magento\Sales\Model\Quote $quote
+     * @param \Magento\Quote\Model\Quote $quote
      * @return bool
      */
-    protected function _canUseMethod($method, \Magento\Sales\Model\Quote $quote)
+    protected function _canUseMethod($method, \Magento\Quote\Model\Quote $quote)
     {
         return $this->methodSpecificationFactory->create(
             [
diff --git a/app/code/Magento/Payment/composer.json b/app/code/Magento/Payment/composer.json
index 1f55fcdc3a829ad8d48df657b9b74da1bc61021b..3eb01931bb2d4403e608b4128601355aea4a0154 100644
--- a/app/code/Magento/Payment/composer.json
+++ b/app/code/Magento/Payment/composer.json
@@ -3,16 +3,17 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-core": "0.42.0-beta3",
-        "magento/module-sales": "0.42.0-beta3",
-        "magento/module-centinel": "0.42.0-beta3",
-        "magento/module-checkout": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-core": "0.42.0-beta4",
+        "magento/module-sales": "0.42.0-beta4",
+        "magento/module-centinel": "0.42.0-beta4",
+        "magento/module-checkout": "0.42.0-beta4",
+        "magento/module-quote": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/Payment/view/adminhtml/templates/form/cc.phtml b/app/code/Magento/Payment/view/adminhtml/templates/form/cc.phtml
index e1bf428047028828f7f6aacf118c1e1f9f95f852..847af50f37e715fdd4062a9995a1295343095434 100644
--- a/app/code/Magento/Payment/view/adminhtml/templates/form/cc.phtml
+++ b/app/code/Magento/Payment/view/adminhtml/templates/form/cc.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php $_code = $this->getMethodCode() ?>
 <fieldset class="fieldset payment method" id="payment_form_<?php echo $_code ?>" style="display:none">
@@ -80,7 +83,7 @@
 
             <div class="adv-container">&nbsp;</div>
 
-            <script type="text/javascript">
+            <script>
 require(['jquery', 'prototype'], function(jQuery){
 
     //<![CDATA[
diff --git a/app/code/Magento/Payment/view/adminhtml/templates/info/default.phtml b/app/code/Magento/Payment/view/adminhtml/templates/info/default.phtml
index 4ea8730a2d41bde140539bc5f21830dcbdfcde7e..cd03f7eab0e8fbefc664145bcf4d9834f012c5f1 100644
--- a/app/code/Magento/Payment/view/adminhtml/templates/info/default.phtml
+++ b/app/code/Magento/Payment/view/adminhtml/templates/info/default.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/Payment/view/adminhtml/templates/info/instructions.phtml b/app/code/Magento/Payment/view/adminhtml/templates/info/instructions.phtml
index c9dca93608218775b29f47fdea889eee4cbc9852..33159eaea14a5e42a5e511ec48bc425d37c10d73 100644
--- a/app/code/Magento/Payment/view/adminhtml/templates/info/instructions.phtml
+++ b/app/code/Magento/Payment/view/adminhtml/templates/info/instructions.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/Payment/view/adminhtml/templates/info/pdf/default.phtml b/app/code/Magento/Payment/view/adminhtml/templates/info/pdf/default.phtml
index 0134ea7b75a058a22dd10f904b419595c9fa837a..2002851d2a93a6f2df4aa05b22920cd9b7da1670 100644
--- a/app/code/Magento/Payment/view/adminhtml/templates/info/pdf/default.phtml
+++ b/app/code/Magento/Payment/view/adminhtml/templates/info/pdf/default.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/Payment/view/adminhtml/templates/info/substitution.phtml b/app/code/Magento/Payment/view/adminhtml/templates/info/substitution.phtml
index 4f5041d28690184aea99e5414f7ee4ea5f0d6f66..27b52b5c34dd6a4dda17e49dcf82bf345dc5fb6e 100644
--- a/app/code/Magento/Payment/view/adminhtml/templates/info/substitution.phtml
+++ b/app/code/Magento/Payment/view/adminhtml/templates/info/substitution.phtml
@@ -3,5 +3,8 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <div><?php echo __('%1 is not available. You still can process offline actions.', $this->escapeHtml($this->getMethod()->getTitle())) ?></div>
diff --git a/app/code/Magento/Payment/view/frontend/templates/form/cc.phtml b/app/code/Magento/Payment/view/frontend/templates/form/cc.phtml
index ba983304f5d2f6ba5f914df8788039c46db1f543..f551c252a4ce658ba14e1d7bfbddefbb4edf1b12 100644
--- a/app/code/Magento/Payment/view/frontend/templates/form/cc.phtml
+++ b/app/code/Magento/Payment/view/frontend/templates/form/cc.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php $_code = $this->getMethodCode() ?>
 <fieldset class="fieldset payment items ccard <?php echo $_code ?>" id="payment_form_<?php echo $_code ?>" style="display: none;">
diff --git a/app/code/Magento/Payment/view/frontend/templates/info/default.phtml b/app/code/Magento/Payment/view/frontend/templates/info/default.phtml
index b198076a0ab6d8e5839aeb65cff0c2d9c3822ee2..8ae798f3353f7bac36a68d53e6d66a045a968e8c 100644
--- a/app/code/Magento/Payment/view/frontend/templates/info/default.phtml
+++ b/app/code/Magento/Payment/view/frontend/templates/info/default.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/Payment/view/frontend/templates/info/instructions.phtml b/app/code/Magento/Payment/view/frontend/templates/info/instructions.phtml
index 9aa879810df38bf7366917fb0b50e8f69afaac16..9412214833d7a5b4be37d30a360ab2e6e6848439 100644
--- a/app/code/Magento/Payment/view/frontend/templates/info/instructions.phtml
+++ b/app/code/Magento/Payment/view/frontend/templates/info/instructions.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/Persistent/Helper/Data.php b/app/code/Magento/Persistent/Helper/Data.php
index 002dd36c26519ee2e9ad34d9370d2c7fd09476f1..b5b23229d72709f1e4e053fd64e1569410781297 100644
--- a/app/code/Magento/Persistent/Helper/Data.php
+++ b/app/code/Magento/Persistent/Helper/Data.php
@@ -157,6 +157,7 @@ class Data extends \Magento\Core\Helper\Data
      * Check if set `Clear on Logout` in config settings
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getClearOnLogout()
     {
@@ -191,6 +192,7 @@ class Data extends \Magento\Core\Helper\Data
      *
      * @param \Magento\Framework\Event\Observer $observer
      * @return bool
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function canProcess($observer)
     {
diff --git a/app/code/Magento/Persistent/Model/Observer/ClearExpiredCronJob.php b/app/code/Magento/Persistent/Model/Observer/ClearExpiredCronJob.php
index bbe563dd26d0c935eb266c9833ea0816f2b3ec07..8594aae8e72032ef5cd5752a9c22a5513ef31b24 100644
--- a/app/code/Magento/Persistent/Model/Observer/ClearExpiredCronJob.php
+++ b/app/code/Magento/Persistent/Model/Observer/ClearExpiredCronJob.php
@@ -39,6 +39,7 @@ class ClearExpiredCronJob
      *
      * @param \Magento\Cron\Model\Schedule $schedule
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function execute(\Magento\Cron\Model\Schedule $schedule)
     {
diff --git a/app/code/Magento/Persistent/Model/Observer/CustomerAuthenticatedEvent.php b/app/code/Magento/Persistent/Model/Observer/CustomerAuthenticatedEvent.php
index fe0d75eb032597228bfdd39e2f93ffaf64a333f6..598ddfd82a3b529000c263b22ef07bf3fe3a76d5 100644
--- a/app/code/Magento/Persistent/Model/Observer/CustomerAuthenticatedEvent.php
+++ b/app/code/Magento/Persistent/Model/Observer/CustomerAuthenticatedEvent.php
@@ -47,6 +47,7 @@ class CustomerAuthenticatedEvent
      *
      * @param \Magento\Framework\Event\Observer $observer
      * @return void
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function execute($observer)
     {
diff --git a/app/code/Magento/Persistent/Model/Observer/Session.php b/app/code/Magento/Persistent/Model/Observer/Session.php
index d2c0159dc2b8f92600968113b45e79413719d3cd..1576a9828fe0c1e081d404144e9d8d3dd95614ce 100644
--- a/app/code/Magento/Persistent/Model/Observer/Session.php
+++ b/app/code/Magento/Persistent/Model/Observer/Session.php
@@ -73,6 +73,7 @@ class Session
     /**
      * @param Observer $observer
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function synchronizePersistentOnLogin(Observer $observer)
     {
diff --git a/app/code/Magento/Persistent/Model/Observer/SetLoadPersistentQuote.php b/app/code/Magento/Persistent/Model/Observer/SetLoadPersistentQuote.php
index 457bc9f44f5689236fc28aad61e13580a6bbd528..c72e99656119e59a557c5a788e14cd79d30d4c0f 100644
--- a/app/code/Magento/Persistent/Model/Observer/SetLoadPersistentQuote.php
+++ b/app/code/Magento/Persistent/Model/Observer/SetLoadPersistentQuote.php
@@ -59,6 +59,7 @@ class SetLoadPersistentQuote
      *
      * @param \Magento\Framework\Event\Observer $observer
      * @return void
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function execute($observer)
     {
diff --git a/app/code/Magento/Persistent/Model/Observer/SetQuotePersistentData.php b/app/code/Magento/Persistent/Model/Observer/SetQuotePersistentData.php
index 4fec762f66b0d265a25e81d81008654e9f32e38d..e3f4d4315c694cd5a55e80aea094f5dd48f3de93 100644
--- a/app/code/Magento/Persistent/Model/Observer/SetQuotePersistentData.php
+++ b/app/code/Magento/Persistent/Model/Observer/SetQuotePersistentData.php
@@ -64,7 +64,7 @@ class SetQuotePersistentData
             return;
         }
 
-        /** @var $quote \Magento\Sales\Model\Quote */
+        /** @var $quote \Magento\Quote\Model\Quote */
         $quote = $observer->getEvent()->getQuote();
         if (!$quote) {
             return;
diff --git a/app/code/Magento/Persistent/Model/QuoteManager.php b/app/code/Magento/Persistent/Model/QuoteManager.php
index db16a3290400aa28900527e9894371060031ffc6..a594a0d734120755a11f007834c51d48b5981cfe 100644
--- a/app/code/Magento/Persistent/Model/QuoteManager.php
+++ b/app/code/Magento/Persistent/Model/QuoteManager.php
@@ -39,7 +39,7 @@ class QuoteManager
     protected $_setQuotePersistent = true;
 
     /**
-     * @var \Magento\Sales\Model\QuoteRepository
+     * @var \Magento\Quote\Model\QuoteRepository
      */
     protected $quoteRepository;
 
@@ -47,13 +47,13 @@ class QuoteManager
      * @param \Magento\Persistent\Helper\Session $persistentSession
      * @param \Magento\Persistent\Helper\Data $persistentData
      * @param \Magento\Checkout\Model\Session $checkoutSession
-     * @param \Magento\Sales\Model\QuoteRepository $quoteRepository
+     * @param \Magento\Quote\Model\QuoteRepository $quoteRepository
      */
     public function __construct(
         \Magento\Persistent\Helper\Session $persistentSession,
         \Magento\Persistent\Helper\Data $persistentData,
         \Magento\Checkout\Model\Session $checkoutSession,
-        \Magento\Sales\Model\QuoteRepository $quoteRepository
+        \Magento\Quote\Model\QuoteRepository $quoteRepository
     ) {
         $this->persistentSession = $persistentSession;
         $this->persistentData = $persistentData;
@@ -69,7 +69,7 @@ class QuoteManager
      */
     public function setGuest($checkQuote = false)
     {
-        /** @var $quote \Magento\Sales\Model\Quote */
+        /** @var $quote \Magento\Quote\Model\Quote */
         $quote = $this->checkoutSession->getQuote();
         if ($quote && $quote->getId()) {
             if ($checkQuote && !$this->persistentData->isShoppingCartPersist() && !$quote->getIsPersistent()) {
diff --git a/app/code/Magento/Persistent/Model/Session.php b/app/code/Magento/Persistent/Model/Session.php
index e69c4638d7d700256668f601b1aa9b441bc78841..afd932a75f7147222b469b3dbe41698d33f8e511 100644
--- a/app/code/Magento/Persistent/Model/Session.php
+++ b/app/code/Magento/Persistent/Model/Session.php
@@ -110,6 +110,7 @@ class Session extends \Magento\Framework\Model\AbstractModel
      * @param \Magento\Framework\Model\Resource\AbstractResource $resource
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
@@ -163,6 +164,7 @@ class Session extends \Magento\Framework\Model\AbstractModel
      * Get if model loads expired sessions
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getLoadExpired()
     {
diff --git a/app/code/Magento/Persistent/composer.json b/app/code/Magento/Persistent/composer.json
index 022dc88e2fc3d57045a433a69e19c91351acead5..3680fca52129bf67c3e2ff1cc1f3516179c50030 100644
--- a/app/code/Magento/Persistent/composer.json
+++ b/app/code/Magento/Persistent/composer.json
@@ -3,18 +3,18 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-checkout": "0.42.0-beta3",
-        "magento/module-core": "0.42.0-beta3",
-        "magento/module-customer": "0.42.0-beta3",
-        "magento/module-sales": "0.42.0-beta3",
-        "magento/module-cron": "0.42.0-beta3",
-        "magento/module-page-cache": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-checkout": "0.42.0-beta4",
+        "magento/module-core": "0.42.0-beta4",
+        "magento/module-customer": "0.42.0-beta4",
+        "magento/module-cron": "0.42.0-beta4",
+        "magento/module-page-cache": "0.42.0-beta4",
+        "magento/module-quote": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/Persistent/sql/persistent_setup/install-2.0.0.php b/app/code/Magento/Persistent/sql/persistent_setup/install-2.0.0.php
index d9a3444be8ea2ba48745841020df838c275aaccb..ca5b097b1be7d4cfb812b971eecb16b725a9d0be 100644
--- a/app/code/Magento/Persistent/sql/persistent_setup/install-2.0.0.php
+++ b/app/code/Magento/Persistent/sql/persistent_setup/install-2.0.0.php
@@ -79,11 +79,11 @@ $table = $installer->getConnection()->newTable(
 $installer->getConnection()->createTable($table);
 
 /**
- * Alter sales_quote table with is_persistent flag
+ * Alter quote table with is_persistent flag
  *
  */
 $installer->getConnection()->addColumn(
-    $installer->getTable('sales_quote'),
+    $installer->getTable('quote'),
     'is_persistent',
     [
         'type' => \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT,
diff --git a/app/code/Magento/Persistent/view/frontend/templates/remember_me.phtml b/app/code/Magento/Persistent/view/frontend/templates/remember_me.phtml
index 2b1ce8436c005211b47f8f63026925ebfe335605..b5f9f08ab86167ae093072d67391c17a647eb050 100644
--- a/app/code/Magento/Persistent/view/frontend/templates/remember_me.phtml
+++ b/app/code/Magento/Persistent/view/frontend/templates/remember_me.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/ProductAlert/Block/Email/AbstractEmail.php b/app/code/Magento/ProductAlert/Block/Email/AbstractEmail.php
index f1782cccf53413187e831c492a5a79ae584f91c8..b44dd2ca416aa8042f0814493f21f7c3386e9f66 100644
--- a/app/code/Magento/ProductAlert/Block/Email/AbstractEmail.php
+++ b/app/code/Magento/ProductAlert/Block/Email/AbstractEmail.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\ProductAlert\Block\Email;
 
 use Magento\Framework\Pricing\PriceCurrencyInterface;
diff --git a/app/code/Magento/ProductAlert/Model/Email.php b/app/code/Magento/ProductAlert/Model/Email.php
index f90b089bfdead24d0a6385e43eb05fed9ba4eb08..395d2d9bef1416d60602e56d3dce9b3d8fdf1ea9 100644
--- a/app/code/Magento/ProductAlert/Model/Email.php
+++ b/app/code/Magento/ProductAlert/Model/Email.php
@@ -9,6 +9,7 @@ namespace Magento\ProductAlert\Model;
  * ProductAlert Email processor
  *
  * @author     Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Email extends \Magento\Framework\Model\AbstractModel
 {
@@ -92,7 +93,7 @@ class Email extends \Magento\Framework\Model\AbstractModel
     protected $customerRepository;
 
     /**
-     * @var \Magento\Core\Model\App\Emulation
+     * @var \Magento\Store\Model\App\Emulation
      */
     protected $_appEmulation;
 
@@ -114,11 +115,12 @@ class Email extends \Magento\Framework\Model\AbstractModel
      * @param \Magento\Store\Model\StoreManagerInterface $storeManager
      * @param \Magento\Customer\Api\CustomerRepositoryInterface $customerRepository
      * @param \Magento\Customer\Helper\View $customerHelper
-     * @param \Magento\Core\Model\App\Emulation $appEmulation
+     * @param \Magento\Store\Model\App\Emulation $appEmulation
      * @param \Magento\Framework\Mail\Template\TransportBuilder $transportBuilder
      * @param \Magento\Framework\Model\Resource\AbstractResource $resource
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
@@ -128,7 +130,7 @@ class Email extends \Magento\Framework\Model\AbstractModel
         \Magento\Store\Model\StoreManagerInterface $storeManager,
         \Magento\Customer\Api\CustomerRepositoryInterface $customerRepository,
         \Magento\Customer\Helper\View $customerHelper,
-        \Magento\Core\Model\App\Emulation $appEmulation,
+        \Magento\Store\Model\App\Emulation $appEmulation,
         \Magento\Framework\Mail\Template\TransportBuilder $transportBuilder,
         \Magento\Framework\Model\Resource\AbstractResource $resource = null,
         \Magento\Framework\Data\Collection\Db $resourceCollection = null,
@@ -281,6 +283,9 @@ class Email extends \Magento\Framework\Model\AbstractModel
      * Send customer email
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public function send()
     {
diff --git a/app/code/Magento/ProductAlert/Model/Observer.php b/app/code/Magento/ProductAlert/Model/Observer.php
index d2b238b0848d75218891109f7ad1f7e61cc57d5e..3a601e4518b66c4723ce26606c6c0c5b7be12313 100644
--- a/app/code/Magento/ProductAlert/Model/Observer.php
+++ b/app/code/Magento/ProductAlert/Model/Observer.php
@@ -9,6 +9,7 @@ namespace Magento\ProductAlert\Model;
  * ProductAlert observer
  *
  * @author     Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Observer
 {
@@ -124,6 +125,7 @@ class Observer
      * @param \Magento\Framework\Mail\Template\TransportBuilder $transportBuilder
      * @param \Magento\ProductAlert\Model\EmailFactory $emailFactory
      * @param \Magento\Framework\Translate\Inline\StateInterface $inlineTranslation
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Catalog\Helper\Data $catalogData,
@@ -173,6 +175,8 @@ class Observer
      *
      * @param \Magento\ProductAlert\Model\Email $email
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _processPrice(\Magento\ProductAlert\Model\Email $email)
     {
@@ -258,6 +262,8 @@ class Observer
      *
      * @param \Magento\ProductAlert\Model\Email $email
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _processStock(\Magento\ProductAlert\Model\Email $email)
     {
diff --git a/app/code/Magento/ProductAlert/Model/Resource/AbstractResource.php b/app/code/Magento/ProductAlert/Model/Resource/AbstractResource.php
index 09a8a75d559c13e49468b1b7edaee82fa41de1d4..af2fc5b9153a9eff477bea7d7cb6ef12c2f7ffa4 100644
--- a/app/code/Magento/ProductAlert/Model/Resource/AbstractResource.php
+++ b/app/code/Magento/ProductAlert/Model/Resource/AbstractResource.php
@@ -63,6 +63,7 @@ abstract class AbstractResource extends \Magento\Framework\Model\Resource\Db\Abs
      * @param int $customerId
      * @param int $websiteId
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function deleteCustomer(\Magento\Framework\Model\AbstractModel $object, $customerId, $websiteId = null)
     {
diff --git a/app/code/Magento/ProductAlert/Model/Resource/Price.php b/app/code/Magento/ProductAlert/Model/Resource/Price.php
index b68c190d5c17bc1547f210d4ccce96dfdfbe42a5..1d457c4981b8aad76045c297b70a075f1999d612 100644
--- a/app/code/Magento/ProductAlert/Model/Resource/Price.php
+++ b/app/code/Magento/ProductAlert/Model/Resource/Price.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\ProductAlert\Model\Resource;
 
 /**
diff --git a/app/code/Magento/ProductAlert/Model/Resource/Stock.php b/app/code/Magento/ProductAlert/Model/Resource/Stock.php
index 6e48aee304c7a2c7ec8a3c6bd5164e08fc38797f..637aaea87065da8126fce215618a2a3d2465048d 100644
--- a/app/code/Magento/ProductAlert/Model/Resource/Stock.php
+++ b/app/code/Magento/ProductAlert/Model/Resource/Stock.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\ProductAlert\Model\Resource;
 
 /**
diff --git a/app/code/Magento/ProductAlert/composer.json b/app/code/Magento/ProductAlert/composer.json
index b001db5d77d92272584f7e837d50792fcf1b57a0..11578bec3f343960bc9ceae8c6a5fd44ceb6d038 100644
--- a/app/code/Magento/ProductAlert/composer.json
+++ b/app/code/Magento/ProductAlert/composer.json
@@ -3,15 +3,15 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-catalog": "0.42.0-beta3",
-        "magento/module-customer": "0.42.0-beta3",
-        "magento/module-core": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-catalog": "0.42.0-beta4",
+        "magento/module-customer": "0.42.0-beta4",
+        "magento/module-core": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/ProductAlert/view/frontend/templates/email/price.phtml b/app/code/Magento/ProductAlert/view/frontend/templates/email/price.phtml
index aade28e6ed550c509f93a4120c2d5a8c26c28def..2720ccca2c986eaf25e31689ddaca965c5ea7f33 100644
--- a/app/code/Magento/ProductAlert/view/frontend/templates/email/price.phtml
+++ b/app/code/Magento/ProductAlert/view/frontend/templates/email/price.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\ProductAlert\Block\Email\Price */
 ?>
 <?php if ($_products = $this->getProducts()): ?>
diff --git a/app/code/Magento/ProductAlert/view/frontend/templates/email/stock.phtml b/app/code/Magento/ProductAlert/view/frontend/templates/email/stock.phtml
index 83a65caa63ed4754200127f8662a2a7105661293..a18b63ee5a353a180608bc00353393b0b81d251b 100644
--- a/app/code/Magento/ProductAlert/view/frontend/templates/email/stock.phtml
+++ b/app/code/Magento/ProductAlert/view/frontend/templates/email/stock.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\ProductAlert\Block\Email\Stock */
 ?>
 <?php if ($_products = $this->getProducts()): ?>
diff --git a/app/code/Magento/Quote/Model/CustomerManagement.php b/app/code/Magento/Quote/Model/CustomerManagement.php
new file mode 100644
index 0000000000000000000000000000000000000000..40092a7e92a5c46a2fa46d64a805123fe5eaf5a7
--- /dev/null
+++ b/app/code/Magento/Quote/Model/CustomerManagement.php
@@ -0,0 +1,93 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+
+namespace Magento\Quote\Model;
+
+use Magento\Customer\Api\CustomerRepositoryInterface as CustomerRepository;
+use Magento\Customer\Api\AccountManagementInterface as AccountManagement;
+use Magento\Customer\Api\Data\CustomerDataBuilder as CustomerBuilder;
+use Magento\Customer\Api\AddressRepositoryInterface as CustomerAddressRepository;
+use Magento\Quote\Model\Quote as QuoteEntity;
+
+/**
+ * Class Customer
+ */
+class CustomerManagement
+{
+    /**
+     * @var CustomerRepository
+     */
+    protected $customerRepository;
+
+    /**
+     * @var CustomerAddressRepository
+     */
+    protected $customerAddressRepository;
+
+    /**
+     * @var AccountManagement
+     */
+    protected $accountManagement;
+
+    /**
+     * @var CustomerBuilder
+     */
+    protected $customerBuilder;
+
+    /**
+     * @param CustomerRepository $customerRepository
+     * @param CustomerAddressRepository $customerAddressRepository
+     * @param AccountManagement $accountManagement
+     * @param CustomerBuilder $customerBuilder
+     */
+    public function __construct(
+        CustomerRepository $customerRepository,
+        CustomerAddressRepository $customerAddressRepository,
+        AccountManagement $accountManagement,
+        CustomerBuilder $customerBuilder
+    ) {
+        $this->customerRepository = $customerRepository;
+        $this->customerAddressRepository = $customerAddressRepository;
+        $this->accountManagement = $accountManagement;
+        $this->customerBuilder = $customerBuilder;
+    }
+
+    /**
+     * Populate customer model
+     *
+     * @param Quote $quote
+     * @return void
+     */
+    public function populateCustomerInfo(QuoteEntity $quote)
+    {
+        $customer = $quote->getCustomer();
+
+        if (!$customer->getId()) {
+            $customer = $this->accountManagement->createAccountWithPasswordHash(
+                $this->customerBuilder->populate($customer)->create(),
+                $quote->getPasswordHash()
+            );
+            $quote->setCustomer($customer);
+        } else {
+            $this->customerRepository->save($customer);
+        }
+        if (!$quote->getBillingAddress()->getId() && $customer->getDefaultBilling()) {
+            $quote->getBillingAddress()->importCustomerAddressData(
+                $this->customerAddressRepository->getById($customer->getDefaultBilling())
+            );
+            $quote->getBillingAddress()->setCustomerAddressId($customer->getDefaultBilling());
+        }
+        if (!$quote->getShippingAddress()->getSameAsBilling()
+            && !$quote->getBillingAddress()->getId()
+            && $customer->getDefaultShipping()
+        ) {
+            $quote->getShippingAddress()->importCustomerAddressData(
+                $this->customerAddressRepository->getById($customer->getDefaultShipping())
+            );
+            $quote->getShippingAddress()->setCustomerAddressId($customer->getDefaultShipping());
+        }
+    }
+}
diff --git a/app/code/Magento/Sales/Model/Observer/Backend/CustomerQuote.php b/app/code/Magento/Quote/Model/Observer/Backend/CustomerQuote.php
similarity index 60%
rename from app/code/Magento/Sales/Model/Observer/Backend/CustomerQuote.php
rename to app/code/Magento/Quote/Model/Observer/Backend/CustomerQuote.php
index 2046f60c6bc93791855a41f5758877906b17a59f..f5221834db63d89e126d5015afac357c7035eb78 100644
--- a/app/code/Magento/Sales/Model/Observer/Backend/CustomerQuote.php
+++ b/app/code/Magento/Quote/Model/Observer/Backend/CustomerQuote.php
@@ -3,7 +3,12 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Observer\Backend;
+namespace Magento\Quote\Model\Observer\Backend;
+
+use Magento\Store\Model\StoreManagerInterface;
+use Magento\Customer\Model\Config\Share as ShareConfig;
+use Magento\Quote\Model\QuoteRepository;
+use Magento\Framework\Event\Observer;
 
 /**
  * Class CustomerQuote
@@ -11,42 +16,42 @@ namespace Magento\Sales\Model\Observer\Backend;
 class CustomerQuote
 {
     /**
-     * @var \Magento\Customer\Model\Config\Share
+     * @var ShareConfig
      */
-    protected $_config;
+    protected $config;
 
     /**
-     * @var \Magento\Store\Model\StoreManagerInterface
+     * @var StoreManagerInterface
      */
-    protected $_storeManager;
+    protected $storeManager;
 
     /**
-     * @var \Magento\Sales\Model\QuoteRepository
+     * @var QuoteRepository
      */
     protected $quoteRepository;
 
     /**
-     * @param \Magento\Store\Model\StoreManagerInterface $storeManager
-     * @param \Magento\Customer\Model\Config\Share $config
-     * @param \Magento\Sales\Model\QuoteRepository $quoteRepository
+     * @param StoreManagerInterface $storeManager
+     * @param ShareConfig $config
+     * @param QuoteRepository $quoteRepository
      */
     public function __construct(
-        \Magento\Store\Model\StoreManagerInterface $storeManager,
-        \Magento\Customer\Model\Config\Share $config,
-        \Magento\Sales\Model\QuoteRepository $quoteRepository
+        StoreManagerInterface $storeManager,
+        ShareConfig $config,
+        QuoteRepository $quoteRepository
     ) {
-        $this->_storeManager = $storeManager;
-        $this->_config = $config;
+        $this->storeManager = $storeManager;
+        $this->config = $config;
         $this->quoteRepository = $quoteRepository;
     }
 
     /**
      * Set new customer group to all his quotes
      *
-     * @param \Magento\Framework\Event\Observer $observer
+     * @param Observer $observer
      * @return void
      */
-    public function dispatch(\Magento\Framework\Event\Observer $observer)
+    public function dispatch(Observer $observer)
     {
         /** @var \Magento\Customer\Api\Data\CustomerInterface $customer */
         $customer = $observer->getEvent()->getCustomerDataObject();
@@ -58,9 +63,9 @@ class CustomerQuote
              * if customer accounts are shared between all of them
              */
             /** @var $websites \Magento\Store\Model\Website[] */
-            $websites = $this->_config->isWebsiteScope()
-                ? [$this->_storeManager->getWebsite($customer->getWebsiteId())]
-                : $this->_storeManager->getWebsites();
+            $websites = $this->config->isWebsiteScope()
+                ? [$this->storeManager->getWebsite($customer->getWebsiteId())]
+                : $this->storeManager->getWebsites();
 
             foreach ($websites as $website) {
                 try {
diff --git a/app/code/Magento/Sales/Model/Observer/Frontend/Quote/Address/CollectTotals.php b/app/code/Magento/Quote/Model/Observer/Frontend/Quote/Address/CollectTotals.php
similarity index 95%
rename from app/code/Magento/Sales/Model/Observer/Frontend/Quote/Address/CollectTotals.php
rename to app/code/Magento/Quote/Model/Observer/Frontend/Quote/Address/CollectTotals.php
index 91043c3cd458d027f8bffee39ceadb04f41fc7f3..9c239578155491eab634c013ef19283622eb7d37 100644
--- a/app/code/Magento/Sales/Model/Observer/Frontend/Quote/Address/CollectTotals.php
+++ b/app/code/Magento/Quote/Model/Observer/Frontend/Quote/Address/CollectTotals.php
@@ -3,7 +3,7 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Observer\Frontend\Quote\Address;
+namespace Magento\Quote\Model\Observer\Frontend\Quote\Address;
 
 class CollectTotals
 {
@@ -65,10 +65,10 @@ class CollectTotals
      */
     public function dispatch(\Magento\Framework\Event\Observer $observer)
     {
-        /** @var \Magento\Sales\Model\Quote\Address $quoteAddress */
+        /** @var \Magento\Quote\Model\Quote\Address $quoteAddress */
         $quoteAddress = $observer->getQuoteAddress();
 
-        /** @var \Magento\Sales\Model\Quote $quote */
+        /** @var \Magento\Quote\Model\Quote $quote */
         $quote = $quoteAddress->getQuote();
         $customer = $quote->getCustomer();
         $storeId = $customer->getStoreId();
diff --git a/app/code/Magento/Sales/Model/Observer/Frontend/Quote/Address/VatValidator.php b/app/code/Magento/Quote/Model/Observer/Frontend/Quote/Address/VatValidator.php
similarity index 92%
rename from app/code/Magento/Sales/Model/Observer/Frontend/Quote/Address/VatValidator.php
rename to app/code/Magento/Quote/Model/Observer/Frontend/Quote/Address/VatValidator.php
index 5ba5de2e8a03a63059cd4553ea05dc487be9370d..e388a936b4d4942511f84fd528be17fec7c05945 100644
--- a/app/code/Magento/Sales/Model/Observer/Frontend/Quote/Address/VatValidator.php
+++ b/app/code/Magento/Quote/Model/Observer/Frontend/Quote/Address/VatValidator.php
@@ -3,7 +3,7 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Observer\Frontend\Quote\Address;
+namespace Magento\Quote\Model\Observer\Frontend\Quote\Address;
 
 class VatValidator
 {
@@ -36,11 +36,11 @@ class VatValidator
     /**
      * Validate VAT number
      *
-     * @param \Magento\Sales\Model\Quote\Address $quoteAddress
+     * @param \Magento\Quote\Model\Quote\Address $quoteAddress
      * @param \Magento\Store\Model\Store|int $store
      * @return \Magento\Framework\Object
      */
-    public function validate(\Magento\Sales\Model\Quote\Address $quoteAddress, $store)
+    public function validate(\Magento\Quote\Model\Quote\Address $quoteAddress, $store)
     {
         $customerCountryCode = $quoteAddress->getCountryId();
         $customerVatNumber = $quoteAddress->getVatId();
@@ -89,11 +89,11 @@ class VatValidator
     /**
      * Check whether VAT ID validation is enabled
      *
-     * @param \Magento\Sales\Model\Quote\Address $quoteAddress
+     * @param \Magento\Quote\Model\Quote\Address $quoteAddress
      * @param \Magento\Store\Model\Store|int $store
      * @return bool
      */
-    public function isEnabled(\Magento\Sales\Model\Quote\Address $quoteAddress, $store)
+    public function isEnabled(\Magento\Quote\Model\Quote\Address $quoteAddress, $store)
     {
         $configAddressType = $this->customerAddress->getTaxCalculationAddressType($store);
 
diff --git a/app/code/Magento/Sales/Model/Quote.php b/app/code/Magento/Quote/Model/Quote.php
similarity index 94%
rename from app/code/Magento/Sales/Model/Quote.php
rename to app/code/Magento/Quote/Model/Quote.php
index 5969c0ad6084c1a0a909c12732c67d5ae226d668..16c402d18bf8344fb057fb6dc35119b11c536c68 100644
--- a/app/code/Magento/Sales/Model/Quote.php
+++ b/app/code/Magento/Quote/Model/Quote.php
@@ -3,11 +3,17 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model;
+
+// @codingStandardsIgnoreFile
+
+namespace Magento\Quote\Model;
 
 use Magento\Customer\Api\Data\CustomerInterface;
 use Magento\Customer\Api\Data\GroupInterface;
-use Magento\Sales\Model\Quote\Address;
+use Magento\Framework\Model\AbstractModel;
+use Magento\Quote\Model\Quote\Address;
+use Magento\Sales\Model\Resource;
+use Magento\Sales\Model\Status;
 
 /**
  * Quote model
@@ -116,6 +122,10 @@ use Magento\Sales\Model\Quote\Address;
  * @method Quote setIsPersistent(bool $value)
  * @method Quote setSharedStoreIds(array $values)
  * @method Quote setWebsite($value)
+ * @SuppressWarnings(PHPMD.ExcessivePublicCount)
+ * @SuppressWarnings(PHPMD.TooManyFields)
+ * @SuppressWarnings(PHPMD.ExcessiveClassComplexity)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Quote extends \Magento\Framework\Model\AbstractModel
 {
@@ -163,7 +173,7 @@ class Quote extends \Magento\Framework\Model\AbstractModel
     protected $_payments;
 
     /**
-     * @var \Magento\Sales\Model\Quote\Payment
+     * @var \Magento\Quote\Model\Quote\Payment
      */
     protected $_currentPayment;
 
@@ -189,11 +199,11 @@ class Quote extends \Magento\Framework\Model\AbstractModel
     protected $_catalogProduct;
 
     /**
-     * Sales data
+     * Quote validator
      *
-     * @var \Magento\Sales\Helper\Data
+     * @var \Magento\Quote\Model\QuoteValidator
      */
-    protected $_salesData;
+    protected $quoteValidator;
 
     /**
      * Core store config
@@ -213,7 +223,7 @@ class Quote extends \Magento\Framework\Model\AbstractModel
     protected $_config;
 
     /**
-     * @var \Magento\Sales\Model\Quote\AddressFactory
+     * @var \Magento\Quote\Model\Quote\AddressFactory
      */
     protected $_quoteAddressFactory;
 
@@ -230,12 +240,12 @@ class Quote extends \Magento\Framework\Model\AbstractModel
     protected $groupRepository;
 
     /**
-     * @var \Magento\Sales\Model\Resource\Quote\Item\CollectionFactory
+     * @var \Magento\Quote\Model\Resource\Quote\Item\CollectionFactory
      */
     protected $_quoteItemCollectionFactory;
 
     /**
-     * @var \Magento\Sales\Model\Quote\ItemFactory
+     * @var \Magento\Quote\Model\Quote\ItemFactory
      */
     protected $_quoteItemFactory;
 
@@ -255,12 +265,12 @@ class Quote extends \Magento\Framework\Model\AbstractModel
     protected $productRepository;
 
     /**
-     * @var \Magento\Sales\Model\Quote\PaymentFactory
+     * @var \Magento\Quote\Model\Quote\PaymentFactory
      */
     protected $_quotePaymentFactory;
 
     /**
-     * @var \Magento\Sales\Model\Resource\Quote\Payment\CollectionFactory
+     * @var \Magento\Quote\Model\Resource\Quote\Payment\CollectionFactory
      */
     protected $_quotePaymentCollectionFactory;
 
@@ -296,7 +306,7 @@ class Quote extends \Magento\Framework\Model\AbstractModel
     protected $stockRegistry;
 
     /**
-     * @var \Magento\Sales\Model\Quote\Item\Processor
+     * @var \Magento\Quote\Model\Quote\Item\Processor
      */
     protected $itemProcessor;
 
@@ -328,7 +338,7 @@ class Quote extends \Magento\Framework\Model\AbstractModel
     /**
      * @param \Magento\Framework\Model\Context $context
      * @param \Magento\Framework\Registry $registry
-     * @param \Magento\Sales\Helper\Data $salesData
+     * @param \Magento\Quote\Model\QuoteValidator $quoteValidator
      * @param \Magento\Catalog\Helper\Product $catalogProduct
      * @param \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig
      * @param \Magento\Store\Model\StoreManagerInterface $storeManager
@@ -357,28 +367,29 @@ class Quote extends \Magento\Framework\Model\AbstractModel
      * @param \Magento\Framework\Model\Resource\AbstractResource $resource
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
         \Magento\Framework\Registry $registry,
-        \Magento\Sales\Helper\Data $salesData,
+        \Magento\Quote\Model\QuoteValidator $quoteValidator,
         \Magento\Catalog\Helper\Product $catalogProduct,
         \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig,
         \Magento\Store\Model\StoreManagerInterface $storeManager,
         \Magento\Framework\App\Config\ScopeConfigInterface $config,
-        \Magento\Sales\Model\Quote\AddressFactory $quoteAddressFactory,
+        \Magento\Quote\Model\Quote\AddressFactory $quoteAddressFactory,
         \Magento\Customer\Model\CustomerFactory $customerFactory,
         \Magento\Customer\Api\GroupRepositoryInterface $groupRepository,
-        \Magento\Sales\Model\Resource\Quote\Item\CollectionFactory $quoteItemCollectionFactory,
-        \Magento\Sales\Model\Quote\ItemFactory $quoteItemFactory,
+        \Magento\Quote\Model\Resource\Quote\Item\CollectionFactory $quoteItemCollectionFactory,
+        \Magento\Quote\Model\Quote\ItemFactory $quoteItemFactory,
         \Magento\Framework\Message\Factory $messageFactory,
         \Magento\Sales\Model\Status\ListFactory $statusListFactory,
         \Magento\Catalog\Api\ProductRepositoryInterface $productRepository,
-        \Magento\Sales\Model\Quote\PaymentFactory $quotePaymentFactory,
-        \Magento\Sales\Model\Resource\Quote\Payment\CollectionFactory $quotePaymentCollectionFactory,
+        \Magento\Quote\Model\Quote\PaymentFactory $quotePaymentFactory,
+        \Magento\Quote\Model\Resource\Quote\Payment\CollectionFactory $quotePaymentCollectionFactory,
         \Magento\Framework\Object\Copy $objectCopyService,
         \Magento\CatalogInventory\Api\StockRegistryInterface $stockRegistry,
-        \Magento\Sales\Model\Quote\Item\Processor $itemProcessor,
+        \Magento\Quote\Model\Quote\Item\Processor $itemProcessor,
         \Magento\Framework\Object\Factory $objectFactory,
         \Magento\Customer\Api\AddressRepositoryInterface $addressRepository,
         \Magento\Framework\Api\SearchCriteriaBuilder $criteriaBuilder,
@@ -391,7 +402,7 @@ class Quote extends \Magento\Framework\Model\AbstractModel
         \Magento\Framework\Data\Collection\Db $resourceCollection = null,
         array $data = []
     ) {
-        $this->_salesData = $salesData;
+        $this->quoteValidator = $quoteValidator;
         $this->_catalogProduct = $catalogProduct;
         $this->_scopeConfig = $scopeConfig;
         $this->_storeManager = $storeManager;
@@ -427,7 +438,7 @@ class Quote extends \Magento\Framework\Model\AbstractModel
      */
     protected function _construct()
     {
-        $this->_init('Magento\Sales\Model\Resource\Quote');
+        $this->_init('Magento\Quote\Model\Resource\Quote');
     }
 
     /**
@@ -644,7 +655,7 @@ class Quote extends \Magento\Framework\Model\AbstractModel
                     //
                 }
                 if (isset($defaultBillingAddress)) {
-                    /** @var \Magento\Sales\Model\Quote\Address $billingAddress */
+                    /** @var \Magento\Quote\Model\Quote\Address $billingAddress */
                     $billingAddress = $this->_quoteAddressFactory->create();
                     $billingAddress->importCustomerAddressData($defaultBillingAddress);
                     $this->setBillingAddress($billingAddress);
@@ -658,7 +669,7 @@ class Quote extends \Magento\Framework\Model\AbstractModel
                     //
                 }
                 if (isset($defaultShippingAddress)) {
-                    /** @var \Magento\Sales\Model\Quote\Address $shippingAddress */
+                    /** @var \Magento\Quote\Model\Quote\Address $shippingAddress */
                     $shippingAddress = $this->_quoteAddressFactory->create();
                     $shippingAddress->importCustomerAddressData($defaultShippingAddress);
                 } else {
@@ -878,7 +889,7 @@ class Quote extends \Magento\Framework\Model\AbstractModel
     /**
      * Get all quote addresses
      *
-     * @return \Magento\Sales\Model\Quote\Address[]
+     * @return \Magento\Quote\Model\Quote\Address[]
      */
     public function getAllAddresses()
     {
@@ -928,7 +939,7 @@ class Quote extends \Magento\Framework\Model\AbstractModel
      */
     public function getShippingAddressByCustomerAddressId($addressId)
     {
-        /** @var \Magento\Sales\Model\Quote\Address $address */
+        /** @var \Magento\Quote\Model\Quote\Address $address */
         foreach ($this->getAddressesCollection() as $address) {
             if (!$address->isDeleted() &&
                 $address->getAddressType() == Address::TYPE_SHIPPING &&
@@ -1057,6 +1068,7 @@ class Quote extends \Magento\Framework\Model\AbstractModel
      *
      * @param bool $useCache
      * @return  \Magento\Eav\Model\Entity\Collection\AbstractCollection
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function getItemsCollection($useCache = true)
     {
@@ -1089,7 +1101,7 @@ class Quote extends \Magento\Framework\Model\AbstractModel
     /**
      * Get array of all items what can be display directly
      *
-     * @return \Magento\Sales\Model\Quote\Item[]
+     * @return \Magento\Quote\Model\Quote\Item[]
      */
     public function getAllVisibleItems()
     {
@@ -1120,7 +1132,10 @@ class Quote extends \Magento\Framework\Model\AbstractModel
     public function hasItemsWithDecimalQty()
     {
         foreach ($this->getAllItems() as $item) {
-            $stockItemDo = $this->stockRegistry->getStockItem($item->getProduct()->getId(), $item->getStore()->getWebsiteId());
+            $stockItemDo = $this->stockRegistry->getStockItem(
+                $item->getProduct()->getId(),
+                $item->getStore()->getWebsiteId()
+            );
             if ($stockItemDo->getItemId() && $stockItemDo->getIsQtyDecimal()) {
                 return true;
             }
@@ -1149,7 +1164,7 @@ class Quote extends \Magento\Framework\Model\AbstractModel
      * Retrieve item model object by item identifier
      *
      * @param   int $itemId
-     * @return  \Magento\Sales\Model\Quote\Item
+     * @return  \Magento\Quote\Model\Quote\Item
      */
     public function getItemById($itemId)
     {
@@ -1159,10 +1174,10 @@ class Quote extends \Magento\Framework\Model\AbstractModel
     /**
      * Delete quote item. If it does not have identifier then it will be only removed from collection
      *
-     * @param   \Magento\Sales\Model\Quote\Item $item
+     * @param   \Magento\Quote\Model\Quote\Item $item
      * @return $this
      */
-    public function deleteItem(\Magento\Sales\Model\Quote\Item $item)
+    public function deleteItem(\Magento\Quote\Model\Quote\Item $item)
     {
         if ($item->getId()) {
             $this->removeItem($item->getId());
@@ -1240,11 +1255,11 @@ class Quote extends \Magento\Framework\Model\AbstractModel
     /**
      * Adding new item to quote
      *
-     * @param   \Magento\Sales\Model\Quote\Item $item
+     * @param   \Magento\Quote\Model\Quote\Item $item
      * @return $this
      * @throws \Magento\Framework\Model\Exception
      */
-    public function addItem(\Magento\Sales\Model\Quote\Item $item)
+    public function addItem(\Magento\Quote\Model\Quote\Item $item)
     {
         $item->setQuote($this);
         if (!$item->getId()) {
@@ -1261,8 +1276,10 @@ class Quote extends \Magento\Framework\Model\AbstractModel
      * @param mixed $product
      * @param null|float|\Magento\Framework\Object $request
      * @param null|string $processMode
-     * @return \Magento\Sales\Model\Quote\Item|string
+     * @return \Magento\Quote\Model\Quote\Item|string
      * @throws \Magento\Framework\Model\Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function addProduct(
         \Magento\Catalog\Model\Product $product,
@@ -1349,7 +1366,8 @@ class Quote extends \Magento\Framework\Model\AbstractModel
      *
      * @param \Magento\Catalog\Model\Product $product
      * @param int $qty
-     * @return \Magento\Sales\Model\Quote\Item
+     * @return \Magento\Quote\Model\Quote\Item
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     protected function _addCatalogProduct(\Magento\Catalog\Model\Product $product, $qty = 1)
     {
@@ -1400,10 +1418,11 @@ class Quote extends \Magento\Framework\Model\AbstractModel
      * @param int $itemId
      * @param \Magento\Framework\Object $buyRequest
      * @param null|array|\Magento\Framework\Object $params
-     * @return \Magento\Sales\Model\Quote\Item
+     * @return \Magento\Quote\Model\Quote\Item
      * @throws \Magento\Framework\Model\Exception
      *
      * @see \Magento\Catalog\Helper\Product::addParamsToBuyRequest()
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function updateItem($itemId, $buyRequest, $params = null)
     {
@@ -1466,7 +1485,7 @@ class Quote extends \Magento\Framework\Model\AbstractModel
      * Retrieve quote item by product id
      *
      * @param   \Magento\Catalog\Model\Product $product
-     * @return  \Magento\Sales\Model\Quote\Item|bool
+     * @return  \Magento\Quote\Model\Quote\Item|bool
      */
     public function getItemByProduct($product)
     {
@@ -1555,7 +1574,7 @@ class Quote extends \Magento\Framework\Model\AbstractModel
     }
 
     /**
-     * @return \Magento\Sales\Model\Quote\Payment
+     * @return \Magento\Quote\Model\Quote\Payment
      */
     public function getPayment()
     {
@@ -1580,6 +1599,7 @@ class Quote extends \Magento\Framework\Model\AbstractModel
     /**
      * @param string $paymentId
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getPaymentById($paymentId)
     {
@@ -1592,10 +1612,10 @@ class Quote extends \Magento\Framework\Model\AbstractModel
     }
 
     /**
-     * @param \Magento\Sales\Model\Quote\Payment $payment
+     * @param \Magento\Quote\Model\Quote\Payment $payment
      * @return $this
      */
-    public function addPayment(\Magento\Sales\Model\Quote\Payment $payment)
+    public function addPayment(\Magento\Quote\Model\Quote\Payment $payment)
     {
         $payment->setQuote($this);
         if (!$payment->getId()) {
@@ -1605,10 +1625,10 @@ class Quote extends \Magento\Framework\Model\AbstractModel
     }
 
     /**
-     * @param \Magento\Sales\Model\Quote\Payment $payment
-     * @return \Magento\Sales\Model\Quote\Payment
+     * @param \Magento\Quote\Model\Quote\Payment $payment
+     * @return \Magento\Quote\Model\Quote\Payment
      */
-    public function setPayment(\Magento\Sales\Model\Quote\Payment $payment)
+    public function setPayment(\Magento\Quote\Model\Quote\Payment $payment)
     {
         if (!$this->getIsMultiPayment() && ($old = $this->getPayment())) {
             $payment->setId($old->getId());
@@ -1679,8 +1699,8 @@ class Quote extends \Magento\Framework\Model\AbstractModel
             $this->setBaseGrandTotal((float)$this->getBaseGrandTotal() + $address->getBaseGrandTotal());
         }
 
-        $this->_salesData->checkQuoteAmount($this, $this->getGrandTotal());
-        $this->_salesData->checkQuoteAmount($this, $this->getBaseGrandTotal());
+        $this->quoteValidator->validateQuoteAmount($this, $this->getGrandTotal());
+        $this->quoteValidator->validateQuoteAmount($this, $this->getBaseGrandTotal());
 
         $this->setData('trigger_recollect', 0);
         $this->_validateCouponCode();
@@ -1763,7 +1783,7 @@ class Quote extends \Magento\Framework\Model\AbstractModel
 
         $sortedTotals = [];
         foreach ($this->getBillingAddress()->getTotalCollector()->getRetrievers() as $total) {
-            /* @var $total Address\Total\AbstractTotal */
+            /* @var $total \Magento\Quote\Model\Quote\Address\Total\AbstractTotal */
             if (isset($totals[$total->getCode()])) {
                 $sortedTotals[$total->getCode()] = $totals[$total->getCode()];
             }
@@ -1912,6 +1932,7 @@ class Quote extends \Magento\Framework\Model\AbstractModel
      * @param string $type An internal error type ('error', 'qty', etc.), passed then to adding messages routine
      * @param array $params
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function removeErrorInfosByParams($type, $params)
     {
@@ -2002,6 +2023,8 @@ class Quote extends \Magento\Framework\Model\AbstractModel
     /**
      * @param bool $multishipping
      * @return bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function validateMinimumAmount($multishipping = false)
     {
@@ -2046,7 +2069,7 @@ class Quote extends \Magento\Framework\Model\AbstractModel
             foreach ($addresses as $address) {
                 $taxes = ($taxInclude) ? $address->getBaseTaxAmount() : 0;
                 foreach ($address->getQuote()->getItemsCollection() as $item) {
-                    /** @var \Magento\Sales\Model\Quote\Item $item */
+                    /** @var \Magento\Quote\Model\Quote\Item $item */
                     $amount = $item->getBaseRowTotal() - $item->getBaseDiscountAmount() + $taxes;
                     if ($amount < $minAmount) {
                         return false;
@@ -2076,7 +2099,7 @@ class Quote extends \Magento\Framework\Model\AbstractModel
         $isVirtual = true;
         $countItems = 0;
         foreach ($this->getItemsCollection() as $_item) {
-            /* @var $_item \Magento\Sales\Model\Quote\Item */
+            /* @var $_item \Magento\Quote\Model\Quote\Item */
             if ($_item->isDeleted() || $_item->getParentItemId()) {
                 continue;
             }
@@ -2093,6 +2116,7 @@ class Quote extends \Magento\Framework\Model\AbstractModel
      * Check quote for virtual product only
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsVirtual()
     {
diff --git a/app/code/Magento/Sales/Model/Quote/Address.php b/app/code/Magento/Quote/Model/Quote/Address.php
similarity index 91%
rename from app/code/Magento/Sales/Model/Quote/Address.php
rename to app/code/Magento/Quote/Model/Quote/Address.php
index b31a7ee3d79139bfde7f97f23c4c91cdf032d7fd..ebdadc8f67809fee7b36efae95df8dd21d975886 100644
--- a/app/code/Magento/Sales/Model/Quote/Address.php
+++ b/app/code/Magento/Quote/Model/Quote/Address.php
@@ -3,7 +3,7 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Quote;
+namespace Magento\Quote\Model\Quote;
 
 use Magento\Customer\Api\AddressMetadataInterface;
 use Magento\Customer\Api\Data\AddressDataBuilder;
@@ -112,6 +112,10 @@ use Magento\Framework\Api\AttributeDataBuilder;
  * @method \Magento\SalesRule\Model\Rule[] getCartFixedRules()
  * @method int[] getAppliedRuleIds()
  * @method Address setBaseShippingInclTax(float $value)
+ * @SuppressWarnings(PHPMD.ExcessivePublicCount)
+ * @SuppressWarnings(PHPMD.TooManyFields)
+ * @SuppressWarnings(PHPMD.ExcessiveClassComplexity)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Address extends \Magento\Customer\Model\Address\AbstractAddress
 {
@@ -140,28 +144,28 @@ class Address extends \Magento\Customer\Model\Address\AbstractAddress
     /**
      * Quote object
      *
-     * @var \Magento\Sales\Model\Quote
+     * @var \Magento\Quote\Model\Quote
      */
     protected $_items;
 
     /**
      * Quote object
      *
-     * @var \Magento\Sales\Model\Quote
+     * @var \Magento\Quote\Model\Quote
      */
     protected $_quote;
 
     /**
      * Sales Quote address rates
      *
-     * @var \Magento\Sales\Model\Quote\Address\Rate
+     * @var \Magento\Quote\Model\Quote\Address\Rate
      */
     protected $_rates;
 
     /**
      * Total models collector
      *
-     * @var \Magento\Sales\Model\Quote\Address\Total\Collector
+     * @var \Magento\Quote\Model\Quote\Address\Total\Collector
      */
     protected $_totalCollector;
 
@@ -190,32 +194,32 @@ class Address extends \Magento\Customer\Model\Address\AbstractAddress
     protected $_scopeConfig;
 
     /**
-     * @var \Magento\Sales\Model\Quote\Address\ItemFactory
+     * @var \Magento\Quote\Model\Quote\Address\ItemFactory
      */
     protected $_addressItemFactory;
 
     /**
-     * @var \Magento\Sales\Model\Resource\Quote\Address\Item\CollectionFactory
+     * @var \Magento\Quote\Model\Resource\Quote\Address\Item\CollectionFactory
      */
     protected $_itemCollectionFactory;
 
     /**
-     * @var \Magento\Sales\Model\Quote\Address\RateCollectorInterfaceFactory
+     * @var \Magento\Quote\Model\Quote\Address\RateCollectorInterfaceFactory
      */
     protected $_rateCollector;
 
     /**
-     * @var \Magento\Sales\Model\Resource\Quote\Address\Rate\CollectionFactory
+     * @var \Magento\Quote\Model\Resource\Quote\Address\Rate\CollectionFactory
      */
     protected $_rateCollectionFactory;
 
     /**
-     * @var \Magento\Sales\Model\Quote\Address\Total\CollectorFactory
+     * @var \Magento\Quote\Model\Quote\Address\Total\CollectorFactory
      */
     protected $_totalCollectorFactory;
 
     /**
-     * @var \Magento\Sales\Model\Quote\Address\TotalFactory
+     * @var \Magento\Quote\Model\Quote\Address\TotalFactory
      */
     protected $_addressTotalFactory;
 
@@ -249,12 +253,12 @@ class Address extends \Magento\Customer\Model\Address\AbstractAddress
      * @param RegionDataBuilder $regionBuilder
      * @param \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig
      * @param Address\ItemFactory $addressItemFactory
-     * @param \Magento\Sales\Model\Resource\Quote\Address\Item\CollectionFactory $itemCollectionFactory
+     * @param \Magento\Quote\Model\Resource\Quote\Address\Item\CollectionFactory $itemCollectionFactory
      * @param Address\RateFactory $addressRateFactory
      * @param Address\RateCollectorInterfaceFactory $rateCollector
-     * @param \Magento\Sales\Model\Resource\Quote\Address\Rate\CollectionFactory $rateCollectionFactory
+     * @param \Magento\Quote\Model\Resource\Quote\Address\Rate\CollectionFactory $rateCollectionFactory
      * @param Address\RateRequestFactory $rateRequestFactory
-     * @param Address\Total\CollectorFactory $totalCollectorFactory
+     * @param \Magento\Quote\Model\Quote\Address\Total\CollectorFactory $totalCollectorFactory
      * @param Address\TotalFactory $addressTotalFactory
      * @param \Magento\Framework\Object\Copy $objectCopyService
      * @param Address\CarrierFactoryInterface $carrierFactory
@@ -263,6 +267,7 @@ class Address extends \Magento\Customer\Model\Address\AbstractAddress
      * @param \Magento\Framework\Model\Resource\AbstractResource $resource
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
@@ -278,16 +283,16 @@ class Address extends \Magento\Customer\Model\Address\AbstractAddress
         AddressDataBuilder $addressBuilder,
         RegionDataBuilder $regionBuilder,
         \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig,
-        \Magento\Sales\Model\Quote\Address\ItemFactory $addressItemFactory,
-        \Magento\Sales\Model\Resource\Quote\Address\Item\CollectionFactory $itemCollectionFactory,
-        \Magento\Sales\Model\Quote\Address\RateFactory $addressRateFactory,
-        \Magento\Sales\Model\Quote\Address\RateCollectorInterfaceFactory $rateCollector,
-        \Magento\Sales\Model\Resource\Quote\Address\Rate\CollectionFactory $rateCollectionFactory,
-        \Magento\Sales\Model\Quote\Address\RateRequestFactory $rateRequestFactory,
-        \Magento\Sales\Model\Quote\Address\Total\CollectorFactory $totalCollectorFactory,
-        \Magento\Sales\Model\Quote\Address\TotalFactory $addressTotalFactory,
+        \Magento\Quote\Model\Quote\Address\ItemFactory $addressItemFactory,
+        \Magento\Quote\Model\Resource\Quote\Address\Item\CollectionFactory $itemCollectionFactory,
+        \Magento\Quote\Model\Quote\Address\RateFactory $addressRateFactory,
+        \Magento\Quote\Model\Quote\Address\RateCollectorInterfaceFactory $rateCollector,
+        \Magento\Quote\Model\Resource\Quote\Address\Rate\CollectionFactory $rateCollectionFactory,
+        \Magento\Quote\Model\Quote\Address\RateRequestFactory $rateRequestFactory,
+        \Magento\Quote\Model\Quote\Address\Total\CollectorFactory $totalCollectorFactory,
+        \Magento\Quote\Model\Quote\Address\TotalFactory $addressTotalFactory,
         \Magento\Framework\Object\Copy $objectCopyService,
-        \Magento\Sales\Model\Quote\Address\CarrierFactoryInterface $carrierFactory,
+        \Magento\Quote\Model\Quote\Address\CarrierFactoryInterface $carrierFactory,
         Address\Validator $validator,
         \Magento\Customer\Model\Address\Mapper $addressMapper,
         \Magento\Framework\Model\Resource\AbstractResource $resource = null,
@@ -334,7 +339,7 @@ class Address extends \Magento\Customer\Model\Address\AbstractAddress
      */
     protected function _construct()
     {
-        $this->_init('Magento\Sales\Model\Resource\Quote\Address');
+        $this->_init('Magento\Quote\Model\Resource\Quote\Address');
     }
 
     /**
@@ -384,7 +389,7 @@ class Address extends \Magento\Customer\Model\Address\AbstractAddress
      */
     protected function _isSameAsBilling()
     {
-        return $this->getAddressType() == \Magento\Sales\Model\Quote\Address::TYPE_SHIPPING &&
+        return $this->getAddressType() == \Magento\Quote\Model\Quote\Address::TYPE_SHIPPING &&
             ($this->_isNotRegisteredCustomer() ||
             $this->_isDefaultShippingNullOrSameAsBillingAddress());
     }
@@ -447,10 +452,10 @@ class Address extends \Magento\Customer\Model\Address\AbstractAddress
     /**
      * Declare address quote model object
      *
-     * @param   \Magento\Sales\Model\Quote $quote
+     * @param   \Magento\Quote\Model\Quote $quote
      * @return $this
      */
-    public function setQuote(\Magento\Sales\Model\Quote $quote)
+    public function setQuote(\Magento\Quote\Model\Quote $quote)
     {
         $this->_quote = $quote;
         $this->setQuoteId($quote->getId());
@@ -460,7 +465,7 @@ class Address extends \Magento\Customer\Model\Address\AbstractAddress
     /**
      * Retrieve quote object
      *
-     * @return \Magento\Sales\Model\Quote
+     * @return \Magento\Quote\Model\Quote
      */
     public function getQuote()
     {
@@ -560,7 +565,9 @@ class Address extends \Magento\Customer\Model\Address\AbstractAddress
     /**
      * Get all available address items
      *
-     * @return \Magento\Sales\Model\Quote\Address\Item[]
+     * @return \Magento\Quote\Model\Quote\Address\Item[]
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function getAllItems()
     {
@@ -672,7 +679,7 @@ class Address extends \Magento\Customer\Model\Address\AbstractAddress
      * Get address item object by id without
      *
      * @param int $itemId
-     * @return \Magento\Sales\Model\Quote\Address\Item|false
+     * @return \Magento\Quote\Model\Quote\Address\Item|false
      */
     public function getItemById($itemId)
     {
@@ -689,7 +696,7 @@ class Address extends \Magento\Customer\Model\Address\AbstractAddress
      * Get prepared not deleted item
      *
      * @param int $itemId
-     * @return \Magento\Sales\Model\Quote\Address\Item|false
+     * @return \Magento\Quote\Model\Quote\Address\Item|false
      */
     public function getValidItemById($itemId)
     {
@@ -706,7 +713,7 @@ class Address extends \Magento\Customer\Model\Address\AbstractAddress
      * Retrieve item object by quote item Id
      *
      * @param int $itemId
-     * @return \Magento\Sales\Model\Quote\Address\Item|false
+     * @return \Magento\Quote\Model\Quote\Address\Item|false
      */
     public function getItemByQuoteItemId($itemId)
     {
@@ -737,13 +744,13 @@ class Address extends \Magento\Customer\Model\Address\AbstractAddress
     /**
      * Add item to address
      *
-     * @param \Magento\Sales\Model\Quote\Item\AbstractItem $item
+     * @param \Magento\Quote\Model\Quote\Item\AbstractItem $item
      * @param int $qty
      * @return $this
      */
-    public function addItem(\Magento\Sales\Model\Quote\Item\AbstractItem $item, $qty = null)
+    public function addItem(\Magento\Quote\Model\Quote\Item\AbstractItem $item, $qty = null)
     {
-        if ($item instanceof \Magento\Sales\Model\Quote\Item) {
+        if ($item instanceof \Magento\Quote\Model\Quote\Item) {
             if ($item->getParentItemId()) {
                 return $this;
             }
@@ -859,7 +866,7 @@ class Address extends \Magento\Customer\Model\Address\AbstractAddress
      * Retrieve shipping rate by identifier
      *
      * @param   int $rateId
-     * @return  \Magento\Sales\Model\Quote\Address\Rate|false
+     * @return  \Magento\Quote\Model\Quote\Address\Rate|false
      */
     public function getShippingRateById($rateId)
     {
@@ -876,7 +883,7 @@ class Address extends \Magento\Customer\Model\Address\AbstractAddress
      * Retrieve shipping rate by code
      *
      * @param   string $code
-     * @return  \Magento\Sales\Model\Quote\Address\Rate|false
+     * @return  \Magento\Quote\Model\Quote\Address\Rate|false
      */
     public function getShippingRateByCode($code)
     {
@@ -905,10 +912,10 @@ class Address extends \Magento\Customer\Model\Address\AbstractAddress
     /**
      * Add shipping rate
      *
-     * @param \Magento\Sales\Model\Quote\Address\Rate $rate
+     * @param \Magento\Quote\Model\Quote\Address\Rate $rate
      * @return $this
      */
-    public function addShippingRate(\Magento\Sales\Model\Quote\Address\Rate $rate)
+    public function addShippingRate(\Magento\Quote\Model\Quote\Address\Rate $rate)
     {
         $rate->setAddress($this);
         $this->getShippingRatesCollection()->addItem($rate);
@@ -947,12 +954,14 @@ class Address extends \Magento\Customer\Model\Address\AbstractAddress
      * Request shipping rates for entire address or specified address item
      * Returns true if current selected shipping method code corresponds to one of the found rates
      *
-     * @param \Magento\Sales\Model\Quote\Item\AbstractItem $item
+     * @param \Magento\Quote\Model\Quote\Item\AbstractItem $item
      * @return bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
-    public function requestShippingRates(\Magento\Sales\Model\Quote\Item\AbstractItem $item = null)
+    public function requestShippingRates(\Magento\Quote\Model\Quote\Item\AbstractItem $item = null)
     {
-        /** @var $request \Magento\Sales\Model\Quote\Address\RateRequest */
+        /** @var $request \Magento\Quote\Model\Quote\Address\RateRequest */
         $request = $this->_rateRequestFactory->create();
         $request->setAllItems($item ? [$item] : $this->getAllItems());
         $request->setDestCountryId($this->getCountryId());
@@ -1013,7 +1022,7 @@ class Address extends \Magento\Customer\Model\Address\AbstractAddress
                     } else {
                         /**
                          * possible bug: this should be setBaseShippingAmount(),
-                         * see \Magento\Sales\Model\Quote\Address\Total\Shipping::collect()
+                         * see \Magento\Quote\Model\Quote\Address\Total\Shipping::collect()
                          * where this value is set again from the current specified rate price
                          * (looks like a workaround for this bug)
                          */
@@ -1031,7 +1040,7 @@ class Address extends \Magento\Customer\Model\Address\AbstractAddress
     /**
      * Get totals collector model
      *
-     * @return \Magento\Sales\Model\Quote\Address\Total\Collector
+     * @return \Magento\Quote\Model\Quote\Address\Total\Collector
      */
     public function getTotalCollector()
     {
@@ -1083,18 +1092,18 @@ class Address extends \Magento\Customer\Model\Address\AbstractAddress
     /**
      * Add total data or model
      *
-     * @param \Magento\Sales\Model\Quote\Total|array $total
+     * @param \Magento\Quote\Model\Quote\Total|array $total
      * @return $this
      */
     public function addTotal($total)
     {
         if (is_array($total)) {
             $totalInstance = $this->_addressTotalFactory->create(
-                'Magento\Sales\Model\Quote\Address\Total'
+                'Magento\Quote\Model\Quote\Address\Total'
             )->setData(
                 $total
             );
-        } elseif ($total instanceof \Magento\Sales\Model\Quote\Total) {
+        } elseif ($total instanceof \Magento\Quote\Model\Quote\Total) {
             $totalInstance = $total;
         }
         $totalInstance->setAddress($this);
@@ -1106,7 +1115,7 @@ class Address extends \Magento\Customer\Model\Address\AbstractAddress
     /**
      * Rewrite clone method
      *
-     * @return \Magento\Sales\Model\Quote\Address
+     * @return \Magento\Quote\Model\Quote\Address
      */
     public function __clone()
     {
@@ -1176,6 +1185,7 @@ class Address extends \Magento\Customer\Model\Address\AbstractAddress
      * @param float $value
      * @param bool $alreadyExclTax
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function setShippingAmount($value, $alreadyExclTax = false)
     {
@@ -1188,6 +1198,7 @@ class Address extends \Magento\Customer\Model\Address\AbstractAddress
      * @param float $value
      * @param bool $alreadyExclTax
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function setBaseShippingAmount($value, $alreadyExclTax = false)
     {
diff --git a/app/code/Magento/Sales/Model/Quote/Address/AbstractCarrierInterface.php b/app/code/Magento/Quote/Model/Quote/Address/AbstractCarrierInterface.php
similarity index 89%
rename from app/code/Magento/Sales/Model/Quote/Address/AbstractCarrierInterface.php
rename to app/code/Magento/Quote/Model/Quote/Address/AbstractCarrierInterface.php
index d02c34e5e74e6c000b4e05b7d0b51a78a8602e27..acc4f1b93d48291383afedf533b76438717bdaca 100644
--- a/app/code/Magento/Sales/Model/Quote/Address/AbstractCarrierInterface.php
+++ b/app/code/Magento/Quote/Model/Quote/Address/AbstractCarrierInterface.php
@@ -3,7 +3,7 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Quote\Address;
+namespace Magento\Quote\Model\Quote\Address;
 
 interface AbstractCarrierInterface
 {
@@ -18,10 +18,10 @@ interface AbstractCarrierInterface
     /**
      * Collect and get rates
      *
-     * @param \Magento\Sales\Model\Quote\Address\RateRequest $request
+     * @param \Magento\Quote\Model\Quote\Address\RateRequest $request
      * @return \Magento\Framework\Object|bool|null
      */
-    public function collectRates(\Magento\Sales\Model\Quote\Address\RateRequest $request);
+    public function collectRates(\Magento\Quote\Model\Quote\Address\RateRequest $request);
 
     /**
      * Do request to shipment
@@ -65,18 +65,18 @@ interface AbstractCarrierInterface
     public function getDeliveryConfirmationTypes(\Magento\Framework\Object $params = null);
 
     /**
-     * @param \Magento\Sales\Model\Quote\Address\RateRequest $request
+     * @param \Magento\Quote\Model\Quote\Address\RateRequest $request
      * @return $this|bool|false|\Magento\Framework\Model\AbstractModel
      */
-    public function checkAvailableShipCountries(\Magento\Sales\Model\Quote\Address\RateRequest $request);
+    public function checkAvailableShipCountries(\Magento\Quote\Model\Quote\Address\RateRequest $request);
 
     /**
      * Processing additional validation to check is carrier applicable.
      *
-     * @param \Magento\Sales\Model\Quote\Address\RateRequest $request
-     * @return $this|\Magento\Sales\Model\Quote\Address\RateResult\Error|boolean
+     * @param \Magento\Quote\Model\Quote\Address\RateRequest $request
+     * @return $this|\Magento\Quote\Model\Quote\Address\RateResult\Error|boolean
      */
-    public function proccessAdditionalValidation(\Magento\Sales\Model\Quote\Address\RateRequest $request);
+    public function proccessAdditionalValidation(\Magento\Quote\Model\Quote\Address\RateRequest $request);
 
     /**
      * Determine whether current carrier enabled for activity
diff --git a/app/code/Magento/Sales/Model/Quote/Address/CarrierFactoryInterface.php b/app/code/Magento/Quote/Model/Quote/Address/CarrierFactoryInterface.php
similarity index 95%
rename from app/code/Magento/Sales/Model/Quote/Address/CarrierFactoryInterface.php
rename to app/code/Magento/Quote/Model/Quote/Address/CarrierFactoryInterface.php
index 2ca8fca100c19e2be8660ffb1d26dd51ea191fdd..9cd570db6feeccecbecad70df05a0ba2a58ab44e 100644
--- a/app/code/Magento/Sales/Model/Quote/Address/CarrierFactoryInterface.php
+++ b/app/code/Magento/Quote/Model/Quote/Address/CarrierFactoryInterface.php
@@ -3,7 +3,7 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Quote\Address;
+namespace Magento\Quote\Model\Quote\Address;
 
 interface CarrierFactoryInterface
 {
diff --git a/app/code/Magento/Sales/Model/Quote/Address/Item.php b/app/code/Magento/Quote/Model/Quote/Address/Item.php
similarity index 56%
rename from app/code/Magento/Sales/Model/Quote/Address/Item.php
rename to app/code/Magento/Quote/Model/Quote/Address/Item.php
index 1f13460bbb72ab0af8073e363cb7334a736f6bf3..9f2a99f8328895fab081bdf4351d72dc07ee3eb4 100644
--- a/app/code/Magento/Sales/Model/Quote/Address/Item.php
+++ b/app/code/Magento/Quote/Model/Quote/Address/Item.php
@@ -3,95 +3,95 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Quote\Address;
+namespace Magento\Quote\Model\Quote\Address;
 
-use Magento\Sales\Model\Quote;
+use Magento\Quote\Model\Quote;
 
 /**
- * @method \Magento\Sales\Model\Resource\Quote\Address\Item _getResource()
- * @method \Magento\Sales\Model\Resource\Quote\Address\Item getResource()
+ * @method \Magento\Quote\Model\Resource\Quote\Address\Item _getResource()
+ * @method \Magento\Quote\Model\Resource\Quote\Address\Item getResource()
  * @method int getParentItemId()
- * @method \Magento\Sales\Model\Quote\Address\Item setParentItemId(int $value)
+ * @method \Magento\Quote\Model\Quote\Address\Item setParentItemId(int $value)
  * @method int getQuoteAddressId()
- * @method \Magento\Sales\Model\Quote\Address\Item setQuoteAddressId(int $value)
+ * @method \Magento\Quote\Model\Quote\Address\Item setQuoteAddressId(int $value)
  * @method int getQuoteItemId()
- * @method \Magento\Sales\Model\Quote\Address\Item setQuoteItemId(int $value)
+ * @method \Magento\Quote\Model\Quote\Address\Item setQuoteItemId(int $value)
  * @method string getCreatedAt()
- * @method \Magento\Sales\Model\Quote\Address\Item setCreatedAt(string $value)
+ * @method \Magento\Quote\Model\Quote\Address\Item setCreatedAt(string $value)
  * @method string getUpdatedAt()
- * @method \Magento\Sales\Model\Quote\Address\Item setUpdatedAt(string $value)
+ * @method \Magento\Quote\Model\Quote\Address\Item setUpdatedAt(string $value)
  * @method string getAppliedRuleIds()
- * @method \Magento\Sales\Model\Quote\Address\Item setAppliedRuleIds(string $value)
+ * @method \Magento\Quote\Model\Quote\Address\Item setAppliedRuleIds(string $value)
  * @method string getAdditionalData()
- * @method \Magento\Sales\Model\Quote\Address\Item setAdditionalData(string $value)
+ * @method \Magento\Quote\Model\Quote\Address\Item setAdditionalData(string $value)
  * @method float getWeight()
- * @method \Magento\Sales\Model\Quote\Address\Item setWeight(float $value)
- * @method \Magento\Sales\Model\Quote\Address\Item setQty(float $value)
+ * @method \Magento\Quote\Model\Quote\Address\Item setWeight(float $value)
+ * @method \Magento\Quote\Model\Quote\Address\Item setQty(float $value)
  * @method float getDiscountAmount()
- * @method \Magento\Sales\Model\Quote\Address\Item setDiscountAmount(float $value)
- * @method \Magento\Sales\Model\Quote\Address\Item setTaxAmount(float $value)
+ * @method \Magento\Quote\Model\Quote\Address\Item setDiscountAmount(float $value)
+ * @method \Magento\Quote\Model\Quote\Address\Item setTaxAmount(float $value)
  * @method float getRowTotal()
- * @method \Magento\Sales\Model\Quote\Address\Item setRowTotal(float $value)
+ * @method \Magento\Quote\Model\Quote\Address\Item setRowTotal(float $value)
  * @method float getBaseRowTotal()
- * @method \Magento\Sales\Model\Quote\Address\Item setBaseRowTotal(float $value)
+ * @method \Magento\Quote\Model\Quote\Address\Item setBaseRowTotal(float $value)
  * @method float getRowTotalWithDiscount()
- * @method \Magento\Sales\Model\Quote\Address\Item setRowTotalWithDiscount(float $value)
+ * @method \Magento\Quote\Model\Quote\Address\Item setRowTotalWithDiscount(float $value)
  * @method float getBaseDiscountAmount()
- * @method \Magento\Sales\Model\Quote\Address\Item setBaseDiscountAmount(float $value)
- * @method \Magento\Sales\Model\Quote\Address\Item setBaseTaxAmount(float $value)
+ * @method \Magento\Quote\Model\Quote\Address\Item setBaseDiscountAmount(float $value)
+ * @method \Magento\Quote\Model\Quote\Address\Item setBaseTaxAmount(float $value)
  * @method float getRowWeight()
- * @method \Magento\Sales\Model\Quote\Address\Item setRowWeight(float $value)
+ * @method \Magento\Quote\Model\Quote\Address\Item setRowWeight(float $value)
  * @method int getProductId()
- * @method \Magento\Sales\Model\Quote\Address\Item setProductId(int $value)
+ * @method \Magento\Quote\Model\Quote\Address\Item setProductId(int $value)
  * @method int getSuperProductId()
- * @method \Magento\Sales\Model\Quote\Address\Item setSuperProductId(int $value)
+ * @method \Magento\Quote\Model\Quote\Address\Item setSuperProductId(int $value)
  * @method int getParentProductId()
- * @method \Magento\Sales\Model\Quote\Address\Item setParentProductId(int $value)
+ * @method \Magento\Quote\Model\Quote\Address\Item setParentProductId(int $value)
  * @method string getSku()
- * @method \Magento\Sales\Model\Quote\Address\Item setSku(string $value)
+ * @method \Magento\Quote\Model\Quote\Address\Item setSku(string $value)
  * @method string getImage()
- * @method \Magento\Sales\Model\Quote\Address\Item setImage(string $value)
+ * @method \Magento\Quote\Model\Quote\Address\Item setImage(string $value)
  * @method string getName()
- * @method \Magento\Sales\Model\Quote\Address\Item setName(string $value)
+ * @method \Magento\Quote\Model\Quote\Address\Item setName(string $value)
  * @method string getDescription()
- * @method \Magento\Sales\Model\Quote\Address\Item setDescription(string $value)
+ * @method \Magento\Quote\Model\Quote\Address\Item setDescription(string $value)
  * @method int getFreeShipping()
- * @method \Magento\Sales\Model\Quote\Address\Item setFreeShipping(int $value)
+ * @method \Magento\Quote\Model\Quote\Address\Item setFreeShipping(int $value)
  * @method int getIsQtyDecimal()
- * @method \Magento\Sales\Model\Quote\Address\Item setIsQtyDecimal(int $value)
+ * @method \Magento\Quote\Model\Quote\Address\Item setIsQtyDecimal(int $value)
  * @method float getDiscountPercent()
- * @method \Magento\Sales\Model\Quote\Address\Item setDiscountPercent(float $value)
+ * @method \Magento\Quote\Model\Quote\Address\Item setDiscountPercent(float $value)
  * @method int getNoDiscount()
- * @method \Magento\Sales\Model\Quote\Address\Item setNoDiscount(int $value)
+ * @method \Magento\Quote\Model\Quote\Address\Item setNoDiscount(int $value)
  * @method float getTaxPercent()
- * @method \Magento\Sales\Model\Quote\Address\Item setTaxPercent(float $value)
+ * @method \Magento\Quote\Model\Quote\Address\Item setTaxPercent(float $value)
  * @method float getBasePrice()
- * @method \Magento\Sales\Model\Quote\Address\Item setBasePrice(float $value)
+ * @method \Magento\Quote\Model\Quote\Address\Item setBasePrice(float $value)
  * @method float getBaseCost()
- * @method \Magento\Sales\Model\Quote\Address\Item setBaseCost(float $value)
+ * @method \Magento\Quote\Model\Quote\Address\Item setBaseCost(float $value)
  * @method float getPriceInclTax()
- * @method \Magento\Sales\Model\Quote\Address\Item setPriceInclTax(float $value)
+ * @method \Magento\Quote\Model\Quote\Address\Item setPriceInclTax(float $value)
  * @method float getBasePriceInclTax()
- * @method \Magento\Sales\Model\Quote\Address\Item setBasePriceInclTax(float $value)
+ * @method \Magento\Quote\Model\Quote\Address\Item setBasePriceInclTax(float $value)
  * @method float getRowTotalInclTax()
- * @method \Magento\Sales\Model\Quote\Address\Item setRowTotalInclTax(float $value)
+ * @method \Magento\Quote\Model\Quote\Address\Item setRowTotalInclTax(float $value)
  * @method float getBaseRowTotalInclTax()
- * @method \Magento\Sales\Model\Quote\Address\Item setBaseRowTotalInclTax(float $value)
+ * @method \Magento\Quote\Model\Quote\Address\Item setBaseRowTotalInclTax(float $value)
  * @method int getGiftMessageId()
- * @method \Magento\Sales\Model\Quote\Address\Item setGiftMessageId(int $value)
+ * @method \Magento\Quote\Model\Quote\Address\Item setGiftMessageId(int $value)
  * @method float getHiddenTaxAmount()
- * @method \Magento\Sales\Model\Quote\Address\Item setHiddenTaxAmount(float $value)
+ * @method \Magento\Quote\Model\Quote\Address\Item setHiddenTaxAmount(float $value)
  * @method float getBaseHiddenTaxAmount()
- * @method \Magento\Sales\Model\Quote\Address\Item setBaseHiddenTaxAmount(float $value)
+ * @method \Magento\Quote\Model\Quote\Address\Item setBaseHiddenTaxAmount(float $value)
  *
  * @author      Magento Core Team <core@magentocommerce.com>
  */
-class Item extends \Magento\Sales\Model\Quote\Item\AbstractItem
+class Item extends \Magento\Quote\Model\Quote\Item\AbstractItem
 {
     /**
      * Quote address model object
      *
-     * @var \Magento\Sales\Model\Quote\Address
+     * @var \Magento\Quote\Model\Quote\Address
      */
     protected $_address;
 
@@ -105,11 +105,11 @@ class Item extends \Magento\Sales\Model\Quote\Item\AbstractItem
      */
     protected function _construct()
     {
-        $this->_init('Magento\Sales\Model\Resource\Quote\Address\Item');
+        $this->_init('Magento\Quote\Model\Resource\Quote\Address\Item');
     }
 
     /**
-     * @return $this|\Magento\Sales\Model\Quote\Item\AbstractItem
+     * @return $this|\Magento\Quote\Model\Quote\Item\AbstractItem
      */
     public function beforeSave()
     {
@@ -123,10 +123,10 @@ class Item extends \Magento\Sales\Model\Quote\Item\AbstractItem
     /**
      * Declare address model
      *
-     * @param \Magento\Sales\Model\Quote\Address $address
+     * @param \Magento\Quote\Model\Quote\Address $address
      * @return $this
      */
-    public function setAddress(\Magento\Sales\Model\Quote\Address $address)
+    public function setAddress(\Magento\Quote\Model\Quote\Address $address)
     {
         $this->_address = $address;
         $this->_quote = $address->getQuote();
@@ -136,7 +136,7 @@ class Item extends \Magento\Sales\Model\Quote\Item\AbstractItem
     /**
      * Retrieve address model
      *
-     * @return \Magento\Sales\Model\Quote\Address
+     * @return \Magento\Quote\Model\Quote\Address
      */
     public function getAddress()
     {
@@ -154,10 +154,10 @@ class Item extends \Magento\Sales\Model\Quote\Item\AbstractItem
     }
 
     /**
-     * @param \Magento\Sales\Model\Quote\Item $quoteItem
+     * @param \Magento\Quote\Model\Quote\Item $quoteItem
      * @return $this
      */
-    public function importQuoteItem(\Magento\Sales\Model\Quote\Item $quoteItem)
+    public function importQuoteItem(\Magento\Quote\Model\Quote\Item $quoteItem)
     {
         $this->_quote = $quoteItem->getQuote();
         $this->setQuoteItem(
diff --git a/app/code/Magento/Sales/Model/Quote/Address/Rate.php b/app/code/Magento/Quote/Model/Quote/Address/Rate.php
similarity index 62%
rename from app/code/Magento/Sales/Model/Quote/Address/Rate.php
rename to app/code/Magento/Quote/Model/Quote/Address/Rate.php
index 92a299fbf2d4f70a6e832a55be6d244514630a03..7b6832df604f015725e509033f30b4e1f7223198 100644
--- a/app/code/Magento/Sales/Model/Quote/Address/Rate.php
+++ b/app/code/Magento/Quote/Model/Quote/Address/Rate.php
@@ -3,42 +3,42 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Quote\Address;
+namespace Magento\Quote\Model\Quote\Address;
 
 use Magento\Framework\Model\AbstractModel;
 
 /**
- * @method \Magento\Sales\Model\Resource\Quote\Address\Rate _getResource()
- * @method \Magento\Sales\Model\Resource\Quote\Address\Rate getResource()
+ * @method \Magento\Quote\Model\Resource\Quote\Address\Rate _getResource()
+ * @method \Magento\Quote\Model\Resource\Quote\Address\Rate getResource()
  * @method int getAddressId()
- * @method \Magento\Sales\Model\Quote\Address\Rate setAddressId(int $value)
+ * @method \Magento\Quote\Model\Quote\Address\Rate setAddressId(int $value)
  * @method string getCreatedAt()
- * @method \Magento\Sales\Model\Quote\Address\Rate setCreatedAt(string $value)
+ * @method \Magento\Quote\Model\Quote\Address\Rate setCreatedAt(string $value)
  * @method string getUpdatedAt()
- * @method \Magento\Sales\Model\Quote\Address\Rate setUpdatedAt(string $value)
+ * @method \Magento\Quote\Model\Quote\Address\Rate setUpdatedAt(string $value)
  * @method string getCarrier()
- * @method \Magento\Sales\Model\Quote\Address\Rate setCarrier(string $value)
+ * @method \Magento\Quote\Model\Quote\Address\Rate setCarrier(string $value)
  * @method string getCarrierTitle()
- * @method \Magento\Sales\Model\Quote\Address\Rate setCarrierTitle(string $value)
+ * @method \Magento\Quote\Model\Quote\Address\Rate setCarrierTitle(string $value)
  * @method string getCode()
- * @method \Magento\Sales\Model\Quote\Address\Rate setCode(string $value)
+ * @method \Magento\Quote\Model\Quote\Address\Rate setCode(string $value)
  * @method string getMethod()
- * @method \Magento\Sales\Model\Quote\Address\Rate setMethod(string $value)
+ * @method \Magento\Quote\Model\Quote\Address\Rate setMethod(string $value)
  * @method string getMethodDescription()
- * @method \Magento\Sales\Model\Quote\Address\Rate setMethodDescription(string $value)
+ * @method \Magento\Quote\Model\Quote\Address\Rate setMethodDescription(string $value)
  * @method float getPrice()
- * @method \Magento\Sales\Model\Quote\Address\Rate setPrice(float $value)
+ * @method \Magento\Quote\Model\Quote\Address\Rate setPrice(float $value)
  * @method string getErrorMessage()
- * @method \Magento\Sales\Model\Quote\Address\Rate setErrorMessage(string $value)
+ * @method \Magento\Quote\Model\Quote\Address\Rate setErrorMessage(string $value)
  * @method string getMethodTitle()
- * @method \Magento\Sales\Model\Quote\Address\Rate setMethodTitle(string $value)
+ * @method \Magento\Quote\Model\Quote\Address\Rate setMethodTitle(string $value)
  *
  * @author      Magento Core Team <core@magentocommerce.com>
  */
 class Rate extends AbstractModel
 {
     /**
-     * @var \Magento\Sales\Model\Quote\Address
+     * @var \Magento\Quote\Model\Quote\Address
      */
     protected $_address;
 
@@ -47,7 +47,7 @@ class Rate extends AbstractModel
      */
     protected function _construct()
     {
-        $this->_init('Magento\Sales\Model\Resource\Quote\Address\Rate');
+        $this->_init('Magento\Quote\Model\Resource\Quote\Address\Rate');
     }
 
     /**
@@ -63,17 +63,17 @@ class Rate extends AbstractModel
     }
 
     /**
-     * @param \Magento\Sales\Model\Quote\Address $address
+     * @param \Magento\Quote\Model\Quote\Address $address
      * @return $this
      */
-    public function setAddress(\Magento\Sales\Model\Quote\Address $address)
+    public function setAddress(\Magento\Quote\Model\Quote\Address $address)
     {
         $this->_address = $address;
         return $this;
     }
 
     /**
-     * @return \Magento\Sales\Model\Quote\Address
+     * @return \Magento\Quote\Model\Quote\Address
      */
     public function getAddress()
     {
@@ -81,12 +81,12 @@ class Rate extends AbstractModel
     }
 
     /**
-     * @param \Magento\Sales\Model\Quote\Address\RateResult\AbstractResult $rate
+     * @param \Magento\Quote\Model\Quote\Address\RateResult\AbstractResult $rate
      * @return $this
      */
-    public function importShippingRate(\Magento\Sales\Model\Quote\Address\RateResult\AbstractResult $rate)
+    public function importShippingRate(\Magento\Quote\Model\Quote\Address\RateResult\AbstractResult $rate)
     {
-        if ($rate instanceof \Magento\Sales\Model\Quote\Address\RateResult\Error) {
+        if ($rate instanceof \Magento\Quote\Model\Quote\Address\RateResult\Error) {
             $this->setCode(
                 $rate->getCarrier() . '_error'
             )->setCarrier(
@@ -96,7 +96,7 @@ class Rate extends AbstractModel
             )->setErrorMessage(
                 $rate->getErrorMessage()
             );
-        } elseif ($rate instanceof \Magento\Sales\Model\Quote\Address\RateResult\Method) {
+        } elseif ($rate instanceof \Magento\Quote\Model\Quote\Address\RateResult\Method) {
             $this->setCode(
                 $rate->getCarrier() . '_' . $rate->getMethod()
             )->setCarrier(
diff --git a/app/code/Magento/Sales/Model/Quote/Address/RateCollectorInterface.php b/app/code/Magento/Quote/Model/Quote/Address/RateCollectorInterface.php
similarity index 85%
rename from app/code/Magento/Sales/Model/Quote/Address/RateCollectorInterface.php
rename to app/code/Magento/Quote/Model/Quote/Address/RateCollectorInterface.php
index 9d7882173a738d31fdf0ae41470a7d1f652ebf4b..bb0cb8b387b04c70a76d7b9e8207be29a4e7bb63 100644
--- a/app/code/Magento/Sales/Model/Quote/Address/RateCollectorInterface.php
+++ b/app/code/Magento/Quote/Model/Quote/Address/RateCollectorInterface.php
@@ -3,7 +3,7 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Quote\Address;
+namespace Magento\Quote\Model\Quote\Address;
 
 interface RateCollectorInterface
 {
diff --git a/app/code/Magento/Sales/Model/Quote/Address/RateCollectorInterfaceFactory.php b/app/code/Magento/Quote/Model/Quote/Address/RateCollectorInterfaceFactory.php
similarity index 81%
rename from app/code/Magento/Sales/Model/Quote/Address/RateCollectorInterfaceFactory.php
rename to app/code/Magento/Quote/Model/Quote/Address/RateCollectorInterfaceFactory.php
index fb1e6fc7508118d4dc7ae7bf5fa17d1a8c7a1b97..6c48450b9b13838b6e21f371ddb914ba3c962f87 100644
--- a/app/code/Magento/Sales/Model/Quote/Address/RateCollectorInterfaceFactory.php
+++ b/app/code/Magento/Quote/Model/Quote/Address/RateCollectorInterfaceFactory.php
@@ -3,10 +3,10 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Quote\Address;
+namespace Magento\Quote\Model\Quote\Address;
 
 /**
- * Factory class for \Magento\Sales\Model\Quote\Address\RateCollectorInterface
+ * Factory class for \Magento\Quote\Model\Quote\Address\RateCollectorInterface
  */
 class RateCollectorInterfaceFactory
 {
@@ -32,7 +32,7 @@ class RateCollectorInterfaceFactory
      */
     public function __construct(
         \Magento\Framework\ObjectManagerInterface $objectManager,
-        $instanceName = 'Magento\Sales\Model\Quote\Address\RateCollectorInterface'
+        $instanceName = 'Magento\Quote\Model\Quote\Address\RateCollectorInterface'
     ) {
         $this->_objectManager = $objectManager;
         $this->_instanceName = $instanceName;
@@ -42,7 +42,7 @@ class RateCollectorInterfaceFactory
      * Create class instance with specified parameters
      *
      * @param array $data
-     * @return \Magento\Sales\Model\Quote\Address\RateCollectorInterface
+     * @return \Magento\Quote\Model\Quote\Address\RateCollectorInterface
      */
     public function create(array $data = [])
     {
diff --git a/app/code/Magento/Sales/Model/Quote/Address/RateRequest.php b/app/code/Magento/Quote/Model/Quote/Address/RateRequest.php
similarity index 56%
rename from app/code/Magento/Sales/Model/Quote/Address/RateRequest.php
rename to app/code/Magento/Quote/Model/Quote/Address/RateRequest.php
index ec5cdba7f1b27c38251057637d18b7e64a3b0136..33a15af206a05826f0eb70e1400d664fd371a38b 100644
--- a/app/code/Magento/Sales/Model/Quote/Address/RateRequest.php
+++ b/app/code/Magento/Quote/Model/Quote/Address/RateRequest.php
@@ -3,7 +3,7 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Quote\Address;
+namespace Magento\Quote\Model\Quote\Address;
 
 /**
  * Fields:
@@ -36,77 +36,77 @@ namespace Magento\Sales\Model\Quote\Address;
  *   - specific carrier fields
  *
  * @method int getStoreId()
- * @method \Magento\Sales\Model\Quote\Address\RateRequest setStoreId(int $value)
+ * @method \Magento\Quote\Model\Quote\Address\RateRequest setStoreId(int $value)
  * @method int getWebsiteId()
- * @method \Magento\Sales\Model\Quote\Address\RateRequest setWebsiteId(int $value)
+ * @method \Magento\Quote\Model\Quote\Address\RateRequest setWebsiteId(int $value)
  * @method string getBaseCurrency()
- * @method \Magento\Sales\Model\Quote\Address\RateRequest setBaseCurrency(string $value)
+ * @method \Magento\Quote\Model\Quote\Address\RateRequest setBaseCurrency(string $value)
  *
- * @method \Magento\Sales\Model\Quote\Address\RateRequest setAllItems(array $items)
+ * @method \Magento\Quote\Model\Quote\Address\RateRequest setAllItems(array $items)
  * @method array getAllItems()
  *
- * @method \Magento\Sales\Model\Quote\Address\RateRequest setOrigCountryId(string $value)
+ * @method \Magento\Quote\Model\Quote\Address\RateRequest setOrigCountryId(string $value)
  * @method string getOrigCountryId()
- * @method \Magento\Sales\Model\Quote\Address\RateRequest setOrigRegionId(int $value)
+ * @method \Magento\Quote\Model\Quote\Address\RateRequest setOrigRegionId(int $value)
  * @method int getOrigRegionId()
- * @method \Magento\Sales\Model\Quote\Address\RateRequest setOrigPostcode(string $value)
+ * @method \Magento\Quote\Model\Quote\Address\RateRequest setOrigPostcode(string $value)
  * @method string getOrigPostcode()
- * @method \Magento\Sales\Model\Quote\Address\RateRequest setOrigCity(string $value)
+ * @method \Magento\Quote\Model\Quote\Address\RateRequest setOrigCity(string $value)
  * @method string getOrigCity()
  *
- * @method \Magento\Sales\Model\Quote\Address\RateRequest setDestCountryId(string $value)
+ * @method \Magento\Quote\Model\Quote\Address\RateRequest setDestCountryId(string $value)
  * @method string getDestCountryId()
- * @method \Magento\Sales\Model\Quote\Address\RateRequest setDestRegionId(int $value)
+ * @method \Magento\Quote\Model\Quote\Address\RateRequest setDestRegionId(int $value)
  * @method int getDestRegionId()
- * @method \Magento\Sales\Model\Quote\Address\RateRequest setDestRegionCode(string $value)
+ * @method \Magento\Quote\Model\Quote\Address\RateRequest setDestRegionCode(string $value)
  * @method string getDestRegionCode()
- * @method \Magento\Sales\Model\Quote\Address\RateRequest setDestPostcode(string $value)
+ * @method \Magento\Quote\Model\Quote\Address\RateRequest setDestPostcode(string $value)
  * @method string getDestPostcode()
- * @method \Magento\Sales\Model\Quote\Address\RateRequest setDestCity(string $value)
+ * @method \Magento\Quote\Model\Quote\Address\RateRequest setDestCity(string $value)
  * @method string getDestCity()
- * @method \Magento\Sales\Model\Quote\Address\RateRequest setDestStreet(string $value)
+ * @method \Magento\Quote\Model\Quote\Address\RateRequest setDestStreet(string $value)
  * @method string getDestStreet()
  *
- * @method \Magento\Sales\Model\Quote\Address\RateRequest setPackageValue(float $value)
+ * @method \Magento\Quote\Model\Quote\Address\RateRequest setPackageValue(float $value)
  * @method float getPackageValue()
- * @method \Magento\Sales\Model\Quote\Address\RateRequest setPackageValueWithDiscount(float $value)
+ * @method \Magento\Quote\Model\Quote\Address\RateRequest setPackageValueWithDiscount(float $value)
  * @method float getPackageValueWithDiscount()
- * @method \Magento\Sales\Model\Quote\Address\RateRequest setPackagePhysicalValue(float $value)
+ * @method \Magento\Quote\Model\Quote\Address\RateRequest setPackagePhysicalValue(float $value)
  * @method float getPackagePhysicalValue()
- * @method \Magento\Sales\Model\Quote\Address\RateRequest setPackageQty(float $value)
+ * @method \Magento\Quote\Model\Quote\Address\RateRequest setPackageQty(float $value)
  * @method float getPackageQty()
- * @method \Magento\Sales\Model\Quote\Address\RateRequest setPackageWeight(float $value)
+ * @method \Magento\Quote\Model\Quote\Address\RateRequest setPackageWeight(float $value)
  * @method float getPackageWeight()
- * @method \Magento\Sales\Model\Quote\Address\RateRequest setPackageHeight(int $value)
+ * @method \Magento\Quote\Model\Quote\Address\RateRequest setPackageHeight(int $value)
  * @method int getPackageHeight()
- * @method \Magento\Sales\Model\Quote\Address\RateRequest setPackageWidth(int $value)
+ * @method \Magento\Quote\Model\Quote\Address\RateRequest setPackageWidth(int $value)
  * @method int getPackageWidth()
- * @method \Magento\Sales\Model\Quote\Address\RateRequest setPackageDepth(int $value)
+ * @method \Magento\Quote\Model\Quote\Address\RateRequest setPackageDepth(int $value)
  * @method int getPackageDepth()
- * @method \Magento\Sales\Model\Quote\Address\RateRequest setPackageCurrency(string $value)
+ * @method \Magento\Quote\Model\Quote\Address\RateRequest setPackageCurrency(string $value)
  * @method string getPackageCurrency()
  *
- * @method \Magento\Sales\Model\Quote\Address\RateRequest setOrderTotalQty(float $value)
+ * @method \Magento\Quote\Model\Quote\Address\RateRequest setOrderTotalQty(float $value)
  * @method float getOrderTotalQty()
- * @method \Magento\Sales\Model\Quote\Address\RateRequest setOrderSubtotal(float $value)
+ * @method \Magento\Quote\Model\Quote\Address\RateRequest setOrderSubtotal(float $value)
  * @method float getOrderSubtotal()
  *
  * @method boolean getFreeShipping()
- * @method \Magento\Sales\Model\Quote\Address\RateRequest setFreeShipping(boolean $flag)
+ * @method \Magento\Quote\Model\Quote\Address\RateRequest setFreeShipping(boolean $flag)
  * @method float getFreeMethodWeight()
- * @method \Magento\Sales\Model\Quote\Address\RateRequest setFreeMethodWeight(float $value)
+ * @method \Magento\Quote\Model\Quote\Address\RateRequest setFreeMethodWeight(float $value)
  *
- * @method \Magento\Sales\Model\Quote\Address\RateRequest setOptionInsurance(boolean $value)
+ * @method \Magento\Quote\Model\Quote\Address\RateRequest setOptionInsurance(boolean $value)
  * @method boolean getOptionInsurance()
- * @method \Magento\Sales\Model\Quote\Address\RateRequest setOptionHandling(float $flag)
+ * @method \Magento\Quote\Model\Quote\Address\RateRequest setOptionHandling(float $flag)
  * @method float getOptionHandling()
  *
- * @method \Magento\Sales\Model\Quote\Address\RateRequest setConditionName(array|string $value)
+ * @method \Magento\Quote\Model\Quote\Address\RateRequest setConditionName(array|string $value)
  * @method array|string getConditionName()
  *
- * @method \Magento\Sales\Model\Quote\Address\RateRequest setLimitCarrier(string $value)
+ * @method \Magento\Quote\Model\Quote\Address\RateRequest setLimitCarrier(string $value)
  * @method string getLimitCarrier()
- * @method \Magento\Sales\Model\Quote\Address\RateRequest setLimitMethod(string $value)
+ * @method \Magento\Quote\Model\Quote\Address\RateRequest setLimitMethod(string $value)
  * @method string getLimitMethod()
  */
 class RateRequest extends \Magento\Framework\Object
diff --git a/app/code/Magento/Sales/Model/Quote/Address/RateResult/AbstractResult.php b/app/code/Magento/Quote/Model/Quote/Address/RateResult/AbstractResult.php
similarity index 74%
rename from app/code/Magento/Sales/Model/Quote/Address/RateResult/AbstractResult.php
rename to app/code/Magento/Quote/Model/Quote/Address/RateResult/AbstractResult.php
index 93fc3487befc301c4cf2d48f5179159c124ddfbd..b8a098e736f317d6fe109be3a48071dd0f544d15 100644
--- a/app/code/Magento/Sales/Model/Quote/Address/RateResult/AbstractResult.php
+++ b/app/code/Magento/Quote/Model/Quote/Address/RateResult/AbstractResult.php
@@ -3,7 +3,7 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Quote\Address\RateResult;
+namespace Magento\Quote\Model\Quote\Address\RateResult;
 
 class AbstractResult extends \Magento\Framework\Object
 {
diff --git a/app/code/Magento/Sales/Model/Quote/Address/RateResult/Error.php b/app/code/Magento/Quote/Model/Quote/Address/RateResult/Error.php
similarity index 90%
rename from app/code/Magento/Sales/Model/Quote/Address/RateResult/Error.php
rename to app/code/Magento/Quote/Model/Quote/Address/RateResult/Error.php
index 9ba8ce9d1121946c99fa37b2bed34c596fb2bd0a..c773f27da0e1d5559b9e0ce2032b664d49d10886 100644
--- a/app/code/Magento/Sales/Model/Quote/Address/RateResult/Error.php
+++ b/app/code/Magento/Quote/Model/Quote/Address/RateResult/Error.php
@@ -3,7 +3,7 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Quote\Address\RateResult;
+namespace Magento\Quote\Model\Quote\Address\RateResult;
 
 class Error extends AbstractResult
 {
diff --git a/app/code/Magento/Sales/Model/Quote/Address/RateResult/Method.php b/app/code/Magento/Quote/Model/Quote/Address/RateResult/Method.php
similarity index 94%
rename from app/code/Magento/Sales/Model/Quote/Address/RateResult/Method.php
rename to app/code/Magento/Quote/Model/Quote/Address/RateResult/Method.php
index f447cb5eafa9c2e7824d59a07caaa7161ab4a6e4..93352d5ca8f05d868096cb603237cb4c328de232 100644
--- a/app/code/Magento/Sales/Model/Quote/Address/RateResult/Method.php
+++ b/app/code/Magento/Quote/Model/Quote/Address/RateResult/Method.php
@@ -3,7 +3,7 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Quote\Address\RateResult;
+namespace Magento\Quote\Model\Quote\Address\RateResult;
 
 /**
  * Fields:
diff --git a/app/code/Magento/Quote/Model/Quote/Address/ToOrder.php b/app/code/Magento/Quote/Model/Quote/Address/ToOrder.php
new file mode 100644
index 0000000000000000000000000000000000000000..07e6f10806aa4a1fbe5e956ab7732bcd89b940a3
--- /dev/null
+++ b/app/code/Magento/Quote/Model/Quote/Address/ToOrder.php
@@ -0,0 +1,76 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+
+namespace Magento\Quote\Model\Quote\Address;
+
+use Magento\Framework\Object\Copy;
+use Magento\Quote\Model\Quote\Address;
+use Magento\Sales\Api\Data\OrderDataBuilder as OrderBuilder;
+use Magento\Sales\Api\Data\OrderInterface;
+use Magento\Framework\Event\ManagerInterface;
+
+/**
+ * Class ToOrder converter
+ */
+class ToOrder
+{
+    /**
+     * @var Copy
+     */
+    protected $objectCopyService;
+
+    /**
+     * @var OrderBuilder|\Magento\Framework\Api\Builder
+     */
+    protected $orderBuilder;
+
+    /**
+     * @var \Magento\Framework\Event\ManagerInterface
+     */
+    protected $eventManager;
+
+    /**
+     * @param OrderBuilder $orderBuilder
+     * @param Copy $objectCopyService
+     * @param ManagerInterface $eventManager
+     */
+    public function __construct(
+        OrderBuilder $orderBuilder,
+        Copy $objectCopyService,
+        ManagerInterface $eventManager
+    ) {
+        $this->orderBuilder = $orderBuilder;
+        $this->objectCopyService = $objectCopyService;
+        $this->eventManager = $eventManager;
+    }
+
+    /**
+     * @param Address $object
+     * @param array $data
+     * @return OrderInterface
+     */
+    public function convert(Address $object, $data = [])
+    {
+        $orderData = $this->objectCopyService->getDataFromFieldset(
+            'quote_convert_address',
+            'to_order',
+            $object
+        );
+        $order = $this->orderBuilder
+            ->populateWithArray(array_merge($orderData, $data))
+            ->setStoreId($object->getQuote()->getStoreId())
+            ->setQuoteId($object->getQuote()->getId())
+            ->create();
+
+        $this->objectCopyService->copyFieldsetToTarget('sales_convert_quote', 'to_order', $object->getQuote(), $order);
+        $this->eventManager->dispatch(
+            'sales_convert_quote_to_order',
+            ['order' => $order, 'quote' => $object->getQuote()]
+        );
+        return $order;
+
+    }
+}
diff --git a/app/code/Magento/Quote/Model/Quote/Address/ToOrderAddress.php b/app/code/Magento/Quote/Model/Quote/Address/ToOrderAddress.php
new file mode 100644
index 0000000000000000000000000000000000000000..370dbfd02a985bd9f7ba62059be4f12e61d516b4
--- /dev/null
+++ b/app/code/Magento/Quote/Model/Quote/Address/ToOrderAddress.php
@@ -0,0 +1,58 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+
+namespace Magento\Quote\Model\Quote\Address;
+
+use Magento\Framework\Object\Copy;
+use Magento\Quote\Model\Quote\Address;
+use Magento\Sales\Api\Data\OrderAddressDataBuilder as OrderAddressBuilder;
+use Magento\Sales\Api\Data\OrderAddressInterface;
+
+/**
+ * Class ToOrderAddress
+ */
+class ToOrderAddress
+{
+    /**
+     * @var Copy
+     */
+    protected $objectCopyService;
+
+    /**
+     * @var OrderAddressBuilder|\Magento\Framework\Api\Builder
+     */
+    protected $orderAddressBuilder;
+
+    /**
+     * @param OrderAddressBuilder $orderAddressBuilder
+     * @param Copy $objectCopyService
+     */
+    public function __construct(
+        OrderAddressBuilder $orderAddressBuilder,
+        Copy $objectCopyService
+    ) {
+        $this->orderAddressBuilder = $orderAddressBuilder;
+        $this->objectCopyService = $objectCopyService;
+    }
+
+    /**
+     * @param Address $object
+     * @param array $data
+     * @return OrderAddressInterface
+     */
+    public function convert(Address $object, $data = [])
+    {
+        $orderAddressData = $this->objectCopyService->getDataFromFieldset(
+            'quote_convert_address',
+            'to_order_address',
+            $object
+        );
+
+        return $this->orderAddressBuilder
+            ->populateWithArray(array_merge($orderAddressData, $data))
+            ->create();
+    }
+}
diff --git a/app/code/Magento/Sales/Model/Quote/Address/Total.php b/app/code/Magento/Quote/Model/Quote/Address/Total.php
similarity index 74%
rename from app/code/Magento/Sales/Model/Quote/Address/Total.php
rename to app/code/Magento/Quote/Model/Quote/Address/Total.php
index 90d8c2c3664eca7f90b8d4f7f24e5c255007491a..1e92f751503209b1a95ad20d78575d2b8cfe627c 100644
--- a/app/code/Magento/Sales/Model/Quote/Address/Total.php
+++ b/app/code/Magento/Quote/Model/Quote/Address/Total.php
@@ -3,17 +3,17 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Quote\Address;
+namespace Magento\Quote\Model\Quote\Address;
 
 class Total extends \Magento\Framework\Object
 {
     /**
      * Merge numeric total values
      *
-     * @param \Magento\Sales\Model\Quote\Address\Total $total
+     * @param \Magento\Quote\Model\Quote\Address\Total $total
      * @return $this
      */
-    public function merge(\Magento\Sales\Model\Quote\Address\Total $total)
+    public function merge(\Magento\Quote\Model\Quote\Address\Total $total)
     {
         $newData = $total->getData();
         foreach ($newData as $key => $value) {
diff --git a/app/code/Magento/Sales/Model/Quote/Address/Total/AbstractTotal.php b/app/code/Magento/Quote/Model/Quote/Address/Total/AbstractTotal.php
similarity index 81%
rename from app/code/Magento/Sales/Model/Quote/Address/Total/AbstractTotal.php
rename to app/code/Magento/Quote/Model/Quote/Address/Total/AbstractTotal.php
index d9c57affc69c023e4a8e50d5dfb18eb17d668d6f..3fc97522eaa26de16783c9eba121a8bc8efc7d5b 100644
--- a/app/code/Magento/Sales/Model/Quote/Address/Total/AbstractTotal.php
+++ b/app/code/Magento/Quote/Model/Quote/Address/Total/AbstractTotal.php
@@ -3,10 +3,11 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Quote\Address\Total;
+namespace Magento\Quote\Model\Quote\Address\Total;
 
 /**
  * Sales Quote Address Total  abstract model
+ * @SuppressWarnings(PHPMD.NumberOfChildren)
  */
 abstract class AbstractTotal
 {
@@ -78,10 +79,10 @@ abstract class AbstractTotal
     /**
      * Collect totals process.
      *
-     * @param \Magento\Sales\Model\Quote\Address $address
+     * @param \Magento\Quote\Model\Quote\Address $address
      * @return $this
      */
-    public function collect(\Magento\Sales\Model\Quote\Address $address)
+    public function collect(\Magento\Quote\Model\Quote\Address $address)
     {
         $this->_setAddress($address);
         /**
@@ -95,10 +96,10 @@ abstract class AbstractTotal
     /**
      * Fetch (Retrieve data as array)
      *
-     * @param \Magento\Sales\Model\Quote\Address $address
+     * @param \Magento\Quote\Model\Quote\Address $address
      * @return array
      */
-    public function fetch(\Magento\Sales\Model\Quote\Address $address)
+    public function fetch(\Magento\Quote\Model\Quote\Address $address)
     {
         $this->_setAddress($address);
         return [];
@@ -107,10 +108,10 @@ abstract class AbstractTotal
     /**
      * Set address which can be used inside totals calculation
      *
-     * @param   \Magento\Sales\Model\Quote\Address $address
+     * @param   \Magento\Quote\Model\Quote\Address $address
      * @return $this
      */
-    protected function _setAddress(\Magento\Sales\Model\Quote\Address $address)
+    protected function _setAddress(\Magento\Quote\Model\Quote\Address $address)
     {
         $this->_address = $address;
         return $this;
@@ -119,7 +120,7 @@ abstract class AbstractTotal
     /**
      * Get quote address object
      *
-     * @return  \Magento\Sales\Model\Quote\Address
+     * @return  \Magento\Quote\Model\Quote\Address
      * @throws   \Magento\Framework\Model\Exception if address not declared
      */
     protected function _getAddress()
@@ -190,10 +191,10 @@ abstract class AbstractTotal
     /**
      * Get all items
      *
-     * @param \Magento\Sales\Model\Quote\Address $address
+     * @param \Magento\Quote\Model\Quote\Address $address
      * @return array
      */
-    protected function _getAddressItems(\Magento\Sales\Model\Quote\Address $address)
+    protected function _getAddressItems(\Magento\Quote\Model\Quote\Address $address)
     {
         return $address->getAllItems();
     }
@@ -201,10 +202,10 @@ abstract class AbstractTotal
     /**
      * Getter for row default total
      *
-     * @param \Magento\Sales\Model\Quote\Item\AbstractItem $item
+     * @param \Magento\Quote\Model\Quote\Item\AbstractItem $item
      * @return float|int
      */
-    public function getItemRowTotal(\Magento\Sales\Model\Quote\Item\AbstractItem $item)
+    public function getItemRowTotal(\Magento\Quote\Model\Quote\Item\AbstractItem $item)
     {
         if (!$this->_itemRowTotalKey) {
             return 0;
@@ -215,10 +216,10 @@ abstract class AbstractTotal
     /**
      * Getter for row default base total
      *
-     * @param \Magento\Sales\Model\Quote\Item\AbstractItem $item
+     * @param \Magento\Quote\Model\Quote\Item\AbstractItem $item
      * @return float|int
      */
-    public function getItemBaseRowTotal(\Magento\Sales\Model\Quote\Item\AbstractItem $item)
+    public function getItemBaseRowTotal(\Magento\Quote\Model\Quote\Item\AbstractItem $item)
     {
         if (!$this->_itemRowTotalKey) {
             return 0;
@@ -229,10 +230,11 @@ abstract class AbstractTotal
     /**
      * Whether the item row total may be compounded with others
      *
-     * @param \Magento\Sales\Model\Quote\Item\AbstractItem $item
+     * @param \Magento\Quote\Model\Quote\Item\AbstractItem $item
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
-    public function getIsItemRowTotalCompoundable(\Magento\Sales\Model\Quote\Item\AbstractItem $item)
+    public function getIsItemRowTotalCompoundable(\Magento\Quote\Model\Quote\Item\AbstractItem $item)
     {
         if ($item->getData("skip_compound_{$this->_itemRowTotalKey}")) {
             return false;
@@ -247,6 +249,7 @@ abstract class AbstractTotal
      * @param   array $config
      * @param   store $store
      * @return  array
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function processConfigArray($config, $store)
     {
diff --git a/app/code/Magento/Sales/Model/Quote/Address/Total/Collector.php b/app/code/Magento/Quote/Model/Quote/Address/Total/Collector.php
similarity index 86%
rename from app/code/Magento/Sales/Model/Quote/Address/Total/Collector.php
rename to app/code/Magento/Quote/Model/Quote/Address/Total/Collector.php
index c1e233d1c95a6532a80fb57eaa075908a48a0cbe..bc19616dd902fc7882111f38db335d6daddb5377 100644
--- a/app/code/Magento/Sales/Model/Quote/Address/Total/Collector.php
+++ b/app/code/Magento/Quote/Model/Quote/Address/Total/Collector.php
@@ -3,7 +3,10 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Quote\Address\Total;
+
+// @codingStandardsIgnoreFile
+
+namespace Magento\Quote\Model\Quote\Address\Total;
 
 /**
  * Address Total Collector model
@@ -56,7 +59,7 @@ class Collector extends \Magento\Sales\Model\Config\Ordered
     protected $_scopeConfig;
 
     /**
-     * @var \Magento\Sales\Model\Quote\Address\TotalFactory
+     * @var \Magento\Quote\Model\Quote\Address\TotalFactory
      */
     protected $_totalFactory;
 
@@ -66,7 +69,7 @@ class Collector extends \Magento\Sales\Model\Config\Ordered
      * @param \Magento\Sales\Model\Config $salesConfig
      * @param \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig
      * @param \Magento\Store\Model\StoreManagerInterface $storeManager
-     * @param \Magento\Sales\Model\Quote\Address\TotalFactory $totalFactory
+     * @param \Magento\Quote\Model\Quote\Address\TotalFactory $totalFactory
      * @param mixed $sourceData
      * @param mixed $store
      */
@@ -76,7 +79,7 @@ class Collector extends \Magento\Sales\Model\Config\Ordered
         \Magento\Sales\Model\Config $salesConfig,
         \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig,
         \Magento\Store\Model\StoreManagerInterface $storeManager,
-        \Magento\Sales\Model\Quote\Address\TotalFactory $totalFactory,
+        \Magento\Quote\Model\Quote\Address\TotalFactory $totalFactory,
         $sourceData = null,
         $store = null
     ) {
@@ -113,16 +116,16 @@ class Collector extends \Magento\Sales\Model\Config\Ordered
      * @param string $class
      * @param string $totalCode
      * @param array $totalConfig
-     * @return \Magento\Sales\Model\Quote\Address\Total\AbstractTotal
+     * @return \Magento\Quote\Model\Quote\Address\Total\AbstractTotal
      * @throws \Magento\Framework\Model\Exception
      */
     protected function _initModelInstance($class, $totalCode, $totalConfig)
     {
         $model = $this->_totalFactory->create($class);
-        if (!$model instanceof \Magento\Sales\Model\Quote\Address\Total\AbstractTotal) {
+        if (!$model instanceof \Magento\Quote\Model\Quote\Address\Total\AbstractTotal) {
             throw new \Magento\Framework\Model\Exception(
                 __(
-                    'The address total model should be extended from \Magento\Sales\Model\Quote\Address\Total\AbstractTotal.'
+                    'The address total model should be extended from \Magento\Quote\Model\Quote\Address\Total\AbstractTotal.'
                 )
             );
         }
@@ -138,10 +141,15 @@ class Collector extends \Magento\Sales\Model\Config\Ordered
      * Initialize retrievers array
      *
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedPrivateMethod)
      */
     private function _initRetrievers()
     {
-        $sorts = $this->_scopeConfig->getValue(self::XML_PATH_SALES_TOTALS_SORT, \Magento\Store\Model\ScopeInterface::SCOPE_STORE, $this->_store);
+        $sorts = $this->_scopeConfig->getValue(
+            self::XML_PATH_SALES_TOTALS_SORT,
+            \Magento\Store\Model\ScopeInterface::SCOPE_STORE,
+            $this->_store
+        );
         foreach ($sorts as $code => $sortOrder) {
             if (isset($this->_models[$code])) {
                 // Reserve enough space for collisions
diff --git a/app/code/Magento/Sales/Model/Quote/Address/Total/Custbalance.php b/app/code/Magento/Quote/Model/Quote/Address/Total/Custbalance.php
similarity index 67%
rename from app/code/Magento/Sales/Model/Quote/Address/Total/Custbalance.php
rename to app/code/Magento/Quote/Model/Quote/Address/Total/Custbalance.php
index 4210b0e57222fd9ece16679b902dc9eb7082ff4a..b1d936f3d9e0161c8a2eef479be0743dbdd69b05 100644
--- a/app/code/Magento/Sales/Model/Quote/Address/Total/Custbalance.php
+++ b/app/code/Magento/Quote/Model/Quote/Address/Total/Custbalance.php
@@ -3,15 +3,15 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Quote\Address\Total;
+namespace Magento\Quote\Model\Quote\Address\Total;
 
-class Custbalance extends \Magento\Sales\Model\Quote\Address\Total\AbstractTotal
+class Custbalance extends \Magento\Quote\Model\Quote\Address\Total\AbstractTotal
 {
     /**
-     * @param \Magento\Sales\Model\Quote\Address $address
+     * @param \Magento\Quote\Model\Quote\Address $address
      * @return $this
      */
-    public function collect(\Magento\Sales\Model\Quote\Address $address)
+    public function collect(\Magento\Quote\Model\Quote\Address $address)
     {
         $address->setCustbalanceAmount(0);
         $address->setBaseCustbalanceAmount(0);
diff --git a/app/code/Magento/Sales/Model/Quote/Address/Total/Discount.php b/app/code/Magento/Quote/Model/Quote/Address/Total/Discount.php
similarity index 93%
rename from app/code/Magento/Sales/Model/Quote/Address/Total/Discount.php
rename to app/code/Magento/Quote/Model/Quote/Address/Total/Discount.php
index cbc65fbf7d318ea7624c9e1770cc52ced62d1686..aa50ef3fbe82259882832ba86d04269c49ebdd72 100644
--- a/app/code/Magento/Sales/Model/Quote/Address/Total/Discount.php
+++ b/app/code/Magento/Quote/Model/Quote/Address/Total/Discount.php
@@ -3,9 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Quote\Address\Total;
+namespace Magento\Quote\Model\Quote\Address\Total;
 
-class Discount extends \Magento\Sales\Model\Quote\Address\Total\AbstractTotal
+class Discount extends \Magento\Quote\Model\Quote\Address\Total\AbstractTotal
 {
     /**
      * Core event manager proxy
@@ -32,10 +32,11 @@ class Discount extends \Magento\Sales\Model\Quote\Address\Total\AbstractTotal
     }
 
     /**
-     * @param \Magento\Sales\Model\Quote\Address $address
+     * @param \Magento\Quote\Model\Quote\Address $address
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
-    public function collect(\Magento\Sales\Model\Quote\Address $address)
+    public function collect(\Magento\Quote\Model\Quote\Address $address)
     {
         $quote = $address->getQuote();
         $eventArgs = [
@@ -134,10 +135,10 @@ class Discount extends \Magento\Sales\Model\Quote\Address\Total\AbstractTotal
     }
 
     /**
-     * @param \Magento\Sales\Model\Quote\Address $address
+     * @param \Magento\Quote\Model\Quote\Address $address
      * @return $this
      */
-    public function fetch(\Magento\Sales\Model\Quote\Address $address)
+    public function fetch(\Magento\Quote\Model\Quote\Address $address)
     {
         $amount = $address->getDiscountAmount();
         if ($amount != 0) {
diff --git a/app/code/Magento/Sales/Model/Quote/Address/Total/Grand.php b/app/code/Magento/Quote/Model/Quote/Address/Total/Grand.php
similarity index 73%
rename from app/code/Magento/Sales/Model/Quote/Address/Total/Grand.php
rename to app/code/Magento/Quote/Model/Quote/Address/Total/Grand.php
index 4a6159cdc671c520d67d6e3e3c52e4cb1b0b13c8..290032b6fe0c26d335f03f101a43f15302f9b84b 100644
--- a/app/code/Magento/Sales/Model/Quote/Address/Total/Grand.php
+++ b/app/code/Magento/Quote/Model/Quote/Address/Total/Grand.php
@@ -3,17 +3,17 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Quote\Address\Total;
+namespace Magento\Quote\Model\Quote\Address\Total;
 
-class Grand extends \Magento\Sales\Model\Quote\Address\Total\AbstractTotal
+class Grand extends \Magento\Quote\Model\Quote\Address\Total\AbstractTotal
 {
     /**
      * Collect grand total address amount
      *
-     * @param   \Magento\Sales\Model\Quote\Address $address
+     * @param   \Magento\Quote\Model\Quote\Address $address
      * @return  $this
      */
-    public function collect(\Magento\Sales\Model\Quote\Address $address)
+    public function collect(\Magento\Quote\Model\Quote\Address $address)
     {
         $grandTotal = $address->getGrandTotal();
         $baseGrandTotal = $address->getBaseGrandTotal();
@@ -29,10 +29,10 @@ class Grand extends \Magento\Sales\Model\Quote\Address\Total\AbstractTotal
     /**
      * Add grand total information to address
      *
-     * @param   \Magento\Sales\Model\Quote\Address $address
+     * @param   \Magento\Quote\Model\Quote\Address $address
      * @return  $this
      */
-    public function fetch(\Magento\Sales\Model\Quote\Address $address)
+    public function fetch(\Magento\Quote\Model\Quote\Address $address)
     {
         $address->addTotal(
             [
diff --git a/app/code/Magento/Sales/Model/Quote/Address/Total/Shipping.php b/app/code/Magento/Quote/Model/Quote/Address/Total/Shipping.php
similarity index 92%
rename from app/code/Magento/Sales/Model/Quote/Address/Total/Shipping.php
rename to app/code/Magento/Quote/Model/Quote/Address/Total/Shipping.php
index 1225ee1b671fbebe4c540b3a02bbbefef68d17f7..50627185999fdf43dca48fda3b112f9b858c0d59 100644
--- a/app/code/Magento/Sales/Model/Quote/Address/Total/Shipping.php
+++ b/app/code/Magento/Quote/Model/Quote/Address/Total/Shipping.php
@@ -3,11 +3,11 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Quote\Address\Total;
+namespace Magento\Quote\Model\Quote\Address\Total;
 
 use Magento\Framework\Pricing\PriceCurrencyInterface;
 
-class Shipping extends \Magento\Sales\Model\Quote\Address\Total\AbstractTotal
+class Shipping extends \Magento\Quote\Model\Quote\Address\Total\AbstractTotal
 {
     /**
      * @var PriceCurrencyInterface
@@ -27,10 +27,13 @@ class Shipping extends \Magento\Sales\Model\Quote\Address\Total\AbstractTotal
     /**
      * Collect totals information about shipping
      *
-     * @param \Magento\Sales\Model\Quote\Address $address
+     * @param \Magento\Quote\Model\Quote\Address $address
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
-    public function collect(\Magento\Sales\Model\Quote\Address $address)
+    public function collect(\Magento\Quote\Model\Quote\Address $address)
     {
         parent::collect($address);
 
@@ -160,10 +163,10 @@ class Shipping extends \Magento\Sales\Model\Quote\Address\Total\AbstractTotal
     /**
      * Add shipping totals information to address object
      *
-     * @param \Magento\Sales\Model\Quote\Address $address
+     * @param \Magento\Quote\Model\Quote\Address $address
      * @return $this
      */
-    public function fetch(\Magento\Sales\Model\Quote\Address $address)
+    public function fetch(\Magento\Quote\Model\Quote\Address $address)
     {
         $amount = $address->getShippingAmount();
         $shippingDescription = $address->getShippingDescription();
diff --git a/app/code/Magento/Sales/Model/Quote/Address/Total/Subtotal.php b/app/code/Magento/Quote/Model/Quote/Address/Total/Subtotal.php
similarity index 86%
rename from app/code/Magento/Sales/Model/Quote/Address/Total/Subtotal.php
rename to app/code/Magento/Quote/Model/Quote/Address/Total/Subtotal.php
index 10ba3902a8df3fcc7d39aae4378343c33a15d02a..50cd9fc25275c009f9dd205e110ee1e4745a5383 100644
--- a/app/code/Magento/Sales/Model/Quote/Address/Total/Subtotal.php
+++ b/app/code/Magento/Quote/Model/Quote/Address/Total/Subtotal.php
@@ -3,27 +3,27 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Quote\Address\Total;
+namespace Magento\Quote\Model\Quote\Address\Total;
 
-use Magento\Sales\Model\Quote\Address;
-use Magento\Sales\Model\Quote\Address\Item as AddressItem;
-use Magento\Sales\Model\Quote\Item;
+use Magento\Quote\Model\Quote\Address;
+use Magento\Quote\Model\Quote\Address\Item as AddressItem;
+use Magento\Quote\Model\Quote\Item;
 
-class Subtotal extends \Magento\Sales\Model\Quote\Address\Total\AbstractTotal
+class Subtotal extends \Magento\Quote\Model\Quote\Address\Total\AbstractTotal
 {
     /**
      * Sales data
      *
-     * @var \Magento\Sales\Helper\Data
+     * @var \Magento\Quote\Model\QuoteValidator
      */
-    protected $_salesData = null;
+    protected $quoteValidator = null;
 
     /**
-     * @param \Magento\Sales\Helper\Data $salesData
+     * @param \Magento\Quote\Model\QuoteValidator $quoteValidator
      */
-    public function __construct(\Magento\Sales\Helper\Data $salesData)
+    public function __construct(\Magento\Quote\Model\QuoteValidator $quoteValidator)
     {
-        $this->_salesData = $salesData;
+        $this->quoteValidator = $quoteValidator;
     }
 
     /**
@@ -63,8 +63,8 @@ class Subtotal extends \Magento\Sales\Model\Quote\Address\Total\AbstractTotal
         /**
          * Initialize grand totals
          */
-        $this->_salesData->checkQuoteAmount($address->getQuote(), $address->getSubtotal());
-        $this->_salesData->checkQuoteAmount($address->getQuote(), $address->getBaseSubtotal());
+        $this->quoteValidator->validateQuoteAmount($address->getQuote(), $address->getSubtotal());
+        $this->quoteValidator->validateQuoteAmount($address->getQuote(), $address->getBaseSubtotal());
         return $this;
     }
 
diff --git a/app/code/Magento/Sales/Model/Quote/Address/Total/Tax.php b/app/code/Magento/Quote/Model/Quote/Address/Total/Tax.php
similarity index 94%
rename from app/code/Magento/Sales/Model/Quote/Address/Total/Tax.php
rename to app/code/Magento/Quote/Model/Quote/Address/Total/Tax.php
index f6212d80b0e107fc779f70013beb1fdf89672c3d..d2ed16c319f8f96ae39edcf8ff44ac7216e5e800 100644
--- a/app/code/Magento/Sales/Model/Quote/Address/Total/Tax.php
+++ b/app/code/Magento/Quote/Model/Quote/Address/Total/Tax.php
@@ -3,11 +3,11 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Quote\Address\Total;
+namespace Magento\Quote\Model\Quote\Address\Total;
 
 use Magento\Framework\Pricing\PriceCurrencyInterface;
 
-class Tax extends \Magento\Sales\Model\Quote\Address\Total\AbstractTotal
+class Tax extends \Magento\Quote\Model\Quote\Address\Total\AbstractTotal
 {
     /**
      * @var array
@@ -58,10 +58,13 @@ class Tax extends \Magento\Sales\Model\Quote\Address\Total\AbstractTotal
     }
 
     /**
-     * @param \Magento\Sales\Model\Quote\Address $address
+     * @param \Magento\Quote\Model\Quote\Address $address
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
-    public function collect(\Magento\Sales\Model\Quote\Address $address)
+    public function collect(\Magento\Quote\Model\Quote\Address $address)
     {
         $store = $address->getQuote()->getStore();
 
@@ -219,7 +222,7 @@ class Tax extends \Magento\Sales\Model\Quote\Address\Total\AbstractTotal
     }
 
     /**
-     * @param \Magento\Sales\Model\Quote\Address $address
+     * @param \Magento\Quote\Model\Quote\Address $address
      * @param array $applied
      * @param int $amount
      * @param int $baseAmount
@@ -227,7 +230,7 @@ class Tax extends \Magento\Sales\Model\Quote\Address\Total\AbstractTotal
      * @return void
      */
     protected function _saveAppliedTaxes(
-        \Magento\Sales\Model\Quote\Address $address,
+        \Magento\Quote\Model\Quote\Address $address,
         $applied,
         $amount,
         $baseAmount,
@@ -270,10 +273,10 @@ class Tax extends \Magento\Sales\Model\Quote\Address\Total\AbstractTotal
     }
 
     /**
-     * @param \Magento\Sales\Model\Quote\Address $address
+     * @param \Magento\Quote\Model\Quote\Address $address
      * @return $this
      */
-    public function fetch(\Magento\Sales\Model\Quote\Address $address)
+    public function fetch(\Magento\Quote\Model\Quote\Address $address)
     {
         $applied = $address->getAppliedTaxes();
         $store = $address->getQuote()->getStore();
diff --git a/app/code/Magento/Sales/Model/Quote/Address/TotalFactory.php b/app/code/Magento/Quote/Model/Quote/Address/TotalFactory.php
similarity index 83%
rename from app/code/Magento/Sales/Model/Quote/Address/TotalFactory.php
rename to app/code/Magento/Quote/Model/Quote/Address/TotalFactory.php
index c79050fa5e2853b53bedfe2cc255a3876f87f8e7..2a91b6fb940aa08cef5e1ed537303c66dce4529a 100644
--- a/app/code/Magento/Sales/Model/Quote/Address/TotalFactory.php
+++ b/app/code/Magento/Quote/Model/Quote/Address/TotalFactory.php
@@ -5,9 +5,9 @@
  */
 
 /**
- * Factory class for \Magento\Sales\Model\Quote\Address\Total\AbstractTotal
+ * Factory class for \Magento\Quote\Model\Quote\Address\Total\AbstractTotal
  */
-namespace Magento\Sales\Model\Quote\Address;
+namespace Magento\Quote\Model\Quote\Address;
 
 class TotalFactory
 {
@@ -33,7 +33,7 @@ class TotalFactory
      *
      * @param string $instanceName
      * @param array $data
-     * @return \Magento\Sales\Model\Quote\Address\Total\AbstractTotal
+     * @return \Magento\Quote\Model\Quote\Address\Total\AbstractTotal
      */
     public function create($instanceName, array $data = [])
     {
diff --git a/app/code/Magento/Sales/Model/Quote/Address/Validator.php b/app/code/Magento/Quote/Model/Quote/Address/Validator.php
similarity index 93%
rename from app/code/Magento/Sales/Model/Quote/Address/Validator.php
rename to app/code/Magento/Quote/Model/Quote/Address/Validator.php
index 8c19482193f97bce26bc5dd3d632b2be8522a27a..9ed695e7d1352f6beb82ddd69bce2b1ad9efecdb 100644
--- a/app/code/Magento/Sales/Model/Quote/Address/Validator.php
+++ b/app/code/Magento/Quote/Model/Quote/Address/Validator.php
@@ -4,7 +4,7 @@
  * See COPYING.txt for license details.
  */
 
-namespace Magento\Sales\Model\Quote\Address;
+namespace Magento\Quote\Model\Quote\Address;
 
 use Zend_Validate_Exception;
 
@@ -31,7 +31,7 @@ class Validator extends \Magento\Framework\Validator\AbstractValidator
      * getMessages() will return an array of messages that explain why the
      * validation failed.
      *
-     * @param  \Magento\Sales\Model\Quote\Address $value
+     * @param  \Magento\Quote\Model\Quote\Address $value
      * @return boolean
      * @throws Zend_Validate_Exception If validation of $value is impossible
      */
diff --git a/app/code/Magento/Sales/Model/Quote/Config.php b/app/code/Magento/Quote/Model/Quote/Config.php
similarity index 82%
rename from app/code/Magento/Sales/Model/Quote/Config.php
rename to app/code/Magento/Quote/Model/Quote/Config.php
index 87c690195662a67903d6377c9d5cedbfff51c515..b2f48444d773b1bc2f071cfb8292980d9b6f23ff 100644
--- a/app/code/Magento/Sales/Model/Quote/Config.php
+++ b/app/code/Magento/Quote/Model/Quote/Config.php
@@ -3,7 +3,7 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Quote;
+namespace Magento\Quote\Model\Quote;
 
 class Config
 {
@@ -25,6 +25,6 @@ class Config
      */
     public function getProductAttributes()
     {
-        return $this->_attributeConfig->getAttributeNames('sales_quote_item');
+        return $this->_attributeConfig->getAttributeNames('quote_item');
     }
 }
diff --git a/app/code/Magento/Sales/Model/Quote/Item.php b/app/code/Magento/Quote/Model/Quote/Item.php
similarity index 81%
rename from app/code/Magento/Sales/Model/Quote/Item.php
rename to app/code/Magento/Quote/Model/Quote/Item.php
index 4711b2b207844ed1247bfaba12559991862eb532..5cc00a9e3c50ed2bc4ba9fc85893fcbb32f74b06 100644
--- a/app/code/Magento/Sales/Model/Quote/Item.php
+++ b/app/code/Magento/Quote/Model/Quote/Item.php
@@ -3,102 +3,106 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Quote;
+
+// @codingStandardsIgnoreFile
+
+namespace Magento\Quote\Model\Quote;
 
 /**
  * Sales Quote Item Model
  *
- * @method \Magento\Sales\Model\Resource\Quote\Item _getResource()
- * @method \Magento\Sales\Model\Resource\Quote\Item getResource()
+ * @method \Magento\Quote\Model\Resource\Quote\Item _getResource()
+ * @method \Magento\Quote\Model\Resource\Quote\Item getResource()
  * @method int getQuoteId()
- * @method \Magento\Sales\Model\Quote\Item setQuoteId(int $value)
+ * @method \Magento\Quote\Model\Quote\Item setQuoteId(int $value)
  * @method string getCreatedAt()
- * @method \Magento\Sales\Model\Quote\Item setCreatedAt(string $value)
+ * @method \Magento\Quote\Model\Quote\Item setCreatedAt(string $value)
  * @method string getUpdatedAt()
- * @method \Magento\Sales\Model\Quote\Item setUpdatedAt(string $value)
+ * @method \Magento\Quote\Model\Quote\Item setUpdatedAt(string $value)
  * @method int getProductId()
- * @method \Magento\Sales\Model\Quote\Item setProductId(int $value)
+ * @method \Magento\Quote\Model\Quote\Item setProductId(int $value)
  * @method int getStoreId()
- * @method \Magento\Sales\Model\Quote\Item setStoreId(int $value)
+ * @method \Magento\Quote\Model\Quote\Item setStoreId(int $value)
  * @method int getParentItemId()
- * @method \Magento\Sales\Model\Quote\Item setParentItemId(int $value)
+ * @method \Magento\Quote\Model\Quote\Item setParentItemId(int $value)
  * @method int getIsVirtual()
- * @method \Magento\Sales\Model\Quote\Item setIsVirtual(int $value)
+ * @method \Magento\Quote\Model\Quote\Item setIsVirtual(int $value)
  * @method string getSku()
- * @method \Magento\Sales\Model\Quote\Item setSku(string $value)
+ * @method \Magento\Quote\Model\Quote\Item setSku(string $value)
  * @method string getName()
- * @method \Magento\Sales\Model\Quote\Item setName(string $value)
+ * @method \Magento\Quote\Model\Quote\Item setName(string $value)
  * @method string getDescription()
- * @method \Magento\Sales\Model\Quote\Item setDescription(string $value)
+ * @method \Magento\Quote\Model\Quote\Item setDescription(string $value)
  * @method string getAdditionalData()
- * @method \Magento\Sales\Model\Quote\Item setAdditionalData(string $value)
+ * @method \Magento\Quote\Model\Quote\Item setAdditionalData(string $value)
  * @method int getFreeShipping()
- * @method \Magento\Sales\Model\Quote\Item setFreeShipping(int $value)
+ * @method \Magento\Quote\Model\Quote\Item setFreeShipping(int $value)
  * @method int getIsQtyDecimal()
- * @method \Magento\Sales\Model\Quote\Item setIsQtyDecimal(int $value)
+ * @method \Magento\Quote\Model\Quote\Item setIsQtyDecimal(int $value)
  * @method int getNoDiscount()
- * @method \Magento\Sales\Model\Quote\Item setNoDiscount(int $value)
+ * @method \Magento\Quote\Model\Quote\Item setNoDiscount(int $value)
  * @method float getWeight()
- * @method \Magento\Sales\Model\Quote\Item setWeight(float $value)
+ * @method \Magento\Quote\Model\Quote\Item setWeight(float $value)
  * @method float getBasePrice()
- * @method \Magento\Sales\Model\Quote\Item setBasePrice(float $value)
+ * @method \Magento\Quote\Model\Quote\Item setBasePrice(float $value)
  * @method float getCustomPrice()
  * @method float getTaxPercent()
- * @method \Magento\Sales\Model\Quote\Item setTaxPercent(float $value)
- * @method \Magento\Sales\Model\Quote\Item setTaxAmount(float $value)
- * @method \Magento\Sales\Model\Quote\Item setBaseTaxAmount(float $value)
- * @method \Magento\Sales\Model\Quote\Item setRowTotal(float $value)
- * @method \Magento\Sales\Model\Quote\Item setBaseRowTotal(float $value)
+ * @method \Magento\Quote\Model\Quote\Item setTaxPercent(float $value)
+ * @method \Magento\Quote\Model\Quote\Item setTaxAmount(float $value)
+ * @method \Magento\Quote\Model\Quote\Item setBaseTaxAmount(float $value)
+ * @method \Magento\Quote\Model\Quote\Item setRowTotal(float $value)
+ * @method \Magento\Quote\Model\Quote\Item setBaseRowTotal(float $value)
  * @method float getRowTotalWithDiscount()
- * @method \Magento\Sales\Model\Quote\Item setRowTotalWithDiscount(float $value)
+ * @method \Magento\Quote\Model\Quote\Item setRowTotalWithDiscount(float $value)
  * @method float getRowWeight()
- * @method \Magento\Sales\Model\Quote\Item setRowWeight(float $value)
- * @method \Magento\Sales\Model\Quote\Item setProductType(string $value)
+ * @method \Magento\Quote\Model\Quote\Item setRowWeight(float $value)
+ * @method \Magento\Quote\Model\Quote\Item setProductType(string $value)
  * @method float getBaseTaxBeforeDiscount()
- * @method \Magento\Sales\Model\Quote\Item setBaseTaxBeforeDiscount(float $value)
+ * @method \Magento\Quote\Model\Quote\Item setBaseTaxBeforeDiscount(float $value)
  * @method float getTaxBeforeDiscount()
- * @method \Magento\Sales\Model\Quote\Item setTaxBeforeDiscount(float $value)
+ * @method \Magento\Quote\Model\Quote\Item setTaxBeforeDiscount(float $value)
  * @method float getOriginalCustomPrice()
- * @method \Magento\Sales\Model\Quote\Item setOriginalCustomPrice(float $value)
+ * @method \Magento\Quote\Model\Quote\Item setOriginalCustomPrice(float $value)
  * @method string getRedirectUrl()
- * @method \Magento\Sales\Model\Quote\Item setRedirectUrl(string $value)
+ * @method \Magento\Quote\Model\Quote\Item setRedirectUrl(string $value)
  * @method float getBaseCost()
- * @method \Magento\Sales\Model\Quote\Item setBaseCost(float $value)
- * @method \Magento\Sales\Model\Quote\Item setPriceInclTax(float $value)
+ * @method \Magento\Quote\Model\Quote\Item setBaseCost(float $value)
+ * @method \Magento\Quote\Model\Quote\Item setPriceInclTax(float $value)
  * @method float getBasePriceInclTax()
- * @method \Magento\Sales\Model\Quote\Item setBasePriceInclTax(float $value)
- * @method \Magento\Sales\Model\Quote\Item setRowTotalInclTax(float $value)
+ * @method \Magento\Quote\Model\Quote\Item setBasePriceInclTax(float $value)
+ * @method \Magento\Quote\Model\Quote\Item setRowTotalInclTax(float $value)
  * @method float getBaseRowTotalInclTax()
- * @method \Magento\Sales\Model\Quote\Item setBaseRowTotalInclTax(float $value)
+ * @method \Magento\Quote\Model\Quote\Item setBaseRowTotalInclTax(float $value)
  * @method int getGiftMessageId()
- * @method \Magento\Sales\Model\Quote\Item setGiftMessageId(int $value)
+ * @method \Magento\Quote\Model\Quote\Item setGiftMessageId(int $value)
  * @method string getWeeeTaxApplied()
- * @method \Magento\Sales\Model\Quote\Item setWeeeTaxApplied(string $value)
+ * @method \Magento\Quote\Model\Quote\Item setWeeeTaxApplied(string $value)
  * @method float getWeeeTaxAppliedAmount()
- * @method \Magento\Sales\Model\Quote\Item setWeeeTaxAppliedAmount(float $value)
+ * @method \Magento\Quote\Model\Quote\Item setWeeeTaxAppliedAmount(float $value)
  * @method float getWeeeTaxAppliedRowAmount()
- * @method \Magento\Sales\Model\Quote\Item setWeeeTaxAppliedRowAmount(float $value)
+ * @method \Magento\Quote\Model\Quote\Item setWeeeTaxAppliedRowAmount(float $value)
  * @method float getBaseWeeeTaxAppliedAmount()
- * @method \Magento\Sales\Model\Quote\Item setBaseWeeeTaxAppliedAmount(float $value)
+ * @method \Magento\Quote\Model\Quote\Item setBaseWeeeTaxAppliedAmount(float $value)
  * @method float getBaseWeeeTaxAppliedRowAmnt()
- * @method \Magento\Sales\Model\Quote\Item setBaseWeeeTaxAppliedRowAmnt(float $value)
+ * @method \Magento\Quote\Model\Quote\Item setBaseWeeeTaxAppliedRowAmnt(float $value)
  * @method float getWeeeTaxDisposition()
- * @method \Magento\Sales\Model\Quote\Item setWeeeTaxDisposition(float $value)
+ * @method \Magento\Quote\Model\Quote\Item setWeeeTaxDisposition(float $value)
  * @method float getWeeeTaxRowDisposition()
- * @method \Magento\Sales\Model\Quote\Item setWeeeTaxRowDisposition(float $value)
+ * @method \Magento\Quote\Model\Quote\Item setWeeeTaxRowDisposition(float $value)
  * @method float getBaseWeeeTaxDisposition()
- * @method \Magento\Sales\Model\Quote\Item setBaseWeeeTaxDisposition(float $value)
+ * @method \Magento\Quote\Model\Quote\Item setBaseWeeeTaxDisposition(float $value)
  * @method float getBaseWeeeTaxRowDisposition()
- * @method \Magento\Sales\Model\Quote\Item setBaseWeeeTaxRowDisposition(float $value)
+ * @method \Magento\Quote\Model\Quote\Item setBaseWeeeTaxRowDisposition(float $value)
  * @method float getHiddenTaxAmount()
- * @method \Magento\Sales\Model\Quote\Item setHiddenTaxAmount(float $value)
+ * @method \Magento\Quote\Model\Quote\Item setHiddenTaxAmount(float $value)
  * @method float getBaseHiddenTaxAmount()
- * @method \Magento\Sales\Model\Quote\Item setBaseHiddenTaxAmount(float $value)
+ * @method \Magento\Quote\Model\Quote\Item setBaseHiddenTaxAmount(float $value)
  * @method null|bool getHasConfigurationUnavailableError()
- * @method \Magento\Sales\Model\Quote\Item setHasConfigurationUnavailableError(bool $value)
- * @method \Magento\Sales\Model\Quote\Item unsHasConfigurationUnavailableError()
+ * @method \Magento\Quote\Model\Quote\Item setHasConfigurationUnavailableError(bool $value)
+ * @method \Magento\Quote\Model\Quote\Item unsHasConfigurationUnavailableError()
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
-class Item extends \Magento\Sales\Model\Quote\Item\AbstractItem
+class Item extends \Magento\Quote\Model\Quote\Item\AbstractItem
 {
     /**
      * Prefix of model events names
@@ -119,7 +123,7 @@ class Item extends \Magento\Sales\Model\Quote\Item\AbstractItem
     /**
      * Quote model object
      *
-     * @var \Magento\Sales\Model\Quote
+     * @var \Magento\Quote\Model\Quote
      */
     protected $_quote;
 
@@ -163,14 +167,14 @@ class Item extends \Magento\Sales\Model\Quote\Item\AbstractItem
     protected $_localeFormat;
 
     /**
-     * @var \Magento\Sales\Model\Quote\Item\OptionFactory
+     * @var \Magento\Quote\Model\Quote\Item\OptionFactory
      */
     protected $_itemOptionFactory;
 
     /**
-     * @var \Magento\Sales\Helper\Quote\Item\Compare
+     * @var \Magento\Quote\Model\Quote\Item\Compare
      */
-    protected $_compareHelper;
+    protected $quoteItemCompare;
 
     /**
      * @var \Magento\CatalogInventory\Api\StockRegistryInterface
@@ -185,7 +189,7 @@ class Item extends \Magento\Sales\Model\Quote\Item\AbstractItem
      * @param \Magento\Sales\Model\Status\ListFactory $statusListFactory
      * @param \Magento\Framework\Locale\FormatInterface $localeFormat
      * @param Item\OptionFactory $itemOptionFactory
-     * @param \Magento\Sales\Helper\Quote\Item\Compare $compareHelper
+     * @param \Magento\Quote\Model\Quote\Item\Compare $quoteItemCompare
      * @param \Magento\CatalogInventory\Api\StockRegistryInterface $stockRegistry
      * @param \Magento\Framework\Model\Resource\AbstractResource $resource
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
@@ -200,8 +204,8 @@ class Item extends \Magento\Sales\Model\Quote\Item\AbstractItem
         \Magento\Framework\Pricing\PriceCurrencyInterface $priceCurrency,
         \Magento\Sales\Model\Status\ListFactory $statusListFactory,
         \Magento\Framework\Locale\FormatInterface $localeFormat,
-        \Magento\Sales\Model\Quote\Item\OptionFactory $itemOptionFactory,
-        \Magento\Sales\Helper\Quote\Item\Compare $compareHelper,
+        \Magento\Quote\Model\Quote\Item\OptionFactory $itemOptionFactory,
+        \Magento\Quote\Model\Quote\Item\Compare $quoteItemCompare,
         \Magento\CatalogInventory\Api\StockRegistryInterface $stockRegistry,
         \Magento\Framework\Model\Resource\AbstractResource $resource = null,
         \Magento\Framework\Data\Collection\Db $resourceCollection = null,
@@ -210,7 +214,7 @@ class Item extends \Magento\Sales\Model\Quote\Item\AbstractItem
         $this->_errorInfos = $statusListFactory->create();
         $this->_localeFormat = $localeFormat;
         $this->_itemOptionFactory = $itemOptionFactory;
-        $this->_compareHelper = $compareHelper;
+        $this->quoteItemCompare = $quoteItemCompare;
         $this->stockRegistry = $stockRegistry;
         parent::__construct(
             $context,
@@ -230,7 +234,7 @@ class Item extends \Magento\Sales\Model\Quote\Item\AbstractItem
      */
     protected function _construct()
     {
-        $this->_init('Magento\Sales\Model\Resource\Quote\Item');
+        $this->_init('Magento\Quote\Model\Resource\Quote\Item');
     }
 
     /**
@@ -251,7 +255,7 @@ class Item extends \Magento\Sales\Model\Quote\Item\AbstractItem
     /**
      * Retrieve address model
      *
-     * @return \Magento\Sales\Model\Quote\Address
+     * @return \Magento\Quote\Model\Quote\Address
      */
     public function getAddress()
     {
@@ -267,10 +271,10 @@ class Item extends \Magento\Sales\Model\Quote\Item\AbstractItem
     /**
      * Declare quote model object
      *
-     * @param   \Magento\Sales\Model\Quote $quote
+     * @param   \Magento\Quote\Model\Quote $quote
      * @return $this
      */
-    public function setQuote(\Magento\Sales\Model\Quote $quote)
+    public function setQuote(\Magento\Quote\Model\Quote $quote)
     {
         $this->_quote = $quote;
         $this->setQuoteId($quote->getId());
@@ -281,7 +285,7 @@ class Item extends \Magento\Sales\Model\Quote\Item\AbstractItem
     /**
      * Retrieve quote model object
      *
-     * @return \Magento\Sales\Model\Quote
+     * @return \Magento\Quote\Model\Quote
      */
     public function getQuote()
     {
@@ -364,7 +368,7 @@ class Item extends \Magento\Sales\Model\Quote\Item\AbstractItem
             $productIds = [];
             $qtyOptions = [];
             foreach ($this->getOptions() as $option) {
-                /** @var $option \Magento\Sales\Model\Quote\Item\Option */
+                /** @var $option \Magento\Quote\Model\Quote\Item\Option */
                 if (is_object($option->getProduct())
                     && $option->getProduct()->getId() != $this->getProduct()->getId()
                 ) {
@@ -491,12 +495,12 @@ class Item extends \Magento\Sales\Model\Quote\Item\AbstractItem
     /**
      * Compare items
      *
-     * @param   \Magento\Sales\Model\Quote\Item $item
+     * @param   \Magento\Quote\Model\Quote\Item $item
      * @return  bool
      */
     public function compare($item)
     {
-        return $this->_compareHelper->compare($this, $item);
+        return $this->quoteItemCompare->compare($this, $item);
     }
 
     /**
@@ -562,7 +566,7 @@ class Item extends \Magento\Sales\Model\Quote\Item\AbstractItem
     /**
      * Get all item options
      *
-     * @return \Magento\Sales\Model\Quote\Item\Option[]
+     * @return \Magento\Quote\Model\Quote\Item\Option[]
      */
     public function getOptions()
     {
@@ -582,7 +586,7 @@ class Item extends \Magento\Sales\Model\Quote\Item\AbstractItem
     /**
      * Add option to item
      *
-     * @param \Magento\Sales\Model\Quote\Item\Option|\Magento\Framework\Object $option
+     * @param \Magento\Quote\Model\Quote\Item\Option|\Magento\Framework\Object $option
      * @return $this
      * @throws \Magento\Framework\Model\Exception
      */
@@ -590,7 +594,10 @@ class Item extends \Magento\Sales\Model\Quote\Item\AbstractItem
     {
         if (is_array($option)) {
             $option = $this->_itemOptionFactory->create()->setData($option)->setItem($this);
-        } elseif ($option instanceof \Magento\Framework\Object && !$option instanceof \Magento\Sales\Model\Quote\Item\Option) {
+        } elseif (
+            $option instanceof \Magento\Framework\Object &&
+            !$option instanceof \Magento\Quote\Model\Quote\Item\Option
+        ) {
             $option = $this->_itemOptionFactory->create()->setData(
                 $option->getData()
             )->setProduct(
@@ -598,7 +605,7 @@ class Item extends \Magento\Sales\Model\Quote\Item\AbstractItem
             )->setItem(
                 $this
             );
-        } elseif ($option instanceof \Magento\Sales\Model\Quote\Item\Option) {
+        } elseif ($option instanceof \Magento\Quote\Model\Quote\Item\Option) {
             $option->setItem($this);
         } else {
             throw new \Magento\Framework\Model\Exception(__('We found an invalid item option format.'));
@@ -660,7 +667,7 @@ class Item extends \Magento\Sales\Model\Quote\Item\AbstractItem
     /**
      * Register option code
      *
-     * @param \Magento\Sales\Model\Quote\Item\Option $option
+     * @param \Magento\Quote\Model\Quote\Item\Option $option
      * @return $this
      * @throws \Magento\Framework\Model\Exception
      */
@@ -669,7 +676,9 @@ class Item extends \Magento\Sales\Model\Quote\Item\AbstractItem
         if (!isset($this->_optionsByCode[$option->getCode()])) {
             $this->_optionsByCode[$option->getCode()] = $option;
         } else {
-            throw new \Magento\Framework\Model\Exception(__('An item option with code %1 already exists.', $option->getCode()));
+            throw new \Magento\Framework\Model\Exception(
+                __('An item option with code %1 already exists.', $option->getCode())
+            );
         }
         return $this;
     }
@@ -678,7 +687,7 @@ class Item extends \Magento\Sales\Model\Quote\Item\AbstractItem
      * Get item option by code
      *
      * @param   string $code
-     * @return  \Magento\Sales\Model\Quote\Item\Option || null
+     * @return  \Magento\Quote\Model\Quote\Item\Option || null
      */
     public function getOptionByCode($code)
     {
@@ -750,7 +759,7 @@ class Item extends \Magento\Sales\Model\Quote\Item\AbstractItem
     /**
      * Save item options after item saved
      *
-     * @return \Magento\Sales\Model\Quote\Item
+     * @return \Magento\Quote\Model\Quote\Item
      */
     public function afterSave()
     {
@@ -797,7 +806,7 @@ class Item extends \Magento\Sales\Model\Quote\Item\AbstractItem
      * Sets flag, whether this quote item has some error associated with it.
      *
      * @param bool $flag
-     * @return \Magento\Sales\Model\Quote\Item
+     * @return \Magento\Quote\Model\Quote\Item
      */
     protected function _setHasError($flag)
     {
diff --git a/app/code/Magento/Sales/Model/Quote/Item/AbstractItem.php b/app/code/Magento/Quote/Model/Quote/Item/AbstractItem.php
similarity index 94%
rename from app/code/Magento/Sales/Model/Quote/Item/AbstractItem.php
rename to app/code/Magento/Quote/Model/Quote/Item/AbstractItem.php
index 2a2340f2e9b89c9d6a9aaf957631c400ef799a76..e6ba9a34bb09edb87338c38ad5b4d30dd4f26b62 100644
--- a/app/code/Magento/Sales/Model/Quote/Item/AbstractItem.php
+++ b/app/code/Magento/Quote/Model/Quote/Item/AbstractItem.php
@@ -3,9 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Quote\Item;
+namespace Magento\Quote\Model\Quote\Item;
 
-use Magento\Sales\Model\Quote\Item;
+use Magento\Quote\Model\Quote\Item;
 
 /**
  * Quote item abstract model
@@ -18,21 +18,21 @@ use Magento\Sales\Model\Quote\Item;
  *  - original_custom_price - original defined value of custom price without any convertion
  *
  * @method float getDiscountAmount()
- * @method \Magento\Sales\Model\Quote\Item\AbstractItem setDiscountAmount(float $amount)
+ * @method \Magento\Quote\Model\Quote\Item\AbstractItem setDiscountAmount(float $amount)
  * @method float getBaseDiscountAmount()
- * @method \Magento\Sales\Model\Quote\Item\AbstractItem setBaseDiscountAmount(float $amount)
+ * @method \Magento\Quote\Model\Quote\Item\AbstractItem setBaseDiscountAmount(float $amount)
  * @method float getDiscountPercent()
- * @method \Magento\Sales\Model\Quote\Item\AbstractItem setDiscountPercent()
+ * @method \Magento\Quote\Model\Quote\Item\AbstractItem setDiscountPercent()
  * @method float getOriginalDiscountAmount()
- * @method \Magento\Sales\Model\Quote\Item\AbstractItem setOriginalDiscountAmount()
+ * @method \Magento\Quote\Model\Quote\Item\AbstractItem setOriginalDiscountAmount()
  * @method float getBaseOriginalDiscountAmount()
- * @method \Magento\Sales\Model\Quote\Item\AbstractItem setBaseOriginalDiscountAmount()
+ * @method \Magento\Quote\Model\Quote\Item\AbstractItem setBaseOriginalDiscountAmount()
  * @method float getDiscountCalculationPrice()
- * @method \Magento\Sales\Model\Quote\Item\AbstractItem setDiscountCalculationPrice()
+ * @method \Magento\Quote\Model\Quote\Item\AbstractItem setDiscountCalculationPrice()
  * @method float getBaseDiscountCalculationPrice()
- * @method \Magento\Sales\Model\Quote\Item\AbstractItem setBaseDiscountCalculationPrice($price)
+ * @method \Magento\Quote\Model\Quote\Item\AbstractItem setBaseDiscountCalculationPrice($price)
  * @method int[] getAppliedRuleIds()
- * @method \Magento\Sales\Model\Quote\Item\AbstractItem setAppliedRuleIds(array $ruleIds)
+ * @method \Magento\Quote\Model\Quote\Item\AbstractItem setAppliedRuleIds(array $ruleIds)
  * @method float getBaseTaxAmount()
  * @method float getBaseDiscountTaxCompensation()
  * @method float getBaseRowTotal()
@@ -42,6 +42,7 @@ use Magento\Sales\Model\Quote\Item;
  * @method float getDiscountTaxCompensation()
  * @method float getRowTotal()
  * @method float getPriceInclTax()
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 abstract class AbstractItem extends \Magento\Framework\Model\AbstractModel implements
     \Magento\Catalog\Model\Product\Configuration\Item\ItemInterface
@@ -52,7 +53,7 @@ abstract class AbstractItem extends \Magento\Framework\Model\AbstractModel imple
     protected $_parentItem = null;
 
     /**
-     * @var \Magento\Sales\Model\Quote\Item\AbstractItem[]
+     * @var \Magento\Quote\Model\Quote\Item\AbstractItem[]
      */
     protected $_children = [];
 
@@ -104,14 +105,14 @@ abstract class AbstractItem extends \Magento\Framework\Model\AbstractModel imple
     /**
      * Retrieve Quote instance
      *
-     * @return \Magento\Sales\Model\Quote
+     * @return \Magento\Quote\Model\Quote
      */
     abstract public function getQuote();
 
     /**
      * Retrieve address model
      *
-     * @return \Magento\Sales\Model\Quote\Address
+     * @return \Magento\Quote\Model\Quote\Address
      */
     abstract public function getAddress();
 
@@ -196,7 +197,7 @@ abstract class AbstractItem extends \Magento\Framework\Model\AbstractModel imple
     /**
      * Get child items
      *
-     * @return \Magento\Sales\Model\Quote\Item\AbstractItem[]
+     * @return \Magento\Quote\Model\Quote\Item\AbstractItem[]
      */
     public function getChildren()
     {
@@ -206,7 +207,7 @@ abstract class AbstractItem extends \Magento\Framework\Model\AbstractModel imple
     /**
      * Add child item
      *
-     * @param  \Magento\Sales\Model\Quote\Item\AbstractItem $child
+     * @param  \Magento\Quote\Model\Quote\Item\AbstractItem $child
      * @return $this
      */
     public function addChild($child)
@@ -504,7 +505,7 @@ abstract class AbstractItem extends \Magento\Framework\Model\AbstractModel imple
      * Set original price to item (calculation price will be refreshed too)
      *
      * @param   float $price
-     * @return  \Magento\Sales\Model\Quote\Item\AbstractItem
+     * @return  \Magento\Quote\Model\Quote\Item\AbstractItem
      */
     public function setOriginalPrice($price)
     {
@@ -525,7 +526,7 @@ abstract class AbstractItem extends \Magento\Framework\Model\AbstractModel imple
      * Specify custom item price (used in case whe we have apply not product price to item)
      *
      * @param   float $value
-     * @return  \Magento\Sales\Model\Quote\Item\AbstractItem
+     * @return  \Magento\Quote\Model\Quote\Item\AbstractItem
      */
     public function setCustomPrice($value)
     {
@@ -650,7 +651,7 @@ abstract class AbstractItem extends \Magento\Framework\Model\AbstractModel imple
     public function getTotalDiscountAmount()
     {
         $totalDiscountAmount = 0;
-        /* \Magento\Sales\Model\Quote\Item\AbstractItem[] */
+        /* \Magento\Quote\Model\Quote\Item\AbstractItem[] */
         $children = $this->getChildren();
         if (!empty($children) && $this->isChildrenCalculated()) {
             foreach ($children as $child) {
diff --git a/app/code/Magento/Sales/Helper/Quote/Item/Compare.php b/app/code/Magento/Quote/Model/Quote/Item/Compare.php
similarity index 95%
rename from app/code/Magento/Sales/Helper/Quote/Item/Compare.php
rename to app/code/Magento/Quote/Model/Quote/Item/Compare.php
index dea7225736cd0af7f60acd9dd112d3aae3057768..9f357da9ccf3f35032a4f05c2b52cd74233f472c 100644
--- a/app/code/Magento/Sales/Helper/Quote/Item/Compare.php
+++ b/app/code/Magento/Quote/Model/Quote/Item/Compare.php
@@ -3,9 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Helper\Quote\Item;
+namespace Magento\Quote\Model\Quote\Item;
 
-use Magento\Sales\Model\Quote\Item;
+use Magento\Quote\Model\Quote\Item;
 
 /**
  * Class Compare
diff --git a/app/code/Magento/Sales/Model/Quote/Item/Option.php b/app/code/Magento/Quote/Model/Quote/Item/Option.php
similarity index 78%
rename from app/code/Magento/Sales/Model/Quote/Item/Option.php
rename to app/code/Magento/Quote/Model/Quote/Item/Option.php
index f2840b8ee1c8bf491e507f99c2e50181153080f0..4998d257aaa0be5359810af1501e17a03773ced8 100644
--- a/app/code/Magento/Sales/Model/Quote/Item/Option.php
+++ b/app/code/Magento/Quote/Model/Quote/Item/Option.php
@@ -3,26 +3,26 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Quote\Item;
+namespace Magento\Quote\Model\Quote\Item;
 
 /**
  * Item option model
  *
- * @method \Magento\Sales\Model\Resource\Quote\Item\Option _getResource()
- * @method \Magento\Sales\Model\Resource\Quote\Item\Option getResource()
+ * @method \Magento\Quote\Model\Resource\Quote\Item\Option _getResource()
+ * @method \Magento\Quote\Model\Resource\Quote\Item\Option getResource()
  * @method int getItemId()
- * @method \Magento\Sales\Model\Quote\Item\Option setItemId(int $value)
+ * @method \Magento\Quote\Model\Quote\Item\Option setItemId(int $value)
  * @method int getProductId()
- * @method \Magento\Sales\Model\Quote\Item\Option setProductId(int $value)
+ * @method \Magento\Quote\Model\Quote\Item\Option setProductId(int $value)
  * @method string getCode()
- * @method \Magento\Sales\Model\Quote\Item\Option setCode(string $value)
- * @method \Magento\Sales\Model\Quote\Item\Option setValue(string $value)
+ * @method \Magento\Quote\Model\Quote\Item\Option setCode(string $value)
+ * @method \Magento\Quote\Model\Quote\Item\Option setValue(string $value)
  */
 class Option extends \Magento\Framework\Model\AbstractModel implements
     \Magento\Catalog\Model\Product\Configuration\Item\Option\OptionInterface
 {
     /**
-     * @var \Magento\Sales\Model\Quote\Item
+     * @var \Magento\Quote\Model\Quote\Item
      */
     protected $_item;
 
@@ -38,7 +38,7 @@ class Option extends \Magento\Framework\Model\AbstractModel implements
      */
     protected function _construct()
     {
-        $this->_init('Magento\Sales\Model\Resource\Quote\Item\Option');
+        $this->_init('Magento\Quote\Model\Resource\Quote\Item\Option');
     }
 
     /**
@@ -58,7 +58,7 @@ class Option extends \Magento\Framework\Model\AbstractModel implements
     /**
      * Set quote item
      *
-     * @param   \Magento\Sales\Model\Quote\Item $item
+     * @param   \Magento\Quote\Model\Quote\Item $item
      * @return $this
      */
     public function setItem($item)
@@ -71,7 +71,7 @@ class Option extends \Magento\Framework\Model\AbstractModel implements
     /**
      * Get option item
      *
-     * @return \Magento\Sales\Model\Quote\Item
+     * @return \Magento\Quote\Model\Quote\Item
      */
     public function getItem()
     {
diff --git a/app/code/Magento/Sales/Model/Quote/Item/Processor.php b/app/code/Magento/Quote/Model/Quote/Item/Processor.php
similarity index 92%
rename from app/code/Magento/Sales/Model/Quote/Item/Processor.php
rename to app/code/Magento/Quote/Model/Quote/Item/Processor.php
index ddff79cb2e43fda022f14a566ac03825fdd3af28..3e62bc5cc8c499376c94d4089c5d61a51304508b 100644
--- a/app/code/Magento/Sales/Model/Quote/Item/Processor.php
+++ b/app/code/Magento/Quote/Model/Quote/Item/Processor.php
@@ -3,11 +3,11 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Quote\Item;
+namespace Magento\Quote\Model\Quote\Item;
 
-use Magento\Catalog\Model\Product;
-use Magento\Sales\Model\Quote\ItemFactory;
-use Magento\Sales\Model\Quote\Item;
+use \Magento\Catalog\Model\Product;
+use Magento\Quote\Model\Quote\ItemFactory;
+use Magento\Quote\Model\Quote\Item;
 use Magento\Store\Model\StoreManagerInterface;
 use Magento\Framework\App\State;
 use Magento\Framework\Object;
@@ -20,7 +20,7 @@ use Magento\Framework\Object;
 class Processor
 {
     /**
-     * @var \Magento\Sales\Model\Quote\ItemFactory
+     * @var \Magento\Quote\Model\Quote\ItemFactory
      */
     protected $quoteItemFactory;
 
@@ -55,7 +55,7 @@ class Processor
      * @param \Magento\Framework\Object $request
      * @param Product $product
      *
-     * @return \Magento\Sales\Model\Quote\Item
+     * @return \Magento\Quote\Model\Quote\Item
      */
     public function init(Product $product, $request)
     {
diff --git a/app/code/Magento/Sales/Model/Quote/Item/RelatedProducts.php b/app/code/Magento/Quote/Model/Quote/Item/RelatedProducts.php
similarity index 83%
rename from app/code/Magento/Sales/Model/Quote/Item/RelatedProducts.php
rename to app/code/Magento/Quote/Model/Quote/Item/RelatedProducts.php
index 919cddb9a8a16c64a36a7ad6fdea60874b0e8dba..65d2b9fabc142d5042fac8cb5d5d924d6af63750 100644
--- a/app/code/Magento/Sales/Model/Quote/Item/RelatedProducts.php
+++ b/app/code/Magento/Quote/Model/Quote/Item/RelatedProducts.php
@@ -4,7 +4,7 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Quote\Item;
+namespace Magento\Quote\Model\Quote\Item;
 
 class RelatedProducts
 {
@@ -26,16 +26,16 @@ class RelatedProducts
     /**
      * Retrieve Array of product ids which have special relation with products in Cart
      *
-     * @param \Magento\Sales\Model\Quote\Item[] $quoteItems
+     * @param \Magento\Quote\Model\Quote\Item[] $quoteItems
      * @return int[]
      */
     public function getRelatedProductIds(array $quoteItems)
     {
         $productIds = [];
-        /** @var $quoteItems \Magento\Sales\Model\Quote\Item[] */
+        /** @var $quoteItems \Magento\Quote\Model\Quote\Item[] */
         foreach ($quoteItems as $quoteItem) {
             $productTypeOpt = $quoteItem->getOptionByCode('product_type');
-            if ($productTypeOpt instanceof \Magento\Sales\Model\Quote\Item\Option) {
+            if ($productTypeOpt instanceof \Magento\Quote\Model\Quote\Item\Option) {
                 if (in_array(
                     $productTypeOpt->getValue(),
                     $this->_relatedProductTypes
diff --git a/app/code/Magento/Quote/Model/Quote/Item/ToOrderItem.php b/app/code/Magento/Quote/Model/Quote/Item/ToOrderItem.php
new file mode 100644
index 0000000000000000000000000000000000000000..bf4ecd59e18d666aaa2678f041d1711639a4a485
--- /dev/null
+++ b/app/code/Magento/Quote/Model/Quote/Item/ToOrderItem.php
@@ -0,0 +1,79 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+
+namespace Magento\Quote\Model\Quote\Item;
+
+use Magento\Framework\Object\Copy;
+use Magento\Quote\Model\Quote\Item;
+use Magento\Sales\Api\Data\OrderItemDataBuilder as OrderItemBuilder;
+use Magento\Sales\Api\Data\OrderItemInterface;
+
+/**
+ * Class ToOrderItem
+ */
+class ToOrderItem
+{
+    /**
+     * @var Copy
+     */
+    protected $objectCopyService;
+
+    /**
+     * @var OrderItemBuilder
+     */
+    protected $orderItemBuilder;
+
+    /**
+     * @param OrderItemBuilder $orderItemBuilder
+     * @param Copy $objectCopyService
+     */
+    public function __construct(
+        OrderItemBuilder $orderItemBuilder,
+        Copy $objectCopyService
+    ) {
+        $this->orderItemBuilder = $orderItemBuilder;
+        $this->objectCopyService = $objectCopyService;
+    }
+
+    /**
+     * @param Item $quoteItem
+     * @param array $data
+     * @return OrderItemInterface
+     */
+    public function convert(Item $quoteItem, $data = [])
+    {
+        $options = $quoteItem->getProductOrderOptions();
+        if (!$options) {
+            $options = $quoteItem->getProduct()->getTypeInstance()->getOrderOptions($quoteItem->getProduct());
+        }
+        $orderItemData = $this->objectCopyService->getDataFromFieldset(
+            'quote_convert_item',
+            'to_order_item',
+            $quoteItem
+        );
+        if (!$quoteItem->getNoDiscount()) {
+            $data = array_merge(
+                $data,
+                $this->objectCopyService->getDataFromFieldset(
+                    'quote_convert_item',
+                    'to_order_item_discount',
+                    $quoteItem
+                )
+            );
+        }
+        $this->orderItemBuilder->populateWithArray(array_merge($orderItemData, $data));
+
+        $this->orderItemBuilder->setProductOptions($options);
+
+        if ($quoteItem->getParentItem()) {
+            $this->orderItemBuilder->setQtyOrdered(
+                $orderItemData[OrderItemInterface::QTY_ORDERED] * $quoteItem->getParentItem()->getQty()
+            );
+        }
+
+        return $this->orderItemBuilder->create();
+    }
+}
diff --git a/app/code/Magento/Sales/Model/Quote/Item/Updater.php b/app/code/Magento/Quote/Model/Quote/Item/Updater.php
similarity index 96%
rename from app/code/Magento/Sales/Model/Quote/Item/Updater.php
rename to app/code/Magento/Quote/Model/Quote/Item/Updater.php
index 747d82ba314dd5bff0a831b0f80503b11c3733b3..a71d872dc76405a5df8e3965c45d7b4014ad7e50 100644
--- a/app/code/Magento/Sales/Model/Quote/Item/Updater.php
+++ b/app/code/Magento/Quote/Model/Quote/Item/Updater.php
@@ -3,13 +3,13 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Quote\Item;
+namespace Magento\Quote\Model\Quote\Item;
 
 use Magento\Catalog\Model\ProductFactory;
 use Magento\Framework\Locale\FormatInterface;
 use Magento\Framework\Object\Factory as ObjectFactory;
-use Magento\Sales\Model\Quote;
-use Magento\Sales\Model\Quote\Item;
+use Magento\Quote\Model\Quote;
+use Magento\Quote\Model\Quote\Item;
 use Zend\Code\Exception\InvalidArgumentException;
 
 /**
@@ -55,6 +55,7 @@ class Updater
      * @param array $info
      * @throws InvalidArgumentException
      * @return Updater
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function update(Item $item, array $info)
     {
diff --git a/app/code/Magento/Sales/Model/Quote/Payment.php b/app/code/Magento/Quote/Model/Quote/Payment.php
similarity index 81%
rename from app/code/Magento/Sales/Model/Quote/Payment.php
rename to app/code/Magento/Quote/Model/Quote/Payment.php
index 6b8413c58f2da29ab4d7b7a86935bc87537c0330..fb06beae42cf99780f51eb6ae8ca117495eb06d7 100644
--- a/app/code/Magento/Sales/Model/Quote/Payment.php
+++ b/app/code/Magento/Quote/Model/Quote/Payment.php
@@ -3,45 +3,46 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Quote;
+namespace Magento\Quote\Model\Quote;
 
 use Magento\Framework\Api\AttributeDataBuilder;
 
 /**
  * Quote payment information
  *
- * @method \Magento\Sales\Model\Resource\Quote\Payment _getResource()
- * @method \Magento\Sales\Model\Resource\Quote\Payment getResource()
+ * @method \Magento\Quote\Model\Resource\Quote\Payment _getResource()
+ * @method \Magento\Quote\Model\Resource\Quote\Payment getResource()
  * @method int getQuoteId()
- * @method \Magento\Sales\Model\Quote\Payment setQuoteId(int $value)
+ * @method \Magento\Quote\Model\Quote\Payment setQuoteId(int $value)
  * @method string getCreatedAt()
- * @method \Magento\Sales\Model\Quote\Payment setCreatedAt(string $value)
+ * @method \Magento\Quote\Model\Quote\Payment setCreatedAt(string $value)
  * @method string getUpdatedAt()
- * @method \Magento\Sales\Model\Quote\Payment setUpdatedAt(string $value)
+ * @method \Magento\Quote\Model\Quote\Payment setUpdatedAt(string $value)
  * @method string getMethod()
- * @method \Magento\Sales\Model\Quote\Payment setMethod(string $value)
+ * @method \Magento\Quote\Model\Quote\Payment setMethod(string $value)
  * @method string getCcType()
- * @method \Magento\Sales\Model\Quote\Payment setCcType(string $value)
+ * @method \Magento\Quote\Model\Quote\Payment setCcType(string $value)
  * @method string getCcNumberEnc()
- * @method \Magento\Sales\Model\Quote\Payment setCcNumberEnc(string $value)
+ * @method \Magento\Quote\Model\Quote\Payment setCcNumberEnc(string $value)
  * @method string getCcLast4()
- * @method \Magento\Sales\Model\Quote\Payment setCcLast4(string $value)
+ * @method \Magento\Quote\Model\Quote\Payment setCcLast4(string $value)
  * @method string getCcCidEnc()
- * @method \Magento\Sales\Model\Quote\Payment setCcCidEnc(string $value)
+ * @method \Magento\Quote\Model\Quote\Payment setCcCidEnc(string $value)
  * @method string getCcSsOwner()
- * @method \Magento\Sales\Model\Quote\Payment setCcSsOwner(string $value)
+ * @method \Magento\Quote\Model\Quote\Payment setCcSsOwner(string $value)
  * @method int getCcSsStartMonth()
- * @method \Magento\Sales\Model\Quote\Payment setCcSsStartMonth(int $value)
+ * @method \Magento\Quote\Model\Quote\Payment setCcSsStartMonth(int $value)
  * @method int getCcSsStartYear()
- * @method \Magento\Sales\Model\Quote\Payment setCcSsStartYear(int $value)
+ * @method \Magento\Quote\Model\Quote\Payment setCcSsStartYear(int $value)
  * @method string getPoNumber()
- * @method \Magento\Sales\Model\Quote\Payment setPoNumber(string $value)
+ * @method \Magento\Quote\Model\Quote\Payment setPoNumber(string $value)
  * @method string getAdditionalData()
- * @method \Magento\Sales\Model\Quote\Payment setAdditionalData(string $value)
+ * @method \Magento\Quote\Model\Quote\Payment setAdditionalData(string $value)
  * @method string getCcSsIssue()
- * @method \Magento\Sales\Model\Quote\Payment setCcSsIssue(string $value)
+ * @method \Magento\Quote\Model\Quote\Payment setCcSsIssue(string $value)
  *
  * @author      Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Payment extends \Magento\Payment\Model\Info
 {
@@ -58,7 +59,7 @@ class Payment extends \Magento\Payment\Model\Info
     /**
      * Quote model object
      *
-     * @var \Magento\Sales\Model\Quote
+     * @var \Magento\Quote\Model\Quote
      */
     protected $_quote;
 
@@ -78,6 +79,7 @@ class Payment extends \Magento\Payment\Model\Info
      * @param \Magento\Framework\Model\Resource\AbstractResource $resource
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
@@ -112,16 +114,16 @@ class Payment extends \Magento\Payment\Model\Info
      */
     protected function _construct()
     {
-        $this->_init('Magento\Sales\Model\Resource\Quote\Payment');
+        $this->_init('Magento\Quote\Model\Resource\Quote\Payment');
     }
 
     /**
      * Declare quote model instance
      *
-     * @param \Magento\Sales\Model\Quote $quote
+     * @param \Magento\Quote\Model\Quote $quote
      * @return $this
      */
-    public function setQuote(\Magento\Sales\Model\Quote $quote)
+    public function setQuote(\Magento\Quote\Model\Quote $quote)
     {
         $this->_quote = $quote;
         $this->setQuoteId($quote->getId());
@@ -131,7 +133,7 @@ class Payment extends \Magento\Payment\Model\Info
     /**
      * Retrieve quote model instance
      *
-     * @return \Magento\Sales\Model\Quote
+     * @return \Magento\Quote\Model\Quote
      */
     public function getQuote()
     {
diff --git a/app/code/Magento/Quote/Model/Quote/Payment/ToOrderPayment.php b/app/code/Magento/Quote/Model/Quote/Payment/ToOrderPayment.php
new file mode 100644
index 0000000000000000000000000000000000000000..e3d2d21ff03583b243c168836924c3a3da84167d
--- /dev/null
+++ b/app/code/Magento/Quote/Model/Quote/Payment/ToOrderPayment.php
@@ -0,0 +1,70 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+
+namespace Magento\Quote\Model\Quote\Payment;
+
+use Magento\Quote\Model\Quote\Payment;
+use Magento\Sales\Api\Data\OrderPaymentDataBuilder as OrderPaymentBuilder;
+use Magento\Sales\Api\Data\OrderPaymentInterface;
+use Magento\Framework\Object\Copy;
+use Magento\Payment\Model\Method\Substitution;
+
+/**
+ * Class ToOrderPayment
+ */
+class ToOrderPayment
+{
+    /**
+     * @var Copy
+     */
+    protected $objectCopyService;
+
+    /**
+     * @var OrderPaymentBuilder|\Magento\Framework\Api\Builder
+     */
+    protected $orderPaymentBuilder;
+
+    /**
+     * @param OrderPaymentBuilder $orderPaymentBuilder
+     * @param Copy $objectCopyService
+     */
+    public function __construct(
+        OrderPaymentBuilder $orderPaymentBuilder,
+        Copy $objectCopyService
+    ) {
+        $this->orderPaymentBuilder = $orderPaymentBuilder;
+        $this->objectCopyService = $objectCopyService;
+    }
+
+    /**
+     * @param Payment $object
+     * @param array $data
+     * @return OrderPaymentInterface
+     */
+    public function convert(Payment $object, $data = [])
+    {
+        $paymentData = $this->objectCopyService->getDataFromFieldset(
+            'quote_convert_payment',
+            'to_order_payment',
+            $object
+        );
+        $payment = $this->orderPaymentBuilder
+            ->populateWithArray(array_merge($paymentData, $data))
+            ->setAdditionalInformation(
+                serialize(
+                    array_merge(
+                        $object->getAdditionalInformation(),
+                        [Substitution::INFO_KEY_TITLE => $object->getMethodInstance()->getTitle()]
+                    )
+                )
+            )
+            ->create();
+        $payment->setCcNumber($object->getCcNumber());
+        $payment->setCcCid($object->getCcCid());
+
+        return $payment;
+    }
+}
diff --git a/app/code/Magento/Quote/Model/QuoteManagement.php b/app/code/Magento/Quote/Model/QuoteManagement.php
new file mode 100644
index 0000000000000000000000000000000000000000..e8c66eddd8a196a32974facea3b5d6bb30480086
--- /dev/null
+++ b/app/code/Magento/Quote/Model/QuoteManagement.php
@@ -0,0 +1,231 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+
+namespace Magento\Quote\Model;
+
+use Magento\Quote\Model\Quote as QuoteEntity;
+use Magento\Framework\Event\ManagerInterface as EventManager;
+use Magento\Sales\Api\Data\OrderDataBuilder as OrderBuilder;
+use Magento\Sales\Api\OrderManagementInterface as OrderManagement;
+use Magento\Quote\Model\Quote\Address\ToOrder as ToOrderConverter;
+use Magento\Quote\Model\Quote\Address\ToOrderAddress as ToOrderAddressConverter;
+use Magento\Quote\Model\Quote\Item\ToOrderItem as ToOrderItemConverter;
+use Magento\Quote\Model\Quote\Payment\ToOrderPayment as ToOrderPaymentConverter;
+
+/**
+ * Class QuoteManagement
+ */
+class QuoteManagement
+{
+    /**
+     * @var EventManager
+     */
+    protected $eventManager;
+
+    /**
+     * @var QuoteValidator
+     */
+    protected $quoteValidator;
+
+    /**
+     * @var OrderBuilder|\Magento\Framework\Api\Builder
+     */
+    protected $orderBuilder;
+
+    /**
+     * @var OrderManagement
+     */
+    protected $orderManagement;
+
+    /**
+     * @var CustomerManagement
+     */
+    protected $customerManagement;
+
+    /**
+     * @var ToOrderConverter
+     */
+    protected $quoteAddressToOrder;
+
+    /**
+     * @var ToOrderAddressConverter
+     */
+    protected $quoteAddressToOrderAddress;
+
+    /**
+     * @var ToOrderItemConverter
+     */
+    protected $quoteItemToOrderItem;
+
+    /**
+     * @var ToOrderPaymentConverter
+     */
+    protected $quotePaymentToOrderPayment;
+
+    /**
+     * @param EventManager $eventManager
+     * @param QuoteValidator $quoteValidator
+     * @param OrderBuilder $orderBuilder
+     * @param OrderManagement $orderManagement
+     * @param CustomerManagement $customerManagement
+     * @param ToOrderConverter $quoteAddressToOrder
+     * @param ToOrderAddressConverter $quoteAddressToOrderAddress
+     * @param ToOrderItemConverter $quoteItemToOrderItem
+     * @param ToOrderPaymentConverter $quotePaymentToOrderPayment
+     */
+    public function __construct(
+        EventManager $eventManager,
+        QuoteValidator $quoteValidator,
+        OrderBuilder $orderBuilder,
+        OrderManagement $orderManagement,
+        CustomerManagement $customerManagement,
+        ToOrderConverter $quoteAddressToOrder,
+        ToOrderAddressConverter $quoteAddressToOrderAddress,
+        ToOrderItemConverter $quoteItemToOrderItem,
+        ToOrderPaymentConverter $quotePaymentToOrderPayment
+    ) {
+        $this->eventManager = $eventManager;
+        $this->quoteValidator = $quoteValidator;
+        $this->orderBuilder = $orderBuilder;
+        $this->orderManagement = $orderManagement;
+        $this->customerManagement = $customerManagement;
+        $this->quoteAddressToOrder = $quoteAddressToOrder;
+        $this->quoteAddressToOrderAddress = $quoteAddressToOrderAddress;
+        $this->quoteItemToOrderItem = $quoteItemToOrderItem;
+        $this->quotePaymentToOrderPayment = $quotePaymentToOrderPayment;
+    }
+
+    /**
+     * @param Quote $quote
+     * @param array $orderData
+     * @return \Magento\Framework\Model\AbstractExtensibleModel|\Magento\Sales\Api\Data\OrderInterface|object|void
+     * @throws \Exception
+     * @throws \Magento\Framework\Model\Exception
+     */
+    public function submit(QuoteEntity $quote, $orderData = [])
+    {
+        if (!$quote->getAllVisibleItems()) {
+            $quote->setIsActive(false);
+            return;
+        }
+
+        return $this->submitQuote($quote, $orderData);
+    }
+
+    /**
+     * @param Quote $quote
+     * @return array
+     */
+    protected function resolveItems(QuoteEntity $quote)
+    {
+        $quoteItems = $quote->getAllItems();
+        for ($i = 0; $i < count($quoteItems) - 1; $i++) {
+            for ($j = 0; $j < count($quoteItems) - $i - 1; $j++) {
+                if ($quoteItems[$i]->getParentItemId() == $quoteItems[$j]->getId()) {
+                    $tempItem = $quoteItems[$i];
+                    $quoteItems[$i] = $quoteItems[$j];
+                    $quoteItems[$j] = $tempItem;
+                }
+            }
+        }
+        $orderItems = [];
+        foreach ($quoteItems as $quoteItem) {
+            $parentItem = (isset($orderItems[$quoteItem->getParentItemId()])) ?
+                $orderItems[$quoteItem->getParentItemId()] : null;
+            $orderItems[$quoteItem->getId()] =
+                $this->quoteItemToOrderItem->convert($quoteItem, ['parent_item' => $parentItem]);
+        }
+        return array_values($orderItems);
+    }
+
+    /**
+     * Submit quote
+     *
+     * @param Quote $quote
+     * @param array $orderData
+     * @return \Magento\Framework\Model\AbstractExtensibleModel|\Magento\Sales\Api\Data\OrderInterface|object
+     * @throws \Exception
+     * @throws \Magento\Framework\Model\Exception
+     */
+    protected function submitQuote(QuoteEntity $quote, $orderData = [])
+    {
+        $this->quoteValidator->validateBeforeSubmit($quote);
+        if (!$quote->getCustomerIsGuest()) {
+            $this->customerManagement->populateCustomerInfo($quote);
+        }
+        $addresses = [];
+        if ($quote->isVirtual()) {
+            $this->orderBuilder->populate(
+                $this->quoteAddressToOrder->convert($quote->getBillingAddress(), $orderData)
+            );
+        } else {
+            $this->orderBuilder->populate(
+                $this->quoteAddressToOrder->convert($quote->getShippingAddress(), $orderData)
+            );
+            $shippingAddress = $this->quoteAddressToOrderAddress->convert(
+                $quote->getShippingAddress(),
+                [
+                    'address_type' => 'shipping',
+                    'email' => $quote->getCustomerEmail()
+                ]
+            );
+            $addresses[] = $shippingAddress;
+            $this->orderBuilder->setShippingAddress($shippingAddress);
+
+        }
+        $billingAddress = $this->quoteAddressToOrderAddress->convert(
+            $quote->getBillingAddress(),
+            [
+                'address_type' => 'billing',
+                'email' => $quote->getCustomerEmail()
+            ]
+        );
+        $addresses[] = $billingAddress;
+        $this->orderBuilder->setBillingAddress($billingAddress);
+        $this->orderBuilder->setAddresses($addresses);
+        $this->orderBuilder->setPayments(
+            [$this->quotePaymentToOrderPayment->convert($quote->getPayment())]
+        );
+        $this->orderBuilder->setItems($this->resolveItems($quote));
+        if ($quote->getCustomer()) {
+            $this->orderBuilder->setCustomerId($quote->getCustomer()->getId());
+        }
+        $this->orderBuilder->setQuoteId($quote->getId());
+        $this->orderBuilder->setCustomerEmail($quote->getCustomerEmail());
+        $this->orderBuilder->setCustomerFirstname($quote->getCustomerFirstname());
+        $this->orderBuilder->setCustomerMiddlename($quote->getCustomerMiddlename());
+        $this->orderBuilder->setCustomerLastname($quote->getCustomerLastname());
+        $order = $this->orderBuilder->create();
+        $this->eventManager->dispatch(
+            'sales_model_service_quote_submit_before',
+            [
+                'order' => $order,
+                'quote' => $quote
+            ]
+        );
+        try {
+            $order = $this->orderManagement->place($order);
+            $quote->setIsActive(false);
+            $this->eventManager->dispatch(
+                'sales_model_service_quote_submit_success',
+                [
+                    'order' => $order,
+                    'quote' => $quote
+                ]
+            );
+        } catch (\Exception $e) {
+            $this->eventManager->dispatch(
+                'sales_model_service_quote_submit_failure',
+                [
+                    'order' => $order,
+                    'quote' => $quote
+                ]
+            );
+            throw $e;
+        }
+        return $order;
+    }
+}
diff --git a/app/code/Magento/Sales/Model/QuoteRepository.php b/app/code/Magento/Quote/Model/QuoteRepository.php
similarity index 96%
rename from app/code/Magento/Sales/Model/QuoteRepository.php
rename to app/code/Magento/Quote/Model/QuoteRepository.php
index 087559542fc7dc2500f2013d778df243bcb7b4c5..b0c8927015f864c8268faf3042344ce9f40b8780 100644
--- a/app/code/Magento/Sales/Model/QuoteRepository.php
+++ b/app/code/Magento/Quote/Model/QuoteRepository.php
@@ -3,9 +3,11 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model;
+namespace Magento\Quote\Model;
 
-use Magento\Framework\Exception\NoSuchEntityException;
+use \Magento\Framework\Exception\NoSuchEntityException;
+use Magento\Quote\Model\Quote;
+use Magento\Quote\Model\QuoteFactory;
 use Magento\Store\Model\StoreManagerInterface;
 
 class QuoteRepository
diff --git a/app/code/Magento/Sales/Model/QuoteRepository/Plugin/Authorization.php b/app/code/Magento/Quote/Model/QuoteRepository/Plugin/Authorization.php
similarity index 67%
rename from app/code/Magento/Sales/Model/QuoteRepository/Plugin/Authorization.php
rename to app/code/Magento/Quote/Model/QuoteRepository/Plugin/Authorization.php
index 6417a3fa7c065f26ddb61c2e68bd4301a5fb2c91..14b7752728d1143352592b7a567cac0f57653c48 100644
--- a/app/code/Magento/Sales/Model/QuoteRepository/Plugin/Authorization.php
+++ b/app/code/Magento/Quote/Model/QuoteRepository/Plugin/Authorization.php
@@ -4,7 +4,7 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\QuoteRepository\Plugin;
+namespace Magento\Quote\Model\QuoteRepository\Plugin;
 
 use Magento\Authorization\Model\UserContextInterface;
 use Magento\Framework\Exception\NoSuchEntityException;
@@ -28,14 +28,15 @@ class Authorization
     /**
      * Check if quote is allowed
      *
-     * @param \Magento\Sales\Model\QuoteRepository $subject
-     * @param \Magento\Sales\Model\Quote $quote
-     * @return \Magento\Sales\Model\Quote
+     * @param \Magento\Quote\Model\QuoteRepository $subject
+     * @param \Magento\Quote\Model\Quote $quote
+     * @return \Magento\Quote\Model\Quote
      * @throws \Magento\Framework\Exception\NoSuchEntityException
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function afterGetActive(
-        \Magento\Sales\Model\QuoteRepository $subject,
-        \Magento\Sales\Model\Quote $quote
+        \Magento\Quote\Model\QuoteRepository $subject,
+        \Magento\Quote\Model\Quote $quote
     ) {
         if (!$this->isAllowed($quote)) {
             throw NoSuchEntityException::singleField('cartId', $quote->getId());
@@ -46,14 +47,15 @@ class Authorization
     /**
      * Check if quote is allowed
      *
-     * @param \Magento\Sales\Model\QuoteRepository $subject
-     * @param \Magento\Sales\Model\Quote $quote
-     * @return \Magento\Sales\Model\Quote
+     * @param \Magento\Quote\Model\QuoteRepository $subject
+     * @param \Magento\Quote\Model\Quote $quote
+     * @return \Magento\Quote\Model\Quote
      * @throws \Magento\Framework\Exception\NoSuchEntityException
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function afterGetActiveForCustomer(
-        \Magento\Sales\Model\QuoteRepository $subject,
-        \Magento\Sales\Model\Quote $quote
+        \Magento\Quote\Model\QuoteRepository $subject,
+        \Magento\Quote\Model\Quote $quote
     ) {
         if (!$this->isAllowed($quote)) {
             throw NoSuchEntityException::singleField('cartId', $quote->getId());
@@ -64,10 +66,10 @@ class Authorization
     /**
      * Check whether quote is allowed for current user context
      *
-     * @param \Magento\Sales\Model\Quote $quote
+     * @param \Magento\Quote\Model\Quote $quote
      * @return bool
      */
-    protected function isAllowed(\Magento\Sales\Model\Quote $quote)
+    protected function isAllowed(\Magento\Quote\Model\Quote $quote)
     {
         return $this->userContext->getUserType() == UserContextInterface::USER_TYPE_CUSTOMER
             ? $quote->getCustomerId() == $this->userContext->getUserId()
diff --git a/app/code/Magento/Quote/Model/QuoteValidator.php b/app/code/Magento/Quote/Model/QuoteValidator.php
new file mode 100644
index 0000000000000000000000000000000000000000..c5f9fa5679c668920f6eda0e47bd6c3a18380ba8
--- /dev/null
+++ b/app/code/Magento/Quote/Model/QuoteValidator.php
@@ -0,0 +1,71 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+
+namespace Magento\Quote\Model;
+
+use Magento\Quote\Model\Quote as QuoteEntity;
+
+class QuoteValidator
+{
+    /**
+     * Maximum available number
+     */
+    const MAXIMUM_AVAILABLE_NUMBER = 99999999;
+
+    /**
+     * Validate quote amount
+     *
+     * @param QuoteEntity $quote
+     * @param float $amount
+     * @return $this
+     */
+    public function validateQuoteAmount(QuoteEntity $quote, $amount)
+    {
+        if (!$quote->getHasError() && $amount >= self::MAXIMUM_AVAILABLE_NUMBER) {
+            $quote->setHasError(true);
+            $quote->addMessage(__('This item price or quantity is not valid for checkout.'));
+        }
+        return $this;
+    }
+
+    /**
+     * Validate quote before submit
+     *
+     * @param Quote $quote
+     * @return $this
+     * @throws \Magento\Framework\Model\Exception
+     */
+    public function validateBeforeSubmit(QuoteEntity $quote)
+    {
+        if (!$quote->isVirtual()) {
+            if ($quote->getShippingAddress()->validate() !== true) {
+                throw new \Magento\Framework\Model\Exception(
+                    __(
+                        'Please check the shipping address information. %1',
+                        implode(' ', $quote->getShippingAddress()->validate())
+                    )
+                );
+            }
+            $method = $quote->getShippingAddress()->getShippingMethod();
+            $rate = $quote->getShippingAddress()->getShippingRateByCode($method);
+            if (!$quote->isVirtual() && (!$method || !$rate)) {
+                throw new \Magento\Framework\Model\Exception(__('Please specify a shipping method.'));
+            }
+        }
+        if ($quote->getBillingAddress()->validate() !== true) {
+            throw new \Magento\Framework\Model\Exception(
+                __(
+                    'Please check the billing address information. %1',
+                    implode(' ', $quote->getBillingAddress()->validate())
+                )
+            );
+        }
+        if (!$quote->getPayment()->getMethod()) {
+            throw new \Magento\Framework\Model\Exception(__('Please select a valid payment method.'));
+        }
+        return $this;
+    }
+}
diff --git a/app/code/Magento/Sales/Model/Resource/Quote.php b/app/code/Magento/Quote/Model/Resource/Quote.php
similarity index 92%
rename from app/code/Magento/Sales/Model/Resource/Quote.php
rename to app/code/Magento/Quote/Model/Resource/Quote.php
index e289000db6ee2a379ac8827925ab77c8371cc258..fac8e129483c30bc6eec359ad5a3f77d7d207f54 100644
--- a/app/code/Magento/Sales/Model/Resource/Quote.php
+++ b/app/code/Magento/Quote/Model/Resource/Quote.php
@@ -3,7 +3,10 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Resource;
+
+// @codingStandardsIgnoreFile
+
+namespace Magento\Quote\Model\Resource;
 
 use Magento\Framework\Model\Resource\Db\AbstractDb;
 
@@ -36,7 +39,7 @@ class Quote extends AbstractDb
      */
     protected function _construct()
     {
-        $this->_init('sales_quote', 'entity_id');
+        $this->_init('quote', 'entity_id');
     }
 
     /**
@@ -66,7 +69,7 @@ class Quote extends AbstractDb
     /**
      * Load quote data by customer identifier
      *
-     * @param \Magento\Sales\Model\Quote $quote
+     * @param \Magento\Quote\Model\Quote $quote
      * @param int $customerId
      * @return $this
      */
@@ -100,7 +103,7 @@ class Quote extends AbstractDb
     /**
      * Load only active quote
      *
-     * @param \Magento\Sales\Model\Quote $quote
+     * @param \Magento\Quote\Model\Quote $quote
      * @param int $quoteId
      * @return $this
      */
@@ -122,7 +125,7 @@ class Quote extends AbstractDb
     /**
      * Load quote data by identifier without store
      *
-     * @param \Magento\Sales\Model\Quote $quote
+     * @param \Magento\Quote\Model\Quote $quote
      * @param int $quoteId
      * @return $this
      */
@@ -146,7 +149,7 @@ class Quote extends AbstractDb
     /**
      * Get reserved order id
      *
-     * @param \Magento\Sales\Model\Quote $quote
+     * @param \Magento\Quote\Model\Quote $quote
      * @return string
      */
     public function getReservedOrderId($quote)
@@ -182,9 +185,9 @@ class Quote extends AbstractDb
      */
     public function markQuotesRecollectOnCatalogRules()
     {
-        $tableQuote = $this->getTable('sales_quote');
+        $tableQuote = $this->getTable('quote');
         $subSelect = $this->_getReadAdapter()->select()->from(
-            ['t2' => $this->getTable('sales_quote_item')],
+            ['t2' => $this->getTable('quote_item')],
             ['entity_id' => 'quote_id']
         )->from(
             ['t3' => $this->getTable('catalogrule_product_price')],
@@ -232,7 +235,7 @@ class Quote extends AbstractDb
                 'items_count' => new \Zend_Db_Expr($adapter->quoteIdentifier('q.items_count') . ' - 1')
             ]
         )->join(
-            ['qi' => $this->getTable('sales_quote_item')],
+            ['qi' => $this->getTable('quote_item')],
             implode(
                 ' AND ',
                 [
@@ -244,7 +247,7 @@ class Quote extends AbstractDb
             []
         );
 
-        $updateQuery = $adapter->updateFromSelect($subSelect, ['q' => $this->getTable('sales_quote')]);
+        $updateQuery = $adapter->updateFromSelect($subSelect, ['q' => $this->getTable('quote')]);
 
         $adapter->query($updateQuery);
 
@@ -259,8 +262,8 @@ class Quote extends AbstractDb
      */
     public function markQuotesRecollect($productIds)
     {
-        $tableQuote = $this->getTable('sales_quote');
-        $tableItem = $this->getTable('sales_quote_item');
+        $tableQuote = $this->getTable('quote');
+        $tableItem = $this->getTable('quote_item');
         $subSelect = $this->_getReadAdapter()->select()->from(
             $tableItem,
             ['entity_id' => 'quote_id']
diff --git a/app/code/Magento/Sales/Model/Resource/Quote/Address.php b/app/code/Magento/Quote/Model/Resource/Quote/Address.php
similarity index 80%
rename from app/code/Magento/Sales/Model/Resource/Quote/Address.php
rename to app/code/Magento/Quote/Model/Resource/Quote/Address.php
index 50c2a5cdb8d76a0d9c18fedc82e21adadfcd77e9..350193fc2e13f7e5e260a063ddd1e06539f8ebb8 100644
--- a/app/code/Magento/Sales/Model/Resource/Quote/Address.php
+++ b/app/code/Magento/Quote/Model/Resource/Quote/Address.php
@@ -3,7 +3,7 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Resource\Quote;
+namespace Magento\Quote\Model\Resource\Quote;
 
 use Magento\Framework\Model\Resource\Db\AbstractDb;
 
@@ -21,6 +21,6 @@ class Address extends AbstractDb
      */
     protected function _construct()
     {
-        $this->_init('sales_quote_address', 'address_id');
+        $this->_init('quote_address', 'address_id');
     }
 }
diff --git a/app/code/Magento/Sales/Model/Resource/Quote/Address/Attribute/Backend.php b/app/code/Magento/Quote/Model/Resource/Quote/Address/Attribute/Backend.php
similarity index 64%
rename from app/code/Magento/Sales/Model/Resource/Quote/Address/Attribute/Backend.php
rename to app/code/Magento/Quote/Model/Resource/Quote/Address/Attribute/Backend.php
index be357e39e3388a863a3b1949ea8d8b9acbc6cccf..7724381733562f8017326482fe15e78ce2c74125 100644
--- a/app/code/Magento/Sales/Model/Resource/Quote/Address/Attribute/Backend.php
+++ b/app/code/Magento/Quote/Model/Resource/Quote/Address/Attribute/Backend.php
@@ -3,7 +3,7 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Resource\Quote\Address\Attribute;
+namespace Magento\Quote\Model\Resource\Quote\Address\Attribute;
 
 /**
  * Quote address attribute backend resource model
@@ -15,10 +15,11 @@ class Backend extends \Magento\Eav\Model\Entity\Attribute\Backend\AbstractBacken
     /**
      * Collect totals
      *
-     * @param \Magento\Sales\Model\Quote\Address $address
+     * @param \Magento\Quote\Model\Quote\Address $address
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
-    public function collectTotals(\Magento\Sales\Model\Quote\Address $address)
+    public function collectTotals(\Magento\Quote\Model\Quote\Address $address)
     {
         return $this;
     }
diff --git a/app/code/Magento/Sales/Model/Resource/Quote/Address/Attribute/Backend/Child.php b/app/code/Magento/Quote/Model/Resource/Quote/Address/Attribute/Backend/Child.php
similarity index 91%
rename from app/code/Magento/Sales/Model/Resource/Quote/Address/Attribute/Backend/Child.php
rename to app/code/Magento/Quote/Model/Resource/Quote/Address/Attribute/Backend/Child.php
index 17b792979ea0123930cd5fd6f8858abedab0bf89..239ca4d751a8cf029be36bc9e1e0aca60e40d178 100644
--- a/app/code/Magento/Sales/Model/Resource/Quote/Address/Attribute/Backend/Child.php
+++ b/app/code/Magento/Quote/Model/Resource/Quote/Address/Attribute/Backend/Child.php
@@ -3,7 +3,7 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Resource\Quote\Address\Attribute\Backend;
+namespace Magento\Quote\Model\Resource\Quote\Address\Attribute\Backend;
 
 /**
  * Quote address attribute backend child resource model
diff --git a/app/code/Magento/Sales/Model/Resource/Quote/Address/Attribute/Backend/Region.php b/app/code/Magento/Quote/Model/Resource/Quote/Address/Attribute/Backend/Region.php
similarity index 94%
rename from app/code/Magento/Sales/Model/Resource/Quote/Address/Attribute/Backend/Region.php
rename to app/code/Magento/Quote/Model/Resource/Quote/Address/Attribute/Backend/Region.php
index 57f0892ebcc645ffd38de1096cb9c1c5e9a9ef29..2a57c823e6f9f75cd70dc82d068f02e8cfbf6ee4 100644
--- a/app/code/Magento/Sales/Model/Resource/Quote/Address/Attribute/Backend/Region.php
+++ b/app/code/Magento/Quote/Model/Resource/Quote/Address/Attribute/Backend/Region.php
@@ -3,7 +3,7 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Resource\Quote\Address\Attribute\Backend;
+namespace Magento\Quote\Model\Resource\Quote\Address\Attribute\Backend;
 
 /**
  * Quote address attribute backend region resource model
diff --git a/app/code/Magento/Sales/Model/Resource/Quote/Address/Attribute/Frontend.php b/app/code/Magento/Quote/Model/Resource/Quote/Address/Attribute/Frontend.php
similarity index 65%
rename from app/code/Magento/Sales/Model/Resource/Quote/Address/Attribute/Frontend.php
rename to app/code/Magento/Quote/Model/Resource/Quote/Address/Attribute/Frontend.php
index 956ad24e5c12e0b2a8bb29d77c5bce4510e7c4cc..32351c123247545a2271167d28944cef0cead38f 100644
--- a/app/code/Magento/Sales/Model/Resource/Quote/Address/Attribute/Frontend.php
+++ b/app/code/Magento/Quote/Model/Resource/Quote/Address/Attribute/Frontend.php
@@ -3,7 +3,7 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Resource\Quote\Address\Attribute;
+namespace Magento\Quote\Model\Resource\Quote\Address\Attribute;
 
 /**
  * Quote address attribute frontend resource model
@@ -15,10 +15,11 @@ class Frontend extends \Magento\Eav\Model\Entity\Attribute\Frontend\AbstractFron
     /**
      * Fetch totals
      *
-     * @param \Magento\Sales\Model\Quote\Address $address
+     * @param \Magento\Quote\Model\Quote\Address $address
      * @return array
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
-    public function fetchTotals(\Magento\Sales\Model\Quote\Address $address)
+    public function fetchTotals(\Magento\Quote\Model\Quote\Address $address)
     {
         $arr = [];
 
diff --git a/app/code/Magento/Sales/Model/Resource/Quote/Address/Attribute/Frontend/Custbalance.php b/app/code/Magento/Quote/Model/Resource/Quote/Address/Attribute/Frontend/Custbalance.php
similarity index 72%
rename from app/code/Magento/Sales/Model/Resource/Quote/Address/Attribute/Frontend/Custbalance.php
rename to app/code/Magento/Quote/Model/Resource/Quote/Address/Attribute/Frontend/Custbalance.php
index a950e706f3556d8629a7359ffb0362d669b12cc6..c8b863ad87af762204857f87d1f511367b8f7f58 100644
--- a/app/code/Magento/Sales/Model/Resource/Quote/Address/Attribute/Frontend/Custbalance.php
+++ b/app/code/Magento/Quote/Model/Resource/Quote/Address/Attribute/Frontend/Custbalance.php
@@ -3,22 +3,22 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Resource\Quote\Address\Attribute\Frontend;
+namespace Magento\Quote\Model\Resource\Quote\Address\Attribute\Frontend;
 
 /**
  * Quote address attribute frontend custbalance resource model
  *
  * @author      Magento Core Team <core@magentocommerce.com>
  */
-class Custbalance extends \Magento\Sales\Model\Resource\Quote\Address\Attribute\Frontend
+class Custbalance extends \Magento\Quote\Model\Resource\Quote\Address\Attribute\Frontend
 {
     /**
      * Fetch customer balance
      *
-     * @param \Magento\Sales\Model\Quote\Address $address
+     * @param \Magento\Quote\Model\Quote\Address $address
      * @return $this
      */
-    public function fetchTotals(\Magento\Sales\Model\Quote\Address $address)
+    public function fetchTotals(\Magento\Quote\Model\Quote\Address $address)
     {
         $custbalance = $address->getCustbalanceAmount();
         if ($custbalance != 0) {
diff --git a/app/code/Magento/Sales/Model/Resource/Quote/Address/Attribute/Frontend/Discount.php b/app/code/Magento/Quote/Model/Resource/Quote/Address/Attribute/Frontend/Discount.php
similarity index 75%
rename from app/code/Magento/Sales/Model/Resource/Quote/Address/Attribute/Frontend/Discount.php
rename to app/code/Magento/Quote/Model/Resource/Quote/Address/Attribute/Frontend/Discount.php
index 8c36522fd843e1f04648ce13948f874c06802df4..8a83d93c4c8862d75cfbf267865741aca63c7d00 100644
--- a/app/code/Magento/Sales/Model/Resource/Quote/Address/Attribute/Frontend/Discount.php
+++ b/app/code/Magento/Quote/Model/Resource/Quote/Address/Attribute/Frontend/Discount.php
@@ -3,22 +3,22 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Resource\Quote\Address\Attribute\Frontend;
+namespace Magento\Quote\Model\Resource\Quote\Address\Attribute\Frontend;
 
 /**
  * Quote address attribute frontend discount resource model
  *
  * @author      Magento Core Team <core@magentocommerce.com>
  */
-class Discount extends \Magento\Sales\Model\Resource\Quote\Address\Attribute\Frontend
+class Discount extends \Magento\Quote\Model\Resource\Quote\Address\Attribute\Frontend
 {
     /**
      * Fetch discount
      *
-     * @param \Magento\Sales\Model\Quote\Address $address
+     * @param \Magento\Quote\Model\Quote\Address $address
      * @return $this
      */
-    public function fetchTotals(\Magento\Sales\Model\Quote\Address $address)
+    public function fetchTotals(\Magento\Quote\Model\Quote\Address $address)
     {
         $amount = $address->getDiscountAmount();
         if ($amount != 0) {
diff --git a/app/code/Magento/Sales/Model/Resource/Quote/Address/Attribute/Frontend/Grand.php b/app/code/Magento/Quote/Model/Resource/Quote/Address/Attribute/Frontend/Grand.php
similarity index 71%
rename from app/code/Magento/Sales/Model/Resource/Quote/Address/Attribute/Frontend/Grand.php
rename to app/code/Magento/Quote/Model/Resource/Quote/Address/Attribute/Frontend/Grand.php
index 614aea76ca3a1c8b1dd1e4173fe1a340281c7f75..156bac7a3602004b16e7af81f10dd826023061f7 100644
--- a/app/code/Magento/Sales/Model/Resource/Quote/Address/Attribute/Frontend/Grand.php
+++ b/app/code/Magento/Quote/Model/Resource/Quote/Address/Attribute/Frontend/Grand.php
@@ -3,22 +3,22 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Resource\Quote\Address\Attribute\Frontend;
+namespace Magento\Quote\Model\Resource\Quote\Address\Attribute\Frontend;
 
 /**
  * Quote address attribute frontend grand resource model
  *
  * @author      Magento Core Team <core@magentocommerce.com>
  */
-class Grand extends \Magento\Sales\Model\Resource\Quote\Address\Attribute\Frontend
+class Grand extends \Magento\Quote\Model\Resource\Quote\Address\Attribute\Frontend
 {
     /**
      * Fetch grand total
      *
-     * @param \Magento\Sales\Model\Quote\Address $address
+     * @param \Magento\Quote\Model\Quote\Address $address
      * @return $this
      */
-    public function fetchTotals(\Magento\Sales\Model\Quote\Address $address)
+    public function fetchTotals(\Magento\Quote\Model\Quote\Address $address)
     {
         $address->addTotal(
             [
diff --git a/app/code/Magento/Sales/Model/Resource/Quote/Address/Attribute/Frontend/Shipping.php b/app/code/Magento/Quote/Model/Resource/Quote/Address/Attribute/Frontend/Shipping.php
similarity index 76%
rename from app/code/Magento/Sales/Model/Resource/Quote/Address/Attribute/Frontend/Shipping.php
rename to app/code/Magento/Quote/Model/Resource/Quote/Address/Attribute/Frontend/Shipping.php
index 955898dc52bfe75a6c77072476c590e7a6432445..a2aa317af914673c22d920b021aa2886306f2f65 100644
--- a/app/code/Magento/Sales/Model/Resource/Quote/Address/Attribute/Frontend/Shipping.php
+++ b/app/code/Magento/Quote/Model/Resource/Quote/Address/Attribute/Frontend/Shipping.php
@@ -3,22 +3,22 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Resource\Quote\Address\Attribute\Frontend;
+namespace Magento\Quote\Model\Resource\Quote\Address\Attribute\Frontend;
 
 /**
  * Quote address attribute frontend shipping resource model
  *
  * @author      Magento Core Team <core@magentocommerce.com>
  */
-class Shipping extends \Magento\Sales\Model\Resource\Quote\Address\Attribute\Frontend
+class Shipping extends \Magento\Quote\Model\Resource\Quote\Address\Attribute\Frontend
 {
     /**
      * Fetch totals
      *
-     * @param \Magento\Sales\Model\Quote\Address $address
+     * @param \Magento\Quote\Model\Quote\Address $address
      * @return $this
      */
-    public function fetchTotals(\Magento\Sales\Model\Quote\Address $address)
+    public function fetchTotals(\Magento\Quote\Model\Quote\Address $address)
     {
         $amount = $address->getShippingAmount();
         if ($amount != 0) {
diff --git a/app/code/Magento/Sales/Model/Resource/Quote/Address/Attribute/Frontend/Subtotal.php b/app/code/Magento/Quote/Model/Resource/Quote/Address/Attribute/Frontend/Subtotal.php
similarity index 66%
rename from app/code/Magento/Sales/Model/Resource/Quote/Address/Attribute/Frontend/Subtotal.php
rename to app/code/Magento/Quote/Model/Resource/Quote/Address/Attribute/Frontend/Subtotal.php
index d30f62723ed930284cd3e4a20cdcf4203d9f8c3b..0b082fccf63abaa85443c348060e8b36299c55fc 100644
--- a/app/code/Magento/Sales/Model/Resource/Quote/Address/Attribute/Frontend/Subtotal.php
+++ b/app/code/Magento/Quote/Model/Resource/Quote/Address/Attribute/Frontend/Subtotal.php
@@ -3,22 +3,22 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Resource\Quote\Address\Attribute\Frontend;
+namespace Magento\Quote\Model\Resource\Quote\Address\Attribute\Frontend;
 
 /**
  * Quote address attribute frontend subtotal resource model
  *
  * @author      Magento Core Team <core@magentocommerce.com>
  */
-class Subtotal extends \Magento\Sales\Model\Resource\Quote\Address\Attribute\Frontend
+class Subtotal extends \Magento\Quote\Model\Resource\Quote\Address\Attribute\Frontend
 {
     /**
      * Add total
      *
-     * @param \Magento\Sales\Model\Quote\Address $address
+     * @param \Magento\Quote\Model\Quote\Address $address
      * @return $this
      */
-    public function fetchTotals(\Magento\Sales\Model\Quote\Address $address)
+    public function fetchTotals(\Magento\Quote\Model\Quote\Address $address)
     {
         $address->addTotal(['code' => 'subtotal', 'title' => __('Subtotal'), 'value' => $address->getSubtotal()]);
 
diff --git a/app/code/Magento/Sales/Model/Resource/Quote/Address/Attribute/Frontend/Tax.php b/app/code/Magento/Quote/Model/Resource/Quote/Address/Attribute/Frontend/Tax.php
similarity index 68%
rename from app/code/Magento/Sales/Model/Resource/Quote/Address/Attribute/Frontend/Tax.php
rename to app/code/Magento/Quote/Model/Resource/Quote/Address/Attribute/Frontend/Tax.php
index 09f183aae85d9b5e63bb011e7766c37230a091fc..e240c443e43ee03911cf3767fe61df4490c87419 100644
--- a/app/code/Magento/Sales/Model/Resource/Quote/Address/Attribute/Frontend/Tax.php
+++ b/app/code/Magento/Quote/Model/Resource/Quote/Address/Attribute/Frontend/Tax.php
@@ -3,22 +3,22 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Resource\Quote\Address\Attribute\Frontend;
+namespace Magento\Quote\Model\Resource\Quote\Address\Attribute\Frontend;
 
 /**
  * Quote address attribute frontend tax resource model
  *
  * @author      Magento Core Team <core@magentocommerce.com>
  */
-class Tax extends \Magento\Sales\Model\Resource\Quote\Address\Attribute\Frontend
+class Tax extends \Magento\Quote\Model\Resource\Quote\Address\Attribute\Frontend
 {
     /**
      * Fetch totals
      *
-     * @param \Magento\Sales\Model\Quote\Address $address
+     * @param \Magento\Quote\Model\Quote\Address $address
      * @return $this
      */
-    public function fetchTotals(\Magento\Sales\Model\Quote\Address $address)
+    public function fetchTotals(\Magento\Quote\Model\Quote\Address $address)
     {
         $amount = $address->getTaxAmount();
         if ($amount != 0) {
diff --git a/app/code/Magento/Sales/Model/Resource/Quote/Address/Collection.php b/app/code/Magento/Quote/Model/Resource/Quote/Address/Collection.php
similarity index 89%
rename from app/code/Magento/Sales/Model/Resource/Quote/Address/Collection.php
rename to app/code/Magento/Quote/Model/Resource/Quote/Address/Collection.php
index 227737a7d44af819e754015e1c68ed4db60f0bec..960d256ca93ab766ea243de3216b370a401ff6fc 100644
--- a/app/code/Magento/Sales/Model/Resource/Quote/Address/Collection.php
+++ b/app/code/Magento/Quote/Model/Resource/Quote/Address/Collection.php
@@ -3,7 +3,7 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Resource\Quote\Address;
+namespace Magento\Quote\Model\Resource\Quote\Address;
 
 /**
  * Quote addresses collection
@@ -33,7 +33,7 @@ class Collection extends \Magento\Framework\Model\Resource\Db\Collection\Abstrac
      */
     protected function _construct()
     {
-        $this->_init('Magento\Sales\Model\Quote\Address', 'Magento\Sales\Model\Resource\Quote\Address');
+        $this->_init('Magento\Quote\Model\Quote\Address', 'Magento\Quote\Model\Resource\Quote\Address');
     }
 
     /**
diff --git a/app/code/Magento/Sales/Model/Resource/Quote/Address/Item.php b/app/code/Magento/Quote/Model/Resource/Quote/Address/Item.php
similarity index 77%
rename from app/code/Magento/Sales/Model/Resource/Quote/Address/Item.php
rename to app/code/Magento/Quote/Model/Resource/Quote/Address/Item.php
index d90d9631f70f1a1faad7ada9e304d0dd5efc7603..44365e28efd5339f851a5d9bf05d6dc06efd3a56 100644
--- a/app/code/Magento/Sales/Model/Resource/Quote/Address/Item.php
+++ b/app/code/Magento/Quote/Model/Resource/Quote/Address/Item.php
@@ -3,7 +3,7 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Resource\Quote\Address;
+namespace Magento\Quote\Model\Resource\Quote\Address;
 
 use Magento\Framework\Model\Resource\Db\AbstractDb;
 
@@ -21,6 +21,6 @@ class Item extends AbstractDb
      */
     protected function _construct()
     {
-        $this->_init('sales_quote_address_item', 'address_item_id');
+        $this->_init('quote_address_item', 'address_item_id');
     }
 }
diff --git a/app/code/Magento/Sales/Model/Resource/Quote/Address/Item/Collection.php b/app/code/Magento/Quote/Model/Resource/Quote/Address/Item/Collection.php
similarity index 87%
rename from app/code/Magento/Sales/Model/Resource/Quote/Address/Item/Collection.php
rename to app/code/Magento/Quote/Model/Resource/Quote/Address/Item/Collection.php
index a83751fcba514ed929e1892ef8bed9ce6b1de43c..3ef5acacbbfae979a6f83a33a1b14d08d6e3eb67 100644
--- a/app/code/Magento/Sales/Model/Resource/Quote/Address/Item/Collection.php
+++ b/app/code/Magento/Quote/Model/Resource/Quote/Address/Item/Collection.php
@@ -3,7 +3,7 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Resource\Quote\Address\Item;
+namespace Magento\Quote\Model\Resource\Quote\Address\Item;
 
 /**
  * Quote addresses collection
@@ -19,7 +19,7 @@ class Collection extends \Magento\Framework\Model\Resource\Db\Collection\Abstrac
      */
     protected function _construct()
     {
-        $this->_init('Magento\Sales\Model\Quote\Address\Item', 'Magento\Sales\Model\Resource\Quote\Address\Item');
+        $this->_init('Magento\Quote\Model\Quote\Address\Item', 'Magento\Quote\Model\Resource\Quote\Address\Item');
     }
 
     /**
diff --git a/app/code/Magento/Sales/Model/Resource/Quote/Address/Rate.php b/app/code/Magento/Quote/Model/Resource/Quote/Address/Rate.php
similarity index 79%
rename from app/code/Magento/Sales/Model/Resource/Quote/Address/Rate.php
rename to app/code/Magento/Quote/Model/Resource/Quote/Address/Rate.php
index 634ca9bcb2046fcc03607fd8537233220a4e8915..20177eb97cd48d36657ee22e8099d966caeaa250 100644
--- a/app/code/Magento/Sales/Model/Resource/Quote/Address/Rate.php
+++ b/app/code/Magento/Quote/Model/Resource/Quote/Address/Rate.php
@@ -3,7 +3,7 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Resource\Quote\Address;
+namespace Magento\Quote\Model\Resource\Quote\Address;
 
 use Magento\Framework\Model\Resource\Db\AbstractDb;
 
@@ -21,6 +21,6 @@ class Rate extends AbstractDb
      */
     protected function _construct()
     {
-        $this->_init('sales_quote_shipping_rate', 'rate_id');
+        $this->_init('quote_shipping_rate', 'rate_id');
     }
 }
diff --git a/app/code/Magento/Sales/Model/Resource/Quote/Address/Rate/Collection.php b/app/code/Magento/Quote/Model/Resource/Quote/Address/Rate/Collection.php
similarity index 87%
rename from app/code/Magento/Sales/Model/Resource/Quote/Address/Rate/Collection.php
rename to app/code/Magento/Quote/Model/Resource/Quote/Address/Rate/Collection.php
index e4e5f71031cb6bba9c215bf76123ba97866dcd58..4818003861ede7add8bfd98510df1915312fa1e3 100644
--- a/app/code/Magento/Sales/Model/Resource/Quote/Address/Rate/Collection.php
+++ b/app/code/Magento/Quote/Model/Resource/Quote/Address/Rate/Collection.php
@@ -3,7 +3,7 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Resource\Quote\Address\Rate;
+namespace Magento\Quote\Model\Resource\Quote\Address\Rate;
 
 /**
  * Quote addresses shipping rates collection
@@ -24,7 +24,7 @@ class Collection extends \Magento\Framework\Model\Resource\Db\Collection\Abstrac
      * @param \Psr\Log\LoggerInterface $logger
      * @param \Magento\Framework\Data\Collection\Db\FetchStrategyInterface $fetchStrategy
      * @param \Magento\Framework\Event\ManagerInterface $eventManager
-     * @param \Magento\Sales\Model\Quote\Address\CarrierFactoryInterface $carrierFactory
+     * @param \Magento\Quote\Model\Quote\Address\CarrierFactoryInterface $carrierFactory
      * @param \Zend_Db_Adapter_Abstract $connection
      * @param \Magento\Framework\Model\Resource\Db\AbstractDb $resource
      */
@@ -33,7 +33,7 @@ class Collection extends \Magento\Framework\Model\Resource\Db\Collection\Abstrac
         \Psr\Log\LoggerInterface $logger,
         \Magento\Framework\Data\Collection\Db\FetchStrategyInterface $fetchStrategy,
         \Magento\Framework\Event\ManagerInterface $eventManager,
-        \Magento\Sales\Model\Quote\Address\CarrierFactoryInterface $carrierFactory,
+        \Magento\Quote\Model\Quote\Address\CarrierFactoryInterface $carrierFactory,
         $connection = null,
         \Magento\Framework\Model\Resource\Db\AbstractDb $resource = null
     ) {
@@ -48,7 +48,7 @@ class Collection extends \Magento\Framework\Model\Resource\Db\Collection\Abstrac
      */
     protected function _construct()
     {
-        $this->_init('Magento\Sales\Model\Quote\Address\Rate', 'Magento\Sales\Model\Resource\Quote\Address\Rate');
+        $this->_init('Magento\Quote\Model\Quote\Address\Rate', 'Magento\Quote\Model\Resource\Quote\Address\Rate');
     }
 
     /**
@@ -83,7 +83,7 @@ class Collection extends \Magento\Framework\Model\Resource\Db\Collection\Abstrac
     /**
      * Don't add item to the collection if only fixed are allowed and its carrier is not fixed
      *
-     * @param \Magento\Sales\Model\Quote\Address\Rate $rate
+     * @param \Magento\Quote\Model\Quote\Address\Rate $rate
      * @return $this
      */
     public function addItem(\Magento\Framework\Object $rate)
diff --git a/app/code/Magento/Sales/Model/Resource/Quote/Collection.php b/app/code/Magento/Quote/Model/Resource/Quote/Collection.php
similarity index 80%
rename from app/code/Magento/Sales/Model/Resource/Quote/Collection.php
rename to app/code/Magento/Quote/Model/Resource/Quote/Collection.php
index 7787ade44e23ad531b120296cc62ec9e813b5cd4..426caa5d17fceb6b413de08d980edaeac59a611c 100644
--- a/app/code/Magento/Sales/Model/Resource/Quote/Collection.php
+++ b/app/code/Magento/Quote/Model/Resource/Quote/Collection.php
@@ -3,7 +3,7 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Resource\Quote;
+namespace Magento\Quote\Model\Resource\Quote;
 
 /**
  * Quotes collection
@@ -19,6 +19,6 @@ class Collection extends \Magento\Framework\Model\Resource\Db\Collection\Abstrac
      */
     protected function _construct()
     {
-        $this->_init('Magento\Sales\Model\Quote', 'Magento\Sales\Model\Resource\Quote');
+        $this->_init('Magento\Quote\Model\Quote', 'Magento\Quote\Model\Resource\Quote');
     }
 }
diff --git a/app/code/Magento/Sales/Model/Resource/Quote/Item.php b/app/code/Magento/Quote/Model/Resource/Quote/Item.php
similarity index 89%
rename from app/code/Magento/Sales/Model/Resource/Quote/Item.php
rename to app/code/Magento/Quote/Model/Resource/Quote/Item.php
index fb0d424441bf7f22d0daf159e1cc91a59ed84bec..cdad5e588315e21828325ef0d351cdc73eb5b430 100644
--- a/app/code/Magento/Sales/Model/Resource/Quote/Item.php
+++ b/app/code/Magento/Quote/Model/Resource/Quote/Item.php
@@ -3,7 +3,7 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Resource\Quote;
+namespace Magento\Quote\Model\Resource\Quote;
 
 use Magento\Framework\Model\Resource\Db\AbstractDb;
 
@@ -21,7 +21,7 @@ class Item extends AbstractDb
      */
     protected function _construct()
     {
-        $this->_init('sales_quote_item', 'item_id');
+        $this->_init('quote_item', 'item_id');
     }
 
     /**
diff --git a/app/code/Magento/Sales/Model/Resource/Quote/Item/Collection.php b/app/code/Magento/Quote/Model/Resource/Quote/Item/Collection.php
similarity index 92%
rename from app/code/Magento/Sales/Model/Resource/Quote/Item/Collection.php
rename to app/code/Magento/Quote/Model/Resource/Quote/Item/Collection.php
index b63f8bd9d4da1d3204255f8e626e2e2ebcac3f00..3de177e2915b46febf6b118e1046426fe4897227 100644
--- a/app/code/Magento/Sales/Model/Resource/Quote/Item/Collection.php
+++ b/app/code/Magento/Quote/Model/Resource/Quote/Item/Collection.php
@@ -3,7 +3,7 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Resource\Quote\Item;
+namespace Magento\Quote\Model\Resource\Quote\Item;
 
 /**
  * Quote item resource collection
@@ -13,7 +13,7 @@ class Collection extends \Magento\Framework\Model\Resource\Db\Collection\Abstrac
     /**
      * Collection quote instance
      *
-     * @var \Magento\Sales\Model\Quote
+     * @var \Magento\Quote\Model\Quote
      */
     protected $_quote;
 
@@ -25,7 +25,7 @@ class Collection extends \Magento\Framework\Model\Resource\Db\Collection\Abstrac
     protected $_productIds = [];
 
     /**
-     * @var \Magento\Sales\Model\Resource\Quote\Item\Option\CollectionFactory
+     * @var \Magento\Quote\Model\Resource\Quote\Item\Option\CollectionFactory
      */
     protected $_itemOptionCollectionFactory;
 
@@ -35,7 +35,7 @@ class Collection extends \Magento\Framework\Model\Resource\Db\Collection\Abstrac
     protected $_productCollectionFactory;
 
     /**
-     * @var \Magento\Sales\Model\Quote\Config
+     * @var \Magento\Quote\Model\Quote\Config
      */
     protected $_quoteConfig;
 
@@ -44,9 +44,9 @@ class Collection extends \Magento\Framework\Model\Resource\Db\Collection\Abstrac
      * @param \Psr\Log\LoggerInterface $logger
      * @param \Magento\Framework\Data\Collection\Db\FetchStrategyInterface $fetchStrategy
      * @param \Magento\Framework\Event\ManagerInterface $eventManager
-     * @param \Magento\Sales\Model\Resource\Quote\Item\Option\CollectionFactory $itemOptionCollectionFactory
+     * @param \Magento\Quote\Model\Resource\Quote\Item\Option\CollectionFactory $itemOptionCollectionFactory
      * @param \Magento\Catalog\Model\Resource\Product\CollectionFactory $productCollectionFactory
-     * @param \Magento\Sales\Model\Quote\Config $quoteConfig
+     * @param \Magento\Quote\Model\Quote\Config $quoteConfig
      * @param \Zend_Db_Adapter_Abstract $connection
      * @param \Magento\Framework\Model\Resource\Db\AbstractDb $resource
      */
@@ -55,9 +55,9 @@ class Collection extends \Magento\Framework\Model\Resource\Db\Collection\Abstrac
         \Psr\Log\LoggerInterface $logger,
         \Magento\Framework\Data\Collection\Db\FetchStrategyInterface $fetchStrategy,
         \Magento\Framework\Event\ManagerInterface $eventManager,
-        \Magento\Sales\Model\Resource\Quote\Item\Option\CollectionFactory $itemOptionCollectionFactory,
+        \Magento\Quote\Model\Resource\Quote\Item\Option\CollectionFactory $itemOptionCollectionFactory,
         \Magento\Catalog\Model\Resource\Product\CollectionFactory $productCollectionFactory,
-        \Magento\Sales\Model\Quote\Config $quoteConfig,
+        \Magento\Quote\Model\Quote\Config $quoteConfig,
         $connection = null,
         \Magento\Framework\Model\Resource\Db\AbstractDb $resource = null
     ) {
@@ -74,7 +74,7 @@ class Collection extends \Magento\Framework\Model\Resource\Db\Collection\Abstrac
      */
     protected function _construct()
     {
-        $this->_init('Magento\Sales\Model\Quote\Item', 'Magento\Sales\Model\Resource\Quote\Item');
+        $this->_init('Magento\Quote\Model\Quote\Item', 'Magento\Quote\Model\Resource\Quote\Item');
     }
 
     /**
@@ -90,7 +90,7 @@ class Collection extends \Magento\Framework\Model\Resource\Db\Collection\Abstrac
     /**
      * Set Quote object to Collection
      *
-     * @param \Magento\Sales\Model\Quote $quote
+     * @param \Magento\Quote\Model\Quote $quote
      * @return $this
      */
     public function setQuote($quote)
@@ -183,6 +183,7 @@ class Collection extends \Magento\Framework\Model\Resource\Db\Collection\Abstrac
      * Add products to items and item options
      *
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _assignProducts()
     {
diff --git a/app/code/Magento/Sales/Model/Resource/Quote/Item/Option.php b/app/code/Magento/Quote/Model/Resource/Quote/Item/Option.php
similarity index 78%
rename from app/code/Magento/Sales/Model/Resource/Quote/Item/Option.php
rename to app/code/Magento/Quote/Model/Resource/Quote/Item/Option.php
index 824538d29b83bf9ab4285088375739a3c9f3ea65..979e8fb565dc0d498f4cebf12a2cfb71960ba07a 100644
--- a/app/code/Magento/Sales/Model/Resource/Quote/Item/Option.php
+++ b/app/code/Magento/Quote/Model/Resource/Quote/Item/Option.php
@@ -3,7 +3,7 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Resource\Quote\Item;
+namespace Magento\Quote\Model\Resource\Quote\Item;
 
 /**
  * Item option resource model
@@ -19,6 +19,6 @@ class Option extends \Magento\Framework\Model\Resource\Db\AbstractDb
      */
     protected function _construct()
     {
-        $this->_init('sales_quote_item_option', 'option_id');
+        $this->_init('quote_item_option', 'option_id');
     }
 }
diff --git a/app/code/Magento/Sales/Model/Resource/Quote/Item/Option/Collection.php b/app/code/Magento/Quote/Model/Resource/Quote/Item/Option/Collection.php
similarity index 94%
rename from app/code/Magento/Sales/Model/Resource/Quote/Item/Option/Collection.php
rename to app/code/Magento/Quote/Model/Resource/Quote/Item/Option/Collection.php
index 3fe5f6bef092d640c318ca78ff479205c6a92754..453c12762eb89bec07975360e854be6f7b5e5f94 100644
--- a/app/code/Magento/Sales/Model/Resource/Quote/Item/Option/Collection.php
+++ b/app/code/Magento/Quote/Model/Resource/Quote/Item/Option/Collection.php
@@ -3,9 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Resource\Quote\Item\Option;
+namespace Magento\Quote\Model\Resource\Quote\Item\Option;
 
-use Magento\Sales\Model\Quote\Item;
+use Magento\Quote\Model\Quote\Item;
 
 /**
  * Item option collection
@@ -35,7 +35,7 @@ class Collection extends \Magento\Framework\Model\Resource\Db\Collection\Abstrac
      */
     protected function _construct()
     {
-        $this->_init('Magento\Sales\Model\Quote\Item\Option', 'Magento\Sales\Model\Resource\Quote\Item\Option');
+        $this->_init('Magento\Quote\Model\Quote\Item\Option', 'Magento\Quote\Model\Resource\Quote\Item\Option');
     }
 
     /**
diff --git a/app/code/Magento/Sales/Model/Resource/Quote/Payment.php b/app/code/Magento/Quote/Model/Resource/Quote/Payment.php
similarity index 87%
rename from app/code/Magento/Sales/Model/Resource/Quote/Payment.php
rename to app/code/Magento/Quote/Model/Resource/Quote/Payment.php
index fbd9bff880153170783e73a3c9f825d95d0badd1..e1ee7dc0e1aae3f22194ecba23dbd2bc16b975a8 100644
--- a/app/code/Magento/Sales/Model/Resource/Quote/Payment.php
+++ b/app/code/Magento/Quote/Model/Resource/Quote/Payment.php
@@ -3,7 +3,7 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Resource\Quote;
+namespace Magento\Quote\Model\Resource\Quote;
 
 use Magento\Framework\Model\Resource\Db\AbstractDb;
 
@@ -35,6 +35,6 @@ class Payment extends AbstractDb
      */
     protected function _construct()
     {
-        $this->_init('sales_quote_payment', 'payment_id');
+        $this->_init('quote_payment', 'payment_id');
     }
 }
diff --git a/app/code/Magento/Sales/Model/Resource/Quote/Payment/Collection.php b/app/code/Magento/Quote/Model/Resource/Quote/Payment/Collection.php
similarity index 91%
rename from app/code/Magento/Sales/Model/Resource/Quote/Payment/Collection.php
rename to app/code/Magento/Quote/Model/Resource/Quote/Payment/Collection.php
index 2c1f75c7ab14740d34ec36eac5aaea696a74ec65..c1a5fdc4fbf32a41ee44bbbfaf842e30252e7768 100644
--- a/app/code/Magento/Sales/Model/Resource/Quote/Payment/Collection.php
+++ b/app/code/Magento/Quote/Model/Resource/Quote/Payment/Collection.php
@@ -3,7 +3,7 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Resource\Quote\Payment;
+namespace Magento\Quote\Model\Resource\Quote\Payment;
 
 /**
  * Quote payments collection
@@ -36,7 +36,7 @@ class Collection extends \Magento\Framework\Model\Resource\Db\Collection\Abstrac
      */
     protected function _construct()
     {
-        $this->_init('Magento\Sales\Model\Quote\Payment', 'Magento\Sales\Model\Resource\Quote\Payment');
+        $this->_init('Magento\Quote\Model\Quote\Payment', 'Magento\Quote\Model\Resource\Quote\Payment');
     }
 
     /**
diff --git a/app/code/Magento/Quote/Model/Resource/Setup.php b/app/code/Magento/Quote/Model/Resource/Setup.php
new file mode 100644
index 0000000000000000000000000000000000000000..cce7667a77d052c733c5bcf441d9ae0e2ea41d5b
--- /dev/null
+++ b/app/code/Magento/Quote/Model/Resource/Setup.php
@@ -0,0 +1,185 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+namespace Magento\Quote\Model\Resource;
+
+/**
+ * Setup Model of Sales Module
+ */
+class Setup extends \Magento\Eav\Model\Entity\Setup
+{
+    /**
+     * @var \Magento\Framework\App\Config\ScopeConfigInterface
+     */
+    protected $_config;
+
+    /**
+     * @var \Magento\Framework\Encryption\EncryptorInterface
+     */
+    protected $_encryptor;
+
+    /**
+     * @param \Magento\Eav\Model\Entity\Setup\Context $context
+     * @param string $resourceName
+     * @param \Magento\Framework\App\CacheInterface $cache
+     * @param \Magento\Eav\Model\Resource\Entity\Attribute\Group\CollectionFactory $attrGroupCollectionFactory
+     * @param \Magento\Framework\App\Config\ScopeConfigInterface $config
+     * @param string $moduleName
+     * @param string $connectionName
+     */
+    public function __construct(
+        \Magento\Eav\Model\Entity\Setup\Context $context,
+        $resourceName,
+        \Magento\Framework\App\CacheInterface $cache,
+        \Magento\Eav\Model\Resource\Entity\Attribute\Group\CollectionFactory $attrGroupCollectionFactory,
+        \Magento\Framework\App\Config\ScopeConfigInterface $config,
+        $moduleName = 'Magento_Quote',
+        $connectionName = \Magento\Framework\Module\Updater\SetupInterface::DEFAULT_SETUP_CONNECTION
+    ) {
+        $this->_config = $config;
+        $this->_encryptor = $context->getEncryptor();
+        parent::__construct(
+            $context,
+            $resourceName,
+            $cache,
+            $attrGroupCollectionFactory,
+            $moduleName,
+            $connectionName
+        );
+    }
+
+    /**
+     * List of entities converted from EAV to flat data structure
+     *
+     * @var $_flatEntityTables array
+     */
+    protected $_flatEntityTables = [
+        'quote' => 'quote',
+        'quote_item' => 'quote_item',
+        'quote_address' => 'quote_address',
+        'quote_address_item' => 'quote_address_item',
+        'quote_address_rate' => 'quote_shipping_rate',
+        'quote_payment' => 'quote_payment',
+    ];
+
+    /**
+     * Check if table exist for flat entity
+     *
+     * @param string $table
+     * @return bool
+     */
+    protected function _flatTableExist($table)
+    {
+        $tablesList = $this->getConnection()->listTables();
+        return in_array(strtoupper($this->getTable($table)), array_map('strtoupper', $tablesList));
+    }
+
+    /**
+     * Add entity attribute. Overwritten for flat entities support
+     *
+     * @param int|string $entityTypeId
+     * @param string $code
+     * @param array $attr
+     * @return $this
+     */
+    public function addAttribute($entityTypeId, $code, array $attr)
+    {
+        if (isset(
+                $this->_flatEntityTables[$entityTypeId]
+            ) && $this->_flatTableExist(
+                $this->_flatEntityTables[$entityTypeId]
+            )
+        ) {
+            $this->_addFlatAttribute($this->_flatEntityTables[$entityTypeId], $code, $attr);
+        } else {
+            parent::addAttribute($entityTypeId, $code, $attr);
+        }
+        return $this;
+    }
+
+    /**
+     * Add attribute as separate column in the table
+     *
+     * @param string $table
+     * @param string $attribute
+     * @param array $attr
+     * @return $this
+     */
+    protected function _addFlatAttribute($table, $attribute, $attr)
+    {
+        $tableInfo = $this->getConnection()->describeTable($this->getTable($table));
+        if (isset($tableInfo[$attribute])) {
+            return $this;
+        }
+        $columnDefinition = $this->_getAttributeColumnDefinition($attribute, $attr);
+        $this->getConnection()->addColumn($this->getTable($table), $attribute, $columnDefinition);
+        return $this;
+    }
+
+    /**
+     * Retrieve definition of column for create in flat table
+     *
+     * @param string $code
+     * @param array $data
+     * @return array
+     */
+    protected function _getAttributeColumnDefinition($code, $data)
+    {
+        // Convert attribute type to column info
+        $data['type'] = isset($data['type']) ? $data['type'] : 'varchar';
+        $type = null;
+        $length = null;
+        switch ($data['type']) {
+            case 'timestamp':
+                $type = \Magento\Framework\DB\Ddl\Table::TYPE_TIMESTAMP;
+                break;
+            case 'datetime':
+                $type = \Magento\Framework\DB\Ddl\Table::TYPE_DATETIME;
+                break;
+            case 'decimal':
+                $type = \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL;
+                $length = '12,4';
+                break;
+            case 'int':
+                $type = \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER;
+                break;
+            case 'text':
+                $type = \Magento\Framework\DB\Ddl\Table::TYPE_TEXT;
+                $length = 65536;
+                break;
+            case 'char':
+            case 'varchar':
+                $type = \Magento\Framework\DB\Ddl\Table::TYPE_TEXT;
+                $length = 255;
+                break;
+        }
+        if ($type !== null) {
+            $data['type'] = $type;
+            $data['length'] = $length;
+        }
+
+        $data['nullable'] = isset($data['required']) ? !$data['required'] : true;
+        $data['comment'] = isset($data['comment']) ? $data['comment'] : ucwords(str_replace('_', ' ', $code));
+        return $data;
+    }
+
+    /**
+     * Get config model
+     *
+     * @return \Magento\Framework\App\Config\ScopeConfigInterface
+     */
+    public function getConfigModel()
+    {
+        return $this->_config;
+    }
+
+    /**
+     * @return \Magento\Framework\Encryption\EncryptorInterface
+     */
+    public function getEncryptor()
+    {
+        return $this->_encryptor;
+    }
+}
diff --git a/app/code/Magento/Quote/README.md b/app/code/Magento/Quote/README.md
new file mode 100644
index 0000000000000000000000000000000000000000..0a026ca9108a163722cb2c803159caa829c384b7
--- /dev/null
+++ b/app/code/Magento/Quote/README.md
@@ -0,0 +1,11 @@
+# Overview
+## Purpose of module
+
+
+# Deployment
+## System requirements
+
+The Magento_Quote module does not have any specific system requirements.
+
+## Install
+The Magento_Quote module is installed automatically (using the native Magento install mechanism) without any additional actions.
diff --git a/app/code/Magento/Quote/composer.json b/app/code/Magento/Quote/composer.json
new file mode 100644
index 0000000000000000000000000000000000000000..0d64fd35ee6ad41bec792cc50caa58ae629dbc65
--- /dev/null
+++ b/app/code/Magento/Quote/composer.json
@@ -0,0 +1,35 @@
+{
+  "name": "magento/module-quote",
+  "description": "N/A",
+  "require": {
+      "php": "~5.4.11|~5.5.0",
+      "magento/module-store": "0.42.0-beta4",
+      "magento/module-catalog": "0.42.0-beta4",
+      "magento/module-customer": "0.42.0-beta4",
+      "magento/module-authorization": "0.42.0-beta4",
+      "magento/module-payment": "0.42.0-beta4",
+      "magento/module-core": "0.42.0-beta4",
+      "magento/module-sales": "0.42.0-beta4",
+      "magento/module-backend": "0.42.0-beta4",
+      "magento/module-directory": "0.42.0-beta4",
+      "magento/module-eav": "0.42.0-beta4",
+      "magento/module-tax": "0.42.0-beta4",
+      "magento/module-catalog-inventory": "0.42.0-beta4",
+      "magento/framework": "0.42.0-beta4",
+      "magento/magento-composer-installer": "*"
+  },
+  "type": "magento2-module",
+  "version": "0.42.0-beta4",
+  "license": [
+    "OSL-3.0",
+    "AFL-3.0"
+  ],
+  "extra": {
+    "map": [
+      [
+        "*",
+        "Magento/Quote"
+      ]
+    ]
+  }
+}
diff --git a/app/code/Magento/Quote/data/quote_setup/data-install-2.0.0.php b/app/code/Magento/Quote/data/quote_setup/data-install-2.0.0.php
new file mode 100644
index 0000000000000000000000000000000000000000..a2103b219e048a5c58b8d885595f6209626267ab
--- /dev/null
+++ b/app/code/Magento/Quote/data/quote_setup/data-install-2.0.0.php
@@ -0,0 +1,23 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+
+/** @var $this \Magento\Quote\Model\Resource\Setup */
+
+/**
+ * Install eav entity types to the eav/entity_type table
+ */
+
+$attributes = [
+    'vat_id' => ['type' => \Magento\Framework\DB\Ddl\Table::TYPE_TEXT],
+    'vat_is_valid' => ['type' => \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT],
+    'vat_request_id' => ['type' => \Magento\Framework\DB\Ddl\Table::TYPE_TEXT],
+    'vat_request_date' => ['type' => \Magento\Framework\DB\Ddl\Table::TYPE_TEXT],
+    'vat_request_success' => ['type' => \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT],
+];
+
+foreach ($attributes as $attributeCode => $attributeParams) {
+    $this->addAttribute('quote_address', $attributeCode, $attributeParams);
+}
diff --git a/app/code/Magento/Quote/etc/adminhtml/events.xml b/app/code/Magento/Quote/etc/adminhtml/events.xml
new file mode 100644
index 0000000000000000000000000000000000000000..3e7da8774316969464e35f0f5d98bbd6da07d15e
--- /dev/null
+++ b/app/code/Magento/Quote/etc/adminhtml/events.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0"?>
+<!--
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+-->
+<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../lib/internal/Magento/Framework/Event/etc/events.xsd">
+    <event name="customer_save_after_data_object">
+        <observer name="customer" instance="Magento\Quote\Model\Observer\Backend\CustomerQuote" method="dispatch" />
+    </event>
+</config>
diff --git a/app/code/Magento/Quote/etc/di.xml b/app/code/Magento/Quote/etc/di.xml
new file mode 100644
index 0000000000000000000000000000000000000000..072334a39d2fc9961d7968732dd09abffabea23e
--- /dev/null
+++ b/app/code/Magento/Quote/etc/di.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0"?>
+<!--
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+-->
+<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../lib/internal/Magento/Framework/ObjectManager/etc/config.xsd">
+    <type name="Magento\Framework\Module\Updater\SetupFactory">
+        <arguments>
+            <argument name="resourceTypes" xsi:type="array">
+                <item name="quote_setup" xsi:type="string">Magento\Quote\Model\Resource\Setup</item>
+            </argument>
+        </arguments>
+    </type>
+</config>
diff --git a/app/code/Magento/Quote/etc/fieldset.xml b/app/code/Magento/Quote/etc/fieldset.xml
new file mode 100644
index 0000000000000000000000000000000000000000..56ace3faf1e755e1edd9b7c6912bcf280345755f
--- /dev/null
+++ b/app/code/Magento/Quote/etc/fieldset.xml
@@ -0,0 +1,321 @@
+<?xml version="1.0"?>
+<!--
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+-->
+<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+        xsi:noNamespaceSchemaLocation="../../../../../lib/internal/Magento/Framework/Object/etc/fieldset.xsd">
+    <scope id="global">
+        <fieldset id="quote_convert_address">
+            <field name="weight">
+                <aspect name="to_order" />
+            </field>
+            <field name="address_type">
+                <aspect name="to_order" />
+            </field>
+            <field name="customer_id">
+                <aspect name="to_order" />
+            </field>
+            <field name="customer_address_id">
+                <aspect name="to_order" />
+            </field>
+            <field name="store_id">
+                <aspect name="to_order" />
+            </field>
+            <field name="shipping_method">
+                <aspect name="to_order" />
+            </field>
+            <field name="shipping_description">
+                <aspect name="to_order" />
+            </field>
+            <field name="shipping_rate">
+                <aspect name="to_order" />
+            </field>
+            <field name="subtotal">
+                <aspect name="to_order" />
+            </field>
+            <field name="tax_amount">
+                <aspect name="to_order" />
+            </field>
+            <field name="tax_string">
+                <aspect name="to_order" />
+            </field>
+            <field name="discount_amount">
+                <aspect name="to_order" />
+            </field>
+            <field name="shipping_amount">
+                <aspect name="to_order" />
+            </field>
+            <field name="shipping_incl_tax">
+                <aspect name="to_order" />
+            </field>
+            <field name="shipping_tax_amount">
+                <aspect name="to_order" />
+            </field>
+            <field name="custbalance_amount">
+                <aspect name="to_order" />
+            </field>
+            <field name="grand_total">
+                <aspect name="to_order" />
+            </field>
+            <field name="base_subtotal">
+                <aspect name="to_order" />
+            </field>
+            <field name="base_tax_amount">
+                <aspect name="to_order" />
+            </field>
+            <field name="base_discount_amount">
+                <aspect name="to_order" />
+            </field>
+            <field name="base_shipping_amount">
+                <aspect name="to_order" />
+            </field>
+            <field name="base_shipping_incl_tax">
+                <aspect name="to_order" />
+            </field>
+            <field name="base_shipping_tax_amount">
+                <aspect name="to_order" />
+            </field>
+            <field name="base_custbalance_amount">
+                <aspect name="to_order" />
+            </field>
+            <field name="base_grand_total">
+                <aspect name="to_order" />
+            </field>
+            <field name="hidden_tax_amount">
+                <aspect name="to_order" />
+            </field>
+            <field name="base_hidden_tax_amount">
+                <aspect name="to_order" />
+            </field>
+            <field name="shipping_hidden_tax_amount">
+                <aspect name="to_order" />
+            </field>
+            <field name="base_shipping_hidden_tax_amount">
+                <aspect name="to_order" />
+            </field>
+            <field name="prefix">
+                <aspect name="to_order" targetField="customer_prefix"/>
+                <aspect name="to_order_address" />
+                <aspect name="to_customer_address" />
+            </field>
+            <field name="firstname">
+                <aspect name="to_order" targetField="customer_firstname"/>
+                <aspect name="to_order_address"/>
+                <aspect name="to_customer_address" />
+            </field>
+            <field name="middlename">
+                <aspect name="to_order" targetField="customer_middlename"/>
+                <aspect name="to_order_address"/>
+                <aspect name="to_customer_address" />
+            </field>
+            <field name="lastname">
+                <aspect name="to_order" targetField="customer_lastname"/>
+                <aspect name="to_order_address"/>
+                <aspect name="to_customer_address" />
+            </field>
+            <field name="suffix">
+                <aspect name="to_order" targetField="customer_suffix"/>
+                <aspect name="to_order_address"/>
+                <aspect name="to_customer_address" />
+            </field>
+            <field name="company">
+                <aspect name="to_order_address" />
+                <aspect name="to_customer_address" />
+            </field>
+            <field name="street">
+                <aspect name="to_order_address" />
+                <aspect name="to_customer_address" />
+            </field>
+            <field name="city">
+                <aspect name="to_order_address" />
+                <aspect name="to_customer_address" />
+            </field>
+            <field name="region">
+                <aspect name="to_order_address" />
+                <aspect name="to_customer_address" />
+            </field>
+            <field name="region_id">
+                <aspect name="to_order_address" />
+                <aspect name="to_customer_address" />
+            </field>
+            <field name="postcode">
+                <aspect name="to_order_address" />
+                <aspect name="to_customer_address" />
+            </field>
+            <field name="country_id">
+                <aspect name="to_order_address" />
+                <aspect name="to_customer_address" />
+            </field>
+            <field name="telephone">
+                <aspect name="to_order_address" />
+                <aspect name="to_customer_address" />
+            </field>
+            <field name="fax">
+                <aspect name="to_order_address" />
+                <aspect name="to_customer_address" />
+            </field>
+            <field name="email">
+                <aspect name="to_order" targetField="customer_email"/>
+                <aspect name="to_order_address" />
+                <aspect name="to_customer_address" />
+            </field>
+            <field name="customer_address_id">
+                <aspect name="to_order_address" />
+            </field>
+        </fieldset>
+        <fieldset id="quote_convert_item">
+            <field name="sku">
+                <aspect name="to_order_item" />
+            </field>
+            <field name="name">
+                <aspect name="to_order_item" />
+            </field>
+            <field name="description">
+                <aspect name="to_order_item" />
+            </field>
+            <field name="weight">
+                <aspect name="to_order_item" />
+            </field>
+            <field name="is_qty_decimal">
+                <aspect name="to_order_item" />
+            </field>
+            <field name="qty">
+                <aspect name="to_order_item" targetField="qty_ordered" />
+            </field>
+            <field name="id">
+                <aspect name="to_order_item" targetField="quote_item_id" />
+            </field>
+            <field name="is_virtual">
+                <aspect name="to_order_item" />
+            </field>
+            <field name="original_price">
+                <aspect name="to_order_item" />
+            </field>
+            <field name="applied_rule_ids">
+                <aspect name="to_order_item" />
+            </field>
+            <field name="additional_data">
+                <aspect name="to_order_item" />
+            </field>
+            <field name="calculation_price">
+                <aspect name="to_order_item" targetField="price" />
+            </field>
+            <field name="base_calculation_price">
+                <aspect name="to_order_item" targetField="base_price" />
+            </field>
+            <field name="tax_percent">
+                <aspect name="to_order_item" />
+            </field>
+            <field name="tax_amount">
+                <aspect name="to_order_item" />
+            </field>
+            <field name="tax_before_discount">
+                <aspect name="to_order_item" />
+            </field>
+            <field name="base_tax_before_discount">
+                <aspect name="to_order_item" />
+            </field>
+            <field name="tax_string">
+                <aspect name="to_order_item" />
+            </field>
+            <field name="row_weight">
+                <aspect name="to_order_item" />
+            </field>
+            <field name="row_total">
+                <aspect name="to_order_item" />
+            </field>
+            <field name="base_original_price">
+                <aspect name="to_order_item" />
+            </field>
+            <field name="base_tax_amount">
+                <aspect name="to_order_item" />
+            </field>
+            <field name="base_row_total">
+                <aspect name="to_order_item" />
+            </field>
+            <field name="discount_percent">
+                <aspect name="to_order_item_discount" />
+            </field>
+            <field name="discount_amount">
+                <aspect name="to_order_item_discount" />
+            </field>
+            <field name="base_discount_amount">
+                <aspect name="to_order_item_discount" />
+            </field>
+            <field name="base_cost">
+                <aspect name="to_order_item" />
+            </field>
+            <field name="store_id">
+                <aspect name="to_order_item" />
+            </field>
+            <field name="hidden_tax_amount">
+                <aspect name="to_order_item" />
+            </field>
+            <field name="base_hidden_tax_amount">
+                <aspect name="to_order_item" />
+            </field>
+            <field name="product_id">
+                <aspect name="to_order_item" />
+            </field>
+            <field name="product_type">
+                <aspect name="to_order_item" />
+            </field>
+            <field name="backorders">
+                <aspect name="to_order_item" targetField="qty_backordered" />
+            </field>
+        </fieldset>
+        <fieldset id="quote_convert_payment">
+            <field name="method">
+                <aspect name="to_order_payment" />
+            </field>
+            <field name="customer_payment_id">
+                <aspect name="to_order_payment" />
+            </field>
+            <field name="additional_data">
+                <aspect name="to_order_payment" />
+            </field>
+            <field name="additional_information">
+                <aspect name="to_order_payment" />
+            </field>
+            <field name="po_number">
+                <aspect name="to_order_payment" />
+            </field>
+            <field name="cc_type">
+                <aspect name="to_order_payment" />
+            </field>
+            <field name="cc_number_enc">
+                <aspect name="to_order_payment" />
+            </field>
+            <field name="cc_last_4">
+                <aspect name="to_order_payment" />
+            </field>
+            <field name="cc_owner">
+                <aspect name="to_order_payment" />
+            </field>
+            <field name="cc_exp_month">
+                <aspect name="to_order_payment" />
+            </field>
+            <field name="cc_exp_year">
+                <aspect name="to_order_payment" />
+            </field>
+            <field name="cc_number">
+                <aspect name="to_order_payment" />
+            </field>
+            <field name="cc_cid">
+                <aspect name="to_order_payment" />
+            </field>
+            <field name="cc_ss_issue">
+                <aspect name="to_order_payment" />
+            </field>
+            <field name="cc_ss_start_month">
+                <aspect name="to_order_payment" />
+            </field>
+            <field name="cc_ss_start_year">
+                <aspect name="to_order_payment" />
+            </field>
+        </fieldset>
+    </scope>
+</config>
\ No newline at end of file
diff --git a/app/code/Magento/Quote/etc/frontend/events.xml b/app/code/Magento/Quote/etc/frontend/events.xml
new file mode 100644
index 0000000000000000000000000000000000000000..8c38cda0dbe8436fc9d64a6fed11f2d2a8582b96
--- /dev/null
+++ b/app/code/Magento/Quote/etc/frontend/events.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0"?>
+<!--
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+-->
+<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../lib/internal/Magento/Framework/Event/etc/events.xsd">
+    <event name="sales_quote_address_collect_totals_before">
+        <observer name="sales_customer_validate_vat_number" instance="Magento\Quote\Model\Observer\Frontend\Quote\Address\CollectTotals" method="dispatch" />
+    </event>
+</config>
diff --git a/app/code/Magento/Quote/etc/module.xml b/app/code/Magento/Quote/etc/module.xml
new file mode 100644
index 0000000000000000000000000000000000000000..a8d932efe8d0091326d88c5b6c729b628b5e5a81
--- /dev/null
+++ b/app/code/Magento/Quote/etc/module.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0"?>
+<!--
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+-->
+<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../lib/internal/Magento/Framework/Module/etc/module.xsd">
+    <module name="Magento_Quote" schema_version="2.0.0">
+    </module>
+</config>
diff --git a/app/code/Magento/Quote/etc/sales.xml b/app/code/Magento/Quote/etc/sales.xml
new file mode 100644
index 0000000000000000000000000000000000000000..83aab3259f7886b13caf6a04f16080e40173a6a9
--- /dev/null
+++ b/app/code/Magento/Quote/etc/sales.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0"?>
+<!--
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+-->
+<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../Sales/etc/sales.xsd">
+    <section name="quote">
+        <group name="totals">
+            <item name="subtotal" instance="Magento\Quote\Model\Quote\Address\Total\Subtotal" sort_order="100"/>
+            <item name="shipping" instance="Magento\Quote\Model\Quote\Address\Total\Shipping" sort_order="250"/>
+            <item name="grand_total" instance="Magento\Quote\Model\Quote\Address\Total\Grand" sort_order="550"/>
+        </group>
+    </section>
+</config>
diff --git a/app/code/Magento/Quote/i18n/de_DE.csv b/app/code/Magento/Quote/i18n/de_DE.csv
new file mode 100644
index 0000000000000000000000000000000000000000..b7353fbfd24d1d75514868d3eb0fe7f0f9c90ae0
--- /dev/null
+++ b/app/code/Magento/Quote/i18n/de_DE.csv
@@ -0,0 +1,31 @@
+Subtotal,Zwischensumme
+Discount,Rabatt
+"Grand Total",Gesamtbetrag
+Tax,Steuer
+Shipping,Lieferung
+"Store Credit","Guthaben aufbewahren"
+"An item option with code %1 already exists.","An item option with code %1 already exists."
+"Discount (%1)","Discount (%1)"
+"Shipping & Handling","Lieferung und Verarbeitung"
+"Sorry, but items with payment agreements must be ordered one at a time To continue, please remove or buy the other items in your cart, then order this item by itself.","Sorry, but items with payment agreements must be ordered one at a time To continue, please remove or buy the other items in your cart, then order this item by itself."
+"We found an invalid request for adding product to quote.","We found an invalid request for adding product to quote."
+"This is the wrong quote item id to update configuration.","This is the wrong quote item id to update configuration."
+"This shipping method is not available. To use this shipping method, please contact us.","This shipping method is not available. To use this shipping method, please contact us."
+"The address model is not defined.","The address model is not defined."
+"The address total model should be extended from \Magento\Quote\Model\Quote\Address\Total\AbstractTotal.","Das adresse total model sollte von \Magento\Quote\Model\Quote\Address\Total\AbstractTotal erweitert werden."
+"Subscription Items","Subscription Items"
+"Regular Payment","Reguläre Zahlung"
+"Shipping & Handling (%1)","Shipping & Handling (%1)"
+"We found an invalid item option format.","We found an invalid item option format."
+"Item qty declaration error","Item qty declaration error"
+"Some of the products below do not have all the required options.","Some of the products below do not have all the required options."
+"Something went wrong during the item options declaration.","Something went wrong during the item options declaration."
+"We found an item options declaration error.","We found an item options declaration error."
+"Some of the selected options are not currently available.","Some of the selected options are not currently available."
+"Selected option(s) or their combination is not currently available.","Selected option(s) or their combination is not currently available."
+"Some item options or their combination are not currently available.","Some item options or their combination are not currently available."
+"The requested Payment Method is not available.","Die angeforderte Zahlungsart ist nicht verfügbar."
+"Please check the shipping address information. %1","Please check the shipping address information. %1"
+"Please specify a shipping method.","Bitte geben Sie eine Versandart an."
+"Please check the billing address information. %1","Please check the billing address information. %1"
+"Please select a valid payment method.","Bitte wählen Sie eine gültige Zahlungsmethode."
diff --git a/app/code/Magento/Quote/i18n/en_US.csv b/app/code/Magento/Quote/i18n/en_US.csv
new file mode 100644
index 0000000000000000000000000000000000000000..9e7925f16e2e240225c9d4666ff4bd57d2eed76e
--- /dev/null
+++ b/app/code/Magento/Quote/i18n/en_US.csv
@@ -0,0 +1,31 @@
+Subtotal,Subtotal
+Discount,Discount
+"Grand Total","Grand Total"
+Tax,Tax
+Shipping,Shipping
+"Store Credit","Store Credit"
+"An item option with code %1 already exists.","An item option with code %1 already exists."
+"Discount (%1)","Discount (%1)"
+"Shipping & Handling","Shipping & Handling"
+"Sorry, but items with payment agreements must be ordered one at a time To continue, please remove or buy the other items in your cart, then order this item by itself.","Sorry, but items with payment agreements must be ordered one at a time To continue, please remove or buy the other items in your cart, then order this item by itself."
+"We found an invalid request for adding product to quote.","We found an invalid request for adding product to quote."
+"This is the wrong quote item id to update configuration.","This is the wrong quote item id to update configuration."
+"This shipping method is not available. To use this shipping method, please contact us.","This shipping method is not available. To use this shipping method, please contact us."
+"The address model is not defined.","The address model is not defined."
+"The address total model should be extended from \Magento\Quote\Model\Quote\Address\Total\AbstractTotal.","The address total model should be extended from \Magento\Quote\Model\Quote\Address\Total\AbstractTotal."
+"Subscription Items","Subscription Items"
+"Regular Payment","Regular Payment"
+"Shipping & Handling (%1)","Shipping & Handling (%1)"
+"We found an invalid item option format.","We found an invalid item option format."
+"Item qty declaration error","Item qty declaration error"
+"Some of the products below do not have all the required options.","Some of the products below do not have all the required options."
+"Something went wrong during the item options declaration.","Something went wrong during the item options declaration."
+"We found an item options declaration error.","We found an item options declaration error."
+"Some of the selected options are not currently available.","Some of the selected options are not currently available."
+"Selected option(s) or their combination is not currently available.","Selected option(s) or their combination is not currently available."
+"Some item options or their combination are not currently available.","Some item options or their combination are not currently available."
+"The requested Payment Method is not available.","The requested Payment Method is not available."
+"Please check the shipping address information. %1","Please check the shipping address information. %1"
+"Please specify a shipping method.","Please specify a shipping method."
+"Please check the billing address information. %1","Please check the billing address information. %1"
+"Please select a valid payment method.","Please select a valid payment method."
diff --git a/app/code/Magento/Quote/i18n/es_ES.csv b/app/code/Magento/Quote/i18n/es_ES.csv
new file mode 100644
index 0000000000000000000000000000000000000000..43199a2ca0c3c925e39db977dc9e524ed0c28b9f
--- /dev/null
+++ b/app/code/Magento/Quote/i18n/es_ES.csv
@@ -0,0 +1,31 @@
+Subtotal,Subtotal
+Discount,Descuento
+"Grand Total","Suma total"
+Tax,Impuestos
+Shipping,Transporte
+"Store Credit","Crédito de tienda"
+"An item option with code %1 already exists.","An item option with code %1 already exists."
+"Discount (%1)","Discount (%1)"
+"Shipping & Handling","Manipulación y expedición"
+"Sorry, but items with payment agreements must be ordered one at a time To continue, please remove or buy the other items in your cart, then order this item by itself.","Sorry, but items with payment agreements must be ordered one at a time To continue, please remove or buy the other items in your cart, then order this item by itself."
+"We found an invalid request for adding product to quote.","We found an invalid request for adding product to quote."
+"This is the wrong quote item id to update configuration.","This is the wrong quote item id to update configuration."
+"This shipping method is not available. To use this shipping method, please contact us.","This shipping method is not available. To use this shipping method, please contact us."
+"The address model is not defined.","The address model is not defined."
+"The address total model should be extended from \Magento\Quote\Model\Quote\Address\Total\AbstractTotal.","El modelo de dirección total debería extenderse desde \Magento\Quote\Model\Quote\Address\Total\AbstractTotal."
+"Subscription Items","Subscription Items"
+"Regular Payment","Pago ordinario"
+"Shipping & Handling (%1)","Shipping & Handling (%1)"
+"We found an invalid item option format.","We found an invalid item option format."
+"Item qty declaration error","Item qty declaration error"
+"Some of the products below do not have all the required options.","Some of the products below do not have all the required options."
+"Something went wrong during the item options declaration.","Something went wrong during the item options declaration."
+"We found an item options declaration error.","We found an item options declaration error."
+"Some of the selected options are not currently available.","Some of the selected options are not currently available."
+"Selected option(s) or their combination is not currently available.","Selected option(s) or their combination is not currently available."
+"Some item options or their combination are not currently available.","Some item options or their combination are not currently available."
+"The requested Payment Method is not available.","El método de pago solicitado no está disponible."
+"Please check the shipping address information. %1","Please check the shipping address information. %1"
+"Please specify a shipping method.","Por favor, especifique un modo de envío."
+"Please check the billing address information. %1","Please check the billing address information. %1"
+"Please select a valid payment method.","Por favor, seleccione un modo de pago válido."
diff --git a/app/code/Magento/Quote/i18n/fr_FR.csv b/app/code/Magento/Quote/i18n/fr_FR.csv
new file mode 100644
index 0000000000000000000000000000000000000000..2c6e933738c17f8f463db4a66ad51a779af5d4f2
--- /dev/null
+++ b/app/code/Magento/Quote/i18n/fr_FR.csv
@@ -0,0 +1,31 @@
+Subtotal,Sous-total
+Discount,Discount
+"Grand Total","Total final"
+Tax,Taxe
+Shipping,Envoi
+"Store Credit","Crédits de la boutique"
+"An item option with code %1 already exists.","An item option with code %1 already exists."
+"Discount (%1)","Discount (%1)"
+"Shipping & Handling","Expédition et traitement"
+"Sorry, but items with payment agreements must be ordered one at a time To continue, please remove or buy the other items in your cart, then order this item by itself.","Sorry, but items with payment agreements must be ordered one at a time To continue, please remove or buy the other items in your cart, then order this item by itself."
+"We found an invalid request for adding product to quote.","We found an invalid request for adding product to quote."
+"This is the wrong quote item id to update configuration.","This is the wrong quote item id to update configuration."
+"This shipping method is not available. To use this shipping method, please contact us.","This shipping method is not available. To use this shipping method, please contact us."
+"The address model is not defined.","The address model is not defined."
+"The address total model should be extended from \Magento\Quote\Model\Quote\Address\Total\AbstractTotal.","Le modèle total de l'adresse devrait être étendu à partir de \Magento\Quote\Model\Quote\Address\Total\AbstractTotal."
+"Subscription Items","Subscription Items"
+"Regular Payment","Paiement régulier"
+"Shipping & Handling (%1)","Shipping & Handling (%1)"
+"We found an invalid item option format.","We found an invalid item option format."
+"Item qty declaration error","Item qty declaration error"
+"Some of the products below do not have all the required options.","Some of the products below do not have all the required options."
+"Something went wrong during the item options declaration.","Something went wrong during the item options declaration."
+"We found an item options declaration error.","We found an item options declaration error."
+"Some of the selected options are not currently available.","Some of the selected options are not currently available."
+"Selected option(s) or their combination is not currently available.","Selected option(s) or their combination is not currently available."
+"Some item options or their combination are not currently available.","Some item options or their combination are not currently available."
+"The requested Payment Method is not available.","La méthode de paiement demandée n'est pas disponible."
+"Please check the shipping address information. %1","Please check the shipping address information. %1"
+"Please specify a shipping method.","Veuillez spécifier une méthode d'expédition."
+"Please check the billing address information. %1","Please check the billing address information. %1"
+"Please select a valid payment method.","Veuillez sélectionner une méthode de paiement valide."
diff --git a/app/code/Magento/Quote/i18n/nl_NL.csv b/app/code/Magento/Quote/i18n/nl_NL.csv
new file mode 100644
index 0000000000000000000000000000000000000000..acd4c074680e06df96f6caa45a89e165cdbefbde
--- /dev/null
+++ b/app/code/Magento/Quote/i18n/nl_NL.csv
@@ -0,0 +1,31 @@
+Subtotal,subtotaal
+Discount,korting
+"Grand Total","Groot Totaal"
+Tax,Belasting
+Shipping,Transport
+"Store Credit","Sla Krediet op"
+"An item option with code %1 already exists.","An item option with code %1 already exists."
+"Discount (%1)","Discount (%1)"
+"Shipping & Handling","Verzending & Transport"
+"Sorry, but items with payment agreements must be ordered one at a time To continue, please remove or buy the other items in your cart, then order this item by itself.","Sorry, but items with payment agreements must be ordered one at a time To continue, please remove or buy the other items in your cart, then order this item by itself."
+"We found an invalid request for adding product to quote.","We found an invalid request for adding product to quote."
+"This is the wrong quote item id to update configuration.","This is the wrong quote item id to update configuration."
+"This shipping method is not available. To use this shipping method, please contact us.","This shipping method is not available. To use this shipping method, please contact us."
+"The address model is not defined.","The address model is not defined."
+"The address total model should be extended from \Magento\Quote\Model\Quote\Address\Total\AbstractTotal.","Het totale adresmodel moet uitgebreid worden van \Magento\Quote\Model\Quote\Address\Total\AbstractTotal."
+"Subscription Items","Subscription Items"
+"Regular Payment",Overboeking
+"Shipping & Handling (%1)","Shipping & Handling (%1)"
+"We found an invalid item option format.","We found an invalid item option format."
+"Item qty declaration error","Item qty declaration error"
+"Some of the products below do not have all the required options.","Some of the products below do not have all the required options."
+"Something went wrong during the item options declaration.","Something went wrong during the item options declaration."
+"We found an item options declaration error.","We found an item options declaration error."
+"Some of the selected options are not currently available.","Some of the selected options are not currently available."
+"Selected option(s) or their combination is not currently available.","Selected option(s) or their combination is not currently available."
+"Some item options or their combination are not currently available.","Some item options or their combination are not currently available."
+"The requested Payment Method is not available.","De aangevraagde betaalmethode is niet beschikbaar."
+"Please check the shipping address information. %1","Please check the shipping address information. %1"
+"Please specify a shipping method.","Gelieve een bezorgingsmethode te specificeren."
+"Please check the billing address information. %1","Please check the billing address information. %1"
+"Please select a valid payment method.","Gelieve een geldige betalingsmethode te selecteren."
diff --git a/app/code/Magento/Quote/i18n/pt_BR.csv b/app/code/Magento/Quote/i18n/pt_BR.csv
new file mode 100644
index 0000000000000000000000000000000000000000..3bc5a5cf16a4971f792a310e8b9ad61ee93918c3
--- /dev/null
+++ b/app/code/Magento/Quote/i18n/pt_BR.csv
@@ -0,0 +1,31 @@
+Subtotal,Subtotal
+Discount,Desconto
+"Grand Total","Total geral"
+Tax,Taxas
+Shipping,Remessa
+"Store Credit","Credito da loja"
+"An item option with code %1 already exists.","An item option with code %1 already exists."
+"Discount (%1)","Discount (%1)"
+"Shipping & Handling","Transporte & Manuseio"
+"Sorry, but items with payment agreements must be ordered one at a time To continue, please remove or buy the other items in your cart, then order this item by itself.","Sorry, but items with payment agreements must be ordered one at a time To continue, please remove or buy the other items in your cart, then order this item by itself."
+"We found an invalid request for adding product to quote.","We found an invalid request for adding product to quote."
+"This is the wrong quote item id to update configuration.","This is the wrong quote item id to update configuration."
+"This shipping method is not available. To use this shipping method, please contact us.","This shipping method is not available. To use this shipping method, please contact us."
+"The address model is not defined.","The address model is not defined."
+"The address total model should be extended from \Magento\Quote\Model\Quote\Address\Total\AbstractTotal.","O modelo de endereço total deve ser alargado de \Magento\Quote\Model\Quote\Address\Total\AbstractTotal."
+"Subscription Items","Subscription Items"
+"Regular Payment","Pagamento Regular"
+"Shipping & Handling (%1)","Shipping & Handling (%1)"
+"We found an invalid item option format.","We found an invalid item option format."
+"Item qty declaration error","Item qty declaration error"
+"Some of the products below do not have all the required options.","Some of the products below do not have all the required options."
+"Something went wrong during the item options declaration.","Something went wrong during the item options declaration."
+"We found an item options declaration error.","We found an item options declaration error."
+"Some of the selected options are not currently available.","Some of the selected options are not currently available."
+"Selected option(s) or their combination is not currently available.","Selected option(s) or their combination is not currently available."
+"Some item options or their combination are not currently available.","Some item options or their combination are not currently available."
+"The requested Payment Method is not available.","O Método de Pagamento solicitado não está disponível."
+"Please check the shipping address information. %1","Please check the shipping address information. %1"
+"Please specify a shipping method.","Especifique um método de envio."
+"Please check the billing address information. %1","Please check the billing address information. %1"
+"Please select a valid payment method.","Por favor selecione um método de pagamento válido."
diff --git a/app/code/Magento/Quote/i18n/zh_CN.csv b/app/code/Magento/Quote/i18n/zh_CN.csv
new file mode 100644
index 0000000000000000000000000000000000000000..871651b2b6ca807f8a52eaa85b3221adcac7d80c
--- /dev/null
+++ b/app/code/Magento/Quote/i18n/zh_CN.csv
@@ -0,0 +1,31 @@
+Subtotal,小计
+Discount,折扣
+"Grand Total",总计
+Tax,传真
+Shipping,运送
+"Store Credit",店铺信用
+"An item option with code %1 already exists.","An item option with code %1 already exists."
+"Discount (%1)","Discount (%1)"
+"Shipping & Handling",运费和手续费
+"Sorry, but items with payment agreements must be ordered one at a time To continue, please remove or buy the other items in your cart, then order this item by itself.","Sorry, but items with payment agreements must be ordered one at a time To continue, please remove or buy the other items in your cart, then order this item by itself."
+"We found an invalid request for adding product to quote.","We found an invalid request for adding product to quote."
+"This is the wrong quote item id to update configuration.","This is the wrong quote item id to update configuration."
+"This shipping method is not available. To use this shipping method, please contact us.","This shipping method is not available. To use this shipping method, please contact us."
+"The address model is not defined.","The address model is not defined."
+"The address total model should be extended from \Magento\Quote\Model\Quote\Address\Total\AbstractTotal.","地址总模块应扩展自\Magento\Quote\Model\Quote\Address\Total\AbstractTotal。"
+"Subscription Items","Subscription Items"
+"Regular Payment",正常支付
+"Shipping & Handling (%1)","Shipping & Handling (%1)"
+"We found an invalid item option format.","We found an invalid item option format."
+"Item qty declaration error","Item qty declaration error"
+"Some of the products below do not have all the required options.","Some of the products below do not have all the required options."
+"Something went wrong during the item options declaration.","Something went wrong during the item options declaration."
+"We found an item options declaration error.","We found an item options declaration error."
+"Some of the selected options are not currently available.","Some of the selected options are not currently available."
+"Selected option(s) or their combination is not currently available.","Selected option(s) or their combination is not currently available."
+"Some item options or their combination are not currently available.","Some item options or their combination are not currently available."
+"The requested Payment Method is not available.",请求的支付方式不可用。
+"Please check the shipping address information. %1","Please check the shipping address information. %1"
+"Please specify a shipping method.",请指定一个配送方法。
+"Please check the billing address information. %1","Please check the billing address information. %1"
+"Please select a valid payment method.",请选择有效的支付方式。
diff --git a/app/code/Magento/Quote/sql/quote_setup/install-2.0.0.php b/app/code/Magento/Quote/sql/quote_setup/install-2.0.0.php
new file mode 100644
index 0000000000000000000000000000000000000000..d925c830ca9b14b55e16d26c6151dd214ccde28c
--- /dev/null
+++ b/app/code/Magento/Quote/sql/quote_setup/install-2.0.0.php
@@ -0,0 +1,1533 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+
+/** @var $this \Magento\Quote\Model\Resource\Setup */
+$this->startSetup();
+
+/**
+ * Create table 'quote'
+ */
+$table = $this->getConnection()->newTable(
+    $this->getTable('quote')
+)->addColumn(
+    'entity_id',
+    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
+    null,
+    ['identity' => true, 'unsigned' => true, 'nullable' => false, 'primary' => true],
+    'Entity Id'
+)->addColumn(
+    'store_id',
+    \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT,
+    null,
+    ['unsigned' => true, 'nullable' => false, 'default' => '0'],
+    'Store Id'
+)->addColumn(
+    'created_at',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TIMESTAMP,
+    null,
+    ['nullable' => false, 'default' => \Magento\Framework\DB\Ddl\Table::TIMESTAMP_INIT],
+    'Created At'
+)->addColumn(
+    'updated_at',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TIMESTAMP,
+    null,
+    ['nullable' => false, 'default' => \Magento\Framework\DB\Ddl\Table::TIMESTAMP_UPDATE],
+    'Updated At'
+)->addColumn(
+    'converted_at',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TIMESTAMP,
+    null,
+    ['nullable' => true],
+    'Converted At'
+)->addColumn(
+    'is_active',
+    \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT,
+    null,
+    ['unsigned' => true, 'default' => '1'],
+    'Is Active'
+)->addColumn(
+    'is_virtual',
+    \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT,
+    null,
+    ['unsigned' => true, 'default' => '0'],
+    'Is Virtual'
+)->addColumn(
+    'is_multi_shipping',
+    \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT,
+    null,
+    ['unsigned' => true, 'default' => '0'],
+    'Is Multi Shipping'
+)->addColumn(
+    'items_count',
+    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
+    null,
+    ['unsigned' => true, 'default' => '0'],
+    'Items Count'
+)->addColumn(
+    'items_qty',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    ['default' => '0.0000'],
+    'Items Qty'
+)->addColumn(
+    'orig_order_id',
+    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
+    null,
+    ['unsigned' => true, 'default' => '0'],
+    'Orig Order Id'
+)->addColumn(
+    'store_to_base_rate',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    ['default' => '0.0000'],
+    'Store To Base Rate'
+)->addColumn(
+    'store_to_quote_rate',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    ['default' => '0.0000'],
+    'Store To Quote Rate'
+)->addColumn(
+    'base_currency_code',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    255,
+    [],
+    'Base Currency Code'
+)->addColumn(
+    'store_currency_code',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    255,
+    [],
+    'Store Currency Code'
+)->addColumn(
+    'quote_currency_code',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    255,
+    [],
+    'Quote Currency Code'
+)->addColumn(
+    'grand_total',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    ['default' => '0.0000'],
+    'Grand Total'
+)->addColumn(
+    'base_grand_total',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    ['default' => '0.0000'],
+    'Base Grand Total'
+)->addColumn(
+    'checkout_method',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    255,
+    [],
+    'Checkout Method'
+)->addColumn(
+    'customer_id',
+    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
+    null,
+    ['unsigned' => true, 'default' => '0'],
+    'Customer Id'
+)->addColumn(
+    'customer_tax_class_id',
+    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
+    null,
+    ['unsigned' => true, 'default' => '0'],
+    'Customer Tax Class Id'
+)->addColumn(
+    'customer_group_id',
+    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
+    null,
+    ['unsigned' => true, 'default' => '0'],
+    'Customer Group Id'
+)->addColumn(
+    'customer_email',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    255,
+    [],
+    'Customer Email'
+)->addColumn(
+    'customer_prefix',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    40,
+    [],
+    'Customer Prefix'
+)->addColumn(
+    'customer_firstname',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    255,
+    [],
+    'Customer Firstname'
+)->addColumn(
+    'customer_middlename',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    40,
+    [],
+    'Customer Middlename'
+)->addColumn(
+    'customer_lastname',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    255,
+    [],
+    'Customer Lastname'
+)->addColumn(
+    'customer_suffix',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    40,
+    [],
+    'Customer Suffix'
+)->addColumn(
+    'customer_dob',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DATETIME,
+    null,
+    [],
+    'Customer Dob'
+)->addColumn(
+    'customer_note',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    255,
+    [],
+    'Customer Note'
+)->addColumn(
+    'customer_note_notify',
+    \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT,
+    null,
+    ['unsigned' => true, 'default' => '1'],
+    'Customer Note Notify'
+)->addColumn(
+    'customer_is_guest',
+    \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT,
+    null,
+    ['unsigned' => true, 'default' => '0'],
+    'Customer Is Guest'
+)->addColumn(
+    'remote_ip',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    32,
+    [],
+    'Remote Ip'
+)->addColumn(
+    'applied_rule_ids',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    255,
+    [],
+    'Applied Rule Ids'
+)->addColumn(
+    'reserved_order_id',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    64,
+    ['nullable' => true],
+    'Reserved Order Id'
+)->addColumn(
+    'password_hash',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    255,
+    [],
+    'Password Hash'
+)->addColumn(
+    'coupon_code',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    255,
+    [],
+    'Coupon Code'
+)->addColumn(
+    'global_currency_code',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    255,
+    [],
+    'Global Currency Code'
+)->addColumn(
+    'base_to_global_rate',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    [],
+    'Base To Global Rate'
+)->addColumn(
+    'base_to_quote_rate',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    [],
+    'Base To Quote Rate'
+)->addColumn(
+    'customer_taxvat',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    255,
+    [],
+    'Customer Taxvat'
+)->addColumn(
+    'customer_gender',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    255,
+    [],
+    'Customer Gender'
+)->addColumn(
+    'subtotal',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    [],
+    'Subtotal'
+)->addColumn(
+    'base_subtotal',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    [],
+    'Base Subtotal'
+)->addColumn(
+    'subtotal_with_discount',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    [],
+    'Subtotal With Discount'
+)->addColumn(
+    'base_subtotal_with_discount',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    [],
+    'Base Subtotal With Discount'
+)->addColumn(
+    'is_changed',
+    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
+    null,
+    ['unsigned' => true],
+    'Is Changed'
+)->addColumn(
+    'trigger_recollect',
+    \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT,
+    null,
+    ['nullable' => false, 'default' => '0'],
+    'Trigger Recollect'
+)->addColumn(
+    'ext_shipping_info',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    '64k',
+    [],
+    'Ext Shipping Info'
+)->addIndex(
+    $this->getIdxName('quote', ['customer_id', 'store_id', 'is_active']),
+    ['customer_id', 'store_id', 'is_active']
+)->addIndex(
+    $this->getIdxName('quote', ['store_id']),
+    ['store_id']
+)->addForeignKey(
+    $this->getFkName('quote', 'store_id', 'store', 'store_id'),
+    'store_id',
+    $this->getTable('store'),
+    'store_id',
+    \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE,
+    \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE
+)->setComment(
+    'Sales Flat Quote'
+);
+$this->getConnection()->createTable($table);
+
+/**
+ * Create table 'quote_address'
+ */
+$table = $this->getConnection()->newTable(
+    $this->getTable('quote_address')
+)->addColumn(
+    'address_id',
+    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
+    null,
+    ['identity' => true, 'unsigned' => true, 'nullable' => false, 'primary' => true],
+    'Address Id'
+)->addColumn(
+    'quote_id',
+    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
+    null,
+    ['unsigned' => true, 'nullable' => false, 'default' => '0'],
+    'Quote Id'
+)->addColumn(
+    'created_at',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TIMESTAMP,
+    null,
+    ['nullable' => false, 'default' => \Magento\Framework\DB\Ddl\Table::TIMESTAMP_INIT],
+    'Created At'
+)->addColumn(
+    'updated_at',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TIMESTAMP,
+    null,
+    ['nullable' => false, 'default' => \Magento\Framework\DB\Ddl\Table::TIMESTAMP_UPDATE],
+    'Updated At'
+)->addColumn(
+    'customer_id',
+    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
+    null,
+    ['unsigned' => true],
+    'Customer Id'
+)->addColumn(
+    'save_in_address_book',
+    \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT,
+    null,
+    ['default' => '0'],
+    'Save In Address Book'
+)->addColumn(
+    'customer_address_id',
+    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
+    null,
+    ['unsigned' => true],
+    'Customer Address Id'
+)->addColumn(
+    'address_type',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    255,
+    [],
+    'Address Type'
+)->addColumn(
+    'email',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    255,
+    [],
+    'Email'
+)->addColumn(
+    'prefix',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    40,
+    [],
+    'Prefix'
+)->addColumn(
+    'firstname',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    255,
+    [],
+    'Firstname'
+)->addColumn(
+    'middlename',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    40,
+    [],
+    'Middlename'
+)->addColumn(
+    'lastname',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    255,
+    [],
+    'Lastname'
+)->addColumn(
+    'suffix',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    40,
+    [],
+    'Suffix'
+)->addColumn(
+    'company',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    255,
+    [],
+    'Company'
+)->addColumn(
+    'street',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    255,
+    [],
+    'Street'
+)->addColumn(
+    'city',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    255,
+    [],
+    'City'
+)->addColumn(
+    'region',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    255,
+    [],
+    'Region'
+)->addColumn(
+    'region_id',
+    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
+    null,
+    ['unsigned' => true],
+    'Region Id'
+)->addColumn(
+    'postcode',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    255,
+    [],
+    'Postcode'
+)->addColumn(
+    'country_id',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    255,
+    [],
+    'Country Id'
+)->addColumn(
+    'telephone',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    255,
+    [],
+    'Phone Number'
+)->addColumn(
+    'fax',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    255,
+    [],
+    'Fax'
+)->addColumn(
+    'same_as_billing',
+    \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT,
+    null,
+    ['unsigned' => true, 'nullable' => false, 'default' => '0'],
+    'Same As Billing'
+)->addColumn(
+    'collect_shipping_rates',
+    \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT,
+    null,
+    ['unsigned' => true, 'nullable' => false, 'default' => '0'],
+    'Collect Shipping Rates'
+)->addColumn(
+    'shipping_method',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    255,
+    [],
+    'Shipping Method'
+)->addColumn(
+    'shipping_description',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    255,
+    [],
+    'Shipping Description'
+)->addColumn(
+    'weight',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    ['nullable' => false, 'default' => '0.0000'],
+    'Weight'
+)->addColumn(
+    'subtotal',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    ['nullable' => false, 'default' => '0.0000'],
+    'Subtotal'
+)->addColumn(
+    'base_subtotal',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    ['nullable' => false, 'default' => '0.0000'],
+    'Base Subtotal'
+)->addColumn(
+    'subtotal_with_discount',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    ['nullable' => false, 'default' => '0.0000'],
+    'Subtotal With Discount'
+)->addColumn(
+    'base_subtotal_with_discount',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    ['nullable' => false, 'default' => '0.0000'],
+    'Base Subtotal With Discount'
+)->addColumn(
+    'tax_amount',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    ['nullable' => false, 'default' => '0.0000'],
+    'Tax Amount'
+)->addColumn(
+    'base_tax_amount',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    ['nullable' => false, 'default' => '0.0000'],
+    'Base Tax Amount'
+)->addColumn(
+    'shipping_amount',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    ['nullable' => false, 'default' => '0.0000'],
+    'Shipping Amount'
+)->addColumn(
+    'base_shipping_amount',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    ['nullable' => false, 'default' => '0.0000'],
+    'Base Shipping Amount'
+)->addColumn(
+    'shipping_tax_amount',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    [],
+    'Shipping Tax Amount'
+)->addColumn(
+    'base_shipping_tax_amount',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    [],
+    'Base Shipping Tax Amount'
+)->addColumn(
+    'discount_amount',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    ['nullable' => false, 'default' => '0.0000'],
+    'Discount Amount'
+)->addColumn(
+    'base_discount_amount',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    ['nullable' => false, 'default' => '0.0000'],
+    'Base Discount Amount'
+)->addColumn(
+    'grand_total',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    ['nullable' => false, 'default' => '0.0000'],
+    'Grand Total'
+)->addColumn(
+    'base_grand_total',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    ['nullable' => false, 'default' => '0.0000'],
+    'Base Grand Total'
+)->addColumn(
+    'customer_notes',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    '64k',
+    [],
+    'Customer Notes'
+)->addColumn(
+    'applied_taxes',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    '64k',
+    [],
+    'Applied Taxes'
+)->addColumn(
+    'discount_description',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    255,
+    [],
+    'Discount Description'
+)->addColumn(
+    'shipping_discount_amount',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    [],
+    'Shipping Discount Amount'
+)->addColumn(
+    'base_shipping_discount_amount',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    [],
+    'Base Shipping Discount Amount'
+)->addColumn(
+    'subtotal_incl_tax',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    [],
+    'Subtotal Incl Tax'
+)->addColumn(
+    'base_subtotal_total_incl_tax',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    [],
+    'Base Subtotal Total Incl Tax'
+)->addColumn(
+    'hidden_tax_amount',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    [],
+    'Hidden Tax Amount'
+)->addColumn(
+    'base_hidden_tax_amount',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    [],
+    'Base Hidden Tax Amount'
+)->addColumn(
+    'shipping_hidden_tax_amount',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    [],
+    'Shipping Hidden Tax Amount'
+)->addColumn(
+    'base_shipping_hidden_tax_amnt',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    [],
+    'Base Shipping Hidden Tax Amount'
+)->addColumn(
+    'shipping_incl_tax',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    [],
+    'Shipping Incl Tax'
+)->addColumn(
+    'base_shipping_incl_tax',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    [],
+    'Base Shipping Incl Tax'
+)->addIndex(
+    $this->getIdxName('quote_address', ['quote_id']),
+    ['quote_id']
+)->addForeignKey(
+    $this->getFkName('quote_address', 'quote_id', 'quote', 'entity_id'),
+    'quote_id',
+    $this->getTable('quote'),
+    'entity_id',
+    \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE,
+    \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE
+)->setComment(
+    'Sales Flat Quote Address'
+);
+$this->getConnection()->createTable($table);
+
+/**
+ * Create table 'quote_item'
+ */
+$table = $this->getConnection()->newTable(
+    $this->getTable('quote_item')
+)->addColumn(
+    'item_id',
+    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
+    null,
+    ['identity' => true, 'unsigned' => true, 'nullable' => false, 'primary' => true],
+    'Item Id'
+)->addColumn(
+    'quote_id',
+    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
+    null,
+    ['unsigned' => true, 'nullable' => false, 'default' => '0'],
+    'Quote Id'
+)->addColumn(
+    'created_at',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TIMESTAMP,
+    null,
+    ['nullable' => false, 'default' => \Magento\Framework\DB\Ddl\Table::TIMESTAMP_UPDATE],
+    'Created At'
+)->addColumn(
+    'updated_at',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TIMESTAMP,
+    null,
+    ['nullable' => false, 'default' => \Magento\Framework\DB\Ddl\Table::TIMESTAMP_UPDATE],
+    'Updated At'
+)->addColumn(
+    'product_id',
+    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
+    null,
+    ['unsigned' => true],
+    'Product Id'
+)->addColumn(
+    'store_id',
+    \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT,
+    null,
+    ['unsigned' => true],
+    'Store Id'
+)->addColumn(
+    'parent_item_id',
+    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
+    null,
+    ['unsigned' => true],
+    'Parent Item Id'
+)->addColumn(
+    'is_virtual',
+    \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT,
+    null,
+    ['unsigned' => true],
+    'Is Virtual'
+)->addColumn(
+    'sku',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    255,
+    [],
+    'Sku'
+)->addColumn(
+    'name',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    255,
+    [],
+    'Name'
+)->addColumn(
+    'description',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    '64k',
+    [],
+    'Description'
+)->addColumn(
+    'applied_rule_ids',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    '64k',
+    [],
+    'Applied Rule Ids'
+)->addColumn(
+    'additional_data',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    '64k',
+    [],
+    'Additional Data'
+)->addColumn(
+    'is_qty_decimal',
+    \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT,
+    null,
+    ['unsigned' => true],
+    'Is Qty Decimal'
+)->addColumn(
+    'no_discount',
+    \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT,
+    null,
+    ['unsigned' => true, 'default' => '0'],
+    'No Discount'
+)->addColumn(
+    'weight',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    ['default' => '0.0000'],
+    'Weight'
+)->addColumn(
+    'qty',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    ['nullable' => false, 'default' => '0.0000'],
+    'Qty'
+)->addColumn(
+    'price',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    ['nullable' => false, 'default' => '0.0000'],
+    'Price'
+)->addColumn(
+    'base_price',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    ['nullable' => false, 'default' => '0.0000'],
+    'Base Price'
+)->addColumn(
+    'custom_price',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    [],
+    'Custom Price'
+)->addColumn(
+    'discount_percent',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    ['default' => '0.0000'],
+    'Discount Percent'
+)->addColumn(
+    'discount_amount',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    ['default' => '0.0000'],
+    'Discount Amount'
+)->addColumn(
+    'base_discount_amount',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    ['default' => '0.0000'],
+    'Base Discount Amount'
+)->addColumn(
+    'tax_percent',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    ['default' => '0.0000'],
+    'Tax Percent'
+)->addColumn(
+    'tax_amount',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    ['default' => '0.0000'],
+    'Tax Amount'
+)->addColumn(
+    'base_tax_amount',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    ['default' => '0.0000'],
+    'Base Tax Amount'
+)->addColumn(
+    'row_total',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    ['nullable' => false, 'default' => '0.0000'],
+    'Row Total'
+)->addColumn(
+    'base_row_total',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    ['nullable' => false, 'default' => '0.0000'],
+    'Base Row Total'
+)->addColumn(
+    'row_total_with_discount',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    ['default' => '0.0000'],
+    'Row Total With Discount'
+)->addColumn(
+    'row_weight',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    ['default' => '0.0000'],
+    'Row Weight'
+)->addColumn(
+    'product_type',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    255,
+    [],
+    'Product Type'
+)->addColumn(
+    'base_tax_before_discount',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    [],
+    'Base Tax Before Discount'
+)->addColumn(
+    'tax_before_discount',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    [],
+    'Tax Before Discount'
+)->addColumn(
+    'original_custom_price',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    [],
+    'Original Custom Price'
+)->addColumn(
+    'redirect_url',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    255,
+    [],
+    'Redirect Url'
+)->addColumn(
+    'base_cost',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    [],
+    'Base Cost'
+)->addColumn(
+    'price_incl_tax',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    [],
+    'Price Incl Tax'
+)->addColumn(
+    'base_price_incl_tax',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    [],
+    'Base Price Incl Tax'
+)->addColumn(
+    'row_total_incl_tax',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    [],
+    'Row Total Incl Tax'
+)->addColumn(
+    'base_row_total_incl_tax',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    [],
+    'Base Row Total Incl Tax'
+)->addColumn(
+    'hidden_tax_amount',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    [],
+    'Hidden Tax Amount'
+)->addColumn(
+    'base_hidden_tax_amount',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    [],
+    'Base Hidden Tax Amount'
+)->addIndex(
+    $this->getIdxName('quote_item', ['parent_item_id']),
+    ['parent_item_id']
+)->addIndex(
+    $this->getIdxName('quote_item', ['product_id']),
+    ['product_id']
+)->addIndex(
+    $this->getIdxName('quote_item', ['quote_id']),
+    ['quote_id']
+)->addIndex(
+    $this->getIdxName('quote_item', ['store_id']),
+    ['store_id']
+)->addForeignKey(
+    $this->getFkName('quote_item', 'parent_item_id', 'quote_item', 'item_id'),
+    'parent_item_id',
+    $this->getTable('quote_item'),
+    'item_id',
+    \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE,
+    \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE
+)->addForeignKey(
+    $this->getFkName('quote_item', 'product_id', 'catalog_product_entity', 'entity_id'),
+    'product_id',
+    $this->getTable('catalog_product_entity'),
+    'entity_id',
+    \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE,
+    \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE
+)->addForeignKey(
+    $this->getFkName('quote_item', 'quote_id', 'quote', 'entity_id'),
+    'quote_id',
+    $this->getTable('quote'),
+    'entity_id',
+    \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE,
+    \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE
+)->addForeignKey(
+    $this->getFkName('quote_item', 'store_id', 'store', 'store_id'),
+    'store_id',
+    $this->getTable('store'),
+    'store_id',
+    \Magento\Framework\DB\Ddl\Table::ACTION_SET_NULL,
+    \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE
+)->setComment(
+    'Sales Flat Quote Item'
+);
+$this->getConnection()->createTable($table);
+
+/**
+ * Create table 'quote_address_item'
+ */
+$table = $this->getConnection()->newTable(
+    $this->getTable('quote_address_item')
+)->addColumn(
+    'address_item_id',
+    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
+    null,
+    ['identity' => true, 'unsigned' => true, 'nullable' => false, 'primary' => true],
+    'Address Item Id'
+)->addColumn(
+    'parent_item_id',
+    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
+    null,
+    ['unsigned' => true],
+    'Parent Item Id'
+)->addColumn(
+    'quote_address_id',
+    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
+    null,
+    ['unsigned' => true, 'nullable' => false, 'default' => '0'],
+    'Quote Address Id'
+)->addColumn(
+    'quote_item_id',
+    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
+    null,
+    ['unsigned' => true, 'nullable' => false, 'default' => '0'],
+    'Quote Item Id'
+)->addColumn(
+    'created_at',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TIMESTAMP,
+    null,
+    ['nullable' => false, 'default' => \Magento\Framework\DB\Ddl\Table::TIMESTAMP_INIT],
+    'Created At'
+)->addColumn(
+    'updated_at',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TIMESTAMP,
+    null,
+    ['nullable' => false, 'default' => \Magento\Framework\DB\Ddl\Table::TIMESTAMP_UPDATE],
+    'Updated At'
+)->addColumn(
+    'applied_rule_ids',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    '64k',
+    [],
+    'Applied Rule Ids'
+)->addColumn(
+    'additional_data',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    '64k',
+    [],
+    'Additional Data'
+)->addColumn(
+    'weight',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    ['default' => '0.0000'],
+    'Weight'
+)->addColumn(
+    'qty',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    ['nullable' => false, 'default' => '0.0000'],
+    'Qty'
+)->addColumn(
+    'discount_amount',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    ['default' => '0.0000'],
+    'Discount Amount'
+)->addColumn(
+    'tax_amount',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    ['default' => '0.0000'],
+    'Tax Amount'
+)->addColumn(
+    'row_total',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    ['nullable' => false, 'default' => '0.0000'],
+    'Row Total'
+)->addColumn(
+    'base_row_total',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    ['nullable' => false, 'default' => '0.0000'],
+    'Base Row Total'
+)->addColumn(
+    'row_total_with_discount',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    ['default' => '0.0000'],
+    'Row Total With Discount'
+)->addColumn(
+    'base_discount_amount',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    ['default' => '0.0000'],
+    'Base Discount Amount'
+)->addColumn(
+    'base_tax_amount',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    ['default' => '0.0000'],
+    'Base Tax Amount'
+)->addColumn(
+    'row_weight',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    ['default' => '0.0000'],
+    'Row Weight'
+)->addColumn(
+    'product_id',
+    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
+    null,
+    ['unsigned' => true],
+    'Product Id'
+)->addColumn(
+    'super_product_id',
+    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
+    null,
+    ['unsigned' => true],
+    'Super Product Id'
+)->addColumn(
+    'parent_product_id',
+    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
+    null,
+    ['unsigned' => true],
+    'Parent Product Id'
+)->addColumn(
+    'sku',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    255,
+    [],
+    'Sku'
+)->addColumn(
+    'image',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    255,
+    [],
+    'Image'
+)->addColumn(
+    'name',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    255,
+    [],
+    'Name'
+)->addColumn(
+    'description',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    '64k',
+    [],
+    'Description'
+)->addColumn(
+    'is_qty_decimal',
+    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
+    null,
+    ['unsigned' => true],
+    'Is Qty Decimal'
+)->addColumn(
+    'price',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    [],
+    'Price'
+)->addColumn(
+    'discount_percent',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    [],
+    'Discount Percent'
+)->addColumn(
+    'no_discount',
+    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
+    null,
+    ['unsigned' => true],
+    'No Discount'
+)->addColumn(
+    'tax_percent',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    [],
+    'Tax Percent'
+)->addColumn(
+    'base_price',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    [],
+    'Base Price'
+)->addColumn(
+    'base_cost',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    [],
+    'Base Cost'
+)->addColumn(
+    'price_incl_tax',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    [],
+    'Price Incl Tax'
+)->addColumn(
+    'base_price_incl_tax',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    [],
+    'Base Price Incl Tax'
+)->addColumn(
+    'row_total_incl_tax',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    [],
+    'Row Total Incl Tax'
+)->addColumn(
+    'base_row_total_incl_tax',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    [],
+    'Base Row Total Incl Tax'
+)->addColumn(
+    'hidden_tax_amount',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    [],
+    'Hidden Tax Amount'
+)->addColumn(
+    'base_hidden_tax_amount',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    [],
+    'Base Hidden Tax Amount'
+)->addIndex(
+    $this->getIdxName('quote_address_item', ['quote_address_id']),
+    ['quote_address_id']
+)->addIndex(
+    $this->getIdxName('quote_address_item', ['parent_item_id']),
+    ['parent_item_id']
+)->addIndex(
+    $this->getIdxName('quote_address_item', ['quote_item_id']),
+    ['quote_item_id']
+)->addForeignKey(
+    $this->getFkName(
+        'quote_address_item',
+        'quote_address_id',
+        'quote_address',
+        'address_id'
+    ),
+    'quote_address_id',
+    $this->getTable('quote_address'),
+    'address_id',
+    \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE,
+    \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE
+)->addForeignKey(
+    $this->getFkName(
+        'quote_address_item',
+        'parent_item_id',
+        'quote_address_item',
+        'address_item_id'
+    ),
+    'parent_item_id',
+    $this->getTable('quote_address_item'),
+    'address_item_id',
+    \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE,
+    \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE
+)->addForeignKey(
+    $this->getFkName('quote_address_item', 'quote_item_id', 'quote_item', 'item_id'),
+    'quote_item_id',
+    $this->getTable('quote_item'),
+    'item_id',
+    \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE,
+    \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE
+)->setComment(
+    'Sales Flat Quote Address Item'
+);
+$this->getConnection()->createTable($table);
+
+/**
+ * Create table 'quote_item_option'
+ */
+$table = $this->getConnection()->newTable(
+    $this->getTable('quote_item_option')
+)->addColumn(
+    'option_id',
+    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
+    null,
+    ['identity' => true, 'unsigned' => true, 'nullable' => false, 'primary' => true],
+    'Option Id'
+)->addColumn(
+    'item_id',
+    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
+    null,
+    ['unsigned' => true, 'nullable' => false],
+    'Item Id'
+)->addColumn(
+    'product_id',
+    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
+    null,
+    ['unsigned' => true, 'nullable' => false],
+    'Product Id'
+)->addColumn(
+    'code',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    255,
+    ['nullable' => false],
+    'Code'
+)->addColumn(
+    'value',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    '64k',
+    [],
+    'Value'
+)->addIndex(
+    $this->getIdxName('quote_item_option', ['item_id']),
+    ['item_id']
+)->addForeignKey(
+    $this->getFkName('quote_item_option', 'item_id', 'quote_item', 'item_id'),
+    'item_id',
+    $this->getTable('quote_item'),
+    'item_id',
+    \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE,
+    \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE
+)->setComment(
+    'Sales Flat Quote Item Option'
+);
+$this->getConnection()->createTable($table);
+
+/**
+ * Create table 'quote_payment'
+ */
+$table = $this->getConnection()->newTable(
+    $this->getTable('quote_payment')
+)->addColumn(
+    'payment_id',
+    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
+    null,
+    ['identity' => true, 'unsigned' => true, 'nullable' => false, 'primary' => true],
+    'Payment Id'
+)->addColumn(
+    'quote_id',
+    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
+    null,
+    ['unsigned' => true, 'nullable' => false, 'default' => '0'],
+    'Quote Id'
+)->addColumn(
+    'created_at',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TIMESTAMP,
+    null,
+    ['nullable' => false, 'default' => \Magento\Framework\DB\Ddl\Table::TIMESTAMP_INIT],
+    'Created At'
+)->addColumn(
+    'updated_at',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TIMESTAMP,
+    null,
+    ['nullable' => false, 'default' => \Magento\Framework\DB\Ddl\Table::TIMESTAMP_UPDATE],
+    'Updated At'
+)->addColumn(
+    'method',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    255,
+    [],
+    'Method'
+)->addColumn(
+    'cc_type',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    255,
+    [],
+    'Cc Type'
+)->addColumn(
+    'cc_number_enc',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    255,
+    [],
+    'Cc Number Enc'
+)->addColumn(
+    'cc_last_4',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    255,
+    [],
+    'Cc Last 4'
+)->addColumn(
+    'cc_cid_enc',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    255,
+    [],
+    'Cc Cid Enc'
+)->addColumn(
+    'cc_owner',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    255,
+    [],
+    'Cc Owner'
+)->addColumn(
+    'cc_exp_month',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    255,
+    ['unsigned' => true, 'default' => null, 'nullable' => true],
+    'Cc Exp Month'
+)->addColumn(
+    'cc_exp_year',
+    \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT,
+    null,
+    ['unsigned' => true, 'default' => '0'],
+    'Cc Exp Year'
+)->addColumn(
+    'cc_ss_owner',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    255,
+    [],
+    'Cc Ss Owner'
+)->addColumn(
+    'cc_ss_start_month',
+    \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT,
+    null,
+    ['unsigned' => true, 'default' => '0'],
+    'Cc Ss Start Month'
+)->addColumn(
+    'cc_ss_start_year',
+    \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT,
+    null,
+    ['unsigned' => true, 'default' => '0'],
+    'Cc Ss Start Year'
+)->addColumn(
+    'po_number',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    255,
+    [],
+    'Po Number'
+)->addColumn(
+    'additional_data',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    '64k',
+    [],
+    'Additional Data'
+)->addColumn(
+    'cc_ss_issue',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    255,
+    [],
+    'Cc Ss Issue'
+)->addColumn(
+    'additional_information',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    '64k',
+    [],
+    'Additional Information'
+)->addIndex(
+    $this->getIdxName('quote_payment', ['quote_id']),
+    ['quote_id']
+)->addForeignKey(
+    $this->getFkName('quote_payment', 'quote_id', 'quote', 'entity_id'),
+    'quote_id',
+    $this->getTable('quote'),
+    'entity_id',
+    \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE,
+    \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE
+)->setComment(
+    'Sales Flat Quote Payment'
+);
+$this->getConnection()->createTable($table);
+
+/**
+ * Create table 'quote_shipping_rate'
+ */
+$table = $this->getConnection()->newTable(
+    $this->getTable('quote_shipping_rate')
+)->addColumn(
+    'rate_id',
+    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
+    null,
+    ['identity' => true, 'unsigned' => true, 'nullable' => false, 'primary' => true],
+    'Rate Id'
+)->addColumn(
+    'address_id',
+    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
+    null,
+    ['unsigned' => true, 'nullable' => false, 'default' => '0'],
+    'Address Id'
+)->addColumn(
+    'created_at',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TIMESTAMP,
+    null,
+    ['nullable' => false, 'default' => \Magento\Framework\DB\Ddl\Table::TIMESTAMP_INIT],
+    'Created At'
+)->addColumn(
+    'updated_at',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TIMESTAMP,
+    null,
+    ['nullable' => false, 'default' => \Magento\Framework\DB\Ddl\Table::TIMESTAMP_UPDATE],
+    'Updated At'
+)->addColumn(
+    'carrier',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    255,
+    [],
+    'Carrier'
+)->addColumn(
+    'carrier_title',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    255,
+    [],
+    'Carrier Title'
+)->addColumn(
+    'code',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    255,
+    [],
+    'Code'
+)->addColumn(
+    'method',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    255,
+    [],
+    'Method'
+)->addColumn(
+    'method_description',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    '64k',
+    [],
+    'Method Description'
+)->addColumn(
+    'price',
+    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
+    '12,4',
+    ['nullable' => false, 'default' => '0.0000'],
+    'Price'
+)->addColumn(
+    'error_message',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    '64k',
+    [],
+    'Error Message'
+)->addColumn(
+    'method_title',
+    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
+    '64k',
+    [],
+    'Method Title'
+)->addIndex(
+    $this->getIdxName('quote_shipping_rate', ['address_id']),
+    ['address_id']
+)->addForeignKey(
+    $this->getFkName('quote_shipping_rate', 'address_id', 'quote_address', 'address_id'),
+    'address_id',
+    $this->getTable('quote_address'),
+    'address_id',
+    \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE,
+    \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE
+)->setComment(
+    'Sales Flat Quote Shipping Rate'
+);
+$this->getConnection()->createTable($table);
+
+$this->endSetup();
diff --git a/app/code/Magento/Reports/Block/Adminhtml/Config/Form/Field/YtdStart.php b/app/code/Magento/Reports/Block/Adminhtml/Config/Form/Field/YtdStart.php
index 228564cad23ace5763b6a85ed951c69898007eb6..046bfe1aa2dd769dfbba0bd69f4a7edccc6ac986 100644
--- a/app/code/Magento/Reports/Block/Adminhtml/Config/Form/Field/YtdStart.php
+++ b/app/code/Magento/Reports/Block/Adminhtml/Config/Form/Field/YtdStart.php
@@ -17,6 +17,7 @@ class YtdStart extends \Magento\Backend\Block\System\Config\Form\Field
     /**
      * @param AbstractElement $element
      * @return string
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _getElementHtml(AbstractElement $element)
     {
diff --git a/app/code/Magento/Reports/Block/Adminhtml/Filter/Form.php b/app/code/Magento/Reports/Block/Adminhtml/Filter/Form.php
index b91ef443699a08d24b2cd986792051c3987d80fb..3399d0bd34b4234e35ca6b2ab5216a867ee0a573 100644
--- a/app/code/Magento/Reports/Block/Adminhtml/Filter/Form.php
+++ b/app/code/Magento/Reports/Block/Adminhtml/Filter/Form.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Reports\Block\Adminhtml\Filter;
 
 /**
@@ -52,6 +55,7 @@ class Form extends \Magento\Backend\Block\Widget\Form\Generic
      * @param string $fieldId
      * @param bool $defaultVisibility
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getFieldVisibility($fieldId, $defaultVisibility = true)
     {
diff --git a/app/code/Magento/Reports/Block/Adminhtml/Grid.php b/app/code/Magento/Reports/Block/Adminhtml/Grid.php
index d7a3c99fb0115d9ce0eb1d4ee3e0237d402760a6..ffe52417938c1a70831f6e7c517b0f5615ae7526 100644
--- a/app/code/Magento/Reports/Block/Adminhtml/Grid.php
+++ b/app/code/Magento/Reports/Block/Adminhtml/Grid.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Reports\Block\Adminhtml;
 
 /**
@@ -72,6 +75,7 @@ class Grid extends \Magento\Backend\Block\Widget\Grid
      * Apply sorting and filtering to collection
      *
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _prepareCollection()
     {
@@ -184,6 +188,7 @@ class Grid extends \Magento\Backend\Block\Widget\Grid
      *
      * @param array $data
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     protected function _setFilterValues($data)
     {
@@ -209,6 +214,7 @@ class Grid extends \Magento\Backend\Block\Widget\Grid
      * Return visibility of store switcher
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getStoreSwitcherVisibility()
     {
@@ -241,6 +247,7 @@ class Grid extends \Magento\Backend\Block\Widget\Grid
      * Return visibility of date filter
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getDateFilterVisibility()
     {
diff --git a/app/code/Magento/Reports/Block/Adminhtml/Grid/AbstractGrid.php b/app/code/Magento/Reports/Block/Adminhtml/Grid/AbstractGrid.php
index fa7e3329043384c732681d55173156f17a4fdb9f..7404aa6600f66404e4095e46dc38a4778fec27d8 100644
--- a/app/code/Magento/Reports/Block/Adminhtml/Grid/AbstractGrid.php
+++ b/app/code/Magento/Reports/Block/Adminhtml/Grid/AbstractGrid.php
@@ -186,6 +186,8 @@ class AbstractGrid extends \Magento\Backend\Block\Widget\Grid\Extended
 
     /**
      * @return $this|\Magento\Backend\Block\Widget\Grid
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _prepareCollection()
     {
@@ -393,6 +395,7 @@ class AbstractGrid extends \Magento\Backend\Block\Widget\Grid\Extended
      * @param \Magento\Reports\Model\Resource\Report\Collection\AbstractCollection $collection
      * @param \Magento\Framework\Object $filterData
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     protected function _addCustomFilter($collection, $filterData)
     {
diff --git a/app/code/Magento/Reports/Block/Adminhtml/Grid/Column/Renderer/Currency.php b/app/code/Magento/Reports/Block/Adminhtml/Grid/Column/Renderer/Currency.php
index 2af3ddc72cc47361557175da03445fb6ee176af8..ac9cf8c700bd7efc13558d6fb0161388dd2de4e3 100644
--- a/app/code/Magento/Reports/Block/Adminhtml/Grid/Column/Renderer/Currency.php
+++ b/app/code/Magento/Reports/Block/Adminhtml/Grid/Column/Renderer/Currency.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Reports\Block\Adminhtml\Grid\Column\Renderer;
 
 /**
diff --git a/app/code/Magento/Reports/Block/Adminhtml/Product/Viewed/Grid.php b/app/code/Magento/Reports/Block/Adminhtml/Product/Viewed/Grid.php
index 4bc033806c14078cbd3020398da56d72613b0f05..b97781a1f04d98982deac868243fff14e8a7bc1c 100644
--- a/app/code/Magento/Reports/Block/Adminhtml/Product/Viewed/Grid.php
+++ b/app/code/Magento/Reports/Block/Adminhtml/Product/Viewed/Grid.php
@@ -9,6 +9,7 @@ namespace Magento\Reports\Block\Adminhtml\Product\Viewed;
  * Adminhtml most viewed products report grid block
  *
  * @author      Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.DepthOfInheritance)
  */
 class Grid extends \Magento\Reports\Block\Adminhtml\Grid\AbstractGrid
 {
diff --git a/app/code/Magento/Reports/Block/Adminhtml/Sales/Bestsellers/Grid.php b/app/code/Magento/Reports/Block/Adminhtml/Sales/Bestsellers/Grid.php
index d12f64956c96f8f2ac7f3318710e30cabca91007..d6820a811970fded00679f36d5ad6564ccae7e36 100644
--- a/app/code/Magento/Reports/Block/Adminhtml/Sales/Bestsellers/Grid.php
+++ b/app/code/Magento/Reports/Block/Adminhtml/Sales/Bestsellers/Grid.php
@@ -9,6 +9,7 @@ namespace Magento\Reports\Block\Adminhtml\Sales\Bestsellers;
  * Adminhtml bestsellers report grid block
  *
  * @author      Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.DepthOfInheritance)
  */
 class Grid extends \Magento\Reports\Block\Adminhtml\Grid\AbstractGrid
 {
diff --git a/app/code/Magento/Reports/Block/Adminhtml/Sales/Coupons/Grid.php b/app/code/Magento/Reports/Block/Adminhtml/Sales/Coupons/Grid.php
index c8b8e1183de07842bea4a665d7c14a6064a8a052..c04265b1c531f9c8eaef861a81eacdd8998afc84 100644
--- a/app/code/Magento/Reports/Block/Adminhtml/Sales/Coupons/Grid.php
+++ b/app/code/Magento/Reports/Block/Adminhtml/Sales/Coupons/Grid.php
@@ -9,6 +9,7 @@ namespace Magento\Reports\Block\Adminhtml\Sales\Coupons;
  * Adminhtml coupons report grid block
  *
  * @author      Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.DepthOfInheritance)
  */
 class Grid extends \Magento\Reports\Block\Adminhtml\Grid\AbstractGrid
 {
@@ -41,6 +42,7 @@ class Grid extends \Magento\Reports\Block\Adminhtml\Grid\AbstractGrid
 
     /**
      * @return \Magento\Backend\Block\Widget\Grid\Extended
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _prepareColumns()
     {
diff --git a/app/code/Magento/Reports/Block/Adminhtml/Sales/Invoiced/Grid.php b/app/code/Magento/Reports/Block/Adminhtml/Sales/Invoiced/Grid.php
index c5eec01ddc391c29ddf452dbe5af063ca5ba9d60..414c2e775872a1e9a36795e820c9b417533c1416 100644
--- a/app/code/Magento/Reports/Block/Adminhtml/Sales/Invoiced/Grid.php
+++ b/app/code/Magento/Reports/Block/Adminhtml/Sales/Invoiced/Grid.php
@@ -3,12 +3,16 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Reports\Block\Adminhtml\Sales\Invoiced;
 
 /**
  * Adminhtml invoiced report grid block
  *
  * @author      Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.DepthOfInheritance)
  */
 class Grid extends \Magento\Reports\Block\Adminhtml\Grid\AbstractGrid
 {
diff --git a/app/code/Magento/Reports/Block/Adminhtml/Sales/Refunded/Grid.php b/app/code/Magento/Reports/Block/Adminhtml/Sales/Refunded/Grid.php
index 282d9ae30336d1d8ddb88db0a1e5f002c2d5430b..e5f68a315f74013a51de8df19dc74cfbc996efb5 100644
--- a/app/code/Magento/Reports/Block/Adminhtml/Sales/Refunded/Grid.php
+++ b/app/code/Magento/Reports/Block/Adminhtml/Sales/Refunded/Grid.php
@@ -3,12 +3,16 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Reports\Block\Adminhtml\Sales\Refunded;
 
 /**
  * Adminhtml refunded report grid block
  *
  * @author     Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.DepthOfInheritance)
  */
 class Grid extends \Magento\Reports\Block\Adminhtml\Grid\AbstractGrid
 {
diff --git a/app/code/Magento/Reports/Block/Adminhtml/Sales/Sales/Grid.php b/app/code/Magento/Reports/Block/Adminhtml/Sales/Sales/Grid.php
index 2820a424a76ae72f9f5f5537c5f47670fd5df07b..012e170b2c269dac90cdd6b43d1461edf4aa4ee4 100644
--- a/app/code/Magento/Reports/Block/Adminhtml/Sales/Sales/Grid.php
+++ b/app/code/Magento/Reports/Block/Adminhtml/Sales/Sales/Grid.php
@@ -3,12 +3,16 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Reports\Block\Adminhtml\Sales\Sales;
 
 /**
  * Adminhtml sales report grid block
  *
  * @author      Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.DepthOfInheritance)
  */
 class Grid extends \Magento\Reports\Block\Adminhtml\Grid\AbstractGrid
 {
@@ -39,6 +43,7 @@ class Grid extends \Magento\Reports\Block\Adminhtml\Grid\AbstractGrid
 
     /**
      * @return \Magento\Backend\Block\Widget\Grid\Extended
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _prepareColumns()
     {
diff --git a/app/code/Magento/Reports/Block/Adminhtml/Sales/Shipping/Grid.php b/app/code/Magento/Reports/Block/Adminhtml/Sales/Shipping/Grid.php
index 4dc7d8fefe70cede14472c30621f94a86ef386ee..ee594aaa3447565990652114cee7ba498b1f3011 100644
--- a/app/code/Magento/Reports/Block/Adminhtml/Sales/Shipping/Grid.php
+++ b/app/code/Magento/Reports/Block/Adminhtml/Sales/Shipping/Grid.php
@@ -3,12 +3,16 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Reports\Block\Adminhtml\Sales\Shipping;
 
 /**
  * Adminhtml shipping report grid block
  *
  * @author     Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.DepthOfInheritance)
  */
 class Grid extends \Magento\Reports\Block\Adminhtml\Grid\AbstractGrid
 {
diff --git a/app/code/Magento/Reports/Block/Adminhtml/Sales/Tax/Grid.php b/app/code/Magento/Reports/Block/Adminhtml/Sales/Tax/Grid.php
index c565dcf44b89689878bd729dddf4086889039f61..48c3a647299b4b3cc76dde1dd63ed36a0e05f7a2 100644
--- a/app/code/Magento/Reports/Block/Adminhtml/Sales/Tax/Grid.php
+++ b/app/code/Magento/Reports/Block/Adminhtml/Sales/Tax/Grid.php
@@ -3,12 +3,16 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Reports\Block\Adminhtml\Sales\Tax;
 
 /**
  * Adminhtml tax report grid block
  *
  * @author      Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.DepthOfInheritance)
  */
 class Grid extends \Magento\Reports\Block\Adminhtml\Grid\AbstractGrid
 {
@@ -153,6 +157,7 @@ class Grid extends \Magento\Reports\Block\Adminhtml\Grid\AbstractGrid
      * Preparing collection.  Filter canceled statuses for orders in taxes
      *
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     protected function _prepareCollection()
     {
diff --git a/app/code/Magento/Reports/Block/Adminhtml/Shopcart/Abandoned/Grid.php b/app/code/Magento/Reports/Block/Adminhtml/Shopcart/Abandoned/Grid.php
index bb2252e78fd86861b74136f18fa54980b349656c..4ef5903836cc0b82e097b768f1f59f7ec672cd6a 100644
--- a/app/code/Magento/Reports/Block/Adminhtml/Shopcart/Abandoned/Grid.php
+++ b/app/code/Magento/Reports/Block/Adminhtml/Shopcart/Abandoned/Grid.php
@@ -9,6 +9,7 @@ namespace Magento\Reports\Block\Adminhtml\Shopcart\Abandoned;
  * Adminhtml abandoned shopping carts report grid block
  *
  * @author      Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.DepthOfInheritance)
  */
 class Grid extends \Magento\Reports\Block\Adminhtml\Grid\Shopcart
 {
@@ -86,6 +87,7 @@ class Grid extends \Magento\Reports\Block\Adminhtml\Grid\Shopcart
 
     /**
      * @return \Magento\Backend\Block\Widget\Grid\Extended
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _prepareColumns()
     {
diff --git a/app/code/Magento/Reports/Block/Adminhtml/Shopcart/Customer/Grid.php b/app/code/Magento/Reports/Block/Adminhtml/Shopcart/Customer/Grid.php
index c509eeeac0260ef025ecde47ee8a857606740517..4d5fab61661678b4838b8c17996dfe0e9e80f7f6 100644
--- a/app/code/Magento/Reports/Block/Adminhtml/Shopcart/Customer/Grid.php
+++ b/app/code/Magento/Reports/Block/Adminhtml/Shopcart/Customer/Grid.php
@@ -9,6 +9,7 @@ namespace Magento\Reports\Block\Adminhtml\Shopcart\Customer;
  * Adminhtml items in carts report grid block
  *
  * @author      Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.DepthOfInheritance)
  */
 class Grid extends \Magento\Reports\Block\Adminhtml\Grid\Shopcart
 {
diff --git a/app/code/Magento/Reports/Block/Adminhtml/Shopcart/Product/Grid.php b/app/code/Magento/Reports/Block/Adminhtml/Shopcart/Product/Grid.php
index cd49650ef6b6424fcf9992a7f3b03b43ea42b818..a4837b8f21861bff88ee59dd564d207c4eab75a5 100644
--- a/app/code/Magento/Reports/Block/Adminhtml/Shopcart/Product/Grid.php
+++ b/app/code/Magento/Reports/Block/Adminhtml/Shopcart/Product/Grid.php
@@ -9,6 +9,7 @@ namespace Magento\Reports\Block\Adminhtml\Shopcart\Product;
  * Adminhtml products in carts report grid block
  *
  * @author      Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.DepthOfInheritance)
  */
 class Grid extends \Magento\Reports\Block\Adminhtml\Grid\Shopcart
 {
diff --git a/app/code/Magento/Reports/Block/Adminhtml/Wishlist.php b/app/code/Magento/Reports/Block/Adminhtml/Wishlist.php
index e60807dfc45023fbc533f65ad1f4a1ec45b85f28..690c98b4d692559de2d645c23623801f0ebe4705 100644
--- a/app/code/Magento/Reports/Block/Adminhtml/Wishlist.php
+++ b/app/code/Magento/Reports/Block/Adminhtml/Wishlist.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Reports\Block\Adminhtml;
 
 /**
diff --git a/app/code/Magento/Reports/Block/Product/Compared.php b/app/code/Magento/Reports/Block/Product/Compared.php
index 2ce868921e363dc1b880d48f363635e6096fadd4..6693d0053ea87edac053ff4e54bb3ada3de04152 100644
--- a/app/code/Magento/Reports/Block/Product/Compared.php
+++ b/app/code/Magento/Reports/Block/Product/Compared.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Reports\Block\Product;
 
 /**
diff --git a/app/code/Magento/Reports/Block/Product/Viewed.php b/app/code/Magento/Reports/Block/Product/Viewed.php
index c34b21cc73fe01436635bf60d0173e2474c6e529..addfa8cafd53a941194c033bbcdc9f9978b393e0 100644
--- a/app/code/Magento/Reports/Block/Product/Viewed.php
+++ b/app/code/Magento/Reports/Block/Product/Viewed.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Reports\Block\Product;
 
 /**
diff --git a/app/code/Magento/Reports/Controller/Adminhtml/Report/Sales.php b/app/code/Magento/Reports/Controller/Adminhtml/Report/Sales.php
index c91b2f4c2bb3d21862c8305cd6ca29c528c9d322..cbb4b377759a9ad8567430b2761a43cbd2a53f50 100644
--- a/app/code/Magento/Reports/Controller/Adminhtml/Report/Sales.php
+++ b/app/code/Magento/Reports/Controller/Adminhtml/Report/Sales.php
@@ -11,6 +11,9 @@
  */
 namespace Magento\Reports\Controller\Adminhtml\Report;
 
+/**
+ * @SuppressWarnings(PHPMD.NumberOfChildren)
+ */
 class Sales extends AbstractReport
 {
     /**
diff --git a/app/code/Magento/Reports/Helper/Data.php b/app/code/Magento/Reports/Helper/Data.php
index 74d44adbb953470466c071ec903674f3aa21473c..7553ee48de465cc896f4dc1d07015272b579be43 100644
--- a/app/code/Magento/Reports/Helper/Data.php
+++ b/app/code/Magento/Reports/Helper/Data.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Reports data helper
  */
@@ -42,6 +44,7 @@ class Data extends \Magento\Framework\App\Helper\AbstractHelper
      * @param string $to
      * @param string $period
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function getIntervals($from, $to, $period = self::REPORT_PERIOD_TYPE_DAY)
     {
diff --git a/app/code/Magento/Reports/Model/DateFactory.php b/app/code/Magento/Reports/Model/DateFactory.php
index fce16f4badf058e171e2b8ed296240a196308ed8..b604af9135446a9aea30ce5a684cd1fd1c68b5e4 100644
--- a/app/code/Magento/Reports/Model/DateFactory.php
+++ b/app/code/Magento/Reports/Model/DateFactory.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Reports\Model;
 
 class DateFactory
diff --git a/app/code/Magento/Reports/Model/Event/Observer.php b/app/code/Magento/Reports/Model/Event/Observer.php
index 7d03a411baf273158b5f8f20d720e241605eba7f..0283cf6e15df5dcca6fabe573da3882bd2ce61e1 100644
--- a/app/code/Magento/Reports/Model/Event/Observer.php
+++ b/app/code/Magento/Reports/Model/Event/Observer.php
@@ -107,6 +107,7 @@ class Observer
      *
      * @param \Magento\Framework\Event\Observer $observer
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function customerLogin(\Magento\Framework\Event\Observer $observer)
     {
@@ -130,6 +131,7 @@ class Observer
      *
      * @param \Magento\Framework\Event\Observer $observer
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function customerLogout(\Magento\Framework\Event\Observer $observer)
     {
@@ -182,6 +184,7 @@ class Observer
      *
      * @param \Magento\Framework\Event\Observer $observer
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function catalogProductCompareRemoveProduct(\Magento\Framework\Event\Observer $observer)
     {
@@ -197,6 +200,7 @@ class Observer
      *
      * @param \Magento\Framework\Event\Observer $observer
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function catalogProductCompareClear(\Magento\Framework\Event\Observer $observer)
     {
diff --git a/app/code/Magento/Reports/Model/Item.php b/app/code/Magento/Reports/Model/Item.php
index 02611d3f133fe6ec56840461cbcf6266ce522021..ecc9c805e91722136affdff251c4123ca873613c 100644
--- a/app/code/Magento/Reports/Model/Item.php
+++ b/app/code/Magento/Reports/Model/Item.php
@@ -33,6 +33,7 @@ class Item extends \Magento\Framework\Object
      * Get is empty indicator
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsEmpty()
     {
diff --git a/app/code/Magento/Reports/Model/Product/Index/AbstractIndex.php b/app/code/Magento/Reports/Model/Product/Index/AbstractIndex.php
index 1fc837231ebc487c10adbfd29f33f386b9678727..4d3ca4716833f3ba99cd5dae823c9085e92880c6 100644
--- a/app/code/Magento/Reports/Model/Product/Index/AbstractIndex.php
+++ b/app/code/Magento/Reports/Model/Product/Index/AbstractIndex.php
@@ -59,6 +59,7 @@ abstract class AbstractIndex extends \Magento\Framework\Model\AbstractModel
      * @param \Magento\Framework\Model\Resource\AbstractResource $resource
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
diff --git a/app/code/Magento/Reports/Model/Product/Index/Compared.php b/app/code/Magento/Reports/Model/Product/Index/Compared.php
index b1af74dc46abb1df4dac7398ee33a3f18d8a6f57..2bf6917f348786a75cce710579f3fa04b588278e 100644
--- a/app/code/Magento/Reports/Model/Product/Index/Compared.php
+++ b/app/code/Magento/Reports/Model/Product/Index/Compared.php
@@ -49,6 +49,7 @@ class Compared extends \Magento\Reports\Model\Product\Index\AbstractIndex
      * @param \Magento\Framework\Model\Resource\AbstractResource $resource
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
diff --git a/app/code/Magento/Reports/Model/Resource/Customer/Collection.php b/app/code/Magento/Reports/Model/Resource/Customer/Collection.php
index fb86dc238e79cc3f605eaead2e9e25b8289061b8..75e1aa39641d05eb69a99dfd31066ec00adb7771 100644
--- a/app/code/Magento/Reports/Model/Resource/Customer/Collection.php
+++ b/app/code/Magento/Reports/Model/Resource/Customer/Collection.php
@@ -57,12 +57,12 @@ class Collection extends \Magento\Customer\Model\Resource\Customer\Collection
     protected $_orderEntityField;
 
     /**
-     * @var \Magento\Sales\Model\QuoteRepository
+     * @var \Magento\Quote\Model\QuoteRepository
      */
     protected $quoteRepository;
 
     /**
-     * @var \Magento\Sales\Model\Resource\Quote\Item\CollectionFactory
+     * @var \Magento\Quote\Model\Resource\Quote\Item\CollectionFactory
      */
     protected $_quoteItemFactory;
 
@@ -77,8 +77,8 @@ class Collection extends \Magento\Customer\Model\Resource\Customer\Collection
      * @param \Magento\Eav\Model\Resource\Helper $resourceHelper
      * @param \Magento\Framework\Validator\UniversalFactory $universalFactory
      * @param \Magento\Framework\Object\Copy\Config $fieldsetConfig
-     * @param \Magento\Sales\Model\QuoteRepository $quoteRepository
-     * @param \Magento\Sales\Model\Resource\Quote\Item\CollectionFactory $quoteItemFactory
+     * @param \Magento\Quote\Model\QuoteRepository $quoteRepository
+     * @param \Magento\Quote\Model\Resource\Quote\Item\CollectionFactory $quoteItemFactory
      * @param mixed $connection
      * @param string $modelName
      *
@@ -95,8 +95,8 @@ class Collection extends \Magento\Customer\Model\Resource\Customer\Collection
         \Magento\Eav\Model\Resource\Helper $resourceHelper,
         \Magento\Framework\Validator\UniversalFactory $universalFactory,
         \Magento\Framework\Object\Copy\Config $fieldsetConfig,
-        \Magento\Sales\Model\QuoteRepository $quoteRepository,
-        \Magento\Sales\Model\Resource\Quote\Item\CollectionFactory $quoteItemFactory,
+        \Magento\Quote\Model\QuoteRepository $quoteRepository,
+        \Magento\Quote\Model\Resource\Quote\Item\CollectionFactory $quoteItemFactory,
         $connection = null,
         $modelName = self::CUSTOMER_MODEL_NAME
     ) {
diff --git a/app/code/Magento/Reports/Model/Resource/Entity/Summary/Collection/AbstractCollection.php b/app/code/Magento/Reports/Model/Resource/Entity/Summary/Collection/AbstractCollection.php
index dc3c8db4fffb6f5bb46094cdbb5bad6e976e124d..0e8ca1d37f81aa6291fe7c5594d1bc89f1c28339 100644
--- a/app/code/Magento/Reports/Model/Resource/Entity/Summary/Collection/AbstractCollection.php
+++ b/app/code/Magento/Reports/Model/Resource/Entity/Summary/Collection/AbstractCollection.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Reports summary collection
  *
@@ -84,6 +86,7 @@ class AbstractCollection extends \Magento\Framework\Data\Collection
      *
      * @param int $period
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function setDatePeriod($period)
     {
@@ -95,6 +98,7 @@ class AbstractCollection extends \Magento\Framework\Data\Collection
      *
      * @param int $storeId
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function setStoreFilter($storeId)
     {
diff --git a/app/code/Magento/Reports/Model/Resource/Event.php b/app/code/Magento/Reports/Model/Resource/Event.php
index 787e8d36c28102245e71e9c719f6d1c12c9d91ad..313876eb8d89a67752d069a4bc37281806c475c3 100644
--- a/app/code/Magento/Reports/Model/Resource/Event.php
+++ b/app/code/Magento/Reports/Model/Resource/Event.php
@@ -55,6 +55,7 @@ class Event extends \Magento\Framework\Model\Resource\Db\AbstractDb
      * @param int $customerId
      * @param array $types
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function updateCustomerType(\Magento\Reports\Model\Event $model, $visitorId, $customerId, $types = [])
     {
@@ -169,6 +170,7 @@ class Event extends \Magento\Framework\Model\Resource\Db\AbstractDb
      *
      * @param \Magento\Reports\Model\Event $object
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function clean(\Magento\Reports\Model\Event $object)
     {
diff --git a/app/code/Magento/Reports/Model/Resource/Order/Collection.php b/app/code/Magento/Reports/Model/Resource/Order/Collection.php
index 06f1ed962c9cc6defe373e4d21c74bbd43137b89..bc04bbe5a5c58ede12b689729a898570dabd975d 100644
--- a/app/code/Magento/Reports/Model/Resource/Order/Collection.php
+++ b/app/code/Magento/Reports/Model/Resource/Order/Collection.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Reports\Model\Resource\Order;
 
 use Magento\Framework\DB\Select;
@@ -11,6 +14,7 @@ use Magento\Framework\DB\Select;
  * Reports orders collection
  *
  * @author      Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Collection extends \Magento\Sales\Model\Resource\Order\Collection
 {
@@ -106,6 +110,7 @@ class Collection extends \Magento\Sales\Model\Resource\Order\Collection
      *
      * @param string $range
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function checkIsLive($range)
     {
@@ -362,6 +367,7 @@ class Collection extends \Magento\Sales\Model\Resource\Order\Collection
      * @param string $tzFrom
      * @param string $tzTo
      * @return string
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     protected function _getTZRangeExpressionForAttribute($range, $attribute, $tzFrom = '+00:00', $tzTo = null)
     {
@@ -384,6 +390,7 @@ class Collection extends \Magento\Sales\Model\Resource\Order\Collection
      * @param string $customEnd
      * @param bool $returnObjects
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function getDateRange($range, $customStart, $customEnd, $returnObjects = false)
     {
@@ -540,6 +547,7 @@ class Collection extends \Magento\Sales\Model\Resource\Order\Collection
      *
      * @param int $isFilter
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     protected function _calculateTotalsAggregated($isFilter = 0)
     {
diff --git a/app/code/Magento/Reports/Model/Resource/Product/Collection.php b/app/code/Magento/Reports/Model/Resource/Product/Collection.php
index 62dc5b4a45ea64ae57ffa0257a8ba07d897feb0e..0ebba9cca35cf36d1db35a6d1f180ab41f9437a8 100644
--- a/app/code/Magento/Reports/Model/Resource/Product/Collection.php
+++ b/app/code/Magento/Reports/Model/Resource/Product/Collection.php
@@ -11,6 +11,9 @@
  */
 namespace Magento\Reports\Model\Resource\Product;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class Collection extends \Magento\Catalog\Model\Resource\Product\Collection
 {
     const SELECT_COUNT_SQL_TYPE_CART = 1;
@@ -236,10 +239,10 @@ class Collection extends \Magento\Catalog\Model\Resource\Product\Collection
         if ($this->_selectCountSqlType == self::SELECT_COUNT_SQL_TYPE_CART) {
             $countSelect = clone $this->getSelect();
             $countSelect->reset()->from(
-                ['quote_item_table' => $this->getTable('sales_quote_item')],
+                ['quote_item_table' => $this->getTable('quote_item')],
                 ['COUNT(DISTINCT quote_item_table.product_id)']
             )->join(
-                ['quote_table' => $this->getTable('sales_quote')],
+                ['quote_table' => $this->getTable('quote')],
                 'quote_table.entity_id = quote_item_table.quote_id AND quote_table.is_active = 1',
                 []
             );
@@ -269,10 +272,10 @@ class Collection extends \Magento\Catalog\Model\Resource\Product\Collection
         $countSelect->reset();
 
         $countSelect->from(
-            ['quote_items' => $this->getTable('sales_quote_item')],
+            ['quote_items' => $this->getTable('quote_item')],
             'COUNT(*)'
         )->join(
-            ['quotes' => $this->getTable('sales_quote')],
+            ['quotes' => $this->getTable('quote')],
             'quotes.entity_id = quote_items.quote_id AND quotes.is_active = 1',
             []
         )->where(
diff --git a/app/code/Magento/Reports/Model/Resource/Product/Index/AbstractIndex.php b/app/code/Magento/Reports/Model/Resource/Product/Index/AbstractIndex.php
index bbdc48439e66bcfd5491bd84ee90bd48d0c05ce2..9397a7272a74dca2c3528452579a8da4b45074c3 100644
--- a/app/code/Magento/Reports/Model/Resource/Product/Index/AbstractIndex.php
+++ b/app/code/Magento/Reports/Model/Resource/Product/Index/AbstractIndex.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Reports\Model\Resource\Product\Index;
 
 /**
diff --git a/app/code/Magento/Reports/Model/Resource/Product/Index/Collection/AbstractCollection.php b/app/code/Magento/Reports/Model/Resource/Product/Index/Collection/AbstractCollection.php
index aaa46e3164cbc443249026feca7d1a6225e8d6cc..0da793945459bf645a4d73b07aa73364c708e7b0 100644
--- a/app/code/Magento/Reports/Model/Resource/Product/Index/Collection/AbstractCollection.php
+++ b/app/code/Magento/Reports/Model/Resource/Product/Index/Collection/AbstractCollection.php
@@ -11,6 +11,9 @@
  */
 namespace Magento\Reports\Model\Resource\Product\Index\Collection;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 abstract class AbstractCollection extends \Magento\Catalog\Model\Resource\Product\Collection
 {
     /**
diff --git a/app/code/Magento/Reports/Model/Resource/Product/Lowstock/Collection.php b/app/code/Magento/Reports/Model/Resource/Product/Lowstock/Collection.php
index bb7310d9760f8aa7c8bdb38e91b91c35a39bfb65..891dbabb61f921a2ea2a1d6ee19df22b47c90b0f 100644
--- a/app/code/Magento/Reports/Model/Resource/Product/Lowstock/Collection.php
+++ b/app/code/Magento/Reports/Model/Resource/Product/Lowstock/Collection.php
@@ -11,6 +11,9 @@
  */
 namespace Magento\Reports\Model\Resource\Product\Lowstock;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class Collection extends \Magento\Reports\Model\Resource\Product\Collection
 {
     /**
diff --git a/app/code/Magento/Reports/Model/Resource/Quote/Collection.php b/app/code/Magento/Reports/Model/Resource/Quote/Collection.php
index 5479778a341106f3c0d11feaadba6b61a94d16c8..6ff03c604e1ce160363d445ad0b83b5746bc3b81 100644
--- a/app/code/Magento/Reports/Model/Resource/Quote/Collection.php
+++ b/app/code/Magento/Reports/Model/Resource/Quote/Collection.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Reports quote collection
  *
@@ -11,7 +13,7 @@
  */
 namespace Magento\Reports\Model\Resource\Quote;
 
-class Collection extends \Magento\Sales\Model\Resource\Quote\Collection
+class Collection extends \Magento\Quote\Model\Resource\Quote\Collection
 {
     const SELECT_COUNT_SQL_TYPE_CART = 1;
 
@@ -138,7 +140,7 @@ class Collection extends \Magento\Sales\Model\Resource\Quote\Collection
         )->reset(
             \Zend_Db_Select::COLUMNS
         )->joinInner(
-            ['quote_items' => $this->getTable('sales_quote_item')],
+            ['quote_items' => $this->getTable('quote_item')],
             'quote_items.quote_id = main_table.entity_id',
             null
         )->joinInner(
diff --git a/app/code/Magento/Reports/Model/Resource/Report/AbstractReport.php b/app/code/Magento/Reports/Model/Resource/Report/AbstractReport.php
index 3c74db144db62de0d74452f6e240943f1443334c..0ffd17fd9c7db31aacb03cee226c4fa8e248300e 100644
--- a/app/code/Magento/Reports/Model/Resource/Report/AbstractReport.php
+++ b/app/code/Magento/Reports/Model/Resource/Report/AbstractReport.php
@@ -4,10 +4,13 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Reports\Model\Resource\Report;
 
 /**
  * Abstract report aggregate resource model
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 abstract class AbstractReport extends \Magento\Framework\Model\Resource\Db\AbstractDb
 {
@@ -276,6 +279,7 @@ abstract class AbstractReport extends \Magento\Framework\Model\Resource\Db\Abstr
      * @param string $alias
      * @param string $relatedAlias
      * @return \Magento\Framework\DB\Select
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     protected function _getTableDateRangeRelatedSelect(
         $table,
diff --git a/app/code/Magento/Reports/Model/Resource/Report/Product/Viewed.php b/app/code/Magento/Reports/Model/Resource/Report/Product/Viewed.php
index e86195185f3ec82db748b153ae3238c8ea9c31dd..4f14518968734f06696080d5d9051f866b8969db 100644
--- a/app/code/Magento/Reports/Model/Resource/Report/Product/Viewed.php
+++ b/app/code/Magento/Reports/Model/Resource/Report/Product/Viewed.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Most viewed product report aggregate resource model
  *
@@ -79,6 +81,7 @@ class Viewed extends \Magento\Sales\Model\Resource\Report\AbstractReport
      * @param null|mixed $from
      * @param null|mixed $to
      * @return $this
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public function aggregate($from = null, $to = null)
     {
diff --git a/app/code/Magento/Reports/Model/Resource/Report/Product/Viewed/Collection.php b/app/code/Magento/Reports/Model/Resource/Report/Product/Viewed/Collection.php
index 24c60fec3319941ea5706d47049eea1d83d1c8e7..2f06240e07d106a9c9750be5a0e69b05e139bcb4 100644
--- a/app/code/Magento/Reports/Model/Resource/Report/Product/Viewed/Collection.php
+++ b/app/code/Magento/Reports/Model/Resource/Report/Product/Viewed/Collection.php
@@ -4,11 +4,16 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Report most viewed collection
  */
 namespace Magento\Reports\Model\Resource\Report\Product\Viewed;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class Collection extends \Magento\Reports\Model\Resource\Report\Collection\AbstractCollection
 {
     /**
@@ -219,6 +224,9 @@ class Collection extends \Magento\Reports\Model\Resource\Report\Collection\Abstr
      * totals
      *
      * @return $this|\Magento\Framework\Model\Resource\Db\Collection\AbstractCollection
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _beforeLoad()
     {
diff --git a/app/code/Magento/Reports/Model/Resource/Review/Customer/Collection.php b/app/code/Magento/Reports/Model/Resource/Review/Customer/Collection.php
index cfd2365c682343b49c37f48e55a2f42ec9ae5868..c2abe745e0a17bb06902b8799f263c6a792ece3f 100644
--- a/app/code/Magento/Reports/Model/Resource/Review/Customer/Collection.php
+++ b/app/code/Magento/Reports/Model/Resource/Review/Customer/Collection.php
@@ -29,6 +29,7 @@ class Collection extends \Magento\Review\Model\Resource\Review\Collection
      * @param \Magento\Customer\Model\Resource\Customer $customerResource
      * @param mixed $connection
      * @param \Magento\Framework\Model\Resource\Db\AbstractDb $resource
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Core\Model\EntityFactory $entityFactory,
diff --git a/app/code/Magento/Reports/Model/Resource/Shopcart/Product/Collection.php b/app/code/Magento/Reports/Model/Resource/Shopcart/Product/Collection.php
index 9a5f19c6c32c8321f3e85c39cbed38f6fe16d3b8..8c251de78d6bd554fe73729dcef77b779fcd000d 100644
--- a/app/code/Magento/Reports/Model/Resource/Shopcart/Product/Collection.php
+++ b/app/code/Magento/Reports/Model/Resource/Shopcart/Product/Collection.php
@@ -32,6 +32,7 @@ class Collection extends \Magento\Reports\Model\Resource\Product\Collection
      * @param string $from
      * @param string $to
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function setDateRange($from, $to)
     {
diff --git a/app/code/Magento/Reports/Model/Totals.php b/app/code/Magento/Reports/Model/Totals.php
index 0982638cb8ecfdf4b915b718351ea640d34257e4..75fbaaed53317b09e1ccafb5a91a1c605d090895 100644
--- a/app/code/Magento/Reports/Model/Totals.php
+++ b/app/code/Magento/Reports/Model/Totals.php
@@ -19,6 +19,8 @@ class Totals
      * @param string $from
      * @param string $to
      * @return \Magento\Framework\Object
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function countTotals($grid, $from, $to)
     {
diff --git a/app/code/Magento/Reports/composer.json b/app/code/Magento/Reports/composer.json
index 817eb609ddfed80d96dcfca120219e40d1dc5746..26cb3045f2757bdc39349819c800c1142fa8d65e 100644
--- a/app/code/Magento/Reports/composer.json
+++ b/app/code/Magento/Reports/composer.json
@@ -3,27 +3,28 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-eav": "0.42.0-beta3",
-        "magento/module-customer": "0.42.0-beta3",
-        "magento/module-catalog": "0.42.0-beta3",
-        "magento/module-sales": "0.42.0-beta3",
-        "magento/module-cms": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/module-core": "0.42.0-beta3",
-        "magento/module-widget": "0.42.0-beta3",
-        "magento/module-log": "0.42.0-beta3",
-        "magento/module-wishlist": "0.42.0-beta3",
-        "magento/module-review": "0.42.0-beta3",
-        "magento/module-catalog-inventory": "0.42.0-beta3",
-        "magento/module-tax": "0.42.0-beta3",
-        "magento/module-downloadable": "0.42.0-beta3",
-        "magento/module-sales-rule": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-eav": "0.42.0-beta4",
+        "magento/module-customer": "0.42.0-beta4",
+        "magento/module-catalog": "0.42.0-beta4",
+        "magento/module-sales": "0.42.0-beta4",
+        "magento/module-cms": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/module-core": "0.42.0-beta4",
+        "magento/module-widget": "0.42.0-beta4",
+        "magento/module-log": "0.42.0-beta4",
+        "magento/module-wishlist": "0.42.0-beta4",
+        "magento/module-review": "0.42.0-beta4",
+        "magento/module-catalog-inventory": "0.42.0-beta4",
+        "magento/module-tax": "0.42.0-beta4",
+        "magento/module-downloadable": "0.42.0-beta4",
+        "magento/module-sales-rule": "0.42.0-beta4",
+        "magento/module-quote": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/Reports/data/reports_setup/data-install-2.0.0.php b/app/code/Magento/Reports/data/reports_setup/data-install-2.0.0.php
index daf541ed3b51441d170351cc9cd4de16fb8d291e..1273bbcde6890a7248e8f9aef3c67b38c3f1d841 100644
--- a/app/code/Magento/Reports/data/reports_setup/data-install-2.0.0.php
+++ b/app/code/Magento/Reports/data/reports_setup/data-install-2.0.0.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var $installer \Magento\Reports\Model\Resource\Setup */
 $installer = $this;
 /*
diff --git a/app/code/Magento/Reports/etc/module.xml b/app/code/Magento/Reports/etc/module.xml
index 6cfa6166708cd2cb2779d1922f2719f6069c1d92..4511725cecb30bab1347167779f6143232af7ee7 100644
--- a/app/code/Magento/Reports/etc/module.xml
+++ b/app/code/Magento/Reports/etc/module.xml
@@ -11,6 +11,7 @@
             <module name="Magento_Customer"/>
             <module name="Magento_Catalog"/>
             <module name="Magento_Sales"/>
+            <module name="Magento_Quote"/>
             <module name="Magento_Cms"/>
         </sequence>
     </module>
diff --git a/app/code/Magento/Reports/view/adminhtml/templates/grid.phtml b/app/code/Magento/Reports/view/adminhtml/templates/grid.phtml
index 25da39fe7049aebc5028fb59c1365d816c09bd39..146ab829796fd14034ff7f8e49f407a3dd1ceacd 100644
--- a/app/code/Magento/Reports/view/adminhtml/templates/grid.phtml
+++ b/app/code/Magento/Reports/view/adminhtml/templates/grid.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /** @var $this \Magento\Reports\Block\Adminhtml\Grid */
@@ -58,7 +61,7 @@ $numColumns = sizeof($this->getColumns());
                 </label>
                 <?php echo $this->getRefreshButtonHtml() ?>
             </div>
-            <script type="text/javascript">
+            <script>
 require([
     "jquery",
     "mage/calendar"
@@ -91,7 +94,7 @@ require([
     </div>
 </div>
 <?php if ($this->canDisplayContainer()): ?>
-    <script type="text/javascript">
+    <script>
 require([
     "jquery",
     "validation",
diff --git a/app/code/Magento/Reports/view/adminhtml/templates/report/grid/container.phtml b/app/code/Magento/Reports/view/adminhtml/templates/report/grid/container.phtml
index 165cb67e17827b2eb888cd474cd105f89b1133c6..23a52b20aa483327946a12545a4eb05640f6e38f 100644
--- a/app/code/Magento/Reports/view/adminhtml/templates/report/grid/container.phtml
+++ b/app/code/Magento/Reports/view/adminhtml/templates/report/grid/container.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <div class="reports-content">
@@ -11,7 +14,7 @@
 
 <?php echo $this->getGridHtml() ?>
 
-<script type="text/javascript">
+<script>
 require([
     'jquery',
     'mage/backend/validation',
diff --git a/app/code/Magento/Reports/view/adminhtml/templates/report/refresh/statistics.phtml b/app/code/Magento/Reports/view/adminhtml/templates/report/refresh/statistics.phtml
index 027ef242060ef664342626560cb84bd09d5eceec..476eb5940c95c5eca090a4f04459bfd204a56abe 100644
--- a/app/code/Magento/Reports/view/adminhtml/templates/report/refresh/statistics.phtml
+++ b/app/code/Magento/Reports/view/adminhtml/templates/report/refresh/statistics.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <div class="page-actions"><?php echo $this->getButtonsHtml() ?></div>
 <?php echo $this->getChildHtml('grid') ?>
diff --git a/app/code/Magento/Reports/view/adminhtml/templates/store/switcher.phtml b/app/code/Magento/Reports/view/adminhtml/templates/store/switcher.phtml
index 2ea1dcb452056511d7b7669ae570b51232e3c94a..6acf5ebffcc52bd993f0108924fd4da2cd31657c 100644
--- a/app/code/Magento/Reports/view/adminhtml/templates/store/switcher.phtml
+++ b/app/code/Magento/Reports/view/adminhtml/templates/store/switcher.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
@@ -38,7 +41,7 @@
     </div>
     <?php echo $this->getHintHtml() ?>
 </div>
-<script type="text/javascript">
+<script>
 require(['prototype'], function(){
 
     switchStore = function(obj){
diff --git a/app/code/Magento/Reports/view/adminhtml/templates/store/switcher/enhanced.phtml b/app/code/Magento/Reports/view/adminhtml/templates/store/switcher/enhanced.phtml
index f5ff8f0053dd63060d9b5e8ae711f30617f68b11..38233a4477095b6dbb38bf6e6d1a9e097763d93f 100644
--- a/app/code/Magento/Reports/view/adminhtml/templates/store/switcher/enhanced.phtml
+++ b/app/code/Magento/Reports/view/adminhtml/templates/store/switcher/enhanced.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
@@ -44,7 +47,7 @@
     </div>
     <?php echo $this->getHintHtml() ?>
 </div>
-<script type="text/javascript">
+<script>
 require(['prototype'], function(){
 
     switchStore = function(obj){
diff --git a/app/code/Magento/Reports/view/frontend/templates/js/components.phtml b/app/code/Magento/Reports/view/frontend/templates/js/components.phtml
index 99be8e37348cec69521e018a61f416324e582a94..43f7e9c30c0126f46204910ee749ef83ad81e815 100644
--- a/app/code/Magento/Reports/view/frontend/templates/js/components.phtml
+++ b/app/code/Magento/Reports/view/frontend/templates/js/components.phtml
@@ -3,5 +3,8 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php echo $this->getChildHtml() ?>
diff --git a/app/code/Magento/Reports/view/frontend/templates/product/widget/viewed.phtml b/app/code/Magento/Reports/view/frontend/templates/product/widget/viewed.phtml
index deba99b44ca68572a76a58d7e50756a53530118e..9366134008b7bb551374b63af5ddbbfa5dc2a716 100644
--- a/app/code/Magento/Reports/view/frontend/templates/product/widget/viewed.phtml
+++ b/app/code/Magento/Reports/view/frontend/templates/product/widget/viewed.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /* @var $this \Magento\Reports\Block\Product\Widget\Viewed */
 ?>
 
diff --git a/app/code/Magento/Reports/view/frontend/templates/product/widget/viewed/item.phtml b/app/code/Magento/Reports/view/frontend/templates/product/widget/viewed/item.phtml
index 3d60dc094b0f3abe8975fce65019f64a7cbf7c72..6a034ee7a4f67c668790e8d22441d8dfecad82f3 100644
--- a/app/code/Magento/Reports/view/frontend/templates/product/widget/viewed/item.phtml
+++ b/app/code/Magento/Reports/view/frontend/templates/product/widget/viewed/item.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /* @var $this \Magento\Reports\Block\Product\Widget\Viewed\Item */
 ?>
 
diff --git a/app/code/Magento/Reports/view/frontend/templates/widget/compared/column/compared_default_list.phtml b/app/code/Magento/Reports/view/frontend/templates/widget/compared/column/compared_default_list.phtml
index 152cd7ac497cf44baa651503392b39aedd025161..dc783681253441bd9eb5091e80ee201b7d3b099d 100644
--- a/app/code/Magento/Reports/view/frontend/templates/widget/compared/column/compared_default_list.phtml
+++ b/app/code/Magento/Reports/view/frontend/templates/widget/compared/column/compared_default_list.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 if ($exist = $this->getRecentlyComparedProducts()) {
diff --git a/app/code/Magento/Reports/view/frontend/templates/widget/compared/column/compared_images_list.phtml b/app/code/Magento/Reports/view/frontend/templates/widget/compared/column/compared_images_list.phtml
index c7f31e7f2661b669953557b977af42f27c290d80..34d6dc69024ca54502810fd6b7733e4f7acd9fc9 100644
--- a/app/code/Magento/Reports/view/frontend/templates/widget/compared/column/compared_images_list.phtml
+++ b/app/code/Magento/Reports/view/frontend/templates/widget/compared/column/compared_images_list.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 if ($exist = $this->getRecentlyComparedProducts()) {
diff --git a/app/code/Magento/Reports/view/frontend/templates/widget/compared/column/compared_names_list.phtml b/app/code/Magento/Reports/view/frontend/templates/widget/compared/column/compared_names_list.phtml
index edd4a24b9ab6415e238c55c2efc0d6426b0afded..4839a54647868a74a0899721cbd7434c74ae4f90 100644
--- a/app/code/Magento/Reports/view/frontend/templates/widget/compared/column/compared_names_list.phtml
+++ b/app/code/Magento/Reports/view/frontend/templates/widget/compared/column/compared_names_list.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php if ($_products = $this->getRecentlyComparedProducts()): ?>
 <div class="block widget block-compared-products-names">
diff --git a/app/code/Magento/Reports/view/frontend/templates/widget/compared/content/compared_grid.phtml b/app/code/Magento/Reports/view/frontend/templates/widget/compared/content/compared_grid.phtml
index ab08bb94387347a2ccc263d62ddb0238a505ed93..9d7790176f57041c04c3f51cd838756cba79a9f7 100644
--- a/app/code/Magento/Reports/view/frontend/templates/widget/compared/content/compared_grid.phtml
+++ b/app/code/Magento/Reports/view/frontend/templates/widget/compared/content/compared_grid.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php
diff --git a/app/code/Magento/Reports/view/frontend/templates/widget/compared/content/compared_list.phtml b/app/code/Magento/Reports/view/frontend/templates/widget/compared/content/compared_list.phtml
index d9e54ff22d9bac41ed88295427e494861235c561..0b52ca4664c235b0e6f4a9237e4456ff629cbc57 100644
--- a/app/code/Magento/Reports/view/frontend/templates/widget/compared/content/compared_list.phtml
+++ b/app/code/Magento/Reports/view/frontend/templates/widget/compared/content/compared_list.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php
diff --git a/app/code/Magento/Reports/view/frontend/templates/widget/viewed/column/viewed_default_list.phtml b/app/code/Magento/Reports/view/frontend/templates/widget/viewed/column/viewed_default_list.phtml
index 14496071a749893e8352ed902c37afe4317af3f9..3f2285905c7ea3fd7282bdad1a2eec7dfe8e1cb6 100644
--- a/app/code/Magento/Reports/view/frontend/templates/widget/viewed/column/viewed_default_list.phtml
+++ b/app/code/Magento/Reports/view/frontend/templates/widget/viewed/column/viewed_default_list.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/Reports/view/frontend/templates/widget/viewed/column/viewed_images_list.phtml b/app/code/Magento/Reports/view/frontend/templates/widget/viewed/column/viewed_images_list.phtml
index 29f151524634e45719e1834d4131c73e535cee47..bd95f6f5f879d2de14de5d01936c6fa88f922763 100644
--- a/app/code/Magento/Reports/view/frontend/templates/widget/viewed/column/viewed_images_list.phtml
+++ b/app/code/Magento/Reports/view/frontend/templates/widget/viewed/column/viewed_images_list.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/Reports/view/frontend/templates/widget/viewed/column/viewed_names_list.phtml b/app/code/Magento/Reports/view/frontend/templates/widget/viewed/column/viewed_names_list.phtml
index 12c49ca2ac34d1a34dce3b6e30a2962f6b2c2555..89112448c3c70758ec46f0006c494710f9d7d83e 100644
--- a/app/code/Magento/Reports/view/frontend/templates/widget/viewed/column/viewed_names_list.phtml
+++ b/app/code/Magento/Reports/view/frontend/templates/widget/viewed/column/viewed_names_list.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/Reports/view/frontend/templates/widget/viewed/content/viewed_grid.phtml b/app/code/Magento/Reports/view/frontend/templates/widget/viewed/content/viewed_grid.phtml
index 72b07a32c53da0b1a6444be9970962a58376467f..6e014c1442c8518d3eb43e8637d9f025fc6fe407 100644
--- a/app/code/Magento/Reports/view/frontend/templates/widget/viewed/content/viewed_grid.phtml
+++ b/app/code/Magento/Reports/view/frontend/templates/widget/viewed/content/viewed_grid.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/Reports/view/frontend/templates/widget/viewed/content/viewed_list.phtml b/app/code/Magento/Reports/view/frontend/templates/widget/viewed/content/viewed_list.phtml
index ccf80c74187c6c94918ba2fbf1fbe9e18b8f7969..aa85c35e2a2ca49bea566e20a31b7ba57892bdf5 100644
--- a/app/code/Magento/Reports/view/frontend/templates/widget/viewed/content/viewed_list.phtml
+++ b/app/code/Magento/Reports/view/frontend/templates/widget/viewed/content/viewed_list.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/RequireJs/composer.json b/app/code/Magento/RequireJs/composer.json
index 4c029c1c34159cceb37edcf2eef91b422724ba2b..c6f02b72628d15c6f9506b70e09800c5109b03cb 100644
--- a/app/code/Magento/RequireJs/composer.json
+++ b/app/code/Magento/RequireJs/composer.json
@@ -3,11 +3,11 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/framework": "0.42.0-beta3",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/Review/Block/Adminhtml/Add.php b/app/code/Magento/Review/Block/Adminhtml/Add.php
index 0f9789d0fac5ba78644d21f37efdd47e43ada156..ce58795f990a07583fd59ebe119649066a5a23a9 100644
--- a/app/code/Magento/Review/Block/Adminhtml/Add.php
+++ b/app/code/Magento/Review/Block/Adminhtml/Add.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Review\Block\Adminhtml;
 
 /**
diff --git a/app/code/Magento/Review/Block/Adminhtml/Add/Form.php b/app/code/Magento/Review/Block/Adminhtml/Add/Form.php
index 58e8d93332ff50534609a084ca7b7b65e8d1c810..ef18b5786913d006ecc81f2b1870731cb9140440 100644
--- a/app/code/Magento/Review/Block/Adminhtml/Add/Form.php
+++ b/app/code/Magento/Review/Block/Adminhtml/Add/Form.php
@@ -51,6 +51,7 @@ class Form extends \Magento\Backend\Block\Widget\Form\Generic
      * Prepare add review form
      *
      * @return void
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _prepareForm()
     {
diff --git a/app/code/Magento/Review/Block/Adminhtml/Edit.php b/app/code/Magento/Review/Block/Adminhtml/Edit.php
index 099f40c1d76dcdf584d1572a71ad3e802d3283eb..90b62eca191fc8c1880b27e958fb10ba4f9fc2a2 100644
--- a/app/code/Magento/Review/Block/Adminhtml/Edit.php
+++ b/app/code/Magento/Review/Block/Adminhtml/Edit.php
@@ -55,6 +55,7 @@ class Edit extends \Magento\Backend\Block\Widget\Form\Container
      * Initialize edit review
      *
      * @return void
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _construct()
     {
diff --git a/app/code/Magento/Review/Block/Adminhtml/Edit/Form.php b/app/code/Magento/Review/Block/Adminhtml/Edit/Form.php
index f7e570bb1baa4ca5cbb60e0cdf53777141448af0..e5904fd543c42c30bb50f9689fce036319b5b2c5 100644
--- a/app/code/Magento/Review/Block/Adminhtml/Edit/Form.php
+++ b/app/code/Magento/Review/Block/Adminhtml/Edit/Form.php
@@ -68,6 +68,7 @@ class Form extends \Magento\Backend\Block\Widget\Form\Generic
      * Prepare edit review form
      *
      * @return $this
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _prepareForm()
     {
diff --git a/app/code/Magento/Review/Block/Adminhtml/Grid.php b/app/code/Magento/Review/Block/Adminhtml/Grid.php
index 5f7a3aa9fc424afa9cf1f28d2b5a6fc6687a635b..73c09bc930e47a95a862513d3fd70bc6e1ffd181 100644
--- a/app/code/Magento/Review/Block/Adminhtml/Grid.php
+++ b/app/code/Magento/Review/Block/Adminhtml/Grid.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Adminhtml reviews grid
  *
@@ -153,6 +155,7 @@ class Grid extends \Magento\Backend\Block\Widget\Grid\Extended
      * Prepare grid columns
      *
      * @return \Magento\Backend\Block\Widget\Grid
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _prepareColumns()
     {
diff --git a/app/code/Magento/Review/Block/Adminhtml/Product/Edit/Tab/Reviews.php b/app/code/Magento/Review/Block/Adminhtml/Product/Edit/Tab/Reviews.php
index b6e4d5da0acccdb6f96b922018b92cdd349cde23..d95a576962c38171ef1daee0a32505ef56f8bcc2 100644
--- a/app/code/Magento/Review/Block/Adminhtml/Product/Edit/Tab/Reviews.php
+++ b/app/code/Magento/Review/Block/Adminhtml/Product/Edit/Tab/Reviews.php
@@ -7,6 +7,9 @@
  */
 namespace Magento\Review\Block\Adminhtml\Product\Edit\Tab;
 
+/**
+ * @SuppressWarnings(PHPMD.DepthOfInheritance)
+ */
 class Reviews extends \Magento\Review\Block\Adminhtml\Grid
 {
     /**
diff --git a/app/code/Magento/Review/Block/Adminhtml/Product/Grid.php b/app/code/Magento/Review/Block/Adminhtml/Product/Grid.php
index 8e2fda6f25c36bc08a6f212e6aa7b77f0df1ac9b..86f2ee89153e0abb2c9a09e01da0520a9c96daa7 100644
--- a/app/code/Magento/Review/Block/Adminhtml/Product/Grid.php
+++ b/app/code/Magento/Review/Block/Adminhtml/Product/Grid.php
@@ -9,6 +9,7 @@ namespace Magento\Review\Block\Adminhtml\Product;
  * Adminhtml product grid block
  *
  * @author      Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.DepthOfInheritance)
  */
 class Grid extends \Magento\Catalog\Block\Adminhtml\Product\Grid
 {
diff --git a/app/code/Magento/Review/Block/Adminhtml/Rating/Detailed.php b/app/code/Magento/Review/Block/Adminhtml/Rating/Detailed.php
index 79ac016cc13e0a98c38390d5d3f07f7d240089d3..e1332212f7959cc0abbfae71fe00aca03f37e895 100644
--- a/app/code/Magento/Review/Block/Adminhtml/Rating/Detailed.php
+++ b/app/code/Magento/Review/Block/Adminhtml/Rating/Detailed.php
@@ -149,6 +149,7 @@ class Detailed extends \Magento\Backend\Block\Template
      * @param Option $option
      * @param \Magento\Review\Model\Rating $rating
      * @return bool
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function isSelected($option, $rating)
     {
diff --git a/app/code/Magento/Review/Block/Adminhtml/Rating/Edit/Tab/Form.php b/app/code/Magento/Review/Block/Adminhtml/Rating/Edit/Tab/Form.php
index 3d0a0990732d0d17c66a4935a20dc0bc2f631ff7..d3971e9e08abbb914828d1e6a6cf64d43b784647 100644
--- a/app/code/Magento/Review/Block/Adminhtml/Rating/Edit/Tab/Form.php
+++ b/app/code/Magento/Review/Block/Adminhtml/Rating/Edit/Tab/Form.php
@@ -61,6 +61,9 @@ class Form extends \Magento\Backend\Block\Widget\Form\Generic
      * Prepare rating edit form
      *
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _prepareForm()
     {
diff --git a/app/code/Magento/Review/Block/Form.php b/app/code/Magento/Review/Block/Form.php
index 391a2e64315db61dd98ad82e178a88ca34b62d7a..88429e9c1195415d153f9b0ad4e7b0a9fe46bb07 100644
--- a/app/code/Magento/Review/Block/Form.php
+++ b/app/code/Magento/Review/Block/Form.php
@@ -14,6 +14,7 @@ use Magento\Review\Model\Resource\Rating\Collection as RatingCollection;
  * Review form block
  *
  * @author      Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Form extends \Magento\Framework\View\Element\Template
 {
@@ -86,6 +87,7 @@ class Form extends \Magento\Framework\View\Element\Template
      * @param \Magento\Framework\App\Http\Context $httpContext
      * @param \Magento\Customer\Model\Url $customerUrl
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\View\Element\Template\Context $context,
diff --git a/app/code/Magento/Review/Block/Product/View.php b/app/code/Magento/Review/Block/Product/View.php
index 0a9194717af43e6084a609edf915ca897ac7f30c..377301f384d8d907618c06b604abb5cc6d1cc16a 100644
--- a/app/code/Magento/Review/Block/Product/View.php
+++ b/app/code/Magento/Review/Block/Product/View.php
@@ -12,6 +12,7 @@ use Magento\Review\Model\Resource\Review\Collection as ReviewCollection;
  * Product Reviews Page
  *
  * @author     Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class View extends \Magento\Catalog\Block\Product\View
 {
@@ -42,6 +43,7 @@ class View extends \Magento\Catalog\Block\Product\View
      * @param \Magento\Framework\Pricing\PriceCurrencyInterface $priceCurrency
      * @param \Magento\Review\Model\Resource\Review\CollectionFactory $collectionFactory
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Catalog\Block\Product\Context $context,
diff --git a/app/code/Magento/Review/Controller/Adminhtml/Product/Save.php b/app/code/Magento/Review/Controller/Adminhtml/Product/Save.php
index d3fc11045bfb219a0713864eafb7d3a0c49dbe7e..39150b4857d5dd54094f4ccaf89d82772d601051 100644
--- a/app/code/Magento/Review/Controller/Adminhtml/Product/Save.php
+++ b/app/code/Magento/Review/Controller/Adminhtml/Product/Save.php
@@ -10,6 +10,7 @@ class Save extends \Magento\Review\Controller\Adminhtml\Product
 {
     /**
      * @return mixed
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function execute()
     {
diff --git a/app/code/Magento/Review/Controller/Product.php b/app/code/Magento/Review/Controller/Product.php
index 3521c9f6b601f76084d96bc73d6511b39aa21ca3..b44a29ec6c42fe188ee2cbd65ec391a4dc15fee9 100644
--- a/app/code/Magento/Review/Controller/Product.php
+++ b/app/code/Magento/Review/Controller/Product.php
@@ -14,6 +14,7 @@ use Magento\Review\Model\Review;
  * Review controller
  *
  * @author     Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Product extends \Magento\Framework\App\Action\Action
 {
@@ -107,6 +108,7 @@ class Product extends \Magento\Framework\App\Action\Action
      * @param \Magento\Framework\Session\Generic $reviewSession
      * @param \Magento\Store\Model\StoreManagerInterface $storeManager
      * @param \Magento\Core\App\Action\FormKeyValidator $formKeyValidator
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\App\Action\Context $context,
diff --git a/app/code/Magento/Review/Controller/Product/Post.php b/app/code/Magento/Review/Controller/Product/Post.php
index c4910d951822f6a8a9cf19c864ddbfe1fc2d1136..f96213b50840bb6f0b74114a02b58c12af5bb7d8 100644
--- a/app/code/Magento/Review/Controller/Product/Post.php
+++ b/app/code/Magento/Review/Controller/Product/Post.php
@@ -14,6 +14,7 @@ class Post extends \Magento\Review\Controller\Product
      * Submit new review action
      *
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function execute()
     {
diff --git a/app/code/Magento/Review/Helper/Action/Pager.php b/app/code/Magento/Review/Helper/Action/Pager.php
index a276ab2ac6d5d794b6da09c996643bba78dd84ef..e6c8b6a2fb2f24d21c808554dfedc55045ee81a5 100644
--- a/app/code/Magento/Review/Helper/Action/Pager.php
+++ b/app/code/Magento/Review/Helper/Action/Pager.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Review\Helper\Action;
 
 use Magento\Framework\Model\Exception;
diff --git a/app/code/Magento/Review/Helper/Data.php b/app/code/Magento/Review/Helper/Data.php
index 2a7f7ec10b0c903668bb4b5a21e9f58b48d505b8..a514519405b270e5de710f611917be9dc4f179f7 100644
--- a/app/code/Magento/Review/Helper/Data.php
+++ b/app/code/Magento/Review/Helper/Data.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Review\Helper;
 
 /**
@@ -77,6 +80,7 @@ class Data extends \Magento\Framework\App\Helper\AbstractHelper
      * Return an indicator of whether or not guest is allowed to write
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsGuestAllowToWrite()
     {
diff --git a/app/code/Magento/Review/Model/Resource/Rating.php b/app/code/Magento/Review/Model/Resource/Rating.php
index dc360c221f78ba73f618f77a8cc42b34bcd790df..ffe552b3c104d2e0b0abce711e514f26db9f9151 100644
--- a/app/code/Magento/Review/Model/Resource/Rating.php
+++ b/app/code/Magento/Review/Model/Resource/Rating.php
@@ -159,6 +159,7 @@ class Rating extends \Magento\Framework\Model\Resource\Db\AbstractDb
      *
      * @param \Magento\Framework\Model\AbstractModel|\Magento\Review\Model\Rating $object
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _afterSave(\Magento\Framework\Model\AbstractModel $object)
     {
diff --git a/app/code/Magento/Review/Model/Resource/Review/Product/Collection.php b/app/code/Magento/Review/Model/Resource/Review/Product/Collection.php
index abef04b8346e6ee4b56667f49699fee2cad37072..d6c65b46c43e21600e3da5074dab2a521bd4ca0d 100644
--- a/app/code/Magento/Review/Model/Resource/Review/Product/Collection.php
+++ b/app/code/Magento/Review/Model/Resource/Review/Product/Collection.php
@@ -11,6 +11,7 @@ use Magento\Eav\Model\Entity\Attribute\AbstractAttribute;
  * Review Product Collection
  *
  * @author      Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Collection extends \Magento\Catalog\Model\Resource\Product\Collection
 {
@@ -448,6 +449,7 @@ class Collection extends \Magento\Catalog\Model\Resource\Product\Collection
      * @param array|null $condition
      * @param string $joinType
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function addAttributeToFilter($attribute, $condition = null, $joinType = 'inner')
     {
diff --git a/app/code/Magento/Review/Model/Review.php b/app/code/Magento/Review/Model/Review.php
index 4292125f31e517da6c32a229f9bb62118c7c8324..3660815cf0249498575242fc03feea81a36ef0a7 100644
--- a/app/code/Magento/Review/Model/Review.php
+++ b/app/code/Magento/Review/Model/Review.php
@@ -19,6 +19,7 @@ use Magento\Review\Model\Resource\Review\Status\Collection as StatusCollection;
  * @method \Magento\Review\Model\Review setEntityPkValue(int $value)
  * @method int getStatusId()
  * @method \Magento\Review\Model\Review setStatusId(int $value)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Review extends \Magento\Framework\Model\AbstractModel
 {
@@ -121,6 +122,7 @@ class Review extends \Magento\Framework\Model\AbstractModel
      * @param \Magento\Framework\Model\Resource\AbstractResource $resource
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
diff --git a/app/code/Magento/Review/composer.json b/app/code/Magento/Review/composer.json
index ec6e7e8629c79581de97fc4499a89105c65102e5..92cb207a7bbd5f7c40d9a680a6d1d21a65f6d90f 100644
--- a/app/code/Magento/Review/composer.json
+++ b/app/code/Magento/Review/composer.json
@@ -3,20 +3,20 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-catalog": "0.42.0-beta3",
-        "magento/module-core": "0.42.0-beta3",
-        "magento/module-customer": "0.42.0-beta3",
-        "magento/module-eav": "0.42.0-beta3",
-        "magento/module-theme": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/module-newsletter": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
-        "magento/module-ui": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-catalog": "0.42.0-beta4",
+        "magento/module-core": "0.42.0-beta4",
+        "magento/module-customer": "0.42.0-beta4",
+        "magento/module-eav": "0.42.0-beta4",
+        "magento/module-theme": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/module-newsletter": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
+        "magento/module-ui": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/Review/view/adminhtml/templates/add.phtml b/app/code/Magento/Review/view/adminhtml/templates/add.phtml
index 5a95a58a3860dd7842a2040ce6334ff8234aa0c0..5ccafd39f0f051294648d0f8f2d3455df38e05a8 100644
--- a/app/code/Magento/Review/view/adminhtml/templates/add.phtml
+++ b/app/code/Magento/Review/view/adminhtml/templates/add.phtml
@@ -14,7 +14,7 @@
 <div class="hidden" id="formContainer">
     <?php echo $this->getFormHtml() ?>
 </div>
-<script type="text/javascript">
+<script>
 require([
     "jquery",
     "mage/mage",
diff --git a/app/code/Magento/Review/view/adminhtml/templates/rating/detailed.phtml b/app/code/Magento/Review/view/adminhtml/templates/rating/detailed.phtml
index aed5001c81fdfa77a120ec0defbda9af7b5b746d..1e04a02ba904ac06f616cee4ed1c1173e07562b0 100644
--- a/app/code/Magento/Review/view/adminhtml/templates/rating/detailed.phtml
+++ b/app/code/Magento/Review/view/adminhtml/templates/rating/detailed.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php if ($this->getRating() && $this->getRating()->getSize()): ?>
     <div class="nested">
@@ -22,7 +25,7 @@
         <?php endforeach; ?>
         <input type="hidden" name="validate_rating" class="validate-rating" value="" />
     </div>
-<script type="text/javascript">
+<script>
 require([
     "jquery",
     "mage/mage",
diff --git a/app/code/Magento/Review/view/adminhtml/templates/rating/form.phtml b/app/code/Magento/Review/view/adminhtml/templates/rating/form.phtml
index f7e773ca1863a9b4e866e957eddda6207cfbefcd..cc56a7a9a5e451ad346349c4fa7eaef70f4d805f 100644
--- a/app/code/Magento/Review/view/adminhtml/templates/rating/form.phtml
+++ b/app/code/Magento/Review/view/adminhtml/templates/rating/form.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <div class="message info">
     <div><?php echo __('Please specify a rating title for a store, or we\'ll just use the default value.'); ?></div>
diff --git a/app/code/Magento/Review/view/adminhtml/templates/rating/options.phtml b/app/code/Magento/Review/view/adminhtml/templates/rating/options.phtml
index 9d7af8197b66e4010379b453bcfe189aefc5486e..3d5a039bebe172ffd3ec198b09090803ec0e1947 100644
--- a/app/code/Magento/Review/view/adminhtml/templates/rating/options.phtml
+++ b/app/code/Magento/Review/view/adminhtml/templates/rating/options.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <div class="entry-edit-head">
     <h4 class="icon-head head-edit-form fieldset-legend"><?php echo __('Assigned Options') ?></h4>
diff --git a/app/code/Magento/Review/view/adminhtml/templates/rating/stars/detailed.phtml b/app/code/Magento/Review/view/adminhtml/templates/rating/stars/detailed.phtml
index 9d270faf7d0c384f7bb974376700742dba68d90d..641dde0b7c008ab5726ad43e948df1dc15147f77 100644
--- a/app/code/Magento/Review/view/adminhtml/templates/rating/stars/detailed.phtml
+++ b/app/code/Magento/Review/view/adminhtml/templates/rating/stars/detailed.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php if ($this->getRating() && $this->getRating()->getSize()): ?>
     <div class="ratings-container">
diff --git a/app/code/Magento/Review/view/adminhtml/templates/rating/stars/summary.phtml b/app/code/Magento/Review/view/adminhtml/templates/rating/stars/summary.phtml
index e29a32ff228a7aab519785f0d910af3a0870f6eb..c5394e0bcb4d1168dc3edaa5b93e98c9e395b2c9 100644
--- a/app/code/Magento/Review/view/adminhtml/templates/rating/stars/summary.phtml
+++ b/app/code/Magento/Review/view/adminhtml/templates/rating/stars/summary.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php if ($this->getRatingSummary()->getCount()): ?>
     <div class="rating-box">
diff --git a/app/code/Magento/Review/view/adminhtml/templates/rss/grid/link.phtml b/app/code/Magento/Review/view/adminhtml/templates/rss/grid/link.phtml
index 652e65e1dbc7ba254d54a14897bd81bd86704611..8ccde118920025656143cb7fcb1e6ccd2719db4e 100644
--- a/app/code/Magento/Review/view/adminhtml/templates/rss/grid/link.phtml
+++ b/app/code/Magento/Review/view/adminhtml/templates/rss/grid/link.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Review\Block\Adminhtml\Grid\Rss\Link */
 ?>
 <?php if ($this->isRssAllowed() && $this->getLink()): ?>
diff --git a/app/code/Magento/Review/view/frontend/templates/customer/list.phtml b/app/code/Magento/Review/view/frontend/templates/customer/list.phtml
index 1c920e199b2bce6554df426dc5011ac00997f372..84b2f72995d0816de421ad40f0ac83f60a7a9e95 100644
--- a/app/code/Magento/Review/view/frontend/templates/customer/list.phtml
+++ b/app/code/Magento/Review/view/frontend/templates/customer/list.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php if ($this->getCollection() && $this->count()): ?>
     <div class="table-wrapper reviews">
diff --git a/app/code/Magento/Review/view/frontend/templates/customer/recent.phtml b/app/code/Magento/Review/view/frontend/templates/customer/recent.phtml
index 042d0c48946ea15156e5119367792882e4cd02c9..2fc2d83149f98e758c6c61e8512863d56cbc544d 100644
--- a/app/code/Magento/Review/view/frontend/templates/customer/recent.phtml
+++ b/app/code/Magento/Review/view/frontend/templates/customer/recent.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php
diff --git a/app/code/Magento/Review/view/frontend/templates/customer/view.phtml b/app/code/Magento/Review/view/frontend/templates/customer/view.phtml
index 128c24a021b3f989d813841817237985f80e15d5..b60f1858b64ace9043f8e2a1c4e6fe604b28af06 100644
--- a/app/code/Magento/Review/view/frontend/templates/customer/view.phtml
+++ b/app/code/Magento/Review/view/frontend/templates/customer/view.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php if ($this->getProductData()->getId()): ?>
 <?php $imageBlock =  $this->getLayout()->createBlock('Magento\Catalog\Block\Product\Image'); ?>
diff --git a/app/code/Magento/Review/view/frontend/templates/detailed.phtml b/app/code/Magento/Review/view/frontend/templates/detailed.phtml
index 13374f014b747ff1c7c6def4c097c120202fb353..7ffa92cea0ec02aa6e00eb3983c7eaa002de4881 100644
--- a/app/code/Magento/Review/view/frontend/templates/detailed.phtml
+++ b/app/code/Magento/Review/view/frontend/templates/detailed.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php if (!empty($collection) && $collection->getSize()): ?>
     <div class="table-wrapper">
diff --git a/app/code/Magento/Review/view/frontend/templates/form.phtml b/app/code/Magento/Review/view/frontend/templates/form.phtml
index ae8a03e69e55e4710a35aefda78805198714a7d5..94ab2d74533f1bfc180483cefcf07b2823e5d606 100644
--- a/app/code/Magento/Review/view/frontend/templates/form.phtml
+++ b/app/code/Magento/Review/view/frontend/templates/form.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /**
  * @var $this \Magento\Review\Block\Form
  */
diff --git a/app/code/Magento/Review/view/frontend/templates/helper/summary.phtml b/app/code/Magento/Review/view/frontend/templates/helper/summary.phtml
index a3cc9f332c2b1c655af8fe7c3da575f2f48a0374..b112d00721c7d7b1840901fbe51b0d92b875c737 100644
--- a/app/code/Magento/Review/view/frontend/templates/helper/summary.phtml
+++ b/app/code/Magento/Review/view/frontend/templates/helper/summary.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php $url = $this->getReviewsUrl() . '#reviews'; ?>
 <?php $urlForm = $this->getReviewsUrl() . '#review-form'; ?>
diff --git a/app/code/Magento/Review/view/frontend/templates/helper/summary_short.phtml b/app/code/Magento/Review/view/frontend/templates/helper/summary_short.phtml
index 0c125ca10020451519bfc475ca574bc0f0eedab3..01c71a64bfb954a70a87e057ec8383eb5e4e7021 100644
--- a/app/code/Magento/Review/view/frontend/templates/helper/summary_short.phtml
+++ b/app/code/Magento/Review/view/frontend/templates/helper/summary_short.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php $url = $this->getReviewsUrl() . '#reviews'; ?>
 <?php $urlForm = $this->getReviewsUrl() . '#review-form'; ?>
diff --git a/app/code/Magento/Review/view/frontend/templates/product/view/count.phtml b/app/code/Magento/Review/view/frontend/templates/product/view/count.phtml
index 73df469ed1d07589825c30229358acf00a082e2f..9e6b13665e145c04169e668601f17f7ab32273f8 100644
--- a/app/code/Magento/Review/view/frontend/templates/product/view/count.phtml
+++ b/app/code/Magento/Review/view/frontend/templates/product/view/count.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php if (!empty($count)):?>
     <a href="#customer-reviews" class="nobr"><?php echo __('%1 Review(s)', $count) ?></a>
diff --git a/app/code/Magento/Review/view/frontend/templates/product/view/list.phtml b/app/code/Magento/Review/view/frontend/templates/product/view/list.phtml
index c0f74d3a281f3b99268d3bea961ed11283099d11..cbb0f9c173e529eba680c6571f422a8f0f5eca86 100644
--- a/app/code/Magento/Review/view/frontend/templates/product/view/list.phtml
+++ b/app/code/Magento/Review/view/frontend/templates/product/view/list.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/Review/view/frontend/templates/product/view/other.phtml b/app/code/Magento/Review/view/frontend/templates/product/view/other.phtml
index fdb1119f88327f781f5cb1c7822ad6f3d93ea24e..3bd787ea696539121f118566dcc315f2c4317b64 100644
--- a/app/code/Magento/Review/view/frontend/templates/product/view/other.phtml
+++ b/app/code/Magento/Review/view/frontend/templates/product/view/other.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php /** @var $this \Magento\Review\Block\Product\View\Other */ ?>
diff --git a/app/code/Magento/Review/view/frontend/templates/redirect.phtml b/app/code/Magento/Review/view/frontend/templates/redirect.phtml
index 3d1f8869e3bcd0b476fad84d4cc4d448aa647a9d..b2e82d1b9cacb983774dd588cb788e5023d3e980 100644
--- a/app/code/Magento/Review/view/frontend/templates/redirect.phtml
+++ b/app/code/Magento/Review/view/frontend/templates/redirect.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /*    if(isset($GET['limit'])) {
diff --git a/app/code/Magento/Review/view/frontend/templates/review.phtml b/app/code/Magento/Review/view/frontend/templates/review.phtml
index bc86a49fcb6d9e5d5085c987ba3ed930628e595a..94453714fdf058b99201902dfaf8da1adbf319dc 100644
--- a/app/code/Magento/Review/view/frontend/templates/review.phtml
+++ b/app/code/Magento/Review/view/frontend/templates/review.phtml
@@ -8,7 +8,7 @@
 <div id="product-review-container"></div>
 <?php echo $this->getChildHtml(); ?>
 
-<script type="text/javascript">
+<script>
 //<![CDATA[
 function processReviews(url,fromPages) {
 (function($) {
diff --git a/app/code/Magento/Review/view/frontend/templates/view.phtml b/app/code/Magento/Review/view/frontend/templates/view.phtml
index f779b0ddd8b0906c0aabd30e3394842120b9b1ae..1f6cfa6bbb9f70d47fa8ee5eb9244ed0e2a9a2b6 100644
--- a/app/code/Magento/Review/view/frontend/templates/view.phtml
+++ b/app/code/Magento/Review/view/frontend/templates/view.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php if ($this->getProductData()->getId()): ?>
 <div class="product-review">
diff --git a/app/code/Magento/Rss/composer.json b/app/code/Magento/Rss/composer.json
index 74952b18d3133613b39696d2f4ab9da9d1f35a72..fe710939ed4ef69c9cead129c1f7256c28fcfad6 100644
--- a/app/code/Magento/Rss/composer.json
+++ b/app/code/Magento/Rss/composer.json
@@ -3,14 +3,14 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
-        "magento/module-customer": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
+        "magento/module-customer": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/Rss/view/frontend/templates/feeds.phtml b/app/code/Magento/Rss/view/frontend/templates/feeds.phtml
index 266a3c61b06b11801554a52c14cdce4f3c1a14b4..fe1ea96e8c8594789918bcb386a537e9b1286dc9 100644
--- a/app/code/Magento/Rss/view/frontend/templates/feeds.phtml
+++ b/app/code/Magento/Rss/view/frontend/templates/feeds.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <table class="data table rss">
     <caption class="table-caption"><?php echo __('Feed'); ?></caption>
diff --git a/app/code/Magento/Rule/Model/AbstractModel.php b/app/code/Magento/Rule/Model/AbstractModel.php
index e94c84ae9fd1f7f34e44a7fe86cfa7c35d3a898d..ccdd7bf107780a516c94bf1a89a15728421efdc4 100644
--- a/app/code/Magento/Rule/Model/AbstractModel.php
+++ b/app/code/Magento/Rule/Model/AbstractModel.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Abstract Rule entity data model
  */
@@ -100,6 +102,7 @@ abstract class AbstractModel extends \Magento\Framework\Model\AbstractModel
      *
      * @return $this
      * @throws \Magento\Framework\Model\Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function beforeSave()
     {
@@ -297,6 +300,7 @@ abstract class AbstractModel extends \Magento\Framework\Model\AbstractModel
      *
      * @param array $data
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _convertFlatToRecursive(array $data)
     {
@@ -351,6 +355,8 @@ abstract class AbstractModel extends \Magento\Framework\Model\AbstractModel
      *
      * @param \Magento\Framework\Object $object
      * @return bool|string[] - return true if validation passed successfully. Array with errors description otherwise
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function validateData(\Magento\Framework\Object $object)
     {
diff --git a/app/code/Magento/Rule/Model/Action/AbstractAction.php b/app/code/Magento/Rule/Model/Action/AbstractAction.php
index 710a5dcbe9203673f0472a55f30441002991c079..8e01621b733e0ab7b60568444c36a465bacc022e 100644
--- a/app/code/Magento/Rule/Model/Action/AbstractAction.php
+++ b/app/code/Magento/Rule/Model/Action/AbstractAction.php
@@ -338,6 +338,7 @@ abstract class AbstractAction extends \Magento\Framework\Object implements Actio
     /**
      * @param string $format
      * @return string
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function asString($format = '')
     {
diff --git a/app/code/Magento/Rule/Model/Condition/AbstractCondition.php b/app/code/Magento/Rule/Model/Condition/AbstractCondition.php
index 59f917beb6bbd725357625deba10f1a24ddffab2..6bc5bd70d37e79939021284eda38e6c0a4812bb2 100644
--- a/app/code/Magento/Rule/Model/Condition/AbstractCondition.php
+++ b/app/code/Magento/Rule/Model/Condition/AbstractCondition.php
@@ -14,6 +14,10 @@ namespace Magento\Rule\Model\Condition;
 use Magento\Framework\Data\Form;
 use Magento\Framework\Data\Form\Element\AbstractElement;
 
+/**
+ * @SuppressWarnings(PHPMD.ExcessivePublicCount)
+ * @SuppressWarnings(PHPMD.ExcessiveClassComplexity)
+ */
 abstract class AbstractCondition extends \Magento\Framework\Object implements ConditionInterface
 {
     /**
@@ -217,6 +221,7 @@ abstract class AbstractCondition extends \Magento\Framework\Object implements Co
     /**
      * @param array $arr
      * @return $this
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function loadArray($arr)
     {
@@ -408,6 +413,7 @@ abstract class AbstractCondition extends \Magento\Framework\Object implements Co
 
     /**
      * @return array|string
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function getValueName()
     {
@@ -702,6 +708,9 @@ abstract class AbstractCondition extends \Magento\Framework\Object implements Co
      *
      * @param   object|array|int|string|float|bool $validatedValue product attribute value
      * @return  bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public function validateAttribute($validatedValue)
     {
diff --git a/app/code/Magento/Rule/Model/Condition/Combine.php b/app/code/Magento/Rule/Model/Condition/Combine.php
index 2f290cd984774dfd96f3100819ccdd96b1eb0c81..f68a13163a0b62dd93d4f887ff3a12134d32aa5b 100644
--- a/app/code/Magento/Rule/Model/Condition/Combine.php
+++ b/app/code/Magento/Rule/Model/Condition/Combine.php
@@ -200,6 +200,7 @@ class Combine extends AbstractCondition
      * @param array $arr
      * @param string $key
      * @return $this
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function loadArray($arr, $key = 'conditions')
     {
diff --git a/app/code/Magento/Rule/Model/Condition/Product/AbstractProduct.php b/app/code/Magento/Rule/Model/Condition/Product/AbstractProduct.php
index ee74a67b7ff67d49997067312bc18a6accc5de99..696fc409c69a7d1e1769317213427ef3a839e333 100644
--- a/app/code/Magento/Rule/Model/Condition/Product/AbstractProduct.php
+++ b/app/code/Magento/Rule/Model/Condition/Product/AbstractProduct.php
@@ -11,6 +11,10 @@
  */
 namespace Magento\Rule\Model\Condition\Product;
 
+/**
+ * @SuppressWarnings(PHPMD.ExcessiveClassComplexity)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 abstract class AbstractProduct extends \Magento\Rule\Model\Condition\AbstractCondition
 {
     /**
@@ -189,6 +193,7 @@ abstract class AbstractProduct extends \Magento\Rule\Model\Condition\AbstractCon
      *  'value_option' - hashed array: array($value => $label, ...),
      *
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _prepareValueOptions()
     {
@@ -457,6 +462,7 @@ abstract class AbstractProduct extends \Magento\Rule\Model\Condition\AbstractCon
      * Retrieve Explicit Apply
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getExplicitApply()
     {
@@ -483,6 +489,7 @@ abstract class AbstractProduct extends \Magento\Rule\Model\Condition\AbstractCon
      *
      * @param array $arr
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function loadArray($arr)
     {
@@ -526,6 +533,8 @@ abstract class AbstractProduct extends \Magento\Rule\Model\Condition\AbstractCon
      *
      * @param \Magento\Framework\Model\AbstractModel $model
      * @return bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function validate(\Magento\Framework\Model\AbstractModel $model)
     {
diff --git a/app/code/Magento/Rule/Model/Condition/Sql/Builder.php b/app/code/Magento/Rule/Model/Condition/Sql/Builder.php
index aa5f1d74847af8fbba9b0aea90edcde8568ca143..43e1ab5177159766d4d0bdf1e48ada4134dd3540 100644
--- a/app/code/Magento/Rule/Model/Condition/Sql/Builder.php
+++ b/app/code/Magento/Rule/Model/Condition/Sql/Builder.php
@@ -141,6 +141,7 @@ class Builder
      * @param Combine $combine
      * @param string $value
      * @return string
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _getMappedSqlCombination(Combine $combine, $value = '')
     {
diff --git a/app/code/Magento/Rule/composer.json b/app/code/Magento/Rule/composer.json
index 023d077408adc6036372c302da62c97c76912a1a..eec6ca407f75ee77e05c12abf4cd33fcd63c227c 100644
--- a/app/code/Magento/Rule/composer.json
+++ b/app/code/Magento/Rule/composer.json
@@ -3,16 +3,16 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-eav": "0.42.0-beta3",
-        "magento/module-catalog": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-eav": "0.42.0-beta4",
+        "magento/module-catalog": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "lib-libxml": "*",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/Sales/Api/CreditmemoCommentRepositoryInterface.php b/app/code/Magento/Sales/Api/CreditmemoCommentRepositoryInterface.php
index 4fca9528e43ff385417b5749e8dd23a07d11f75d..5df81ef17ce49fb0007e3f584a64d079c03b3451 100644
--- a/app/code/Magento/Sales/Api/CreditmemoCommentRepositoryInterface.php
+++ b/app/code/Magento/Sales/Api/CreditmemoCommentRepositoryInterface.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Sales\Api;
 
 /**
diff --git a/app/code/Magento/Sales/Api/CreditmemoItemRepositoryInterface.php b/app/code/Magento/Sales/Api/CreditmemoItemRepositoryInterface.php
index 6f682a0968948a9d2225eaabedf2c9094fb93ceb..ebd4882a5f9ba0b4ebc94a8e6845cafc6659191c 100644
--- a/app/code/Magento/Sales/Api/CreditmemoItemRepositoryInterface.php
+++ b/app/code/Magento/Sales/Api/CreditmemoItemRepositoryInterface.php
@@ -34,16 +34,16 @@ interface CreditmemoItemRepositoryInterface
     /**
      * Deletes a specified credit memo item.
      *
-     * @param \Magento\Sales\Api\Data\CreditmemoInterface $entity The credit memo item.
+     * @param \Magento\Sales\Api\Data\CreditmemoItemInterface $entity The credit memo item.
      * @return bool
      */
-    public function delete(\Magento\Sales\Api\Data\CreditmemoInterface $entity);
+    public function delete(\Magento\Sales\Api\Data\CreditmemoItemInterface $entity);
 
     /**
      * Performs persist operations for a specified credit memo item.
      *
-     * @param \Magento\Sales\Api\Data\CreditmemoInterface $entity The credit memo item.
-     * @return \Magento\Sales\Api\Data\CreditmemoInterface Credit memo interface.
+     * @param \Magento\Sales\Api\Data\CreditmemoItemInterface $entity The credit memo item.
+     * @return \Magento\Sales\Api\Data\CreditmemoItemInterface Credit memo interface.
      */
-    public function save(\Magento\Sales\Api\Data\CreditmemoInterface $entity);
+    public function save(\Magento\Sales\Api\Data\CreditmemoItemInterface $entity);
 }
diff --git a/app/code/Magento/Sales/Api/CreditmemoManagementInterface.php b/app/code/Magento/Sales/Api/CreditmemoManagementInterface.php
index 0295d03d2dce5e2de4c8ba0b4d2b4c0fff8ede82..0211a82933663431c110c1da6c206c63b7cafaaa 100644
--- a/app/code/Magento/Sales/Api/CreditmemoManagementInterface.php
+++ b/app/code/Magento/Sales/Api/CreditmemoManagementInterface.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Sales\Api;
 
 /**
diff --git a/app/code/Magento/Sales/Api/Data/CreditmemoInterface.php b/app/code/Magento/Sales/Api/Data/CreditmemoInterface.php
index d3d0bee1c621888b249e5166345b9fcb2469b646..e7047e546f03668e2001fce706ca00ab5f3aaf5f 100644
--- a/app/code/Magento/Sales/Api/Data/CreditmemoInterface.php
+++ b/app/code/Magento/Sales/Api/Data/CreditmemoInterface.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Sales\Api\Data;
 
 /**
diff --git a/app/code/Magento/Sales/Api/Data/OrderItemInterface.php b/app/code/Magento/Sales/Api/Data/OrderItemInterface.php
index 2b8d76a0350b367cca2b992f3d8c56b300944352..3d8d578babcd873f0195fcb128319db85ab12cfb 100644
--- a/app/code/Magento/Sales/Api/Data/OrderItemInterface.php
+++ b/app/code/Magento/Sales/Api/Data/OrderItemInterface.php
@@ -390,6 +390,12 @@ interface OrderItemInterface extends \Magento\Framework\Api\ExtensibleDataInterf
      */
     const BASE_WEEE_TAX_ROW_DISPOSITION = 'base_weee_tax_row_disposition';
 
+    /**
+     * Parent Item
+     */
+    const PARENT_ITEM = 'parent_item';
+
+
     /**
      * Gets the additional data for the order item.
      *
@@ -1040,4 +1046,11 @@ interface OrderItemInterface extends \Magento\Framework\Api\ExtensibleDataInterf
      * @return float Weight.
      */
     public function getWeight();
+
+    /**
+     * Gets the parent item
+     *
+     * @return \Magento\Sales\Api\Data\OrderItemInterface|null Parent item
+     */
+    public function getParentItem();
 }
diff --git a/app/code/Magento/Sales/Api/OrderManagementInterface.php b/app/code/Magento/Sales/Api/OrderManagementInterface.php
index 4e5ef33e578e9c52a97ae51efc4aea94a63bfc23..071d1ac787f6b00b68a4c99d181cfcd5f94b822d 100644
--- a/app/code/Magento/Sales/Api/OrderManagementInterface.php
+++ b/app/code/Magento/Sales/Api/OrderManagementInterface.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Sales\Api;
 
 /**
@@ -70,4 +73,10 @@ interface OrderManagementInterface
      * @return bool
      */
     public function unHold($id);
+
+    /**
+     * @param \Magento\Sales\Api\Data\OrderInterface $order
+     * @return \Magento\Sales\Api\Data\OrderInterface
+     */
+    public function place(\Magento\Sales\Api\Data\OrderInterface $order);
 }
diff --git a/app/code/Magento/Sales/Api/OrderStatusHistoryRepositoryInterface.php b/app/code/Magento/Sales/Api/OrderStatusHistoryRepositoryInterface.php
index 660b27a82aa685b93f7f6058e8260ea53a0082ef..66db1edbaa4662929f132b537c37d0203f6479e4 100644
--- a/app/code/Magento/Sales/Api/OrderStatusHistoryRepositoryInterface.php
+++ b/app/code/Magento/Sales/Api/OrderStatusHistoryRepositoryInterface.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Sales\Api;
 
 /**
diff --git a/app/code/Magento/Sales/Api/ShipmentItemRepositoryInterface.php b/app/code/Magento/Sales/Api/ShipmentItemRepositoryInterface.php
index a52062541a0e6d6cf434e695db23cb7f3b30f796..f8947acf54dd869b9c743073e8770a2aaf99b6cc 100644
--- a/app/code/Magento/Sales/Api/ShipmentItemRepositoryInterface.php
+++ b/app/code/Magento/Sales/Api/ShipmentItemRepositoryInterface.php
@@ -25,23 +25,23 @@ interface ShipmentItemRepositoryInterface
      * Loads a specified shipment item.
      *
      * @param int $id
-     * @return \Magento\Sales\Api\Data\ShipmentInterface
+     * @return \Magento\Sales\Api\Data\ShipmentItemInterface
      */
     public function get($id);
 
     /**
      * Deletes a specified shipment item.
      *
-     * @param \Magento\Sales\Api\Data\ShipmentInterface $entity The shipment item.
+     * @param \Magento\Sales\Api\Data\ShipmentItemInterface $entity The shipment item.
      * @return bool
      */
-    public function delete(\Magento\Sales\Api\Data\ShipmentInterface $entity);
+    public function delete(\Magento\Sales\Api\Data\ShipmentItemInterface $entity);
 
     /**
      * Performs persist operations for a specified shipment item.
      *
-     * @param \Magento\Sales\Api\Data\ShipmentInterface $entity The shipment item.
-     * @return \Magento\Sales\Api\Data\ShipmentInterface Shipment interface.
+     * @param \Magento\Sales\Api\Data\ShipmentItemInterface $entity The shipment item.
+     * @return \Magento\Sales\Api\Data\ShipmentItemInterface Shipment interface.
      */
-    public function save(\Magento\Sales\Api\Data\ShipmentInterface $entity);
+    public function save(\Magento\Sales\Api\Data\ShipmentItemInterface $entity);
 }
diff --git a/app/code/Magento/Sales/Block/Adminhtml/Items/Column/DefaultColumn.php b/app/code/Magento/Sales/Block/Adminhtml/Items/Column/DefaultColumn.php
index c23370d5dec9e06fd27fee34d012124aa54e1181..2d13fc3b9526271b8983ddecbfd6b7a3f01caeee 100644
--- a/app/code/Magento/Sales/Block/Adminhtml/Items/Column/DefaultColumn.php
+++ b/app/code/Magento/Sales/Block/Adminhtml/Items/Column/DefaultColumn.php
@@ -8,7 +8,7 @@ namespace Magento\Sales\Block\Adminhtml\Items\Column;
 use Magento\Sales\Model\Order\Creditmemo\Item as CreditmemoItem;
 use Magento\Sales\Model\Order\Invoice\Item as InvoiceItem;
 use Magento\Sales\Model\Order\Item;
-use Magento\Sales\Model\Quote\Item\AbstractItem as QuoteItem;
+use Magento\Quote\Model\Quote\Item\AbstractItem as QuoteItem;
 
 /**
  * Adminhtml sales order column renderer
diff --git a/app/code/Magento/Sales/Block/Adminhtml/Order/Address/Form.php b/app/code/Magento/Sales/Block/Adminhtml/Order/Address/Form.php
index 2510300b9ca0954eaffc903047d0bc79efcdf217..c2b04646e891dc815a62624b3819162dd7944be7 100644
--- a/app/code/Magento/Sales/Block/Adminhtml/Order/Address/Form.php
+++ b/app/code/Magento/Sales/Block/Adminhtml/Order/Address/Form.php
@@ -9,6 +9,8 @@ use Magento\Framework\Pricing\PriceCurrencyInterface;
 
 /**
  * Adminhtml sales order address block
+ * @SuppressWarnings(PHPMD.DepthOfInheritance)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Form extends \Magento\Sales\Block\Adminhtml\Order\Create\Form\Address
 {
diff --git a/app/code/Magento/Sales/Block/Adminhtml/Order/Create/AbstractCreate.php b/app/code/Magento/Sales/Block/Adminhtml/Order/Create/AbstractCreate.php
index 5db5fc13af1810b23df32fdcaed77634cecd5bb8..83bb55bfe1b72efbec78a2944bcaf16c2ec6eecc 100644
--- a/app/code/Magento/Sales/Block/Adminhtml/Order/Create/AbstractCreate.php
+++ b/app/code/Magento/Sales/Block/Adminhtml/Order/Create/AbstractCreate.php
@@ -11,6 +11,7 @@ use Magento\Framework\Pricing\PriceCurrencyInterface;
  * Adminhtml sales order create abstract block
  *
  * @author      Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.NumberOfChildren)
  */
 abstract class AbstractCreate extends \Magento\Backend\Block\Widget
 {
@@ -76,7 +77,7 @@ abstract class AbstractCreate extends \Magento\Backend\Block\Widget
     /**
      * Retrieve quote model object
      *
-     * @return \Magento\Sales\Model\Quote
+     * @return \Magento\Quote\Model\Quote
      */
     public function getQuote()
     {
diff --git a/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Billing/Address.php b/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Billing/Address.php
index 3e1fcb48c6763ec45134cee531e123196007c9ef..a72cf38445f4ccf07f6332b5d5509403676942ca 100644
--- a/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Billing/Address.php
+++ b/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Billing/Address.php
@@ -9,6 +9,7 @@ namespace Magento\Sales\Block\Adminhtml\Order\Create\Billing;
  * Adminhtml sales order create billing address block
  *
  * @author      Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.DepthOfInheritance)
  */
 class Address extends \Magento\Sales\Block\Adminhtml\Order\Create\Form\Address
 {
@@ -72,7 +73,7 @@ class Address extends \Magento\Sales\Block\Adminhtml\Order\Create\Form\Address
     /**
      * Return billing address object
      *
-     * @return \Magento\Sales\Model\Quote\Address
+     * @return \Magento\Quote\Model\Quote\Address
      */
     public function getAddress()
     {
diff --git a/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Billing/Method/Form.php b/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Billing/Method/Form.php
index ca3e56585672b60246f4ab76395221186ae48e0d..ae56db9d9ccdd5d9429d5f529ab0b42d4586d3f6 100644
--- a/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Billing/Method/Form.php
+++ b/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Billing/Method/Form.php
@@ -90,7 +90,7 @@ class Form extends \Magento\Payment\Block\Form\Container
     /**
      * Enter description here...
      *
-     * @return \Magento\Sales\Model\Quote
+     * @return \Magento\Quote\Model\Quote
      */
     public function getQuote()
     {
diff --git a/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Form.php b/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Form.php
index 8334ec391ef907f35b2a78b8585afa1b68066c45..5c4e676481b9e763c368d3eb8e15c89c27d14dcd 100644
--- a/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Form.php
+++ b/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Form.php
@@ -56,6 +56,7 @@ class Form extends \Magento\Sales\Block\Adminhtml\Order\Create\AbstractCreate
      * @param \Magento\Framework\Locale\CurrencyInterface $localeCurrency
      * @param \Magento\Customer\Model\Address\Mapper $addressMapper
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Backend\Block\Template\Context $context,
diff --git a/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Form/AbstractForm.php b/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Form/AbstractForm.php
index 712a00ea0b9482029a8a22d987ac7676625671da..db49cde19169e44967ddc82ab4aac3284989dd34 100644
--- a/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Form/AbstractForm.php
+++ b/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Form/AbstractForm.php
@@ -141,6 +141,7 @@ abstract class AbstractForm extends \Magento\Sales\Block\Adminhtml\Order\Create\
      *
      * @param \Magento\Framework\Data\Form\Element\AbstractElement $element
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     protected function _addAdditionalFormElementData(\Magento\Framework\Data\Form\Element\AbstractElement $element)
     {
@@ -153,6 +154,7 @@ abstract class AbstractForm extends \Magento\Sales\Block\Adminhtml\Order\Create\
      * @param \Magento\Customer\Api\Data\AttributeMetadataInterface[] $attributes
      * @param \Magento\Framework\Data\Form\AbstractForm $form
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _addAttributesToForm($attributes, \Magento\Framework\Data\Form\AbstractForm $form)
     {
diff --git a/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Form/Account.php b/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Form/Account.php
index aaa9f93d055618399cc50d611737ef4c1d546973..08137358bf707fcf9fd251f21c9d2c9e0dd1f152 100644
--- a/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Form/Account.php
+++ b/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Form/Account.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Sales\Block\Adminhtml\Order\Create\Form;
 
 use Magento\Framework\Api\ExtensibleDataObjectConverter;
@@ -46,6 +49,7 @@ class Account extends AbstractForm
      * @param \Magento\Customer\Api\CustomerRepositoryInterface $customerRepository
      * @param ExtensibleDataObjectConverter $extensibleDataObjectConverter
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Backend\Block\Template\Context $context,
diff --git a/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Form/Address.php b/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Form/Address.php
index 8dec273fe7ba482a160bc1b60fd405ee24480bd8..b139f0314352608c075dbf379ffcea3215aa345d 100644
--- a/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Form/Address.php
+++ b/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Form/Address.php
@@ -10,6 +10,7 @@ use Magento\Framework\Pricing\PriceCurrencyInterface;
 
 /**
  * Order create address form
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Address extends \Magento\Sales\Block\Adminhtml\Order\Create\Form\AbstractForm
 {
diff --git a/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Items.php b/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Items.php
index 0d09542ab083714dd453e874178718cd0f76aca4..0dcf68c9a64370d39759b513fe66d85ac044bb6b 100644
--- a/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Items.php
+++ b/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Items.php
@@ -5,7 +5,7 @@
  */
 namespace Magento\Sales\Block\Adminhtml\Order\Create;
 
-use Magento\Sales\Model\Quote\Item;
+use Magento\Quote\Model\Quote\Item;
 
 /**
  * Adminhtml sales order create items block
diff --git a/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Items/Grid.php b/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Items/Grid.php
index 8bab5ff445a5eb11eafa04f14617a03b4be5090f..6d53e62c71ab36b157551a929ffe97997acf6228 100644
--- a/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Items/Grid.php
+++ b/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Items/Grid.php
@@ -10,10 +10,11 @@ use Magento\CatalogInventory\Api\StockRegistryInterface;
 use Magento\CatalogInventory\Api\StockStateInterface;
 use Magento\Framework\Pricing\PriceCurrencyInterface;
 use Magento\Framework\Session\SessionManagerInterface;
-use Magento\Sales\Model\Quote\Item;
+use Magento\Quote\Model\Quote\Item;
 
 /**
  * Adminhtml sales order create items grid block
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Grid extends \Magento\Sales\Block\Adminhtml\Order\Create\AbstractCreate
 {
@@ -82,6 +83,7 @@ class Grid extends \Magento\Sales\Block\Adminhtml\Order\Create\AbstractCreate
      * @param StockRegistryInterface $stockRegistry
      * @param StockStateInterface $stockState
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Backend\Block\Template\Context $context,
@@ -303,7 +305,7 @@ class Grid extends \Magento\Sales\Block\Adminhtml\Order\Create\AbstractCreate
     /**
      * Retrieve quote address
      *
-     * @return \Magento\Sales\Model\Quote\Address
+     * @return \Magento\Quote\Model\Quote\Address
      */
     public function getQuoteAddress()
     {
@@ -447,6 +449,7 @@ class Grid extends \Magento\Sales\Block\Adminhtml\Order\Create\AbstractCreate
      * Get flag for rights to move items to customer storage
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getMoveToCustomerStorage()
     {
diff --git a/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Search/Grid.php b/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Search/Grid.php
index 1aaa3ab1121f28a4f7a2a88877e67f3aebd872ec..ba80805bb221369f8f9ae541cf7bc4dfa143e312 100644
--- a/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Search/Grid.php
+++ b/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Search/Grid.php
@@ -97,7 +97,7 @@ class Grid extends \Magento\Backend\Block\Widget\Grid\Extended
     /**
      * Retrieve quote object
      *
-     * @return \Magento\Sales\Model\Quote
+     * @return \Magento\Quote\Model\Quote
      */
     public function getQuote()
     {
diff --git a/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Shipping/Address.php b/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Shipping/Address.php
index ac614d9ec3021389abfc62fce36954df9b47ba3b..e6c03f666a8e8f05024e0d4b7ccc4c3405c189e4 100644
--- a/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Shipping/Address.php
+++ b/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Shipping/Address.php
@@ -9,6 +9,7 @@ namespace Magento\Sales\Block\Adminhtml\Order\Create\Shipping;
  * Adminhtml sales order create shipping address block
  *
  * @author      Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.DepthOfInheritance)
  */
 class Address extends \Magento\Sales\Block\Adminhtml\Order\Create\Form\Address
 {
@@ -63,6 +64,7 @@ class Address extends \Magento\Sales\Block\Adminhtml\Order\Create\Form\Address
      * Same as billing address flag
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsAsBilling()
     {
@@ -73,6 +75,7 @@ class Address extends \Magento\Sales\Block\Adminhtml\Order\Create\Form\Address
      * Saving shipping address must be turned off, when it is the same as billing
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getDontSaveInAddressBook()
     {
@@ -102,7 +105,7 @@ class Address extends \Magento\Sales\Block\Adminhtml\Order\Create\Form\Address
     /**
      * Return address object
      *
-     * @return \Magento\Sales\Model\Quote\Address
+     * @return \Magento\Quote\Model\Quote\Address
      */
     public function getAddress()
     {
@@ -119,6 +122,7 @@ class Address extends \Magento\Sales\Block\Adminhtml\Order\Create\Form\Address
      * Return true is the quote is virtual
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsDisabled()
     {
diff --git a/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Shipping/Method/Form.php b/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Shipping/Method/Form.php
index b8b7ecb442737c5238825fc8316207bdef7a8ba6..8d448af893d0e7a5569a46127c4009429b423cc4 100644
--- a/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Shipping/Method/Form.php
+++ b/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Shipping/Method/Form.php
@@ -67,7 +67,7 @@ class Form extends \Magento\Sales\Block\Adminhtml\Order\Create\AbstractCreate
     /**
      * Retrieve quote shipping address model
      *
-     * @return \Magento\Sales\Model\Quote\Address
+     * @return \Magento\Quote\Model\Quote\Address
      */
     public function getAddress()
     {
@@ -130,7 +130,7 @@ class Form extends \Magento\Sales\Block\Adminhtml\Order\Create\AbstractCreate
     /**
      * Retrieve rate of active shipping method
      *
-     * @return \Magento\Sales\Model\Quote\Address\Rate|false
+     * @return \Magento\Quote\Model\Quote\Address\Rate|false
      */
     public function getActiveMethodRate()
     {
diff --git a/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Sidebar/AbstractSidebar.php b/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Sidebar/AbstractSidebar.php
index fef6d3d52245fab6e5968c46987243da5d675ed6..ada04889aa2674a3fff8514b66c78de4abd5b606 100644
--- a/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Sidebar/AbstractSidebar.php
+++ b/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Sidebar/AbstractSidebar.php
@@ -140,6 +140,7 @@ class AbstractSidebar extends \Magento\Sales\Block\Adminhtml\Order\Create\Abstra
      * Retrieve all items
      *
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function getItems()
     {
@@ -161,7 +162,7 @@ class AbstractSidebar extends \Magento\Sales\Block\Adminhtml\Order\Create\Abstra
                     $type = $item->getTypeId();
                 } elseif ($item instanceof \Magento\Sales\Model\Order\Item) {
                     $type = $item->getProductType();
-                } elseif ($item instanceof \Magento\Sales\Model\Quote\Item) {
+                } elseif ($item instanceof \Magento\Quote\Model\Quote\Item) {
                     $type = $item->getProductType();
                 } else {
                     $type = '';
@@ -218,6 +219,7 @@ class AbstractSidebar extends \Magento\Sales\Block\Adminhtml\Order\Create\Abstra
      *
      * @param string|int|null $productType
      * @return false
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function isConfigurationRequired($productType)
     {
diff --git a/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Sidebar/Cart.php b/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Sidebar/Cart.php
index b6ce02bcb3eed681d0d0b8aab6594cbeadd129f3..c943808fb716ec1a2d113541b02c4b07cac656e3 100644
--- a/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Sidebar/Cart.php
+++ b/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Sidebar/Cart.php
@@ -80,7 +80,7 @@ class Cart extends \Magento\Sales\Block\Adminhtml\Order\Create\Sidebar\AbstractS
     /**
      * Retrieve product identifier linked with item
      *
-     * @param \Magento\Sales\Model\Quote\Item $item
+     * @param \Magento\Quote\Model\Quote\Item $item
      * @return int
      */
     public function getProductId($item)
diff --git a/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Totals.php b/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Totals.php
index b999c6d3d92ca2c6139e27ad8acbeb324fade6fe..66dc3274dd4def11ae4837029ed03419e7091c6e 100644
--- a/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Totals.php
+++ b/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Totals.php
@@ -187,6 +187,7 @@ class Totals extends \Magento\Sales\Block\Adminhtml\Order\Create\AbstractCreate
      * Get note notification
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getNoteNotify()
     {
diff --git a/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Totals/Discount.php b/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Totals/Discount.php
index 2b4a79d4bbd2bd766323857fa325e14c1c413f26..584f443efbefcbf9a88ce8ffd36fcc1c59b7c5d3 100644
--- a/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Totals/Discount.php
+++ b/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Totals/Discount.php
@@ -11,6 +11,7 @@ use Magento\Framework\Pricing\PriceCurrencyInterface;
  * Subtotal Total Row Renderer
  *
  * @author Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.DepthOfInheritance)
  */
 class Discount extends \Magento\Sales\Block\Adminhtml\Order\Create\Totals\DefaultTotals
 {
diff --git a/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Totals/Grandtotal.php b/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Totals/Grandtotal.php
index 2fe463f3809c2ddadf9508a7a74447f933e4a540..67211ec745a2eb9800e5e4caeeb96dae464e58a2 100644
--- a/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Totals/Grandtotal.php
+++ b/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Totals/Grandtotal.php
@@ -11,6 +11,7 @@ use Magento\Framework\Pricing\PriceCurrencyInterface;
  * Subtotal Total Row Renderer
  *
  * @author Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.DepthOfInheritance)
  */
 class Grandtotal extends \Magento\Sales\Block\Adminhtml\Order\Create\Totals\DefaultTotals
 {
diff --git a/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Totals/Shipping.php b/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Totals/Shipping.php
index b34c835fbc3d3a53292cd68570d9261dd0733354..1d00dad06c8c553ee7a0d63fb561c800a7fb2d07 100644
--- a/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Totals/Shipping.php
+++ b/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Totals/Shipping.php
@@ -11,6 +11,7 @@ use Magento\Framework\Pricing\PriceCurrencyInterface;
  * Subtotal Total Row Renderer
  *
  * @author Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.DepthOfInheritance)
  */
 class Shipping extends \Magento\Sales\Block\Adminhtml\Order\Create\Totals\DefaultTotals
 {
diff --git a/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Totals/Subtotal.php b/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Totals/Subtotal.php
index 48a00d5b49286476e590367779829aba48ad862c..7f7fb65e1322e71c85766bb8eeba3e405d0bc2cd 100644
--- a/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Totals/Subtotal.php
+++ b/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Totals/Subtotal.php
@@ -11,6 +11,7 @@ use Magento\Framework\Pricing\PriceCurrencyInterface;
  * Subtotal Total Row Renderer
  *
  * @author Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.DepthOfInheritance)
  */
 class Subtotal extends \Magento\Sales\Block\Adminhtml\Order\Create\Totals\DefaultTotals
 {
diff --git a/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Totals/Tax.php b/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Totals/Tax.php
index 839c55464c75cc973cbeba6efddb094bd339c074..42731212784eb73a523acf465f8eec3ad18dafe1 100644
--- a/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Totals/Tax.php
+++ b/app/code/Magento/Sales/Block/Adminhtml/Order/Create/Totals/Tax.php
@@ -9,6 +9,7 @@ namespace Magento\Sales\Block\Adminhtml\Order\Create\Totals;
  * Tax Total Row Renderer
  *
  * @author Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.DepthOfInheritance)
  */
 class Tax extends \Magento\Sales\Block\Adminhtml\Order\Create\Totals\DefaultTotals
 {
diff --git a/app/code/Magento/Sales/Block/Adminhtml/Order/Invoice/Create/Items.php b/app/code/Magento/Sales/Block/Adminhtml/Order/Invoice/Create/Items.php
index 4749e8127d036a620f6bfb7e01efea39b249db46..7b77a9a64c407553f5268b2ee72a0cdf92df7d73 100644
--- a/app/code/Magento/Sales/Block/Adminhtml/Order/Invoice/Create/Items.php
+++ b/app/code/Magento/Sales/Block/Adminhtml/Order/Invoice/Create/Items.php
@@ -92,6 +92,7 @@ class Items extends \Magento\Sales\Block\Adminhtml\Items\AbstractItems
      * Get is submit button disabled or not
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getDisableSubmitButton()
     {
diff --git a/app/code/Magento/Sales/Block/Adminhtml/Order/Invoice/View.php b/app/code/Magento/Sales/Block/Adminhtml/Order/Invoice/View.php
index ea629a60c9c1ad67f77a71c57a463dd552cacd1b..598eed53a15d6aa25d0e5b7768a606a0c35e2a43 100644
--- a/app/code/Magento/Sales/Block/Adminhtml/Order/Invoice/View.php
+++ b/app/code/Magento/Sales/Block/Adminhtml/Order/Invoice/View.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Sales\Block\Adminhtml\Order\Invoice;
 
 /**
@@ -54,6 +57,8 @@ class View extends \Magento\Backend\Block\Widget\Form\Container
      * Constructor
      *
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _construct()
     {
diff --git a/app/code/Magento/Sales/Block/Adminhtml/Order/Status/Edit/Form.php b/app/code/Magento/Sales/Block/Adminhtml/Order/Status/Edit/Form.php
index 7e8db3001f810459bac35064c948901d6d01f066..a14eb0ed898024d1031eb17ad87234ac060a1515 100644
--- a/app/code/Magento/Sales/Block/Adminhtml/Order/Status/Edit/Form.php
+++ b/app/code/Magento/Sales/Block/Adminhtml/Order/Status/Edit/Form.php
@@ -7,6 +7,7 @@ namespace Magento\Sales\Block\Adminhtml\Order\Status\Edit;
 
 /**
  * Edit status form
+ * @SuppressWarnings(PHPMD.DepthOfInheritance)
  */
 class Form extends \Magento\Sales\Block\Adminhtml\Order\Status\NewStatus\Form
 {
diff --git a/app/code/Magento/Sales/Block/Adminhtml/Order/View.php b/app/code/Magento/Sales/Block/Adminhtml/Order/View.php
index fd9ce395e74ea99e39581c1c1ba0bfb86103b9df..79020e2a0c59067cc3569df62efee82bc9a5257e 100644
--- a/app/code/Magento/Sales/Block/Adminhtml/Order/View.php
+++ b/app/code/Magento/Sales/Block/Adminhtml/Order/View.php
@@ -64,6 +64,9 @@ class View extends \Magento\Backend\Block\Widget\Form\Container
      * Constructor
      *
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _construct()
     {
diff --git a/app/code/Magento/Sales/Block/Adminhtml/Report/Filter/Form.php b/app/code/Magento/Sales/Block/Adminhtml/Report/Filter/Form.php
index fde3381ab014ba5962b42ccb84268a43206c3aa5..b7aefa2d344ef1d56b5a9797092e1542bb43a382 100644
--- a/app/code/Magento/Sales/Block/Adminhtml/Report/Filter/Form.php
+++ b/app/code/Magento/Sales/Block/Adminhtml/Report/Filter/Form.php
@@ -9,6 +9,7 @@ namespace Magento\Sales\Block\Adminhtml\Report\Filter;
  * Sales Adminhtml report filter form
  *
  * @author     Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.DepthOfInheritance)
  */
 class Form extends \Magento\Reports\Block\Adminhtml\Filter\Form
 {
diff --git a/app/code/Magento/Sales/Block/Adminhtml/Report/Filter/Form/Coupon.php b/app/code/Magento/Sales/Block/Adminhtml/Report/Filter/Form/Coupon.php
index f69da0c59b9726cc53b00dcd24d11995dc1b225d..b67df217903c4123dedc5b399f1110a8422f22cd 100644
--- a/app/code/Magento/Sales/Block/Adminhtml/Report/Filter/Form/Coupon.php
+++ b/app/code/Magento/Sales/Block/Adminhtml/Report/Filter/Form/Coupon.php
@@ -9,6 +9,7 @@ namespace Magento\Sales\Block\Adminhtml\Report\Filter\Form;
  * Sales Adminhtml report filter form for coupons report
  *
  * @author     Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.DepthOfInheritance)
  */
 class Coupon extends \Magento\Sales\Block\Adminhtml\Report\Filter\Form
 {
diff --git a/app/code/Magento/Sales/Block/Adminhtml/Report/Filter/Form/Order.php b/app/code/Magento/Sales/Block/Adminhtml/Report/Filter/Form/Order.php
index a9c5b16967156ccc18b6dc20cb22a0a482bfdb39..b8309267361eb24d5ac0266a16035c710aab15e1 100644
--- a/app/code/Magento/Sales/Block/Adminhtml/Report/Filter/Form/Order.php
+++ b/app/code/Magento/Sales/Block/Adminhtml/Report/Filter/Form/Order.php
@@ -9,6 +9,7 @@ namespace Magento\Sales\Block\Adminhtml\Report\Filter\Form;
  * Sales Adminhtml report filter form order
  *
  * @author     Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.DepthOfInheritance)
  */
 class Order extends \Magento\Sales\Block\Adminhtml\Report\Filter\Form
 {
@@ -16,6 +17,7 @@ class Order extends \Magento\Sales\Block\Adminhtml\Report\Filter\Form
      * Preparing form
      *
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     protected function _prepareForm()
     {
diff --git a/app/code/Magento/Sales/Block/Adminhtml/System/Config/Form/Fieldset/Order/Statuses.php b/app/code/Magento/Sales/Block/Adminhtml/System/Config/Form/Fieldset/Order/Statuses.php
index b3aee4a4bcab9e2bd5f9d04e10fa5b5da73f703d..1f775bf7c6634c47de1c972acf55de457c7c4bad 100644
--- a/app/code/Magento/Sales/Block/Adminhtml/System/Config/Form/Fieldset/Order/Statuses.php
+++ b/app/code/Magento/Sales/Block/Adminhtml/System/Config/Form/Fieldset/Order/Statuses.php
@@ -104,6 +104,7 @@ class Statuses extends \Magento\Backend\Block\System\Config\Form\Fieldset
      * @param string $id
      * @param string $status
      * @return string
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _getFieldHtml($fieldset, $id, $status)
     {
diff --git a/app/code/Magento/Sales/Block/Items/AbstractItems.php b/app/code/Magento/Sales/Block/Items/AbstractItems.php
index eefc80ad8aa3905f722e3891756fbd62bd37042f..728b46470af08ca1b81c90b95346364304580277 100644
--- a/app/code/Magento/Sales/Block/Items/AbstractItems.php
+++ b/app/code/Magento/Sales/Block/Items/AbstractItems.php
@@ -9,6 +9,7 @@ namespace Magento\Sales\Block\Items;
  * Abstract block for display sales (quote/order/invoice etc.) items
  *
  * @author      Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.NumberOfChildren)
  */
 class AbstractItems extends \Magento\Framework\View\Element\Template
 {
@@ -23,6 +24,7 @@ class AbstractItems extends \Magento\Framework\View\Element\Template
      * @param string $type
      * @return \Magento\Framework\View\Element\AbstractBlock
      * @throws \RuntimeException
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function getItemRenderer($type)
     {
@@ -47,6 +49,7 @@ class AbstractItems extends \Magento\Framework\View\Element\Template
      *
      * @param \Magento\Framework\View\Element\AbstractBlock $renderer
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     protected function _prepareItem(\Magento\Framework\View\Element\AbstractBlock $renderer)
     {
@@ -63,7 +66,7 @@ class AbstractItems extends \Magento\Framework\View\Element\Template
     {
         if ($item->getOrderItem()) {
             $type = $item->getOrderItem()->getProductType();
-        } elseif ($item instanceof \Magento\Sales\Model\Quote\Address\Item) {
+        } elseif ($item instanceof \Magento\Quote\Model\Quote\Address\Item) {
             $type = $item->getQuoteItem()->getProductType();
         } else {
             $type = $item->getProductType();
diff --git a/app/code/Magento/Sales/Block/Order/Creditmemo/Totals.php b/app/code/Magento/Sales/Block/Order/Creditmemo/Totals.php
index 4fa114b5ee96d01086ae7842ed825de6240d00d1..a03ca172c5f7c293487bb93f9d7bde266f78483b 100644
--- a/app/code/Magento/Sales/Block/Order/Creditmemo/Totals.php
+++ b/app/code/Magento/Sales/Block/Order/Creditmemo/Totals.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Sales\Block\Order\Creditmemo;
 
 use Magento\Sales\Model\Order\Creditmemo;
diff --git a/app/code/Magento/Sales/Block/Order/Item/Renderer/DefaultRenderer.php b/app/code/Magento/Sales/Block/Order/Item/Renderer/DefaultRenderer.php
index 79a29a35ba58109fbc8d958901f878fa3c5b1c72..c6ea7d810dc0948e6984bf152d6783cb2278ec28 100644
--- a/app/code/Magento/Sales/Block/Order/Item/Renderer/DefaultRenderer.php
+++ b/app/code/Magento/Sales/Block/Order/Item/Renderer/DefaultRenderer.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Sales\Block\Order\Item\Renderer;
 
 use Magento\Sales\Model\Order\CreditMemo\Item as CreditMemoItem;
@@ -123,6 +126,7 @@ class DefaultRenderer extends \Magento\Framework\View\Element\Template
      *          )
      *
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function getFormatedOptionValue($optionValue)
     {
diff --git a/app/code/Magento/Sales/Block/Order/Totals.php b/app/code/Magento/Sales/Block/Order/Totals.php
index 5c19f07551de92c75e589a6bff298ff0fe7f80dc..a173a51146d3a1b699a8e12d9d3cd458f7a42c9d 100644
--- a/app/code/Magento/Sales/Block/Order/Totals.php
+++ b/app/code/Magento/Sales/Block/Order/Totals.php
@@ -285,6 +285,7 @@ class Totals extends \Magento\Framework\View\Element\Template
      *
      * @param   array $order
      * @return  $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function applySortOrder($order)
     {
diff --git a/app/code/Magento/Sales/Block/Status/Grid/Column/State.php b/app/code/Magento/Sales/Block/Status/Grid/Column/State.php
index ac83c7879bd59cf798b10daeaa358ede3ec7d085..7f5b650e85fc7b6d4c70bb51f938d1f6352853c7 100644
--- a/app/code/Magento/Sales/Block/Status/Grid/Column/State.php
+++ b/app/code/Magento/Sales/Block/Status/Grid/Column/State.php
@@ -45,6 +45,7 @@ class State extends \Magento\Backend\Block\Widget\Grid\Column
      * @param \Magento\Backend\Block\Widget\Grid\Column $column
      * @param bool $isExport
      * @return string
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function decorateState($value, $row, $column, $isExport)
     {
diff --git a/app/code/Magento/Sales/Block/Status/Grid/Column/Unassign.php b/app/code/Magento/Sales/Block/Status/Grid/Column/Unassign.php
index 27629b7809f1819cfc8a0284ff8a224006b9f013..0d924f05464a9ee88855914f8b611b3188c7aa59 100644
--- a/app/code/Magento/Sales/Block/Status/Grid/Column/Unassign.php
+++ b/app/code/Magento/Sales/Block/Status/Grid/Column/Unassign.php
@@ -25,6 +25,7 @@ class Unassign extends \Magento\Backend\Block\Widget\Grid\Column
      * @param \Magento\Backend\Block\Widget\Grid\Column $column
      * @param bool $isExport
      * @return string
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function decorateAction($value, $row, $column, $isExport)
     {
diff --git a/app/code/Magento/Sales/Controller/Adminhtml/Creditmemo/AbstractCreditmemo/View.php b/app/code/Magento/Sales/Controller/Adminhtml/Creditmemo/AbstractCreditmemo/View.php
index f535f59bc08586889146362388f04be661a22896..267d84431bd5b2dc4f4d5d160f36473348c7de35 100644
--- a/app/code/Magento/Sales/Controller/Adminhtml/Creditmemo/AbstractCreditmemo/View.php
+++ b/app/code/Magento/Sales/Controller/Adminhtml/Creditmemo/AbstractCreditmemo/View.php
@@ -20,6 +20,7 @@ class View extends \Magento\Backend\App\Action
      * Creditmemo information page
      *
      * @return void
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function execute()
     {
diff --git a/app/code/Magento/Sales/Controller/Adminhtml/Order.php b/app/code/Magento/Sales/Controller/Adminhtml/Order.php
index 5aa141ae06b18e76ec6af6b473197d5efa533702..ae425500611ade3fb71ca663dcbb58cc7faf1ede 100644
--- a/app/code/Magento/Sales/Controller/Adminhtml/Order.php
+++ b/app/code/Magento/Sales/Controller/Adminhtml/Order.php
@@ -11,6 +11,7 @@ use Magento\Backend\App\Action;
  * Adminhtml sales orders controller
  *
  * @author      Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.NumberOfChildren)
  */
 class Order extends \Magento\Backend\App\Action
 {
@@ -101,6 +102,7 @@ class Order extends \Magento\Backend\App\Action
      * Acl check for admin
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _isAllowed()
     {
diff --git a/app/code/Magento/Sales/Controller/Adminhtml/Order/Create.php b/app/code/Magento/Sales/Controller/Adminhtml/Order/Create.php
index c5e9bf00a5cb452fffe35a5d8776821dac3b39d0..08ac01a05321aad30771c27d55496c2298b1b75e 100644
--- a/app/code/Magento/Sales/Controller/Adminhtml/Order/Create.php
+++ b/app/code/Magento/Sales/Controller/Adminhtml/Order/Create.php
@@ -11,6 +11,7 @@ use Magento\Backend\App\Action;
  * Adminhtml sales orders creation process controller
  *
  * @author      Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.NumberOfChildren)
  */
 class Create extends \Magento\Backend\App\Action
 {
@@ -47,7 +48,7 @@ class Create extends \Magento\Backend\App\Action
     /**
      * Retrieve quote object
      *
-     * @return \Magento\Sales\Model\Quote
+     * @return \Magento\Quote\Model\Quote
      */
     protected function _getQuote()
     {
@@ -120,6 +121,9 @@ class Create extends \Magento\Backend\App\Action
      *
      * @param string $action
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _processActionData($action = null)
     {
diff --git a/app/code/Magento/Sales/Controller/Adminhtml/Order/Create/ConfigureQuoteItems.php b/app/code/Magento/Sales/Controller/Adminhtml/Order/Create/ConfigureQuoteItems.php
index 050a6bb327a3258e651c9a3e7897b8024c7903c1..25038c8a58553ccbe4c29b059dea7f07cf7e0ef6 100644
--- a/app/code/Magento/Sales/Controller/Adminhtml/Order/Create/ConfigureQuoteItems.php
+++ b/app/code/Magento/Sales/Controller/Adminhtml/Order/Create/ConfigureQuoteItems.php
@@ -24,14 +24,14 @@ class ConfigureQuoteItems extends \Magento\Sales\Controller\Adminhtml\Order\Crea
                 throw new \Magento\Framework\Model\Exception(__('Quote item id is not received.'));
             }
 
-            $quoteItem = $this->_objectManager->create('Magento\Sales\Model\Quote\Item')->load($quoteItemId);
+            $quoteItem = $this->_objectManager->create('Magento\Quote\Model\Quote\Item')->load($quoteItemId);
             if (!$quoteItem->getId()) {
                 throw new \Magento\Framework\Model\Exception(__('Quote item is not loaded.'));
             }
 
             $configureResult->setOk(true);
             $optionCollection = $this->_objectManager->create(
-                'Magento\Sales\Model\Quote\Item\Option'
+                'Magento\Quote\Model\Quote\Item\Option'
             )->getCollection()->addItemFilter(
                 [$quoteItemId]
             );
diff --git a/app/code/Magento/Sales/Controller/Adminhtml/Order/Create/Save.php b/app/code/Magento/Sales/Controller/Adminhtml/Order/Create/Save.php
index 601b6e683104be1afb1287d0e8b2738857f2b27d..49c7f1ae5ff482681a48d640a8d396ce233d2099 100644
--- a/app/code/Magento/Sales/Controller/Adminhtml/Order/Create/Save.php
+++ b/app/code/Magento/Sales/Controller/Adminhtml/Order/Create/Save.php
@@ -13,6 +13,7 @@ class Save extends \Magento\Sales\Controller\Adminhtml\Order\Create
      * Saving quote and create order
      *
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function execute()
     {
diff --git a/app/code/Magento/Sales/Controller/Adminhtml/Order/Creditmemo/Save.php b/app/code/Magento/Sales/Controller/Adminhtml/Order/Creditmemo/Save.php
index 2856c97fecce926a7df987f8e03dc9000f86379a..29416472331b4a298753f2cc991c8ea8a0c77d4d 100644
--- a/app/code/Magento/Sales/Controller/Adminhtml/Order/Creditmemo/Save.php
+++ b/app/code/Magento/Sales/Controller/Adminhtml/Order/Creditmemo/Save.php
@@ -50,6 +50,8 @@ class Save extends \Magento\Backend\App\Action
      * We can save only new creditmemo. Existing creditmemos are not editable
      *
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function execute()
     {
diff --git a/app/code/Magento/Sales/Controller/Adminhtml/Order/CreditmemoLoader.php b/app/code/Magento/Sales/Controller/Adminhtml/Order/CreditmemoLoader.php
index 66b0cc06f0568f78a1e26d50ea210cd6470bad27..4468f01f7e68ce0a11579e15313013d6491dac8a 100644
--- a/app/code/Magento/Sales/Controller/Adminhtml/Order/CreditmemoLoader.php
+++ b/app/code/Magento/Sales/Controller/Adminhtml/Order/CreditmemoLoader.php
@@ -79,6 +79,7 @@ class CreditmemoLoader extends Object
      * @param \Magento\Framework\Registry $registry
      * @param \Magento\CatalogInventory\Api\StockConfigurationInterface $stockConfiguration
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Sales\Model\Order\CreditmemoFactory $creditmemoFactory,
@@ -173,6 +174,7 @@ class CreditmemoLoader extends Object
      * Initialize creditmemo model instance
      *
      * @return \Magento\Sales\Model\Order\Creditmemo|false
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function load()
     {
diff --git a/app/code/Magento/Sales/Controller/Adminhtml/Order/Invoice/Save.php b/app/code/Magento/Sales/Controller/Adminhtml/Order/Invoice/Save.php
index 82bcd79fe9a910ce21fbdf4e0adc0bdd8b67ebbc..cbc04f14c659dd0aa314ee6cc7acf0a50af2c45a 100644
--- a/app/code/Magento/Sales/Controller/Adminhtml/Order/Invoice/Save.php
+++ b/app/code/Magento/Sales/Controller/Adminhtml/Order/Invoice/Save.php
@@ -95,6 +95,9 @@ class Save extends \Magento\Backend\App\Action
      * We can save only new invoice. Existing invoices are not editable
      *
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public function execute()
     {
diff --git a/app/code/Magento/Sales/Controller/Adminhtml/Order/Pdfdocs.php b/app/code/Magento/Sales/Controller/Adminhtml/Order/Pdfdocs.php
index d7c3b45d5b29fab83323286cf4c579a74c59ec79..9fdebb897551af735087c9a593f15a9ed995385d 100644
--- a/app/code/Magento/Sales/Controller/Adminhtml/Order/Pdfdocs.php
+++ b/app/code/Magento/Sales/Controller/Adminhtml/Order/Pdfdocs.php
@@ -15,6 +15,7 @@ class Pdfdocs extends \Magento\Sales\Controller\Adminhtml\Order
      * Print all documents for selected orders
      *
      * @return ResponseInterface|void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function execute()
     {
diff --git a/app/code/Magento/Sales/Controller/Adminhtml/Shipment/AbstractShipment/View.php b/app/code/Magento/Sales/Controller/Adminhtml/Shipment/AbstractShipment/View.php
index cd7bf2de861eecd5a38570c88fed6cadfa4c14ca..ba190ac2cbc5040338ca608dc560995455a633c3 100644
--- a/app/code/Magento/Sales/Controller/Adminhtml/Shipment/AbstractShipment/View.php
+++ b/app/code/Magento/Sales/Controller/Adminhtml/Shipment/AbstractShipment/View.php
@@ -20,6 +20,7 @@ abstract class View extends \Magento\Backend\App\Action
      * Shipment information page
      *
      * @return void
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function execute()
     {
diff --git a/app/code/Magento/Sales/Controller/Download/DownloadCustomOption.php b/app/code/Magento/Sales/Controller/Download/DownloadCustomOption.php
index 51634f967cd85a4ceae8d852cc500d999e2bff0d..84defe91734829fc7a6c513c5fe0ab73665be1e1 100644
--- a/app/code/Magento/Sales/Controller/Download/DownloadCustomOption.php
+++ b/app/code/Magento/Sales/Controller/Download/DownloadCustomOption.php
@@ -14,12 +14,14 @@ class DownloadCustomOption extends \Magento\Framework\App\Action\Action
      * Custom options download action
      *
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.ExitExpression)
      */
     public function execute()
     {
         $quoteItemOptionId = $this->getRequest()->getParam('id');
-        /** @var $option \Magento\Sales\Model\Quote\Item\Option */
-        $option = $this->_objectManager->create('Magento\Sales\Model\Quote\Item\Option')->load($quoteItemOptionId);
+        /** @var $option \Magento\Quote\Model\Quote\Item\Option */
+        $option = $this->_objectManager->create('Magento\Quote\Model\Quote\Item\Option')->load($quoteItemOptionId);
 
         if (!$option->getId()) {
             $this->_forward('noroute');
diff --git a/app/code/Magento/Sales/Controller/Order/Plugin/Authentication.php b/app/code/Magento/Sales/Controller/Order/Plugin/Authentication.php
index 13356e24e572ddbd593fd3f050c00a376aa728cc..02aaad1b1baaa4df85de61e19c61ae6657367eac 100644
--- a/app/code/Magento/Sales/Controller/Order/Plugin/Authentication.php
+++ b/app/code/Magento/Sales/Controller/Order/Plugin/Authentication.php
@@ -38,6 +38,7 @@ class Authentication
      * @param \Magento\Framework\App\ActionInterface $subject
      * @param RequestInterface $request
      * @return void
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function beforeDispatch(\Magento\Framework\App\ActionInterface $subject, RequestInterface $request)
     {
diff --git a/app/code/Magento/Sales/Helper/Admin.php b/app/code/Magento/Sales/Helper/Admin.php
index 0d993a21f0db2acda5787fb89f73b0526c409637..3aca5adcd8320004e31656e8ace26e730d14288a 100644
--- a/app/code/Magento/Sales/Helper/Admin.php
+++ b/app/code/Magento/Sales/Helper/Admin.php
@@ -116,7 +116,7 @@ class Admin extends \Magento\Framework\App\Helper\AbstractHelper
                 $type = $item->getTypeId();
             } elseif ($item instanceof \Magento\Sales\Model\Order\Item) {
                 $type = $item->getProductType();
-            } elseif ($item instanceof \Magento\Sales\Model\Quote\Item) {
+            } elseif ($item instanceof \Magento\Quote\Model\Quote\Item) {
                 $type = $item->getProductType();
             } else {
                 $type = '';
diff --git a/app/code/Magento/Sales/Helper/Data.php b/app/code/Magento/Sales/Helper/Data.php
index 83d962af69af7685dbc52878dd3a7fbfbe7f759c..80a5f59a03e2cf3f07197b1fcde5db2080a7aaf9 100644
--- a/app/code/Magento/Sales/Helper/Data.php
+++ b/app/code/Magento/Sales/Helper/Data.php
@@ -14,27 +14,6 @@ use Magento\Store\Model\Store;
  */
 class Data extends \Magento\Core\Helper\Data
 {
-    /**
-     * Maximum available number
-     */
-    const MAXIMUM_AVAILABLE_NUMBER = 99999999;
-
-    /**
-     * Check quote amount
-     *
-     * @param \Magento\Sales\Model\Quote $quote
-     * @param float $amount
-     * @return $this
-     */
-    public function checkQuoteAmount(\Magento\Sales\Model\Quote $quote, $amount)
-    {
-        if (!$quote->getHasError() && $amount >= self::MAXIMUM_AVAILABLE_NUMBER) {
-            $quote->setHasError(true);
-            $quote->addMessage(__('This item price or quantity is not valid for checkout.'));
-        }
-        return $this;
-    }
-
     /**
      * Check allow to send new order confirmation email
      *
diff --git a/app/code/Magento/Sales/Helper/Guest.php b/app/code/Magento/Sales/Helper/Guest.php
index 71318f24cacbd184168a09d227df3dd068ea044e..5ba1261f9a00552c590f0e88f727370db940724b 100644
--- a/app/code/Magento/Sales/Helper/Guest.php
+++ b/app/code/Magento/Sales/Helper/Guest.php
@@ -10,6 +10,7 @@ use Magento\Framework\App as App;
 
 /**
  * Sales module base helper
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Guest extends \Magento\Core\Helper\Data
 {
diff --git a/app/code/Magento/Sales/Helper/Reorder.php b/app/code/Magento/Sales/Helper/Reorder.php
index 9740e150da4844a185c1f7f7a502f70e270cdce9..f93c02fccdef0da47c54ca7b6ad1d6b8ca447af3 100644
--- a/app/code/Magento/Sales/Helper/Reorder.php
+++ b/app/code/Magento/Sales/Helper/Reorder.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Sales\Helper;
 
 /**
diff --git a/app/code/Magento/Sales/Model/AdminOrder/Create.php b/app/code/Magento/Sales/Model/AdminOrder/Create.php
index f5de17544700e1371fb961cbea01d3a67240c57e..fd4ec66b5e13c3fc087df66717682f265a9baf10 100644
--- a/app/code/Magento/Sales/Model/AdminOrder/Create.php
+++ b/app/code/Magento/Sales/Model/AdminOrder/Create.php
@@ -3,17 +3,26 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Sales\Model\AdminOrder;
 
 use Magento\Customer\Api\AddressMetadataInterface;
 use Magento\Customer\Model\Metadata\Form as CustomerForm;
-use Magento\Sales\Model\Quote\Item;
+use Magento\Quote\Model\Quote\Item;
 
 /**
  * Order create model
+ * @SuppressWarnings(PHPMD.TooManyFields)
+ * @SuppressWarnings(PHPMD.ExcessiveClassComplexity)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Create extends \Magento\Framework\Object implements \Magento\Checkout\Model\Cart\CartInterface
 {
+    /**
+     * Xml default email domain path
+     */
     const XML_PATH_DEFAULT_EMAIL_DOMAIN = 'customer/create_account/email_domain';
 
     /**
@@ -33,7 +42,7 @@ class Create extends \Magento\Framework\Object implements \Magento\Checkout\Mode
     /**
      * Sales Quote instance
      *
-     * @var \Magento\Sales\Model\Quote
+     * @var \Magento\Quote\Model\Quote
      */
     protected $_cart;
 
@@ -75,7 +84,7 @@ class Create extends \Magento\Framework\Object implements \Magento\Checkout\Mode
     /**
      * Quote associated with the model
      *
-     * @var \Magento\Sales\Model\Quote
+     * @var \Magento\Quote\Model\Quote
      */
     protected $_quote;
 
@@ -164,7 +173,7 @@ class Create extends \Magento\Framework\Object implements \Magento\Checkout\Mode
     protected $emailSender;
 
     /**
-     * @var \Magento\Sales\Model\Quote\Item\Updater
+     * @var \Magento\Quote\Model\Quote\Item\Updater
      */
     protected $quoteItemUpdater;
 
@@ -191,10 +200,15 @@ class Create extends \Magento\Framework\Object implements \Magento\Checkout\Mode
     protected $customerMapper;
 
     /**
-     * @var \Magento\Sales\Model\QuoteRepository
+     * @var \Magento\Quote\Model\QuoteRepository
      */
     protected $quoteRepository;
 
+    /**
+     * @var \Magento\Quote\Model\QuoteManagement
+     */
+    protected $quoteManagement;
+
     /**
      * @param \Magento\Framework\ObjectManagerInterface $objectManager
      * @param \Magento\Framework\Event\ManagerInterface $eventManager
@@ -215,11 +229,13 @@ class Create extends \Magento\Framework\Object implements \Magento\Checkout\Mode
      * @param \Magento\CatalogInventory\Api\StockRegistryInterface $stockRegistry
      * @param Item\Updater $quoteItemUpdater
      * @param \Magento\Framework\Object\Factory $objectFactory
-     * @param \Magento\Sales\Model\QuoteRepository $quoteRepository
+     * @param \Magento\Quote\Model\QuoteRepository $quoteRepository
      * @param \Magento\Customer\Api\AccountManagementInterface $accountManagement
      * @param \Magento\Customer\Api\Data\CustomerDataBuilder $customerBuilder
      * @param \Magento\Customer\Model\Customer\Mapper $customerMapper
+     * @param \Magento\Quote\Model\QuoteManagement $quoteManagement
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\ObjectManagerInterface $objectManager,
@@ -239,12 +255,13 @@ class Create extends \Magento\Framework\Object implements \Magento\Checkout\Mode
         \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig,
         \Magento\Sales\Model\AdminOrder\EmailSender $emailSender,
         \Magento\CatalogInventory\Api\StockRegistryInterface $stockRegistry,
-        \Magento\Sales\Model\Quote\Item\Updater $quoteItemUpdater,
+        \Magento\Quote\Model\Quote\Item\Updater $quoteItemUpdater,
         \Magento\Framework\Object\Factory $objectFactory,
-        \Magento\Sales\Model\QuoteRepository $quoteRepository,
+        \Magento\Quote\Model\QuoteRepository $quoteRepository,
         \Magento\Customer\Api\AccountManagementInterface $accountManagement,
         \Magento\Customer\Api\Data\CustomerDataBuilder $customerBuilder,
         \Magento\Customer\Model\Customer\Mapper $customerMapper,
+        \Magento\Quote\Model\QuoteManagement $quoteManagement,
         array $data = []
     ) {
         $this->_objectManager = $objectManager;
@@ -270,7 +287,7 @@ class Create extends \Magento\Framework\Object implements \Magento\Checkout\Mode
         $this->quoteRepository = $quoteRepository;
         $this->accountManagement = $accountManagement;
         $this->customerMapper = $customerMapper;
-
+        $this->quoteManagement = $quoteManagement;
         parent::__construct($data);
     }
 
@@ -290,6 +307,7 @@ class Create extends \Magento\Framework\Object implements \Magento\Checkout\Mode
      * Return is validate data in import flag
      *
      * @return boolean
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsValidate()
     {
@@ -299,12 +317,12 @@ class Create extends \Magento\Framework\Object implements \Magento\Checkout\Mode
     /**
      * Retrieve quote item
      *
-     * @param int|\Magento\Sales\Model\Quote\Item $item
-     * @return \Magento\Sales\Model\Quote\Item|false
+     * @param int|\Magento\Quote\Model\Quote\Item $item
+     * @return \Magento\Quote\Model\Quote\Item|false
      */
     protected function _getQuoteItem($item)
     {
-        if ($item instanceof \Magento\Sales\Model\Quote\Item) {
+        if ($item instanceof \Magento\Quote\Model\Quote\Item) {
             return $item;
         } elseif (is_numeric($item)) {
             return $this->getSession()->getQuote()->getItemById($item);
@@ -395,7 +413,7 @@ class Create extends \Magento\Framework\Object implements \Magento\Checkout\Mode
     /**
      * Retrieve quote object model
      *
-     * @return \Magento\Sales\Model\Quote
+     * @return \Magento\Quote\Model\Quote
      */
     public function getQuote()
     {
@@ -409,10 +427,10 @@ class Create extends \Magento\Framework\Object implements \Magento\Checkout\Mode
     /**
      * Set quote object
      *
-     * @param \Magento\Sales\Model\Quote $quote
+     * @param \Magento\Quote\Model\Quote $quote
      * @return $this
      */
-    public function setQuote(\Magento\Sales\Model\Quote $quote)
+    public function setQuote(\Magento\Quote\Model\Quote $quote)
     {
         $this->_quote = $quote;
         return $this;
@@ -424,6 +442,8 @@ class Create extends \Magento\Framework\Object implements \Magento\Checkout\Mode
      * @param \Magento\Sales\Model\Order $order
      * @return $this
      * @throws \Magento\Framework\Model\Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function initFromOrder(\Magento\Sales\Model\Order $order)
     {
@@ -557,7 +577,7 @@ class Create extends \Magento\Framework\Object implements \Magento\Checkout\Mode
      *
      * @param \Magento\Sales\Model\Order\Item $orderItem
      * @param int $qty
-     * @return \Magento\Sales\Model\Quote\Item|string|$this
+     * @return \Magento\Quote\Model\Quote\Item|string|$this
      */
     public function initFromOrderItem(\Magento\Sales\Model\Order\Item $orderItem, $qty = null)
     {
@@ -637,7 +657,7 @@ class Create extends \Magento\Framework\Object implements \Magento\Checkout\Mode
     /**
      * Retrieve customer cart quote object model
      *
-     * @return \Magento\Sales\Model\Quote
+     * @return \Magento\Quote\Model\Quote
      */
     public function getCustomerCart()
     {
@@ -700,11 +720,13 @@ class Create extends \Magento\Framework\Object implements \Magento\Checkout\Mode
     /**
      * Move quote item to another items list
      *
-     * @param int|\Magento\Sales\Model\Quote\Item $item
+     * @param int|\Magento\Quote\Model\Quote\Item $item
      * @param string $moveTo
      * @param int $qty
      * @return $this
      * @throws \Magento\Framework\Model\Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public function moveQuoteItem($item, $moveTo, $qty)
     {
@@ -830,6 +852,9 @@ class Create extends \Magento\Framework\Object implements \Magento\Checkout\Mode
      * @param array $data
      * @return $this
      * @throws \Magento\Framework\Model\Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function applySidebarData($data)
     {
@@ -1045,12 +1070,12 @@ class Create extends \Magento\Framework\Object implements \Magento\Checkout\Mode
     /**
      * Parse additional options and sync them with product options
      *
-     * @param \Magento\Sales\Model\Quote\Item $item
+     * @param \Magento\Quote\Model\Quote\Item $item
      * @param string $additionalOptions
      * @return array
      * @throws \Magento\Framework\Model\Exception
      */
-    protected function _parseOptions(\Magento\Sales\Model\Quote\Item $item, $additionalOptions)
+    protected function _parseOptions(\Magento\Quote\Model\Quote\Item $item, $additionalOptions)
     {
         $productOptions = $this->_objectManager->get(
             'Magento\Catalog\Model\Product\Option\Type\DefaultType'
@@ -1110,11 +1135,11 @@ class Create extends \Magento\Framework\Object implements \Magento\Checkout\Mode
     /**
      * Assign options to item
      *
-     * @param \Magento\Sales\Model\Quote\Item $item
+     * @param \Magento\Quote\Model\Quote\Item $item
      * @param array $options
      * @return $this
      */
-    protected function _assignOptionsToItem(\Magento\Sales\Model\Quote\Item $item, $options)
+    protected function _assignOptionsToItem(\Magento\Quote\Model\Quote\Item $item, $options)
     {
         $optionIds = $item->getOptionByCode('option_ids');
         if ($optionIds) {
@@ -1168,7 +1193,7 @@ class Create extends \Magento\Framework\Object implements \Magento\Checkout\Mode
     /**
      * Prepare options array for info buy request
      *
-     * @param \Magento\Sales\Model\Quote\Item $item
+     * @param \Magento\Quote\Model\Quote\Item $item
      * @return array
      */
     protected function _prepareOptionsForRequest($item)
@@ -1214,7 +1239,7 @@ class Create extends \Magento\Framework\Object implements \Magento\Checkout\Mode
     /**
      * Retrieve oreder quote shipping address
      *
-     * @return \Magento\Sales\Model\Quote\Address
+     * @return \Magento\Quote\Model\Quote\Address
      */
     public function getShippingAddress()
     {
@@ -1244,11 +1269,11 @@ class Create extends \Magento\Framework\Object implements \Magento\Checkout\Mode
      * Set and validate Quote address
      * All errors added to _errors
      *
-     * @param \Magento\Sales\Model\Quote\Address $address
+     * @param \Magento\Quote\Model\Quote\Address $address
      * @param array $data
      * @return $this
      */
-    protected function _setQuoteAddress(\Magento\Sales\Model\Quote\Address $address, array $data)
+    protected function _setQuoteAddress(\Magento\Quote\Model\Quote\Address $address, array $data)
     {
         $isAjax = !$this->getIsValidate();
 
@@ -1269,7 +1294,7 @@ class Create extends \Magento\Framework\Object implements \Magento\Checkout\Mode
 
         // prepare request
         // save original request structure for files
-        if ($address->getAddressType() == \Magento\Sales\Model\Quote\Address::TYPE_SHIPPING) {
+        if ($address->getAddressType() == \Magento\Quote\Model\Quote\Address::TYPE_SHIPPING) {
             $requestData = ['order' => ['shipping_address' => $data]];
             $requestScope = 'order/shipping_address';
         } else {
@@ -1281,7 +1306,7 @@ class Create extends \Magento\Framework\Object implements \Magento\Checkout\Mode
         if ($this->getIsValidate()) {
             $errors = $addressForm->validateData($addressData);
             if ($errors !== true) {
-                if ($address->getAddressType() == \Magento\Sales\Model\Quote\Address::TYPE_SHIPPING) {
+                if ($address->getAddressType() == \Magento\Quote\Model\Quote\Address::TYPE_SHIPPING) {
                     $typeName = __('Shipping Address: ');
                 } else {
                     $typeName = __('Billing Address: ');
@@ -1303,18 +1328,18 @@ class Create extends \Magento\Framework\Object implements \Magento\Checkout\Mode
     /**
      * Set shipping address into quote
      *
-     * @param \Magento\Sales\Model\Quote\Address|array $address
+     * @param \Magento\Quote\Model\Quote\Address|array $address
      * @return $this
      */
     public function setShippingAddress($address)
     {
         if (is_array($address)) {
             $shippingAddress = $this->_objectManager->create(
-                'Magento\Sales\Model\Quote\Address'
+                'Magento\Quote\Model\Quote\Address'
             )->setData(
                 $address
             )->setAddressType(
-                \Magento\Sales\Model\Quote\Address::TYPE_SHIPPING
+                \Magento\Quote\Model\Quote\Address::TYPE_SHIPPING
             );
             if (!$this->getQuote()->isVirtual()) {
                 $this->_setQuoteAddress($shippingAddress, $address);
@@ -1326,7 +1351,7 @@ class Create extends \Magento\Framework\Object implements \Magento\Checkout\Mode
             $saveInAddressBook = (int)(!empty($address['save_in_address_book']));
             $shippingAddress->setData('save_in_address_book', $saveInAddressBook);
         }
-        if ($address instanceof \Magento\Sales\Model\Quote\Address) {
+        if ($address instanceof \Magento\Quote\Model\Quote\Address) {
             $shippingAddress = $address;
         }
 
@@ -1361,7 +1386,7 @@ class Create extends \Magento\Framework\Object implements \Magento\Checkout\Mode
     /**
      * Retrieve quote billing address
      *
-     * @return \Magento\Sales\Model\Quote\Address
+     * @return \Magento\Quote\Model\Quote\Address
      */
     public function getBillingAddress()
     {
@@ -1378,11 +1403,11 @@ class Create extends \Magento\Framework\Object implements \Magento\Checkout\Mode
     {
         if (is_array($address)) {
             $billingAddress = $this->_objectManager->create(
-                'Magento\Sales\Model\Quote\Address'
+                'Magento\Quote\Model\Quote\Address'
             )->setData(
                 $address
             )->setAddressType(
-                \Magento\Sales\Model\Quote\Address::TYPE_BILLING
+                \Magento\Quote\Model\Quote\Address::TYPE_BILLING
             );
             $this->_setQuoteAddress($billingAddress, $address);
             /**
@@ -1543,6 +1568,8 @@ class Create extends \Magento\Framework\Object implements \Magento\Checkout\Mode
      *
      * @param   array $data
      * @return  $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function importPostData($data)
     {
@@ -1643,6 +1670,7 @@ class Create extends \Magento\Framework\Object implements \Magento\Checkout\Mode
      * Set customer data to quote.
      *
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function _prepareCustomer()
     {
@@ -1702,9 +1730,10 @@ class Create extends \Magento\Framework\Object implements \Magento\Checkout\Mode
      * Create customer address and save it in the quote so that it can be used to persist later.
      *
      * @param \Magento\Customer\Api\Data\CustomerInterface $customer
-     * @param \Magento\Sales\Model\Quote\Address $quoteCustomerAddress
+     * @param \Magento\Quote\Model\Quote\Address $quoteCustomerAddress
      * @return void
      * @throws \InvalidArgumentException
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _prepareCustomerAddress($customer, $quoteCustomerAddress)
     {
@@ -1719,7 +1748,7 @@ class Create extends \Magento\Framework\Object implements \Magento\Checkout\Mode
             /** Update customer address data */
             $customerAddress = $this->addressBuilder->mergeDataObjects($existingAddressDataObject, $customerAddress)
                 ->create();
-        } elseif ($addressType == \Magento\Sales\Model\Quote\Address::ADDRESS_TYPE_SHIPPING) {
+        } elseif ($addressType == \Magento\Quote\Model\Quote\Address::ADDRESS_TYPE_SHIPPING) {
             try {
                 $billingAddressDataObject = $customer->getDefaultBilling();
             } catch (\Exception $e) {
@@ -1735,14 +1764,14 @@ class Create extends \Magento\Framework\Object implements \Magento\Checkout\Mode
         }
 
         switch ($addressType) {
-            case \Magento\Sales\Model\Quote\Address::ADDRESS_TYPE_BILLING:
+            case \Magento\Quote\Model\Quote\Address::ADDRESS_TYPE_BILLING:
                 if (is_null($customer->getDefaultBilling())) {
                     $customerAddress = $this->addressBuilder->populate($customerAddress)
                         ->setDefaultBilling(true)
                         ->create();
                 }
                 break;
-            case \Magento\Sales\Model\Quote\Address::ADDRESS_TYPE_SHIPPING:
+            case \Magento\Quote\Model\Quote\Address::ADDRESS_TYPE_SHIPPING:
                 if (is_null($customer->getDefaultShipping())) {
                     $customerAddress = $this->addressBuilder->populate($customerAddress)
                         ->setDefaultShipping(true)
@@ -1791,8 +1820,7 @@ class Create extends \Magento\Framework\Object implements \Magento\Checkout\Mode
         $quote = $this->getQuote();
         $this->_prepareQuoteItems();
 
-        /** @var $service \Magento\Sales\Model\Service\Quote */
-        $service = $this->_objectManager->create('Magento\Sales\Model\Service\Quote', ['quote' => $quote]);
+        $orderData = [];
         if ($this->getSession()->getOrder()->getId()) {
             $oldOrder = $this->getSession()->getOrder();
             $originalId = $oldOrder->getOriginalIncrementId();
@@ -1807,10 +1835,8 @@ class Create extends \Magento\Framework\Object implements \Magento\Checkout\Mode
                 'increment_id' => $originalId . '-' . ($oldOrder->getEditIncrement() + 1)
             ];
             $quote->setReservedOrderId($orderData['increment_id']);
-            $service->setOrderData($orderData);
         }
-
-        $order = $service->submitOrderWithDataObject();
+        $order = $this->quoteManagement->submit($quote, $orderData);
 
         if ($this->getSession()->getOrder()->getId()) {
             $oldOrder = $this->getSession()->getOrder();
@@ -1833,6 +1859,8 @@ class Create extends \Magento\Framework\Object implements \Magento\Checkout\Mode
      *
      * @return $this
      * @throws \Magento\Framework\Model\Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _validate()
     {
diff --git a/app/code/Magento/Sales/Model/AdminOrder/Product/Quote/Initializer.php b/app/code/Magento/Sales/Model/AdminOrder/Product/Quote/Initializer.php
index 8b6ef25aa578c48dd542d56e69982ff7b50c3036..565084d85ac40125609892aeecf021dde14a6f7c 100644
--- a/app/code/Magento/Sales/Model/AdminOrder/Product/Quote/Initializer.php
+++ b/app/code/Magento/Sales/Model/AdminOrder/Product/Quote/Initializer.php
@@ -29,13 +29,13 @@ class Initializer
     }
 
     /**
-     * @param \Magento\Sales\Model\Quote $quote
+     * @param \Magento\Quote\Model\Quote $quote
      * @param \Magento\Catalog\Model\Product $product
      * @param \Magento\Framework\Object $config
-     * @return \Magento\Sales\Model\Quote\Item|string
+     * @return \Magento\Quote\Model\Quote\Item|string
      */
     public function init(
-        \Magento\Sales\Model\Quote $quote,
+        \Magento\Quote\Model\Quote $quote,
         \Magento\Catalog\Model\Product $product,
         \Magento\Framework\Object $config
     ) {
diff --git a/app/code/Magento/Sales/Model/Config/Converter.php b/app/code/Magento/Sales/Model/Config/Converter.php
index 7529fc9d34c3791c199451a399baf7365bfc0a18..4f4b80f5995d1c8a5b4fe31d015f3172eaed026d 100644
--- a/app/code/Magento/Sales/Model/Config/Converter.php
+++ b/app/code/Magento/Sales/Model/Config/Converter.php
@@ -17,6 +17,7 @@ class Converter implements \Magento\Framework\Config\ConverterInterface
      * @param mixed $source
      * @return array
      * @throws \InvalidArgumentException
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function convert($source)
     {
diff --git a/app/code/Magento/Sales/Model/Convert/Order.php b/app/code/Magento/Sales/Model/Convert/Order.php
index 4b03c36d7b44f70e7d6197cf29701f2f4c474200..7ac320f80388b437544d4378fb9826834bdc09a1 100644
--- a/app/code/Magento/Sales/Model/Convert/Order.php
+++ b/app/code/Magento/Sales/Model/Convert/Order.php
@@ -9,6 +9,9 @@
  */
 namespace Magento\Sales\Model\Convert;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class Order extends \Magento\Framework\Object
 {
     /**
@@ -18,26 +21,6 @@ class Order extends \Magento\Framework\Object
      */
     protected $_eventManager = null;
 
-    /**
-     * @var \Magento\Sales\Model\QuoteFactory
-     */
-    protected $_quoteFactory;
-
-    /**
-     * @var \Magento\Sales\Model\Quote\AddressFactory
-     */
-    protected $_quoteAddressFactory;
-
-    /**
-     * @var \Magento\Sales\Model\Quote\PaymentFactory
-     */
-    protected $_quotePaymentFactory;
-
-    /**
-     * @var \Magento\Sales\Model\Quote\ItemFactory
-     */
-    protected $_quoteItemFactory;
-
     /**
      * @var \Magento\Sales\Model\Order\Invoice
      */
@@ -70,10 +53,6 @@ class Order extends \Magento\Framework\Object
 
     /**
      * @param \Magento\Framework\Event\ManagerInterface $eventManager
-     * @param \Magento\Sales\Model\QuoteFactory $quoteFactory
-     * @param \Magento\Sales\Model\Quote\AddressFactory $quoteAddressFactory
-     * @param \Magento\Sales\Model\Quote\PaymentFactory $quotePaymentFactory
-     * @param \Magento\Sales\Model\Quote\ItemFactory $quoteItemFactory
      * @param \Magento\Sales\Model\Order\InvoiceFactory $orderInvoiceFactory
      * @param \Magento\Sales\Model\Order\Invoice\ItemFactory $invoiceItemFactory
      * @param \Magento\Sales\Model\Order\ShipmentFactory $orderShipmentFactory
@@ -87,10 +66,6 @@ class Order extends \Magento\Framework\Object
      */
     public function __construct(
         \Magento\Framework\Event\ManagerInterface $eventManager,
-        \Magento\Sales\Model\QuoteFactory $quoteFactory,
-        \Magento\Sales\Model\Quote\AddressFactory $quoteAddressFactory,
-        \Magento\Sales\Model\Quote\PaymentFactory $quotePaymentFactory,
-        \Magento\Sales\Model\Quote\ItemFactory $quoteItemFactory,
         \Magento\Sales\Model\Order\InvoiceFactory $orderInvoiceFactory,
         \Magento\Sales\Model\Order\Invoice\ItemFactory $invoiceItemFactory,
         \Magento\Sales\Model\Order\ShipmentFactory $orderShipmentFactory,
@@ -101,10 +76,6 @@ class Order extends \Magento\Framework\Object
         array $data = []
     ) {
         $this->_eventManager = $eventManager;
-        $this->_quoteFactory = $quoteFactory;
-        $this->_quoteAddressFactory = $quoteAddressFactory;
-        $this->_quotePaymentFactory = $quotePaymentFactory;
-        $this->_quoteItemFactory = $quoteItemFactory;
         $this->_orderInvoiceFactory = $orderInvoiceFactory;
         $this->_invoiceItemFactory = $invoiceItemFactory;
         $this->_orderShipmentFactory = $orderShipmentFactory;
@@ -115,119 +86,6 @@ class Order extends \Magento\Framework\Object
         parent::__construct($data);
     }
 
-    /**
-     * Converting order object to quote object
-     *
-     * @param \Magento\Sales\Model\Order $order
-     * @param null|\Magento\Sales\Model\Quote $quote
-     * @return \Magento\Sales\Model\Quote
-     */
-    public function toQuote(\Magento\Sales\Model\Order $order, $quote = null)
-    {
-        if (!$quote instanceof \Magento\Sales\Model\Quote) {
-            $quote = $this->_quoteFactory->create();
-        }
-
-        $quote->setStoreId($order->getStoreId())->setOrderId($order->getId());
-
-        $this->_objectCopyService->copyFieldsetToTarget('sales_convert_order', 'to_quote', $order, $quote);
-
-        $this->_eventManager->dispatch('sales_convert_order_to_quote', ['order' => $order, 'quote' => $quote]);
-        return $quote;
-    }
-
-    /**
-     * Convert order to shipping address
-     *
-     * @param   \Magento\Sales\Model\Order $order
-     * @return  \Magento\Sales\Model\Quote\Address
-     */
-    public function toQuoteShippingAddress(\Magento\Sales\Model\Order $order)
-    {
-        $address = $this->addressToQuoteAddress($order->getShippingAddress());
-
-        $this->_objectCopyService->copyFieldsetToTarget('sales_convert_order', 'to_quote_address', $order, $address);
-        return $address;
-    }
-
-    /**
-     * Convert order address to quote address
-     *
-     * @param   \Magento\Sales\Model\Order\Address $address
-     * @return  \Magento\Sales\Model\Quote\Address
-     */
-    public function addressToQuoteAddress(\Magento\Sales\Model\Order\Address $address)
-    {
-        $quoteAddress = $this->_quoteAddressFactory->create()->setStoreId(
-            $address->getStoreId()
-        )->setAddressType(
-            $address->getAddressType()
-        )->setCustomerId(
-            $address->getCustomerId()
-        )->setCustomerAddressId(
-            $address->getCustomerAddressId()
-        );
-
-        $this->_objectCopyService->copyFieldsetToTarget(
-            'sales_convert_order_address',
-            'to_quote_address',
-            $address,
-            $quoteAddress
-        );
-        return $quoteAddress;
-    }
-
-    /**
-     * Convert order payment to quote payment
-     *
-     * @param \Magento\Sales\Model\Order\Payment $payment
-     * @param null|\Magento\Sales\Model\Quote\Payment $quotePayment
-     * @return \Magento\Sales\Model\Quote\Payment
-     */
-    public function paymentToQuotePayment(\Magento\Sales\Model\Order\Payment $payment, $quotePayment = null)
-    {
-        if (!$quotePayment instanceof \Magento\Sales\Model\Quote\Payment) {
-            $quotePayment = $this->_quotePaymentFactory->create();
-        }
-
-        $quotePayment->setStoreId($payment->getStoreId())->setCustomerPaymentId($payment->getCustomerPaymentId());
-
-        $this->_objectCopyService->copyFieldsetToTarget(
-            'sales_convert_order_payment',
-            'to_quote_payment',
-            $payment,
-            $quotePayment
-        );
-        return $quotePayment;
-    }
-
-    /**
-     * Retrieve
-     *
-     * @param \Magento\Sales\Model\Order\Item $item
-     * @return \Magento\Sales\Model\Quote\Item
-     */
-    public function itemToQuoteItem(\Magento\Sales\Model\Order\Item $item)
-    {
-        $quoteItem = $this->_quoteItemFactory->create()->setStoreId(
-            $item->getOrder()->getStoreId()
-        )->setQuoteItemId(
-            $item->getId()
-        )->setProductId(
-            $item->getProductId()
-        )->setParentProductId(
-            $item->getParentProductId()
-        );
-
-        $this->_objectCopyService->copyFieldsetToTarget(
-            'sales_convert_order_item',
-            'to_quote_item',
-            $item,
-            $quoteItem
-        );
-        return $quoteItem;
-    }
-
     /**
      * Convert order object to invoice
      *
diff --git a/app/code/Magento/Sales/Model/Convert/Quote.php b/app/code/Magento/Sales/Model/Convert/Quote.php
deleted file mode 100644
index 4ef354c2d56938cea940d29b57ce242b038dbfcd..0000000000000000000000000000000000000000
--- a/app/code/Magento/Sales/Model/Convert/Quote.php
+++ /dev/null
@@ -1,218 +0,0 @@
-<?php
-/**
- * Copyright © 2015 Magento. All rights reserved.
- * See COPYING.txt for license details.
- */
-
-namespace Magento\Sales\Model\Convert;
-
-/**
- * Quote data convert model
- */
-class Quote extends \Magento\Framework\Object
-{
-    /**
-     * Core event manager proxy
-     *
-     * @var \Magento\Framework\Event\ManagerInterface
-     */
-    protected $_eventManager;
-
-    /**
-     * @var \Magento\Sales\Model\OrderFactory
-     */
-    protected $_orderFactory;
-
-    /**
-     * @var \Magento\Sales\Model\Order\AddressFactory
-     */
-    protected $_orderAddressFactory;
-
-    /**
-     * @var \Magento\Sales\Model\Order\PaymentFactory
-     */
-    protected $_orderPaymentFactory;
-
-    /**
-     * @var \Magento\Sales\Model\Order\ItemFactory
-     */
-    protected $_orderItemFactory;
-
-    /**
-     * @var \Magento\Framework\Object\Copy
-     */
-    private $_objectCopyService;
-
-    /**
-     * @param \Magento\Framework\Event\ManagerInterface $eventManager
-     * @param \Magento\Sales\Model\OrderFactory $orderFactory
-     * @param \Magento\Sales\Model\Order\AddressFactory $orderAddressFactory
-     * @param \Magento\Sales\Model\Order\PaymentFactory $orderPaymentFactory
-     * @param \Magento\Sales\Model\Order\ItemFactory $orderItemFactory
-     * @param \Magento\Framework\Object\Copy $objectCopyService
-     * @param array $data
-     */
-    public function __construct(
-        \Magento\Framework\Event\ManagerInterface $eventManager,
-        \Magento\Sales\Model\OrderFactory $orderFactory,
-        \Magento\Sales\Model\Order\AddressFactory $orderAddressFactory,
-        \Magento\Sales\Model\Order\PaymentFactory $orderPaymentFactory,
-        \Magento\Sales\Model\Order\ItemFactory $orderItemFactory,
-        \Magento\Framework\Object\Copy $objectCopyService,
-        array $data = []
-    ) {
-        $this->_eventManager = $eventManager;
-        $this->_orderFactory = $orderFactory;
-        $this->_orderAddressFactory = $orderAddressFactory;
-        $this->_orderPaymentFactory = $orderPaymentFactory;
-        $this->_orderItemFactory = $orderItemFactory;
-        $this->_objectCopyService = $objectCopyService;
-        parent::__construct($data);
-    }
-
-    /**
-     * Convert quote model to order model
-     *
-     * @param \Magento\Sales\Model\Quote $quote
-     * @param null|\Magento\Sales\Model\Order $order
-     * @return \Magento\Sales\Model\Order
-     */
-    public function toOrder(\Magento\Sales\Model\Quote $quote, $order = null)
-    {
-        if (!$order instanceof \Magento\Sales\Model\Order) {
-            $order = $this->_orderFactory->create();
-        }
-        /* @var $order \Magento\Sales\Model\Order */
-        $order->setIncrementId($quote->getReservedOrderId())
-            ->setStoreId($quote->getStoreId())
-            ->setQuoteId($quote->getId())
-            ->setQuote($quote)
-            ->setCustomer($quote->getCustomer());
-
-        $this->_objectCopyService->copyFieldsetToTarget('sales_convert_quote', 'to_order', $quote, $order);
-        $this->_eventManager->dispatch('sales_convert_quote_to_order', ['order' => $order, 'quote' => $quote]);
-        return $order;
-    }
-
-    /**
-     * Convert quote address model to order
-     *
-     * @param \Magento\Sales\Model\Quote\Address $address
-     * @param null|\Magento\Sales\Model\Order $order
-     * @return  \Magento\Sales\Model\Order
-     */
-    public function addressToOrder(\Magento\Sales\Model\Quote\Address $address, $order = null)
-    {
-        if (!$order instanceof \Magento\Sales\Model\Order) {
-            $order = $this->toOrder($address->getQuote());
-        }
-
-        $this->_objectCopyService->copyFieldsetToTarget('sales_convert_quote_address', 'to_order', $address, $order);
-
-        $this->_eventManager->dispatch(
-            'sales_convert_quote_address_to_order',
-            ['address' => $address, 'order' => $order]
-        );
-        return $order;
-    }
-
-    /**
-     * Convert quote address to order address
-     *
-     * @param   \Magento\Sales\Model\Quote\Address $address
-     * @return  \Magento\Sales\Model\Order\Address
-     */
-    public function addressToOrderAddress(\Magento\Sales\Model\Quote\Address $address)
-    {
-        $orderAddress = $this->_orderAddressFactory->create()
-            ->setStoreId($address->getStoreId())
-            ->setAddressType($address->getAddressType())
-            ->setCustomerId($address->getCustomerId())
-            ->setCustomerAddressId($address->getCustomerAddressId());
-
-        $this->_objectCopyService->copyFieldsetToTarget(
-            'sales_convert_quote_address',
-            'to_order_address',
-            $address,
-            $orderAddress
-        );
-
-        $this->_eventManager->dispatch(
-            'sales_convert_quote_address_to_order_address',
-            ['address' => $address, 'order_address' => $orderAddress]
-        );
-
-        return $orderAddress;
-    }
-
-    /**
-     * Convert quote payment to order payment
-     *
-     * @param   \Magento\Sales\Model\Quote\Payment $payment
-     * @return  \Magento\Sales\Model\Quote\Payment
-     */
-    public function paymentToOrderPayment(\Magento\Sales\Model\Quote\Payment $payment)
-    {
-        /** @var \Magento\Sales\Model\Order\Payment $orderPayment */
-        $orderPayment = $this->_orderPaymentFactory->create()->setStoreId($payment->getStoreId());
-        $orderPayment->setCustomerPaymentId($payment->getCustomerPaymentId());
-
-        $this->_objectCopyService->copyFieldsetToTarget(
-            'sales_convert_quote_payment',
-            'to_order_payment',
-            $payment,
-            $orderPayment
-        );
-        $orderPayment->setAdditionalInformation(
-            \Magento\Payment\Model\Method\Substitution::INFO_KEY_TITLE,
-            $payment->getMethodInstance()->getTitle()
-        );
-
-        return $orderPayment;
-    }
-
-    /**
-     * Convert quote item to order item
-     *
-     * @param   \Magento\Sales\Model\Quote\Item\AbstractItem $item
-     * @return  \Magento\Sales\Model\Order\Item
-     */
-    public function itemToOrderItem(\Magento\Sales\Model\Quote\Item\AbstractItem $item)
-    {
-        $orderItem = $this->_orderItemFactory->create()
-            ->setStoreId($item->getStoreId())
-            ->setQuoteItemId($item->getId())
-            ->setQuoteParentItemId($item->getParentItemId())
-            ->setProductId($item->getProductId())
-            ->setProductType($item->getProductType())
-            ->setQtyBackordered($item->getBackorders())
-            ->setProduct($item->getProduct())
-            ->setBaseOriginalPrice($item->getBaseOriginalPrice());
-
-        $options = $item->getProductOrderOptions();
-        if (!$options) {
-            $options = $item->getProduct()->getTypeInstance()->getOrderOptions($item->getProduct());
-        }
-        $orderItem->setProductOptions($options);
-        $this->_objectCopyService->copyFieldsetToTarget(
-            'sales_convert_quote_item',
-            'to_order_item',
-            $item,
-            $orderItem
-        );
-
-        if ($item->getParentItem()) {
-            $orderItem->setQtyOrdered($orderItem->getQtyOrdered() * $item->getParentItem()->getQty());
-        }
-
-        if (!$item->getNoDiscount()) {
-            $this->_objectCopyService->copyFieldsetToTarget(
-                'sales_convert_quote_item',
-                'to_order_item_discount',
-                $item,
-                $orderItem
-            );
-        }
-        return $orderItem;
-    }
-}
diff --git a/app/code/Magento/Sales/Model/Observer/Backend/CatalogPriceRule.php b/app/code/Magento/Sales/Model/Observer/Backend/CatalogPriceRule.php
index 62dae5e9c58d59a15f7c48d985244382dfc5069e..8d8c041a0b7f524ad5f02792c69e6b931d62ac91 100644
--- a/app/code/Magento/Sales/Model/Observer/Backend/CatalogPriceRule.php
+++ b/app/code/Magento/Sales/Model/Observer/Backend/CatalogPriceRule.php
@@ -8,14 +8,14 @@ namespace Magento\Sales\Model\Observer\Backend;
 class CatalogPriceRule
 {
     /**
-     * @var \Magento\Sales\Model\Resource\Quote
+     * @var \Magento\Quote\Model\Resource\Quote
      */
     protected $_quote;
 
     /**
-     * @param \Magento\Sales\Model\Resource\Quote $quote
+     * @param \Magento\Quote\Model\Resource\Quote $quote
      */
-    public function __construct(\Magento\Sales\Model\Resource\Quote $quote)
+    public function __construct(\Magento\Quote\Model\Resource\Quote $quote)
     {
         $this->_quote = $quote;
     }
diff --git a/app/code/Magento/Sales/Model/Observer/Backend/CatalogProductQuote.php b/app/code/Magento/Sales/Model/Observer/Backend/CatalogProductQuote.php
index 313acde80e57658957d87fc08a16be0e8781a79b..b6e7642dbc47d8dc6815b1606d234cfd0d1fa4ae 100644
--- a/app/code/Magento/Sales/Model/Observer/Backend/CatalogProductQuote.php
+++ b/app/code/Magento/Sales/Model/Observer/Backend/CatalogProductQuote.php
@@ -8,14 +8,14 @@ namespace Magento\Sales\Model\Observer\Backend;
 class CatalogProductQuote
 {
     /**
-     * @var \Magento\Sales\Model\Resource\Quote
+     * @var \Magento\Quote\Model\Resource\Quote
      */
     protected $_quote;
 
     /**
-     * @param \Magento\Sales\Model\Resource\Quote $quote
+     * @param \Magento\Quote\Model\Resource\Quote $quote
      */
-    public function __construct(\Magento\Sales\Model\Resource\Quote $quote)
+    public function __construct(\Magento\Quote\Model\Resource\Quote $quote)
     {
         $this->_quote = $quote;
     }
diff --git a/app/code/Magento/Sales/Model/Observer/CleanExpiredQuotes.php b/app/code/Magento/Sales/Model/Observer/CleanExpiredQuotes.php
index 416a0c8cb9f660060bfea98015939237fdd93308..955b3cfe541301c4fd8913b6abd4865702d1cc31 100644
--- a/app/code/Magento/Sales/Model/Observer/CleanExpiredQuotes.php
+++ b/app/code/Magento/Sales/Model/Observer/CleanExpiredQuotes.php
@@ -20,7 +20,7 @@ class CleanExpiredQuotes
     protected $storesConfig;
 
     /**
-     * @var \Magento\Sales\Model\Resource\Quote\CollectionFactory
+     * @var \Magento\Quote\Model\Resource\Quote\CollectionFactory
      */
     protected $quoteCollectionFactory;
 
@@ -31,11 +31,11 @@ class CleanExpiredQuotes
 
     /**
      * @param StoresConfig $storesConfig
-     * @param \Magento\Sales\Model\Resource\Quote\CollectionFactory $collectionFactory
+     * @param \Magento\Quote\Model\Resource\Quote\CollectionFactory $collectionFactory
      */
     public function __construct(
         StoresConfig $storesConfig,
-        \Magento\Sales\Model\Resource\Quote\CollectionFactory $collectionFactory
+        \Magento\Quote\Model\Resource\Quote\CollectionFactory $collectionFactory
     ) {
         $this->storesConfig = $storesConfig;
         $this->quoteCollectionFactory = $collectionFactory;
@@ -52,7 +52,7 @@ class CleanExpiredQuotes
         foreach ($lifetimes as $storeId => $lifetime) {
             $lifetime *= self::LIFETIME;
 
-            /** @var $quotes \Magento\Sales\Model\Resource\Quote\Collection */
+            /** @var $quotes \Magento\Quote\Model\Resource\Quote\Collection */
             $quotes = $this->quoteCollectionFactory->create();
 
             $quotes->addFieldToFilter('store_id', $storeId);
diff --git a/app/code/Magento/Sales/Model/Order.php b/app/code/Magento/Sales/Model/Order.php
index 33085bcd1129698fb35fa71ffe8c1628e6b8e3c7..d2269ca8a1b7b6f3154f6b8bb5a10e67fe0c7b65 100644
--- a/app/code/Magento/Sales/Model/Order.php
+++ b/app/code/Magento/Sales/Model/Order.php
@@ -176,6 +176,10 @@ use Magento\Sales\Model\Resource\Order\Status\History\Collection as HistoryColle
  * @method bool hasForcedCanCreditmemo()
  * @method bool getIsInProcess()
  * @method \Magento\Customer\Model\Customer getCustomer()
+ * @SuppressWarnings(PHPMD.ExcessivePublicCount)
+ * @SuppressWarnings(PHPMD.TooManyFields)
+ * @SuppressWarnings(PHPMD.ExcessiveClassComplexity)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Order extends AbstractModel implements EntityInterface, ApiOrderInterface
 {
@@ -412,6 +416,7 @@ class Order extends AbstractModel implements EntityInterface, ApiOrderInterface
      * @param \Magento\Framework\Model\Resource\AbstractResource $resource
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
@@ -530,6 +535,7 @@ class Order extends AbstractModel implements EntityInterface, ApiOrderInterface
      * Return flag for order if it can sends new email to customer.
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getCanSendNewEmailFlag()
     {
@@ -590,6 +596,8 @@ class Order extends AbstractModel implements EntityInterface, ApiOrderInterface
      * Retrieve order cancel availability
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function canCancel()
     {
@@ -649,6 +657,7 @@ class Order extends AbstractModel implements EntityInterface, ApiOrderInterface
      * Retrieve order invoice availability
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function canInvoice()
     {
@@ -759,6 +768,7 @@ class Order extends AbstractModel implements EntityInterface, ApiOrderInterface
      * Retrieve order shipment availability
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function canShip()
     {
@@ -842,6 +852,7 @@ class Order extends AbstractModel implements EntityInterface, ApiOrderInterface
      *
      * @param bool $ignoreSalable
      * @return bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _canReorder($ignoreSalable = false)
     {
@@ -957,6 +968,7 @@ class Order extends AbstractModel implements EntityInterface, ApiOrderInterface
     {
         foreach ($this->getPayments() as $payment) {
             if (!$payment->isDeleted()) {
+                $payment->setOrder($this);
                 return $payment;
             }
         }
@@ -2001,6 +2013,7 @@ class Order extends AbstractModel implements EntityInterface, ApiOrderInterface
 
     /**
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsNotVirtual()
     {
diff --git a/app/code/Magento/Sales/Model/Order/Address.php b/app/code/Magento/Sales/Model/Order/Address.php
index 7d549e8c29c4e0e91b62206c40890cc2021fbe73..2cf363e7de2d8a38d33b8180f92b90a57abebeab 100644
--- a/app/code/Magento/Sales/Model/Order/Address.php
+++ b/app/code/Magento/Sales/Model/Order/Address.php
@@ -38,6 +38,7 @@ use Magento\Sales\Api\Data\OrderAddressInterface;
  * @method Address setMiddlename(string $value)
  * @method Address setSuffix(string $value)
  * @method Address setCompany(string $value)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Address extends AbstractAddress implements OrderAddressInterface
 {
@@ -78,6 +79,7 @@ class Address extends AbstractAddress implements OrderAddressInterface
      * @param \Magento\Framework\Model\Resource\AbstractResource $resource
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
diff --git a/app/code/Magento/Sales/Model/Order/Builder.php b/app/code/Magento/Sales/Model/Order/Builder.php
index 2dd79cd89ba61e913682b3956731bae9b149398d..f0c2e25e4cdb4ce0affca3865030285f7fb16b9b 100644
--- a/app/code/Magento/Sales/Model/Order/Builder.php
+++ b/app/code/Magento/Sales/Model/Order/Builder.php
@@ -8,6 +8,9 @@ namespace Magento\Sales\Model\Order;
 
 use Magento\Sales\Model\OrderFactory;
 
+/**
+ * @SuppressWarnings(PHPMD.TooManyFields)
+ */
 class Builder
 {
     /**
diff --git a/app/code/Magento/Sales/Model/Order/Creditmemo.php b/app/code/Magento/Sales/Model/Order/Creditmemo.php
index 1ccb71d61d0e48e1e4f5c8fbff012d431d669388..b9a2aea4780d63fe940f6087ff4120ca8f2a20d0 100644
--- a/app/code/Magento/Sales/Model/Order/Creditmemo.php
+++ b/app/code/Magento/Sales/Model/Order/Creditmemo.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Sales\Model\Order;
 
 use Magento\Framework\Api\AttributeDataBuilder;
@@ -60,6 +63,9 @@ use Magento\Sales\Model\EntityInterface;
  * @method \Magento\Sales\Model\Order\Creditmemo setBaseShippingHiddenTaxAmnt(float $value)
  * @method \Magento\Sales\Model\Order\Creditmemo setShippingInclTax(float $value)
  * @method \Magento\Sales\Model\Order\Creditmemo setBaseShippingInclTax(float $value)
+ * @SuppressWarnings(PHPMD.ExcessivePublicCount)
+ * @SuppressWarnings(PHPMD.ExcessiveClassComplexity)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Creditmemo extends AbstractModel implements EntityInterface, CreditmemoInterface
 {
@@ -165,6 +171,7 @@ class Creditmemo extends AbstractModel implements EntityInterface, CreditmemoInt
      * @param \Magento\Framework\Model\Resource\AbstractResource $resource
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
@@ -754,6 +761,7 @@ class Creditmemo extends AbstractModel implements EntityInterface, CreditmemoInt
     /**
      * @param bool $reload
      * @return \Magento\Sales\Model\Resource\Order\Creditmemo\Comment\Collection
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function getCommentsCollection($reload = false)
     {
diff --git a/app/code/Magento/Sales/Model/Order/Creditmemo/Comment.php b/app/code/Magento/Sales/Model/Order/Creditmemo/Comment.php
index 27312a4aa22b9c6bdbde9053adcffd1edbb7d681..e3b00c1136294977299d37cfa4e0d809fd4dc45e 100644
--- a/app/code/Magento/Sales/Model/Order/Creditmemo/Comment.php
+++ b/app/code/Magento/Sales/Model/Order/Creditmemo/Comment.php
@@ -43,6 +43,7 @@ class Comment extends AbstractModel implements CreditmemoCommentInterface
      * @param \Magento\Framework\Model\Resource\AbstractResource $resource
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
diff --git a/app/code/Magento/Sales/Model/Order/Creditmemo/Total/AbstractTotal.php b/app/code/Magento/Sales/Model/Order/Creditmemo/Total/AbstractTotal.php
index b6cfb7a2d74f46f4a94085bc190ae67a4713900b..0b3af734428d8d2e49521dbc762e4af4f2abb1c8 100644
--- a/app/code/Magento/Sales/Model/Order/Creditmemo/Total/AbstractTotal.php
+++ b/app/code/Magento/Sales/Model/Order/Creditmemo/Total/AbstractTotal.php
@@ -17,6 +17,7 @@ abstract class AbstractTotal extends \Magento\Sales\Model\Order\Total\AbstractTo
      *
      * @param \Magento\Sales\Model\Order\Creditmemo $creditmemo
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function collect(\Magento\Sales\Model\Order\Creditmemo $creditmemo)
     {
diff --git a/app/code/Magento/Sales/Model/Order/Customer.php b/app/code/Magento/Sales/Model/Order/Customer.php
index 22edcac7c43186e12bb26de16d432858943d445c..87fb453e710f72085f367abc41c878d0cb9cbd5f 100644
--- a/app/code/Magento/Sales/Model/Order/Customer.php
+++ b/app/code/Magento/Sales/Model/Order/Customer.php
@@ -93,6 +93,7 @@ class Customer
      * @param string $customerPrefix
      * @param string $customerSuffix
      * @param string $customerTaxvat
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         $customerDob,
diff --git a/app/code/Magento/Sales/Model/Order/Email/NotifySender.php b/app/code/Magento/Sales/Model/Order/Email/NotifySender.php
index 2c027d604582b83bd4134e41177395ad3e224bc0..9244852e77523d8ac1d6db2d29b5a93bc5da013e 100644
--- a/app/code/Magento/Sales/Model/Order/Email/NotifySender.php
+++ b/app/code/Magento/Sales/Model/Order/Email/NotifySender.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Sales\Model\Order\Email;
 
 use Magento\Sales\Model\Order;
diff --git a/app/code/Magento/Sales/Model/Order/Invoice.php b/app/code/Magento/Sales/Model/Order/Invoice.php
index 93854c2be239442c8467e46aafbffd648c4fd469..b494782a7dfab66c2d4c8879cc5613854f58fc19 100644
--- a/app/code/Magento/Sales/Model/Order/Invoice.php
+++ b/app/code/Magento/Sales/Model/Order/Invoice.php
@@ -52,6 +52,9 @@ use Magento\Sales\Model\EntityInterface;
  * @method \Magento\Sales\Model\Order\Invoice setBaseShippingHiddenTaxAmnt(float $value)
  * @method \Magento\Sales\Model\Order\Invoice setShippingInclTax(float $value)
  * @method \Magento\Sales\Model\Order\Invoice setBaseShippingInclTax(float $value)
+ * @SuppressWarnings(PHPMD.ExcessivePublicCount)
+ * @SuppressWarnings(PHPMD.ExcessiveClassComplexity)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Invoice extends AbstractModel implements EntityInterface, InvoiceInterface
 {
@@ -166,6 +169,7 @@ class Invoice extends AbstractModel implements EntityInterface, InvoiceInterface
      * @param \Magento\Framework\Model\Resource\AbstractResource $resource
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
@@ -617,6 +621,7 @@ class Invoice extends AbstractModel implements EntityInterface, InvoiceInterface
      *
      * @return $this
      * @throws \Magento\Framework\Model\Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function register()
     {
diff --git a/app/code/Magento/Sales/Model/Order/Invoice/Comment.php b/app/code/Magento/Sales/Model/Order/Invoice/Comment.php
index 7743e0c21fa00aef3b5bffaa04d75fc4da5678a7..3b4f4787f70c891850220d042b1aff4d7c245743 100644
--- a/app/code/Magento/Sales/Model/Order/Invoice/Comment.php
+++ b/app/code/Magento/Sales/Model/Order/Invoice/Comment.php
@@ -43,6 +43,7 @@ class Comment extends AbstractModel implements InvoiceCommentInterface
      * @param \Magento\Framework\Model\Resource\AbstractResource $resource
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
diff --git a/app/code/Magento/Sales/Model/Order/Invoice/Total/AbstractTotal.php b/app/code/Magento/Sales/Model/Order/Invoice/Total/AbstractTotal.php
index a9bff16a96859750b26073160b3cee1e5fa5d4d5..ae4e6111cada93fda613c355fe937afc0de2441a 100644
--- a/app/code/Magento/Sales/Model/Order/Invoice/Total/AbstractTotal.php
+++ b/app/code/Magento/Sales/Model/Order/Invoice/Total/AbstractTotal.php
@@ -17,6 +17,7 @@ abstract class AbstractTotal extends \Magento\Sales\Model\Order\Total\AbstractTo
      *
      * @param \Magento\Sales\Model\Order\Invoice $invoice
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function collect(\Magento\Sales\Model\Order\Invoice $invoice)
     {
diff --git a/app/code/Magento/Sales/Model/Order/Invoice/Total/Subtotal.php b/app/code/Magento/Sales/Model/Order/Invoice/Total/Subtotal.php
index b36e7cfabfefa62251a43c301d2cdce0ffeb87b5..1b10667eaaddd1c8abcde92cd9b08e5f8d46a2b3 100644
--- a/app/code/Magento/Sales/Model/Order/Invoice/Total/Subtotal.php
+++ b/app/code/Magento/Sales/Model/Order/Invoice/Total/Subtotal.php
@@ -37,46 +37,15 @@ class Subtotal extends AbstractTotal
 
         $allowedSubtotal = $order->getSubtotal() - $order->getSubtotalInvoiced();
         $baseAllowedSubtotal = $order->getBaseSubtotal() - $order->getBaseSubtotalInvoiced();
-        $allowedSubtotalInclTax = $allowedSubtotal +
-            $order->getHiddenTaxAmount() +
-            $order->getTaxAmount() -
-            $order->getTaxInvoiced() -
-            $order->getHiddenTaxInvoiced();
-        $baseAllowedSubtotalInclTax = $baseAllowedSubtotal +
-            $order->getBaseHiddenTaxAmount() +
-            $order->getBaseTaxAmount() -
-            $order->getBaseTaxInvoiced() -
-            $order->getBaseHiddenTaxInvoiced();
-
-        /**
-         * Check if shipping tax calculation is included to current invoice.
-         */
-        $includeShippingTax = true;
-        foreach ($invoice->getOrder()->getInvoiceCollection() as $previousInvoice) {
-            if ($previousInvoice->getShippingAmount() && !$previousInvoice->isCanceled()) {
-                $includeShippingTax = false;
-                break;
-            }
-        }
-
-        if ($includeShippingTax) {
-            $allowedSubtotalInclTax -= $order->getShippingTaxAmount();
-            $baseAllowedSubtotalInclTax -= $order->getBaseShippingTaxAmount();
-        } else {
-            $allowedSubtotalInclTax += $order->getShippingHiddenTaxAmount();
-            $baseAllowedSubtotalInclTax += $order->getBaseShippingHiddenTaxAmount();
-        }
+        //Note: The $subtotalInclTax and $baseSubtotalInclTax are not adjusted from those provide by the line items
+        //because the "InclTax" is displayed before any tax adjustments based on discounts, shipping, etc.
 
         if ($invoice->isLast()) {
             $subtotal = $allowedSubtotal;
             $baseSubtotal = $baseAllowedSubtotal;
-            $subtotalInclTax = $allowedSubtotalInclTax;
-            $baseSubtotalInclTax = $baseAllowedSubtotalInclTax;
         } else {
             $subtotal = min($allowedSubtotal, $subtotal);
             $baseSubtotal = min($baseAllowedSubtotal, $baseSubtotal);
-            $subtotalInclTax = min($allowedSubtotalInclTax, $subtotalInclTax);
-            $baseSubtotalInclTax = min($baseAllowedSubtotalInclTax, $baseSubtotalInclTax);
         }
 
         $invoice->setSubtotal($subtotal);
diff --git a/app/code/Magento/Sales/Model/Order/Invoice/Total/Tax.php b/app/code/Magento/Sales/Model/Order/Invoice/Total/Tax.php
index f6314349b17a9aef7705f2842520acad1fa1d9fe..d1d2cee1f3ec2ac6ee6ad92a7c84b6ee57ac7bec 100644
--- a/app/code/Magento/Sales/Model/Order/Invoice/Total/Tax.php
+++ b/app/code/Magento/Sales/Model/Order/Invoice/Total/Tax.php
@@ -12,6 +12,7 @@ class Tax extends AbstractTotal
      *
      * @param \Magento\Sales\Model\Order\Invoice $invoice
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function collect(\Magento\Sales\Model\Order\Invoice $invoice)
     {
diff --git a/app/code/Magento/Sales/Model/Order/Item.php b/app/code/Magento/Sales/Model/Order/Item.php
index d0ad825fea617e7124561ec2e2d7ed980e441d04..fcc9aa7959fb31e2287962ec790271ced56b3534 100644
--- a/app/code/Magento/Sales/Model/Order/Item.php
+++ b/app/code/Magento/Sales/Model/Order/Item.php
@@ -94,6 +94,9 @@ use Magento\Sales\Api\Data\OrderItemInterface;
  * @method \Magento\Sales\Model\Order\Item setBaseTaxRefunded(float $value)
  * @method \Magento\Sales\Model\Order\Item setDiscountRefunded(float $value)
  * @method \Magento\Sales\Model\Order\Item setBaseDiscountRefunded(float $value)
+ * @SuppressWarnings(PHPMD.ExcessivePublicCount)
+ * @SuppressWarnings(PHPMD.ExcessiveClassComplexity)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Item extends AbstractExtensibleModel implements OrderItemInterface
 {
@@ -148,11 +151,6 @@ class Item extends AbstractExtensibleModel implements OrderItemInterface
      */
     protected $_order = null;
 
-    /**
-     * @var \Magento\Sales\Model\Order\Item|null
-     */
-    protected $_parentItem = null;
-
     /**
      * @var array
      */
@@ -186,6 +184,7 @@ class Item extends AbstractExtensibleModel implements OrderItemInterface
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param \Magento\Store\Model\StoreManagerInterface $storeManager
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
@@ -232,7 +231,7 @@ class Item extends AbstractExtensibleModel implements OrderItemInterface
     public function setParentItem($item)
     {
         if ($item) {
-            $this->_parentItem = $item;
+            $this->setData(OrderItemInterface::PARENT_ITEM, $item);
             $item->setHasChildren(true);
             $item->addChildItem($this);
         }
@@ -246,7 +245,7 @@ class Item extends AbstractExtensibleModel implements OrderItemInterface
      */
     public function getParentItem()
     {
-        return $this->_parentItem;
+        return $this->getData(OrderItemInterface::PARENT_ITEM);
     }
 
     /**
@@ -376,6 +375,8 @@ class Item extends AbstractExtensibleModel implements OrderItemInterface
      * Retrieve item status identifier
      *
      * @return int
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function getStatusId()
     {
@@ -630,6 +631,7 @@ class Item extends AbstractExtensibleModel implements OrderItemInterface
      * Check if discount has to be applied to parent item
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getForceApplyDiscountToParentItem()
     {
@@ -673,6 +675,7 @@ class Item extends AbstractExtensibleModel implements OrderItemInterface
      *
      * @param bool $shipment
      * @return bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function isDummy($shipment = false)
     {
diff --git a/app/code/Magento/Sales/Model/Order/Payment.php b/app/code/Magento/Sales/Model/Order/Payment.php
index c1c956a50b92e29e470c3fa4251687daf18a1455..0ada9c295824bd8e2f916a262383ec1564be87ce 100644
--- a/app/code/Magento/Sales/Model/Order/Payment.php
+++ b/app/code/Magento/Sales/Model/Order/Payment.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Sales\Model\Order;
 
 use Magento\Framework\Api\AttributeDataBuilder;
@@ -67,6 +70,9 @@ use Magento\Sales\Api\Data\OrderPaymentInterface;
  * @method \Magento\Sales\Model\Order\Payment setCcNumberEnc(string $value)
  * @method \Magento\Sales\Model\Order\Payment setCcTransId(string $value)
  * @method \Magento\Sales\Model\Order\Payment setAddressStatus(string $value)
+ * @SuppressWarnings(PHPMD.ExcessivePublicCount)
+ * @SuppressWarnings(PHPMD.ExcessiveClassComplexity)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Payment extends Info implements OrderPaymentInterface
 {
@@ -159,6 +165,7 @@ class Payment extends Info implements OrderPaymentInterface
      * @param \Magento\Framework\Model\Resource\AbstractResource $resource
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
@@ -279,6 +286,7 @@ class Payment extends Info implements OrderPaymentInterface
      * This method is supposed to be called only when order is placed
      *
      * @return $this
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function place()
     {
@@ -693,6 +701,8 @@ class Payment extends Info implements OrderPaymentInterface
      * @return $this
      * @throws \Exception
      * @throws \Magento\Framework\Model\Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function refund($creditmemo)
     {
@@ -788,6 +798,7 @@ class Payment extends Info implements OrderPaymentInterface
      *
      * @param float $amount
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function registerRefundNotification($amount)
     {
@@ -976,6 +987,8 @@ class Payment extends Info implements OrderPaymentInterface
      * @param bool $isOnline
      * @return $this
      * @throws \Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function registerPaymentReviewAction($action, $isOnline)
     {
@@ -1193,6 +1206,8 @@ class Payment extends Info implements OrderPaymentInterface
      * @param float $amount
      * @param string $gatewayCallback
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _void($isOnline, $amount = null, $gatewayCallback = 'void')
     {
@@ -1267,6 +1282,8 @@ class Payment extends Info implements OrderPaymentInterface
      * @param \Magento\Sales\Model\AbstractModel $salesDocument
      * @param bool $failsafe
      * @return null|\Magento\Sales\Model\Order\Payment\Transaction
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _addTransaction($type, $salesDocument = null, $failsafe = false)
     {
diff --git a/app/code/Magento/Sales/Model/Order/Payment/Transaction.php b/app/code/Magento/Sales/Model/Order/Payment/Transaction.php
index 82c5dc8495d2ee7bb31b1c531604f6e0dde0485e..1d87d92ad1751983e08f68a1fb5b106063a23c9c 100644
--- a/app/code/Magento/Sales/Model/Order/Payment/Transaction.php
+++ b/app/code/Magento/Sales/Model/Order/Payment/Transaction.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Sales\Model\Order\Payment;
 
 use Magento\Framework\Api\AttributeDataBuilder;
@@ -23,6 +26,8 @@ use Magento\Sales\Api\Data\TransactionInterface;
  * @method \Magento\Sales\Model\Order\Payment\Transaction setCreatedAt(string $value)
  *
  * @author      Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.ExcessiveClassComplexity)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Transaction extends AbstractExtensibleModel implements TransactionInterface
 {
@@ -161,6 +166,7 @@ class Transaction extends AbstractExtensibleModel implements TransactionInterfac
      * @param \Magento\Framework\Model\Resource\AbstractResource $resource
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
@@ -300,6 +306,9 @@ class Transaction extends AbstractExtensibleModel implements TransactionInterfac
      * @param string $txnId
      * @param bool $recursive
      * @return Transaction[]
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function getChildTransactions($types = null, $txnId = null, $recursive = false)
     {
@@ -568,6 +577,7 @@ class Transaction extends AbstractExtensibleModel implements TransactionInterfac
      * @return $this
      * @throws \Magento\Framework\Model\Exception
      * @throws \Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function close($shouldSave = true)
     {
@@ -727,6 +737,8 @@ class Transaction extends AbstractExtensibleModel implements TransactionInterfac
      *
      * @return void
      * @throws \Magento\Framework\Model\Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _loadChildren()
     {
diff --git a/app/code/Magento/Sales/Model/Order/Pdf/AbstractPdf.php b/app/code/Magento/Sales/Model/Order/Pdf/AbstractPdf.php
index 0e1157c30245d0dff406441d7dad381be6e338a4..a2c0b3de2f296987d0b30c15b6e07744b246d2c6 100644
--- a/app/code/Magento/Sales/Model/Order/Pdf/AbstractPdf.php
+++ b/app/code/Magento/Sales/Model/Order/Pdf/AbstractPdf.php
@@ -3,12 +3,17 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Sales\Model\Order\Pdf;
 
 use Magento\Framework\App\Filesystem\DirectoryList;
 
 /**
  * Sales Order PDF abstract model
+ * @SuppressWarnings(PHPMD.ExcessiveClassComplexity)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 abstract class AbstractPdf extends \Magento\Framework\Object
 {
@@ -219,6 +224,7 @@ abstract class AbstractPdf extends \Magento\Framework\Object
      * @param \Zend_Pdf_Page &$page
      * @param null $store
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function insertLogo(&$page, $store = null)
     {
@@ -330,6 +336,7 @@ abstract class AbstractPdf extends \Magento\Framework\Object
      *
      * @param  array $address
      * @return int Height
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     protected function _calcAddressHeight($address)
     {
@@ -355,6 +362,9 @@ abstract class AbstractPdf extends \Magento\Framework\Object
      * @param \Magento\Sales\Model\Order $obj
      * @param bool $putOrderId
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function insertOrder(&$page, $obj, $putOrderId = true)
     {
@@ -930,6 +940,9 @@ abstract class AbstractPdf extends \Magento\Framework\Object
      * @param  array $pageSettings
      * @throws \Magento\Framework\Model\Exception
      * @return \Zend_Pdf_Page
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public function drawLineBlocks(\Zend_Pdf_Page $page, array $draw, array $pageSettings = [])
     {
diff --git a/app/code/Magento/Sales/Model/Order/Pdf/Creditmemo.php b/app/code/Magento/Sales/Model/Order/Pdf/Creditmemo.php
index 03b9131ec0b414208767bc84c3cddb208577ef35..acd8d3f9b6d78474726192cf53fa521f997b935c 100644
--- a/app/code/Magento/Sales/Model/Order/Pdf/Creditmemo.php
+++ b/app/code/Magento/Sales/Model/Order/Pdf/Creditmemo.php
@@ -7,6 +7,7 @@ namespace Magento\Sales\Model\Order\Pdf;
 
 /**
  * Sales Order Creditmemo PDF model
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Creditmemo extends AbstractPdf
 {
diff --git a/app/code/Magento/Sales/Model/Order/Pdf/Invoice.php b/app/code/Magento/Sales/Model/Order/Pdf/Invoice.php
index 1e3c554387dc7b3c417be82e3c90fd0d87d98bff..79b3130b684496b306b556ac7a089651960137f5 100644
--- a/app/code/Magento/Sales/Model/Order/Pdf/Invoice.php
+++ b/app/code/Magento/Sales/Model/Order/Pdf/Invoice.php
@@ -7,6 +7,7 @@ namespace Magento\Sales\Model\Order\Pdf;
 
 /**
  * Sales Order Invoice PDF model
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Invoice extends AbstractPdf
 {
diff --git a/app/code/Magento/Sales/Model/Order/Pdf/Items/AbstractItems.php b/app/code/Magento/Sales/Model/Order/Pdf/Items/AbstractItems.php
index ea036a57e78be13303900f8727e1b088501b0e76..a6c248caedf751d6250b892afa0107b41372268e 100644
--- a/app/code/Magento/Sales/Model/Order/Pdf/Items/AbstractItems.php
+++ b/app/code/Magento/Sales/Model/Order/Pdf/Items/AbstractItems.php
@@ -9,6 +9,7 @@ use Magento\Framework\App\Filesystem\DirectoryList;
 
 /**
  * Sales Order Pdf Items renderer Abstract
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 abstract class AbstractItems extends \Magento\Framework\Model\AbstractModel
 {
diff --git a/app/code/Magento/Sales/Model/Order/Pdf/Shipment.php b/app/code/Magento/Sales/Model/Order/Pdf/Shipment.php
index b38f5334997e2a805bb4a7f9f68ff63df1a9e52b..46594554ba69d203c2f2215dd2cdbac639d0c53b 100644
--- a/app/code/Magento/Sales/Model/Order/Pdf/Shipment.php
+++ b/app/code/Magento/Sales/Model/Order/Pdf/Shipment.php
@@ -7,6 +7,7 @@ namespace Magento\Sales\Model\Order\Pdf;
 
 /**
  * Sales Order Shipment PDF model
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Shipment extends AbstractPdf
 {
diff --git a/app/code/Magento/Sales/Model/Order/Pdf/Total/DefaultTotal.php b/app/code/Magento/Sales/Model/Order/Pdf/Total/DefaultTotal.php
index c5b7e801a368bbd2365dc10908ffbf63472985aa..aef42991031bf93a575ad64431320130a8f807d6 100644
--- a/app/code/Magento/Sales/Model/Order/Pdf/Total/DefaultTotal.php
+++ b/app/code/Magento/Sales/Model/Order/Pdf/Total/DefaultTotal.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Sales\Model\Order\Pdf\Total;
 
 /**
@@ -89,6 +92,7 @@ class DefaultTotal extends \Magento\Framework\Object
      * )
      *
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function getFullTaxInfo()
     {
diff --git a/app/code/Magento/Sales/Model/Order/Shipment.php b/app/code/Magento/Sales/Model/Order/Shipment.php
index eb6ecf045f6fd8123ae7d6acf9cfac04e9d3af3b..7941d2e5706018ca71ef4186d0b1d07136d9b518 100644
--- a/app/code/Magento/Sales/Model/Order/Shipment.php
+++ b/app/code/Magento/Sales/Model/Order/Shipment.php
@@ -27,6 +27,7 @@ use Magento\Sales\Model\EntityInterface;
  * @method \Magento\Sales\Model\Order\Shipment setIncrementId(string $value)
  * @method \Magento\Sales\Model\Order\Shipment setCreatedAt(string $value)
  * @method \Magento\Sales\Model\Order\Shipment setUpdatedAt(string $value)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Shipment extends AbstractModel implements EntityInterface, ShipmentInterface
 {
@@ -113,6 +114,7 @@ class Shipment extends AbstractModel implements EntityInterface, ShipmentInterfa
      * @param \Magento\Framework\Model\Resource\AbstractResource $resource
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
diff --git a/app/code/Magento/Sales/Model/Order/Shipment/Comment.php b/app/code/Magento/Sales/Model/Order/Shipment/Comment.php
index a4c1ed52c006f3126426e2f8e048343d6897bc15..bec79910266e960b1260e34c4c4102da06f267b1 100644
--- a/app/code/Magento/Sales/Model/Order/Shipment/Comment.php
+++ b/app/code/Magento/Sales/Model/Order/Shipment/Comment.php
@@ -43,6 +43,7 @@ class Comment extends AbstractModel implements ShipmentCommentInterface
      * @param \Magento\Framework\Model\Resource\AbstractResource $resource
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
diff --git a/app/code/Magento/Sales/Model/Order/Shipment/Item.php b/app/code/Magento/Sales/Model/Order/Shipment/Item.php
index 9f78dad996e7377079881a3a66594fe2a0269dd8..0980fc98559069616451237b3ee6be0efcf5e45e 100644
--- a/app/code/Magento/Sales/Model/Order/Shipment/Item.php
+++ b/app/code/Magento/Sales/Model/Order/Shipment/Item.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Sales\Model\Order\Shipment;
 
 use Magento\Framework\Api\AttributeDataBuilder;
diff --git a/app/code/Magento/Sales/Model/Order/Shipment/Track.php b/app/code/Magento/Sales/Model/Order/Shipment/Track.php
index 6d7d8b5e9eccaf75e70616cde05d66a2598bdc75..41c4c2521d9639cd5bf3f25f1a53084954983b2e 100644
--- a/app/code/Magento/Sales/Model/Order/Shipment/Track.php
+++ b/app/code/Magento/Sales/Model/Order/Shipment/Track.php
@@ -23,6 +23,7 @@ use Magento\Sales\Model\AbstractModel;
  * @method \Magento\Sales\Model\Order\Shipment\Track setUpdatedAt(string $value)
  *
  * @author      Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Track extends AbstractModel implements ShipmentTrackInterface
 {
@@ -68,6 +69,7 @@ class Track extends AbstractModel implements ShipmentTrackInterface
      * @param \Magento\Framework\Model\Resource\AbstractResource $resource
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
diff --git a/app/code/Magento/Sales/Model/Order/Status/History.php b/app/code/Magento/Sales/Model/Order/Status/History.php
index c5ca7be39735f319bad9416e0af407d616febd9a..306ba2715f4cd703bba8ef5e15d0b9ccdaf611e7 100644
--- a/app/code/Magento/Sales/Model/Order/Status/History.php
+++ b/app/code/Magento/Sales/Model/Order/Status/History.php
@@ -57,6 +57,7 @@ class History extends AbstractModel implements OrderStatusHistoryInterface
      * @param \Magento\Framework\Model\Resource\AbstractResource $resource
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
diff --git a/app/code/Magento/Sales/Model/Resource/Collection/AbstractCollection.php b/app/code/Magento/Sales/Model/Resource/Collection/AbstractCollection.php
index 46a8e399166a5968a9a9307a19370ed603072487..6edcac391a19be29f25fdc1f585116c159fc7684 100644
--- a/app/code/Magento/Sales/Model/Resource/Collection/AbstractCollection.php
+++ b/app/code/Magento/Sales/Model/Resource/Collection/AbstractCollection.php
@@ -163,6 +163,7 @@ abstract class AbstractCollection extends \Magento\Framework\Model\Resource\Db\C
      * @return $this
      *
      * @todo implement join functionality if necessary
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function joinAttribute($alias, $attribute, $bind, $filter = null, $joinType = 'inner', $storeId = null)
     {
diff --git a/app/code/Magento/Sales/Model/Resource/Entity.php b/app/code/Magento/Sales/Model/Resource/Entity.php
index f948734924783eada454776cfa9031e99787fa3a..2cc6faf6f126694130ff20a91c69eb05e5978a01 100644
--- a/app/code/Magento/Sales/Model/Resource/Entity.php
+++ b/app/code/Magento/Sales/Model/Resource/Entity.php
@@ -10,6 +10,7 @@ use Magento\Sales\Model\EntityInterface;
 
 /**
  * Flat sales resource abstract
+ * @SuppressWarnings(PHPMD.NumberOfChildren)
  */
 abstract class Entity extends AbstractDb
 {
diff --git a/app/code/Magento/Sales/Model/Resource/Order.php b/app/code/Magento/Sales/Model/Resource/Order.php
index df3a1eb09a98350d6533b093dffd6cd3aea10098..cb8a0ffa100bac8d32f78c1b5bb8eac5d8aff47e 100644
--- a/app/code/Magento/Sales/Model/Resource/Order.php
+++ b/app/code/Magento/Sales/Model/Resource/Order.php
@@ -181,17 +181,21 @@ class Order extends SalesResource implements OrderResourceInterface
             /** @var \Magento\Sales\Model\Order\Payment $payment */
             foreach ($object->getPayments() as $payment) {
                 $payment->setParentId($object->getId());
+                $payment->setOrder($object);
                 $payment->save();
             }
         }
         if (null !== $object->getStatusHistories()) {
             /** @var \Magento\Sales\Model\Order\Status\History $statusHistory */
             foreach ($object->getStatusHistories() as $statusHistory) {
+                $statusHistory->setParentId($object->getId());
                 $statusHistory->save();
+                $statusHistory->setOrder($object);
             }
         }
         foreach ($object->getRelatedObjects() as $relatedObject) {
             $relatedObject->save();
+            $relatedObject->setOrder($object);
         }
         return parent::_afterSave($object);
     }
diff --git a/app/code/Magento/Sales/Model/Resource/Order/Grid/Collection.php b/app/code/Magento/Sales/Model/Resource/Order/Grid/Collection.php
index 43c78c11bf5b82cc61d02ca4aef3ce12647ccade..5b673d4a23dc5bad3e9dfa631ca32fdb8ba451a4 100644
--- a/app/code/Magento/Sales/Model/Resource/Order/Grid/Collection.php
+++ b/app/code/Magento/Sales/Model/Resource/Order/Grid/Collection.php
@@ -86,6 +86,7 @@ class Collection extends \Magento\Sales\Model\Resource\Order\Collection
      * Get customer mode flag value
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsCustomerMode()
     {
diff --git a/app/code/Magento/Sales/Model/Resource/Order/Handler/Address.php b/app/code/Magento/Sales/Model/Resource/Order/Handler/Address.php
index 3829549c0ca3efc0579091d6bcd27119b5333c7e..eb0b517ee3f696c7e23f8512672eda825cf6e513 100644
--- a/app/code/Magento/Sales/Model/Resource/Order/Handler/Address.php
+++ b/app/code/Magento/Sales/Model/Resource/Order/Handler/Address.php
@@ -56,7 +56,10 @@ class Address
     public function process(Order $order)
     {
         if (null !== $order->getAddresses()) {
+            /** @var \Magento\Sales\Model\Order\Address $address */
             foreach ($order->getAddresses() as $address) {
+                $address->setParentId($order->getId());
+                $address->setOrder($order);
                 $address->save();
             }
             $billingAddress = $order->getBillingAddress();
diff --git a/app/code/Magento/Sales/Model/Resource/Order/Handler/State.php b/app/code/Magento/Sales/Model/Resource/Order/Handler/State.php
index 39d46be2bd97b4fcf61f6cd3eeddd9d3a8cd1a5f..a0530530e0b14a6f854f7c62e705428fb2ca4382 100644
--- a/app/code/Magento/Sales/Model/Resource/Order/Handler/State.php
+++ b/app/code/Magento/Sales/Model/Resource/Order/Handler/State.php
@@ -18,6 +18,8 @@ class State
      *
      * @param Order $order
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function check(Order $order)
     {
diff --git a/app/code/Magento/Sales/Model/Resource/Order/Plugin/Authorization.php b/app/code/Magento/Sales/Model/Resource/Order/Plugin/Authorization.php
index 33d6e9ab88f20e181f3fc7b911f8ac26b2c039dd..4fc8acc8046c127a33caa8c4ce0046475926fe07 100644
--- a/app/code/Magento/Sales/Model/Resource/Order/Plugin/Authorization.php
+++ b/app/code/Magento/Sales/Model/Resource/Order/Plugin/Authorization.php
@@ -35,6 +35,7 @@ class Authorization
      * @param null|string $field
      * @return \Magento\Sales\Model\Order
      * @throws NoSuchEntityException
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function aroundLoad(
         \Magento\Sales\Model\Resource\Order $subject,
diff --git a/app/code/Magento/Sales/Model/Resource/Order/Status.php b/app/code/Magento/Sales/Model/Resource/Order/Status.php
index e013a4a85c101a5280befcf662e02f83165c58e5..fb47d4cb1781c0947a9d4c0230b1e790345a06d6 100644
--- a/app/code/Magento/Sales/Model/Resource/Order/Status.php
+++ b/app/code/Magento/Sales/Model/Resource/Order/Status.php
@@ -266,6 +266,7 @@ class Status extends \Magento\Framework\Model\Resource\Db\AbstractDb
      *
      * @param string $state
      * @return string
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     protected function getStatusByState($state)
     {
diff --git a/app/code/Magento/Sales/Model/Resource/Report/Bestsellers.php b/app/code/Magento/Sales/Model/Resource/Report/Bestsellers.php
index 4ff7e5878c0cfde039fd0c4e8895c6bbfe4dd3ec..173d376346079dd0d7fc149201de5e8b3ad2d6a0 100644
--- a/app/code/Magento/Sales/Model/Resource/Report/Bestsellers.php
+++ b/app/code/Magento/Sales/Model/Resource/Report/Bestsellers.php
@@ -7,6 +7,7 @@ namespace Magento\Sales\Model\Resource\Report;
 
 /**
  * Bestsellers report resource model
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Bestsellers extends AbstractReport
 {
@@ -80,6 +81,7 @@ class Bestsellers extends AbstractReport
      * @param string|int|\Zend_Date|array|null $to
      * @return $this
      * @throws \Exception
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public function aggregate($from = null, $to = null)
     {
@@ -159,7 +161,6 @@ class Bestsellers extends AbstractReport
 
             $joinExpr = [
                 'product.entity_id = order_item.product_id',
-                $adapter->quoteInto('product.entity_type_id = ?', $this->_productResource->getTypeId()),
                 $adapter->quoteInto('product.type_id NOT IN(?)', $this->ignoredProductTypes),
             ];
 
@@ -171,14 +172,12 @@ class Bestsellers extends AbstractReport
             $joinExprProductName = [
                 'product_name.entity_id = product.entity_id',
                 'product_name.store_id = source_table.store_id',
-                $adapter->quoteInto('product_name.entity_type_id = ?', $this->_productResource->getTypeId()),
                 $adapter->quoteInto('product_name.attribute_id = ?', $attr->getAttributeId()),
             ];
             $joinExprProductName = implode(' AND ', $joinExprProductName);
             $joinProductName = [
                 'product_default_name.entity_id = product.entity_id',
                 'product_default_name.store_id = 0',
-                $adapter->quoteInto('product_default_name.entity_type_id = ?', $this->_productResource->getTypeId()),
                 $adapter->quoteInto('product_default_name.attribute_id = ?', $attr->getAttributeId()),
             ];
             $joinProductName = implode(' AND ', $joinProductName);
@@ -195,7 +194,6 @@ class Bestsellers extends AbstractReport
             $joinExprProductPrice = [
                 'product_price.entity_id = product.entity_id',
                 'product_price.store_id = source_table.store_id',
-                $adapter->quoteInto('product_price.entity_type_id = ?', $this->_productResource->getTypeId()),
                 $adapter->quoteInto('product_price.attribute_id = ?', $attr->getAttributeId()),
             ];
             $joinExprProductPrice = implode(' AND ', $joinExprProductPrice);
@@ -203,7 +201,6 @@ class Bestsellers extends AbstractReport
             $joinProductPrice = [
                 'product_default_price.entity_id = product.entity_id',
                 'product_default_price.store_id = 0',
-                $adapter->quoteInto('product_default_price.entity_type_id = ?', $this->_productResource->getTypeId()),
                 $adapter->quoteInto('product_default_price.attribute_id = ?', $attr->getAttributeId()),
             ];
             $joinProductPrice = implode(' AND ', $joinProductPrice);
diff --git a/app/code/Magento/Sales/Model/Resource/Report/Bestsellers/Collection.php b/app/code/Magento/Sales/Model/Resource/Report/Bestsellers/Collection.php
index 331a909384f6bffb470b32717998131dafa67a67..3ea1cfc8bae97789526812ca3fac0e6b55d39d0a 100644
--- a/app/code/Magento/Sales/Model/Resource/Report/Bestsellers/Collection.php
+++ b/app/code/Magento/Sales/Model/Resource/Report/Bestsellers/Collection.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Sales\Model\Resource\Report\Bestsellers;
 
 /**
@@ -217,6 +220,9 @@ class Collection extends \Magento\Sales\Model\Resource\Report\Collection\Abstrac
      * but before adding unions and calculating totals
      *
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _beforeLoad()
     {
diff --git a/app/code/Magento/Sales/Model/Resource/Report/Invoiced.php b/app/code/Magento/Sales/Model/Resource/Report/Invoiced.php
index 9d931bc56a8743dbd9d146c962a1dc712962f654..ceb64d2658b67dcee2baf3763617168bb9290570 100644
--- a/app/code/Magento/Sales/Model/Resource/Report/Invoiced.php
+++ b/app/code/Magento/Sales/Model/Resource/Report/Invoiced.php
@@ -50,6 +50,7 @@ class Invoiced extends AbstractReport
      * @param string|null $to
      * @return $this
      * @throws \Exception
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _aggregateByInvoiceCreatedAt($from, $to)
     {
diff --git a/app/code/Magento/Sales/Model/Resource/Report/Order/Createdat.php b/app/code/Magento/Sales/Model/Resource/Report/Order/Createdat.php
index f48f917c1298e015c1e25d25ee1cec2250533897..0de50475f360db0bbc4491d5b1e3ce398f02a118 100644
--- a/app/code/Magento/Sales/Model/Resource/Report/Order/Createdat.php
+++ b/app/code/Magento/Sales/Model/Resource/Report/Order/Createdat.php
@@ -42,6 +42,8 @@ class Createdat extends \Magento\Sales\Model\Resource\Report\AbstractReport
      * @param string|int|\Zend_Date|array|null $to
      * @return $this
      * @throws \Exception
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     protected function _aggregateByField($aggregationField, $from, $to)
     {
diff --git a/app/code/Magento/Sales/Model/Resource/Report/Refunded.php b/app/code/Magento/Sales/Model/Resource/Report/Refunded.php
index 583b86da77de7cfe082ca657e68c70d3a5c47d0a..80a0f43fb28d2daab8e2edfe8b0754a95336b731 100644
--- a/app/code/Magento/Sales/Model/Resource/Report/Refunded.php
+++ b/app/code/Magento/Sales/Model/Resource/Report/Refunded.php
@@ -137,6 +137,7 @@ class Refunded extends AbstractReport
      * @param string|null $to
      * @return $this
      * @throws \Exception
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _aggregateByRefundCreatedAt($from, $to)
     {
diff --git a/app/code/Magento/Sales/Model/Resource/Report/Shipping.php b/app/code/Magento/Sales/Model/Resource/Report/Shipping.php
index 387d810862e9ae505644857519ec64d7aae28528..5d041dac931ef9b188f71d3d873e7b12e10de816 100644
--- a/app/code/Magento/Sales/Model/Resource/Report/Shipping.php
+++ b/app/code/Magento/Sales/Model/Resource/Report/Shipping.php
@@ -141,6 +141,7 @@ class Shipping extends AbstractReport
      * @param string|null $to
      * @return $this
      * @throws \Exception
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _aggregateByShippingCreatedAt($from, $to)
     {
diff --git a/app/code/Magento/Sales/Model/Resource/Setup.php b/app/code/Magento/Sales/Model/Resource/Setup.php
index d385093acabd4b45df6f1e396c637f12db2fff2b..6a308344f68f947358f2490b9337414595296d54 100644
--- a/app/code/Magento/Sales/Model/Resource/Setup.php
+++ b/app/code/Magento/Sales/Model/Resource/Setup.php
@@ -56,12 +56,6 @@ class Setup extends \Magento\Eav\Model\Entity\Setup
      * @var $_flatEntityTables array
      */
     protected $_flatEntityTables = [
-        'quote' => 'sales_quote',
-        'quote_item' => 'sales_quote_item',
-        'quote_address' => 'sales_quote_address',
-        'quote_address_item' => 'sales_quote_address_item',
-        'quote_address_rate' => 'sales_quote_shipping_rate',
-        'quote_payment' => 'sales_quote_payment',
         'order' => 'sales_order',
         'order_payment' => 'sales_order_payment',
         'order_item' => 'sales_order_item',
@@ -165,6 +159,8 @@ class Setup extends \Magento\Eav\Model\Entity\Setup
      * @param string $code
      * @param array $data
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _getAttributeColumnDefinition($code, $data)
     {
diff --git a/app/code/Magento/Sales/Model/Service/Order.php b/app/code/Magento/Sales/Model/Service/Order.php
index ad9c8ded4693a25b9d5271e159c861f49faf4b6a..5860dd46d6c91ef5a11130759b024f1f32f1bccc 100644
--- a/app/code/Magento/Sales/Model/Service/Order.php
+++ b/app/code/Magento/Sales/Model/Service/Order.php
@@ -205,6 +205,8 @@ class Order
      * @param object $invoice
      * @param array $data
      * @return \Magento\Sales\Model\Order\Creditmemo
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function prepareInvoiceCreditmemo($invoice, $data = [])
     {
@@ -316,6 +318,7 @@ class Order
      * @param \Magento\Sales\Model\Order\Item $item
      * @param array $qtys
      * @return bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _canInvoiceItem($item, $qtys = [])
     {
@@ -356,6 +359,7 @@ class Order
      * @param \Magento\Sales\Model\Order\Item $item
      * @param array $qtys
      * @return bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _canShipItem($item, $qtys = [])
     {
@@ -402,6 +406,7 @@ class Order
      * @param array $qtys
      * @param array $invoiceQtysRefundLimits
      * @return bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _canRefundItem($item, $qtys = [], $invoiceQtysRefundLimits = [])
     {
diff --git a/app/code/Magento/Sales/Model/Service/OrderService.php b/app/code/Magento/Sales/Model/Service/OrderService.php
index 2615f53fd51ce8ce2aee7b26e85e6f7e8bfbf7c2..2fce36918d22d3bebf91cb2e4151f0a84f57ba2e 100644
--- a/app/code/Magento/Sales/Model/Service/OrderService.php
+++ b/app/code/Magento/Sales/Model/Service/OrderService.php
@@ -145,4 +145,24 @@ class OrderService implements OrderManagementInterface
     {
         return (bool)$this->orderRepository->get($id)->unhold();
     }
+
+    /**
+     * @param \Magento\Sales\Api\Data\OrderInterface $order
+     * @return \Magento\Sales\Api\Data\OrderInterface
+     */
+    public function place(\Magento\Sales\Api\Data\OrderInterface $order)
+    {
+        // transaction will be here
+        //begin transaction
+        try {
+//            $order = $this->orderRepository->save($order);
+            $order->place();
+            return $this->orderRepository->save($order);
+
+            //commit
+        } catch (\Exception $e) {
+            throw $e;
+            //rollback;
+        }
+    }
 }
diff --git a/app/code/Magento/Sales/Model/Service/Quote.php b/app/code/Magento/Sales/Model/Service/Quote.php
deleted file mode 100644
index f5aa07a01436eca1cf2ce966303781bfdbcdc78c..0000000000000000000000000000000000000000
--- a/app/code/Magento/Sales/Model/Service/Quote.php
+++ /dev/null
@@ -1,380 +0,0 @@
-<?php
-/**
- * Copyright © 2015 Magento. All rights reserved.
- * See COPYING.txt for license details.
- */
-namespace Magento\Sales\Model\Service;
-
-/**
- * Class Quote
- * Quote submit service model
- */
-class Quote
-{
-    /**
-     * Quote object
-     *
-     * @var \Magento\Sales\Model\Quote
-     */
-    protected $_quote;
-
-    /**
-     * Quote convert object
-     *
-     * @var \Magento\Sales\Model\Convert\Quote
-     */
-    protected $_convertor;
-
-    /**
-     * List of additional order attributes which will be added to order before save
-     *
-     * @var array
-     */
-    protected $_orderData = [];
-
-    /**
-     * Order that may be created during submission
-     *
-     * @var \Magento\Sales\Model\Order
-     */
-    protected $_order = null;
-
-    /**
-     * If it is true, quote will be inactivate after submitting order
-     *
-     * @var bool
-     */
-    protected $_shouldInactivateQuote = true;
-
-    /**
-     * Core event manager proxy
-     *
-     * @var \Magento\Framework\Event\ManagerInterface
-     */
-    protected $_eventManager = null;
-
-    /**
-     * @var \Magento\Customer\Model\Session
-     */
-    protected $_customerSession;
-
-    /**
-     * @var \Magento\Framework\DB\TransactionFactory
-     */
-    protected $_transactionFactory;
-
-    /**
-     * Account management
-     *
-     * @var \Magento\Customer\Api\AccountManagementInterface
-     */
-    protected $accountManagement;
-
-    /**
-     * Customer builder
-     *
-     * @var \Magento\Customer\Api\Data\CustomerDataBuilder
-     */
-    protected $customerBuilder;
-
-    /**
-     * Address builder
-     *
-     * @var \Magento\Customer\Api\Data\AddressDataBuilder
-     */
-    protected $addressBuilder;
-
-    /**
-     * @var \Magento\Customer\Api\AddressRepositoryInterface
-     */
-    protected $addressRepository;
-
-    /**
-     * @var \Magento\Customer\Api\CustomerRepositoryInterface
-     */
-    protected $customerRepository;
-
-    /**
-     * @var \Magento\Customer\Api\Data\RegionDataBuilder
-     */
-    protected $regionBuilder;
-
-    /**
-     * @param \Magento\Framework\Event\ManagerInterface $eventManager
-     * @param \Magento\Sales\Model\Quote $quote
-     * @param \Magento\Sales\Model\Convert\QuoteFactory $convertQuoteFactory
-     * @param \Magento\Customer\Model\Session $customerSession
-     * @param \Magento\Framework\DB\TransactionFactory $transactionFactory
-     * @param \Magento\Customer\Api\AccountManagementInterface $accountManagement
-     * @param \Magento\Customer\Api\Data\CustomerDataBuilder $customerBuilder
-     * @param \Magento\Customer\Api\Data\AddressDataBuilder $addressBuilder
-     * @param \Magento\Customer\Api\AddressRepositoryInterface $addressRepository
-     * @param \Magento\Customer\Api\CustomerRepositoryInterface $customerRepository
-     * @param \Magento\Customer\Api\Data\RegionDataBuilder $regionDataBuilder
-     */
-    public function __construct(
-        \Magento\Framework\Event\ManagerInterface $eventManager,
-        \Magento\Sales\Model\Quote $quote,
-        \Magento\Sales\Model\Convert\QuoteFactory $convertQuoteFactory,
-        \Magento\Customer\Model\Session $customerSession,
-        \Magento\Framework\DB\TransactionFactory $transactionFactory,
-        \Magento\Customer\Api\AccountManagementInterface $accountManagement,
-        \Magento\Customer\Api\Data\CustomerDataBuilder $customerBuilder,
-        \Magento\Customer\Api\Data\AddressDataBuilder $addressBuilder,
-        \Magento\Customer\Api\AddressRepositoryInterface $addressRepository,
-        \Magento\Customer\Api\CustomerRepositoryInterface $customerRepository,
-        \Magento\Customer\Api\Data\RegionDataBuilder $regionDataBuilder
-    ) {
-        $this->accountManagement = $accountManagement;
-        $this->customerBuilder = $customerBuilder;
-        $this->addressBuilder = $addressBuilder;
-        $this->_eventManager = $eventManager;
-        $this->_quote = $quote;
-        $this->_convertor = $convertQuoteFactory->create();
-        $this->_customerSession = $customerSession;
-        $this->_transactionFactory = $transactionFactory;
-        $this->addressRepository = $addressRepository;
-        $this->customerRepository = $customerRepository;
-        $this->regionBuilder = $regionDataBuilder;
-    }
-
-    /**
-     * Quote convertor declaration
-     *
-     * @param \Magento\Sales\Model\Convert\Quote $convertor
-     * @return $this
-     */
-    public function setConvertor(\Magento\Sales\Model\Convert\Quote $convertor)
-    {
-        $this->_convertor = $convertor;
-        return $this;
-    }
-
-    /**
-     * Get assigned quote object
-     *
-     * @return \Magento\Sales\Model\Quote
-     */
-    public function getQuote()
-    {
-        return $this->_quote;
-    }
-
-    /**
-     * Specify additional order data
-     *
-     * @param array $data
-     * @return $this
-     */
-    public function setOrderData(array $data)
-    {
-        $this->_orderData = $data;
-        return $this;
-    }
-
-    /**
-     * @param \Magento\Sales\Model\Quote $quote
-     * @return void
-     */
-    protected function prepareCustomerData(\Magento\Sales\Model\Quote $quote)
-    {
-        $customer = $quote->getCustomer();
-
-        if (!$customer->getId()) {
-            $customer = $this->accountManagement->createAccountWithPasswordHash(
-                $this->customerBuilder->populate($customer)->create(),
-                $quote->getPasswordHash()
-            );
-        } else {
-            $this->customerRepository->save($customer);
-        }
-
-        if (!$quote->getBillingAddress()->getId() && $customer->getDefaultBilling()) {
-            $quote->getBillingAddress()->importCustomerAddressData(
-                $this->addressRepository->getById($customer->getDefaultBilling())
-            );
-        }
-        if (!$quote->getShippingAddress()->getSameAsBilling()
-            && !$quote->getBillingAddress()->getId()
-            && $customer->getDefaultShipping()
-        ) {
-            $quote->getShippingAddress()->importCustomerAddressData(
-                $this->addressRepository->getById($customer->getDefaultShipping())
-            );
-        }
-        $quote->setCustomer($customer);
-    }
-
-    /**
-     * Submit the quote. Quote submit process will create the order based on quote data
-     *
-     * @return \Magento\Sales\Model\Order
-     * @throws \Exception
-     */
-    public function submitOrderWithDataObject()
-    {
-        $this->_validate();
-        $quote = $this->_quote;
-        $isVirtual = $quote->isVirtual();
-
-        $transaction = $this->_transactionFactory->create();
-        if (!$quote->getCustomerIsGuest()) {
-            $this->prepareCustomerData($quote);
-        }
-        $transaction->addObject($quote);
-
-        $quote->reserveOrderId();
-        if ($isVirtual) {
-            $order = $this->_convertor->addressToOrder($quote->getBillingAddress());
-        } else {
-            $order = $this->_convertor->addressToOrder($quote->getShippingAddress());
-        }
-
-        $order->setBillingAddress($this->_convertor->addressToOrderAddress($quote->getBillingAddress()));
-        if ($quote->getBillingAddress()->getCustomerAddress()) {
-            $order->getBillingAddress()->setCustomerAddressData($quote->getBillingAddress()->getCustomerAddress());
-        }
-
-        if (!$isVirtual) {
-            $order->setShippingAddress($this->_convertor->addressToOrderAddress($quote->getShippingAddress()));
-            if ($quote->getShippingAddress()->getCustomerAddress()) {
-                $order->getShippingAddress()->setCustomerAddressData(
-                    $quote->getShippingAddress()->getCustomerAddress()
-                );
-            }
-        }
-        $order->setPayment($this->_convertor->paymentToOrderPayment($quote->getPayment()));
-
-        foreach ($this->_orderData as $key => $value) {
-            $order->setData($key, $value);
-        }
-
-        foreach ($quote->getAllItems() as $item) {
-            $orderItem = $this->_convertor->itemToOrderItem($item);
-            if ($item->getParentItem()) {
-                $orderItem->setParentItem($order->getItemByQuoteItemId($item->getParentItem()->getId()));
-            }
-            $order->addItem($orderItem);
-        }
-
-        $customer = $quote->getCustomer();
-        if ($customer) {
-            $order->setCustomerId($customer->getId());
-        }
-        $order->setQuote($quote);
-
-        $transaction->addObject($order);
-
-        /**
-         * We can use configuration data for declare new order status
-         */
-        $this->_eventManager->dispatch(
-            'sales_model_service_quote_submit_before',
-            ['order' => $order, 'quote' => $quote]
-        );
-        try {
-            $order->place();
-            $transaction->save();
-            $this->_inactivateQuote();
-            $this->_eventManager->dispatch(
-                'sales_model_service_quote_submit_success',
-                ['order' => $order, 'quote' => $quote]
-            );
-        } catch (\Exception $e) {
-            //reset order ID's on exception, because order not saved
-            $order->setId(null);
-
-            /** @var $item \Magento\Sales\Model\Order\Item */
-            foreach ($order->getItemsCollection() as $item) {
-                $item->setOrderId(null);
-                $item->setItemId(null);
-            }
-
-            $this->_eventManager->dispatch(
-                'sales_model_service_quote_submit_failure',
-                ['order' => $order, 'quote' => $quote]
-            );
-            throw $e;
-        }
-        $this->_order = $order;
-
-        return $order;
-    }
-
-    /**
-     * Submit all available items
-     * All created items will be set to the object
-     *
-     * @return void
-     * @throws \Exception
-     */
-    public function submitAllWithDataObject()
-    {
-        // no need to submit the order if there are no normal items remained
-        if (!$this->_quote->getAllVisibleItems()) {
-            $this->_inactivateQuote();
-            return;
-        }
-        $this->submitOrderWithDataObject();
-    }
-
-    /**
-     * Get an order that may had been created during submission
-     *
-     * @return \Magento\Sales\Model\Order
-     */
-    public function getOrder()
-    {
-        return $this->_order;
-    }
-
-    /**
-     * Inactivate quote
-     *
-     * @return $this
-     */
-    protected function _inactivateQuote()
-    {
-        if ($this->_shouldInactivateQuote) {
-            $this->_quote->setIsActive(false);
-        }
-        return $this;
-    }
-
-    /**
-     * Validate quote data before converting to order
-     *
-     * @return $this
-     * @throws \Magento\Framework\Model\Exception
-     */
-    protected function _validate()
-    {
-        if (!$this->getQuote()->isVirtual()) {
-            $address = $this->getQuote()->getShippingAddress();
-            $addressValidation = $address->validate();
-            if ($addressValidation !== true) {
-                throw new \Magento\Framework\Model\Exception(
-                    __('Please check the shipping address information. %1', implode(' ', $addressValidation))
-                );
-            }
-            $method = $address->getShippingMethod();
-            $rate = $address->getShippingRateByCode($method);
-            if (!$this->getQuote()->isVirtual() && (!$method || !$rate)) {
-                throw new \Magento\Framework\Model\Exception(__('Please specify a shipping method.'));
-            }
-        }
-
-        $addressValidation = $this->getQuote()->getBillingAddress()->validate();
-        if ($addressValidation !== true) {
-            throw new \Magento\Framework\Model\Exception(
-                __('Please check the billing address information. %1', implode(' ', $addressValidation))
-            );
-        }
-
-        if (!$this->getQuote()->getPayment()->getMethod()) {
-            throw new \Magento\Framework\Model\Exception(__('Please select a valid payment method.'));
-        }
-
-        return $this;
-    }
-}
diff --git a/app/code/Magento/Sales/composer.json b/app/code/Magento/Sales/composer.json
index dd52c6dec79cbecba6203c8d5b3352e9cfe53255..73a47c528068b6339626ad8781132882fa7a0b08 100644
--- a/app/code/Magento/Sales/composer.json
+++ b/app/code/Magento/Sales/composer.json
@@ -3,32 +3,33 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-catalog": "0.42.0-beta3",
-        "magento/module-customer": "0.42.0-beta3",
-        "magento/module-authorization": "0.42.0-beta3",
-        "magento/module-payment": "0.42.0-beta3",
-        "magento/module-core": "0.42.0-beta3",
-        "magento/module-checkout": "0.42.0-beta3",
-        "magento/module-theme": "0.42.0-beta3",
-        "magento/module-sales-rule": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/module-widget": "0.42.0-beta3",
-        "magento/module-directory": "0.42.0-beta3",
-        "magento/module-eav": "0.42.0-beta3",
-        "magento/module-tax": "0.42.0-beta3",
-        "magento/module-gift-message": "0.42.0-beta3",
-        "magento/module-reports": "0.42.0-beta3",
-        "magento/module-catalog-inventory": "0.42.0-beta3",
-        "magento/module-wishlist": "0.42.0-beta3",
-        "magento/module-email": "0.42.0-beta3",
-        "magento/module-shipping": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
-        "magento/module-ui": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-catalog": "0.42.0-beta4",
+        "magento/module-customer": "0.42.0-beta4",
+        "magento/module-authorization": "0.42.0-beta4",
+        "magento/module-payment": "0.42.0-beta4",
+        "magento/module-core": "0.42.0-beta4",
+        "magento/module-checkout": "0.42.0-beta4",
+        "magento/module-theme": "0.42.0-beta4",
+        "magento/module-sales-rule": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/module-widget": "0.42.0-beta4",
+        "magento/module-directory": "0.42.0-beta4",
+        "magento/module-eav": "0.42.0-beta4",
+        "magento/module-tax": "0.42.0-beta4",
+        "magento/module-gift-message": "0.42.0-beta4",
+        "magento/module-reports": "0.42.0-beta4",
+        "magento/module-catalog-inventory": "0.42.0-beta4",
+        "magento/module-wishlist": "0.42.0-beta4",
+        "magento/module-email": "0.42.0-beta4",
+        "magento/module-shipping": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
+        "magento/module-ui": "0.42.0-beta4",
+        "magento/module-quote": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/Sales/data/sales_setup/data-install-2.0.0.php b/app/code/Magento/Sales/data/sales_setup/data-install-2.0.0.php
index f3d8a77ff144f18b968be0e899a777d605e6451a..2ebea1a5eefcac2d3d965352562fe6885d432360 100644
--- a/app/code/Magento/Sales/data/sales_setup/data-install-2.0.0.php
+++ b/app/code/Magento/Sales/data/sales_setup/data-install-2.0.0.php
@@ -94,7 +94,7 @@ $this->getConnection()->insertArray(
     $data
 );
 
-$entitiesToAlter = ['quote_address', 'order_address'];
+$entitiesToAlter = ['order_address'];
 
 $attributes = [
     'vat_id' => ['type' => \Magento\Framework\DB\Ddl\Table::TYPE_TEXT],
diff --git a/app/code/Magento/Sales/etc/adminhtml/events.xml b/app/code/Magento/Sales/etc/adminhtml/events.xml
index ba582c6d7514417fbcb8104b4955b0c977780698..ed270305f3d86e05b883062349d31e7324df19e7 100644
--- a/app/code/Magento/Sales/etc/adminhtml/events.xml
+++ b/app/code/Magento/Sales/etc/adminhtml/events.xml
@@ -21,7 +21,4 @@
     <event name="catalog_product_status_update">
         <observer name="sales_quote" instance="Magento\Sales\Model\Observer\Backend\CatalogProductQuote" method="catalogProductStatusUpdate" />
     </event>
-    <event name="customer_save_after_data_object">
-        <observer name="customer" instance="Magento\Sales\Model\Observer\Backend\CustomerQuote" method="dispatch" />
-    </event>
 </config>
diff --git a/app/code/Magento/Sales/etc/catalog_attributes.xml b/app/code/Magento/Sales/etc/catalog_attributes.xml
index 87ec61a3d1c29b27e6ccbdfebf14de6b16e94f44..5d5be045cb9a1c1444e75e7cbd0543181574167a 100644
--- a/app/code/Magento/Sales/etc/catalog_attributes.xml
+++ b/app/code/Magento/Sales/etc/catalog_attributes.xml
@@ -6,7 +6,7 @@
  */
 -->
 <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../Catalog/etc/catalog_attributes.xsd">
-    <group name="sales_quote_item">
+    <group name="quote_item">
         <attribute name="sku"/>
         <attribute name="type_id"/>
         <attribute name="name"/>
diff --git a/app/code/Magento/Sales/etc/di.xml b/app/code/Magento/Sales/etc/di.xml
index d9392273d8915d068b247d8c0ad02e14bc6a18c3..0073993b204c822b6740f9c84220a113fa2fc242 100644
--- a/app/code/Magento/Sales/etc/di.xml
+++ b/app/code/Magento/Sales/etc/di.xml
@@ -96,7 +96,7 @@
     <type name="Magento\Catalog\Helper\Product\Flat\Indexer">
         <arguments>
             <argument name="flatAttributeGroups" xsi:type="array">
-                <item name="sales_quote_item" xsi:type="string">sales_quote_item</item>
+                <item name="quote_item" xsi:type="string">quote_item</item>
             </argument>
         </arguments>
     </type>
diff --git a/app/code/Magento/Sales/etc/frontend/events.xml b/app/code/Magento/Sales/etc/frontend/events.xml
index b3282c85b1c33bd8d5d117ccd606de0b2dcf56fe..763c0dcd5bc94cdd50da178debad4dc3146dd207 100644
--- a/app/code/Magento/Sales/etc/frontend/events.xml
+++ b/app/code/Magento/Sales/etc/frontend/events.xml
@@ -6,9 +6,6 @@
  */
 -->
 <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../lib/internal/Magento/Framework/Event/etc/events.xsd">
-    <event name="sales_quote_address_collect_totals_before">
-        <observer name="sales_customer_validate_vat_number" instance="Magento\Sales\Model\Observer\Frontend\Quote\Address\CollectTotals" method="dispatch" />
-    </event>
     <event name="sales_quote_address_collect_totals_after">
         <observer name="sales_customer_validate_vat_number" instance="Magento\Sales\Model\Observer\Frontend\Quote\RestoreCustomerGroupId" method="execute" />
     </event>
diff --git a/app/code/Magento/Sales/etc/sales.xml b/app/code/Magento/Sales/etc/sales.xml
index da0699d53c17fe1d5afde143ffa01c5468359916..eece169179b8589f1849f8813cfac238ed2778e8 100644
--- a/app/code/Magento/Sales/etc/sales.xml
+++ b/app/code/Magento/Sales/etc/sales.xml
@@ -6,13 +6,6 @@
  */
 -->
 <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../Sales/etc/sales.xsd">
-    <section name="quote">
-        <group name="totals">
-            <item name="subtotal" instance="Magento\Sales\Model\Quote\Address\Total\Subtotal" sort_order="100"/>
-            <item name="shipping" instance="Magento\Sales\Model\Quote\Address\Total\Shipping" sort_order="250"/>
-            <item name="grand_total" instance="Magento\Sales\Model\Quote\Address\Total\Grand" sort_order="550"/>
-        </group>
-    </section>
     <section name="order_invoice">
         <group name="totals">
             <item name="subtotal" instance="Magento\Sales\Model\Order\Invoice\Total\Subtotal" sort_order="50"/>
diff --git a/app/code/Magento/Sales/etc/webapi_rest/di.xml b/app/code/Magento/Sales/etc/webapi_rest/di.xml
index 643dfa628b9f19103c4722d9aab938965ed65f89..2c7c118bd147a2b945da1efccd1bad6d25c2360d 100644
--- a/app/code/Magento/Sales/etc/webapi_rest/di.xml
+++ b/app/code/Magento/Sales/etc/webapi_rest/di.xml
@@ -6,10 +6,10 @@
  */
 -->
 <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../lib/internal/Magento/Framework/ObjectManager/etc/config.xsd">
-    <type name="Magento\Sales\Model\QuoteRepository">
-        <plugin name="authorization" type="\Magento\Sales\Model\QuoteRepository\Plugin\Authorization" />
+    <type name="Magento\Quote\Model\QuoteRepository">
+        <plugin name="authorization" type="Magento\Quote\Model\QuoteRepository\Plugin\Authorization" />
     </type>
     <type name="Magento\Sales\Model\Resource\Order">
-        <plugin name="authorization" type="\Magento\Sales\Model\Resource\Order\Plugin\Authorization" />
+        <plugin name="authorization" type="Magento\Sales\Model\Resource\Order\Plugin\Authorization" />
     </type>
 </config>
diff --git a/app/code/Magento/Sales/etc/webapi_soap/di.xml b/app/code/Magento/Sales/etc/webapi_soap/di.xml
index 643dfa628b9f19103c4722d9aab938965ed65f89..2c7c118bd147a2b945da1efccd1bad6d25c2360d 100644
--- a/app/code/Magento/Sales/etc/webapi_soap/di.xml
+++ b/app/code/Magento/Sales/etc/webapi_soap/di.xml
@@ -6,10 +6,10 @@
  */
 -->
 <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../lib/internal/Magento/Framework/ObjectManager/etc/config.xsd">
-    <type name="Magento\Sales\Model\QuoteRepository">
-        <plugin name="authorization" type="\Magento\Sales\Model\QuoteRepository\Plugin\Authorization" />
+    <type name="Magento\Quote\Model\QuoteRepository">
+        <plugin name="authorization" type="Magento\Quote\Model\QuoteRepository\Plugin\Authorization" />
     </type>
     <type name="Magento\Sales\Model\Resource\Order">
-        <plugin name="authorization" type="\Magento\Sales\Model\Resource\Order\Plugin\Authorization" />
+        <plugin name="authorization" type="Magento\Sales\Model\Resource\Order\Plugin\Authorization" />
     </type>
 </config>
diff --git a/app/code/Magento/Sales/i18n/de_DE.csv b/app/code/Magento/Sales/i18n/de_DE.csv
index 38a17ecbf53862979255598c32f030d117e98342..8cd4ff0cf4df0f2a0f1a19dd8cd76501b258800c 100644
--- a/app/code/Magento/Sales/i18n/de_DE.csv
+++ b/app/code/Magento/Sales/i18n/de_DE.csv
@@ -19,8 +19,6 @@ No,Nein
 "Apply Coupon Code","Coupon Code anwenden"
 "Remove Coupon Code","Gutscheincode entfernen"
 Qty,Anzahl
-Subtotal,Zwischensumme
-Discount,Rabatt
 "Row Subtotal",Zeilengesamtsumme
 Action,Aktion
 "No ordered items","Keine bestellten Artikel"
@@ -40,9 +38,6 @@ Sku,SKU
 Orders,Aufträge
 Customer,Kunde
 Guest,Gast
-"Grand Total",Gesamtbetrag
-Tax,Steuer
-Shipping,Lieferung
 "Account Information",Kontoinformationen
 "First Name",Kundenname
 "Last Name","Nachname des Kunden"
@@ -118,7 +113,6 @@ Date,Datum
 "Order Total","Gesamtsumme Bestellung"
 "Purchase Point","Erworben von (Geschäft)"
 "Recent Orders","Kürzlich aufgegebene Bestellungen"
-"Store Credit","Guthaben aufbewahren"
 Notified,Benachrichtigt
 "Notify Customer by Email","Kunde per E-Mail benachrichtigen"
 Billing,Abrechnung
@@ -132,7 +126,6 @@ Message,Nachricht
 Information,Information
 "Gift Options",Geschenkoptionen
 "If you don't want to leave a gift message for the entire order, leave this box blank.","If you don't want to leave a gift message for the entire order, leave this box blank."
-"An item option with code %1 already exists.","An item option with code %1 already exists."
 New,Neu
 "Custom Price",Kundenpreis
 Processing,Bearbeitung
@@ -174,7 +167,6 @@ Returned,Zurückgesendet
 "Please select products.","Please select products."
 Number,Nummer
 "Order Date: %1","Order Date: %1"
-"Discount (%1)","Discount (%1)"
 "Shipping &amp; Handling","Versand und Abwicklung"
 "Credit Memos",Gutschriften
 Invoices,Rechnungen
@@ -298,7 +290,6 @@ Transactions,Transaktionen
 "Order View",Bestellungsansicht
 "Applies to Any of the Specified Order Statuses","Applies to Any of the Specified Order Statuses"
 "Show Actual Values","Show Actual Values"
-"Shipping & Handling","Lieferung und Verarbeitung"
 Fetch,Holen
 "Transaction # %1 | %2","Transaction # %1 | %2"
 Key,Schlüssel
@@ -484,32 +475,10 @@ Mixed,Gemischt
 "We cannot create an empty shipment.","We cannot create an empty shipment."
 "We found an invalid qty to ship for item ""%1"".","We found an invalid qty to ship for item ""%1""."
 "The total model should be extended from \Magento\Sales\Model\Order\Total\AbstractTotal.","The total model should be extended from \Magento\Sales\Model\Order\Total\AbstractTotal."
-"Sorry, but items with payment agreements must be ordered one at a time To continue, please remove or buy the other items in your cart, then order this item by itself.","Sorry, but items with payment agreements must be ordered one at a time To continue, please remove or buy the other items in your cart, then order this item by itself."
-"We found an invalid request for adding product to quote.","We found an invalid request for adding product to quote."
-"This is the wrong quote item id to update configuration.","This is the wrong quote item id to update configuration."
-"This shipping method is not available. To use this shipping method, please contact us.","This shipping method is not available. To use this shipping method, please contact us."
-"The address model is not defined.","The address model is not defined."
-"The address total model should be extended from \Magento\Sales\Model\Quote\Address\Total\AbstractTotal.","Das adresse total model sollte von \Magento\Sales\Model\Quote\Address\Total\AbstractTotal erweitert werden."
-"Subscription Items","Subscription Items"
-"Regular Payment","Reguläre Zahlung"
-"Shipping & Handling (%1)","Shipping & Handling (%1)"
-"We found an invalid item option format.","We found an invalid item option format."
-"Item qty declaration error","Item qty declaration error"
-"Some of the products below do not have all the required options.","Some of the products below do not have all the required options."
-"Something went wrong during the item options declaration.","Something went wrong during the item options declaration."
-"We found an item options declaration error.","We found an item options declaration error."
-"Some of the selected options are not currently available.","Some of the selected options are not currently available."
-"Selected option(s) or their combination is not currently available.","Selected option(s) or their combination is not currently available."
-"Some item options or their combination are not currently available.","Some item options or their combination are not currently available."
-"The requested Payment Method is not available.","Die angeforderte Zahlungsart ist nicht verfügbar."
 "We cannot determine the field name.","We cannot determine the field name."
 "Please specify a valid grid column alias name that exists in the grid table.","Please specify a valid grid column alias name that exists in the grid table."
 "We don't have enough information to save the parent transaction ID.","We don't have enough information to save the parent transaction ID."
 "The last status can't be unassigned from its current state.","The last status can't be unassigned from its current state."
-"Please check the shipping address information. %1","Please check the shipping address information. %1"
-"Please specify a shipping method.","Bitte geben Sie eine Versandart an."
-"Please check the billing address information. %1","Please check the billing address information. %1"
-"Please select a valid payment method.","Bitte wählen Sie eine gültige Zahlungsmethode."
 "Pending Payment","Ausstehende Bezahlung"
 "On Hold",Zurückgestellt
 Complete,Vollständig
diff --git a/app/code/Magento/Sales/i18n/en_US.csv b/app/code/Magento/Sales/i18n/en_US.csv
index d2e12e7749097d38876c8c5fd99ccb091d33e1e7..56fadf4515509308f95b77540604dc5f2d71d75a 100644
--- a/app/code/Magento/Sales/i18n/en_US.csv
+++ b/app/code/Magento/Sales/i18n/en_US.csv
@@ -19,8 +19,6 @@ No,No
 "Apply Coupon Code","Apply Coupon Code"
 "Remove Coupon Code","Remove Coupon Code"
 Qty,Qty
-Subtotal,Subtotal
-Discount,Discount
 "Row Subtotal","Row Subtotal"
 Action,Action
 "No ordered items","No ordered items"
@@ -40,9 +38,6 @@ Sku,Sku
 Orders,Orders
 Customer,Customer
 Guest,Guest
-"Grand Total","Grand Total"
-Tax,Tax
-Shipping,Shipping
 "Account Information","Account Information"
 "First Name","First Name"
 "Last Name","Last Name"
@@ -118,7 +113,6 @@ Date,Date
 "Order Total","Order Total"
 "Purchase Point","Purchase Point"
 "Recent Orders","Recent Orders"
-"Store Credit","Store Credit"
 Notified,Notified
 "Notify Customer by Email","Notify Customer by Email"
 Billing,Billing
@@ -132,7 +126,6 @@ Message,Message
 Information,Information
 "Gift Options","Gift Options"
 "If you don't want to leave a gift message for the entire order, leave this box blank.","If you don't want to leave a gift message for the entire order, leave this box blank."
-"An item option with code %1 already exists.","An item option with code %1 already exists."
 New,New
 "Custom Price","Custom Price"
 Processing,Processing
@@ -174,7 +167,6 @@ Returned,Returned
 "Please select products.","Please select products."
 Number,Number
 "Order Date: %1","Order Date: %1"
-"Discount (%1)","Discount (%1)"
 "Shipping &amp; Handling","Shipping &amp; Handling"
 "Credit Memos","Credit Memos"
 Invoices,Invoices
@@ -298,7 +290,6 @@ Transactions,Transactions
 "Order View","Order View"
 "Applies to Any of the Specified Order Statuses","Applies to Any of the Specified Order Statuses"
 "Show Actual Values","Show Actual Values"
-"Shipping & Handling","Shipping & Handling"
 Fetch,Fetch
 "Transaction # %1 | %2","Transaction # %1 | %2"
 Key,Key
@@ -484,32 +475,10 @@ Mixed,Mixed
 "We cannot create an empty shipment.","We cannot create an empty shipment."
 "We found an invalid qty to ship for item ""%1"".","We found an invalid qty to ship for item ""%1""."
 "The total model should be extended from \Magento\Sales\Model\Order\Total\AbstractTotal.","The total model should be extended from \Magento\Sales\Model\Order\Total\AbstractTotal."
-"Sorry, but items with payment agreements must be ordered one at a time To continue, please remove or buy the other items in your cart, then order this item by itself.","Sorry, but items with payment agreements must be ordered one at a time To continue, please remove or buy the other items in your cart, then order this item by itself."
-"We found an invalid request for adding product to quote.","We found an invalid request for adding product to quote."
-"This is the wrong quote item id to update configuration.","This is the wrong quote item id to update configuration."
-"This shipping method is not available. To use this shipping method, please contact us.","This shipping method is not available. To use this shipping method, please contact us."
-"The address model is not defined.","The address model is not defined."
-"The address total model should be extended from \Magento\Sales\Model\Quote\Address\Total\AbstractTotal.","The address total model should be extended from \Magento\Sales\Model\Quote\Address\Total\AbstractTotal."
-"Subscription Items","Subscription Items"
-"Regular Payment","Regular Payment"
-"Shipping & Handling (%1)","Shipping & Handling (%1)"
-"We found an invalid item option format.","We found an invalid item option format."
-"Item qty declaration error","Item qty declaration error"
-"Some of the products below do not have all the required options.","Some of the products below do not have all the required options."
-"Something went wrong during the item options declaration.","Something went wrong during the item options declaration."
-"We found an item options declaration error.","We found an item options declaration error."
-"Some of the selected options are not currently available.","Some of the selected options are not currently available."
-"Selected option(s) or their combination is not currently available.","Selected option(s) or their combination is not currently available."
-"Some item options or their combination are not currently available.","Some item options or their combination are not currently available."
-"The requested Payment Method is not available.","The requested Payment Method is not available."
 "We cannot determine the field name.","We cannot determine the field name."
 "Please specify a valid grid column alias name that exists in the grid table.","Please specify a valid grid column alias name that exists in the grid table."
 "We don't have enough information to save the parent transaction ID.","We don't have enough information to save the parent transaction ID."
 "The last status can't be unassigned from its current state.","The last status can't be unassigned from its current state."
-"Please check the shipping address information. %1","Please check the shipping address information. %1"
-"Please specify a shipping method.","Please specify a shipping method."
-"Please check the billing address information. %1","Please check the billing address information. %1"
-"Please select a valid payment method.","Please select a valid payment method."
 "Pending Payment","Pending Payment"
 "On Hold","On Hold"
 Complete,Complete
diff --git a/app/code/Magento/Sales/i18n/es_ES.csv b/app/code/Magento/Sales/i18n/es_ES.csv
index 70e8f964ec67df8a2e300c3268986af8aabfaa02..b14dd0c68fcbf24da272a1ee87d018e6707d71b7 100644
--- a/app/code/Magento/Sales/i18n/es_ES.csv
+++ b/app/code/Magento/Sales/i18n/es_ES.csv
@@ -19,8 +19,6 @@ No,No
 "Apply Coupon Code","Usar el Código del Cupón"
 "Remove Coupon Code","Eliminar Código de Cupón"
 Qty,Cantidad
-Subtotal,Subtotal
-Discount,Descuento
 "Row Subtotal","Fila Subtotal"
 Action,Acción
 "No ordered items","No hay pedidos de artículos"
@@ -40,9 +38,6 @@ Sku,"Sku (número de referencia)"
 Orders,Pedidos
 Customer,Cliente
 Guest,Invitado
-"Grand Total","Suma total"
-Tax,Impuestos
-Shipping,Transporte
 "Account Information","Información de Cuenta"
 "First Name","Nombre del Cliente"
 "Last Name","Apellido del cliente"
@@ -118,7 +113,6 @@ Date,Fecha
 "Order Total","Total del pedido"
 "Purchase Point","Comprado En (Tienda)"
 "Recent Orders","Pedidos Recientes"
-"Store Credit","Crédito de tienda"
 Notified,Notificado
 "Notify Customer by Email","Notificar al cliente por correo electrónico"
 Billing,Facturación
@@ -132,7 +126,6 @@ Message,Mensaje
 Information,Información
 "Gift Options","Opciones de regalo"
 "If you don't want to leave a gift message for the entire order, leave this box blank.","If you don't want to leave a gift message for the entire order, leave this box blank."
-"An item option with code %1 already exists.","An item option with code %1 already exists."
 New,Nuevo
 "Custom Price","Precio personalizado"
 Processing,Procesando
@@ -174,7 +167,6 @@ Returned,Devuelto
 "Please select products.","Please select products."
 Number,Número
 "Order Date: %1","Order Date: %1"
-"Discount (%1)","Discount (%1)"
 "Shipping &amp; Handling","Envío y preparación"
 "Credit Memos","Facturas rectificativas"
 Invoices,Facturas
@@ -298,7 +290,6 @@ Transactions,Transacciones
 "Order View","Vista del pedido"
 "Applies to Any of the Specified Order Statuses","Applies to Any of the Specified Order Statuses"
 "Show Actual Values","Show Actual Values"
-"Shipping & Handling","Manipulación y expedición"
 Fetch,Capturar
 "Transaction # %1 | %2","Transaction # %1 | %2"
 Key,Clave
@@ -484,32 +475,10 @@ Mixed,Mixto
 "We cannot create an empty shipment.","We cannot create an empty shipment."
 "We found an invalid qty to ship for item ""%1"".","We found an invalid qty to ship for item ""%1""."
 "The total model should be extended from \Magento\Sales\Model\Order\Total\AbstractTotal.","The total model should be extended from \Magento\Sales\Model\Order\Total\AbstractTotal."
-"Sorry, but items with payment agreements must be ordered one at a time To continue, please remove or buy the other items in your cart, then order this item by itself.","Sorry, but items with payment agreements must be ordered one at a time To continue, please remove or buy the other items in your cart, then order this item by itself."
-"We found an invalid request for adding product to quote.","We found an invalid request for adding product to quote."
-"This is the wrong quote item id to update configuration.","This is the wrong quote item id to update configuration."
-"This shipping method is not available. To use this shipping method, please contact us.","This shipping method is not available. To use this shipping method, please contact us."
-"The address model is not defined.","The address model is not defined."
-"The address total model should be extended from \Magento\Sales\Model\Quote\Address\Total\AbstractTotal.","El modelo de dirección total debería extenderse desde \Magento\Sales\Model\Quote\Address\Total\AbstractTotal."
-"Subscription Items","Subscription Items"
-"Regular Payment","Pago ordinario"
-"Shipping & Handling (%1)","Shipping & Handling (%1)"
-"We found an invalid item option format.","We found an invalid item option format."
-"Item qty declaration error","Item qty declaration error"
-"Some of the products below do not have all the required options.","Some of the products below do not have all the required options."
-"Something went wrong during the item options declaration.","Something went wrong during the item options declaration."
-"We found an item options declaration error.","We found an item options declaration error."
-"Some of the selected options are not currently available.","Some of the selected options are not currently available."
-"Selected option(s) or their combination is not currently available.","Selected option(s) or their combination is not currently available."
-"Some item options or their combination are not currently available.","Some item options or their combination are not currently available."
-"The requested Payment Method is not available.","El método de pago solicitado no está disponible."
 "We cannot determine the field name.","We cannot determine the field name."
 "Please specify a valid grid column alias name that exists in the grid table.","Please specify a valid grid column alias name that exists in the grid table."
 "We don't have enough information to save the parent transaction ID.","We don't have enough information to save the parent transaction ID."
 "The last status can't be unassigned from its current state.","The last status can't be unassigned from its current state."
-"Please check the shipping address information. %1","Please check the shipping address information. %1"
-"Please specify a shipping method.","Por favor, especifique un modo de envío."
-"Please check the billing address information. %1","Please check the billing address information. %1"
-"Please select a valid payment method.","Por favor, seleccione un modo de pago válido."
 "Pending Payment","Pago Pendiente"
 "On Hold","En pausa"
 Complete,Completo
diff --git a/app/code/Magento/Sales/i18n/fr_FR.csv b/app/code/Magento/Sales/i18n/fr_FR.csv
index 86aaeb5ec98abe80ee2620229491a3eba3da4903..d56acf87271da135c373d7758235de4e1dd3a419 100644
--- a/app/code/Magento/Sales/i18n/fr_FR.csv
+++ b/app/code/Magento/Sales/i18n/fr_FR.csv
@@ -19,8 +19,6 @@ No,Non
 "Apply Coupon Code","Appliquer code coupon"
 "Remove Coupon Code","Retirer le code de promotion"
 Qty,Qté
-Subtotal,Sous-total
-Discount,Discount
 "Row Subtotal","Sous-Total de la ligne"
 Action,Action
 "No ordered items","Aucun article commandé"
@@ -40,9 +38,6 @@ Sku,Sku
 Orders,Commandes
 Customer,Client
 Guest,Invité
-"Grand Total","Total final"
-Tax,Taxe
-Shipping,Envoi
 "Account Information","Informations du compte"
 "First Name",Prénom
 "Last Name","Nom du client"
@@ -118,7 +113,6 @@ Date,Date
 "Order Total","Total Commande"
 "Purchase Point","Acheté chez (Boutique)"
 "Recent Orders","Commandes récentes"
-"Store Credit","Crédits de la boutique"
 Notified,Notifié
 "Notify Customer by Email","Notifier le Client par Email"
 Billing,Facturation
@@ -132,7 +126,6 @@ Message,Message
 Information,Renseignements
 "Gift Options","Options de cadeau"
 "If you don't want to leave a gift message for the entire order, leave this box blank.","If you don't want to leave a gift message for the entire order, leave this box blank."
-"An item option with code %1 already exists.","An item option with code %1 already exists."
 New,Nouveau
 "Custom Price","Personnaliser le prix"
 Processing,Traitement
@@ -174,7 +167,6 @@ Returned,Retourné
 "Please select products.","Please select products."
 Number,Nombre
 "Order Date: %1","Order Date: %1"
-"Discount (%1)","Discount (%1)"
 "Shipping &amp; Handling","Expédition &amp; Traitement"
 "Credit Memos",Avoirs
 Invoices,Factures
@@ -298,7 +290,6 @@ Transactions,Transactions
 "Order View","Vue Commande"
 "Applies to Any of the Specified Order Statuses","Applies to Any of the Specified Order Statuses"
 "Show Actual Values","Show Actual Values"
-"Shipping & Handling","Expédition et traitement"
 Fetch,Chercher
 "Transaction # %1 | %2","Transaction # %1 | %2"
 Key,Clé
@@ -484,32 +475,10 @@ Mixed,Mélangé
 "We cannot create an empty shipment.","We cannot create an empty shipment."
 "We found an invalid qty to ship for item ""%1"".","We found an invalid qty to ship for item ""%1""."
 "The total model should be extended from \Magento\Sales\Model\Order\Total\AbstractTotal.","The total model should be extended from \Magento\Sales\Model\Order\Total\AbstractTotal."
-"Sorry, but items with payment agreements must be ordered one at a time To continue, please remove or buy the other items in your cart, then order this item by itself.","Sorry, but items with payment agreements must be ordered one at a time To continue, please remove or buy the other items in your cart, then order this item by itself."
-"We found an invalid request for adding product to quote.","We found an invalid request for adding product to quote."
-"This is the wrong quote item id to update configuration.","This is the wrong quote item id to update configuration."
-"This shipping method is not available. To use this shipping method, please contact us.","This shipping method is not available. To use this shipping method, please contact us."
-"The address model is not defined.","The address model is not defined."
-"The address total model should be extended from \Magento\Sales\Model\Quote\Address\Total\AbstractTotal.","Le modèle total de l'adresse devrait être étendu à partir de \Magento\Sales\Model\Quote\Address\Total\AbstractTotal."
-"Subscription Items","Subscription Items"
-"Regular Payment","Paiement régulier"
-"Shipping & Handling (%1)","Shipping & Handling (%1)"
-"We found an invalid item option format.","We found an invalid item option format."
-"Item qty declaration error","Item qty declaration error"
-"Some of the products below do not have all the required options.","Some of the products below do not have all the required options."
-"Something went wrong during the item options declaration.","Something went wrong during the item options declaration."
-"We found an item options declaration error.","We found an item options declaration error."
-"Some of the selected options are not currently available.","Some of the selected options are not currently available."
-"Selected option(s) or their combination is not currently available.","Selected option(s) or their combination is not currently available."
-"Some item options or their combination are not currently available.","Some item options or their combination are not currently available."
-"The requested Payment Method is not available.","La méthode de paiement demandée n'est pas disponible."
 "We cannot determine the field name.","We cannot determine the field name."
 "Please specify a valid grid column alias name that exists in the grid table.","Please specify a valid grid column alias name that exists in the grid table."
 "We don't have enough information to save the parent transaction ID.","We don't have enough information to save the parent transaction ID."
 "The last status can't be unassigned from its current state.","The last status can't be unassigned from its current state."
-"Please check the shipping address information. %1","Please check the shipping address information. %1"
-"Please specify a shipping method.","Veuillez spécifier une méthode d'expédition."
-"Please check the billing address information. %1","Please check the billing address information. %1"
-"Please select a valid payment method.","Veuillez sélectionner une méthode de paiement valide."
 "Pending Payment","Paiement en attente"
 "On Hold","En Attente"
 Complete,Terminer
diff --git a/app/code/Magento/Sales/i18n/nl_NL.csv b/app/code/Magento/Sales/i18n/nl_NL.csv
index 5298f4a60a745db9142d19bc1d7167e8019fbae5..8018624c475f507c9340145fd0b3b6b1f607e03f 100644
--- a/app/code/Magento/Sales/i18n/nl_NL.csv
+++ b/app/code/Magento/Sales/i18n/nl_NL.csv
@@ -19,8 +19,6 @@ No,Nee
 "Apply Coupon Code","Vul couponcode in"
 "Remove Coupon Code","haal couponcode weg"
 Qty,hoeveelheid
-Subtotal,subtotaal
-Discount,korting
 "Row Subtotal","rij van het subtotaal"
 Action,actie
 "No ordered items","geen bestelde items"
@@ -40,9 +38,6 @@ Sku,Sku
 Orders,Bestellingen
 Customer,Klant
 Guest,Gast
-"Grand Total","Groot Totaal"
-Tax,Belasting
-Shipping,Transport
 "Account Information","Account Gegevens"
 "First Name","Klant Naam"
 "Last Name","Klant Achternaam"
@@ -118,7 +113,6 @@ Date,Datum
 "Order Total","Bestelling Totaalbedrag"
 "Purchase Point","Gekocht van (winkel)"
 "Recent Orders","Recente Bestellingen"
-"Store Credit","Sla Krediet op"
 Notified,Ingelicht
 "Notify Customer by Email","Licht klant in via e-mail"
 Billing,Facturatie
@@ -132,7 +126,6 @@ Message,Boodschap
 Information,Informatie
 "Gift Options",Cadeauopties
 "If you don't want to leave a gift message for the entire order, leave this box blank.","If you don't want to leave a gift message for the entire order, leave this box blank."
-"An item option with code %1 already exists.","An item option with code %1 already exists."
 New,Nieuw
 "Custom Price","Aangepaste prijs"
 Processing,Verwerken
@@ -174,7 +167,6 @@ Returned,Teruggestuurd
 "Please select products.","Please select products."
 Number,Aantal
 "Order Date: %1","Order Date: %1"
-"Discount (%1)","Discount (%1)"
 "Shipping &amp; Handling","Verzending &amp; behandeling"
 "Credit Memos",Creditnota's
 Invoices,Facturen
@@ -298,7 +290,6 @@ Transactions,Transacties
 "Order View","Kijk naar de bestelling"
 "Applies to Any of the Specified Order Statuses","Applies to Any of the Specified Order Statuses"
 "Show Actual Values","Show Actual Values"
-"Shipping & Handling","Verzending & Transport"
 Fetch,Halen
 "Transaction # %1 | %2","Transaction # %1 | %2"
 Key,sleutel
@@ -484,32 +475,10 @@ Mixed,Gemengd
 "We cannot create an empty shipment.","We cannot create an empty shipment."
 "We found an invalid qty to ship for item ""%1"".","We found an invalid qty to ship for item ""%1""."
 "The total model should be extended from \Magento\Sales\Model\Order\Total\AbstractTotal.","The total model should be extended from \Magento\Sales\Model\Order\Total\AbstractTotal."
-"Sorry, but items with payment agreements must be ordered one at a time To continue, please remove or buy the other items in your cart, then order this item by itself.","Sorry, but items with payment agreements must be ordered one at a time To continue, please remove or buy the other items in your cart, then order this item by itself."
-"We found an invalid request for adding product to quote.","We found an invalid request for adding product to quote."
-"This is the wrong quote item id to update configuration.","This is the wrong quote item id to update configuration."
-"This shipping method is not available. To use this shipping method, please contact us.","This shipping method is not available. To use this shipping method, please contact us."
-"The address model is not defined.","The address model is not defined."
-"The address total model should be extended from \Magento\Sales\Model\Quote\Address\Total\AbstractTotal.","Het totale adresmodel moet uitgebreid worden van \Magento\Sales\Model\Quote\Address\Total\AbstractTotal."
-"Subscription Items","Subscription Items"
-"Regular Payment",Overboeking
-"Shipping & Handling (%1)","Shipping & Handling (%1)"
-"We found an invalid item option format.","We found an invalid item option format."
-"Item qty declaration error","Item qty declaration error"
-"Some of the products below do not have all the required options.","Some of the products below do not have all the required options."
-"Something went wrong during the item options declaration.","Something went wrong during the item options declaration."
-"We found an item options declaration error.","We found an item options declaration error."
-"Some of the selected options are not currently available.","Some of the selected options are not currently available."
-"Selected option(s) or their combination is not currently available.","Selected option(s) or their combination is not currently available."
-"Some item options or their combination are not currently available.","Some item options or their combination are not currently available."
-"The requested Payment Method is not available.","De aangevraagde betaalmethode is niet beschikbaar."
 "We cannot determine the field name.","We cannot determine the field name."
 "Please specify a valid grid column alias name that exists in the grid table.","Please specify a valid grid column alias name that exists in the grid table."
 "We don't have enough information to save the parent transaction ID.","We don't have enough information to save the parent transaction ID."
 "The last status can't be unassigned from its current state.","The last status can't be unassigned from its current state."
-"Please check the shipping address information. %1","Please check the shipping address information. %1"
-"Please specify a shipping method.","Gelieve een bezorgingsmethode te specificeren."
-"Please check the billing address information. %1","Please check the billing address information. %1"
-"Please select a valid payment method.","Gelieve een geldige betalingsmethode te selecteren."
 "Pending Payment","In afwachting van betaling"
 "On Hold","In de wacht"
 Complete,Gereed
diff --git a/app/code/Magento/Sales/i18n/pt_BR.csv b/app/code/Magento/Sales/i18n/pt_BR.csv
index cd9b7f88ce04eab7c71a784c461fc2c912c81171..ffba7bb166d6bd8f27bbbe74f2d1a791a88cec8e 100644
--- a/app/code/Magento/Sales/i18n/pt_BR.csv
+++ b/app/code/Magento/Sales/i18n/pt_BR.csv
@@ -19,8 +19,6 @@ No,Não
 "Apply Coupon Code","Solicitar código do cupom"
 "Remove Coupon Code","Remover código do cupom"
 Qty,Quant.
-Subtotal,Subtotal
-Discount,Desconto
 "Row Subtotal","Coluna de subtotal"
 Action,Ação
 "No ordered items","Nenhum item solicitado"
@@ -40,9 +38,6 @@ Sku,SKU
 Orders,Ordens
 Customer,Cliente
 Guest,Convidado
-"Grand Total","Total geral"
-Tax,Taxas
-Shipping,Remessa
 "Account Information","Informações da Conta"
 "First Name","Nome do Cliente"
 "Last Name","Último Nome do Cliente"
@@ -118,7 +113,6 @@ Date,Data
 "Order Total","Total do Pedido"
 "Purchase Point","Comprado de (Loja)"
 "Recent Orders","Pedidos Recentes"
-"Store Credit","Credito da loja"
 Notified,Notificado
 "Notify Customer by Email","Notificar cliente por e-mail"
 Billing,Faturamento
@@ -132,7 +126,6 @@ Message,Mensagem
 Information,Informações
 "Gift Options","Opções de presente"
 "If you don't want to leave a gift message for the entire order, leave this box blank.","If you don't want to leave a gift message for the entire order, leave this box blank."
-"An item option with code %1 already exists.","An item option with code %1 already exists."
 New,Novo
 "Custom Price","Preço Aduaneiro"
 Processing,Processando
@@ -174,7 +167,6 @@ Returned,Retornado
 "Please select products.","Please select products."
 Number,Número
 "Order Date: %1","Order Date: %1"
-"Discount (%1)","Discount (%1)"
 "Shipping &amp; Handling","Transporte &amp; Manuseio"
 "Credit Memos","Notas de Crédito"
 Invoices,Faturas
@@ -298,7 +290,6 @@ Transactions,Transações
 "Order View","Visualizar Pedido"
 "Applies to Any of the Specified Order Statuses","Applies to Any of the Specified Order Statuses"
 "Show Actual Values","Show Actual Values"
-"Shipping & Handling","Transporte & Manuseio"
 Fetch,Buscar
 "Transaction # %1 | %2","Transaction # %1 | %2"
 Key,Senha
@@ -484,32 +475,10 @@ Mixed,Misto
 "We cannot create an empty shipment.","We cannot create an empty shipment."
 "We found an invalid qty to ship for item ""%1"".","We found an invalid qty to ship for item ""%1""."
 "The total model should be extended from \Magento\Sales\Model\Order\Total\AbstractTotal.","The total model should be extended from \Magento\Sales\Model\Order\Total\AbstractTotal."
-"Sorry, but items with payment agreements must be ordered one at a time To continue, please remove or buy the other items in your cart, then order this item by itself.","Sorry, but items with payment agreements must be ordered one at a time To continue, please remove or buy the other items in your cart, then order this item by itself."
-"We found an invalid request for adding product to quote.","We found an invalid request for adding product to quote."
-"This is the wrong quote item id to update configuration.","This is the wrong quote item id to update configuration."
-"This shipping method is not available. To use this shipping method, please contact us.","This shipping method is not available. To use this shipping method, please contact us."
-"The address model is not defined.","The address model is not defined."
-"The address total model should be extended from \Magento\Sales\Model\Quote\Address\Total\AbstractTotal.","O modelo de endereço total deve ser alargado de \Magento\Sales\Model\Quote\Address\Total\AbstractTotal."
-"Subscription Items","Subscription Items"
-"Regular Payment","Pagamento Regular"
-"Shipping & Handling (%1)","Shipping & Handling (%1)"
-"We found an invalid item option format.","We found an invalid item option format."
-"Item qty declaration error","Item qty declaration error"
-"Some of the products below do not have all the required options.","Some of the products below do not have all the required options."
-"Something went wrong during the item options declaration.","Something went wrong during the item options declaration."
-"We found an item options declaration error.","We found an item options declaration error."
-"Some of the selected options are not currently available.","Some of the selected options are not currently available."
-"Selected option(s) or their combination is not currently available.","Selected option(s) or their combination is not currently available."
-"Some item options or their combination are not currently available.","Some item options or their combination are not currently available."
-"The requested Payment Method is not available.","O Método de Pagamento solicitado não está disponível."
 "We cannot determine the field name.","We cannot determine the field name."
 "Please specify a valid grid column alias name that exists in the grid table.","Please specify a valid grid column alias name that exists in the grid table."
 "We don't have enough information to save the parent transaction ID.","We don't have enough information to save the parent transaction ID."
 "The last status can't be unassigned from its current state.","The last status can't be unassigned from its current state."
-"Please check the shipping address information. %1","Please check the shipping address information. %1"
-"Please specify a shipping method.","Especifique um método de envio."
-"Please check the billing address information. %1","Please check the billing address information. %1"
-"Please select a valid payment method.","Por favor selecione um método de pagamento válido."
 "Pending Payment","Pagamento Pendente"
 "On Hold","Em espera"
 Complete,Completar
diff --git a/app/code/Magento/Sales/i18n/zh_CN.csv b/app/code/Magento/Sales/i18n/zh_CN.csv
index a807eb8ffd5a46c309fd624f33791ca4be68a925..ecbf74067715d46205ac92e77f11cf9eee47236a 100644
--- a/app/code/Magento/Sales/i18n/zh_CN.csv
+++ b/app/code/Magento/Sales/i18n/zh_CN.csv
@@ -19,8 +19,6 @@ No,否
 "Apply Coupon Code",应用折价券
 "Remove Coupon Code",删除折价券
 Qty,数量
-Subtotal,小计
-Discount,折扣
 "Row Subtotal",行小计
 Action,操作
 "No ordered items",无订单项
@@ -40,9 +38,6 @@ Sku,Sku
 Orders,订单
 Customer,客户
 Guest,来宾
-"Grand Total",总计
-Tax,传真
-Shipping,运送
 "Account Information",帐户信息
 "First Name",顾客姓名
 "Last Name",客户姓氏
@@ -118,7 +113,6 @@ Date,日期
 "Order Total",订单总数
 "Purchase Point",购买自(店铺)
 "Recent Orders",近期订单
-"Store Credit",店铺信用
 Notified,已通知。
 "Notify Customer by Email",通过电子邮件通知客户
 Billing,账单
@@ -132,7 +126,6 @@ Message,信息
 Information,信息
 "Gift Options",礼品选项
 "If you don't want to leave a gift message for the entire order, leave this box blank.","If you don't want to leave a gift message for the entire order, leave this box blank."
-"An item option with code %1 already exists.","An item option with code %1 already exists."
 New,新建
 "Custom Price",自定义价格
 Processing,正在处理
@@ -174,7 +167,6 @@ Returned,已退款
 "Please select products.","Please select products."
 Number,æ•°å­—
 "Order Date: %1","Order Date: %1"
-"Discount (%1)","Discount (%1)"
 "Shipping &amp; Handling",运送与手续费
 "Credit Memos",信用记录
 Invoices,发票
@@ -298,7 +290,6 @@ Transactions,交易
 "Order View",订单查看
 "Applies to Any of the Specified Order Statuses","Applies to Any of the Specified Order Statuses"
 "Show Actual Values","Show Actual Values"
-"Shipping & Handling",运费和手续费
 Fetch,获取
 "Transaction # %1 | %2","Transaction # %1 | %2"
 Key,密钥
@@ -484,32 +475,10 @@ Mixed,混合
 "We cannot create an empty shipment.","We cannot create an empty shipment."
 "We found an invalid qty to ship for item ""%1"".","We found an invalid qty to ship for item ""%1""."
 "The total model should be extended from \Magento\Sales\Model\Order\Total\AbstractTotal.","The total model should be extended from \Magento\Sales\Model\Order\Total\AbstractTotal."
-"Sorry, but items with payment agreements must be ordered one at a time To continue, please remove or buy the other items in your cart, then order this item by itself.","Sorry, but items with payment agreements must be ordered one at a time To continue, please remove or buy the other items in your cart, then order this item by itself."
-"We found an invalid request for adding product to quote.","We found an invalid request for adding product to quote."
-"This is the wrong quote item id to update configuration.","This is the wrong quote item id to update configuration."
-"This shipping method is not available. To use this shipping method, please contact us.","This shipping method is not available. To use this shipping method, please contact us."
-"The address model is not defined.","The address model is not defined."
-"The address total model should be extended from \Magento\Sales\Model\Quote\Address\Total\AbstractTotal.","地址总模块应扩展自\Magento\Sales\Model\Quote\Address\Total\AbstractTotal。"
-"Subscription Items","Subscription Items"
-"Regular Payment",正常支付
-"Shipping & Handling (%1)","Shipping & Handling (%1)"
-"We found an invalid item option format.","We found an invalid item option format."
-"Item qty declaration error","Item qty declaration error"
-"Some of the products below do not have all the required options.","Some of the products below do not have all the required options."
-"Something went wrong during the item options declaration.","Something went wrong during the item options declaration."
-"We found an item options declaration error.","We found an item options declaration error."
-"Some of the selected options are not currently available.","Some of the selected options are not currently available."
-"Selected option(s) or their combination is not currently available.","Selected option(s) or their combination is not currently available."
-"Some item options or their combination are not currently available.","Some item options or their combination are not currently available."
-"The requested Payment Method is not available.",请求的支付方式不可用。
 "We cannot determine the field name.","We cannot determine the field name."
 "Please specify a valid grid column alias name that exists in the grid table.","Please specify a valid grid column alias name that exists in the grid table."
 "We don't have enough information to save the parent transaction ID.","We don't have enough information to save the parent transaction ID."
 "The last status can't be unassigned from its current state.","The last status can't be unassigned from its current state."
-"Please check the shipping address information. %1","Please check the shipping address information. %1"
-"Please specify a shipping method.",请指定一个配送方法。
-"Please check the billing address information. %1","Please check the billing address information. %1"
-"Please select a valid payment method.",请选择有效的支付方式。
 "Pending Payment",挂起的支付
 "On Hold",暂挂
 Complete,完成
diff --git a/app/code/Magento/Sales/sql/sales_setup/install-2.0.0.php b/app/code/Magento/Sales/sql/sales_setup/install-2.0.0.php
index 87dfff6eaa45974315fcc2251987cdf5b349fd1a..5ec898dd6f99ac391d85cf16c7362cef19722128 100644
--- a/app/code/Magento/Sales/sql/sales_setup/install-2.0.0.php
+++ b/app/code/Magento/Sales/sql/sales_setup/install-2.0.0.php
@@ -3974,1529 +3974,6 @@ $table = $this->getConnection()->newTable(
 );
 $this->getConnection()->createTable($table);
 
-/**
- * Create table 'sales_quote'
- */
-$table = $this->getConnection()->newTable(
-    $this->getTable('sales_quote')
-)->addColumn(
-    'entity_id',
-    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
-    null,
-    ['identity' => true, 'unsigned' => true, 'nullable' => false, 'primary' => true],
-    'Entity Id'
-)->addColumn(
-    'store_id',
-    \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT,
-    null,
-    ['unsigned' => true, 'nullable' => false, 'default' => '0'],
-    'Store Id'
-)->addColumn(
-    'created_at',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TIMESTAMP,
-    null,
-    ['nullable' => false, 'default' => \Magento\Framework\DB\Ddl\Table::TIMESTAMP_INIT],
-    'Created At'
-)->addColumn(
-    'updated_at',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TIMESTAMP,
-    null,
-    ['nullable' => false, 'default' => \Magento\Framework\DB\Ddl\Table::TIMESTAMP_UPDATE],
-    'Updated At'
-)->addColumn(
-    'converted_at',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TIMESTAMP,
-    null,
-    ['nullable' => true],
-    'Converted At'
-)->addColumn(
-    'is_active',
-    \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT,
-    null,
-    ['unsigned' => true, 'default' => '1'],
-    'Is Active'
-)->addColumn(
-    'is_virtual',
-    \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT,
-    null,
-    ['unsigned' => true, 'default' => '0'],
-    'Is Virtual'
-)->addColumn(
-    'is_multi_shipping',
-    \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT,
-    null,
-    ['unsigned' => true, 'default' => '0'],
-    'Is Multi Shipping'
-)->addColumn(
-    'items_count',
-    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
-    null,
-    ['unsigned' => true, 'default' => '0'],
-    'Items Count'
-)->addColumn(
-    'items_qty',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    ['default' => '0.0000'],
-    'Items Qty'
-)->addColumn(
-    'orig_order_id',
-    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
-    null,
-    ['unsigned' => true, 'default' => '0'],
-    'Orig Order Id'
-)->addColumn(
-    'store_to_base_rate',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    ['default' => '0.0000'],
-    'Store To Base Rate'
-)->addColumn(
-    'store_to_quote_rate',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    ['default' => '0.0000'],
-    'Store To Quote Rate'
-)->addColumn(
-    'base_currency_code',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    255,
-    [],
-    'Base Currency Code'
-)->addColumn(
-    'store_currency_code',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    255,
-    [],
-    'Store Currency Code'
-)->addColumn(
-    'quote_currency_code',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    255,
-    [],
-    'Quote Currency Code'
-)->addColumn(
-    'grand_total',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    ['default' => '0.0000'],
-    'Grand Total'
-)->addColumn(
-    'base_grand_total',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    ['default' => '0.0000'],
-    'Base Grand Total'
-)->addColumn(
-    'checkout_method',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    255,
-    [],
-    'Checkout Method'
-)->addColumn(
-    'customer_id',
-    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
-    null,
-    ['unsigned' => true, 'default' => '0'],
-    'Customer Id'
-)->addColumn(
-    'customer_tax_class_id',
-    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
-    null,
-    ['unsigned' => true, 'default' => '0'],
-    'Customer Tax Class Id'
-)->addColumn(
-    'customer_group_id',
-    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
-    null,
-    ['unsigned' => true, 'default' => '0'],
-    'Customer Group Id'
-)->addColumn(
-    'customer_email',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    255,
-    [],
-    'Customer Email'
-)->addColumn(
-    'customer_prefix',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    40,
-    [],
-    'Customer Prefix'
-)->addColumn(
-    'customer_firstname',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    255,
-    [],
-    'Customer Firstname'
-)->addColumn(
-    'customer_middlename',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    40,
-    [],
-    'Customer Middlename'
-)->addColumn(
-    'customer_lastname',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    255,
-    [],
-    'Customer Lastname'
-)->addColumn(
-    'customer_suffix',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    40,
-    [],
-    'Customer Suffix'
-)->addColumn(
-    'customer_dob',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DATETIME,
-    null,
-    [],
-    'Customer Dob'
-)->addColumn(
-    'customer_note',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    255,
-    [],
-    'Customer Note'
-)->addColumn(
-    'customer_note_notify',
-    \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT,
-    null,
-    ['unsigned' => true, 'default' => '1'],
-    'Customer Note Notify'
-)->addColumn(
-    'customer_is_guest',
-    \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT,
-    null,
-    ['unsigned' => true, 'default' => '0'],
-    'Customer Is Guest'
-)->addColumn(
-    'remote_ip',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    32,
-    [],
-    'Remote Ip'
-)->addColumn(
-    'applied_rule_ids',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    255,
-    [],
-    'Applied Rule Ids'
-)->addColumn(
-    'reserved_order_id',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    64,
-    ['nullable' => true],
-    'Reserved Order Id'
-)->addColumn(
-    'password_hash',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    255,
-    [],
-    'Password Hash'
-)->addColumn(
-    'coupon_code',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    255,
-    [],
-    'Coupon Code'
-)->addColumn(
-    'global_currency_code',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    255,
-    [],
-    'Global Currency Code'
-)->addColumn(
-    'base_to_global_rate',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    [],
-    'Base To Global Rate'
-)->addColumn(
-    'base_to_quote_rate',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    [],
-    'Base To Quote Rate'
-)->addColumn(
-    'customer_taxvat',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    255,
-    [],
-    'Customer Taxvat'
-)->addColumn(
-    'customer_gender',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    255,
-    [],
-    'Customer Gender'
-)->addColumn(
-    'subtotal',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    [],
-    'Subtotal'
-)->addColumn(
-    'base_subtotal',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    [],
-    'Base Subtotal'
-)->addColumn(
-    'subtotal_with_discount',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    [],
-    'Subtotal With Discount'
-)->addColumn(
-    'base_subtotal_with_discount',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    [],
-    'Base Subtotal With Discount'
-)->addColumn(
-    'is_changed',
-    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
-    null,
-    ['unsigned' => true],
-    'Is Changed'
-)->addColumn(
-    'trigger_recollect',
-    \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT,
-    null,
-    ['nullable' => false, 'default' => '0'],
-    'Trigger Recollect'
-)->addColumn(
-    'ext_shipping_info',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    '64k',
-    [],
-    'Ext Shipping Info'
-)->addIndex(
-    $this->getIdxName('sales_quote', ['customer_id', 'store_id', 'is_active']),
-    ['customer_id', 'store_id', 'is_active']
-)->addIndex(
-    $this->getIdxName('sales_quote', ['store_id']),
-    ['store_id']
-)->addForeignKey(
-    $this->getFkName('sales_quote', 'store_id', 'store', 'store_id'),
-    'store_id',
-    $this->getTable('store'),
-    'store_id',
-    \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE,
-    \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE
-)->setComment(
-    'Sales Flat Quote'
-);
-$this->getConnection()->createTable($table);
-
-/**
- * Create table 'sales_quote_address'
- */
-$table = $this->getConnection()->newTable(
-    $this->getTable('sales_quote_address')
-)->addColumn(
-    'address_id',
-    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
-    null,
-    ['identity' => true, 'unsigned' => true, 'nullable' => false, 'primary' => true],
-    'Address Id'
-)->addColumn(
-    'quote_id',
-    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
-    null,
-    ['unsigned' => true, 'nullable' => false, 'default' => '0'],
-    'Quote Id'
-)->addColumn(
-    'created_at',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TIMESTAMP,
-    null,
-    ['nullable' => false, 'default' => \Magento\Framework\DB\Ddl\Table::TIMESTAMP_INIT],
-    'Created At'
-)->addColumn(
-    'updated_at',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TIMESTAMP,
-    null,
-    ['nullable' => false, 'default' => \Magento\Framework\DB\Ddl\Table::TIMESTAMP_UPDATE],
-    'Updated At'
-)->addColumn(
-    'customer_id',
-    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
-    null,
-    ['unsigned' => true],
-    'Customer Id'
-)->addColumn(
-    'save_in_address_book',
-    \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT,
-    null,
-    ['default' => '0'],
-    'Save In Address Book'
-)->addColumn(
-    'customer_address_id',
-    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
-    null,
-    ['unsigned' => true],
-    'Customer Address Id'
-)->addColumn(
-    'address_type',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    255,
-    [],
-    'Address Type'
-)->addColumn(
-    'email',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    255,
-    [],
-    'Email'
-)->addColumn(
-    'prefix',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    40,
-    [],
-    'Prefix'
-)->addColumn(
-    'firstname',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    255,
-    [],
-    'Firstname'
-)->addColumn(
-    'middlename',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    40,
-    [],
-    'Middlename'
-)->addColumn(
-    'lastname',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    255,
-    [],
-    'Lastname'
-)->addColumn(
-    'suffix',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    40,
-    [],
-    'Suffix'
-)->addColumn(
-    'company',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    255,
-    [],
-    'Company'
-)->addColumn(
-    'street',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    255,
-    [],
-    'Street'
-)->addColumn(
-    'city',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    255,
-    [],
-    'City'
-)->addColumn(
-    'region',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    255,
-    [],
-    'Region'
-)->addColumn(
-    'region_id',
-    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
-    null,
-    ['unsigned' => true],
-    'Region Id'
-)->addColumn(
-    'postcode',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    255,
-    [],
-    'Postcode'
-)->addColumn(
-    'country_id',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    255,
-    [],
-    'Country Id'
-)->addColumn(
-    'telephone',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    255,
-    [],
-    'Phone Number'
-)->addColumn(
-    'fax',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    255,
-    [],
-    'Fax'
-)->addColumn(
-    'same_as_billing',
-    \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT,
-    null,
-    ['unsigned' => true, 'nullable' => false, 'default' => '0'],
-    'Same As Billing'
-)->addColumn(
-    'collect_shipping_rates',
-    \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT,
-    null,
-    ['unsigned' => true, 'nullable' => false, 'default' => '0'],
-    'Collect Shipping Rates'
-)->addColumn(
-    'shipping_method',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    255,
-    [],
-    'Shipping Method'
-)->addColumn(
-    'shipping_description',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    255,
-    [],
-    'Shipping Description'
-)->addColumn(
-    'weight',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    ['nullable' => false, 'default' => '0.0000'],
-    'Weight'
-)->addColumn(
-    'subtotal',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    ['nullable' => false, 'default' => '0.0000'],
-    'Subtotal'
-)->addColumn(
-    'base_subtotal',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    ['nullable' => false, 'default' => '0.0000'],
-    'Base Subtotal'
-)->addColumn(
-    'subtotal_with_discount',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    ['nullable' => false, 'default' => '0.0000'],
-    'Subtotal With Discount'
-)->addColumn(
-    'base_subtotal_with_discount',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    ['nullable' => false, 'default' => '0.0000'],
-    'Base Subtotal With Discount'
-)->addColumn(
-    'tax_amount',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    ['nullable' => false, 'default' => '0.0000'],
-    'Tax Amount'
-)->addColumn(
-    'base_tax_amount',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    ['nullable' => false, 'default' => '0.0000'],
-    'Base Tax Amount'
-)->addColumn(
-    'shipping_amount',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    ['nullable' => false, 'default' => '0.0000'],
-    'Shipping Amount'
-)->addColumn(
-    'base_shipping_amount',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    ['nullable' => false, 'default' => '0.0000'],
-    'Base Shipping Amount'
-)->addColumn(
-    'shipping_tax_amount',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    [],
-    'Shipping Tax Amount'
-)->addColumn(
-    'base_shipping_tax_amount',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    [],
-    'Base Shipping Tax Amount'
-)->addColumn(
-    'discount_amount',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    ['nullable' => false, 'default' => '0.0000'],
-    'Discount Amount'
-)->addColumn(
-    'base_discount_amount',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    ['nullable' => false, 'default' => '0.0000'],
-    'Base Discount Amount'
-)->addColumn(
-    'grand_total',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    ['nullable' => false, 'default' => '0.0000'],
-    'Grand Total'
-)->addColumn(
-    'base_grand_total',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    ['nullable' => false, 'default' => '0.0000'],
-    'Base Grand Total'
-)->addColumn(
-    'customer_notes',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    '64k',
-    [],
-    'Customer Notes'
-)->addColumn(
-    'applied_taxes',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    '64k',
-    [],
-    'Applied Taxes'
-)->addColumn(
-    'discount_description',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    255,
-    [],
-    'Discount Description'
-)->addColumn(
-    'shipping_discount_amount',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    [],
-    'Shipping Discount Amount'
-)->addColumn(
-    'base_shipping_discount_amount',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    [],
-    'Base Shipping Discount Amount'
-)->addColumn(
-    'subtotal_incl_tax',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    [],
-    'Subtotal Incl Tax'
-)->addColumn(
-    'base_subtotal_total_incl_tax',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    [],
-    'Base Subtotal Total Incl Tax'
-)->addColumn(
-    'hidden_tax_amount',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    [],
-    'Hidden Tax Amount'
-)->addColumn(
-    'base_hidden_tax_amount',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    [],
-    'Base Hidden Tax Amount'
-)->addColumn(
-    'shipping_hidden_tax_amount',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    [],
-    'Shipping Hidden Tax Amount'
-)->addColumn(
-    'base_shipping_hidden_tax_amnt',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    [],
-    'Base Shipping Hidden Tax Amount'
-)->addColumn(
-    'shipping_incl_tax',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    [],
-    'Shipping Incl Tax'
-)->addColumn(
-    'base_shipping_incl_tax',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    [],
-    'Base Shipping Incl Tax'
-)->addIndex(
-    $this->getIdxName('sales_quote_address', ['quote_id']),
-    ['quote_id']
-)->addForeignKey(
-    $this->getFkName('sales_quote_address', 'quote_id', 'sales_quote', 'entity_id'),
-    'quote_id',
-    $this->getTable('sales_quote'),
-    'entity_id',
-    \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE,
-    \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE
-)->setComment(
-    'Sales Flat Quote Address'
-);
-$this->getConnection()->createTable($table);
-
-/**
- * Create table 'sales_quote_item'
- */
-$table = $this->getConnection()->newTable(
-    $this->getTable('sales_quote_item')
-)->addColumn(
-    'item_id',
-    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
-    null,
-    ['identity' => true, 'unsigned' => true, 'nullable' => false, 'primary' => true],
-    'Item Id'
-)->addColumn(
-    'quote_id',
-    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
-    null,
-    ['unsigned' => true, 'nullable' => false, 'default' => '0'],
-    'Quote Id'
-)->addColumn(
-    'created_at',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TIMESTAMP,
-    null,
-    ['nullable' => false, 'default' => \Magento\Framework\DB\Ddl\Table::TIMESTAMP_UPDATE],
-    'Created At'
-)->addColumn(
-    'updated_at',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TIMESTAMP,
-    null,
-    ['nullable' => false, 'default' => \Magento\Framework\DB\Ddl\Table::TIMESTAMP_UPDATE],
-    'Updated At'
-)->addColumn(
-    'product_id',
-    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
-    null,
-    ['unsigned' => true],
-    'Product Id'
-)->addColumn(
-    'store_id',
-    \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT,
-    null,
-    ['unsigned' => true],
-    'Store Id'
-)->addColumn(
-    'parent_item_id',
-    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
-    null,
-    ['unsigned' => true],
-    'Parent Item Id'
-)->addColumn(
-    'is_virtual',
-    \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT,
-    null,
-    ['unsigned' => true],
-    'Is Virtual'
-)->addColumn(
-    'sku',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    255,
-    [],
-    'Sku'
-)->addColumn(
-    'name',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    255,
-    [],
-    'Name'
-)->addColumn(
-    'description',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    '64k',
-    [],
-    'Description'
-)->addColumn(
-    'applied_rule_ids',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    '64k',
-    [],
-    'Applied Rule Ids'
-)->addColumn(
-    'additional_data',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    '64k',
-    [],
-    'Additional Data'
-)->addColumn(
-    'is_qty_decimal',
-    \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT,
-    null,
-    ['unsigned' => true],
-    'Is Qty Decimal'
-)->addColumn(
-    'no_discount',
-    \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT,
-    null,
-    ['unsigned' => true, 'default' => '0'],
-    'No Discount'
-)->addColumn(
-    'weight',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    ['default' => '0.0000'],
-    'Weight'
-)->addColumn(
-    'qty',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    ['nullable' => false, 'default' => '0.0000'],
-    'Qty'
-)->addColumn(
-    'price',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    ['nullable' => false, 'default' => '0.0000'],
-    'Price'
-)->addColumn(
-    'base_price',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    ['nullable' => false, 'default' => '0.0000'],
-    'Base Price'
-)->addColumn(
-    'custom_price',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    [],
-    'Custom Price'
-)->addColumn(
-    'discount_percent',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    ['default' => '0.0000'],
-    'Discount Percent'
-)->addColumn(
-    'discount_amount',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    ['default' => '0.0000'],
-    'Discount Amount'
-)->addColumn(
-    'base_discount_amount',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    ['default' => '0.0000'],
-    'Base Discount Amount'
-)->addColumn(
-    'tax_percent',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    ['default' => '0.0000'],
-    'Tax Percent'
-)->addColumn(
-    'tax_amount',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    ['default' => '0.0000'],
-    'Tax Amount'
-)->addColumn(
-    'base_tax_amount',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    ['default' => '0.0000'],
-    'Base Tax Amount'
-)->addColumn(
-    'row_total',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    ['nullable' => false, 'default' => '0.0000'],
-    'Row Total'
-)->addColumn(
-    'base_row_total',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    ['nullable' => false, 'default' => '0.0000'],
-    'Base Row Total'
-)->addColumn(
-    'row_total_with_discount',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    ['default' => '0.0000'],
-    'Row Total With Discount'
-)->addColumn(
-    'row_weight',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    ['default' => '0.0000'],
-    'Row Weight'
-)->addColumn(
-    'product_type',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    255,
-    [],
-    'Product Type'
-)->addColumn(
-    'base_tax_before_discount',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    [],
-    'Base Tax Before Discount'
-)->addColumn(
-    'tax_before_discount',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    [],
-    'Tax Before Discount'
-)->addColumn(
-    'original_custom_price',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    [],
-    'Original Custom Price'
-)->addColumn(
-    'redirect_url',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    255,
-    [],
-    'Redirect Url'
-)->addColumn(
-    'base_cost',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    [],
-    'Base Cost'
-)->addColumn(
-    'price_incl_tax',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    [],
-    'Price Incl Tax'
-)->addColumn(
-    'base_price_incl_tax',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    [],
-    'Base Price Incl Tax'
-)->addColumn(
-    'row_total_incl_tax',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    [],
-    'Row Total Incl Tax'
-)->addColumn(
-    'base_row_total_incl_tax',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    [],
-    'Base Row Total Incl Tax'
-)->addColumn(
-    'hidden_tax_amount',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    [],
-    'Hidden Tax Amount'
-)->addColumn(
-    'base_hidden_tax_amount',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    [],
-    'Base Hidden Tax Amount'
-)->addIndex(
-    $this->getIdxName('sales_quote_item', ['parent_item_id']),
-    ['parent_item_id']
-)->addIndex(
-    $this->getIdxName('sales_quote_item', ['product_id']),
-    ['product_id']
-)->addIndex(
-    $this->getIdxName('sales_quote_item', ['quote_id']),
-    ['quote_id']
-)->addIndex(
-    $this->getIdxName('sales_quote_item', ['store_id']),
-    ['store_id']
-)->addForeignKey(
-    $this->getFkName('sales_quote_item', 'parent_item_id', 'sales_quote_item', 'item_id'),
-    'parent_item_id',
-    $this->getTable('sales_quote_item'),
-    'item_id',
-    \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE,
-    \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE
-)->addForeignKey(
-    $this->getFkName('sales_quote_item', 'product_id', 'catalog_product_entity', 'entity_id'),
-    'product_id',
-    $this->getTable('catalog_product_entity'),
-    'entity_id',
-    \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE,
-    \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE
-)->addForeignKey(
-    $this->getFkName('sales_quote_item', 'quote_id', 'sales_quote', 'entity_id'),
-    'quote_id',
-    $this->getTable('sales_quote'),
-    'entity_id',
-    \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE,
-    \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE
-)->addForeignKey(
-    $this->getFkName('sales_quote_item', 'store_id', 'store', 'store_id'),
-    'store_id',
-    $this->getTable('store'),
-    'store_id',
-    \Magento\Framework\DB\Ddl\Table::ACTION_SET_NULL,
-    \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE
-)->setComment(
-    'Sales Flat Quote Item'
-);
-$this->getConnection()->createTable($table);
-
-/**
- * Create table 'sales_quote_address_item'
- */
-$table = $this->getConnection()->newTable(
-    $this->getTable('sales_quote_address_item')
-)->addColumn(
-    'address_item_id',
-    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
-    null,
-    ['identity' => true, 'unsigned' => true, 'nullable' => false, 'primary' => true],
-    'Address Item Id'
-)->addColumn(
-    'parent_item_id',
-    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
-    null,
-    ['unsigned' => true],
-    'Parent Item Id'
-)->addColumn(
-    'quote_address_id',
-    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
-    null,
-    ['unsigned' => true, 'nullable' => false, 'default' => '0'],
-    'Quote Address Id'
-)->addColumn(
-    'quote_item_id',
-    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
-    null,
-    ['unsigned' => true, 'nullable' => false, 'default' => '0'],
-    'Quote Item Id'
-)->addColumn(
-    'created_at',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TIMESTAMP,
-    null,
-    ['nullable' => false, 'default' => \Magento\Framework\DB\Ddl\Table::TIMESTAMP_INIT],
-    'Created At'
-)->addColumn(
-    'updated_at',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TIMESTAMP,
-    null,
-    ['nullable' => false, 'default' => \Magento\Framework\DB\Ddl\Table::TIMESTAMP_UPDATE],
-    'Updated At'
-)->addColumn(
-    'applied_rule_ids',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    '64k',
-    [],
-    'Applied Rule Ids'
-)->addColumn(
-    'additional_data',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    '64k',
-    [],
-    'Additional Data'
-)->addColumn(
-    'weight',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    ['default' => '0.0000'],
-    'Weight'
-)->addColumn(
-    'qty',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    ['nullable' => false, 'default' => '0.0000'],
-    'Qty'
-)->addColumn(
-    'discount_amount',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    ['default' => '0.0000'],
-    'Discount Amount'
-)->addColumn(
-    'tax_amount',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    ['default' => '0.0000'],
-    'Tax Amount'
-)->addColumn(
-    'row_total',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    ['nullable' => false, 'default' => '0.0000'],
-    'Row Total'
-)->addColumn(
-    'base_row_total',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    ['nullable' => false, 'default' => '0.0000'],
-    'Base Row Total'
-)->addColumn(
-    'row_total_with_discount',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    ['default' => '0.0000'],
-    'Row Total With Discount'
-)->addColumn(
-    'base_discount_amount',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    ['default' => '0.0000'],
-    'Base Discount Amount'
-)->addColumn(
-    'base_tax_amount',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    ['default' => '0.0000'],
-    'Base Tax Amount'
-)->addColumn(
-    'row_weight',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    ['default' => '0.0000'],
-    'Row Weight'
-)->addColumn(
-    'product_id',
-    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
-    null,
-    ['unsigned' => true],
-    'Product Id'
-)->addColumn(
-    'super_product_id',
-    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
-    null,
-    ['unsigned' => true],
-    'Super Product Id'
-)->addColumn(
-    'parent_product_id',
-    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
-    null,
-    ['unsigned' => true],
-    'Parent Product Id'
-)->addColumn(
-    'sku',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    255,
-    [],
-    'Sku'
-)->addColumn(
-    'image',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    255,
-    [],
-    'Image'
-)->addColumn(
-    'name',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    255,
-    [],
-    'Name'
-)->addColumn(
-    'description',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    '64k',
-    [],
-    'Description'
-)->addColumn(
-    'is_qty_decimal',
-    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
-    null,
-    ['unsigned' => true],
-    'Is Qty Decimal'
-)->addColumn(
-    'price',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    [],
-    'Price'
-)->addColumn(
-    'discount_percent',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    [],
-    'Discount Percent'
-)->addColumn(
-    'no_discount',
-    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
-    null,
-    ['unsigned' => true],
-    'No Discount'
-)->addColumn(
-    'tax_percent',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    [],
-    'Tax Percent'
-)->addColumn(
-    'base_price',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    [],
-    'Base Price'
-)->addColumn(
-    'base_cost',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    [],
-    'Base Cost'
-)->addColumn(
-    'price_incl_tax',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    [],
-    'Price Incl Tax'
-)->addColumn(
-    'base_price_incl_tax',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    [],
-    'Base Price Incl Tax'
-)->addColumn(
-    'row_total_incl_tax',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    [],
-    'Row Total Incl Tax'
-)->addColumn(
-    'base_row_total_incl_tax',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    [],
-    'Base Row Total Incl Tax'
-)->addColumn(
-    'hidden_tax_amount',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    [],
-    'Hidden Tax Amount'
-)->addColumn(
-    'base_hidden_tax_amount',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    [],
-    'Base Hidden Tax Amount'
-)->addIndex(
-    $this->getIdxName('sales_quote_address_item', ['quote_address_id']),
-    ['quote_address_id']
-)->addIndex(
-    $this->getIdxName('sales_quote_address_item', ['parent_item_id']),
-    ['parent_item_id']
-)->addIndex(
-    $this->getIdxName('sales_quote_address_item', ['quote_item_id']),
-    ['quote_item_id']
-)->addForeignKey(
-    $this->getFkName(
-        'sales_quote_address_item',
-        'quote_address_id',
-        'sales_quote_address',
-        'address_id'
-    ),
-    'quote_address_id',
-    $this->getTable('sales_quote_address'),
-    'address_id',
-    \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE,
-    \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE
-)->addForeignKey(
-    $this->getFkName(
-        'sales_quote_address_item',
-        'parent_item_id',
-        'sales_quote_address_item',
-        'address_item_id'
-    ),
-    'parent_item_id',
-    $this->getTable('sales_quote_address_item'),
-    'address_item_id',
-    \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE,
-    \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE
-)->addForeignKey(
-    $this->getFkName('sales_quote_address_item', 'quote_item_id', 'sales_quote_item', 'item_id'),
-    'quote_item_id',
-    $this->getTable('sales_quote_item'),
-    'item_id',
-    \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE,
-    \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE
-)->setComment(
-    'Sales Flat Quote Address Item'
-);
-$this->getConnection()->createTable($table);
-
-/**
- * Create table 'sales_quote_item_option'
- */
-$table = $this->getConnection()->newTable(
-    $this->getTable('sales_quote_item_option')
-)->addColumn(
-    'option_id',
-    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
-    null,
-    ['identity' => true, 'unsigned' => true, 'nullable' => false, 'primary' => true],
-    'Option Id'
-)->addColumn(
-    'item_id',
-    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
-    null,
-    ['unsigned' => true, 'nullable' => false],
-    'Item Id'
-)->addColumn(
-    'product_id',
-    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
-    null,
-    ['unsigned' => true, 'nullable' => false],
-    'Product Id'
-)->addColumn(
-    'code',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    255,
-    ['nullable' => false],
-    'Code'
-)->addColumn(
-    'value',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    '64k',
-    [],
-    'Value'
-)->addIndex(
-    $this->getIdxName('sales_quote_item_option', ['item_id']),
-    ['item_id']
-)->addForeignKey(
-    $this->getFkName('sales_quote_item_option', 'item_id', 'sales_quote_item', 'item_id'),
-    'item_id',
-    $this->getTable('sales_quote_item'),
-    'item_id',
-    \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE,
-    \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE
-)->setComment(
-    'Sales Flat Quote Item Option'
-);
-$this->getConnection()->createTable($table);
-
-/**
- * Create table 'sales_quote_payment'
- */
-$table = $this->getConnection()->newTable(
-    $this->getTable('sales_quote_payment')
-)->addColumn(
-    'payment_id',
-    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
-    null,
-    ['identity' => true, 'unsigned' => true, 'nullable' => false, 'primary' => true],
-    'Payment Id'
-)->addColumn(
-    'quote_id',
-    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
-    null,
-    ['unsigned' => true, 'nullable' => false, 'default' => '0'],
-    'Quote Id'
-)->addColumn(
-    'created_at',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TIMESTAMP,
-    null,
-    ['nullable' => false, 'default' => \Magento\Framework\DB\Ddl\Table::TIMESTAMP_INIT],
-    'Created At'
-)->addColumn(
-    'updated_at',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TIMESTAMP,
-    null,
-    ['nullable' => false, 'default' => \Magento\Framework\DB\Ddl\Table::TIMESTAMP_UPDATE],
-    'Updated At'
-)->addColumn(
-    'method',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    255,
-    [],
-    'Method'
-)->addColumn(
-    'cc_type',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    255,
-    [],
-    'Cc Type'
-)->addColumn(
-    'cc_number_enc',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    255,
-    [],
-    'Cc Number Enc'
-)->addColumn(
-    'cc_last_4',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    255,
-    [],
-    'Cc Last 4'
-)->addColumn(
-    'cc_cid_enc',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    255,
-    [],
-    'Cc Cid Enc'
-)->addColumn(
-    'cc_owner',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    255,
-    [],
-    'Cc Owner'
-)->addColumn(
-    'cc_exp_month',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    255,
-    ['unsigned' => true, 'default' => null, 'nullable' => true],
-    'Cc Exp Month'
-)->addColumn(
-    'cc_exp_year',
-    \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT,
-    null,
-    ['unsigned' => true, 'default' => '0'],
-    'Cc Exp Year'
-)->addColumn(
-    'cc_ss_owner',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    255,
-    [],
-    'Cc Ss Owner'
-)->addColumn(
-    'cc_ss_start_month',
-    \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT,
-    null,
-    ['unsigned' => true, 'default' => '0'],
-    'Cc Ss Start Month'
-)->addColumn(
-    'cc_ss_start_year',
-    \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT,
-    null,
-    ['unsigned' => true, 'default' => '0'],
-    'Cc Ss Start Year'
-)->addColumn(
-    'po_number',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    255,
-    [],
-    'Po Number'
-)->addColumn(
-    'additional_data',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    '64k',
-    [],
-    'Additional Data'
-)->addColumn(
-    'cc_ss_issue',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    255,
-    [],
-    'Cc Ss Issue'
-)->addColumn(
-    'additional_information',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    '64k',
-    [],
-    'Additional Information'
-)->addIndex(
-    $this->getIdxName('sales_quote_payment', ['quote_id']),
-    ['quote_id']
-)->addForeignKey(
-    $this->getFkName('sales_quote_payment', 'quote_id', 'sales_quote', 'entity_id'),
-    'quote_id',
-    $this->getTable('sales_quote'),
-    'entity_id',
-    \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE,
-    \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE
-)->setComment(
-    'Sales Flat Quote Payment'
-);
-$this->getConnection()->createTable($table);
-
-/**
- * Create table 'sales_quote_shipping_rate'
- */
-$table = $this->getConnection()->newTable(
-    $this->getTable('sales_quote_shipping_rate')
-)->addColumn(
-    'rate_id',
-    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
-    null,
-    ['identity' => true, 'unsigned' => true, 'nullable' => false, 'primary' => true],
-    'Rate Id'
-)->addColumn(
-    'address_id',
-    \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER,
-    null,
-    ['unsigned' => true, 'nullable' => false, 'default' => '0'],
-    'Address Id'
-)->addColumn(
-    'created_at',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TIMESTAMP,
-    null,
-    ['nullable' => false, 'default' => \Magento\Framework\DB\Ddl\Table::TIMESTAMP_INIT],
-    'Created At'
-)->addColumn(
-    'updated_at',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TIMESTAMP,
-    null,
-    ['nullable' => false, 'default' => \Magento\Framework\DB\Ddl\Table::TIMESTAMP_UPDATE],
-    'Updated At'
-)->addColumn(
-    'carrier',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    255,
-    [],
-    'Carrier'
-)->addColumn(
-    'carrier_title',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    255,
-    [],
-    'Carrier Title'
-)->addColumn(
-    'code',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    255,
-    [],
-    'Code'
-)->addColumn(
-    'method',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    255,
-    [],
-    'Method'
-)->addColumn(
-    'method_description',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    '64k',
-    [],
-    'Method Description'
-)->addColumn(
-    'price',
-    \Magento\Framework\DB\Ddl\Table::TYPE_DECIMAL,
-    '12,4',
-    ['nullable' => false, 'default' => '0.0000'],
-    'Price'
-)->addColumn(
-    'error_message',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    '64k',
-    [],
-    'Error Message'
-)->addColumn(
-    'method_title',
-    \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
-    '64k',
-    [],
-    'Method Title'
-)->addIndex(
-    $this->getIdxName('sales_quote_shipping_rate', ['address_id']),
-    ['address_id']
-)->addForeignKey(
-    $this->getFkName('sales_quote_shipping_rate', 'address_id', 'sales_quote_address', 'address_id'),
-    'address_id',
-    $this->getTable('sales_quote_address'),
-    'address_id',
-    \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE,
-    \Magento\Framework\DB\Ddl\Table::ACTION_CASCADE
-)->setComment(
-    'Sales Flat Quote Shipping Rate'
-);
-$this->getConnection()->createTable($table);
-
 /**
  * Create table 'sales_invoiced_aggregated'
  */
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/items/column/name.phtml b/app/code/Magento/Sales/view/adminhtml/templates/items/column/name.phtml
index 066991720f63137dbeebeab90887fd6d4f8e243c..dd9e46018498c2b2eff7f820ab54e1d92980f2ee 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/items/column/name.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/items/column/name.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
@@ -23,7 +26,7 @@
             <?php else: ?>
                 <?php $_option = $this->getFormattedOption($_option['value']); ?>
                 <?php echo $_option['value']; ?><?php if (isset($_option['remainder']) && $_option['remainder']): ?><span id="<?php echo $_dots = 'dots' . uniqid()?>"> ...</span><span id="<?php echo $_id = 'id' . uniqid()?>"><?php echo $_option['remainder'] ?></span>
-                    <script type="text/javascript">
+                    <script>
 require(['prototype'], function(){
 
     $('<?php echo $_id ?>').hide();
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/items/column/qty.phtml b/app/code/Magento/Sales/view/adminhtml/templates/items/column/qty.phtml
index b43ddc2c57a378d3a312ffaa5a519155cc02628b..77fb1ce783226decd83539945015b8312ec7d790 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/items/column/qty.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/items/column/qty.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php if ($_item = $this->getItem()): ?>
 <table cellspacing="0" class="qty-table">
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/items/price/row.phtml b/app/code/Magento/Sales/view/adminhtml/templates/items/price/row.phtml
index 6f8efd8ca688129680fd80f56bc266fe19120cdd..27eeaea2a092f6ab48b0f7cff2d32a27d0b0cbd1 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/items/price/row.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/items/price/row.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /** @var \Magento\Sales\Block\Adminhtml\Items\Column\DefaultColumn $this */
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/items/price/total.phtml b/app/code/Magento/Sales/view/adminhtml/templates/items/price/total.phtml
index 40500face1c56b2010bf4e17f5272f6d0990c936..09086c0477d09ae4ab7ee266ee83c58fd6da5dab 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/items/price/total.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/items/price/total.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /** @var \Magento\Sales\Block\Adminhtml\Items\Column\DefaultColumn $this */
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/items/price/unit.phtml b/app/code/Magento/Sales/view/adminhtml/templates/items/price/unit.phtml
index 52741f30012eac6c0d0f9f4be8e887c8fa5961d2..81d9dedfd189361a5c93c4ce07d6beabda2d712e 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/items/price/unit.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/items/price/unit.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /** @var \Magento\Sales\Block\Adminhtml\Items\Column\DefaultColumn $this */
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/items/renderer/default.phtml b/app/code/Magento/Sales/view/adminhtml/templates/items/renderer/default.phtml
index c8761f9b8bca77a550113eb48fbec71c8af4d6e8..1f7e6fb4a5e848569aeef8422aafc9aeb87875f6 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/items/renderer/default.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/items/renderer/default.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php echo $this->getItem()->getName() ?>
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/address/form.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/address/form.phtml
index 3716f80e4dfcca99fb70dadf8fd9d2e481be7f12..55c896f34a96df0c07495bcbfd9ff796919e6050 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/address/form.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/address/form.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <div class="message message-info">
     <div class="message-inner">
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/comments/view.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/comments/view.phtml
index 5278ecf681814c552437856545fe655390960b7b..23af5210b39fa5b765a16497d929e810d9259663 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/comments/view.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/comments/view.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php if ($_entity = $this->getEntity()): ?>
 <div id="comments_block">
@@ -39,7 +42,7 @@
     <?php endforeach; ?>
     </ul>
 </div>
-<script type="text/javascript">
+<script>
 require(['prototype'], function(){
 
 submitComment = function() {
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/create/abstract.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/create/abstract.phtml
index e34054186bc3eb012f849501151679f04d46c79d..9ce326d446a8aa7722287aa6a63a941e7a430afc 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/create/abstract.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/create/abstract.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <div class="fieldset-wrapper-title">
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/create/billing/method/form.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/create/billing/method/form.phtml
index 0fa00937db08b55d81b20bfa9225495e0f1e4288..3e6161a03889101c741ca6a6e2f53e7390d50701 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/create/billing/method/form.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/create/billing/method/form.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php if ($this->hasMethods()): ?>
 <div id="order-billing_method_form">
@@ -28,7 +31,7 @@
     <?php endforeach; ?>
     </dl>
 </div>
-<script type="text/javascript">
+<script>
     require(["Magento_Sales/order/create/form"], function(){
         order.setPaymentMethod('<?php echo $this->getSelectedMethodCode() ?>')
     });
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/create/comment.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/create/comment.phtml
index dc83c0a150e7129f1d5c0a88563b26790aed55d3..6b46e3e78d94ad73a9bbcd61123208b0d6d3d1fb 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/create/comment.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/create/comment.phtml
@@ -3,11 +3,14 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
  ?>
 <!--<h4 class="icon-head fieldset-legend <?php echo $this->getHeaderCssClass() ?>"><?php echo $this->getHeaderText() ?></h4>-->
 <label for="order-comment"><?php echo __('Order Comments') ?></label><br />
 <textarea style="width:98%; height:8em;" id="order-comment" name="order[comment][customer_note]" rows="2" cols="15"><?php echo $this->getCommentNote() ?></textarea>
-<script type="text/javascript">
+<script>
 	require(["Magento_Sales/order/create/form"], function(){
 		order.commentFieldsBind('order-comment')
 	});
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/create/coupons/form.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/create/coupons/form.phtml
index d8e031ba45b1a9c94426010f6892587217fe4a77..ea93c9e692d338eae58e4bb82c2bd99ccf287551 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/create/coupons/form.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/create/coupons/form.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
@@ -19,7 +22,7 @@
             <?php if ($this->getCouponCode()): ?>
             <p><strong><?php echo $this->escapeHtml($this->getCouponCode()) ?></strong> [<a href="#" onclick="order.applyCoupon(''); return false;" title="<?php echo __('Remove Coupon Code') ?>"><?php echo __('Remove') ?></a>]</p>
             <?php endif; ?>
-            <script type="text/javascript">
+            <script>
             require(["Magento_Sales/order/create/form"], function(){
 
                 order.overlay('shipping-method-overlay', <?php if ($this->getQuote()->isVirtual()): ?>false<?php else: ?>true<?php endif; ?>);
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/create/data.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/create/data.phtml
index 6c1376921981be70884c32227511d49be4385472..1e0cb9b37021ae5db71be1597b37430e556fa737 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/create/data.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/create/data.phtml
@@ -3,9 +3,12 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <div class="page-create-order">
-    <script type="text/javascript">
+    <script>
     require(["Magento_Sales/order/create/form"], function(){
         order.setCurrencySymbol('<?php echo $this->getCurrencySymbol($this->getCurrentCurrencyCode()) ?>')
     });
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/create/form.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/create/form.phtml
index e5b981914eb0898075a6a9976a372a152194f113..cc34fec1e78647c4372e6d0f4a3b624fe752af54 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/create/form.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/create/form.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /** @var \Magento\Sales\Block\Adminhtml\Order\Create\Form $this */
 ?>
 <form id="edit_form" data-order-config='<?php echo $this->getOrderDataJson() ?>' data-load-base-url="<?php echo $this->getLoadBlockUrl() ?>" action="<?php echo $this->getSaveUrl() ?>" method="post" enctype="multipart/form-data">
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/create/form/account.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/create/form/account.phtml
index de1afc4bacfbca15a509efd6a450ccec311477ff..c1f748bfaba80f3144bed21082601be983c6d84f 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/create/form/account.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/create/form/account.phtml
@@ -11,7 +11,7 @@
 <div class="form-inline" id="customer_account_fieds">
     <?php echo $this->getForm()->getHtml() ?>
 </div>
-<script type="text/javascript">
+<script>
 	require(["prototype", "Magento_Sales/order/create/form"], function(){
 		order.accountFieldsBind($('customer_account_fieds'));
 	});
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/create/form/address.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/create/form/address.phtml
index fe86b80072739696e90d012436f67b9b47d7b9f6..1adec92d5b2415f923c15df435774d3685ae1f2e 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/create/form/address.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/create/form/address.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * @var \Magento\Sales\Block\Adminhtml\Order\Create\Billing\Address|\Magento\Sales\Block\Adminhtml\Order\Create\Shipping\Address $this
  */
@@ -11,7 +13,7 @@ if ($this->getIsShipping()):
     $_fieldsContainerId = 'order-shipping_address_fields';
     $_addressChoiceContainerId = 'order-shipping_address_choice';
     ?>
-    <script type="text/javascript">
+    <script>
     require(["Magento_Sales/order/create/form"], function(){
 
         order.shippingAddressContainer = '<?php echo $_fieldsContainerId ?>';
@@ -24,7 +26,7 @@ else:
     $_fieldsContainerId = 'order-billing_address_fields';
     $_addressChoiceContainerId = 'order-billing_address_choice';
     ?>
-    <script type="text/javascript">
+    <script>
         require(["Magento_Sales/order/create/form"], function(){
             order.billingAddressContainer = '<?php echo $_fieldsContainerId ?>';
         });
@@ -70,7 +72,7 @@ endif; ?>
     </div>
     <?php $hideElement = 'address-' . ($this->getIsShipping() ? 'shipping' : 'billing') . '-overlay'; ?>
     <div style="display:none;" id="<?php echo $hideElement ?>" class="overlay"><span><?php echo __('You don\'t need to select a shipping address.') ?></span></div>
-    <script type="text/javascript">
+    <script>
         require(["Magento_Sales/order/create/form"], function(){
                 order.bindAddressFields('<?php echo $_fieldsContainerId ?>');
                 order.bindAddressFields('<?php echo $_addressChoiceContainerId ?>');
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/create/giftmessage.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/create/giftmessage.phtml
index 7d6a8de684c49436e0cac1772dd3796636e2be0b..8b0bd2ceebf7aba2dfb4265a325074dca1ca6182 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/create/giftmessage.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/create/giftmessage.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php if ($this->helper('Magento\GiftMessage\Helper\Message')->getIsMessagesAvailable('main', $this->getQuote(), $this->getStoreId())): ?>
 <?php $_items = $this->getItems(); ?>
@@ -17,7 +20,7 @@
             </div>
         <?php endif; ?>
     </fieldset>
-    <script type="text/javascript">
+    <script>
 require(['Magento_Sales/order/create/form'], function(){
 
     order.giftmessageFieldsBind('order-giftmessage');
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/create/items.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/create/items.phtml
index d67ec6012c27829dd018a0bd040cc22f63bda976..40b50025b94fe513f33ef4d93b7a859276c9eb4d 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/create/items.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/create/items.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <div class="fieldset-wrapper-title">
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/create/items/grid.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/create/items/grid.phtml
index 732b310270c053fd7b800e00fcebceb6cfd48a56..a7010061de1460218f772f6eb95141b229309a25 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/create/items/grid.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/create/items/grid.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
@@ -155,7 +157,7 @@
         <p><?php echo $this->getButtonHtml(__('Update Items and Qty\'s'), 'order.itemsUpdate()'); ?></p>
     </div>
     <div class="order-coupons" id="order-coupons"><?php echo $this->getChildHtml();?></div>
-    <script type="text/javascript">
+    <script>
 require([
     'Magento_Sales/order/create/form'
 ], function(){
@@ -165,7 +167,7 @@ require([
 </div>
 
 <?php if ($this->isGiftMessagesAvailable()) : ?>
-<script type="text/javascript">
+<script>
 require([
     "prototype",
     "Magento_Sales/order/giftoptions_tooltip"
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/create/items/price/row.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/create/items/price/row.phtml
index a4eaf9a360a983a7e7450c606c38c87f18069f3a..e14e843a1564b47599f594898ea27b717da8317c 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/create/items/price/row.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/create/items/price/row.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /** @var \Magento\Sales\Block\Adminhtml\Order\Create\Items\Grid $this */
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/create/items/price/total.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/create/items/price/total.phtml
index 7f959c1e552c5a2f752ac63b2c373048ddc151aa..96339794392a140607696b8020a511e363be118d 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/create/items/price/total.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/create/items/price/total.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /** @var \Magento\Sales\Block\Adminhtml\Order\Create\Items\Grid $this */
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/create/items/price/unit.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/create/items/price/unit.phtml
index 9718766a827fe1e966fc7b89d25e02cf66cac20d..9d04c05f8a34c074b60156d6cc5109a03e64d0fb 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/create/items/price/unit.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/create/items/price/unit.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /** @var \Magento\Sales\Block\Adminhtml\Order\Create\Items\Grid $this */
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/create/js.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/create/js.phtml
index b9f17a0fd0e8f5e6d8cbb31a05ea0876d36f361a..9db42b8191d4d4d999a7b2c5756e9d351322c5a8 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/create/js.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/create/js.phtml
@@ -4,7 +4,7 @@
  * See COPYING.txt for license details.
  */
  ?>
-<script type="text/javascript">
+<script>
 require([
     "prototype",
     "Magento_Sales/order/create/form",
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/create/newsletter/form.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/create/newsletter/form.phtml
index 21c9c9c2996213774c3eca7b2f07f75a3a94caba..5d1982e987dcc59f13c285e76b76f8f2810191f3 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/create/newsletter/form.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/create/newsletter/form.phtml
@@ -3,5 +3,8 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <input type="checkbox" name="newsletter:subscribe"> <label for="newsletter:subscribe" style="width: 90%; float: none;"><?php echo __('Subscribe to Newsletter'); ?></label><br/>
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/create/shipping/method/form.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/create/shipping/method/form.phtml
index b26a0b9597337acf082f63bfa372205e2c53449d..74b952f041732f9d5df7fc647f03d112fa8ad697 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/create/shipping/method/form.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/create/shipping/method/form.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\Sales\Block\Adminhtml\Order\Create\Shipping\Method\Form */ ?>
 <?php $_shippingRateGroups = $this->getShippingRates(); ?>
@@ -66,7 +69,7 @@
             </a>
         </div>
     <?php else: ?>
-        <script type="text/javascript">
+        <script>
 require(['prototype'], function(){
     $('order-shipping-method-choose').show();
 });
@@ -83,7 +86,7 @@ require(['prototype'], function(){
     </div>
 <?php endif; ?>
 <div style="display:none;" id="shipping-method-overlay" class="overlay"><span><?php echo __('You don\'t need to select a shipping method.') ?></span></div>
-<script type="text/javascript">
+<script>
     require(["Magento_Sales/order/create/form"], function(){
 
         order.overlay('shipping-method-overlay', <?php if ($this->getQuote()->isVirtual()): ?>false<?php else: ?>true<?php endif; ?>);
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/create/sidebar.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/create/sidebar.phtml
index 948c6be8b567117c3e7511f75f91bfe691be2499..088cbd658045be76b7b21168407945a631bebb11 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/create/sidebar.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/create/sidebar.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Sales\Block\Adminhtml\Order\Create\Sidebar */
 ?>
 <div class="customer-current-activity-inner">
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/create/sidebar/items.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/create/sidebar/items.phtml
index d81a436ee3fb17eea6dc8df15b25a6b705eb40ae..2da0c29c1ec49bd8e97f1d32d0104cea569a081e 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/create/sidebar/items.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/create/sidebar/items.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /* @var $this \Magento\Sales\Block\Adminhtml\Order\Create\Sidebar\AbstractSidebar */ ?>
 <div class="create-order-sidebar-block" id="sidebar_data_<?php echo $this->getDataId() ?>">
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/create/store/select.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/create/store/select.phtml
index 91551cac984569c7413b33c36a6007fa4cbc8ed3..a1939afd258b0381ab44d36c76d9f5e0250989a0 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/create/store/select.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/create/store/select.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /* @var $this \Magento\Sales\Block\Adminhtml\Order\Create\Store\Select */ ?>
 <div class="store-scope form-inline">
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/create/totals.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/create/totals.phtml
index 1d896ebb79804e912828f6a753c3a4dfd6efd123..60b6e11da34a41644a7a44b8d399be61dd33e614 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/create/totals.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/create/totals.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <legend class="legend"><span><?php echo __('Order Totals') ?></span></legend>
 <table class="data-table" cellspacing="0">
@@ -26,7 +29,7 @@
     <div class="actions"><?php echo $this->getButtonHtml(__('Submit Order'), 'order.submit()', 'save primary'); ?></div>
 </div>
 
-<script type="text/javascript">
+<script>
 require(['prototype'], function(){
 
 //<![CDATA[
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/create/totals/default.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/create/totals/default.phtml
index 93e9f0acd3d2615ad12b1af126c4ece07081288b..76dd4eeb66842626c71aa3e1a13ca85c27432fe7 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/create/totals/default.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/create/totals/default.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <tr class="<?php echo $this->getTotal()->getCode(); ?> row-totals">
     <td style="<?php echo $this->getTotal()->getStyle() ?>" class="a-right" colspan="<?php echo $this->getColspan(); ?>">
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/create/totals/grandtotal.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/create/totals/grandtotal.phtml
index 62870a09cfc0e5931e378436ce4874daa7939d5a..bd75b807f45247b6647f499d37b636426ba9a115 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/create/totals/grandtotal.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/create/totals/grandtotal.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /**
  * @var $this \Magento\Tax\Block\Checkout\Grandtotal
  * @see \Magento\Tax\Block\Checkout\Grandtotal
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/create/totals/shipping.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/create/totals/shipping.phtml
index f6dd2d460ef0b844a86ba20691bede31967682b4..951a4a388b95f11cf93286f6631bec9f4235a8ee 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/create/totals/shipping.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/create/totals/shipping.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /**
  * @var $this \Magento\Tax\Block\Checkout\Shipping
  * @see \Magento\Tax\Block\Checkout\Shipping
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/create/totals/subtotal.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/create/totals/subtotal.phtml
index b329c6917624f50492c26064cc6752816bcc71a6..c3c5e3ed5eef699cf11422ed568333aedd08a607 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/create/totals/subtotal.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/create/totals/subtotal.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /**
  * @var $this \Magento\Sales\Block\Adminhtml\Order\Create\Totals\Subtotal
  * @see \Magento\Sales\Block\Adminhtml\Order\Create\Totals\Subtotal
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/create/totals/tax.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/create/totals/tax.phtml
index f9777da229597e5d83795bdc9e9394b9261bbaea..7a5f483c0ec25f35fc3a61b187fe71312462808a 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/create/totals/tax.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/create/totals/tax.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php global $taxIter; $taxIter++; ?>
 <?php if ($this->helper('Magento\Tax\Helper\Data')->displayFullSummary()): ?>
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/creditmemo/create/form.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/creditmemo/create/form.phtml
index 2d76548f8498a668443ec65030a3a8f40e05d09d..ff4bbded0347e4b39672a2db77f9fe36e4e8a370 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/creditmemo/create/form.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/creditmemo/create/form.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <form id="edit_form" method="post" action="<?php echo $this->getSaveUrl() ?>">
     <?php echo $this->getBlockHtml('formkey')?>
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/creditmemo/create/items.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/creditmemo/create/items.phtml
index d717e5da05b6bcb7b30a09325a85806ef4bcbda4..6ce7f6e3ac679c4724becf0ff958b86b067e1533 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/creditmemo/create/items.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/creditmemo/create/items.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php $_items = $this->getCreditmemo()->getAllItems() ?>
 
@@ -105,7 +108,7 @@
     </div>
 </div>
 
-<script type="text/javascript">
+<script>
 require(['jquery', 'prototype'], function(jQuery){
 
 //<![CDATA[
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/creditmemo/create/items/renderer/default.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/creditmemo/create/items/renderer/default.phtml
index a285db5e369d36ce5e15a1f74ef9cc84ffa7cbc5..3f778b83f086995f3a3c7b671f2a6368e7f0a111 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/creditmemo/create/items/renderer/default.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/creditmemo/create/items/renderer/default.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\Sales\Block\Adminhtml\Items\Renderer\DefaultRenderer */ ?>
 <?php $_item = $this->getItem() ?>
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/creditmemo/create/totals/adjustments.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/creditmemo/create/totals/adjustments.phtml
index 8cb9908adbc8fb8084f034df190b349601f14e1b..61cf98f47fcc79f8706f67712bee99fc589b84b8 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/creditmemo/create/totals/adjustments.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/creditmemo/create/totals/adjustments.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php $_source  = $this->getSource() ?>
 <?php if ($_source): ?>
@@ -17,7 +20,7 @@
     <tr>
         <td class="label"><?php echo __('Adjustment Fee') ?><div id="adjustment_negative_adv"></div></td>
         <td><input type="text" name="creditmemo[adjustment_negative]" value="<?php echo $_source->getBaseAdjustmentFeeNegative()*1 ?>" class="input-text not-negative-amount" id="adjustment_negative"/>
-        <script type="text/javascript">
+        <script>
 require(['prototype'], function(jQuery){
 
 //<![CDATA[
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/creditmemo/view/form.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/creditmemo/view/form.phtml
index 430201c0cdbacb3636e1abf7ac06aaa9c5594a93..57f80e69f8a59f95f45d3cb3076092708f100d40 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/creditmemo/view/form.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/creditmemo/view/form.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php  $_order = $this->getCreditmemo()->getOrder() ?>
 <?php echo $this->getChildHtml('order_info') ?>
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/creditmemo/view/items.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/creditmemo/view/items.phtml
index 56fc1ae70c183ed1a83e650046c580b6e4ff7b91..967fc53635ce0fc553f0f244da682b4d9b894381 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/creditmemo/view/items.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/creditmemo/view/items.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php $_items = $this->getCreditmemo()->getAllItems() ?>
 <div class="fieldset-wrapper">
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/creditmemo/view/items/renderer/default.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/creditmemo/view/items/renderer/default.phtml
index d29d907d1f2b836aecc13c48178bd95d863bf012..83555ad4117dd063c66f02bcebcd473d09f06e42 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/creditmemo/view/items/renderer/default.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/creditmemo/view/items/renderer/default.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\Sales\Block\Adminhtml\Items\Renderer\DefaultRenderer */ ?>
 <?php $_item = $this->getItem() ?>
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/details.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/details.phtml
index 02cba53a043cf43afdf8cfe6e0b8c329b34e5d84..add08518ea7722c11c5fb361913d21d9377556f3 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/details.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/details.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /*
 store view name = $_order->getStore()->getName()
 web site name = $_order->getStore()->getWebsite()->getName()
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/giftoptions.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/giftoptions.phtml
index c114d5ea2338f4b9b4e1a81fcb98dc947e291915..74245e781e2485dad628ea890f6f93ec62d1c909 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/giftoptions.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/giftoptions.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php if ($this->getChildHtml()): ?>
 <div class="fieldset-wrapper order-gift-options clearfix">
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/invoice/create/form.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/invoice/create/form.phtml
index 46bad8544a1b56c0c32925681c99a86107ec3bbc..a5a24c7ca6cf3b0884d038f73c0bcdf0aa5e7cc5 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/invoice/create/form.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/invoice/create/form.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <form id="edit_form" method="post" action="<?php echo $this->getSaveUrl() ?>">
     <?php echo $this->getBlockHtml('formkey')?>
@@ -67,7 +70,7 @@
         <?php echo $this->getChildHtml('order_items') ?>
     </div>
 </form>
-<script type="text/javascript">
+<script>
 require(['prototype'], function(){
 
 //<![CDATA[
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/invoice/create/items.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/invoice/create/items.phtml
index 7317bfe7bd3a5afc7147236b433a23f6a02a2126..ea8cca9f3ee42551e311f3f261bec9f90ae42236 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/invoice/create/items.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/invoice/create/items.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <div class="fieldset-wrapper">
@@ -114,7 +117,7 @@
     </div>
 </div>
 
-<script type="text/javascript">
+<script>
 require(['prototype'], function(){
 
 //<![CDATA[
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/invoice/create/items/renderer/default.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/invoice/create/items/renderer/default.phtml
index a04f1e717f45ba760233dc7505d92d07f12bbfe5..44ad6f88e4e15c8e6308c0764f18fd28847737df 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/invoice/create/items/renderer/default.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/invoice/create/items/renderer/default.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\Sales\Block\Adminhtml\Items\Renderer\DefaultRenderer */ ?>
 <?php $_item = $this->getItem() ?>
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/invoice/view/form.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/invoice/view/form.phtml
index 0273514e8f4b5aebfe03f8a150d0adf9797df644..bed963601c833effc4beed0b091ae279f645fd37 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/invoice/view/form.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/invoice/view/form.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php $_invoice = $this->getInvoice() ?>
 <?php $_order = $_invoice->getOrder() ?>
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/invoice/view/items.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/invoice/view/items.phtml
index de508d3645d4e3a830971a73732878051eedac8e..f0649065e7ff65c73216ed25e4f15e5af7a6d4de 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/invoice/view/items.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/invoice/view/items.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <div class="grid">
     <table cellspacing="0" class="data order-tables">
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/invoice/view/items/renderer/default.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/invoice/view/items/renderer/default.phtml
index 5c78e0b33e58ecba64d34dd79e7e34033cf66023..6bee257e4d551951e4839001d374b19508e26751 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/invoice/view/items/renderer/default.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/invoice/view/items/renderer/default.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\Sales\Block\Adminhtml\Items\Renderer\DefaultRenderer */ ?>
 <?php $_item = $this->getItem() ?>
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/totalbar.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/totalbar.phtml
index 41226bc7a5608748c48b407ae16830eed057b407..3ea8064fd4835c281e01c683327a8abcd81023a5 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/totalbar.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/totalbar.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php if (sizeof($this->getTotals()) > 0): ?>
 <table cellspacing="0" class="items-to-invoice">
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/totals.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/totals.phtml
index e0fad63857514df11275862b3254f600fcfa5167..ac7182795609a6bd31cb6862b7d00fab4ea85658 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/totals.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/totals.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /*$_source = $this->getSource(); ?>
 <?php $this->setPriceDataObject($_source) ?>
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/totals/discount.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/totals/discount.phtml
index 23e6ce604afb9cb5928f0d0a798acf452e33e4bd..c4ab4aa4746e4f0af1a4f7310406a809fbea2397 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/totals/discount.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/totals/discount.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php $_source  = $this->getSource() ?>
 <?php $_order   = $this->getOrder() ?>
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/totals/due.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/totals/due.phtml
index 9b5a208a66c9741d125f7c05978824d9b09ebd36..f6cd709024606803300a0ef4b6337742577e1f76 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/totals/due.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/totals/due.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php if ($this->getCanDisplayTotalDue()): ?>
 <tr>
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/totals/grand.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/totals/grand.phtml
index ca1a20df8831d8d3325f7514d7d051043bb7e000..6eaf0785fb29bacc0efddb0e4cca15431f6f7557 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/totals/grand.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/totals/grand.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php $_source  = $this->getSource() ?>
 <?php $this->setPriceDataObject($_source) ?>
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/totals/item.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/totals/item.phtml
index 0b1ee30ebe37b7b919a6d69e8a3478fc7a4c5eb1..fb5363b2e4ee05e98495e2269aae6599980e7e76 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/totals/item.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/totals/item.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php $_source  = $this->getSource() ?>
 <?php $this->setPriceDataObject($_source) ?>
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/totals/paid.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/totals/paid.phtml
index 29d7bab5759b95ed6ab4b375b195599a7e512463..bfa6bb1e6c8cae277ec475b32c114077416885a5 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/totals/paid.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/totals/paid.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php if ($this->getCanDisplayTotalPaid()): ?>
 <tr>
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/totals/refunded.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/totals/refunded.phtml
index 3f24da57b05d4f84cae991f08ae23c9e9990e26e..3f95c981f60881f2192feb7e3b9e6359403dad2c 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/totals/refunded.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/totals/refunded.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php if ($this->getCanDisplayTotalRefunded()): ?>
 <tr>
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/totals/shipping.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/totals/shipping.phtml
index 3f7b10e905a9a741803d7cd6c5cde49a17208c80..06cd186baa17794564893cf320b3938a41c76c31 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/totals/shipping.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/totals/shipping.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php $_source  = $this->getSource() ?>
 <?php $this->setPriceDataObject($_source) ?>
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/totals/tax.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/totals/tax.phtml
index 2607277dc3be8e741cfdc6a7da7ff2c83a1cde9b..c7bb38ddcb4029a05cc2c1a9e004755b406e633c 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/totals/tax.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/totals/tax.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Sales\Block\Adminhtml\Order\Totals\Tax */
 ?>
 <?php
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/view/giftmessage.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/view/giftmessage.phtml
index e9c3f2186dd6d09a6054b519fee1afc9b4f61bd0..0b19be4ac4dfcd0cd6f89c2c559c67986e925914 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/view/giftmessage.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/view/giftmessage.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php if ($this->canDisplayGiftmessage()): ?>
 <?php $_required = $this->getMessage()->getMessage() != ''?>
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/view/history.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/view/history.phtml
index ea8d73c329a6f5034cab88ce848329bba49ffd75..bc0ca07df458a3bda3a54dbd571322adf2095f51 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/view/history.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/view/history.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <div id="order_history_block">
     <?php if ($this->canAddComment()):?>
@@ -55,7 +58,7 @@
         </li>
     <?php endforeach; ?>
     </ul>
-    <script type="text/javascript">
+    <script>
 require(['prototype'], function(){
 
         if($('order_status'))$('order_status').update('<?php echo $this->getOrder()->getStatusLabel() ?>');
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/view/info.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/view/info.phtml
index 919d90c65c2adec3943a216c12929f7a9818506a..de2a3fe86d7261ec4562dafd7b7d281b25c0ff75 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/view/info.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/view/info.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\Sales\Block\Adminhtml\Order\View\Info */ ?>
 <?php $_order = $this->getOrder() ?>
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/view/items.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/view/items.phtml
index c483b77824ed628b7e216501a1d23553ed6ee652..ec03b899edf0087d5388415dd23664b0f32135f2 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/view/items.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/view/items.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php $_order = $this->getOrder() ?>
 <div class="grid">
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/view/items/renderer/default.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/view/items/renderer/default.phtml
index d760c722c741b5e351dafb400374031bccd3accf..290ccba64a12204bbb87ec317a8d439c13738738 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/view/items/renderer/default.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/view/items/renderer/default.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\Sales\Block\Adminhtml\Order\View\Items\Renderer\DefaultRenderer */ ?>
 <?php $_item = $this->getItem() ?>
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/view/tab/history.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/view/tab/history.phtml
index 4ab2cc74c6a99d3031af98e655684e84aefb5616..587d80e27d68f9b3681194c1455238b55bc3a28b 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/view/tab/history.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/view/tab/history.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <div class="fieldset-wrapper">
     <ul class="note-list">
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/order/view/tab/info.phtml b/app/code/Magento/Sales/view/adminhtml/templates/order/view/tab/info.phtml
index cfd0a5ae0e84006a9e6acc5840352a535e545b7d..772dd3dd12c07ee76f5531998ecbd0239c3d848a 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/order/view/tab/info.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/order/view/tab/info.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\Sales\Block\Adminhtml\Order\View\Tab\Info */ ?>
 <?php $_order = $this->getOrder() ?>
@@ -71,7 +74,7 @@
 
 <?php echo $this->getChildHtml('popup_window');?>
 
-<script type="text/javascript">
+<script>
 require([
     "prototype",
     "Magento_Sales/order/giftoptions_tooltip"
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/page/js/components.phtml b/app/code/Magento/Sales/view/adminhtml/templates/page/js/components.phtml
index 3fbf38c208e782479ef692a4de6647ae58b51a1a..e4b6ea73bdcc3d4800ff7c43155f3aba3bcc30b8 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/page/js/components.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/page/js/components.phtml
@@ -5,5 +5,8 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php echo $this->getChildHtml() ?>
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/rss/order/grid/link.phtml b/app/code/Magento/Sales/view/adminhtml/templates/rss/order/grid/link.phtml
index a33965d1e047c9d74b5f6074177965c643a95432..54f7be34d7c7043d557e34fa58504670d3ed8fe1 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/rss/order/grid/link.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/rss/order/grid/link.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Sales\Block\Adminhtml\Rss\Order\Grid\Link */
 ?>
 <?php if ($this->isRssAllowed() && $this->getLink()): ?>
diff --git a/app/code/Magento/Sales/view/adminhtml/templates/transactions/detail.phtml b/app/code/Magento/Sales/view/adminhtml/templates/transactions/detail.phtml
index 15c09aa0713e5b4bc96fad9843415728b2aad0c2..7d3564c822b40227d1ddf4481f582d492b218b02 100644
--- a/app/code/Magento/Sales/view/adminhtml/templates/transactions/detail.phtml
+++ b/app/code/Magento/Sales/view/adminhtml/templates/transactions/detail.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <div class="page-actions"><?php echo $this->getButtonsHtml() ?></div>
 <div class="fieldset-wrapper">
diff --git a/app/code/Magento/Sales/view/frontend/layout/sales_order_creditmemo.xml b/app/code/Magento/Sales/view/frontend/layout/sales_order_creditmemo.xml
index 1e46789334ee8b657b059932d8ffff4618334bcf..d4b114ec15c04ed3e329222a17d1951111cb0572 100644
--- a/app/code/Magento/Sales/view/frontend/layout/sales_order_creditmemo.xml
+++ b/app/code/Magento/Sales/view/frontend/layout/sales_order_creditmemo.xml
@@ -19,7 +19,7 @@
             </container>
         </referenceContainer>
         <referenceContainer name="content">
-            <block class="Magento\Sales\Block\Order\Creditmemo" name="sales.order.creditmemo" cacheable="false">
+            <block class="Magento\Sales\Block\Order\Creditmemo" name="sales.order.creditmemo" cacheable="false" after="sales.order.info.links">
                 <block class="Magento\Sales\Block\Order\Creditmemo\Items" name="creditmemo_items" template="order/creditmemo/items.phtml">
                     <block class="Magento\Framework\View\Element\RendererList" name="sales.order.creditmemo.renderers" as="renderer.list"/>
                     <block class="Magento\Sales\Block\Order\Creditmemo\Totals" name="creditmemo_totals" template="order/totals.phtml">
diff --git a/app/code/Magento/Sales/view/frontend/layout/sales_order_invoice.xml b/app/code/Magento/Sales/view/frontend/layout/sales_order_invoice.xml
index cfbc4141494667d5f2f88c04bc263f2850b1070d..b07327bdf208b13928f5470359e82c0b15b1a529 100644
--- a/app/code/Magento/Sales/view/frontend/layout/sales_order_invoice.xml
+++ b/app/code/Magento/Sales/view/frontend/layout/sales_order_invoice.xml
@@ -19,7 +19,7 @@
             </container>
         </referenceContainer>
         <referenceContainer name="content">
-            <block class="Magento\Sales\Block\Order\Invoice" name="sales.order.invoice" cacheable="false">
+            <block class="Magento\Sales\Block\Order\Invoice" name="sales.order.invoice" cacheable="false" after="sales.order.info.links">
                 <block class="Magento\Sales\Block\Order\Invoice\Items" name="invoice_items" template="order/invoice/items.phtml">
                     <block class="Magento\Framework\View\Element\RendererList" name="sales.order.invoice.renderers" as="renderer.list"/>
                     <block class="Magento\Sales\Block\Order\Invoice\Totals" name="invoice_totals" template="order/totals.phtml">
diff --git a/app/code/Magento/Sales/view/frontend/layout/sales_order_view.xml b/app/code/Magento/Sales/view/frontend/layout/sales_order_view.xml
index 59bc14f79d264c67017336137f767ad7acede12f..ac830e79cbe5149ca18a59185bcc3e9cab21f460 100644
--- a/app/code/Magento/Sales/view/frontend/layout/sales_order_view.xml
+++ b/app/code/Magento/Sales/view/frontend/layout/sales_order_view.xml
@@ -23,7 +23,7 @@
         </referenceContainer>
         <referenceContainer name="content">
             <block class="Magento\Sales\Block\Order\View" name="order.comments" template="order/order_comments.phtml" before="sales.order.info.links"/>
-            <block class="Magento\Sales\Block\Order\View" name="sales.order.view" cacheable="false">
+            <block class="Magento\Sales\Block\Order\View" name="sales.order.view" cacheable="false" after="sales.order.info.links">
                 <block class="Magento\Sales\Block\Order\Items" name="order_items" template="order/items.phtml">
                     <block class="Magento\Framework\View\Element\RendererList" name="sales.order.items.renderers" as="renderer.list"/>
                     <block class="Magento\Sales\Block\Order\Totals" name="order_totals" template="order/totals.phtml">
diff --git a/app/code/Magento/Sales/view/frontend/templates/email/creditmemo/items.phtml b/app/code/Magento/Sales/view/frontend/templates/email/creditmemo/items.phtml
index 71c907fdb4f0eb668255d48e35e5a27433a08cae..f748fbf43af4bab2be37df2b177c3fb4f3dfa31e 100644
--- a/app/code/Magento/Sales/view/frontend/templates/email/creditmemo/items.phtml
+++ b/app/code/Magento/Sales/view/frontend/templates/email/creditmemo/items.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php $_creditmemo = $this->getCreditmemo() ?>
 <?php $_order      = $this->getOrder() ?>
diff --git a/app/code/Magento/Sales/view/frontend/templates/email/invoice/items.phtml b/app/code/Magento/Sales/view/frontend/templates/email/invoice/items.phtml
index 29ba88018f614d90a23aaeec5e390417a2de42d1..68838929ac6858decac6756b3fd8ce5a6122dd08 100644
--- a/app/code/Magento/Sales/view/frontend/templates/email/invoice/items.phtml
+++ b/app/code/Magento/Sales/view/frontend/templates/email/invoice/items.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php $_invoice = $this->getInvoice() ?>
 <?php $_order   = $this->getOrder() ?>
diff --git a/app/code/Magento/Sales/view/frontend/templates/email/items.phtml b/app/code/Magento/Sales/view/frontend/templates/email/items.phtml
index 3185abac3d7f7b7f02625f5afff33aebd94ae6d1..5b97b7c93db76a8f4b4c9cf7252216e1877a63f4 100644
--- a/app/code/Magento/Sales/view/frontend/templates/email/items.phtml
+++ b/app/code/Magento/Sales/view/frontend/templates/email/items.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php $_order = $this->getOrder() ?>
 <?php if ($_order): ?>
diff --git a/app/code/Magento/Sales/view/frontend/templates/email/items/creditmemo/default.phtml b/app/code/Magento/Sales/view/frontend/templates/email/items/creditmemo/default.phtml
index 48c4467de8af92ad88eb8fdc8bbd88f906bfa4f7..7d7ded1758e67ada1a9d934cdfa52a63d3ee1939 100644
--- a/app/code/Magento/Sales/view/frontend/templates/email/items/creditmemo/default.phtml
+++ b/app/code/Magento/Sales/view/frontend/templates/email/items/creditmemo/default.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php $_item = $this->getItem() ?>
 <?php $_order = $this->getItem()->getOrder(); ?>
diff --git a/app/code/Magento/Sales/view/frontend/templates/email/items/invoice/default.phtml b/app/code/Magento/Sales/view/frontend/templates/email/items/invoice/default.phtml
index 48c4467de8af92ad88eb8fdc8bbd88f906bfa4f7..7d7ded1758e67ada1a9d934cdfa52a63d3ee1939 100644
--- a/app/code/Magento/Sales/view/frontend/templates/email/items/invoice/default.phtml
+++ b/app/code/Magento/Sales/view/frontend/templates/email/items/invoice/default.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php $_item = $this->getItem() ?>
 <?php $_order = $this->getItem()->getOrder(); ?>
diff --git a/app/code/Magento/Sales/view/frontend/templates/email/items/order/default.phtml b/app/code/Magento/Sales/view/frontend/templates/email/items/order/default.phtml
index 15a6a7e4fc30ea5124c63782e5181b4e84578136..fa77988ed811a5edf361954368efcaab186f72f6 100644
--- a/app/code/Magento/Sales/view/frontend/templates/email/items/order/default.phtml
+++ b/app/code/Magento/Sales/view/frontend/templates/email/items/order/default.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Sales\Block\Order\Email\Items\DefaultItems */
 
 /** @var $_item \Magento\Sales\Model\Order\Item */
diff --git a/app/code/Magento/Sales/view/frontend/templates/email/items/price/row.phtml b/app/code/Magento/Sales/view/frontend/templates/email/items/price/row.phtml
index f37a65f9b010f819bcd0926b20c100dd342ca83a..bce28e7b09628960857c45fdc75ab11d1c2dc9d1 100644
--- a/app/code/Magento/Sales/view/frontend/templates/email/items/price/row.phtml
+++ b/app/code/Magento/Sales/view/frontend/templates/email/items/price/row.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /** @var \Magento\Sales\Block\Order\Email\Items\DefaultItems $this */
diff --git a/app/code/Magento/Sales/view/frontend/templates/email/items/shipment/default.phtml b/app/code/Magento/Sales/view/frontend/templates/email/items/shipment/default.phtml
index d0d06ef52ddbf7505ed6441b7b288c22122e57f7..dee8a9db7af960810dc990018b9f8a5fa99800d3 100644
--- a/app/code/Magento/Sales/view/frontend/templates/email/items/shipment/default.phtml
+++ b/app/code/Magento/Sales/view/frontend/templates/email/items/shipment/default.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php $_item = $this->getItem() ?>
 <tr>
diff --git a/app/code/Magento/Sales/view/frontend/templates/email/shipment/items.phtml b/app/code/Magento/Sales/view/frontend/templates/email/shipment/items.phtml
index 68bb5574608ace1dd0f877e5b2196b031b0576fc..001c7be145b27c0a22665360c39db67a3cece75f 100644
--- a/app/code/Magento/Sales/view/frontend/templates/email/shipment/items.phtml
+++ b/app/code/Magento/Sales/view/frontend/templates/email/shipment/items.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php $_shipment = $this->getShipment() ?>
 <?php $_order    = $this->getOrder() ?>
diff --git a/app/code/Magento/Sales/view/frontend/templates/email/shipment/track.phtml b/app/code/Magento/Sales/view/frontend/templates/email/shipment/track.phtml
index 2be9fbea5bf229d338104b1119c95b6dd28eb103..103fdae42f1d85b08367fed6e8bd5aa8808b2df0 100644
--- a/app/code/Magento/Sales/view/frontend/templates/email/shipment/track.phtml
+++ b/app/code/Magento/Sales/view/frontend/templates/email/shipment/track.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php $_shipment = $this->getShipment() ?>
 <?php $_order = $this->getOrder() ?>
diff --git a/app/code/Magento/Sales/view/frontend/templates/guest/form.phtml b/app/code/Magento/Sales/view/frontend/templates/guest/form.phtml
index 675ac4831c2ef4d4ffbd698c6113ef605c005c45..14091e50f3cf9c5aab7b36c38debf491bcd2929d 100644
--- a/app/code/Magento/Sales/view/frontend/templates/guest/form.phtml
+++ b/app/code/Magento/Sales/view/frontend/templates/guest/form.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <form class="form form-orders-search" id="oar-widget-orders-and-returns-form" data-mage-init='{"ordersReturns":{}, "validation":{}}' action="<?php echo $this->getActionUrl() ?>"
       method="post" name="guest_post">
diff --git a/app/code/Magento/Sales/view/frontend/templates/items/price/row.phtml b/app/code/Magento/Sales/view/frontend/templates/items/price/row.phtml
index 041b5a3c0334f233a4382520a916e6504a861461..762b8d6b9969304db106a224ad16ea16c083332f 100644
--- a/app/code/Magento/Sales/view/frontend/templates/items/price/row.phtml
+++ b/app/code/Magento/Sales/view/frontend/templates/items/price/row.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var \Magento\Sales\Block\Order\Item\Renderer\DefaultRenderer $this */
 $_item = $this->getItem();
 ?>
diff --git a/app/code/Magento/Sales/view/frontend/templates/items/price/total_after_discount.phtml b/app/code/Magento/Sales/view/frontend/templates/items/price/total_after_discount.phtml
index 7f9cec2d8f631b119372696f35a5cfe2a5a05546..c7fbd22a5f3ed2d092aa93b4b244e4e1f1beacfc 100644
--- a/app/code/Magento/Sales/view/frontend/templates/items/price/total_after_discount.phtml
+++ b/app/code/Magento/Sales/view/frontend/templates/items/price/total_after_discount.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var \Magento\Sales\Block\Order\Item\Renderer\DefaultRenderer $this */
 $_item = $this->getItem();
 ?>
diff --git a/app/code/Magento/Sales/view/frontend/templates/items/price/unit.phtml b/app/code/Magento/Sales/view/frontend/templates/items/price/unit.phtml
index 99701092acdaad98637a9365c3c57625aed045d9..ee146a735b6a9fcb92e0d055426ebd56e9d2d2ff 100644
--- a/app/code/Magento/Sales/view/frontend/templates/items/price/unit.phtml
+++ b/app/code/Magento/Sales/view/frontend/templates/items/price/unit.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var \Magento\Sales\Block\Order\Item\Renderer\DefaultRenderer $this */
 $_item = $this->getItem();
 ?>
diff --git a/app/code/Magento/Sales/view/frontend/templates/js/components.phtml b/app/code/Magento/Sales/view/frontend/templates/js/components.phtml
index 99be8e37348cec69521e018a61f416324e582a94..43f7e9c30c0126f46204910ee749ef83ad81e815 100644
--- a/app/code/Magento/Sales/view/frontend/templates/js/components.phtml
+++ b/app/code/Magento/Sales/view/frontend/templates/js/components.phtml
@@ -3,5 +3,8 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php echo $this->getChildHtml() ?>
diff --git a/app/code/Magento/Sales/view/frontend/templates/order/comments.phtml b/app/code/Magento/Sales/view/frontend/templates/order/comments.phtml
index 695f58ea3296fb34e8361625685be79aebd6a67c..a723d4461f8802081d6022e8b83d15919b57ea8a 100644
--- a/app/code/Magento/Sales/view/frontend/templates/order/comments.phtml
+++ b/app/code/Magento/Sales/view/frontend/templates/order/comments.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/Sales/view/frontend/templates/order/creditmemo/items.phtml b/app/code/Magento/Sales/view/frontend/templates/order/creditmemo/items.phtml
index e59592bb6f248b9be94b49e9374ed5126571c958..2e994281949fbc424af37ab245ce6f6afeabd822 100644
--- a/app/code/Magento/Sales/view/frontend/templates/order/creditmemo/items.phtml
+++ b/app/code/Magento/Sales/view/frontend/templates/order/creditmemo/items.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php $_order = $this->getOrder() ?>
 <div class="actions-toolbar">
diff --git a/app/code/Magento/Sales/view/frontend/templates/order/creditmemo/items/renderer/default.phtml b/app/code/Magento/Sales/view/frontend/templates/order/creditmemo/items/renderer/default.phtml
index 648b8d37fbc42fef092f0c0b61c90f4198d266a2..9885826af7b8c6065f69e79ed612c011f92e6b9f 100644
--- a/app/code/Magento/Sales/view/frontend/templates/order/creditmemo/items/renderer/default.phtml
+++ b/app/code/Magento/Sales/view/frontend/templates/order/creditmemo/items/renderer/default.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var  $this \Magento\Sales\Block\Order\Item\Renderer\DefaultRenderer */ ?>
 <?php $_item = $this->getItem() ?>
diff --git a/app/code/Magento/Sales/view/frontend/templates/order/history.phtml b/app/code/Magento/Sales/view/frontend/templates/order/history.phtml
index d083ecae975d38a7c8a887fbd00dea7f825a987c..8f5779f5a9564049d2f4edac05826e1e4706bc99 100644
--- a/app/code/Magento/Sales/view/frontend/templates/order/history.phtml
+++ b/app/code/Magento/Sales/view/frontend/templates/order/history.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php $_orders = $this->getOrders(); ?>
 <?php echo $this->getChildHtml('info');?>
diff --git a/app/code/Magento/Sales/view/frontend/templates/order/info.phtml b/app/code/Magento/Sales/view/frontend/templates/order/info.phtml
index 6f50c0e8460bf7896a1ac4ff2477522f28e08c89..690059cdadaa400f618fa3d14b8e3975b2b50ee6 100644
--- a/app/code/Magento/Sales/view/frontend/templates/order/info.phtml
+++ b/app/code/Magento/Sales/view/frontend/templates/order/info.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\Sales\Block\Order\Info */ ?>
 <?php $_order = $this->getOrder() ?>
diff --git a/app/code/Magento/Sales/view/frontend/templates/order/info/buttons.phtml b/app/code/Magento/Sales/view/frontend/templates/order/info/buttons.phtml
index 5f5b979cb8510b6d26f8b99057d84d476a546926..3982f1cbc1f229c03c0635f9cdbe8b1a652d4a6d 100644
--- a/app/code/Magento/Sales/view/frontend/templates/order/info/buttons.phtml
+++ b/app/code/Magento/Sales/view/frontend/templates/order/info/buttons.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <div class="actions">
     <?php  $_order = $this->getOrder() ?>
diff --git a/app/code/Magento/Sales/view/frontend/templates/order/info/buttons/rss.phtml b/app/code/Magento/Sales/view/frontend/templates/order/info/buttons/rss.phtml
index 86ebea3eb090d5d8c6da35a4d081806f910070e4..ffd3b3349fd74484c79518f5f32e94cbb80d49d8 100644
--- a/app/code/Magento/Sales/view/frontend/templates/order/info/buttons/rss.phtml
+++ b/app/code/Magento/Sales/view/frontend/templates/order/info/buttons/rss.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Sales\Block\Order\Info\Buttons\Rss */
 ?>
 <?php if ($this->isRssAllowed() && $this->getLink()): ?>
diff --git a/app/code/Magento/Sales/view/frontend/templates/order/invoice/items.phtml b/app/code/Magento/Sales/view/frontend/templates/order/invoice/items.phtml
index 8c96be003c79673352c372fff2bd1a5eae292864..9c162c88b0a4181a5605676b05993619ceaf43f1 100644
--- a/app/code/Magento/Sales/view/frontend/templates/order/invoice/items.phtml
+++ b/app/code/Magento/Sales/view/frontend/templates/order/invoice/items.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php $_order = $this->getOrder() ?>
 <div class="actions-toolbar">
diff --git a/app/code/Magento/Sales/view/frontend/templates/order/invoice/items/renderer/default.phtml b/app/code/Magento/Sales/view/frontend/templates/order/invoice/items/renderer/default.phtml
index fd7adfdcbd6b260564415fadde58cf37d9824b08..6c27411e5952d90a1103fa951b13cb8dc75f4865 100644
--- a/app/code/Magento/Sales/view/frontend/templates/order/invoice/items/renderer/default.phtml
+++ b/app/code/Magento/Sales/view/frontend/templates/order/invoice/items/renderer/default.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var  $this \Magento\Sales\Block\Order\Item\Renderer\DefaultRenderer */ ?>
 <?php $_item = $this->getItem() ?>
diff --git a/app/code/Magento/Sales/view/frontend/templates/order/items.phtml b/app/code/Magento/Sales/view/frontend/templates/order/items.phtml
index 0546b8906737b0d75b9da3efda8a2d06df19cc0e..26e5fa568b47acc520eeeb3ba5f5798315f6867d 100644
--- a/app/code/Magento/Sales/view/frontend/templates/order/items.phtml
+++ b/app/code/Magento/Sales/view/frontend/templates/order/items.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php $_order = $this->getOrder() ?>
 <?php $_giftMessage; ?>
@@ -65,7 +68,7 @@
     </table>
 </div>
 <?php if ($_giftMessage): ?>
-    <script type="text/javascript">
+    <script>
 require(['jquery', "mage/mage"], function(jQuery){
 
     jQuery('a.action.show').add('a.action.close').mage('giftMessage', {});
diff --git a/app/code/Magento/Sales/view/frontend/templates/order/items/renderer/default.phtml b/app/code/Magento/Sales/view/frontend/templates/order/items/renderer/default.phtml
index 967074190e39e655011f41ba0a1110c76779c270..abc4a8c4643536293adb74a98e302574303d0b4b 100644
--- a/app/code/Magento/Sales/view/frontend/templates/order/items/renderer/default.phtml
+++ b/app/code/Magento/Sales/view/frontend/templates/order/items/renderer/default.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var  $this \Magento\Sales\Block\Order\Item\Renderer\DefaultRenderer */
 $_item = $this->getItem();
 ?>
diff --git a/app/code/Magento/Sales/view/frontend/templates/order/order_comments.phtml b/app/code/Magento/Sales/view/frontend/templates/order/order_comments.phtml
index 25636dfa40b75b7b01d3c898282389c08181a743..3d073e282cd3f6e97326f12dc76c3443c79a912d 100644
--- a/app/code/Magento/Sales/view/frontend/templates/order/order_comments.phtml
+++ b/app/code/Magento/Sales/view/frontend/templates/order/order_comments.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var  $this \Magento\Sales\Block\Order\View*/?>
 
diff --git a/app/code/Magento/Sales/view/frontend/templates/order/order_date.phtml b/app/code/Magento/Sales/view/frontend/templates/order/order_date.phtml
index d1c771e2fe4d48b0264c39e8e91759dcac36f767..bc6c07248eea1625ce51a3ae17f94455bc0ad424 100644
--- a/app/code/Magento/Sales/view/frontend/templates/order/order_date.phtml
+++ b/app/code/Magento/Sales/view/frontend/templates/order/order_date.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <div class="order-date"><?php echo __('<span class="label">Order Date:</span> %1', '<date>' . $this->formatDate($this->getOrder()->getCreatedAtStoreDate(), 'long') . '</date>') ?></div>
diff --git a/app/code/Magento/Sales/view/frontend/templates/order/print/creditmemo.phtml b/app/code/Magento/Sales/view/frontend/templates/order/print/creditmemo.phtml
index 9b10b00f88e92f0a8035cf9e30aff9caedc9ba6a..fc3339d4d33c1bfe6f9a0dcf2a634ca9d410e5f0 100644
--- a/app/code/Magento/Sales/view/frontend/templates/order/print/creditmemo.phtml
+++ b/app/code/Magento/Sales/view/frontend/templates/order/print/creditmemo.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php $_order = $this->getOrder() ?>
 <?php $_creditmemo = $this->getCreditmemo() ?>
diff --git a/app/code/Magento/Sales/view/frontend/templates/order/print/invoice.phtml b/app/code/Magento/Sales/view/frontend/templates/order/print/invoice.phtml
index 5ecfdeb8134b199a65f670872a718adfdb21aaa5..15fa73c75632d3309d3c18c64d140e9f55fc24fa 100644
--- a/app/code/Magento/Sales/view/frontend/templates/order/print/invoice.phtml
+++ b/app/code/Magento/Sales/view/frontend/templates/order/print/invoice.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php $_order = $this->getOrder() ?>
 <?php $_invoice = $this->getInvoice() ?>
diff --git a/app/code/Magento/Sales/view/frontend/templates/order/print/shipment.phtml b/app/code/Magento/Sales/view/frontend/templates/order/print/shipment.phtml
index a3e0665bdec5b3441836e716b8e90355ae426dcf..d71391f9bf667070b41338d60a69daf3be1ff86b 100644
--- a/app/code/Magento/Sales/view/frontend/templates/order/print/shipment.phtml
+++ b/app/code/Magento/Sales/view/frontend/templates/order/print/shipment.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /* @var $this \Magento\Sales\Block\Order\PrintOrder\Shipment */ ?>
 <?php $order = $this->getOrder(); ?>
diff --git a/app/code/Magento/Sales/view/frontend/templates/order/recent.phtml b/app/code/Magento/Sales/view/frontend/templates/order/recent.phtml
index 307739e8df4a1bcccf648c9d283a913898c50cb2..70c3fbbe87f30d6fad3c38cdd33c807595f823d8 100644
--- a/app/code/Magento/Sales/view/frontend/templates/order/recent.phtml
+++ b/app/code/Magento/Sales/view/frontend/templates/order/recent.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <div class="block block-dashboard-orders">
 <?php $_orders = $this->getOrders(); ?>
diff --git a/app/code/Magento/Sales/view/frontend/templates/order/shipment/items/renderer/default.phtml b/app/code/Magento/Sales/view/frontend/templates/order/shipment/items/renderer/default.phtml
index 8986722b1d07f1d1819d29a30ec4da84a7a1c245..030d677fcbbca71455293579d1e713dd5fca17a8 100644
--- a/app/code/Magento/Sales/view/frontend/templates/order/shipment/items/renderer/default.phtml
+++ b/app/code/Magento/Sales/view/frontend/templates/order/shipment/items/renderer/default.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php $_item = $this->getItem() ?>
 <?php $_order = $this->getItem()->getOrderItem()->getOrder() ?>
diff --git a/app/code/Magento/Sales/view/frontend/templates/order/totals.phtml b/app/code/Magento/Sales/view/frontend/templates/order/totals.phtml
index abfdec91d22be6ef0e05579fabb715be0b86d6ba..49f7e75aac44fb516f0f9becdb7c9c8582a970be 100644
--- a/app/code/Magento/Sales/view/frontend/templates/order/totals.phtml
+++ b/app/code/Magento/Sales/view/frontend/templates/order/totals.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /**
  * @var $this \Magento\Sales\Block\Order\Totals
  * @see \Magento\Sales\Block\Order\Totals
diff --git a/app/code/Magento/Sales/view/frontend/templates/order/view.phtml b/app/code/Magento/Sales/view/frontend/templates/order/view.phtml
index d3b1167912640bb534c7e12889ae00cb00f89d72..43779c2cbf3c03aac42d192870e4e6e061966dd6 100644
--- a/app/code/Magento/Sales/view/frontend/templates/order/view.phtml
+++ b/app/code/Magento/Sales/view/frontend/templates/order/view.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var  $this \Magento\Sales\Block\Order\View*/?>
 <div class="order-details-items ordered">
diff --git a/app/code/Magento/Sales/view/frontend/templates/reorder/sidebar.phtml b/app/code/Magento/Sales/view/frontend/templates/reorder/sidebar.phtml
index 13e1301b08ea33d59db7ea558c6c712faba1ec6e..d04daf4e5587cfe4d2baf2f75dd7807a3b128e3b 100644
--- a/app/code/Magento/Sales/view/frontend/templates/reorder/sidebar.phtml
+++ b/app/code/Magento/Sales/view/frontend/templates/reorder/sidebar.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
@@ -59,7 +62,7 @@
         </form>
     </div>
     <?php echo $this->getPagerHtml(); ?>
-    <script type="text/javascript">
+    <script>
 require(["jquery", "mage/mage"], function(jQuery){
 
 jQuery('#reorder-validate-detail').mage('validation', {
diff --git a/app/code/Magento/Sales/view/frontend/templates/widget/guest/form.phtml b/app/code/Magento/Sales/view/frontend/templates/widget/guest/form.phtml
index cee5441daba93c70c5d2f90dec2a5f5c77ae3ca8..7cf9e95c0f0f8d389cbe1a8aad94f29b450f8747 100644
--- a/app/code/Magento/Sales/view/frontend/templates/widget/guest/form.phtml
+++ b/app/code/Magento/Sales/view/frontend/templates/widget/guest/form.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Sales\Block\Widget\Guest\Form */
 ?>
 <?php if ($this->isEnable()): ?>
diff --git a/app/code/Magento/SalesRule/Block/Adminhtml/Promo/Quote/Edit/Tab/Actions.php b/app/code/Magento/SalesRule/Block/Adminhtml/Promo/Quote/Edit/Tab/Actions.php
index 075a54de7abc57cf32876799bc085b9c2a4bf6e5..97198aaac6a31459addbcd192954793eb3a477d2 100644
--- a/app/code/Magento/SalesRule/Block/Adminhtml/Promo/Quote/Edit/Tab/Actions.php
+++ b/app/code/Magento/SalesRule/Block/Adminhtml/Promo/Quote/Edit/Tab/Actions.php
@@ -85,6 +85,7 @@ class Actions extends \Magento\Backend\Block\Widget\Form\Generic implements
      * Prepare form before rendering HTML
      *
      * @return $this
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _prepareForm()
     {
diff --git a/app/code/Magento/SalesRule/Block/Adminhtml/Promo/Quote/Edit/Tab/Coupons/Form.php b/app/code/Magento/SalesRule/Block/Adminhtml/Promo/Quote/Edit/Tab/Coupons/Form.php
index 37b04892acd00f5d9ac5f58fc692c69c9c030de8..c2e17d7add90b1e6a26d10abf5c9d865357e4db1 100644
--- a/app/code/Magento/SalesRule/Block/Adminhtml/Promo/Quote/Edit/Tab/Coupons/Form.php
+++ b/app/code/Magento/SalesRule/Block/Adminhtml/Promo/Quote/Edit/Tab/Coupons/Form.php
@@ -41,6 +41,7 @@ class Form extends \Magento\Backend\Block\Widget\Form\Generic
      * Prepare coupon codes generation parameters form
      *
      * @return $this
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _prepareForm()
     {
diff --git a/app/code/Magento/SalesRule/Block/Adminhtml/Promo/Quote/Edit/Tab/Coupons/Grid.php b/app/code/Magento/SalesRule/Block/Adminhtml/Promo/Quote/Edit/Tab/Coupons/Grid.php
index 7dece310192cbf057ed2cd1975d16ea3109b761e..8e726aef97be44ed6334bab0d5fa8376f9276f9b 100644
--- a/app/code/Magento/SalesRule/Block/Adminhtml/Promo/Quote/Edit/Tab/Coupons/Grid.php
+++ b/app/code/Magento/SalesRule/Block/Adminhtml/Promo/Quote/Edit/Tab/Coupons/Grid.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\SalesRule\Block\Adminhtml\Promo\Quote\Edit\Tab\Coupons;
 
 /**
diff --git a/app/code/Magento/SalesRule/Block/Adminhtml/Promo/Quote/Edit/Tab/Main.php b/app/code/Magento/SalesRule/Block/Adminhtml/Promo/Quote/Edit/Tab/Main.php
index 9ac3264d6f07a7aa1260dcaef50c46609d2a43ae..3a786b66aef8838113d36e8aa5df14a6070d222a 100644
--- a/app/code/Magento/SalesRule/Block/Adminhtml/Promo/Quote/Edit/Tab/Main.php
+++ b/app/code/Magento/SalesRule/Block/Adminhtml/Promo/Quote/Edit/Tab/Main.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\SalesRule\Block\Adminhtml\Promo\Quote\Edit\Tab;
 
 use Magento\Backend\Block\Template\Context;
@@ -116,6 +119,8 @@ class Main extends Generic implements TabInterface
      * Prepare form before rendering HTML
      *
      * @return $this
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _prepareForm()
     {
diff --git a/app/code/Magento/SalesRule/Block/Rss/Discounts.php b/app/code/Magento/SalesRule/Block/Rss/Discounts.php
index 8e5e7c1657ab9345e9b32333fa3351e711cfb2f0..8227baf46e6a117128ab9af7b52e919e7e6a2199 100644
--- a/app/code/Magento/SalesRule/Block/Rss/Discounts.php
+++ b/app/code/Magento/SalesRule/Block/Rss/Discounts.php
@@ -73,7 +73,7 @@ class Discounts extends \Magento\Framework\View\Element\AbstractBlock implements
             'store_id' => $storeId,
             'cid' => $customerGroupId,
         ]);
-        $title = __('%1 - Discounts and Coupons', $storeModel->getName());
+        $title = __('%1 - Discounts and Coupons', $storeModel->getFrontendName());
         $lang = $this->_scopeConfig->getValue(
             'general/locale/code',
             \Magento\Store\Model\ScopeInterface::SCOPE_STORE,
diff --git a/app/code/Magento/SalesRule/Controller/Adminhtml/Promo/Quote/Edit.php b/app/code/Magento/SalesRule/Controller/Adminhtml/Promo/Quote/Edit.php
index f408f5ced5dcb977460a8ede22acbfe0c3c0ab27..6138a59b95ac241b6df44e33edd90fba92fcc369 100644
--- a/app/code/Magento/SalesRule/Controller/Adminhtml/Promo/Quote/Edit.php
+++ b/app/code/Magento/SalesRule/Controller/Adminhtml/Promo/Quote/Edit.php
@@ -12,6 +12,7 @@ class Edit extends \Magento\SalesRule\Controller\Adminhtml\Promo\Quote
      * Promo quote edit action
      *
      * @return void
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function execute()
     {
diff --git a/app/code/Magento/SalesRule/Controller/Adminhtml/Promo/Quote/Save.php b/app/code/Magento/SalesRule/Controller/Adminhtml/Promo/Quote/Save.php
index 256bd7cdcdc678615e04b237847cfb9aa31775ab..c9547549fa1baf262436af28201d3fc97d12a079 100644
--- a/app/code/Magento/SalesRule/Controller/Adminhtml/Promo/Quote/Save.php
+++ b/app/code/Magento/SalesRule/Controller/Adminhtml/Promo/Quote/Save.php
@@ -12,6 +12,8 @@ class Save extends \Magento\SalesRule\Controller\Adminhtml\Promo\Quote
      * Promo quote save action
      *
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function execute()
     {
diff --git a/app/code/Magento/SalesRule/Helper/Coupon.php b/app/code/Magento/SalesRule/Helper/Coupon.php
index a445973a998939d1c9880b2a1bd0b0fd0f719611..2b3282ae12e647e3cc765233625359ac83710cbd 100644
--- a/app/code/Magento/SalesRule/Helper/Coupon.php
+++ b/app/code/Magento/SalesRule/Helper/Coupon.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\SalesRule\Helper;
 
 /**
diff --git a/app/code/Magento/SalesRule/Model/Observer.php b/app/code/Magento/SalesRule/Model/Observer.php
index 881016526c6c3fdbaa4a82b53b782cfdf145b681..a31d559ee54756197e8b6c1137069ad14f17c0ca 100644
--- a/app/code/Magento/SalesRule/Model/Observer.php
+++ b/app/code/Magento/SalesRule/Model/Observer.php
@@ -7,6 +7,9 @@ namespace Magento\SalesRule\Model;
 
 use Magento\Framework\Event\Observer as EventObserver;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class Observer
 {
     /**
@@ -90,6 +93,7 @@ class Observer
     /**
      * @param EventObserver $observer
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function salesOrderAfterPlace($observer)
     {
diff --git a/app/code/Magento/SalesRule/Model/Plugin/QuoteConfigProductAttributes.php b/app/code/Magento/SalesRule/Model/Plugin/QuoteConfigProductAttributes.php
index c39c2af7d7d64376d72d286c0ad637b0d3b677b9..7ad693c280c26382c8011eb7f2186710bc12ca5b 100644
--- a/app/code/Magento/SalesRule/Model/Plugin/QuoteConfigProductAttributes.php
+++ b/app/code/Magento/SalesRule/Model/Plugin/QuoteConfigProductAttributes.php
@@ -27,13 +27,13 @@ class QuoteConfigProductAttributes
     /**
      * Append sales rule product attribute keys to select by quote item collection
      *
-     * @param \Magento\Sales\Model\Quote\Config $subject
+     * @param \Magento\Quote\Model\Quote\Config $subject
      * @param array $attributeKeys
      *
      * @return array
      * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
-    public function afterGetProductAttributes(\Magento\Sales\Model\Quote\Config $subject, array $attributeKeys)
+    public function afterGetProductAttributes(\Magento\Quote\Model\Quote\Config $subject, array $attributeKeys)
     {
         $attributes = $this->_ruleResource->getActiveAttributes();
         foreach ($attributes as $attribute) {
diff --git a/app/code/Magento/SalesRule/Model/Quote/Discount.php b/app/code/Magento/SalesRule/Model/Quote/Discount.php
index a71d860bc97059d9401a01d9e9abafbd13d50c3b..d108bb891e6ec7e6f4a684f55b6443a702a8c925 100644
--- a/app/code/Magento/SalesRule/Model/Quote/Discount.php
+++ b/app/code/Magento/SalesRule/Model/Quote/Discount.php
@@ -6,10 +6,10 @@
 namespace Magento\SalesRule\Model\Quote;
 
 use Magento\Framework\Pricing\PriceCurrencyInterface;
-use Magento\Sales\Model\Quote\Address;
-use Magento\Sales\Model\Quote\Item\AbstractItem;
+use Magento\Quote\Model\Quote\Address;
+use Magento\Quote\Model\Quote\Item\AbstractItem;
 
-class Discount extends \Magento\Sales\Model\Quote\Address\Total\AbstractTotal
+class Discount extends \Magento\Quote\Model\Quote\Address\Total\AbstractTotal
 {
     /**
      * Discount calculation object
@@ -59,6 +59,7 @@ class Discount extends \Magento\Sales\Model\Quote\Address\Total\AbstractTotal
      *
      * @param Address $address
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function collect(Address $address)
     {
@@ -84,7 +85,7 @@ class Discount extends \Magento\Sales\Model\Quote\Address\Total\AbstractTotal
         $address->setDiscountDescription([]);
 
         $items = $this->_calculator->sortItemsByPriority($items);
-        /** @var \Magento\Sales\Model\Quote\Item $item */
+        /** @var \Magento\Quote\Model\Quote\Item $item */
         foreach ($items as $item) {
             if ($item->getNoDiscount() || !$this->_calculator->canApplyDiscount($item)) {
                 $item->setDiscountAmount(0);
diff --git a/app/code/Magento/SalesRule/Model/Resource/Report/Rule/Createdat.php b/app/code/Magento/SalesRule/Model/Resource/Report/Rule/Createdat.php
index 32eafd1b1424b37b3b08ea875c26633262b61757..8f87fc3feb640e41759c71091bc638bf37575cc8 100644
--- a/app/code/Magento/SalesRule/Model/Resource/Report/Rule/Createdat.php
+++ b/app/code/Magento/SalesRule/Model/Resource/Report/Rule/Createdat.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\SalesRule\Model\Resource\Report\Rule;
 
 /**
@@ -42,6 +45,7 @@ class Createdat extends \Magento\Reports\Model\Resource\Report\AbstractReport
      * @param mixed $from
      * @param mixed $to
      * @return $this
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _aggregateByOrder($aggregationField, $from, $to)
     {
diff --git a/app/code/Magento/SalesRule/Model/Resource/Rule/Collection.php b/app/code/Magento/SalesRule/Model/Resource/Rule/Collection.php
index 3ca4e0d272faf9c0e6ac612f0be8f12b604c89a9..a3d49f61e3946222e717d347706e1df4610c9a3b 100644
--- a/app/code/Magento/SalesRule/Model/Resource/Rule/Collection.php
+++ b/app/code/Magento/SalesRule/Model/Resource/Rule/Collection.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\SalesRule\Model\Resource\Rule;
 
 /**
diff --git a/app/code/Magento/SalesRule/Model/Rule.php b/app/code/Magento/SalesRule/Model/Rule.php
index 1cc196872f462d63fc825d8769a828c735798e50..66dd6c7f054fcfadfab0166b17bf026c89052994 100644
--- a/app/code/Magento/SalesRule/Model/Rule.php
+++ b/app/code/Magento/SalesRule/Model/Rule.php
@@ -5,7 +5,7 @@
  */
 namespace Magento\SalesRule\Model;
 
-use Magento\Sales\Model\Quote\Address;
+use Magento\Quote\Model\Quote\Address;
 
 /**
  * Shopping Cart Rule data model
@@ -63,6 +63,7 @@ use Magento\Sales\Model\Quote\Address;
  * @method \Magento\SalesRule\Model\Rule setCouponCode(string $value)
  * @method int getRuleId()
  * @method \Magento\SalesRule\Model\Rule setRuleId(int $ruleId)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Rule extends \Magento\Rule\Model\AbstractModel
 {
@@ -185,6 +186,7 @@ class Rule extends \Magento\Rule\Model\AbstractModel
      * @param \Magento\Framework\Model\Resource\AbstractResource $resource
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
@@ -436,6 +438,8 @@ class Rule extends \Magento\Rule\Model\AbstractModel
      * @param int $saveAttemptCount Number of attempts to save newly created coupon
      * @return \Magento\SalesRule\Model\Coupon|null
      * @throws \Exception|\Magento\Framework\Model\Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function acquireCoupon($saveNewlyCreated = true, $saveAttemptCount = 10)
     {
@@ -525,6 +529,7 @@ class Rule extends \Magento\Rule\Model\AbstractModel
      *
      * @param Address $address
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsValidForAddress($address)
     {
diff --git a/app/code/Magento/SalesRule/Model/Rule/Action/Discount/AbstractDiscount.php b/app/code/Magento/SalesRule/Model/Rule/Action/Discount/AbstractDiscount.php
index 381072d41ed0df3939130356637b948847e30ae8..0b64618f8da6df45e5bbd8e4280a043729e5699c 100644
--- a/app/code/Magento/SalesRule/Model/Rule/Action/Discount/AbstractDiscount.php
+++ b/app/code/Magento/SalesRule/Model/Rule/Action/Discount/AbstractDiscount.php
@@ -39,7 +39,7 @@ abstract class AbstractDiscount implements DiscountInterface
 
     /**
      * @param \Magento\SalesRule\Model\Rule $rule
-     * @param \Magento\Sales\Model\Quote\Item\AbstractItem $item
+     * @param \Magento\Quote\Model\Quote\Item\AbstractItem $item
      * @param float $qty
      * @return \Magento\SalesRule\Model\Rule\Action\Discount\Data
      */
diff --git a/app/code/Magento/SalesRule/Model/Rule/Action/Discount/BuyXGetY.php b/app/code/Magento/SalesRule/Model/Rule/Action/Discount/BuyXGetY.php
index 503229b84bc480d44f8b978acf47d5823c436de5..379e4336c66d9cac68f3783d26aa30508db41009 100644
--- a/app/code/Magento/SalesRule/Model/Rule/Action/Discount/BuyXGetY.php
+++ b/app/code/Magento/SalesRule/Model/Rule/Action/Discount/BuyXGetY.php
@@ -9,7 +9,7 @@ class BuyXGetY extends AbstractDiscount
 {
     /**
      * @param \Magento\SalesRule\Model\Rule $rule
-     * @param \Magento\Sales\Model\Quote\Item\AbstractItem $item
+     * @param \Magento\Quote\Model\Quote\Item\AbstractItem $item
      * @param float $qty
      * @return \Magento\SalesRule\Model\Rule\Action\Discount\Data
      */
diff --git a/app/code/Magento/SalesRule/Model/Rule/Action/Discount/ByFixed.php b/app/code/Magento/SalesRule/Model/Rule/Action/Discount/ByFixed.php
index a19fcecb04777c3d736eacc0f0703ac0b645a536..52335835ab216454400906a8e6b4a81ee14733ff 100644
--- a/app/code/Magento/SalesRule/Model/Rule/Action/Discount/ByFixed.php
+++ b/app/code/Magento/SalesRule/Model/Rule/Action/Discount/ByFixed.php
@@ -9,7 +9,7 @@ class ByFixed extends AbstractDiscount
 {
     /**
      * @param \Magento\SalesRule\Model\Rule $rule
-     * @param \Magento\Sales\Model\Quote\Item\AbstractItem $item
+     * @param \Magento\Quote\Model\Quote\Item\AbstractItem $item
      * @param float $qty
      * @return \Magento\SalesRule\Model\Rule\Action\Discount\Data
      */
diff --git a/app/code/Magento/SalesRule/Model/Rule/Action/Discount/ByPercent.php b/app/code/Magento/SalesRule/Model/Rule/Action/Discount/ByPercent.php
index afab1eded3d7246c895836e47988524ccbb66f38..19e2f81d657c3c5232fd484eb4cc12eb4750a2cf 100644
--- a/app/code/Magento/SalesRule/Model/Rule/Action/Discount/ByPercent.php
+++ b/app/code/Magento/SalesRule/Model/Rule/Action/Discount/ByPercent.php
@@ -9,7 +9,7 @@ class ByPercent extends AbstractDiscount
 {
     /**
      * @param \Magento\SalesRule\Model\Rule $rule
-     * @param \Magento\Sales\Model\Quote\Item\AbstractItem $item
+     * @param \Magento\Quote\Model\Quote\Item\AbstractItem $item
      * @param float $qty
      * @return Data
      */
@@ -38,7 +38,7 @@ class ByPercent extends AbstractDiscount
 
     /**
      * @param \Magento\SalesRule\Model\Rule $rule
-     * @param \Magento\Sales\Model\Quote\Item\AbstractItem $item
+     * @param \Magento\Quote\Model\Quote\Item\AbstractItem $item
      * @param float $qty
      * @param float $rulePercent
      * @return Data
@@ -57,7 +57,9 @@ class ByPercent extends AbstractDiscount
         $discountData->setAmount(($qty * $itemPrice - $item->getDiscountAmount()) * $_rulePct);
         $discountData->setBaseAmount(($qty * $baseItemPrice - $item->getBaseDiscountAmount()) * $_rulePct);
         $discountData->setOriginalAmount(($qty * $itemOriginalPrice - $item->getDiscountAmount()) * $_rulePct);
-        $discountData->setBaseOriginalAmount(($qty * $baseItemOriginalPrice - $item->getDiscountAmount()) * $_rulePct);
+        $discountData->setBaseOriginalAmount(
+            ($qty * $baseItemOriginalPrice - $item->getBaseDiscountAmount()) * $_rulePct
+        );
 
         if (!$rule->getDiscountQty() || $rule->getDiscountQty() > $qty) {
             $discountPercent = min(100, $item->getDiscountPercent() + $rulePercent);
diff --git a/app/code/Magento/SalesRule/Model/Rule/Action/Discount/CartFixed.php b/app/code/Magento/SalesRule/Model/Rule/Action/Discount/CartFixed.php
index 8bf1569ab459596556a4f3feb0eda756ff3d8fbc..64e12720100d1cea3280634d6813df0649c6a2ea 100644
--- a/app/code/Magento/SalesRule/Model/Rule/Action/Discount/CartFixed.php
+++ b/app/code/Magento/SalesRule/Model/Rule/Action/Discount/CartFixed.php
@@ -16,7 +16,7 @@ class CartFixed extends AbstractDiscount
 
     /**
      * @param \Magento\SalesRule\Model\Rule $rule
-     * @param \Magento\Sales\Model\Quote\Item\AbstractItem $item
+     * @param \Magento\Quote\Model\Quote\Item\AbstractItem $item
      * @param float $qty
      * @return \Magento\SalesRule\Model\Rule\Action\Discount\Data
      */
diff --git a/app/code/Magento/SalesRule/Model/Rule/Action/Discount/DiscountInterface.php b/app/code/Magento/SalesRule/Model/Rule/Action/Discount/DiscountInterface.php
index b2c626f15d8da0a130850a580afc9836eadff493..caa8fda2931e50845b335dac848e02b61a57dc6d 100644
--- a/app/code/Magento/SalesRule/Model/Rule/Action/Discount/DiscountInterface.php
+++ b/app/code/Magento/SalesRule/Model/Rule/Action/Discount/DiscountInterface.php
@@ -9,7 +9,7 @@ interface DiscountInterface
 {
     /**
      * @param \Magento\SalesRule\Model\Rule $rule
-     * @param \Magento\Sales\Model\Quote\Item\AbstractItem $item
+     * @param \Magento\Quote\Model\Quote\Item\AbstractItem $item
      * @param float $qty
      * @return \Magento\SalesRule\Model\Rule\Action\Discount\Data
      */
diff --git a/app/code/Magento/SalesRule/Model/Rule/Action/Discount/ToFixed.php b/app/code/Magento/SalesRule/Model/Rule/Action/Discount/ToFixed.php
index 6d9e9a6570a738917e29d228d803121bb488cfc2..522bf12ad731f52dfd7e6705907626b028c2e22a 100644
--- a/app/code/Magento/SalesRule/Model/Rule/Action/Discount/ToFixed.php
+++ b/app/code/Magento/SalesRule/Model/Rule/Action/Discount/ToFixed.php
@@ -9,7 +9,7 @@ class ToFixed extends AbstractDiscount
 {
     /**
      * @param \Magento\SalesRule\Model\Rule $rule
-     * @param \Magento\Sales\Model\Quote\Item\AbstractItem $item
+     * @param \Magento\Quote\Model\Quote\Item\AbstractItem $item
      * @param float $qty
      * @return \Magento\SalesRule\Model\Rule\Action\Discount\Data
      */
diff --git a/app/code/Magento/SalesRule/Model/Rule/Action/Discount/ToPercent.php b/app/code/Magento/SalesRule/Model/Rule/Action/Discount/ToPercent.php
index 157e28619865a417c3969250166e05bf9dd05c3c..2db12276c9ffce386154833de82db0a86f59ec96 100644
--- a/app/code/Magento/SalesRule/Model/Rule/Action/Discount/ToPercent.php
+++ b/app/code/Magento/SalesRule/Model/Rule/Action/Discount/ToPercent.php
@@ -9,7 +9,7 @@ class ToPercent extends ByPercent
 {
     /**
      * @param \Magento\SalesRule\Model\Rule $rule
-     * @param \Magento\Sales\Model\Quote\Item\AbstractItem $item
+     * @param \Magento\Quote\Model\Quote\Item\AbstractItem $item
      * @param float $qty
      * @return Data
      */
diff --git a/app/code/Magento/SalesRule/Model/Rule/Condition/Address.php b/app/code/Magento/SalesRule/Model/Rule/Condition/Address.php
index af7d7f14342dc408b0016dc9025d2be3f6e25da7..3926ffcb5664d224f2ba1cf69c03e68b4cd508ab 100644
--- a/app/code/Magento/SalesRule/Model/Rule/Condition/Address.php
+++ b/app/code/Magento/SalesRule/Model/Rule/Condition/Address.php
@@ -167,7 +167,7 @@ class Address extends \Magento\Rule\Model\Condition\AbstractCondition
     public function validate(\Magento\Framework\Model\AbstractModel $model)
     {
         $address = $model;
-        if (!$address instanceof \Magento\Sales\Model\Quote\Address) {
+        if (!$address instanceof \Magento\Quote\Model\Quote\Address) {
             if ($model->getQuote()->isVirtual()) {
                 $address = $model->getQuote()->getBillingAddress();
             } else {
diff --git a/app/code/Magento/SalesRule/Model/Rule/Condition/Product/Found.php b/app/code/Magento/SalesRule/Model/Rule/Condition/Product/Found.php
index 11092ec2fd22283c2e07fc15a34d61e8c95a848d..8255735b36cdbb45f5a7b6c4d1fb3dcdbc68fce7 100644
--- a/app/code/Magento/SalesRule/Model/Rule/Condition/Product/Found.php
+++ b/app/code/Magento/SalesRule/Model/Rule/Condition/Product/Found.php
@@ -55,6 +55,7 @@ class Found extends \Magento\SalesRule\Model\Rule\Condition\Product\Combine
      *
      * @param \Magento\Framework\Model\AbstractModel $model
      * @return bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function validate(\Magento\Framework\Model\AbstractModel $model)
     {
diff --git a/app/code/Magento/SalesRule/Model/RulesApplier.php b/app/code/Magento/SalesRule/Model/RulesApplier.php
index 3baafcd7cdc4bed3c2312f8b7e656fad5fe791b3..20b8c40142e50f2234bd0e2f6b203ea178118565 100644
--- a/app/code/Magento/SalesRule/Model/RulesApplier.php
+++ b/app/code/Magento/SalesRule/Model/RulesApplier.php
@@ -5,7 +5,7 @@
  */
 namespace Magento\SalesRule\Model;
 
-use Magento\Sales\Model\Quote\Address;
+use Magento\Quote\Model\Quote\Address;
 
 /**
  * Class RulesApplier
@@ -43,11 +43,12 @@ class RulesApplier
     /**
      * Apply rules to current order item
      *
-     * @param \Magento\Sales\Model\Quote\Item\AbstractItem $item
+     * @param \Magento\Quote\Model\Quote\Item\AbstractItem $item
      * @param \Magento\SalesRule\Model\Resource\Rule\Collection $rules
      * @param bool $skipValidation
      * @param mixed $couponCode
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function applyRules($item, $rules, $skipValidation, $couponCode)
     {
@@ -115,9 +116,9 @@ class RulesApplier
     }
 
     /**
-     * @param \Magento\Sales\Model\Quote\Item\AbstractItem $item
+     * @param \Magento\Quote\Model\Quote\Item\AbstractItem $item
      * @param \Magento\SalesRule\Model\Rule $rule
-     * @param \Magento\Sales\Model\Quote\Address $address
+     * @param \Magento\Quote\Model\Quote\Address $address
      * @param mixed $couponCode
      * @return $this
      */
@@ -133,7 +134,7 @@ class RulesApplier
     }
 
     /**
-     * @param \Magento\Sales\Model\Quote\Item\AbstractItem $item
+     * @param \Magento\Quote\Model\Quote\Item\AbstractItem $item
      * @param \Magento\SalesRule\Model\Rule $rule
      * @return \Magento\SalesRule\Model\Rule\Action\Discount\Data
      */
@@ -160,7 +161,7 @@ class RulesApplier
 
     /**
      * @param \Magento\SalesRule\Model\Rule\Action\Discount\Data $discountData
-     * @param \Magento\Sales\Model\Quote\Item\AbstractItem $item
+     * @param \Magento\Quote\Model\Quote\Item\AbstractItem $item
      * @return $this
      */
     protected function setDiscountData($discountData, $item)
@@ -198,14 +199,14 @@ class RulesApplier
      * Fire event to allow overwriting of discount amounts
      *
      * @param \Magento\SalesRule\Model\Rule\Action\Discount\Data $discountData
-     * @param \Magento\Sales\Model\Quote\Item\AbstractItem $item
+     * @param \Magento\Quote\Model\Quote\Item\AbstractItem $item
      * @param \Magento\SalesRule\Model\Rule $rule
      * @param float $qty
      * @return $this
      */
     protected function eventFix(
         \Magento\SalesRule\Model\Rule\Action\Discount\Data $discountData,
-        \Magento\Sales\Model\Quote\Item\AbstractItem $item,
+        \Magento\Quote\Model\Quote\Item\AbstractItem $item,
         \Magento\SalesRule\Model\Rule $rule,
         $qty
     ) {
@@ -228,11 +229,11 @@ class RulesApplier
     }
 
     /**
-     * @param \Magento\Sales\Model\Quote\Item\AbstractItem $item
+     * @param \Magento\Quote\Model\Quote\Item\AbstractItem $item
      * @param int[] $appliedRuleIds
      * @return $this
      */
-    public function setAppliedRuleIds(\Magento\Sales\Model\Quote\Item\AbstractItem $item, array $appliedRuleIds)
+    public function setAppliedRuleIds(\Magento\Quote\Model\Quote\Item\AbstractItem $item, array $appliedRuleIds)
     {
         $address = $item->getAddress();
         $quote = $item->getQuote();
diff --git a/app/code/Magento/SalesRule/Model/Utility.php b/app/code/Magento/SalesRule/Model/Utility.php
index 8868db148d38a10b15f5aa776b1d6e421178c6e3..3b170bc61e7e4a3441a68bb869dad84aa7582384 100644
--- a/app/code/Magento/SalesRule/Model/Utility.php
+++ b/app/code/Magento/SalesRule/Model/Utility.php
@@ -75,8 +75,10 @@ class Utility
      * Check if rule can be applied for specific address/quote/customer
      *
      * @param \Magento\SalesRule\Model\Rule $rule
-     * @param \Magento\Sales\Model\Quote\Address $address
+     * @param \Magento\Quote\Model\Quote\Address $address
      * @return bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function canProcessRule($rule, $address)
     {
@@ -152,13 +154,13 @@ class Utility
 
     /**
      * @param \Magento\SalesRule\Model\Rule\Action\Discount\Data $discountData
-     * @param \Magento\Sales\Model\Quote\Item\AbstractItem $item
+     * @param \Magento\Quote\Model\Quote\Item\AbstractItem $item
      * @param float $qty
      * @return void
      */
     public function minFix(
         \Magento\SalesRule\Model\Rule\Action\Discount\Data $discountData,
-        \Magento\Sales\Model\Quote\Item\AbstractItem $item,
+        \Magento\Quote\Model\Quote\Item\AbstractItem $item,
         $qty
     ) {
         $itemPrice = $this->getItemPrice($item);
@@ -178,18 +180,19 @@ class Utility
      * Process "delta" rounding
      *
      * @param \Magento\SalesRule\Model\Rule\Action\Discount\Data $discountData
-     * @param \Magento\Sales\Model\Quote\Item\AbstractItem $item
+     * @param \Magento\Quote\Model\Quote\Item\AbstractItem $item
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function deltaRoundingFix(
         \Magento\SalesRule\Model\Rule\Action\Discount\Data $discountData,
-        \Magento\Sales\Model\Quote\Item\AbstractItem $item
+        \Magento\Quote\Model\Quote\Item\AbstractItem $item
     ) {
         $store = $item->getQuote()->getStore();
         $discountAmount = $discountData->getAmount();
         $baseDiscountAmount = $discountData->getBaseAmount();
 
-        //TODO Seems \Magento\Sales\Model\Quote\Item\AbstractItem::getDiscountPercent() returns float value
+        //TODO Seems \Magento\Quote\Model\Quote\Item\AbstractItem::getDiscountPercent() returns float value
         //that can not be used as array index
         $percentKey = $item->getDiscountPercent();
         if ($percentKey) {
@@ -213,7 +216,7 @@ class Utility
     /**
      * Return item price
      *
-     * @param \Magento\Sales\Model\Quote\Item\AbstractItem $item
+     * @param \Magento\Quote\Model\Quote\Item\AbstractItem $item
      * @return float
      */
     public function getItemPrice($item)
@@ -226,7 +229,7 @@ class Utility
     /**
      * Return item base price
      *
-     * @param \Magento\Sales\Model\Quote\Item\AbstractItem $item
+     * @param \Magento\Quote\Model\Quote\Item\AbstractItem $item
      * @return float
      */
     public function getItemBasePrice($item)
@@ -238,7 +241,7 @@ class Utility
     /**
      * Return discount item qty
      *
-     * @param \Magento\Sales\Model\Quote\Item\AbstractItem $item
+     * @param \Magento\Quote\Model\Quote\Item\AbstractItem $item
      * @param \Magento\SalesRule\Model\Rule $rule
      * @return int
      */
diff --git a/app/code/Magento/SalesRule/Model/Validator.php b/app/code/Magento/SalesRule/Model/Validator.php
index 7c585f309ee127e6d0f0ca9236d97ed89f006a89..a9b4ab5899628f49d1bab617a8178794bbf157ca 100644
--- a/app/code/Magento/SalesRule/Model/Validator.php
+++ b/app/code/Magento/SalesRule/Model/Validator.php
@@ -3,10 +3,13 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\SalesRule\Model;
 
-use Magento\Sales\Model\Quote\Address;
-use Magento\Sales\Model\Quote\Item\AbstractItem;
+use Magento\Quote\Model\Quote\Address;
+use Magento\Quote\Model\Quote\Item\AbstractItem;
 
 /**
  * SalesRule Validator Model
@@ -19,6 +22,7 @@ use Magento\Sales\Model\Quote\Item\AbstractItem;
  * @method Validator setWebsiteId($id)
  * @method mixed getCustomerGroupId()
  * @method Validator setCustomerGroupId($id)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Validator extends \Magento\Framework\Model\AbstractModel
 {
@@ -101,6 +105,7 @@ class Validator extends \Magento\Framework\Model\AbstractModel
      * @param \Magento\Framework\Model\Resource\AbstractResource $resource
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
@@ -246,6 +251,7 @@ class Validator extends \Magento\Framework\Model\AbstractModel
      *
      * @param Address $address
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function processShippingAmount(Address $address)
     {
diff --git a/app/code/Magento/SalesRule/composer.json b/app/code/Magento/SalesRule/composer.json
index 0bc6963fbfe82242ac0fc37a9478528f2634654c..59aa6097d19404d67ff1fe8525be22ab41072c86 100644
--- a/app/code/Magento/SalesRule/composer.json
+++ b/app/code/Magento/SalesRule/composer.json
@@ -3,25 +3,26 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-rule": "0.42.0-beta3",
-        "magento/module-catalog": "0.42.0-beta3",
-        "magento/module-sales": "0.42.0-beta3",
-        "magento/module-eav": "0.42.0-beta3",
-        "magento/module-core": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/module-customer": "0.42.0-beta3",
-        "magento/module-directory": "0.42.0-beta3",
-        "magento/module-shipping": "0.42.0-beta3",
-        "magento/module-payment": "0.42.0-beta3",
-        "magento/module-reports": "0.42.0-beta3",
-        "magento/module-catalog-rule": "0.42.0-beta3",
-        "magento/module-widget": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-rule": "0.42.0-beta4",
+        "magento/module-catalog": "0.42.0-beta4",
+        "magento/module-sales": "0.42.0-beta4",
+        "magento/module-eav": "0.42.0-beta4",
+        "magento/module-core": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/module-customer": "0.42.0-beta4",
+        "magento/module-directory": "0.42.0-beta4",
+        "magento/module-shipping": "0.42.0-beta4",
+        "magento/module-payment": "0.42.0-beta4",
+        "magento/module-reports": "0.42.0-beta4",
+        "magento/module-catalog-rule": "0.42.0-beta4",
+        "magento/module-widget": "0.42.0-beta4",
+        "magento/module-quote": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/SalesRule/etc/di.xml b/app/code/Magento/SalesRule/etc/di.xml
index 6c8caa09de78ce92010b67c3b5adb4340157f1a3..5aa241a5a16ce4826fe2e49b0335aa7a05458448 100644
--- a/app/code/Magento/SalesRule/etc/di.xml
+++ b/app/code/Magento/SalesRule/etc/di.xml
@@ -7,7 +7,7 @@
 -->
 <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../lib/internal/Magento/Framework/ObjectManager/etc/config.xsd">
     <type name="Magento\SalesRule\Model\Resource\Rule\Collection" shared="false" />
-    <type name="Magento\Sales\Model\Quote\Config">
+    <type name="Magento\Quote\Model\Quote\Config">
         <plugin name="append_sales_rule_keys_to_quote" type="Magento\SalesRule\Model\Plugin\QuoteConfigProductAttributes"/>
     </type>
     <type name="Magento\Framework\Module\Setup\Migration">
diff --git a/app/code/Magento/SalesRule/etc/module.xml b/app/code/Magento/SalesRule/etc/module.xml
index 05d2889286c42806db0adb4f9a5bfa2869eb208e..931a370eeedd1f18aaf0670765bd6d4954b55d98 100644
--- a/app/code/Magento/SalesRule/etc/module.xml
+++ b/app/code/Magento/SalesRule/etc/module.xml
@@ -11,6 +11,7 @@
             <module name="Magento_Rule"/>
             <module name="Magento_Catalog"/>
             <module name="Magento_Sales"/>
+            <module name="Magento_Quote"/>
         </sequence>
     </module>
 </config>
diff --git a/app/code/Magento/SalesRule/view/adminhtml/templates/promo/salesrulejs.phtml b/app/code/Magento/SalesRule/view/adminhtml/templates/promo/salesrulejs.phtml
index f66e78778bfbef6b47f40c82e2aad25b3d72684d..214b703dd2556359c29f515b61cadb0b91276657 100644
--- a/app/code/Magento/SalesRule/view/adminhtml/templates/promo/salesrulejs.phtml
+++ b/app/code/Magento/SalesRule/view/adminhtml/templates/promo/salesrulejs.phtml
@@ -4,7 +4,7 @@
  * See COPYING.txt for license details.
  */
 ?>
-<script type="text/javascript">
+<script>
 require(['jquery', "prototype"], function(jQuery){
 
 //<![CDATA[
diff --git a/app/code/Magento/Search/Block/Adminhtml/Dashboard/Last.php b/app/code/Magento/Search/Block/Adminhtml/Dashboard/Last.php
index bb6565132e775bc050bf93a37fb5164dd30c6046..b0fbd373efa7fa5403dde0299ce837582ae647c1 100644
--- a/app/code/Magento/Search/Block/Adminhtml/Dashboard/Last.php
+++ b/app/code/Magento/Search/Block/Adminhtml/Dashboard/Last.php
@@ -7,6 +7,7 @@ namespace Magento\Search\Block\Adminhtml\Dashboard;
 
 /**
  * Dashboard last search keywords block
+ * @SuppressWarnings(PHPMD.DepthOfInheritance)
  */
 class Last extends \Magento\Backend\Block\Dashboard\Grid
 {
diff --git a/app/code/Magento/Search/Block/Adminhtml/Dashboard/Top.php b/app/code/Magento/Search/Block/Adminhtml/Dashboard/Top.php
index c54e05fbe0e6731979b34df88c4f3bd3ce8de5c5..e08ec6515edb1b598bd1a7d054aae66ab2b4af32 100644
--- a/app/code/Magento/Search/Block/Adminhtml/Dashboard/Top.php
+++ b/app/code/Magento/Search/Block/Adminhtml/Dashboard/Top.php
@@ -7,6 +7,7 @@ namespace Magento\Search\Block\Adminhtml\Dashboard;
 
 /**
  *  Dashboard last search keywords block
+ * @SuppressWarnings(PHPMD.DepthOfInheritance)
  */
 class Top extends \Magento\Backend\Block\Dashboard\Grid
 {
diff --git a/app/code/Magento/Search/Block/Adminhtml/Term/Edit/Form.php b/app/code/Magento/Search/Block/Adminhtml/Term/Edit/Form.php
index 6b4cee2a663f5e949fd40c1bb78611749b9f854c..a7b63d6f28acb2a7027bf01e12a021a7189cad61 100644
--- a/app/code/Magento/Search/Block/Adminhtml/Term/Edit/Form.php
+++ b/app/code/Magento/Search/Block/Adminhtml/Term/Edit/Form.php
@@ -51,6 +51,7 @@ class Form extends \Magento\Backend\Block\Widget\Form\Generic
      * Prepare form fields
      *
      * @return $this
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _prepareForm()
     {
diff --git a/app/code/Magento/Search/Controller/Adminhtml/Term/Edit.php b/app/code/Magento/Search/Controller/Adminhtml/Term/Edit.php
index ef21b7293e33ceccfd0b19749fe25fff1b6403e1..8f650796bf1973909679e931713355054012e558 100644
--- a/app/code/Magento/Search/Controller/Adminhtml/Term/Edit.php
+++ b/app/code/Magento/Search/Controller/Adminhtml/Term/Edit.php
@@ -33,6 +33,7 @@ class Edit extends \Magento\Search\Controller\Adminhtml\Term
 
     /**
      * @return \Magento\Backend\Model\View\Result\Page
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function execute()
     {
diff --git a/app/code/Magento/Search/Controller/Adminhtml/Term/Save.php b/app/code/Magento/Search/Controller/Adminhtml/Term/Save.php
index a186dfba7c169c5cd60e515bc527f18acec2622c..e40b00253d4b1e5dc4fa3e1ad7286dfdc4ef25b5 100644
--- a/app/code/Magento/Search/Controller/Adminhtml/Term/Save.php
+++ b/app/code/Magento/Search/Controller/Adminhtml/Term/Save.php
@@ -31,6 +31,7 @@ class Save extends \Magento\Search\Controller\Adminhtml\Term
      * Save search query
      *
      * @return \Magento\Backend\Model\View\Result\Redirect
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function execute()
     {
diff --git a/app/code/Magento/Search/Helper/Data.php b/app/code/Magento/Search/Helper/Data.php
index e4b0202e1a79c75eec8e1b27679ff4165193d3b0..603f9317fe2b39d7b4776bbd63a84ef471b9f908 100644
--- a/app/code/Magento/Search/Helper/Data.php
+++ b/app/code/Magento/Search/Helper/Data.php
@@ -251,6 +251,7 @@ class Data extends AbstractHelper
      *
      * @param mixed $store
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function checkNotes($store = null)
     {
diff --git a/app/code/Magento/Search/Model/Query.php b/app/code/Magento/Search/Model/Query.php
index 9a0bfd70914431f9f61833b95fd8d0a038667e21..917abf841a7da2b22d9cf1096863efbff0f86fac 100644
--- a/app/code/Magento/Search/Model/Query.php
+++ b/app/code/Magento/Search/Model/Query.php
@@ -40,6 +40,7 @@ use Magento\Store\Model\StoreManagerInterface;
  * @method string getUpdatedAt()
  * @method \Magento\Search\Model\Query setUpdatedAt(string $value)
  * @method \Magento\Search\Model\Query setIsQueryTextExceeded(bool $value)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Query extends AbstractModel implements QueryInterface
 {
diff --git a/app/code/Magento/Search/Model/Resource/Helper.php b/app/code/Magento/Search/Model/Resource/Helper.php
index 8ccf11e186a9d2b869a796655b2b3407576068b8..3a9ddcf7bb682b3df296196d947db83a9594dc01 100644
--- a/app/code/Magento/Search/Model/Resource/Helper.php
+++ b/app/code/Magento/Search/Model/Resource/Helper.php
@@ -25,6 +25,7 @@ class Helper extends \Magento\Framework\DB\Helper
      * @param string $str The source string
      * @param int $maxWordLength
      * @return array (0 => words, 1 => terms)
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function prepareTerms($str, $maxWordLength = 0)
     {
diff --git a/app/code/Magento/Search/Model/Resource/Query.php b/app/code/Magento/Search/Model/Resource/Query.php
index 855d5fa38faf8f51f10271296b49af732288ecde..b2af20520e73f86ea32cf07792512be48b14ecbd 100644
--- a/app/code/Magento/Search/Model/Resource/Query.php
+++ b/app/code/Magento/Search/Model/Resource/Query.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Search\Model\Resource;
 
 use Magento\Framework\DB\Select;
diff --git a/app/code/Magento/Search/composer.json b/app/code/Magento/Search/composer.json
index 3b6df7b57463c829347bf3bfe58a62c9c48910c9..3d147502ec1a19fd91630fd94088af4d2f862254 100644
--- a/app/code/Magento/Search/composer.json
+++ b/app/code/Magento/Search/composer.json
@@ -3,14 +3,14 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/framework": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-reports": "0.42.0-beta3",
+        "magento/framework": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-reports": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/Search/view/frontend/templates/search_data.phtml b/app/code/Magento/Search/view/frontend/templates/search_data.phtml
index 2c65a6a8fb8dd1a2edb147e833f372a9ffd67e19..f03536c1aa4e318e13724427c5372c238f5daf0e 100644
--- a/app/code/Magento/Search/view/frontend/templates/search_data.phtml
+++ b/app/code/Magento/Search/view/frontend/templates/search_data.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/Search/view/frontend/templates/term.phtml b/app/code/Magento/Search/view/frontend/templates/term.phtml
index d15c1bddfe103f1898ea159ce96ca642a7db3f8b..c7c2d888159ae68dc3377646952e39542365f583 100644
--- a/app/code/Magento/Search/view/frontend/templates/term.phtml
+++ b/app/code/Magento/Search/view/frontend/templates/term.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php if (sizeof($this->getTerms()) > 0): ?>
     <ul class="search-terms">
diff --git a/app/code/Magento/Sendfriend/Controller/Product/Sendmail.php b/app/code/Magento/Sendfriend/Controller/Product/Sendmail.php
index 4d1645da39aa034827f4ac3c37e37e85b362d9a5..e3ac2a66b17ef58c0110fd96c8bc0d822d9f2e95 100644
--- a/app/code/Magento/Sendfriend/Controller/Product/Sendmail.php
+++ b/app/code/Magento/Sendfriend/Controller/Product/Sendmail.php
@@ -4,6 +4,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Sendfriend\Controller\Product;
 
 use Magento\Framework\Exception\NoSuchEntityException;
@@ -37,6 +40,7 @@ class Sendmail extends \Magento\Sendfriend\Controller\Product
      * Send Email Post Action
      *
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function execute()
     {
diff --git a/app/code/Magento/Sendfriend/Helper/Data.php b/app/code/Magento/Sendfriend/Helper/Data.php
index 0b14d107863c49e781cc524596d92076c2c4b04a..e7befbc90105faea6729863e522ca7121ccab82e 100644
--- a/app/code/Magento/Sendfriend/Helper/Data.php
+++ b/app/code/Magento/Sendfriend/Helper/Data.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Sendfriend\Helper;
 
 /**
diff --git a/app/code/Magento/Sendfriend/Model/Observer.php b/app/code/Magento/Sendfriend/Model/Observer.php
index 6d792a985ff493a2e95b085ec069abe9a8a52924..b3883234c174074d88c7313e7426865e634d7e11 100644
--- a/app/code/Magento/Sendfriend/Model/Observer.php
+++ b/app/code/Magento/Sendfriend/Model/Observer.php
@@ -31,6 +31,7 @@ class Observer
      *
      * @param \Magento\Framework\Event\Observer $observer
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function register(\Magento\Framework\Event\Observer $observer)
     {
diff --git a/app/code/Magento/Sendfriend/Model/Resource/Sendfriend.php b/app/code/Magento/Sendfriend/Model/Resource/Sendfriend.php
index d74e7a6cb15dab12094a03bf41652523951b3bd1..e2e98e4b7c1430506462d65e306cda1a3baf39da 100644
--- a/app/code/Magento/Sendfriend/Model/Resource/Sendfriend.php
+++ b/app/code/Magento/Sendfriend/Model/Resource/Sendfriend.php
@@ -30,6 +30,7 @@ class Sendfriend extends \Magento\Framework\Model\Resource\Db\AbstractDb
      * @param int $startTime
      * @param int $websiteId
      * @return int
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function getSendCount($object, $ip, $startTime, $websiteId = null)
     {
diff --git a/app/code/Magento/Sendfriend/Model/Sendfriend.php b/app/code/Magento/Sendfriend/Model/Sendfriend.php
index d365253ebfd91b65745669b7c097476e1452eb25..fc91a198568dae8c697e667feefda63a42b2173c 100644
--- a/app/code/Magento/Sendfriend/Model/Sendfriend.php
+++ b/app/code/Magento/Sendfriend/Model/Sendfriend.php
@@ -18,6 +18,7 @@ use Magento\Framework\Model\Exception as CoreException;
  * @method \Magento\Sendfriend\Model\Sendfriend setTime(int $value)
  *
  * @author      Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Sendfriend extends \Magento\Framework\Model\AbstractModel
 {
@@ -121,6 +122,7 @@ class Sendfriend extends \Magento\Framework\Model\AbstractModel
      * @param \Magento\Framework\Model\Resource\AbstractResource $resource
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
@@ -219,6 +221,8 @@ class Sendfriend extends \Magento\Framework\Model\AbstractModel
      * Validate Form data
      *
      * @return bool|string[]
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function validate()
     {
@@ -268,6 +272,7 @@ class Sendfriend extends \Magento\Framework\Model\AbstractModel
      *
      * @param array $recipients
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function setRecipients($recipients)
     {
diff --git a/app/code/Magento/Sendfriend/composer.json b/app/code/Magento/Sendfriend/composer.json
index 79e1041b4822d98bf337518579d18923d762e641..b853f7ff19105fff96b91dd39db6aea2f1bdde3c 100644
--- a/app/code/Magento/Sendfriend/composer.json
+++ b/app/code/Magento/Sendfriend/composer.json
@@ -3,16 +3,16 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-catalog": "0.42.0-beta3",
-        "magento/module-core": "0.42.0-beta3",
-        "magento/module-customer": "0.42.0-beta3",
-        "magento/module-theme": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-catalog": "0.42.0-beta4",
+        "magento/module-core": "0.42.0-beta4",
+        "magento/module-customer": "0.42.0-beta4",
+        "magento/module-theme": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/Sendfriend/view/frontend/templates/send.phtml b/app/code/Magento/Sendfriend/view/frontend/templates/send.phtml
index e888376bcaad2598564e70e8d84aec38e647aa7e..91604d10ef48f6935c1ecfe8e401fe599cb42681 100644
--- a/app/code/Magento/Sendfriend/view/frontend/templates/send.phtml
+++ b/app/code/Magento/Sendfriend/view/frontend/templates/send.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /**
  * Send to friend form
  *
@@ -111,7 +114,7 @@
         </div>
     </div>
 </form>
-<script type="text/javascript">
+<script>
 require(['jquery'], function(jQuery){
 
     //<![CDATA[
diff --git a/app/code/Magento/Shipping/Block/Adminhtml/View/Form.php b/app/code/Magento/Shipping/Block/Adminhtml/View/Form.php
index 9dafeb0810e4ea133850562a9a3c69302f89f0b4..2f848e0a150c139f624847ddbdab1d9a89abd174 100644
--- a/app/code/Magento/Shipping/Block/Adminhtml/View/Form.php
+++ b/app/code/Magento/Shipping/Block/Adminhtml/View/Form.php
@@ -70,6 +70,7 @@ class Form extends \Magento\Sales\Block\Adminhtml\Order\AbstractOrder
      * Get create label button html
      *
      * @return string
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function getCreateLabelButton()
     {
diff --git a/app/code/Magento/Shipping/Block/Tracking/Popup.php b/app/code/Magento/Shipping/Block/Tracking/Popup.php
index 61cab60211554252e5c98ba5d0a00538c958a282..2959384a80acd7377399d80ca1a36fa266619e9b 100644
--- a/app/code/Magento/Shipping/Block/Tracking/Popup.php
+++ b/app/code/Magento/Shipping/Block/Tracking/Popup.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Shipping\Block\Tracking;
 
 class Popup extends \Magento\Framework\View\Element\Template
@@ -86,6 +89,7 @@ class Popup extends \Magento\Framework\View\Element\Template
      * Is 'contact us' option enabled?
      *
      * @return boolean
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getContactUsEnabled()
     {
diff --git a/app/code/Magento/Shipping/Controller/Adminhtml/Order/Shipment/MassPrintShippingLabel.php b/app/code/Magento/Shipping/Controller/Adminhtml/Order/Shipment/MassPrintShippingLabel.php
index 8ef98d7eb22bc8700bd8bb47b6fc8c8b58d56d55..09b92ee211a1ce0cb121e81304945b947a6c744f 100644
--- a/app/code/Magento/Shipping/Controller/Adminhtml/Order/Shipment/MassPrintShippingLabel.php
+++ b/app/code/Magento/Shipping/Controller/Adminhtml/Order/Shipment/MassPrintShippingLabel.php
@@ -50,6 +50,7 @@ class MassPrintShippingLabel extends \Magento\Backend\App\Action
      * Push pdf document with shipping labels to user browser
      *
      * @return ResponseInterface|void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function execute()
     {
diff --git a/app/code/Magento/Shipping/Controller/Adminhtml/Order/Shipment/Save.php b/app/code/Magento/Shipping/Controller/Adminhtml/Order/Shipment/Save.php
index 9a3fcde21810585778de0c198c15020073cec8f6..7e35623f2d79bacbc748ae48cbdb1b280feb77ac 100644
--- a/app/code/Magento/Shipping/Controller/Adminhtml/Order/Shipment/Save.php
+++ b/app/code/Magento/Shipping/Controller/Adminhtml/Order/Shipment/Save.php
@@ -78,6 +78,8 @@ class Save extends \Magento\Backend\App\Action
      * We can save only new shipment. Existing shipments are not editable
      *
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function execute()
     {
diff --git a/app/code/Magento/Shipping/Helper/Data.php b/app/code/Magento/Shipping/Helper/Data.php
index b1c29f0d1bbba8af00995a4cd5e696ccd2d9c871..c7cddf2cab81c15c62b9dffc4fb6accb44f43d39 100644
--- a/app/code/Magento/Shipping/Helper/Data.php
+++ b/app/code/Magento/Shipping/Helper/Data.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Shipping data helper
  */
diff --git a/app/code/Magento/Shipping/Model/Carrier/AbstractCarrier.php b/app/code/Magento/Shipping/Model/Carrier/AbstractCarrier.php
index 81ec7e3c314fd6d5cb1ef67527e2d03cfa813153..147f50e0ba15b9debdd514b581b46fcff1f0257c 100644
--- a/app/code/Magento/Shipping/Model/Carrier/AbstractCarrier.php
+++ b/app/code/Magento/Shipping/Model/Carrier/AbstractCarrier.php
@@ -3,10 +3,13 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Shipping\Model\Carrier;
 
-use Magento\Sales\Model\Quote\Address\AbstractCarrierInterface;
-use Magento\Sales\Model\Quote\Address\RateResult\Error;
+use Magento\Quote\Model\Quote\Address\AbstractCarrierInterface;
+use Magento\Quote\Model\Quote\Address\RateResult\Error;
 use Magento\Shipping\Model\Shipment\Request;
 
 abstract class AbstractCarrier extends \Magento\Framework\Object implements AbstractCarrierInterface
@@ -82,7 +85,7 @@ abstract class AbstractCarrier extends \Magento\Framework\Object implements Abst
     protected $_scopeConfig;
 
     /**
-     * @var \Magento\Sales\Model\Quote\Address\RateResult\ErrorFactory
+     * @var \Magento\Quote\Model\Quote\Address\RateResult\ErrorFactory
      */
     protected $_rateErrorFactory;
 
@@ -93,13 +96,13 @@ abstract class AbstractCarrier extends \Magento\Framework\Object implements Abst
 
     /**
      * @param \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig
-     * @param \Magento\Sales\Model\Quote\Address\RateResult\ErrorFactory $rateErrorFactory
+     * @param \Magento\Quote\Model\Quote\Address\RateResult\ErrorFactory $rateErrorFactory
      * @param \Psr\Log\LoggerInterface $logger
      * @param array $data
      */
     public function __construct(
         \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig,
-        \Magento\Sales\Model\Quote\Address\RateResult\ErrorFactory $rateErrorFactory,
+        \Magento\Quote\Model\Quote\Address\RateResult\ErrorFactory $rateErrorFactory,
         \Psr\Log\LoggerInterface $logger,
         array $data = []
     ) {
@@ -133,6 +136,7 @@ abstract class AbstractCarrier extends \Magento\Framework\Object implements Abst
      *
      * @param string $field
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getConfigFlag($field)
     {
@@ -150,11 +154,11 @@ abstract class AbstractCarrier extends \Magento\Framework\Object implements Abst
     /**
      * Collect and get rates
      *
-     * @param \Magento\Sales\Model\Quote\Address\RateRequest $request
+     * @param \Magento\Quote\Model\Quote\Address\RateRequest $request
      * @return \Magento\Shipping\Model\Rate\Result|bool|null
      * @abstract
      */
-    abstract public function collectRates(\Magento\Sales\Model\Quote\Address\RateRequest $request);
+    abstract public function collectRates(\Magento\Quote\Model\Quote\Address\RateRequest $request);
 
     /**
      * Do request to shipment
@@ -162,6 +166,7 @@ abstract class AbstractCarrier extends \Magento\Framework\Object implements Abst
      *
      * @param Request $request
      * @return \Magento\Framework\Object
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function requestToShipment($request)
     {
@@ -174,6 +179,7 @@ abstract class AbstractCarrier extends \Magento\Framework\Object implements Abst
      *
      * @param Request $request
      * @return \Magento\Framework\Object
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function returnOfShipment($request)
     {
@@ -185,6 +191,7 @@ abstract class AbstractCarrier extends \Magento\Framework\Object implements Abst
      *
      * @param \Magento\Framework\Object|null $params
      * @return array
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function getContainerTypes(\Magento\Framework\Object $params = null)
     {
@@ -196,6 +203,8 @@ abstract class AbstractCarrier extends \Magento\Framework\Object implements Abst
      *
      * @param \Magento\Framework\Object|null $params
      * @return array|bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _getAllowedContainers(\Magento\Framework\Object $params = null)
     {
@@ -259,6 +268,7 @@ abstract class AbstractCarrier extends \Magento\Framework\Object implements Abst
      *
      * @param \Magento\Framework\Object|null $params
      * @return array
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function getDeliveryConfirmationTypes(\Magento\Framework\Object $params = null)
     {
@@ -266,10 +276,11 @@ abstract class AbstractCarrier extends \Magento\Framework\Object implements Abst
     }
 
     /**
-     * @param \Magento\Sales\Model\Quote\Address\RateRequest $request
+     * @param \Magento\Quote\Model\Quote\Address\RateRequest $request
      * @return $this|bool|false|\Magento\Framework\Model\AbstractModel
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
-    public function checkAvailableShipCountries(\Magento\Sales\Model\Quote\Address\RateRequest $request)
+    public function checkAvailableShipCountries(\Magento\Quote\Model\Quote\Address\RateRequest $request)
     {
         $speCountriesAllow = $this->getConfigData('sallowspecific');
         /*
@@ -312,10 +323,11 @@ abstract class AbstractCarrier extends \Magento\Framework\Object implements Abst
     /**
      * Processing additional validation to check is carrier applicable.
      *
-     * @param \Magento\Sales\Model\Quote\Address\RateRequest $request
+     * @param \Magento\Quote\Model\Quote\Address\RateRequest $request
      * @return $this|bool|Error
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
-    public function proccessAdditionalValidation(\Magento\Sales\Model\Quote\Address\RateRequest $request)
+    public function proccessAdditionalValidation(\Magento\Quote\Model\Quote\Address\RateRequest $request)
     {
         return $this;
     }
@@ -372,8 +384,10 @@ abstract class AbstractCarrier extends \Magento\Framework\Object implements Abst
     }
 
     /**
-     * @param \Magento\Sales\Model\Quote\Address\RateRequest $request
+     * @param \Magento\Quote\Model\Quote\Address\RateRequest $request
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _updateFreeMethodQuote($request)
     {
@@ -405,12 +419,12 @@ abstract class AbstractCarrier extends \Magento\Framework\Object implements Abst
 
             $result = $this->_getQuotes();
             if ($result && ($rates = $result->getAllRates()) && count($rates) > 0) {
-                if (count($rates) == 1 && $rates[0] instanceof \Magento\Sales\Model\Quote\Address\RateResult\Method) {
+                if (count($rates) == 1 && $rates[0] instanceof \Magento\Quote\Model\Quote\Address\RateResult\Method) {
                     $price = $rates[0]->getPrice();
                 }
                 if (count($rates) > 1) {
                     foreach ($rates as $rate) {
-                        if ($rate instanceof \Magento\Sales\Model\Quote\Address\RateResult\Method &&
+                        if ($rate instanceof \Magento\Quote\Model\Quote\Address\RateResult\Method &&
                             $rate->getMethod() == $freeMethod
                         ) {
                             $price = $rate->getPrice();
@@ -554,6 +568,7 @@ abstract class AbstractCarrier extends \Magento\Framework\Object implements Abst
      *
      * @param string|null $countryId
      * @return bool
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function isZipCodeRequired($countryId = null)
     {
@@ -577,6 +592,7 @@ abstract class AbstractCarrier extends \Magento\Framework\Object implements Abst
      * Define if debugging is enabled
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getDebugFlag()
     {
@@ -609,6 +625,7 @@ abstract class AbstractCarrier extends \Magento\Framework\Object implements Abst
      *
      * @param \Magento\Framework\Object $params
      * @return array
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function getContentTypes(\Magento\Framework\Object $params)
     {
diff --git a/app/code/Magento/Shipping/Model/Carrier/AbstractCarrierOnline.php b/app/code/Magento/Shipping/Model/Carrier/AbstractCarrierOnline.php
index f5e69455cfc62eff404581ad2e9d57f7f32795ce..592adb163f83660748e94335abef687ee62d7876 100644
--- a/app/code/Magento/Shipping/Model/Carrier/AbstractCarrierOnline.php
+++ b/app/code/Magento/Shipping/Model/Carrier/AbstractCarrierOnline.php
@@ -6,12 +6,13 @@
 namespace Magento\Shipping\Model\Carrier;
 
 use Magento\Framework\Model\Exception;
-use Magento\Sales\Model\Quote\Address\RateRequest;
-use Magento\Sales\Model\Quote\Address\RateResult\Error;
+use Magento\Quote\Model\Quote\Address\RateRequest;
+use Magento\Quote\Model\Quote\Address\RateResult\Error;
 use Magento\Shipping\Model\Shipment\Request;
 
 /**
  * Abstract online shipping carrier model
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 abstract class AbstractCarrierOnline extends AbstractCarrier
 {
@@ -55,7 +56,7 @@ abstract class AbstractCarrierOnline extends AbstractCarrier
     protected $_rateFactory;
 
     /**
-     * @var \Magento\Sales\Model\Quote\Address\RateResult\MethodFactory
+     * @var \Magento\Quote\Model\Quote\Address\RateResult\MethodFactory
      */
     protected $_rateMethodFactory;
 
@@ -103,11 +104,11 @@ abstract class AbstractCarrierOnline extends AbstractCarrier
 
     /**
      * @param \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig
-     * @param \Magento\Sales\Model\Quote\Address\RateResult\ErrorFactory $rateErrorFactory
+     * @param \Magento\Quote\Model\Quote\Address\RateResult\ErrorFactory $rateErrorFactory
      * @param \Psr\Log\LoggerInterface $logger
      * @param \Magento\Shipping\Model\Simplexml\ElementFactory $xmlElFactory
      * @param \Magento\Shipping\Model\Rate\ResultFactory $rateFactory
-     * @param \Magento\Sales\Model\Quote\Address\RateResult\MethodFactory $rateMethodFactory
+     * @param \Magento\Quote\Model\Quote\Address\RateResult\MethodFactory $rateMethodFactory
      * @param \Magento\Shipping\Model\Tracking\ResultFactory $trackFactory
      * @param \Magento\Shipping\Model\Tracking\Result\ErrorFactory $trackErrorFactory
      * @param \Magento\Shipping\Model\Tracking\Result\StatusFactory $trackStatusFactory
@@ -122,11 +123,11 @@ abstract class AbstractCarrierOnline extends AbstractCarrier
      */
     public function __construct(
         \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig,
-        \Magento\Sales\Model\Quote\Address\RateResult\ErrorFactory $rateErrorFactory,
+        \Magento\Quote\Model\Quote\Address\RateResult\ErrorFactory $rateErrorFactory,
         \Psr\Log\LoggerInterface $logger,
         \Magento\Shipping\Model\Simplexml\ElementFactory $xmlElFactory,
         \Magento\Shipping\Model\Rate\ResultFactory $rateFactory,
-        \Magento\Sales\Model\Quote\Address\RateResult\MethodFactory $rateMethodFactory,
+        \Magento\Quote\Model\Quote\Address\RateResult\MethodFactory $rateMethodFactory,
         \Magento\Shipping\Model\Tracking\ResultFactory $trackFactory,
         \Magento\Shipping\Model\Tracking\Result\ErrorFactory $trackErrorFactory,
         \Magento\Shipping\Model\Tracking\Result\StatusFactory $trackStatusFactory,
@@ -247,13 +248,14 @@ abstract class AbstractCarrierOnline extends AbstractCarrier
      *
      * @param RateRequest $request
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function getAllItems(RateRequest $request)
     {
         $items = [];
         if ($request->getAllItems()) {
             foreach ($request->getAllItems() as $item) {
-                /* @var $item \Magento\Sales\Model\Quote\Item */
+                /* @var $item \Magento\Quote\Model\Quote\Item */
                 if ($item->getProduct()->isVirtual() || $item->getParentItem()) {
                     // Don't process children here - we will process (or already have processed) them below
                     continue;
@@ -279,6 +281,8 @@ abstract class AbstractCarrierOnline extends AbstractCarrier
      *
      * @param RateRequest $request
      * @return $this|bool|Error
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function proccessAdditionalValidation(RateRequest $request)
     {
@@ -293,7 +297,7 @@ abstract class AbstractCarrierOnline extends AbstractCarrier
         $defaultErrorMsg = __('The shipping module is not available.');
         $showMethod = $this->getConfigData('showmethod');
 
-        /** @var $item \Magento\Sales\Model\Quote\Item */
+        /** @var $item \Magento\Quote\Model\Quote\Item */
         foreach ($this->getAllItems($request) as $item) {
             $product = $item->getProduct();
             if ($product && $product->getId()) {
@@ -518,6 +522,7 @@ abstract class AbstractCarrierOnline extends AbstractCarrier
      * @return bool
      *
      * @todo implement rollback logic
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function rollBack($data)
     {
@@ -566,6 +571,7 @@ abstract class AbstractCarrierOnline extends AbstractCarrier
      *
      * @param null|string $countyDest
      * @return bool
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function isGirthAllowed($countyDest = null)
     {
diff --git a/app/code/Magento/Shipping/Model/CarrierFactory.php b/app/code/Magento/Shipping/Model/CarrierFactory.php
index a60ef4ee2c3c3292333a7a938d1a2134035d6cb2..ac7dcc25146347f60e41e5e6696a02b171dc1c1a 100644
--- a/app/code/Magento/Shipping/Model/CarrierFactory.php
+++ b/app/code/Magento/Shipping/Model/CarrierFactory.php
@@ -5,7 +5,7 @@
  */
 namespace Magento\Shipping\Model;
 
-use Magento\Sales\Model\Quote\Address\CarrierFactoryInterface;
+use Magento\Quote\Model\Quote\Address\CarrierFactoryInterface;
 
 class CarrierFactory implements CarrierFactoryInterface
 {
diff --git a/app/code/Magento/Shipping/Model/Config.php b/app/code/Magento/Shipping/Model/Config.php
index 68cb91bf39e2dee8519161ce6a05d9b56a8372c4..c5ac94f1ef5b3c51c82073bd1f07388fddd38694 100644
--- a/app/code/Magento/Shipping/Model/Config.php
+++ b/app/code/Magento/Shipping/Model/Config.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Shipping\Model;
 
 class Config extends \Magento\Framework\Object
diff --git a/app/code/Magento/Shipping/Model/Info.php b/app/code/Magento/Shipping/Model/Info.php
index ccbf79eaa36d525874095e3be0a2f24203b0cd56..c455c59d91e71d332f543974c93dab3b66a62778 100644
--- a/app/code/Magento/Shipping/Model/Info.php
+++ b/app/code/Magento/Shipping/Model/Info.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Shipping\Model;
 
 use Magento\Sales\Model\Order\Shipment;
diff --git a/app/code/Magento/Shipping/Model/Order/Pdf/Packaging.php b/app/code/Magento/Shipping/Model/Order/Pdf/Packaging.php
index 80a94cc517f277e79bb05b1008da414375c01bdd..2e481201d7f10cb6f2718eff22e947ddf4c48488 100644
--- a/app/code/Magento/Shipping/Model/Order/Pdf/Packaging.php
+++ b/app/code/Magento/Shipping/Model/Order/Pdf/Packaging.php
@@ -7,6 +7,9 @@ namespace Magento\Shipping\Model\Order\Pdf;
 
 use Magento\Shipping\Helper\Carrier;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class Packaging extends \Magento\Sales\Model\Order\Pdf\AbstractPdf
 {
     /**
@@ -142,6 +145,10 @@ class Packaging extends \Magento\Sales\Model\Order\Pdf\AbstractPdf
      *
      * @param  \Zend_Pdf_Page $page
      * @return \Magento\Shipping\Model\Order\Pdf\Packaging
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     protected function _drawPackageBlock(\Zend_Pdf_Page $page)
     {
diff --git a/app/code/Magento/Shipping/Model/Rate/Result.php b/app/code/Magento/Shipping/Model/Rate/Result.php
index d632f77455f42ee1c389f3f98e39f0a86383f81b..697b91b4d5941629c46b1caf9d4bffdbbecf0fb9 100644
--- a/app/code/Magento/Shipping/Model/Rate/Result.php
+++ b/app/code/Magento/Shipping/Model/Rate/Result.php
@@ -69,15 +69,15 @@ class Result
     /**
      * Add a rate to the result
      *
-     * @param \Magento\Sales\Model\Quote\Address\RateResult\AbstractResult|\Magento\Shipping\Model\Rate\Result $result
+     * @param \Magento\Quote\Model\Quote\Address\RateResult\AbstractResult|\Magento\Shipping\Model\Rate\Result $result
      * @return $this
      */
     public function append($result)
     {
-        if ($result instanceof \Magento\Sales\Model\Quote\Address\RateResult\Error) {
+        if ($result instanceof \Magento\Quote\Model\Quote\Address\RateResult\Error) {
             $this->setError(true);
         }
-        if ($result instanceof \Magento\Sales\Model\Quote\Address\RateResult\AbstractResult) {
+        if ($result instanceof \Magento\Quote\Model\Quote\Address\RateResult\AbstractResult) {
             $this->_rates[] = $result;
         } elseif ($result instanceof \Magento\Shipping\Model\Rate\Result) {
             $rates = $result->getAllRates();
@@ -102,7 +102,7 @@ class Result
      * Return rate by id in array
      *
      * @param int $id
-     * @return \Magento\Sales\Model\Quote\Address\RateResult\Method|null
+     * @return \Magento\Quote\Model\Quote\Address\RateResult\Method|null
      */
     public function getRateById($id)
     {
@@ -163,7 +163,7 @@ class Result
     /**
      * Get cheapest rate
      *
-     * @return null|\Magento\Sales\Model\Quote\Address\RateResult\Method
+     * @return null|\Magento\Quote\Model\Quote\Address\RateResult\Method
      */
     public function getCheapestRate()
     {
@@ -182,13 +182,14 @@ class Result
      * Sort rates by price from min to max
      *
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function sortRatesByPrice()
     {
         if (!is_array($this->_rates) || !count($this->_rates)) {
             return $this;
         }
-        /* @var $rate \Magento\Sales\Model\Quote\Address\RateResult\Method */
+        /* @var $rate \Magento\Quote\Model\Quote\Address\RateResult\Method */
         foreach ($this->_rates as $i => $rate) {
             $tmp[$i] = $rate->getPrice();
         }
diff --git a/app/code/Magento/Shipping/Model/Shipping.php b/app/code/Magento/Shipping/Model/Shipping.php
index a1a12b37ed4c25114a492ff0e722147ca92a943d..bcb067aba82ed22e0984fe47e43f52287ade8c48 100644
--- a/app/code/Magento/Shipping/Model/Shipping.php
+++ b/app/code/Magento/Shipping/Model/Shipping.php
@@ -6,8 +6,11 @@
 namespace Magento\Shipping\Model;
 
 use Magento\Sales\Model\Order\Shipment;
-use Magento\Sales\Model\Quote\Address\RateCollectorInterface;
+use Magento\Quote\Model\Quote\Address\RateCollectorInterface;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class Shipping implements RateCollectorInterface
 {
     /**
@@ -59,7 +62,7 @@ class Shipping implements RateCollectorInterface
     protected $_rateResultFactory;
 
     /**
-     * @var \Magento\Sales\Model\Quote\Address\RateRequestFactory
+     * @var \Magento\Quote\Model\Quote\Address\RateRequestFactory
      */
     protected $_shipmentRequestFactory;
 
@@ -159,11 +162,11 @@ class Shipping implements RateCollectorInterface
     /**
      * Retrieve all methods for supplied shipping data
      *
-     * @param \Magento\Sales\Model\Quote\Address\RateRequest $request
+     * @param \Magento\Quote\Model\Quote\Address\RateRequest $request
      * @return $this
      * @todo make it ordered
      */
-    public function collectRates(\Magento\Sales\Model\Quote\Address\RateRequest $request)
+    public function collectRates(\Magento\Quote\Model\Quote\Address\RateRequest $request)
     {
         $storeId = $request->getStoreId();
         if (!$request->getOrig()) {
@@ -229,8 +232,10 @@ class Shipping implements RateCollectorInterface
      * Collect rates of given carrier
      *
      * @param string $carrierCode
-     * @param \Magento\Sales\Model\Quote\Address\RateRequest $request
+     * @param \Magento\Quote\Model\Quote\Address\RateRequest $request
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function collectCarrierRates($carrierCode, $request)
     {
@@ -241,7 +246,7 @@ class Shipping implements RateCollectorInterface
         }
         $carrier->setActiveFlag($this->_availabilityConfigField);
         $result = $carrier->checkAvailableShipCountries($request);
-        if (false !== $result && !$result instanceof \Magento\Sales\Model\Quote\Address\RateResult\Error) {
+        if (false !== $result && !$result instanceof \Magento\Quote\Model\Quote\Address\RateResult\Error) {
             $result = $carrier->proccessAdditionalValidation($request);
         }
         /*
@@ -249,7 +254,7 @@ class Shipping implements RateCollectorInterface
          * if the delivery country is not within specific countries
          */
         if (false !== $result) {
-            if (!$result instanceof \Magento\Sales\Model\Quote\Address\RateResult\Error) {
+            if (!$result instanceof \Magento\Quote\Model\Quote\Address\RateResult\Error) {
                 if ($carrier->getConfigData('shipment_requesttype')) {
                     $packages = $this->composePackagesForCarrier($carrier, $request);
                     if (!empty($packages)) {
@@ -308,8 +313,10 @@ class Shipping implements RateCollectorInterface
      * Divides order into items and items into parts if it's necessary
      *
      * @param \Magento\Shipping\Model\Carrier\AbstractCarrier $carrier
-     * @param \Magento\Sales\Model\Quote\Address\RateRequest $request
+     * @param \Magento\Quote\Model\Quote\Address\RateRequest $request
      * @return array [int, float]
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function composePackagesForCarrier($carrier, $request)
     {
@@ -318,7 +325,7 @@ class Shipping implements RateCollectorInterface
 
         $maxWeight = (double)$carrier->getConfigData('max_package_weight');
 
-        /** @var $item \Magento\Sales\Model\Quote\Item */
+        /** @var $item \Magento\Quote\Model\Quote\Item */
         foreach ($allItems as $item) {
             if ($item->getProductType() == \Magento\Catalog\Model\Product\Type::TYPE_BUNDLE
                 && $item->getProduct()->getShipmentType()
@@ -455,7 +462,7 @@ class Shipping implements RateCollectorInterface
      */
     public function collectRatesByAddress(\Magento\Framework\Object $address, $limitCarrier = null)
     {
-        /** @var $request \Magento\Sales\Model\Quote\Address\RateRequest */
+        /** @var $request \Magento\Quote\Model\Quote\Address\RateRequest */
         $request = $this->_shipmentRequestFactory->create();
         $request->setAllItems($address->getAllItems());
         $request->setDestCountryId($address->getCountryId());
diff --git a/app/code/Magento/Shipping/Model/Shipping/LabelGenerator.php b/app/code/Magento/Shipping/Model/Shipping/LabelGenerator.php
index e55c9991d8bdcfa1f4e1c870adefa479a65e260c..e51a5eb891f07b31598f2cbe03c30d5d4829c0e0 100644
--- a/app/code/Magento/Shipping/Model/Shipping/LabelGenerator.php
+++ b/app/code/Magento/Shipping/Model/Shipping/LabelGenerator.php
@@ -9,6 +9,9 @@ namespace Magento\Shipping\Model\Shipping;
 use Magento\Framework\App\Filesystem\DirectoryList;
 use Magento\Framework\App\RequestInterface;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class LabelGenerator
 {
     /**
diff --git a/app/code/Magento/Shipping/Model/Shipping/Labels.php b/app/code/Magento/Shipping/Model/Shipping/Labels.php
index a279416633ca4cac85371c1cab8f02373983a1f1..40b7add661e011da1e88900076c500ef482f6865 100644
--- a/app/code/Magento/Shipping/Model/Shipping/Labels.php
+++ b/app/code/Magento/Shipping/Model/Shipping/Labels.php
@@ -3,12 +3,16 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Shipping\Model\Shipping;
 
 use Magento\Sales\Model\Order\Shipment;
 
 /**
  * Shipping labels model
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Labels extends \Magento\Shipping\Model\Shipping
 {
@@ -34,6 +38,7 @@ class Labels extends \Magento\Shipping\Model\Shipping
      * @param \Magento\CatalogInventory\Api\StockRegistryInterface $stockRegistry
      * @param \Magento\Backend\Model\Auth\Session $authSession
      * @param \Magento\Shipping\Model\Shipment\Request $request
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig,
@@ -69,6 +74,8 @@ class Labels extends \Magento\Shipping\Model\Shipping
      * @param Shipment $orderShipment
      * @return \Magento\Framework\Object
      * @throws \Magento\Framework\Model\Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public function requestToShipment(Shipment $orderShipment)
     {
diff --git a/app/code/Magento/Shipping/composer.json b/app/code/Magento/Shipping/composer.json
index 08a1e9d7969cdcbae2f36d3cd070fc983b34adf2..51fdbde0fac25f786574e9a137b6f92c91f90a2f 100644
--- a/app/code/Magento/Shipping/composer.json
+++ b/app/code/Magento/Shipping/composer.json
@@ -3,27 +3,28 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-core": "0.42.0-beta3",
-        "magento/module-catalog": "0.42.0-beta3",
-        "magento/module-sales": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/module-directory": "0.42.0-beta3",
-        "magento/module-contact": "0.42.0-beta3",
-        "magento/module-customer": "0.42.0-beta3",
-        "magento/module-payment": "0.42.0-beta3",
-        "magento/module-tax": "0.42.0-beta3",
-        "magento/module-catalog-inventory": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-core": "0.42.0-beta4",
+        "magento/module-catalog": "0.42.0-beta4",
+        "magento/module-sales": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/module-directory": "0.42.0-beta4",
+        "magento/module-contact": "0.42.0-beta4",
+        "magento/module-customer": "0.42.0-beta4",
+        "magento/module-payment": "0.42.0-beta4",
+        "magento/module-tax": "0.42.0-beta4",
+        "magento/module-catalog-inventory": "0.42.0-beta4",
+        "magento/module-quote": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "ext-gd": "*",
         "magento/magento-composer-installer": "*"
     },
     "suggest": {
-        "magento/module-fedex": "0.42.0-beta3",
-        "magento/module-ups": "0.42.0-beta3"
+        "magento/module-fedex": "0.42.0-beta4",
+        "magento/module-ups": "0.42.0-beta4"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/Shipping/etc/di.xml b/app/code/Magento/Shipping/etc/di.xml
index ed903157f53ccbde6e06f02314ad20bf53d01be3..92fad82f65d25fb31c36ebc8f3de56a5b3abb8d7 100644
--- a/app/code/Magento/Shipping/etc/di.xml
+++ b/app/code/Magento/Shipping/etc/di.xml
@@ -6,7 +6,7 @@
  */
 -->
 <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../lib/internal/Magento/Framework/ObjectManager/etc/config.xsd">
-    <preference for="Magento\Sales\Model\Quote\Address\RateCollectorInterface" type="Magento\Shipping\Model\Shipping" />
-    <preference for="Magento\Sales\Model\Quote\Address\CarrierFactoryInterface" type="Magento\Shipping\Model\CarrierFactory" />
+    <preference for="Magento\Quote\Model\Quote\Address\RateCollectorInterface" type="Magento\Shipping\Model\Shipping" />
+    <preference for="Magento\Quote\Model\Quote\Address\CarrierFactoryInterface" type="Magento\Shipping\Model\CarrierFactory" />
     <preference for="Magento\Shipping\Model\Carrier\Source\GenericInterface" type="\Magento\Shipping\Model\Carrier\Source\GenericDefault" />
 </config>
diff --git a/app/code/Magento/Shipping/view/adminhtml/templates/create/form.phtml b/app/code/Magento/Shipping/view/adminhtml/templates/create/form.phtml
index f4d435ee2eeb4b110c2f7f84e99bb31dca6ee5eb..3be6425cab0f1a44826eca845408be24bc5f3876 100644
--- a/app/code/Magento/Shipping/view/adminhtml/templates/create/form.phtml
+++ b/app/code/Magento/Shipping/view/adminhtml/templates/create/form.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <form id="edit_form" method="post" action="<?php echo $this->getSaveUrl() ?>">
     <?php echo $this->getBlockHtml('formkey')?>
@@ -50,7 +53,7 @@
         <?php echo $this->getItemsHtml() ?>
     </div>
 </form>
-<script type="text/javascript">
+<script>
 require([
     "jquery",
     "mage/mage",
diff --git a/app/code/Magento/Shipping/view/adminhtml/templates/create/items.phtml b/app/code/Magento/Shipping/view/adminhtml/templates/create/items.phtml
index c06e7b9280323452ec78f4bf060b60d971168bac..fc7b6960ebd1a05caefaacf9ea4afd44f4a6a5ca 100644
--- a/app/code/Magento/Shipping/view/adminhtml/templates/create/items.phtml
+++ b/app/code/Magento/Shipping/view/adminhtml/templates/create/items.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <div class="fieldset-wrapper">
     <div class="fieldset-wrapper-title">
@@ -69,7 +72,7 @@
         </div>
     </div>
 </div>
-<script type="text/javascript">
+<script>
 require([
     "jquery",
     "prototype"
diff --git a/app/code/Magento/Shipping/view/adminhtml/templates/create/items/renderer/default.phtml b/app/code/Magento/Shipping/view/adminhtml/templates/create/items/renderer/default.phtml
index 761aec30674fda57b784f01e861e67f427edf1e3..2101fc41f1ce0e45c551045c7106f3c3ba112957 100644
--- a/app/code/Magento/Shipping/view/adminhtml/templates/create/items/renderer/default.phtml
+++ b/app/code/Magento/Shipping/view/adminhtml/templates/create/items/renderer/default.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php $_item = $this->getItem() ?>
 <tr>
diff --git a/app/code/Magento/Shipping/view/adminhtml/templates/order/Tracking/view.phtml b/app/code/Magento/Shipping/view/adminhtml/templates/order/Tracking/view.phtml
index d4ae8b655960edf87de8b0e6cd6d2549a6a44577..98ab4af25e613aee86d6071e3a809f98c481a949 100644
--- a/app/code/Magento/Shipping/view/adminhtml/templates/order/Tracking/view.phtml
+++ b/app/code/Magento/Shipping/view/adminhtml/templates/order/Tracking/view.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this Magento\Shipping\Block\Adminhtml\Order\Tracking\View */ ?>
 <table cellspacing="0" class="data-table" id="shipment_tracking_info">
@@ -48,7 +51,7 @@
     </tbody>
 <?php endif; ?>
 </table>
-<script type="text/javascript">
+<script>
 require(['prototype'], function(){
 
 //<![CDATA[
diff --git a/app/code/Magento/Shipping/view/adminhtml/templates/order/packaging/grid.phtml b/app/code/Magento/Shipping/view/adminhtml/templates/order/packaging/grid.phtml
index 157b63e2b35de35043af6eb7b67e601367dceba2..0e213c1b817cdadf2ffb368ab1bd3e648b9c5e9f 100644
--- a/app/code/Magento/Shipping/view/adminhtml/templates/order/packaging/grid.phtml
+++ b/app/code/Magento/Shipping/view/adminhtml/templates/order/packaging/grid.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <div class="grid">
     <table cellspacing="0" class="data-table">
diff --git a/app/code/Magento/Shipping/view/adminhtml/templates/order/packaging/packed.phtml b/app/code/Magento/Shipping/view/adminhtml/templates/order/packaging/packed.phtml
index a84f751d02d9aca9f0976cc81f27304deae31804..92b3bd34f5b04ea72329046325ddfe81c1ec796d 100644
--- a/app/code/Magento/Shipping/view/adminhtml/templates/order/packaging/packed.phtml
+++ b/app/code/Magento/Shipping/view/adminhtml/templates/order/packaging/packed.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <div id="popup-window-mask" style="display:none;"></div>
 <div id="packed_window" style="display:none;" class="packed-window">
@@ -162,7 +165,7 @@
     </div>
 </div>
 
-<script type="text/javascript">
+<script>
 require(['prototype'], function(){
 
 //<![CDATA[
diff --git a/app/code/Magento/Shipping/view/adminhtml/templates/order/packaging/popup.phtml b/app/code/Magento/Shipping/view/adminhtml/templates/order/packaging/popup.phtml
index 30b06524058842647a8ed4cd280d6e5cee2081a9..cc236a2e9d2f62a87ad2d372faacfa9df08055ae 100644
--- a/app/code/Magento/Shipping/view/adminhtml/templates/order/packaging/popup.phtml
+++ b/app/code/Magento/Shipping/view/adminhtml/templates/order/packaging/popup.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\Shipping\Block\Adminhtml\Order\Packaging */ ?>
 <?php
@@ -10,7 +13,7 @@ $shippingMethod = $this->getShipment()->getOrder()->getShippingMethod();
 $sizeSource = $this->getSourceSizeModel()->toOptionArray();
 $girthEnabled = $this->isDisplayGirthValue() && $this->isGirthAllowed() ? 1 : 0;
 ?>
-<script type="text/javascript">
+<script>
 require([
     "jquery",
     "prototype",
diff --git a/app/code/Magento/Shipping/view/adminhtml/templates/order/tracking.phtml b/app/code/Magento/Shipping/view/adminhtml/templates/order/tracking.phtml
index dd5201126a2c977a8a06668098f018b93430ddf4..c3e00c43e7baba96f2adebfa6ff930d4bc33a597 100644
--- a/app/code/Magento/Shipping/view/adminhtml/templates/order/tracking.phtml
+++ b/app/code/Magento/Shipping/view/adminhtml/templates/order/tracking.phtml
@@ -3,9 +3,12 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this Magento\Shipping\Block\Adminhtml\Order\Tracking */?>
-<script type="text/javascript">
+<script>
 require(['prototype'], function(){
 
     //<![CDATA[
@@ -83,7 +86,7 @@ require(['prototype'], function(){
     </tr>
     </tbody>
 </table>
-<script type="text/javascript">
+<script>
 require(['prototype'], function(){
 
     //<![CDATA[
diff --git a/app/code/Magento/Shipping/view/adminhtml/templates/order/view/info.phtml b/app/code/Magento/Shipping/view/adminhtml/templates/order/view/info.phtml
index 1ec147e360b67ac415e7c5a5cd42fc3af1dc29a1..0b590f2f8f9c5f4c33989569b1b682c81c1ac7c4 100644
--- a/app/code/Magento/Shipping/view/adminhtml/templates/order/view/info.phtml
+++ b/app/code/Magento/Shipping/view/adminhtml/templates/order/view/info.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\Shipping\Block\Adminhtml\View */ ?>
 <?php $order = $this->getOrder() ?>
diff --git a/app/code/Magento/Shipping/view/adminhtml/templates/view/form.phtml b/app/code/Magento/Shipping/view/adminhtml/templates/view/form.phtml
index e48a51c9c6298fb9241f629253e0c1987b2a6157..5d8a5c3bf2d910c72fd1cf37176c28001f92ac50 100644
--- a/app/code/Magento/Shipping/view/adminhtml/templates/view/form.phtml
+++ b/app/code/Magento/Shipping/view/adminhtml/templates/view/form.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php  $_order = $this->getShipment()->getOrder() ?>
 <?php echo $this->getChildHtml('order_info') ?>
@@ -57,7 +60,7 @@
             <?php endif ?>
             <div><?php echo $this->getChildHtml('shipment_tracking') ?></div>
         <?php echo $this->getChildHtml('shipment_packaging') ?>
-        <script type="text/javascript">
+        <script>
 require([
     'prototype'
 ], function(){
diff --git a/app/code/Magento/Shipping/view/adminhtml/templates/view/items.phtml b/app/code/Magento/Shipping/view/adminhtml/templates/view/items.phtml
index 7ec4fb2de9ffda1ffdc18b03e4217e00f95c1ab9..fb13e9585feab6117df14752cd8803fa8f694f20 100644
--- a/app/code/Magento/Shipping/view/adminhtml/templates/view/items.phtml
+++ b/app/code/Magento/Shipping/view/adminhtml/templates/view/items.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <div class="grid">
     <table cellspacing="0" class="data">
diff --git a/app/code/Magento/Shipping/view/adminhtml/templates/view/items/renderer/default.phtml b/app/code/Magento/Shipping/view/adminhtml/templates/view/items/renderer/default.phtml
index 62443c04c4ae3c12022856444e3f13cb4e622a30..0d2b5945c480c331e743bc5d9a802438dbf8a707 100644
--- a/app/code/Magento/Shipping/view/adminhtml/templates/view/items/renderer/default.phtml
+++ b/app/code/Magento/Shipping/view/adminhtml/templates/view/items/renderer/default.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php $_item = $this->getItem() ?>
 <tr class="border">
diff --git a/app/code/Magento/Shipping/view/frontend/layout/sales_order_shipment.xml b/app/code/Magento/Shipping/view/frontend/layout/sales_order_shipment.xml
index d19430e8ccb7715d16f2e31783494cc5e3fec4db..b956396c73c56d5526e85b22729cd78127be90ae 100644
--- a/app/code/Magento/Shipping/view/frontend/layout/sales_order_shipment.xml
+++ b/app/code/Magento/Shipping/view/frontend/layout/sales_order_shipment.xml
@@ -9,7 +9,7 @@
     <update handle="sales_order_shipment_renderers"/>
     <body>
         <referenceContainer name="content">
-            <block class="Magento\Shipping\Block\Order\Shipment" name="sales.order.shipment" cacheable="false">
+            <block class="Magento\Shipping\Block\Order\Shipment" name="sales.order.shipment" cacheable="false" after="sales.order.info.links">
                 <block class="Magento\Shipping\Block\Items" name="shipment_items" template="items.phtml">
                     <block class="Magento\Framework\View\Element\RendererList" name="sales.order.shipment.renderers" as="renderer.list"/>
                     <block class="Magento\Shipping\Block\Tracking\Link" name="track-all-link" template="tracking/link.phtml">
diff --git a/app/code/Magento/Shipping/view/frontend/templates/items.phtml b/app/code/Magento/Shipping/view/frontend/templates/items.phtml
index f636df52fedc044150c0cf3c2681fe3103df3f75..2d3b1173e5853d9c2525484a4aa095c28f5b82d9 100644
--- a/app/code/Magento/Shipping/view/frontend/templates/items.phtml
+++ b/app/code/Magento/Shipping/view/frontend/templates/items.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var  $this \Magento\Shipping\Block\Items */ ?>
 <?php  $_order = $this->getOrder() ?>
diff --git a/app/code/Magento/Shipping/view/frontend/templates/tracking/link.phtml b/app/code/Magento/Shipping/view/frontend/templates/tracking/link.phtml
index d98cadf13321b6fe93a10ca6339b4ec4b23775be..6603dd32deb00364e1e437b0ae6e8202cbd38e72 100644
--- a/app/code/Magento/Shipping/view/frontend/templates/tracking/link.phtml
+++ b/app/code/Magento/Shipping/view/frontend/templates/tracking/link.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\Shipping\Block\Tracking\Link */ ?>
 <?php $order = $this->getOrder() ?>
diff --git a/app/code/Magento/Shipping/view/frontend/templates/tracking/popup.phtml b/app/code/Magento/Shipping/view/frontend/templates/tracking/popup.phtml
index 678847951b89e4721ea0b266ef2135f5d677780c..11ef871e43541391620733cf9227f97de763007d 100644
--- a/app/code/Magento/Shipping/view/frontend/templates/tracking/popup.phtml
+++ b/app/code/Magento/Shipping/view/frontend/templates/tracking/popup.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\Shipping\Block\Tracking\Popup */ ?>
 <?php $_results = $this->getTrackingInfo(); ?>
diff --git a/app/code/Magento/Sitemap/Controller/Adminhtml/Sitemap/Edit.php b/app/code/Magento/Sitemap/Controller/Adminhtml/Sitemap/Edit.php
index c6fea032b57406cc7840fac919c32812f63b02f0..47cf66a319c0e9e0c7d78e521fb0f96078dd2dbc 100644
--- a/app/code/Magento/Sitemap/Controller/Adminhtml/Sitemap/Edit.php
+++ b/app/code/Magento/Sitemap/Controller/Adminhtml/Sitemap/Edit.php
@@ -29,6 +29,7 @@ class Edit extends \Magento\Sitemap\Controller\Adminhtml\Sitemap
      * Edit sitemap
      *
      * @return void
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function execute()
     {
diff --git a/app/code/Magento/Sitemap/Controller/Adminhtml/Sitemap/Save.php b/app/code/Magento/Sitemap/Controller/Adminhtml/Sitemap/Save.php
index 58f216f7b22ba929ee009a7c001fba6318670e5b..63e15c1c0c91c281120fb9e5aab1f22ae13e39a0 100644
--- a/app/code/Magento/Sitemap/Controller/Adminhtml/Sitemap/Save.php
+++ b/app/code/Magento/Sitemap/Controller/Adminhtml/Sitemap/Save.php
@@ -15,6 +15,7 @@ class Save extends \Magento\Sitemap\Controller\Adminhtml\Sitemap
      * Save action
      *
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function execute()
     {
diff --git a/app/code/Magento/Sitemap/Model/Observer.php b/app/code/Magento/Sitemap/Model/Observer.php
index 4805c3676f19f1d050af5435bee91df5143a1906..f0f7066e7091ecca43e48db61813d9b5adf4c622 100644
--- a/app/code/Magento/Sitemap/Model/Observer.php
+++ b/app/code/Magento/Sitemap/Model/Observer.php
@@ -90,6 +90,8 @@ class Observer
      *
      * @param \Magento\Cron\Model\Schedule $schedule
      * @return void
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function scheduledGenerateSitemaps($schedule)
     {
diff --git a/app/code/Magento/Sitemap/Model/Resource/Catalog/Product.php b/app/code/Magento/Sitemap/Model/Resource/Catalog/Product.php
index 9f7b3200e89dd8326458ac7f3bd225c1ff5230b3..bd3741d3f5f416e92d896f10ed3053b97ba5f6df 100644
--- a/app/code/Magento/Sitemap/Model/Resource/Catalog/Product.php
+++ b/app/code/Magento/Sitemap/Model/Resource/Catalog/Product.php
@@ -11,6 +11,7 @@ use Magento\CatalogUrlRewrite\Model\ProductUrlRewriteGenerator;
  * Sitemap resource product collection model
  *
  * @author      Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Product extends \Magento\Framework\Model\Resource\Db\AbstractDb
 {
diff --git a/app/code/Magento/Sitemap/Model/Sitemap.php b/app/code/Magento/Sitemap/Model/Sitemap.php
index 0235f1e75adb55fae856428192ab540142cdc8b8..4baabe60a907eb0d60984115ce3e29cb3ad54142 100644
--- a/app/code/Magento/Sitemap/Model/Sitemap.php
+++ b/app/code/Magento/Sitemap/Model/Sitemap.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Sitemap\Model;
 
 use Magento\Framework\App\Filesystem\DirectoryList;
@@ -22,6 +25,8 @@ use Magento\Framework\App\Filesystem\DirectoryList;
  * @method \Magento\Sitemap\Model\Sitemap setSitemapTime(string $value)
  * @method int getStoreId()
  * @method \Magento\Sitemap\Model\Sitemap setStoreId(int $value)
+ * @SuppressWarnings(PHPMD.TooManyFields)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Sitemap extends \Magento\Framework\Model\AbstractModel
 {
@@ -157,6 +162,7 @@ class Sitemap extends \Magento\Framework\Model\AbstractModel
      * @param \Magento\Framework\Model\Resource\AbstractResource $resource
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
diff --git a/app/code/Magento/Sitemap/composer.json b/app/code/Magento/Sitemap/composer.json
index b22d1586a32d6c0c6e98d25472decffc5a42772f..7b21180eaec2aa200b208711d09e23a5084a4a47 100644
--- a/app/code/Magento/Sitemap/composer.json
+++ b/app/code/Magento/Sitemap/composer.json
@@ -3,18 +3,18 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-catalog": "0.42.0-beta3",
-        "magento/module-core": "0.42.0-beta3",
-        "magento/module-eav": "0.42.0-beta3",
-        "magento/module-cms": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/module-catalog-url-rewrite": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-catalog": "0.42.0-beta4",
+        "magento/module-core": "0.42.0-beta4",
+        "magento/module-eav": "0.42.0-beta4",
+        "magento/module-cms": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/module-catalog-url-rewrite": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/Store/App/Action/Plugin/Context.php b/app/code/Magento/Store/App/Action/Plugin/Context.php
index 8332f4bca5aaa02f2fa65d05228783bf402e6e32..9ac06a3058ba99fbf04e3fe211ad8e6e1e835e6d 100644
--- a/app/code/Magento/Store/App/Action/Plugin/Context.php
+++ b/app/code/Magento/Store/App/Action/Plugin/Context.php
@@ -54,6 +54,7 @@ class Context
      * @param callable $proceed
      * @param \Magento\Framework\App\RequestInterface $request
      * @return mixed
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function aroundDispatch(
         \Magento\Framework\App\Action\Action $subject,
diff --git a/app/code/Magento/Core/Model/App/Emulation.php b/app/code/Magento/Store/Model/App/Emulation.php
similarity index 98%
rename from app/code/Magento/Core/Model/App/Emulation.php
rename to app/code/Magento/Store/Model/App/Emulation.php
index 85f57ad61706303c0d05926efde1d96c1126a7a5..5b64511218ac279cc0bc1bb8c56a4e73436d9f8a 100644
--- a/app/code/Magento/Core/Model/App/Emulation.php
+++ b/app/code/Magento/Store/Model/App/Emulation.php
@@ -9,8 +9,9 @@
  *
  * @author      Magento Core Team <core@magentocommerce.com>
  */
-namespace Magento\Core\Model\App;
+namespace Magento\Store\Model\App;
 
+use Magento\Framework\Object;
 use Magento\Framework\Translate\Inline\ConfigInterface;
 
 class Emulation extends \Magento\Framework\Object
@@ -145,7 +146,7 @@ class Emulation extends \Magento\Framework\Object
      *
      * Function restores initial store environment
      *
-     * @return \Magento\Core\Model\App\Emulation
+     * @return \Magento\Store\Model\App\Emulation
      */
     public function stopEnvironmentEmulation()
     {
diff --git a/app/code/Magento/Store/Model/Resource/Group/Collection.php b/app/code/Magento/Store/Model/Resource/Group/Collection.php
index 832c7b46d2c8c84ad4ccc22562036048856c50d6..3f36a0229884193d4f197a22878232718882cb75 100644
--- a/app/code/Magento/Store/Model/Resource/Group/Collection.php
+++ b/app/code/Magento/Store/Model/Resource/Group/Collection.php
@@ -36,6 +36,7 @@ class Collection extends \Magento\Framework\Model\Resource\Db\Collection\Abstrac
      * Is load default (admin) store
      *
      * @return boolean
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getLoadDefault()
     {
diff --git a/app/code/Magento/Store/Model/Resource/Store/Collection.php b/app/code/Magento/Store/Model/Resource/Store/Collection.php
index 6f8df5c43fab92ebb1965ace63be40b632d6544b..3eb4358c1e5724f67dc1096bf7adb41d7029204f 100644
--- a/app/code/Magento/Store/Model/Resource/Store/Collection.php
+++ b/app/code/Magento/Store/Model/Resource/Store/Collection.php
@@ -51,6 +51,7 @@ class Collection extends \Magento\Framework\Model\Resource\Db\Collection\Abstrac
      * Is load default (admin) store
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getLoadDefault()
     {
diff --git a/app/code/Magento/Store/Model/Resource/Website.php b/app/code/Magento/Store/Model/Resource/Website.php
index 5a44136529c90d686371d40cae2e617a296de500..1213b6c8de7eb359b7eb8ef6a36a4aaa69c0145a 100644
--- a/app/code/Magento/Store/Model/Resource/Website.php
+++ b/app/code/Magento/Store/Model/Resource/Website.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Store\Model\Resource;
 
 /**
diff --git a/app/code/Magento/Store/Model/Resource/Website/Collection.php b/app/code/Magento/Store/Model/Resource/Website/Collection.php
index 1b263ec39dfc127cf4a7cc57bbc3a8c83b4c9b3a..3c50219847772b12b8effdb57a5f9423f9619fac 100644
--- a/app/code/Magento/Store/Model/Resource/Website/Collection.php
+++ b/app/code/Magento/Store/Model/Resource/Website/Collection.php
@@ -57,6 +57,7 @@ class Collection extends \Magento\Framework\Model\Resource\Db\Collection\Abstrac
      * Is load default (admin) website
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getLoadDefault()
     {
diff --git a/app/code/Magento/Store/Model/Storage/Db.php b/app/code/Magento/Store/Model/Storage/Db.php
index 90bafe68904cf9bb0b674886d4289e7d065af2b8..f9cd545b5b1e740fa844a6c6cc336a6bda61766e 100644
--- a/app/code/Magento/Store/Model/Storage/Db.php
+++ b/app/code/Magento/Store/Model/Storage/Db.php
@@ -14,6 +14,10 @@ use Magento\Store\Model\StoreFactory;
 use Magento\Store\Model\Website;
 use Magento\Store\Model\WebsiteFactory as WebsiteFactory;
 
+/**
+ * @SuppressWarnings(PHPMD.TooManyFields)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class Db implements \Magento\Store\Model\StoreManagerInterface
 {
     /**
@@ -133,6 +137,7 @@ class Db implements \Magento\Store\Model\StoreManagerInterface
      * @param State $appState
      * @param bool $isSingleStoreAllowed
      * @param null $currentStore
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         StoreFactory $storeFactory,
@@ -179,6 +184,7 @@ class Db implements \Magento\Store\Model\StoreManagerInterface
      * Init store, group and website collections
      *
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _initStores()
     {
@@ -283,6 +289,8 @@ class Db implements \Magento\Store\Model\StoreManagerInterface
      * @param null|string|bool|int|Store $storeId
      * @return Store
      * @throws \Magento\Framework\App\InitException
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function getStore($storeId = null)
     {
@@ -433,6 +441,7 @@ class Db implements \Magento\Store\Model\StoreManagerInterface
      * @param bool $withDefault
      * @param bool $codeKey
      * @return Group[]
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function getGroups($withDefault = false, $codeKey = false)
     {
diff --git a/app/code/Magento/Store/Model/StorageFactory.php b/app/code/Magento/Store/Model/StorageFactory.php
index b46c0a09a4cb4148367b5c38cbbfcaf326871dab..cf53216bd169cd611b88f46838345831bef4bfaf 100644
--- a/app/code/Magento/Store/Model/StorageFactory.php
+++ b/app/code/Magento/Store/Model/StorageFactory.php
@@ -7,6 +7,9 @@ namespace Magento\Store\Model;
 
 use Magento\Framework\Profiler;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class StorageFactory
 {
     /**
diff --git a/app/code/Magento/Store/Model/Store.php b/app/code/Magento/Store/Model/Store.php
index e36ea55f6087333b7f4d12e6bebf38af2e159574..442347f72b5f1ae8673cae6a176b1497b6541045 100644
--- a/app/code/Magento/Store/Model/Store.php
+++ b/app/code/Magento/Store/Model/Store.php
@@ -19,6 +19,10 @@ use Magento\Framework\Model\AbstractModel;
  * @method int getStoreId()
  * @method \Magento\Store\Model\Store setSortOrder(int $value)
  * @method \Magento\Store\Model\Store setIsActive(int $value)
+ * @SuppressWarnings(PHPMD.TooManyFields)
+ * @SuppressWarnings(PHPMD.ExcessiveClassComplexity)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ * @SuppressWarnings(PHPMD.ExcessivePublicCount)
  */
 class Store extends AbstractModel implements
     \Magento\Framework\App\ScopeInterface,
@@ -317,6 +321,7 @@ class Store extends AbstractModel implements
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param bool $isCustomEntryPoint
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
@@ -526,6 +531,8 @@ class Store extends AbstractModel implements
      * @param boolean|null $secure
      * @return string
      * @throws \InvalidArgumentException
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function getBaseUrl($type = \Magento\Framework\UrlInterface::URL_TYPE_LINK, $secure = null)
     {
@@ -1031,6 +1038,8 @@ class Store extends AbstractModel implements
      *
      * @param bool|string $fromStore
      * @return string
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function getCurrentUrl($fromStore = true)
     {
diff --git a/app/code/Magento/Store/Model/System/Store.php b/app/code/Magento/Store/Model/System/Store.php
index 38850ba6ced3eb2becd35f9a6c8e51e1b4782cb8..d12f4d791e310915f62055ac738d48120815d0b8 100644
--- a/app/code/Magento/Store/Model/System/Store.php
+++ b/app/code/Magento/Store/Model/System/Store.php
@@ -100,6 +100,8 @@ class Store extends \Magento\Framework\Object
      * @param bool $empty
      * @param bool $all
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function getStoreValuesForForm($empty = false, $all = false)
     {
@@ -156,6 +158,8 @@ class Store extends \Magento\Framework\Object
      * @param array $groupIds
      * @param array $websiteIds
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function getStoresStructure($isAll = false, $storeIds = [], $groupIds = [], $websiteIds = [])
     {
diff --git a/app/code/Magento/Store/Model/Website.php b/app/code/Magento/Store/Model/Website.php
index 746777c9f4138b3c8e7744c6196b705b928d5592..6299b99237f2014b79cade78d25fc19bf2763ce8 100644
--- a/app/code/Magento/Store/Model/Website.php
+++ b/app/code/Magento/Store/Model/Website.php
@@ -26,6 +26,8 @@ use Magento\Store\Model\StoreManagerInterface;
  * @method \Magento\Store\Model\Website setDefaultGroupId(int $value)
  * @method int getIsDefault()
  * @method \Magento\Store\Model\Website setIsDefault(int $value)
+ * @SuppressWarnings(PHPMD.TooManyFields)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Website extends \Magento\Framework\Model\AbstractModel implements
     \Magento\Framework\Object\IdentityInterface,
@@ -175,6 +177,7 @@ class Website extends \Magento\Framework\Model\AbstractModel implements
      * @param \Magento\Framework\Model\Resource\AbstractResource $resource
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
diff --git a/app/code/Magento/Store/composer.json b/app/code/Magento/Store/composer.json
index e089091493ed4716dbf0d7fcfa0f1383c40aed16..ad58e23e2a93afc02b151da2d967ffc0434caa62 100644
--- a/app/code/Magento/Store/composer.json
+++ b/app/code/Magento/Store/composer.json
@@ -3,14 +3,14 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-core": "0.42.0-beta3",
-        "magento/module-directory": "0.42.0-beta3",
-        "magento/module-ui": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-core": "0.42.0-beta4",
+        "magento/module-directory": "0.42.0-beta4",
+        "magento/module-ui": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/Store/view/frontend/templates/switch/flags.phtml b/app/code/Magento/Store/view/frontend/templates/switch/flags.phtml
index da14314d708f3b68ca1e83ba1756bf3900499da3..60839e5f31a78f61aa6a532becab9da640dc37c6 100644
--- a/app/code/Magento/Store/view/frontend/templates/switch/flags.phtml
+++ b/app/code/Magento/Store/view/frontend/templates/switch/flags.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php if (count($this->getStores())>1): ?>
 <div class="form-language">
diff --git a/app/code/Magento/Store/view/frontend/templates/switch/languages.phtml b/app/code/Magento/Store/view/frontend/templates/switch/languages.phtml
index 0a266dd0064b444dd4844e903734cafccb7985a2..26d29298ce3b2227882f9b3daadeebbad4401a21 100644
--- a/app/code/Magento/Store/view/frontend/templates/switch/languages.phtml
+++ b/app/code/Magento/Store/view/frontend/templates/switch/languages.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/Store/view/frontend/templates/switch/stores.phtml b/app/code/Magento/Store/view/frontend/templates/switch/stores.phtml
index b5f7346fa6a9259e3686db2280bfd430b400c736..20935584a94d51f5976d7b8594f657c590d21b18 100644
--- a/app/code/Magento/Store/view/frontend/templates/switch/stores.phtml
+++ b/app/code/Magento/Store/view/frontend/templates/switch/stores.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/Tax/Api/Data/QuoteDetailsItemInterface.php b/app/code/Magento/Tax/Api/Data/QuoteDetailsItemInterface.php
index 3c439a5c418324fc4fca291227cafda31544923d..405eae5862810b0b9ce4054e17baf916a7af5a67 100644
--- a/app/code/Magento/Tax/Api/Data/QuoteDetailsItemInterface.php
+++ b/app/code/Magento/Tax/Api/Data/QuoteDetailsItemInterface.php
@@ -72,6 +72,7 @@ interface QuoteDetailsItemInterface extends \Magento\Framework\Api\ExtensibleDat
      * Get indicate that if the tax is included in the unit price and row total
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getTaxIncluded();
 
diff --git a/app/code/Magento/Tax/Block/Adminhtml/Frontend/Region/Updater.php b/app/code/Magento/Tax/Block/Adminhtml/Frontend/Region/Updater.php
index db520f6619682c7567231eb35dd931701f58be0e..8439f80478f924497b0d1dd55762ec643c9acea2 100644
--- a/app/code/Magento/Tax/Block/Adminhtml/Frontend/Region/Updater.php
+++ b/app/code/Magento/Tax/Block/Adminhtml/Frontend/Region/Updater.php
@@ -36,7 +36,7 @@ class Updater extends \Magento\Backend\Block\System\Config\Form\Field
     {
         $html = parent::_getElementHtml($element);
 
-        $js = '<script type="text/javascript">
+        $js = '<script>
               require(["prototype", "mage/adminhtml/form"], function(){
                updater = new RegionUpdater("tax_defaults_country", "none", "tax_defaults_region", %s, "nullify");
                if(updater.lastCountryId) {
diff --git a/app/code/Magento/Tax/Block/Adminhtml/Items/Price/Renderer.php b/app/code/Magento/Tax/Block/Adminhtml/Items/Price/Renderer.php
index 32276c9ac6c9d4df35f35a2ae00bd99a3fd2173e..bd3d45bf3c5e5e42b9d07b77e37b5a86b2282346 100644
--- a/app/code/Magento/Tax/Block/Adminhtml/Items/Price/Renderer.php
+++ b/app/code/Magento/Tax/Block/Adminhtml/Items/Price/Renderer.php
@@ -8,7 +8,7 @@ namespace Magento\Tax\Block\Adminhtml\Items\Price;
 use Magento\Sales\Model\Order\Creditmemo\Item as CreditmemoItem;
 use Magento\Sales\Model\Order\Invoice\Item as InvoiceItem;
 use Magento\Sales\Model\Order\Item;
-use Magento\Sales\Model\Quote\Item\AbstractItem as QuoteItem;
+use Magento\Quote\Model\Quote\Item\AbstractItem as QuoteItem;
 use Magento\Tax\Block\Item\Price\Renderer as ItemPriceRenderer;
 use Magento\Tax\Helper\Data as TaxHelper;
 
diff --git a/app/code/Magento/Tax/Block/Adminhtml/Rate/Form.php b/app/code/Magento/Tax/Block/Adminhtml/Rate/Form.php
index 54aedb14aaacea1f64a21020c376a0d8c47a81e8..7886702d51034b7e92ca5dbee59f4484ceed7bdc 100644
--- a/app/code/Magento/Tax/Block/Adminhtml/Rate/Form.php
+++ b/app/code/Magento/Tax/Block/Adminhtml/Rate/Form.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Admin product tax class add form
  *
@@ -14,6 +16,9 @@ namespace Magento\Tax\Block\Adminhtml\Rate;
 use Magento\Framework\Exception\NoSuchEntityException;
 use Magento\Tax\Controller\RegistryConstants;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class Form extends \Magento\Backend\Block\Widget\Form\Generic
 {
     const FORM_ELEMENT_ID = 'rate-form';
@@ -71,6 +76,7 @@ class Form extends \Magento\Backend\Block\Widget\Form\Generic
      * @param \Magento\Tax\Api\TaxRateRepositoryInterface $taxRateRepository
      * @param \Magento\Tax\Model\TaxRateCollection $taxRateCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Backend\Block\Template\Context $context,
@@ -104,6 +110,9 @@ class Form extends \Magento\Backend\Block\Widget\Form\Generic
 
     /**
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _prepareForm()
     {
diff --git a/app/code/Magento/Tax/Block/Adminhtml/Rule/Edit/Form.php b/app/code/Magento/Tax/Block/Adminhtml/Rule/Edit/Form.php
index 0afe26138498fec811d94fdf2fbee9564cf734c3..0d2b16bee6f0dff1154bba3c025f3a0f9b0b541a 100644
--- a/app/code/Magento/Tax/Block/Adminhtml/Rule/Edit/Form.php
+++ b/app/code/Magento/Tax/Block/Adminhtml/Rule/Edit/Form.php
@@ -90,6 +90,9 @@ class Form extends \Magento\Backend\Block\Widget\Form\Generic
 
     /**
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _prepareForm()
     {
diff --git a/app/code/Magento/Tax/Block/Checkout/Cart/Sidebar/Totals.php b/app/code/Magento/Tax/Block/Checkout/Cart/Sidebar/Totals.php
index 167d30a11f40d0bcd77e267c432902002cdcae55..7b0b5bf2cc4d86ac9f9bf0eab8758d9db0c8afb1 100644
--- a/app/code/Magento/Tax/Block/Checkout/Cart/Sidebar/Totals.php
+++ b/app/code/Magento/Tax/Block/Checkout/Cart/Sidebar/Totals.php
@@ -86,6 +86,7 @@ class Totals extends SidebarTotals
      * Return whether subtotal should be displayed including tax
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getDisplaySubtotalInclTax()
     {
@@ -96,6 +97,7 @@ class Totals extends SidebarTotals
      * Return whether subtotal should be displayed excluding tax
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getDisplaySubtotalExclTax()
     {
@@ -106,6 +108,7 @@ class Totals extends SidebarTotals
      * Return whether subtotal should be displayed excluding and including tax
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getDisplaySubtotalBoth()
     {
diff --git a/app/code/Magento/Tax/Block/Item/Price/Renderer.php b/app/code/Magento/Tax/Block/Item/Price/Renderer.php
index a89d4f3466472790339a296b1bdfe6035fa1e6a0..9eb8842947651ca8f3d619c6de91ae949da6a83b 100644
--- a/app/code/Magento/Tax/Block/Item/Price/Renderer.php
+++ b/app/code/Magento/Tax/Block/Item/Price/Renderer.php
@@ -11,7 +11,7 @@ use Magento\Framework\View\Element\Template\Context;
 use Magento\Sales\Model\Order\CreditMemo\Item as CreditMemoItem;
 use Magento\Sales\Model\Order\Invoice\Item as InvoiceItem;
 use Magento\Sales\Model\Order\Item as OrderItem;
-use Magento\Sales\Model\Quote\Item\AbstractItem as QuoteItem;
+use Magento\Quote\Model\Quote\Item\AbstractItem as QuoteItem;
 use Magento\Tax\Helper\Data as TaxHelper;
 
 /**
diff --git a/app/code/Magento/Tax/Block/Sales/Order/Tax.php b/app/code/Magento/Tax/Block/Sales/Order/Tax.php
index af87c80d409afa5a581daf6c75887b1906d78adf..86737961b60e2409050ec30a2da3d872958de441 100644
--- a/app/code/Magento/Tax/Block/Sales/Order/Tax.php
+++ b/app/code/Magento/Tax/Block/Sales/Order/Tax.php
@@ -115,6 +115,7 @@ class Tax extends \Magento\Framework\View\Element\Template
 
     /**
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _initSubtotal()
     {
diff --git a/app/code/Magento/Tax/Controller/Adminhtml/Rule.php b/app/code/Magento/Tax/Controller/Adminhtml/Rule.php
index 0a7e7af49fd7f83933ecd43eee8d60561c39164c..1ff5f1711a3418ad4d715c2ee44202f9ad9bd547 100644
--- a/app/code/Magento/Tax/Controller/Adminhtml/Rule.php
+++ b/app/code/Magento/Tax/Controller/Adminhtml/Rule.php
@@ -81,6 +81,7 @@ class Rule extends \Magento\Backend\App\Action
      *
      * @param array $postData
      * @return \Magento\Tax\Api\Data\TaxRuleInterface
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function populateTaxRule($postData)
     {
diff --git a/app/code/Magento/Tax/Helper/Data.php b/app/code/Magento/Tax/Helper/Data.php
index 16165aaefcf07bf6e9330b1a4ab47e383cc89dc9..580aacd2f63ab4fb2357df744da120a563e19680 100644
--- a/app/code/Magento/Tax/Helper/Data.php
+++ b/app/code/Magento/Tax/Helper/Data.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Tax\Helper;
 
 use Magento\Framework\Pricing\PriceCurrencyInterface;
@@ -22,6 +25,8 @@ use Magento\Sales\Model\EntityInterface;
 
 /**
  * Catalog data helper
+ * @SuppressWarnings(PHPMD.TooManyFields)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Data extends \Magento\Framework\App\Helper\AbstractHelper
 {
@@ -170,6 +175,7 @@ class Data extends \Magento\Framework\App\Helper\AbstractHelper
      * @param \Magento\Catalog\Helper\Data                                  $catalogHelper
      * @param OrderTaxManagementInterface                                   $orderTaxManagement
      * @param PriceCurrencyInterface                                        $priceCurrency
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\App\Helper\Context $context,
@@ -629,7 +635,7 @@ class Data extends \Magento\Framework\App\Helper\AbstractHelper
      * @param  null|string|bool|int|Store $store
      * @return string
      */
-    public function getCalculationAgorithm($store = null)
+    public function getCalculationAlgorithm($store = null)
     {
         return $this->_config->getAlgorithm($store);
     }
@@ -790,6 +796,7 @@ class Data extends \Magento\Framework\App\Helper\AbstractHelper
      * @param  EntityInterface $order
      * @param  EntityInterface $salesItem
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function calculateTaxForItems(EntityInterface $order, EntityInterface $salesItem)
     {
@@ -797,23 +804,6 @@ class Data extends \Magento\Framework\App\Helper\AbstractHelper
 
         $orderTaxDetails = $this->orderTaxManagement->getOrderTaxDetails($order->getId());
 
-        // Apply any taxes for shipping
-        $shippingTaxAmount = $salesItem->getShippingTaxAmount();
-        $originalShippingTaxAmount = $order->getShippingTaxAmount();
-        if ($shippingTaxAmount && $originalShippingTaxAmount &&
-            $shippingTaxAmount != 0 && floatval($originalShippingTaxAmount)
-        ) {
-            //An invoice or credit memo can have a different qty than its order
-            $shippingRatio = $shippingTaxAmount / $originalShippingTaxAmount;
-            $itemTaxDetails = $orderTaxDetails->getItems();
-            foreach ($itemTaxDetails as $itemTaxDetail) {
-                //Aggregate taxable items associated with shipping
-                if ($itemTaxDetail->getType() == \Magento\Sales\Model\Quote\Address::TYPE_SHIPPING) {
-                    $taxClassAmount = $this->_aggregateTaxes($taxClassAmount, $itemTaxDetail, $shippingRatio);
-                }
-            }
-        }
-
         // Apply any taxes for the items
         /** @var $item \Magento\Sales\Model\Order\Invoice\Item|\Magento\Sales\Model\Order\Creditmemo\Item */
         foreach ($salesItem->getItems() as $item) {
@@ -845,6 +835,23 @@ class Data extends \Magento\Framework\App\Helper\AbstractHelper
             }
         }
 
+        // Apply any taxes for shipping
+        $shippingTaxAmount = $salesItem->getShippingTaxAmount();
+        $originalShippingTaxAmount = $order->getShippingTaxAmount();
+        if ($shippingTaxAmount && $originalShippingTaxAmount &&
+            $shippingTaxAmount != 0 && floatval($originalShippingTaxAmount)
+        ) {
+            //An invoice or credit memo can have a different qty than its order
+            $shippingRatio = $shippingTaxAmount / $originalShippingTaxAmount;
+            $itemTaxDetails = $orderTaxDetails->getItems();
+            foreach ($itemTaxDetails as $itemTaxDetail) {
+                //Aggregate taxable items associated with shipping
+                if ($itemTaxDetail->getType() == \Magento\Quote\Model\Quote\Address::TYPE_SHIPPING) {
+                    $taxClassAmount = $this->_aggregateTaxes($taxClassAmount, $itemTaxDetail, $shippingRatio);
+                }
+            }
+        }
+
         return $taxClassAmount;
     }
 }
diff --git a/app/code/Magento/Tax/Model/Calculation.php b/app/code/Magento/Tax/Model/Calculation.php
index 2e997213216a34ed87670bd4371275c83f2c4d9d..8be6f10337d3902e757593b56e01d47168333e7b 100644
--- a/app/code/Magento/Tax/Model/Calculation.php
+++ b/app/code/Magento/Tax/Model/Calculation.php
@@ -20,6 +20,8 @@ use Magento\Tax\Model\Config;
 
 /**
  * Tax Calculation Model
+ * @SuppressWarnings(PHPMD.TooManyFields)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Calculation extends \Magento\Framework\Model\AbstractModel
 {
@@ -187,6 +189,7 @@ class Calculation extends \Magento\Framework\Model\AbstractModel
      * @param PriceCurrencyInterface $priceCurrency
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
@@ -470,6 +473,9 @@ class Calculation extends \Magento\Framework\Model\AbstractModel
      * @param null|int|\Magento\Store\Model\Store $store
      * @param int $customerId
      * @return  \Magento\Framework\Object
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public function getRateRequest(
         $shippingAddress = null,
diff --git a/app/code/Magento/Tax/Model/Calculation/AbstractCalculator.php b/app/code/Magento/Tax/Model/Calculation/AbstractCalculator.php
index 8fbda6ad0698e7271ce7eac2eea21feb85a230e4..0181d2e3426149d5fdd206979d1e877e5dc166c2 100644
--- a/app/code/Magento/Tax/Model/Calculation/AbstractCalculator.php
+++ b/app/code/Magento/Tax/Model/Calculation/AbstractCalculator.php
@@ -14,6 +14,9 @@ use Magento\Tax\Api\Data\TaxDetailsItemInterface;
 use Magento\Tax\Api\TaxClassManagementInterface;
 use Magento\Tax\Model\Calculation;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 abstract class AbstractCalculator
 {
     /**#@+
diff --git a/app/code/Magento/Tax/Model/Calculation/Rate.php b/app/code/Magento/Tax/Model/Calculation/Rate.php
index d349ef20f63141be338921cc46ee3c43a898f5fd..77d534bff26d27fa4dd6e7a662a709d6b283347e 100644
--- a/app/code/Magento/Tax/Model/Calculation/Rate.php
+++ b/app/code/Magento/Tax/Model/Calculation/Rate.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Tax\Model\Calculation;
 
 use Magento\Directory\Model\Region;
@@ -23,6 +25,7 @@ use Magento\Framework\Exception\CouldNotDeleteException;
  * @method \Magento\Tax\Model\Calculation\Rate setZipIsRange(int $value)
  * @method \Magento\Tax\Model\Calculation\Rate setZipFrom(int $value)
  * @method \Magento\Tax\Model\Calculation\Rate setZipTo(int $value)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Rate extends \Magento\Framework\Model\AbstractExtensibleModel implements \Magento\Tax\Api\Data\TaxRateInterface
 {
@@ -63,6 +66,7 @@ class Rate extends \Magento\Framework\Model\AbstractExtensibleModel implements \
      * @param \Magento\Framework\Model\Resource\AbstractResource $resource
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
@@ -105,6 +109,8 @@ class Rate extends \Magento\Framework\Model\AbstractExtensibleModel implements \
      *
      * @return \Magento\Tax\Model\Calculation\Rate
      * @throws \Magento\Framework\Model\Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function beforeSave()
     {
diff --git a/app/code/Magento/Tax/Model/Calculation/RateRepository.php b/app/code/Magento/Tax/Model/Calculation/RateRepository.php
index 6d62f585e4a14f7bbb09ac2102f84fb0c1081ee8..142735233d5b8f484fd5a4397d30a9bebf03db07 100644
--- a/app/code/Magento/Tax/Model/Calculation/RateRepository.php
+++ b/app/code/Magento/Tax/Model/Calculation/RateRepository.php
@@ -18,6 +18,9 @@ use Magento\Tax\Api\Data\TaxRateInterface as TaxRateDataObject;
 use Magento\Tax\Model\Calculation\Rate\Converter;
 use Magento\Tax\Model\Resource\Calculation\Rate\Collection;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class RateRepository implements \Magento\Tax\Api\TaxRateRepositoryInterface
 {
     const MESSAGE_TAX_RATE_ID_IS_NOT_ALLOWED = 'id is not expected for this request.';
diff --git a/app/code/Magento/Tax/Model/Calculation/Rule.php b/app/code/Magento/Tax/Model/Calculation/Rule.php
index d92455159c257288c0f291ca041627173cca81e0..929beae5f49390aeb902a813e83f184a44152b71 100644
--- a/app/code/Magento/Tax/Model/Calculation/Rule.php
+++ b/app/code/Magento/Tax/Model/Calculation/Rule.php
@@ -59,6 +59,7 @@ class Rule extends \Magento\Framework\Model\AbstractExtensibleModel implements T
      * @param \Magento\Framework\Model\Resource\AbstractResource $resource
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
diff --git a/app/code/Magento/Tax/Model/Calculation/Rule/Validator.php b/app/code/Magento/Tax/Model/Calculation/Rule/Validator.php
index 2c29986cc5108592f5ef405246bca9481b56a0cd..a8b304942a0226bb9eabeec86316f968de0d62f5 100644
--- a/app/code/Magento/Tax/Model/Calculation/Rule/Validator.php
+++ b/app/code/Magento/Tax/Model/Calculation/Rule/Validator.php
@@ -33,6 +33,9 @@ class Validator extends \Magento\Framework\Validator\AbstractValidator
      * @param \Magento\Tax\Model\Calculation\Rule $value
      * @return boolean
      * @throws Zend_Validate_Exception If validation of $value is impossible
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public function isValid($value)
     {
diff --git a/app/code/Magento/Tax/Model/Config.php b/app/code/Magento/Tax/Model/Config.php
index 6dce2c84bb3dbcda27143c869a643f9268f356cd..116529a13b55162195607487539b4400fd1f29ff 100644
--- a/app/code/Magento/Tax/Model/Config.php
+++ b/app/code/Magento/Tax/Model/Config.php
@@ -13,6 +13,9 @@ namespace Magento\Tax\Model;
 
 use Magento\Store\Model\Store;
 
+/**
+ * @SuppressWarnings(PHPMD.ExcessivePublicCount)
+ */
 class Config
 {
     // tax notifications
@@ -263,6 +266,7 @@ class Config
      * Get flag what we need use shipping price exclude tax
      *
      * @return bool $flag
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getNeedUseShippingExcludeTax()
     {
@@ -270,7 +274,7 @@ class Config
     }
 
     /**
-     * Get defined tax calculation agorithm
+     * Get defined tax calculation algorithm
      *
      * @param   null|string|bool|int|Store $store
      * @return  string
@@ -784,6 +788,7 @@ class Config
      *
      * @param null|string|bool|int|Store $store
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getInfoUrl($store = null)
     {
@@ -800,6 +805,7 @@ class Config
      *
      * @param null|int|string|Store $store
      * @return bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function needPriceConversion($store = null)
     {
diff --git a/app/code/Magento/Tax/Model/Observer.php b/app/code/Magento/Tax/Model/Observer.php
index c502197e3c57c3a71019368ed5f8dcddd256ee41..eca55e6365cf7a66b628c3c64880e826ba1b73c9 100644
--- a/app/code/Magento/Tax/Model/Observer.php
+++ b/app/code/Magento/Tax/Model/Observer.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Tax Event Observer
  */
@@ -117,6 +119,9 @@ class Observer
      *
      * @param \Magento\Framework\Event\Observer $observer
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public function salesEventOrderAfterSave(\Magento\Framework\Event\Observer $observer)
     {
@@ -254,6 +259,7 @@ class Observer
      *
      * @param \Magento\Cron\Model\Schedule $schedule
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function aggregateSalesReportTaxData($schedule)
     {
@@ -275,7 +281,7 @@ class Observer
      */
     public function quoteCollectTotalsBefore(\Magento\Framework\Event\Observer $observer)
     {
-        /* @var $quote \Magento\Sales\Model\Quote */
+        /* @var $quote \Magento\Quote\Model\Quote */
         $quote = $observer->getEvent()->getQuote();
         foreach ($quote->getAllAddresses() as $address) {
             $address->setExtraTaxAmount(0);
@@ -300,7 +306,7 @@ class Observer
             return $this;
         }
 
-        $algorithm = $this->_taxData->getCalculationAgorithm();
+        $algorithm = $this->_taxData->getCalculationAlgorithm();
         $options['calculationAlgorithm'] = $algorithm;
         // prepare correct template for options render
         if ($this->_taxData->displayBothPrices()) {
diff --git a/app/code/Magento/Tax/Model/Quote/ToOrderConverter.php b/app/code/Magento/Tax/Model/Quote/ToOrderConverter.php
new file mode 100644
index 0000000000000000000000000000000000000000..5db47dec6ea8fefee047dd95d3508c231f6f0db7
--- /dev/null
+++ b/app/code/Magento/Tax/Model/Quote/ToOrderConverter.php
@@ -0,0 +1,57 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+namespace Magento\Tax\Model\Quote;
+
+use Magento\Sales\Api\Data\OrderInterface;
+use Magento\Quote\Model\Quote\Address\ToOrder as QuoteAddressToOrder;
+use Magento\Quote\Model\Quote\Address as QuoteAddress;
+
+class ToOrderConverter
+{
+    /**
+     * @var QuoteAddress
+     */
+    protected $quoteAddress;
+
+    /**
+     * @param QuoteAddressToOrder $subject
+     * @param QuoteAddress $address
+     * @param array $additional
+     * @return array
+     */
+    public function beforeConvert(QuoteAddressToOrder $subject, QuoteAddress $address, $additional)
+    {
+        $this->quoteAddress = $address;
+        return [$address, $additional];
+    }
+
+    /**
+     * @param QuoteAddressToOrder $subject
+     * @param OrderInterface $order
+     * @return OrderInterface
+     */
+    public function afterConvert(QuoteAddressToOrder $subject, OrderInterface $order)
+    {
+        /** @var \Magento\Sales\Model\Order $order */
+        $taxes = $this->quoteAddress->getAppliedTaxes();
+        if (is_array($taxes)) {
+            if (is_array($order->getAppliedTaxes())) {
+                $taxes = array_merge($order->getAppliedTaxes(), $taxes);
+            }
+            $order->setAppliedTaxes($taxes);
+            $order->setConvertingFromQuote(true);
+        }
+
+        $itemAppliedTaxes = $this->quoteAddress->getItemsAppliedTaxes();
+        if (is_array($itemAppliedTaxes)) {
+            if (is_array($order->getItemAppliedTaxes())) {
+                $itemAppliedTaxes = array_merge($order->getItemAppliedTaxes(), $itemAppliedTaxes);
+            }
+            $order->setItemAppliedTaxes($itemAppliedTaxes);
+        }
+        return $order;
+    }
+}
diff --git a/app/code/Magento/Tax/Model/Resource/Calculation.php b/app/code/Magento/Tax/Model/Resource/Calculation.php
index 5ce230adbe9503c2ea7f9bb005d193b9e0e09f0e..160bea26fe1f9c5e03fd3cd6f1d58a4672305f33 100644
--- a/app/code/Magento/Tax/Model/Resource/Calculation.php
+++ b/app/code/Magento/Tax/Model/Resource/Calculation.php
@@ -130,6 +130,8 @@ class Calculation extends \Magento\Framework\Model\Resource\Db\AbstractDb
      * @param \Magento\Framework\Object $request
      * @param array|null $rates
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function getCalculationProcess($request, $rates = null)
     {
@@ -263,6 +265,9 @@ class Calculation extends \Magento\Framework\Model\Resource\Db\AbstractDb
      *
      * @param \Magento\Framework\Object $request
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _getRates($request)
     {
diff --git a/app/code/Magento/Tax/Model/Resource/Sales/Order/Tax/Item.php b/app/code/Magento/Tax/Model/Resource/Sales/Order/Tax/Item.php
index 7d73c540f14856de118b2513f733a29e59119db5..b13eb4cdfa3733eb669bcb776d12236f439420ac 100644
--- a/app/code/Magento/Tax/Model/Resource/Sales/Order/Tax/Item.php
+++ b/app/code/Magento/Tax/Model/Resource/Sales/Order/Tax/Item.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Sales order tax resource model
  *
diff --git a/app/code/Magento/Tax/Model/Sales/Total/Quote/CommonTaxCollector.php b/app/code/Magento/Tax/Model/Sales/Total/Quote/CommonTaxCollector.php
index 533aedef26f59b7e10ef060c0976e319e9bfa3e5..c9f57704b409168753ef192dbf2c5a8a2691d250 100644
--- a/app/code/Magento/Tax/Model/Sales/Total/Quote/CommonTaxCollector.php
+++ b/app/code/Magento/Tax/Model/Sales/Total/Quote/CommonTaxCollector.php
@@ -3,15 +3,18 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Tax\Model\Sales\Total\Quote;
 
 use Magento\Customer\Api\Data\AddressDataBuilder as CustomerAddressBuilder;
 use Magento\Customer\Api\Data\AddressInterface as CustomerAddress;
 use Magento\Customer\Api\Data\RegionDataBuilder as CustomerAddressRegionBuilder;
 use Magento\Framework\Object;
-use Magento\Sales\Model\Quote\Address as QuoteAddress;
-use Magento\Sales\Model\Quote\Address\Total\AbstractTotal;
-use Magento\Sales\Model\Quote\Item\AbstractItem;
+use Magento\Quote\Model\Quote\Address as QuoteAddress;
+use Magento\Quote\Model\Quote\Address\Total\AbstractTotal;
+use Magento\Quote\Model\Quote\Item\AbstractItem;
 use Magento\Store\Model\Store;
 use Magento\Tax\Api\Data\QuoteDetailsDataBuilder;
 use Magento\Tax\Api\Data\TaxClassKeyInterface;
@@ -20,6 +23,7 @@ use Magento\Tax\Api\Data\TaxDetailsItemInterface;
 
 /**
  * Tax totals calculation model
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class CommonTaxCollector extends AbstractTotal
 {
@@ -709,6 +713,8 @@ class CommonTaxCollector extends AbstractTotal
      * @param float $baseAmount
      * @param float $rate
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _saveAppliedTaxes(
         QuoteAddress $address,
diff --git a/app/code/Magento/Tax/Model/Sales/Total/Quote/Shipping.php b/app/code/Magento/Tax/Model/Sales/Total/Quote/Shipping.php
index 6ee7640c6fc2fdcb349f2bf9a375f399c62ea56f..239baa4dabf272f2b15b88dba77ae619358de5a3 100644
--- a/app/code/Magento/Tax/Model/Sales/Total/Quote/Shipping.php
+++ b/app/code/Magento/Tax/Model/Sales/Total/Quote/Shipping.php
@@ -5,7 +5,7 @@
  */
 namespace Magento\Tax\Model\Sales\Total\Quote;
 
-use Magento\Sales\Model\Quote\Address;
+use Magento\Quote\Model\Quote\Address;
 
 class Shipping extends CommonTaxCollector
 {
diff --git a/app/code/Magento/Tax/Model/Sales/Total/Quote/Subtotal.php b/app/code/Magento/Tax/Model/Sales/Total/Quote/Subtotal.php
index a3a64791b102fc271efb479aa2bab74de563c016..fa69a30c6bada3c843ed0c3b68ab191541d28bf9 100644
--- a/app/code/Magento/Tax/Model/Sales/Total/Quote/Subtotal.php
+++ b/app/code/Magento/Tax/Model/Sales/Total/Quote/Subtotal.php
@@ -9,7 +9,7 @@
  */
 namespace Magento\Tax\Model\Sales\Total\Quote;
 
-use Magento\Sales\Model\Quote\Address;
+use Magento\Quote\Model\Quote\Address;
 
 class Subtotal extends CommonTaxCollector
 {
diff --git a/app/code/Magento/Tax/Model/Sales/Total/Quote/Tax.php b/app/code/Magento/Tax/Model/Sales/Total/Quote/Tax.php
index 699a15e8a11bed7630e008ce1672a12203373fb6..cfccee02b695f17663b350c5a9b4745eb5bdec22 100644
--- a/app/code/Magento/Tax/Model/Sales/Total/Quote/Tax.php
+++ b/app/code/Magento/Tax/Model/Sales/Total/Quote/Tax.php
@@ -7,12 +7,13 @@ namespace Magento\Tax\Model\Sales\Total\Quote;
 
 use Magento\Customer\Api\Data\AddressDataBuilder as CustomerAddressBuilder;
 use Magento\Customer\Api\Data\RegionDataBuilder as CustomerAddressRegionBuilder;
-use Magento\Sales\Model\Quote\Address;
+use Magento\Quote\Model\Quote\Address;
 use Magento\Tax\Api\Data\TaxClassKeyInterface;
 use Magento\Tax\Model\Calculation;
 
 /**
  * Tax totals calculation model
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Tax extends CommonTaxCollector
 {
@@ -230,6 +231,7 @@ class Tax extends CommonTaxCollector
      * @param Address $address
      * @param array $itemsByType
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     protected function processExtraTaxables(Address $address, Array $itemsByType)
     {
@@ -281,6 +283,7 @@ class Tax extends CommonTaxCollector
      *
      * @param   Address $address
      * @return  $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function fetch(Address $address)
     {
diff --git a/app/code/Magento/Tax/Model/TaxCalculation.php b/app/code/Magento/Tax/Model/TaxCalculation.php
index 65eb1e2c18df47e5d308bdf3a41e7ea410791f88..ae2017ce90c6f25ce280736b22092dd5879e7f3f 100644
--- a/app/code/Magento/Tax/Model/TaxCalculation.php
+++ b/app/code/Magento/Tax/Model/TaxCalculation.php
@@ -20,6 +20,9 @@ use Magento\Tax\Model\Calculation\AbstractCalculator;
 use Magento\Store\Model\StoreManagerInterface;
 use Magento\Tax\Api\TaxCalculationInterface;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class TaxCalculation implements TaxCalculationInterface
 {
     /**
diff --git a/app/code/Magento/Tax/Model/TaxClass/Repository.php b/app/code/Magento/Tax/Model/TaxClass/Repository.php
index 9518d9854ac6d4b1070058084f1b4142ea17524f..10698b291590b26605c46b9a86eac9d1ee208648 100644
--- a/app/code/Magento/Tax/Model/TaxClass/Repository.php
+++ b/app/code/Magento/Tax/Model/TaxClass/Repository.php
@@ -21,6 +21,9 @@ use Magento\Tax\Model\ClassModelRegistry;
 use Magento\Tax\Model\Resource\TaxClass\Collection as TaxClassCollection;
 use Magento\Tax\Model\Resource\TaxClass\CollectionFactory as TaxClassCollectionFactory;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class Repository implements \Magento\Tax\Api\TaxClassRepositoryInterface
 {
     /**
diff --git a/app/code/Magento/Tax/Model/TaxRuleRepository.php b/app/code/Magento/Tax/Model/TaxRuleRepository.php
index 991169ee45d65269d4780f7129ec0fdf93fe31eb..675f018765539265225ba284ea8435d0fea48e82 100644
--- a/app/code/Magento/Tax/Model/TaxRuleRepository.php
+++ b/app/code/Magento/Tax/Model/TaxRuleRepository.php
@@ -22,6 +22,9 @@ use Magento\Tax\Model\Resource\Calculation\Rule as Resource;
 use Magento\Tax\Model\Resource\Calculation\Rule\Collection;
 use Magento\Tax\Model\Resource\Calculation\Rule\CollectionFactory;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class TaxRuleRepository implements TaxRuleRepositoryInterface
 {
     /**
diff --git a/app/code/Magento/Tax/composer.json b/app/code/Magento/Tax/composer.json
index 5c54feeea3e744b2ae93d3eb6f900bfdc533e659..492b2967c644c3ebcd3b8e14e2076de7746123db 100644
--- a/app/code/Magento/Tax/composer.json
+++ b/app/code/Magento/Tax/composer.json
@@ -3,22 +3,23 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-catalog": "0.42.0-beta3",
-        "magento/module-customer": "0.42.0-beta3",
-        "magento/module-core": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/module-directory": "0.42.0-beta3",
-        "magento/module-checkout": "0.42.0-beta3",
-        "magento/module-shipping": "0.42.0-beta3",
-        "magento/module-eav": "0.42.0-beta3",
-        "magento/module-sales": "0.42.0-beta3",
-        "magento/module-reports": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-catalog": "0.42.0-beta4",
+        "magento/module-customer": "0.42.0-beta4",
+        "magento/module-core": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/module-directory": "0.42.0-beta4",
+        "magento/module-checkout": "0.42.0-beta4",
+        "magento/module-shipping": "0.42.0-beta4",
+        "magento/module-eav": "0.42.0-beta4",
+        "magento/module-sales": "0.42.0-beta4",
+        "magento/module-reports": "0.42.0-beta4",
+        "magento/module-quote": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/Tax/etc/di.xml b/app/code/Magento/Tax/etc/di.xml
index 888953bb7a6dc6bb02d1f21c3fcb26409bfdff9e..e9dc9169b3fc8ad2e71112667adfc96597815c19 100644
--- a/app/code/Magento/Tax/etc/di.xml
+++ b/app/code/Magento/Tax/etc/di.xml
@@ -66,4 +66,7 @@
     <preference for="Magento\Tax\Api\Data\AppliedTaxRateInterface" type="Magento\Tax\Model\TaxDetails\AppliedTaxRate" />
     <preference for="Magento\Tax\Api\Data\TaxDetailsInterface" type="Magento\Tax\Model\TaxDetails\TaxDetails" />
     <preference for="Magento\Tax\Api\Data\TaxDetailsItemInterface" type="Magento\Tax\Model\TaxDetails\ItemDetails" />
+    <type name="Magento\Quote\Model\Quote\Address\ToOrder">
+        <plugin name="add_tax_to_order" type="Magento\Tax\Model\Quote\ToOrderConverter"/>
+    </type>
 </config>
diff --git a/app/code/Magento/Tax/etc/events.xml b/app/code/Magento/Tax/etc/events.xml
index 5cdfd2562e5fc2dbbba4341a11ceae35141a43db..4d2c2d3ba60da356a557d9c5f87e6fc33df14cd2 100644
--- a/app/code/Magento/Tax/etc/events.xml
+++ b/app/code/Magento/Tax/etc/events.xml
@@ -6,9 +6,6 @@
  */
 -->
 <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../lib/internal/Magento/Framework/Event/etc/events.xsd">
-    <event name="sales_convert_quote_address_to_order">
-        <observer name="tax" instance="Magento\Tax\Model\Observer" method="salesEventConvertQuoteAddressToOrder" />
-    </event>
     <event name="sales_order_save_after">
         <observer name="tax" instance="Magento\Tax\Model\Observer" method="salesEventOrderAfterSave" />
     </event>
diff --git a/app/code/Magento/Tax/view/adminhtml/templates/class/page/edit.phtml b/app/code/Magento/Tax/view/adminhtml/templates/class/page/edit.phtml
index 395af98eabec20ead877c53a38ae61b2a989a760..0687d7fec5198b34d000590ee59f46d5471a9fc3 100644
--- a/app/code/Magento/Tax/view/adminhtml/templates/class/page/edit.phtml
+++ b/app/code/Magento/Tax/view/adminhtml/templates/class/page/edit.phtml
@@ -11,7 +11,7 @@
     <?php echo $this->getSaveButtonHtml(); ?>
 </div>
 <?php echo $this->getRenameFormHtml(); ?>
-<script type="text/javascript">
+<script>
 require(['jquery', "mage/mage"], function(jQuery){
 
     jQuery('#<?php echo $this->getRenameFormId() ?>').mage('form').mage('validation');
diff --git a/app/code/Magento/Tax/view/adminhtml/templates/items/price/row.phtml b/app/code/Magento/Tax/view/adminhtml/templates/items/price/row.phtml
index d22474d46c02fe1fe4be1cd3642c4068921e7bd9..36f6d039cbfe81184ae8566ba2bf4ac37c149140 100644
--- a/app/code/Magento/Tax/view/adminhtml/templates/items/price/row.phtml
+++ b/app/code/Magento/Tax/view/adminhtml/templates/items/price/row.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /** @var \Magento\Tax\Block\Adminhtml\Items\Price\Renderer $this */
diff --git a/app/code/Magento/Tax/view/adminhtml/templates/items/price/total.phtml b/app/code/Magento/Tax/view/adminhtml/templates/items/price/total.phtml
index 8a78cff00278ed053d549ecc694dcf9e31659573..2dca743b9efff2c80effd5de196216edb9144b74 100644
--- a/app/code/Magento/Tax/view/adminhtml/templates/items/price/total.phtml
+++ b/app/code/Magento/Tax/view/adminhtml/templates/items/price/total.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /** @var \Magento\Tax\Block\Adminhtml\Items\Price\Renderer $this */
diff --git a/app/code/Magento/Tax/view/adminhtml/templates/items/price/unit.phtml b/app/code/Magento/Tax/view/adminhtml/templates/items/price/unit.phtml
index c9eb78a964eb57945a8bdf74c1d8f9af60260f18..48094d068aae27941704d1c2ecba612e5abf274d 100644
--- a/app/code/Magento/Tax/view/adminhtml/templates/items/price/unit.phtml
+++ b/app/code/Magento/Tax/view/adminhtml/templates/items/price/unit.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /** @var \Magento\Tax\Block\Adminhtml\Items\Price\Renderer $this */
diff --git a/app/code/Magento/Tax/view/adminhtml/templates/order/create/items/price/row.phtml b/app/code/Magento/Tax/view/adminhtml/templates/order/create/items/price/row.phtml
index 85fd68f69c6d6bafd3ba08a45e92eaed4990d838..db5eec6e9cd9936fd4c258c71679a8590797c53d 100644
--- a/app/code/Magento/Tax/view/adminhtml/templates/order/create/items/price/row.phtml
+++ b/app/code/Magento/Tax/view/adminhtml/templates/order/create/items/price/row.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /** @var \Magento\Tax\Block\Adminhtml\Items\Price\Renderer $this */
diff --git a/app/code/Magento/Tax/view/adminhtml/templates/order/create/items/price/total.phtml b/app/code/Magento/Tax/view/adminhtml/templates/order/create/items/price/total.phtml
index 9c54a2ea6d7ed56bb90275082eaf734dd6a9d5a7..e06f57de36074941e8cfd8f0e065514fe2643ee2 100644
--- a/app/code/Magento/Tax/view/adminhtml/templates/order/create/items/price/total.phtml
+++ b/app/code/Magento/Tax/view/adminhtml/templates/order/create/items/price/total.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /** @var \Magento\Tax\Block\Adminhtml\Items\Price\Renderer $this */
diff --git a/app/code/Magento/Tax/view/adminhtml/templates/order/create/items/price/unit.phtml b/app/code/Magento/Tax/view/adminhtml/templates/order/create/items/price/unit.phtml
index be15aa941c3087d0f9138f3c1ddcecd9dece1dee..9fbe691194ae0bcb9174ef81b04cca37531d2c8e 100644
--- a/app/code/Magento/Tax/view/adminhtml/templates/order/create/items/price/unit.phtml
+++ b/app/code/Magento/Tax/view/adminhtml/templates/order/create/items/price/unit.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /** @var \Magento\Tax\Block\Adminhtml\Items\Price\Renderer $this */
diff --git a/app/code/Magento/Tax/view/adminhtml/templates/rate/form.phtml b/app/code/Magento/Tax/view/adminhtml/templates/rate/form.phtml
index 778086ccc36958b84dbcfa77498f39a9be3178db..63652dad28b90a7b01d304d67f419af99ab68741 100644
--- a/app/code/Magento/Tax/view/adminhtml/templates/rate/form.phtml
+++ b/app/code/Magento/Tax/view/adminhtml/templates/rate/form.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <div class="entry-edit">
     <?php echo $this->getFormHtml() ?>
diff --git a/app/code/Magento/Tax/view/adminhtml/templates/rate/js.phtml b/app/code/Magento/Tax/view/adminhtml/templates/rate/js.phtml
index c58d30112205d165ea9247f6c3cbed3d6d5254bb..dca9643affa6aa92dcc677c93ca609711545643e 100644
--- a/app/code/Magento/Tax/view/adminhtml/templates/rate/js.phtml
+++ b/app/code/Magento/Tax/view/adminhtml/templates/rate/js.phtml
@@ -3,8 +3,11 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
-<script type="text/javascript">
+<script>
 require([
     "jquery",
     "mage/adminhtml/form"
diff --git a/app/code/Magento/Tax/view/adminhtml/templates/rate/title.phtml b/app/code/Magento/Tax/view/adminhtml/templates/rate/title.phtml
index b91236614d440a717857e8404ff0efad6a44ccea..182e54b825a79c1e1c95a5e90c6d579331ee2899 100644
--- a/app/code/Magento/Tax/view/adminhtml/templates/rate/title.phtml
+++ b/app/code/Magento/Tax/view/adminhtml/templates/rate/title.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <div id="tax-rate-titles-table" class="form-inline">
     <?php $_labels = $this->getTitles() ?>
diff --git a/app/code/Magento/Tax/view/adminhtml/templates/rule/edit.phtml b/app/code/Magento/Tax/view/adminhtml/templates/rule/edit.phtml
index 298485f757e48bf7a5cce5f7982ede35a2d7eec7..53e73d494cb1c7ad7e8461aabbce57480dcc437c 100644
--- a/app/code/Magento/Tax/view/adminhtml/templates/rule/edit.phtml
+++ b/app/code/Magento/Tax/view/adminhtml/templates/rule/edit.phtml
@@ -6,7 +6,7 @@
 
 /** @var $this \Magento\Tax\Block\Adminhtml\Rule\Edit\Form */
 ?>
-<script type="text/javascript">
+<script>
 require([
     "jquery",
     "jquery/ui",
diff --git a/app/code/Magento/Tax/view/adminhtml/templates/rule/rate/form.phtml b/app/code/Magento/Tax/view/adminhtml/templates/rule/rate/form.phtml
index 14d09542f9b29a0dbd46ba4da108c24184c1bc05..48ca457571faeb224f795e9c893d41c50be67b3f 100644
--- a/app/code/Magento/Tax/view/adminhtml/templates/rule/rate/form.phtml
+++ b/app/code/Magento/Tax/view/adminhtml/templates/rule/rate/form.phtml
@@ -10,7 +10,7 @@
     <?php echo $this->getChildHtml('form_after');?>
 </div>
 
-<script type="text/javascript">
+<script>
 
 
     var taxRateCollection = <?php echo json_encode($this->getRateCollection());?>;
diff --git a/app/code/Magento/Tax/view/adminhtml/templates/toolbar/class/save.phtml b/app/code/Magento/Tax/view/adminhtml/templates/toolbar/class/save.phtml
index 562a8414b132b05c638381019c1d6941ed2bdbc4..611cc27fa33acef904fbf4d03b8d514b96b92ee6 100644
--- a/app/code/Magento/Tax/view/adminhtml/templates/toolbar/class/save.phtml
+++ b/app/code/Magento/Tax/view/adminhtml/templates/toolbar/class/save.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <div class="page-actions">
     <?php echo $this->getBackButtonHtml() ?>
@@ -11,7 +14,7 @@
 </div>
 <?php if ($form): ?>
 <?php echo $form->toHtml(); ?>
-<script type="text/javascript">
+<script>
 require(['jquery', "mage/mage"], function(jQuery){
 
     jQuery('#<?php echo $form->getForm()->getId() ?>').mage('form').mage('validation');
diff --git a/app/code/Magento/Tax/view/adminhtml/templates/toolbar/rate/add.phtml b/app/code/Magento/Tax/view/adminhtml/templates/toolbar/rate/add.phtml
index b43379e5a04c2d6b9b74edb360e261d6258ee85d..4d1dccf3ddf08b5d2858cd531b8ee2dfbd7e59a5 100644
--- a/app/code/Magento/Tax/view/adminhtml/templates/toolbar/rate/add.phtml
+++ b/app/code/Magento/Tax/view/adminhtml/templates/toolbar/rate/add.phtml
@@ -3,5 +3,8 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php echo $this->getChildhtml('grid') ?>
diff --git a/app/code/Magento/Tax/view/adminhtml/templates/toolbar/rate/save.phtml b/app/code/Magento/Tax/view/adminhtml/templates/toolbar/rate/save.phtml
index b3045a586f6803cf52459988a81f5ae84a3dd88a..ffef43a1956cd96a0cc00c95017753e6d3ebcab3 100644
--- a/app/code/Magento/Tax/view/adminhtml/templates/toolbar/rate/save.phtml
+++ b/app/code/Magento/Tax/view/adminhtml/templates/toolbar/rate/save.phtml
@@ -3,11 +3,14 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php if ($form): ?>
 <?php echo $form->toHtml();?>
 
-<script type="text/javascript">
+<script>
 require([
     "jquery",
     "mage/mage"
diff --git a/app/code/Magento/Tax/view/adminhtml/templates/toolbar/rule/save.phtml b/app/code/Magento/Tax/view/adminhtml/templates/toolbar/rule/save.phtml
index e6124ec14f48ba1c84e2ff2b9c1995b081f88afe..6601a6fee7a8fa0326abc62791df4e274a438e7e 100644
--- a/app/code/Magento/Tax/view/adminhtml/templates/toolbar/rule/save.phtml
+++ b/app/code/Magento/Tax/view/adminhtml/templates/toolbar/rule/save.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <div class="page-actions">
     <?php echo $this->getBackButtonHtml(); ?>
@@ -12,7 +15,7 @@
 </div>
 <?php if ($form): ?>
 <?php echo $form->toHtml(); ?>
-<script type="text/javascript">
+<script>
 require(['jquery', "mage/mage"], function(jQuery){
 
     jQuery('#<?php echo $form->getForm()->getId() ?>').mage('form').mage('validation');
diff --git a/app/code/Magento/Tax/view/base/templates/pricing/adjustment.phtml b/app/code/Magento/Tax/view/base/templates/pricing/adjustment.phtml
index 23d3ddd40f1fd0d18872e1641b9c8ae2c728a1a4..73014836ba2091a798afb465f174f9ba433b84b2 100644
--- a/app/code/Magento/Tax/view/base/templates/pricing/adjustment.phtml
+++ b/app/code/Magento/Tax/view/base/templates/pricing/adjustment.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php /** @var \Magento\Tax\Pricing\Render\Adjustment $this */ ?>
diff --git a/app/code/Magento/Tax/view/base/templates/pricing/adjustment/bundle.phtml b/app/code/Magento/Tax/view/base/templates/pricing/adjustment/bundle.phtml
index 74e44645c5d449cb1b2d7c5f9a9f741777828f71..242b49afcdd3906a1a7ee568f9dbd89c1d126963 100644
--- a/app/code/Magento/Tax/view/base/templates/pricing/adjustment/bundle.phtml
+++ b/app/code/Magento/Tax/view/base/templates/pricing/adjustment/bundle.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php /** @var \Magento\Tax\Pricing\Render\Adjustment $this */ ?>
diff --git a/app/code/Magento/Tax/view/frontend/templates/checkout/cart/item/price/sidebar.phtml b/app/code/Magento/Tax/view/frontend/templates/checkout/cart/item/price/sidebar.phtml
index c04709c6b633928e37ed355a1a3211f5b74a464f..c58739df971053c9a51475e88dc87b19f94481de 100644
--- a/app/code/Magento/Tax/view/frontend/templates/checkout/cart/item/price/sidebar.phtml
+++ b/app/code/Magento/Tax/view/frontend/templates/checkout/cart/item/price/sidebar.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Tax\Block\Item\Price\Renderer */
 ?>
 <?php $_item = $this->getItem() ?>
diff --git a/app/code/Magento/Tax/view/frontend/templates/checkout/cart/minicart/totals.phtml b/app/code/Magento/Tax/view/frontend/templates/checkout/cart/minicart/totals.phtml
index e172d60ae67a7ada5ce9311c6e271ae234c32618..4ccaa70f926355694facf7421f060448bf95fb54 100644
--- a/app/code/Magento/Tax/view/frontend/templates/checkout/cart/minicart/totals.phtml
+++ b/app/code/Magento/Tax/view/frontend/templates/checkout/cart/minicart/totals.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var $this Magento\Tax\Block\Checkout\Cart\Sidebar\Totals */
 ?>
 
diff --git a/app/code/Magento/Tax/view/frontend/templates/checkout/grandtotal.phtml b/app/code/Magento/Tax/view/frontend/templates/checkout/grandtotal.phtml
index 82dbc0a2380164cab45fcb747763d6faef2d54a9..c2bd553543d8c9dfe51c7c158531579917644eaa 100644
--- a/app/code/Magento/Tax/view/frontend/templates/checkout/grandtotal.phtml
+++ b/app/code/Magento/Tax/view/frontend/templates/checkout/grandtotal.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /**
  * @var $this \Magento\Tax\Block\Checkout\Grandtotal
  */
diff --git a/app/code/Magento/Tax/view/frontend/templates/checkout/shipping.phtml b/app/code/Magento/Tax/view/frontend/templates/checkout/shipping.phtml
index d288eda19564c2927b9ee5882e0f916cebf277eb..dbceb0cb467139e780ad4f5dd244593b17f57ea1 100644
--- a/app/code/Magento/Tax/view/frontend/templates/checkout/shipping.phtml
+++ b/app/code/Magento/Tax/view/frontend/templates/checkout/shipping.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /**
  * @var $this \Magento\Tax\Block\Checkout\Shipping
  * @see \Magento\Tax\Block\Checkout\Shipping
diff --git a/app/code/Magento/Tax/view/frontend/templates/checkout/shipping/price.phtml b/app/code/Magento/Tax/view/frontend/templates/checkout/shipping/price.phtml
index d7f08999b6f1d05db8a0b823e10b71e58ff46107..591ebbacac082536c6511b679f28fa2cdff04d21 100644
--- a/app/code/Magento/Tax/view/frontend/templates/checkout/shipping/price.phtml
+++ b/app/code/Magento/Tax/view/frontend/templates/checkout/shipping/price.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php /** @var $this \Magento\Tax\Block\Checkout\Shipping\Price */ ?>
 
diff --git a/app/code/Magento/Tax/view/frontend/templates/checkout/subtotal.phtml b/app/code/Magento/Tax/view/frontend/templates/checkout/subtotal.phtml
index 1818d6a5360fc9e1af21aea26ef60974415f4b12..cc16babf635a6548e24bf187ff61e7f312265c90 100644
--- a/app/code/Magento/Tax/view/frontend/templates/checkout/subtotal.phtml
+++ b/app/code/Magento/Tax/view/frontend/templates/checkout/subtotal.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /**
  * @var $this \Magento\Tax\Block\Checkout\Subtotal
  * @see \Magento\Tax\Block\Checkout\Subtotal
diff --git a/app/code/Magento/Tax/view/frontend/templates/checkout/tax.phtml b/app/code/Magento/Tax/view/frontend/templates/checkout/tax.phtml
index 93fb746addef5c56ab1ed6f40f786c4e18dbdd48..ae3062eb89d0800e33f53ed84c29bda3a67a4d64 100644
--- a/app/code/Magento/Tax/view/frontend/templates/checkout/tax.phtml
+++ b/app/code/Magento/Tax/view/frontend/templates/checkout/tax.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /**
  * @var $this \Magento\Tax\Block\Checkout\Tax
  * @see \Magento\Tax\Block\Checkout\Tax
diff --git a/app/code/Magento/Tax/view/frontend/templates/email/items/price/row.phtml b/app/code/Magento/Tax/view/frontend/templates/email/items/price/row.phtml
index 5b003c46139933f50f231160876d1f4f8f67f86c..3204c0570021e00dcdca15e7c4a443d6d90b11df 100644
--- a/app/code/Magento/Tax/view/frontend/templates/email/items/price/row.phtml
+++ b/app/code/Magento/Tax/view/frontend/templates/email/items/price/row.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /** @var \Magento\Tax\Block\Item\Price\Renderer $this */
diff --git a/app/code/Magento/Tax/view/frontend/templates/item/price/row.phtml b/app/code/Magento/Tax/view/frontend/templates/item/price/row.phtml
index 14c3c7ba761733ee23f317a2204db8e9ab3f479f..ecb7dfc01f6cc04b35047749865c2c82d5e061a1 100644
--- a/app/code/Magento/Tax/view/frontend/templates/item/price/row.phtml
+++ b/app/code/Magento/Tax/view/frontend/templates/item/price/row.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Tax\Block\Item\Price\Renderer */
 
 $_item = $this->getItem();
diff --git a/app/code/Magento/Tax/view/frontend/templates/item/price/total_after_discount.phtml b/app/code/Magento/Tax/view/frontend/templates/item/price/total_after_discount.phtml
index 59805ea42370e76b0d4ac07c8ec206bb0661564e..59d60a1d7fc74b5d3acd175863dc6a0178b265f8 100644
--- a/app/code/Magento/Tax/view/frontend/templates/item/price/total_after_discount.phtml
+++ b/app/code/Magento/Tax/view/frontend/templates/item/price/total_after_discount.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var \Magento\Tax\Block\Item\Price\Renderer $this */
 $_item = $this->getItem();
 ?>
diff --git a/app/code/Magento/Tax/view/frontend/templates/item/price/unit.phtml b/app/code/Magento/Tax/view/frontend/templates/item/price/unit.phtml
index 082352620bde0964f4bcb7f7802748da09db4ff9..3194c867b65cc9519312433f3bf9611a7c4a916a 100644
--- a/app/code/Magento/Tax/view/frontend/templates/item/price/unit.phtml
+++ b/app/code/Magento/Tax/view/frontend/templates/item/price/unit.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Tax\Block\Item\Price\Renderer */
 
 $_item = $this->getItem();
diff --git a/app/code/Magento/Tax/view/frontend/templates/order/tax.phtml b/app/code/Magento/Tax/view/frontend/templates/order/tax.phtml
index df9efdbbf3e8b04231c13d97919447d7dad75383..bdb8466a910d69b4cec79ccfa5e085cfb3e10d28 100644
--- a/app/code/Magento/Tax/view/frontend/templates/order/tax.phtml
+++ b/app/code/Magento/Tax/view/frontend/templates/order/tax.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
     $_order  = $this->getOrder();
diff --git a/app/code/Magento/TaxImportExport/Model/Rate/CsvImportHandler.php b/app/code/Magento/TaxImportExport/Model/Rate/CsvImportHandler.php
index e75dc06d7ab5f751395d9c7c0f66f18546d0824d..44a392b7484a588a06a1fe1ec226b0390ded1ac5 100644
--- a/app/code/Magento/TaxImportExport/Model/Rate/CsvImportHandler.php
+++ b/app/code/Magento/TaxImportExport/Model/Rate/CsvImportHandler.php
@@ -142,6 +142,7 @@ class CsvImportHandler
      * @param array $validFields assoc array of valid file fields
      * @return array
      * @throws \Magento\Framework\Model\Exception
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     protected function _filterRateData(array $rateRawData, array $invalidFields, array $validFields)
     {
diff --git a/app/code/Magento/TaxImportExport/composer.json b/app/code/Magento/TaxImportExport/composer.json
index d49ee464fd3e6de6543b91e765816714480c84bf..7c7f0e8ed4897aac376f430eb6e5c91ecb1225d4 100644
--- a/app/code/Magento/TaxImportExport/composer.json
+++ b/app/code/Magento/TaxImportExport/composer.json
@@ -3,15 +3,15 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-tax": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/module-directory": "0.42.0-beta3",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-tax": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/module-directory": "0.42.0-beta4",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/TaxImportExport/view/adminhtml/templates/importExport.phtml b/app/code/Magento/TaxImportExport/view/adminhtml/templates/importExport.phtml
index 9d4703fcbbbbd17c4c01fa6363abe68ce5b95204..fb5fc443fe42ff4a594b6e78df2c2b1bb2296be0 100644
--- a/app/code/Magento/TaxImportExport/view/adminhtml/templates/importExport.phtml
+++ b/app/code/Magento/TaxImportExport/view/adminhtml/templates/importExport.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <div class="import-export-tax-rates">
     <?php if (!$this->getIsReadonly()): ?>
@@ -19,7 +22,7 @@
         <?php if ($this->getUseContainer()): ?>
         </form>
         <?php endif; ?>
-        <script type="text/javascript">
+        <script>
 require(['jquery', "mage/mage", "js/theme"], function(jQuery){
 
     jQuery('#import-form').mage('form').mage('validation');
diff --git a/app/code/Magento/Theme/Block/Adminhtml/System/Design/Theme/Edit/Tab/General.php b/app/code/Magento/Theme/Block/Adminhtml/System/Design/Theme/Edit/Tab/General.php
index edc9a152f28f1d926ebe4b05a666eb4964cbb625..cf8ff3cb90a2681a2e78bab94afdeb0b4989012a 100644
--- a/app/code/Magento/Theme/Block/Adminhtml/System/Design/Theme/Edit/Tab/General.php
+++ b/app/code/Magento/Theme/Block/Adminhtml/System/Design/Theme/Edit/Tab/General.php
@@ -155,18 +155,6 @@ class General extends \Magento\Theme\Block\Adminhtml\System\Design\Theme\Edit\Ab
             );
         }
 
-        $themeFieldset->addField(
-            'theme_version',
-            $this->_getFieldTextType(),
-            [
-                'label' => __('Theme Version'),
-                'title' => __('Theme Version'),
-                'name' => 'theme_version',
-                'required' => $this->_isFieldAttrRequired(),
-                'note' => $this->_filterFieldNote(__('Example: 0.0.0.1 or 123.1.0.25-alpha1'))
-            ]
-        );
-
         $themeFieldset->addField(
             'theme_title',
             $this->_getFieldTextType(),
@@ -282,7 +270,6 @@ class General extends \Magento\Theme\Block\Adminhtml\System\Design\Theme\Edit\Ab
     protected function _getDefaults()
     {
         $defaults = [];
-        $defaults['theme_version'] = '0.0.0.1';
         $defaults['theme_title'] = __('New Theme');
 
         return $defaults;
diff --git a/app/code/Magento/Theme/Block/Html/Topmenu.php b/app/code/Magento/Theme/Block/Html/Topmenu.php
index 0bf0a680ff46b9f11acc3435cf6b486e5bea84a2..5588cbbd6241c96bb854328f5ef1ce76cbcfa7d4 100644
--- a/app/code/Magento/Theme/Block/Html/Topmenu.php
+++ b/app/code/Magento/Theme/Block/Html/Topmenu.php
@@ -62,6 +62,7 @@ class Topmenu extends Template implements IdentityInterface
             'page_block_html_topmenu_gethtml_after',
             ['menu' => $this->_menu, 'transportObject' => $transportObject]
         );
+        $html = $transportObject->getHtml();
 
         return $html;
     }
diff --git a/app/code/Magento/Theme/composer.json b/app/code/Magento/Theme/composer.json
index 9b67f6efa161aa3360950306a5bce79623bd7581..d79abd45addbc8af98f600e0307d6e46229701b0 100644
--- a/app/code/Magento/Theme/composer.json
+++ b/app/code/Magento/Theme/composer.json
@@ -3,20 +3,20 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-core": "0.42.0-beta3",
-        "magento/module-customer": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/module-cms": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
-        "magento/module-require-js": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-core": "0.42.0-beta4",
+        "magento/module-customer": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/module-cms": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
+        "magento/module-require-js": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "suggest": {
-        "magento/module-translation": "0.42.0-beta3"
+        "magento/module-translation": "0.42.0-beta4"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/Theme/view/adminhtml/layout/adminhtml_system_design_theme_block.xml b/app/code/Magento/Theme/view/adminhtml/layout/adminhtml_system_design_theme_block.xml
index f6f55782e2bb5484ef718f42dbcd54bf8861daf1..2825bab9eabe1afe0c988c760c850ac7992504e8 100644
--- a/app/code/Magento/Theme/view/adminhtml/layout/adminhtml_system_design_theme_block.xml
+++ b/app/code/Magento/Theme/view/adminhtml/layout/adminhtml_system_design_theme_block.xml
@@ -52,14 +52,6 @@
                             <argument name="column_css_class" xsi:type="string">theme-path</argument>
                         </arguments>
                     </block>
-                    <block class="Magento\Backend\Block\Widget\Grid\Column" as="theme_version">
-                        <arguments>
-                            <argument name="header" xsi:type="string" translate="true">Theme Version</argument>
-                            <argument name="index" xsi:type="string">theme_version</argument>
-                            <argument name="filter_index" xsi:type="string">main_table.theme_version</argument>
-                            <argument name="column_css_class" xsi:type="string">theme-version</argument>
-                        </arguments>
-                    </block>
                 </block>
             </block>
         </referenceBlock>
diff --git a/app/code/Magento/Theme/view/adminhtml/templates/browser/content/files.phtml b/app/code/Magento/Theme/view/adminhtml/templates/browser/content/files.phtml
index 77c1f6b1ccbbbbbac3e65c96f40838be8dab0265..088aa900b849c7f8ca6c8ea1d30b4febfb42475c 100644
--- a/app/code/Magento/Theme/view/adminhtml/templates/browser/content/files.phtml
+++ b/app/code/Magento/Theme/view/adminhtml/templates/browser/content/files.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php
diff --git a/app/code/Magento/Theme/view/adminhtml/templates/browser/content/uploader.phtml b/app/code/Magento/Theme/view/adminhtml/templates/browser/content/uploader.phtml
index 0bd96943cbd53236fc92b81dc04f05f5dca0b75a..6892e8f1f038670bad2e7a71a9933353abe7cfc4 100644
--- a/app/code/Magento/Theme/view/adminhtml/templates/browser/content/uploader.phtml
+++ b/app/code/Magento/Theme/view/adminhtml/templates/browser/content/uploader.phtml
@@ -26,7 +26,7 @@
     </div>
 </div>
 
-<script type="text/javascript">
+<script>
 require(['jquery', "jquery/file-uploader"], function($){
 
 //<![CDATA[
diff --git a/app/code/Magento/Theme/view/adminhtml/templates/tabs/css.phtml b/app/code/Magento/Theme/view/adminhtml/templates/tabs/css.phtml
index 7e170cc844ba9dc5f703926374c41a0f4ee193d7..0c9635021c00d7610724608cd05c00ec8200f40a 100644
--- a/app/code/Magento/Theme/view/adminhtml/templates/tabs/css.phtml
+++ b/app/code/Magento/Theme/view/adminhtml/templates/tabs/css.phtml
@@ -9,7 +9,7 @@
 
 <?php echo $this->getFormHtml(); ?>
 
-<script type="text/javascript">
+<script>
 require([
     "jquery",
     "jquery/file-uploader",
diff --git a/app/code/Magento/Theme/view/adminhtml/templates/tabs/fieldset/js.phtml b/app/code/Magento/Theme/view/adminhtml/templates/tabs/fieldset/js.phtml
index 3da7700b7c78a936632c20527b35cec92973bd36..bb3d55c4c9e7b71f24d2e0fb23047b3d4810575f 100644
--- a/app/code/Magento/Theme/view/adminhtml/templates/tabs/fieldset/js.phtml
+++ b/app/code/Magento/Theme/view/adminhtml/templates/tabs/fieldset/js.phtml
@@ -38,7 +38,7 @@
 
 <ul id="js-files-container" class="js-files-container ui-sortable" ></ul>
 
-<script type="text/javascript">
+<script>
 require([
     "jquery",
     "jquery/ui",
diff --git a/app/code/Magento/Theme/view/adminhtml/templates/tabs/js.phtml b/app/code/Magento/Theme/view/adminhtml/templates/tabs/js.phtml
index fa4f380851e6c19b8c2340e9a60943fc04fc6431..d7652b782a6ada0450e9babd7262f031fd3a9f85 100644
--- a/app/code/Magento/Theme/view/adminhtml/templates/tabs/js.phtml
+++ b/app/code/Magento/Theme/view/adminhtml/templates/tabs/js.phtml
@@ -7,7 +7,7 @@
 <?php /** @var $this \Magento\Theme\Block\Adminhtml\System\Design\Theme\Edit\Tab\Js */ ?>
 <?php echo $this->getFormHtml(); ?>
 
-<script type="text/javascript">
+<script>
 require([
     "jquery",
     "jquery/file-uploader",
diff --git a/app/code/Magento/Theme/view/base/templates/root.phtml b/app/code/Magento/Theme/view/base/templates/root.phtml
index 1abea1421349e8bd5d77d0dc6575f2d36b7ac2cb..df0de42938530989d5751bd6e427832874a77788 100644
--- a/app/code/Magento/Theme/view/base/templates/root.phtml
+++ b/app/code/Magento/Theme/view/base/templates/root.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <!doctype html>
 <html <?php echo $htmlAttributes ?>>
diff --git a/app/code/Magento/Theme/view/frontend/templates/callouts/left_col.phtml b/app/code/Magento/Theme/view/frontend/templates/callouts/left_col.phtml
index 27aa62051cdb47b1ffb2e7b75d6c7bfbe0418a0e..3d26ab369375985cc441a347c08ff66c23e5bd38 100644
--- a/app/code/Magento/Theme/view/frontend/templates/callouts/left_col.phtml
+++ b/app/code/Magento/Theme/view/frontend/templates/callouts/left_col.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <div class="block block-banner">
     <div class="block-content">
diff --git a/app/code/Magento/Theme/view/frontend/templates/callouts/right_col.phtml b/app/code/Magento/Theme/view/frontend/templates/callouts/right_col.phtml
index 27aa62051cdb47b1ffb2e7b75d6c7bfbe0418a0e..3d26ab369375985cc441a347c08ff66c23e5bd38 100644
--- a/app/code/Magento/Theme/view/frontend/templates/callouts/right_col.phtml
+++ b/app/code/Magento/Theme/view/frontend/templates/callouts/right_col.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <div class="block block-banner">
     <div class="block-content">
diff --git a/app/code/Magento/Theme/view/frontend/templates/html/block.phtml b/app/code/Magento/Theme/view/frontend/templates/html/block.phtml
index c418c25733a731118dc1e0013ffbda5622195f0c..c041525a0a130369d8623bdae712ec07e58b708b 100644
--- a/app/code/Magento/Theme/view/frontend/templates/html/block.phtml
+++ b/app/code/Magento/Theme/view/frontend/templates/html/block.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <div class="block <?php echo $this->getBlockCss(); ?>">
     <div class="block-title <?php echo $this->getBlockCss(); ?>-title"><strong><?php echo $this->getBlockTitle(); ?></strong></div>
diff --git a/app/code/Magento/Theme/view/frontend/templates/html/breadcrumbs.phtml b/app/code/Magento/Theme/view/frontend/templates/html/breadcrumbs.phtml
index 26ddadbece5848de25c75c31efdff675adabc5d4..7a1ac1da4eab0bc75ccfcd37783c0588f6808f6e 100644
--- a/app/code/Magento/Theme/view/frontend/templates/html/breadcrumbs.phtml
+++ b/app/code/Magento/Theme/view/frontend/templates/html/breadcrumbs.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php if ($crumbs && is_array($crumbs)) : ?>
 <div class="breadcrumbs">
diff --git a/app/code/Magento/Theme/view/frontend/templates/html/collapsible.phtml b/app/code/Magento/Theme/view/frontend/templates/html/collapsible.phtml
index ae267efb8e4ae592d4b055fb9ce743b3f6fd933d..6e3b91aef494301113fff2dc3a8222bef0b28fca 100644
--- a/app/code/Magento/Theme/view/frontend/templates/html/collapsible.phtml
+++ b/app/code/Magento/Theme/view/frontend/templates/html/collapsible.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <div class="block <?php echo $this->getBlockCss(); ?>">
diff --git a/app/code/Magento/Theme/view/frontend/templates/html/container.phtml b/app/code/Magento/Theme/view/frontend/templates/html/container.phtml
index c83baf666a119f65ad89f4ed9a8180293004fb86..594c738e487010629a32eff2693d1c7e14fd61bd 100644
--- a/app/code/Magento/Theme/view/frontend/templates/html/container.phtml
+++ b/app/code/Magento/Theme/view/frontend/templates/html/container.phtml
@@ -3,5 +3,8 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php echo $this->getChildHtml(); ?>
diff --git a/app/code/Magento/Theme/view/frontend/templates/html/footer.phtml b/app/code/Magento/Theme/view/frontend/templates/html/footer.phtml
index 5b08729dcdf87fbb8571195390a4cfdeb019e5fb..f00f79fae167edad4b850e088d5205010283bb8a 100644
--- a/app/code/Magento/Theme/view/frontend/templates/html/footer.phtml
+++ b/app/code/Magento/Theme/view/frontend/templates/html/footer.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <div class="footer-container">
     <div class="footer">
diff --git a/app/code/Magento/Theme/view/frontend/templates/html/header.phtml b/app/code/Magento/Theme/view/frontend/templates/html/header.phtml
index 4b8dc034ebdb7368b2faa3c4e824f877d9450a90..7de615e9174a709063ac916daeaa695f3025d03a 100644
--- a/app/code/Magento/Theme/view/frontend/templates/html/header.phtml
+++ b/app/code/Magento/Theme/view/frontend/templates/html/header.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /**
  * @var \Magento\Theme\Block\Html\Header $this
  */
diff --git a/app/code/Magento/Theme/view/frontend/templates/html/header/logo.phtml b/app/code/Magento/Theme/view/frontend/templates/html/header/logo.phtml
index 801ec16dc71824306c01fb9eb24909a64fd81da2..6ae7216aa8fe8b4a4423aa008874bd19a0f991fe 100644
--- a/app/code/Magento/Theme/view/frontend/templates/html/header/logo.phtml
+++ b/app/code/Magento/Theme/view/frontend/templates/html/header/logo.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /**
  * @var \Magento\Theme\Block\Html\Header\Logo $this
  */
diff --git a/app/code/Magento/Theme/view/frontend/templates/html/notices.phtml b/app/code/Magento/Theme/view/frontend/templates/html/notices.phtml
index 7caa1e907db9a01276fdae91fc90ef084b21fe3f..35ccc6db8955e1b8d48330bce4d0f36df7699967 100644
--- a/app/code/Magento/Theme/view/frontend/templates/html/notices.phtml
+++ b/app/code/Magento/Theme/view/frontend/templates/html/notices.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
@@ -30,7 +33,7 @@
             </p>
         </div>
     </div>
-    <script type="text/javascript">
+    <script>
 require(['jquery'], function(jQuery){
 
         // <![CDATA[
@@ -69,7 +72,7 @@ require(['jquery'], function(jQuery){
             </div>
         </div>
     </div>
-    <script type="text/javascript">
+    <script>
 require([
     "jquery",
     "mage/mage"
diff --git a/app/code/Magento/Theme/view/frontend/templates/html/pager.phtml b/app/code/Magento/Theme/view/frontend/templates/html/pager.phtml
index be498084cb71a43b1051d1a704a73cb873749f11..15855ee05b8d16dd65ce4ebf4c3bf4b029e7f7ae 100644
--- a/app/code/Magento/Theme/view/frontend/templates/html/pager.phtml
+++ b/app/code/Magento/Theme/view/frontend/templates/html/pager.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/Theme/view/frontend/templates/html/print.phtml b/app/code/Magento/Theme/view/frontend/templates/html/print.phtml
index 44d5064d2d74ae25f7dd064651f06fcff688568c..954d6fbbb837836a47454b02b5ec8545abeddabc 100644
--- a/app/code/Magento/Theme/view/frontend/templates/html/print.phtml
+++ b/app/code/Magento/Theme/view/frontend/templates/html/print.phtml
@@ -4,7 +4,7 @@
  * See COPYING.txt for license details.
  */
 ?>
-<script type="text/javascript">
+<script>
     jQuery(function() {
         window.print();
     });
diff --git a/app/code/Magento/Theme/view/frontend/templates/html/sections.phtml b/app/code/Magento/Theme/view/frontend/templates/html/sections.phtml
index 40ac34e1668431ae58fb94eaded19e39d9830ee9..b1a21ccc8dbdda98550801922e847a20f101ce02 100644
--- a/app/code/Magento/Theme/view/frontend/templates/html/sections.phtml
+++ b/app/code/Magento/Theme/view/frontend/templates/html/sections.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 
diff --git a/app/code/Magento/Theme/view/frontend/templates/html/skiptarget.phtml b/app/code/Magento/Theme/view/frontend/templates/html/skiptarget.phtml
index df30bd4609cc7c2179f7e7c6c47f3ebc1be41d05..aa88448729952539cb44a1826b718da2a8e75bbf 100644
--- a/app/code/Magento/Theme/view/frontend/templates/html/skiptarget.phtml
+++ b/app/code/Magento/Theme/view/frontend/templates/html/skiptarget.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 $target_id = $this->getTargetId();
 ?>
 <a id="<?php echo $target_id?>" name="<?php echo $target_id?>" tabindex="0"></a>
diff --git a/app/code/Magento/Theme/view/frontend/templates/html/title.phtml b/app/code/Magento/Theme/view/frontend/templates/html/title.phtml
index 25a435de956d0cef2bdc651327660b8cf02a53d9..cca31459612a243de6537285d448ef55e48a1dff 100644
--- a/app/code/Magento/Theme/view/frontend/templates/html/title.phtml
+++ b/app/code/Magento/Theme/view/frontend/templates/html/title.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * @var $this \Magento\Theme\Block\Html\Title
  */
diff --git a/app/code/Magento/Theme/view/frontend/templates/html/topmenu.phtml b/app/code/Magento/Theme/view/frontend/templates/html/topmenu.phtml
index 0849bca62a2f4449d0c7cdd9ec9ae4cc7261e28e..c83095a5f44d7d22991ace76b5c818db52de8b71 100644
--- a/app/code/Magento/Theme/view/frontend/templates/html/topmenu.phtml
+++ b/app/code/Magento/Theme/view/frontend/templates/html/topmenu.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/Theme/view/frontend/templates/js/calendar.phtml b/app/code/Magento/Theme/view/frontend/templates/js/calendar.phtml
index 4ff0477d31b2f2b243a4f41569168381ca3a97ee..4fb03ca950dfe0e6625befecc38d9b1787554809 100644
--- a/app/code/Magento/Theme/view/frontend/templates/js/calendar.phtml
+++ b/app/code/Magento/Theme/view/frontend/templates/js/calendar.phtml
@@ -12,7 +12,7 @@
  */
 ?>
 
-<script type="text/javascript">
+<script>
 require([
     "jquery",
     "jquery/ui"
diff --git a/app/code/Magento/Theme/view/frontend/templates/js/components.phtml b/app/code/Magento/Theme/view/frontend/templates/js/components.phtml
index 99be8e37348cec69521e018a61f416324e582a94..43f7e9c30c0126f46204910ee749ef83ad81e815 100644
--- a/app/code/Magento/Theme/view/frontend/templates/js/components.phtml
+++ b/app/code/Magento/Theme/view/frontend/templates/js/components.phtml
@@ -3,5 +3,8 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php echo $this->getChildHtml() ?>
diff --git a/app/code/Magento/Theme/view/frontend/templates/js/cookie.phtml b/app/code/Magento/Theme/view/frontend/templates/js/cookie.phtml
index a9fcbf6079eaa5f539d285e8635c40ecf5acac34..30f97f4dc2854416c69cb8cced0def32c4a3b4fb 100644
--- a/app/code/Magento/Theme/view/frontend/templates/js/cookie.phtml
+++ b/app/code/Magento/Theme/view/frontend/templates/js/cookie.phtml
@@ -12,7 +12,7 @@
  */
 ?>
 
-<script type="text/javascript">
+<script>
 	require([
 		"jquery",
 		"jquery/jquery.cookie",
diff --git a/app/code/Magento/Theme/view/frontend/templates/js/require_js.phtml b/app/code/Magento/Theme/view/frontend/templates/js/require_js.phtml
index bd7043e2d06d575e419a0e057947edafcdce6e48..97d0888128561b583f446883da74c1857841846a 100644
--- a/app/code/Magento/Theme/view/frontend/templates/js/require_js.phtml
+++ b/app/code/Magento/Theme/view/frontend/templates/js/require_js.phtml
@@ -4,7 +4,7 @@
  * See COPYING.txt for license details.
  */
 ?>
-<script type="text/javascript">
+<script>
     var require = {
         "baseUrl": "<?php echo $this->getViewFileUrl('/') ?>"
     };
diff --git a/app/code/Magento/Theme/view/frontend/templates/link.phtml b/app/code/Magento/Theme/view/frontend/templates/link.phtml
index 3c74b6202fdedc78086e67637cc419225c3af146..589a6db07b76b7383e42d5a1b65ef22a8bcb8501 100644
--- a/app/code/Magento/Theme/view/frontend/templates/link.phtml
+++ b/app/code/Magento/Theme/view/frontend/templates/link.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /**
  * @var $this \Magento\Framework\View\Element\Html\Link
  */
diff --git a/app/code/Magento/Translation/Model/Inline/Parser.php b/app/code/Magento/Translation/Model/Inline/Parser.php
index ae2fb54556b1485f7c378fec07f310ff5bd62c69..7635037657204c828d5049ee9a63ea076fa7fa83 100644
--- a/app/code/Magento/Translation/Model/Inline/Parser.php
+++ b/app/code/Magento/Translation/Model/Inline/Parser.php
@@ -272,6 +272,7 @@ class Parser implements \Magento\Framework\Translate\Inline\ParserInterface
      * @param array $matches
      * @param array $options
      * @return string
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     protected function _getAttributeLocation($matches, $options)
     {
@@ -285,6 +286,7 @@ class Parser implements \Magento\Framework\Translate\Inline\ParserInterface
      * @param array $matches
      * @param array $options
      * @return string
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     protected function _getTagLocation($matches, $options)
     {
diff --git a/app/code/Magento/Translation/Model/Js/DataProvider.php b/app/code/Magento/Translation/Model/Js/DataProvider.php
index 3a397628f9159522bbe98705403fcde2e546799d..317dc602a3c7abc55998972f72d9b9f4b8450027 100644
--- a/app/code/Magento/Translation/Model/Js/DataProvider.php
+++ b/app/code/Magento/Translation/Model/Js/DataProvider.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Translation\Model\Js;
 
 class DataProvider implements DataProviderInterface
@@ -12,6 +14,7 @@ class DataProvider implements DataProviderInterface
      * Get translation data
      *
      * @return string[]
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public function getData()
     {
diff --git a/app/code/Magento/Translation/composer.json b/app/code/Magento/Translation/composer.json
index 259dadd131c125ede938714ecea870d79657208c..aa68217911935b5c88f1d439f8b7dd42b932d91e 100644
--- a/app/code/Magento/Translation/composer.json
+++ b/app/code/Magento/Translation/composer.json
@@ -3,14 +3,14 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-core": "0.42.0-beta3",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-core": "0.42.0-beta4",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/Translation/view/adminhtml/templates/translate_inline.phtml b/app/code/Magento/Translation/view/adminhtml/templates/translate_inline.phtml
index 22fa51e2406ebdff0e82c8b8ead0b54a28b38d08..63cf2df2387826a64180d1416789ae6ef4685330 100644
--- a/app/code/Magento/Translation/view/adminhtml/templates/translate_inline.phtml
+++ b/app/code/Magento/Translation/view/adminhtml/templates/translate_inline.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <link rel="stylesheet" type="text/css" href="<?php echo $this->getViewFileUrl('prototype/windows/themes/default.css') ?>"/>
@@ -43,7 +46,7 @@
 
 <div data-role="translate-dialog"
      data-mage-init='{"translateInline":{"ajaxUrl":"<?php echo $this->getAjaxUrl() ?>"},"loader":{}}'></div>
-<script type="text/javascript">
+<script>
 require([
     "jquery",
     "mage/edit-trigger",
diff --git a/app/code/Magento/Translation/view/base/templates/translate.phtml b/app/code/Magento/Translation/view/base/templates/translate.phtml
index 9a2ad31d4b583118f2ce42ebb1d3b064cbcf1b4a..534dd65f3701f6e86d0fe012b0a9b20e3ee99f74 100644
--- a/app/code/Magento/Translation/view/base/templates/translate.phtml
+++ b/app/code/Magento/Translation/view/base/templates/translate.phtml
@@ -5,7 +5,7 @@
  */
 ?>
 <?php /** @var $this \Magento\Translation\Block\Js */ ?>
-<script type="text/javascript">
+<script>
 //<![CDATA[
     require(
         ["jquery", "mage/translate"], function($){ $.mage.translate.add( <?php echo $this->getTranslatedJson() ?> ); }
diff --git a/app/code/Magento/Translation/view/frontend/templates/translate_inline.phtml b/app/code/Magento/Translation/view/frontend/templates/translate_inline.phtml
index 4794589cbc67de46313c23f210a41042553793fd..34712ef99b2831417426e4ad52110027664c161b 100644
--- a/app/code/Magento/Translation/view/frontend/templates/translate_inline.phtml
+++ b/app/code/Magento/Translation/view/frontend/templates/translate_inline.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <link rel="stylesheet" type="text/css" href="<?php echo $this->getViewFileUrl('prototype/windows/themes/default.css') ?>"/>
@@ -43,7 +46,7 @@
 
 <div data-role="translate-dialog"
      data-mage-init='{"translateInline":{"ajaxUrl":"<?php echo $this->getAjaxUrl() ?>"},"loader":{}}'></div>
-<script type="text/javascript">
+<script>
     require([
         "jquery",
         "mage/edit-trigger",
diff --git a/app/code/Magento/Ui/Component/AbstractView.php b/app/code/Magento/Ui/Component/AbstractView.php
index 308f30bd03ab6e28c35b1bf6c66e56bfe378af6a..e67d0e1ff40ee6b3182c77bebb844c143fa8a84c 100644
--- a/app/code/Magento/Ui/Component/AbstractView.php
+++ b/app/code/Magento/Ui/Component/AbstractView.php
@@ -19,6 +19,8 @@ use Magento\Ui\DataProvider\Manager;
 
 /**
  * Abstract class AbstractView
+ * @SuppressWarnings(PHPMD.NumberOfChildren)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 abstract class AbstractView extends Template implements UiComponentInterface
 {
diff --git a/app/code/Magento/Ui/Component/Filter/Type/Date.php b/app/code/Magento/Ui/Component/Filter/Type/Date.php
index 0dc2c3b5f46e9c058d418fa48dd27c8563b5e9d9..fa7a9564032774cf76e01c3078f7a403d7251ed9 100644
--- a/app/code/Magento/Ui/Component/Filter/Type/Date.php
+++ b/app/code/Magento/Ui/Component/Filter/Type/Date.php
@@ -19,6 +19,7 @@ use Magento\Ui\DataProvider\Manager;
 
 /**
  * Class Date
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Date extends FilterAbstract
 {
@@ -56,6 +57,7 @@ class Date extends FilterAbstract
      * @param FilterPool $filterPool
      * @param ResolverInterface $localeResolver
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         TemplateContext $context,
diff --git a/app/code/Magento/Ui/Component/Form.php b/app/code/Magento/Ui/Component/Form.php
index 30887037e5fcce8d6c523283e9ef01f88655fd25..4e4435b6773638f14a510253edf655d196508f6a 100644
--- a/app/code/Magento/Ui/Component/Form.php
+++ b/app/code/Magento/Ui/Component/Form.php
@@ -19,6 +19,7 @@ use Magento\Ui\DataProvider\Manager;
 
 /**
  * Class Form
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Form extends AbstractView
 {
@@ -74,6 +75,7 @@ class Form extends AbstractView
      * @param ActionPool $actionPool
      * @param ButtonProviderFactory $buttonProviderFactory
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         TemplateContext $context,
@@ -210,6 +212,7 @@ class Form extends AbstractView
      * @param array $itemA
      * @param array $itemB
      * @return int
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function sortButtons(array $itemA, array $itemB)
     {
diff --git a/app/code/Magento/Ui/Component/Form/Element/AbstractFormElement.php b/app/code/Magento/Ui/Component/Form/Element/AbstractFormElement.php
index e07e2b5d6a3d8fd827b50afa766b707c2ba91fc8..e536143ab6b4a719b6e8582159d748eb1bc8d182 100644
--- a/app/code/Magento/Ui/Component/Form/Element/AbstractFormElement.php
+++ b/app/code/Magento/Ui/Component/Form/Element/AbstractFormElement.php
@@ -38,6 +38,7 @@ abstract class AbstractFormElement extends AbstractView implements ElementInterf
 
     /**
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsReadonly()
     {
diff --git a/app/code/Magento/Ui/Component/Form/Element/ElementInterface.php b/app/code/Magento/Ui/Component/Form/Element/ElementInterface.php
index f0ffa83010988c9866762214f7ba9d4a61e44773..f6cd906ed59ec2b3113b6513f3d33e4bd88d2755 100644
--- a/app/code/Magento/Ui/Component/Form/Element/ElementInterface.php
+++ b/app/code/Magento/Ui/Component/Form/Element/ElementInterface.php
@@ -24,6 +24,7 @@ interface ElementInterface extends UiComponentInterface
 
     /**
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsReadonly();
 
diff --git a/app/code/Magento/Ui/Component/Form/Element/Radio.php b/app/code/Magento/Ui/Component/Form/Element/Radio.php
index bc856928cacc366585fb7757479e4cd3aa78ead3..1737d460db14218d51e0edad5542b86c716a4723 100644
--- a/app/code/Magento/Ui/Component/Form/Element/Radio.php
+++ b/app/code/Magento/Ui/Component/Form/Element/Radio.php
@@ -12,6 +12,7 @@ class Radio extends AbstractFormElement
 {
     /**
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getChecked()
     {
diff --git a/app/code/Magento/Ui/Component/Form/Element/Select.php b/app/code/Magento/Ui/Component/Form/Element/Select.php
index 6432e055a515e60d1f6f07df246f898d058d2a8d..59a366d3e4b2aac3a270c2e41cefa9e2e4e1e1f1 100644
--- a/app/code/Magento/Ui/Component/Form/Element/Select.php
+++ b/app/code/Magento/Ui/Component/Form/Element/Select.php
@@ -15,6 +15,7 @@ class Select extends AbstractFormElement
      *
      * @param string $optionValue
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsSelected($optionValue)
     {
diff --git a/app/code/Magento/Ui/Component/Form/Fieldset.php b/app/code/Magento/Ui/Component/Form/Fieldset.php
index d1372885f12efe38610114f84311fcb3548904b6..03fd8f62d6e847ba154c2390de4cde80732dcca0 100644
--- a/app/code/Magento/Ui/Component/Form/Fieldset.php
+++ b/app/code/Magento/Ui/Component/Form/Fieldset.php
@@ -29,6 +29,7 @@ class Fieldset extends AbstractView
 
     /**
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsCollapsible()
     {
diff --git a/app/code/Magento/Ui/Component/Layout/AbstractStructure.php b/app/code/Magento/Ui/Component/Layout/AbstractStructure.php
index 5d71edf9bba6f30d212e0145499a811bdda42ae7..8fdd8616b7c8b2b22eb3b2b390e06d3d534ed9b8 100644
--- a/app/code/Magento/Ui/Component/Layout/AbstractStructure.php
+++ b/app/code/Magento/Ui/Component/Layout/AbstractStructure.php
@@ -20,6 +20,7 @@ use Magento\Ui\DataProvider\Metadata;
 
 /**
  * Class AbstractStructure
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class AbstractStructure extends AbstractView
 {
@@ -89,6 +90,7 @@ class AbstractStructure extends AbstractView
 
     /**
      * @inheritdoc
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function prepare()
     {
@@ -204,6 +206,7 @@ class AbstractStructure extends AbstractView
     /**
      * @param array $dataSourceConfig
      * @return void
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function processDataSource(array $dataSourceConfig)
     {
@@ -442,6 +445,7 @@ class AbstractStructure extends AbstractView
      * @param string $dataScope
      * @param array $element
      * @return string
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function addElementToCollection(array & $collection, $elementName, $dataScope, array $element)
     {
@@ -540,6 +544,7 @@ class AbstractStructure extends AbstractView
      * @param array $one
      * @param array $two
      * @return int
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function sortChildren(array $one, array $two)
     {
diff --git a/app/code/Magento/Ui/Component/Listing.php b/app/code/Magento/Ui/Component/Listing.php
index cbef1135d420ccec16ad65d44f7bc1fdcbe0aea3..efd05db22a826931acf8edfae37ce4f25c6cb533 100644
--- a/app/code/Magento/Ui/Component/Listing.php
+++ b/app/code/Magento/Ui/Component/Listing.php
@@ -18,6 +18,7 @@ use Magento\Ui\DataProvider\Manager;
 
 /**
  * Class Listing
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Listing extends AbstractView
 {
@@ -59,6 +60,7 @@ class Listing extends AbstractView
      * @param ActionPool $actionPool
      * @param RowPool $dataProviderRowPool
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         TemplateContext $context,
diff --git a/app/code/Magento/Ui/Controller/Adminhtml/Form/Fieldset.php b/app/code/Magento/Ui/Controller/Adminhtml/Form/Fieldset.php
index fc90f0840bdd762f78520955b9494a004133a5fa..9c556c7191cdf6d854d146abea66c7c9586e7126 100644
--- a/app/code/Magento/Ui/Controller/Adminhtml/Form/Fieldset.php
+++ b/app/code/Magento/Ui/Controller/Adminhtml/Form/Fieldset.php
@@ -4,6 +4,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Ui\Controller\Adminhtml\Form;
 
 /**
diff --git a/app/code/Magento/Ui/DataProvider/Config/Converter.php b/app/code/Magento/Ui/DataProvider/Config/Converter.php
index 9de11534752a69d14fa7d845bcde730d8f615a09..6402821d585af92a6283787813f6e74fbdfcc860 100644
--- a/app/code/Magento/Ui/DataProvider/Config/Converter.php
+++ b/app/code/Magento/Ui/DataProvider/Config/Converter.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Ui\DataProvider\Config;
 
 use Magento\Framework\Config\ConverterInterface;
@@ -48,6 +50,7 @@ class Converter implements ConverterInterface
      *
      * @param \DOMNode $source
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function toArray(\DOMNode $source)
     {
@@ -100,6 +103,8 @@ class Converter implements ConverterInterface
      *
      * @param \DOMDocument $source
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function convert($source)
     {
diff --git a/app/code/Magento/Ui/DataProvider/Config/FileResolver.php b/app/code/Magento/Ui/DataProvider/Config/FileResolver.php
index fd643d2cac32da1c919ee78145e40c3fddeb8fe9..fbd093b8c1acd0b47a2811897796da918a3ff14b 100644
--- a/app/code/Magento/Ui/DataProvider/Config/FileResolver.php
+++ b/app/code/Magento/Ui/DataProvider/Config/FileResolver.php
@@ -46,7 +46,7 @@ class FileResolver implements \Magento\Framework\Config\FileResolverInterface
     {
         $iterator = $this->iteratorFactory->create(
             $this->directoryRead,
-            $this->directoryRead->search('/*/*/etc/data_source/*')
+            $this->directoryRead->search('/*/*/etc/data_source/' . $filename)
         );
         return $iterator;
     }
diff --git a/app/code/Magento/Ui/DataProvider/Manager.php b/app/code/Magento/Ui/DataProvider/Manager.php
index acc60ea7bf9e5a702fd11b24dcc31204f1838068..c2f2379ff77ba8ded751261fe6754a1c1241067c 100644
--- a/app/code/Magento/Ui/DataProvider/Manager.php
+++ b/app/code/Magento/Ui/DataProvider/Manager.php
@@ -96,6 +96,7 @@ class Manager
      * @param string $dataSource
      * @param array $filters
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function getData($dataSource, array $filters = [])
     {
diff --git a/app/code/Magento/Ui/DataProvider/Metadata.php b/app/code/Magento/Ui/DataProvider/Metadata.php
index 949fd14d7753fedce1ce20d6a3223725059d9f0e..3606699e59b90707cbec8dcdc2a92cd16126f1f1 100644
--- a/app/code/Magento/Ui/DataProvider/Metadata.php
+++ b/app/code/Magento/Ui/DataProvider/Metadata.php
@@ -247,6 +247,9 @@ class Metadata implements \Iterator, \ArrayAccess
      * @param string $name
      * @param array $field
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     protected function prepare($name, array & $field)
     {
diff --git a/app/code/Magento/Ui/composer.json b/app/code/Magento/Ui/composer.json
index efe3403132d45615e768223644382dceed6411e9..b70905d24ced0402f6b30dfc9eb81996fb506e5a 100644
--- a/app/code/Magento/Ui/composer.json
+++ b/app/code/Magento/Ui/composer.json
@@ -3,14 +3,14 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
-        "magento/module-eav": "0.42.0-beta3",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
+        "magento/module-eav": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/Ui/view/base/templates/control/button/default.phtml b/app/code/Magento/Ui/view/base/templates/control/button/default.phtml
index c5cb6598445dade2ade795ccde7bb879fde8aef3..98e1435a334dddd8e78471dbc05eb97bbaa70473 100644
--- a/app/code/Magento/Ui/view/base/templates/control/button/default.phtml
+++ b/app/code/Magento/Ui/view/base/templates/control/button/default.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /**
diff --git a/app/code/Magento/Ui/view/base/templates/filter_pool/active.phtml b/app/code/Magento/Ui/view/base/templates/filter_pool/active.phtml
index 34599608b9b4130991d784e6b77a79a70e4c8361..021ede69ad571d74c2d80cbfbf981be0b0965287 100644
--- a/app/code/Magento/Ui/view/base/templates/filter_pool/active.phtml
+++ b/app/code/Magento/Ui/view/base/templates/filter_pool/active.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /**
  * @var \Magento\Ui\Component\Filter $this
  */
diff --git a/app/code/Magento/Ui/view/base/templates/form/fieldset/default.phtml b/app/code/Magento/Ui/view/base/templates/form/fieldset/default.phtml
index 35792fb71fe68f2720fbf99e9ffcc2f378f4bb51..95a5eab05ec51076356c92a6caf1eb0b9bbd7e6f 100644
--- a/app/code/Magento/Ui/view/base/templates/form/fieldset/default.phtml
+++ b/app/code/Magento/Ui/view/base/templates/form/fieldset/default.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /**
  * @var \Magento\Ui\Component\Form\Fieldset $this
  */
diff --git a/app/code/Magento/Ui/view/base/templates/layout/group/default.phtml b/app/code/Magento/Ui/view/base/templates/layout/group/default.phtml
index cf31ce434773e930563352000ef53ca63ad5cbe9..f1a8897d5849792a960cb56d8e8106ec3041c9a3 100644
--- a/app/code/Magento/Ui/view/base/templates/layout/group/default.phtml
+++ b/app/code/Magento/Ui/view/base/templates/layout/group/default.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /**
  * @var \Magento\Ui\Component\Layout\Group $this
  */
diff --git a/app/code/Magento/Ups/Helper/Config.php b/app/code/Magento/Ups/Helper/Config.php
index 465678c76af2d94aa7d0080fb5e4812505d3ebe2..2fd5bf7aa04624729e1cb819ac170188418bab76 100644
--- a/app/code/Magento/Ups/Helper/Config.php
+++ b/app/code/Magento/Ups/Helper/Config.php
@@ -37,6 +37,7 @@ class Config
      * Get configuration data of carrier
      *
      * @return array
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function getCodes()
     {
diff --git a/app/code/Magento/Ups/Model/Carrier.php b/app/code/Magento/Ups/Model/Carrier.php
index e44182baa51f040070402ea9cac73265d0305bee..e88b68ea433cafc08dba11c7c4dbec7547c6aaf8 100644
--- a/app/code/Magento/Ups/Model/Carrier.php
+++ b/app/code/Magento/Ups/Model/Carrier.php
@@ -3,9 +3,12 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Ups\Model;
 
-use Magento\Sales\Model\Quote\Address\RateRequest;
+use Magento\Quote\Model\Quote\Address\RateRequest;
 use Magento\Shipping\Model\Carrier\AbstractCarrierOnline;
 use Magento\Shipping\Model\Carrier\CarrierInterface;
 use Magento\Shipping\Model\Rate\Result;
@@ -14,6 +17,8 @@ use Magento\Ups\Helper\Config;
 
 /**
  * UPS shipping implementation
+ * @SuppressWarnings(PHPMD.ExcessiveClassComplexity)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Carrier extends AbstractCarrierOnline implements CarrierInterface
 {
@@ -117,11 +122,11 @@ class Carrier extends AbstractCarrierOnline implements CarrierInterface
 
     /**
      * @param \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig
-     * @param \Magento\Sales\Model\Quote\Address\RateResult\ErrorFactory $rateErrorFactory
+     * @param \Magento\Quote\Model\Quote\Address\RateResult\ErrorFactory $rateErrorFactory
      * @param \Psr\Log\LoggerInterface $logger
      * @param \Magento\Shipping\Model\Simplexml\ElementFactory $xmlElFactory
      * @param \Magento\Shipping\Model\Rate\ResultFactory $rateFactory
-     * @param \Magento\Sales\Model\Quote\Address\RateResult\MethodFactory $rateMethodFactory
+     * @param \Magento\Quote\Model\Quote\Address\RateResult\MethodFactory $rateMethodFactory
      * @param \Magento\Shipping\Model\Tracking\ResultFactory $trackFactory
      * @param \Magento\Shipping\Model\Tracking\Result\ErrorFactory $trackErrorFactory
      * @param \Magento\Shipping\Model\Tracking\Result\StatusFactory $trackStatusFactory
@@ -138,11 +143,11 @@ class Carrier extends AbstractCarrierOnline implements CarrierInterface
      */
     public function __construct(
         \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig,
-        \Magento\Sales\Model\Quote\Address\RateResult\ErrorFactory $rateErrorFactory,
+        \Magento\Quote\Model\Quote\Address\RateResult\ErrorFactory $rateErrorFactory,
         \Psr\Log\LoggerInterface $logger,
         \Magento\Shipping\Model\Simplexml\ElementFactory $xmlElFactory,
         \Magento\Shipping\Model\Rate\ResultFactory $rateFactory,
-        \Magento\Sales\Model\Quote\Address\RateResult\MethodFactory $rateMethodFactory,
+        \Magento\Quote\Model\Quote\Address\RateResult\MethodFactory $rateMethodFactory,
         \Magento\Shipping\Model\Tracking\ResultFactory $trackFactory,
         \Magento\Shipping\Model\Tracking\Result\ErrorFactory $trackErrorFactory,
         \Magento\Shipping\Model\Tracking\Result\StatusFactory $trackStatusFactory,
@@ -201,6 +206,9 @@ class Carrier extends AbstractCarrierOnline implements CarrierInterface
      *
      * @param RateRequest $request
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public function setRequest(RateRequest $request)
     {
@@ -492,6 +500,7 @@ class Carrier extends AbstractCarrierOnline implements CarrierInterface
      *
      * @param string $response
      * @return Result
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _parseCgiResponse($response)
     {
@@ -561,6 +570,9 @@ class Carrier extends AbstractCarrierOnline implements CarrierInterface
      * Get xml rates
      *
      * @return Result
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _getXmlQuotes()
     {
@@ -748,6 +760,7 @@ XMLRequest;
      *
      * @param mixed $xmlResponse
      * @return Result
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _parseXmlResponse($xmlResponse)
     {
@@ -973,6 +986,8 @@ XMLAuth;
      * @param string $trackingValue
      * @param string $xmlResponse
      * @return null
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _parseXmlTrackingResponse($trackingValue, $xmlResponse)
     {
@@ -1134,6 +1149,9 @@ XMLAuth;
      *
      * @param \Magento\Framework\Object $request
      * @return string
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _formShipmentRequest(\Magento\Framework\Object $request)
     {
@@ -1506,6 +1524,7 @@ XMLAuth;
      *
      * @param \Magento\Framework\Object|null $params
      * @return array|bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function getContainerTypes(\Magento\Framework\Object $params = null)
     {
diff --git a/app/code/Magento/Ups/Model/Config/Source/OriginShipment.php b/app/code/Magento/Ups/Model/Config/Source/OriginShipment.php
index 40fe4c853b4ecffab081c9f9b2852660b495ddbe..baf8df8773611cd7dddfcbe42b90c34e34c45dc9 100644
--- a/app/code/Magento/Ups/Model/Config/Source/OriginShipment.php
+++ b/app/code/Magento/Ups/Model/Config/Source/OriginShipment.php
@@ -19,6 +19,7 @@ class OriginShipment extends \Magento\Ups\Model\Config\Source\Generic
 
     /**
      * {@inheritdoc}
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function toOptionArray()
     {
diff --git a/app/code/Magento/Ups/Model/Config/Source/Unitofmeasure.php b/app/code/Magento/Ups/Model/Config/Source/Unitofmeasure.php
index bb297694431a66e8c07aaf61bc8a497104738de3..7a6f75395a9c6a432860697eb47ba3d19e3416aa 100644
--- a/app/code/Magento/Ups/Model/Config/Source/Unitofmeasure.php
+++ b/app/code/Magento/Ups/Model/Config/Source/Unitofmeasure.php
@@ -19,6 +19,7 @@ class Unitofmeasure extends \Magento\Ups\Model\Config\Source\Generic
 
     /**
      * {@inheritdoc}
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function toOptionArray()
     {
diff --git a/app/code/Magento/Ups/composer.json b/app/code/Magento/Ups/composer.json
index 42d5f994aeb4d6f4a7665e2b81d0c3621f312a10..61a2a252971274ea7795b4322b2dd8e418232d39 100644
--- a/app/code/Magento/Ups/composer.json
+++ b/app/code/Magento/Ups/composer.json
@@ -3,18 +3,19 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-core": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/module-sales": "0.42.0-beta3",
-        "magento/module-shipping": "0.42.0-beta3",
-        "magento/module-directory": "0.42.0-beta3",
-        "magento/module-catalog-inventory": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-core": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/module-sales": "0.42.0-beta4",
+        "magento/module-shipping": "0.42.0-beta4",
+        "magento/module-directory": "0.42.0-beta4",
+        "magento/module-catalog-inventory": "0.42.0-beta4",
+        "magento/module-quote": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/Ups/view/adminhtml/templates/system/shipping/carrier_config.phtml b/app/code/Magento/Ups/view/adminhtml/templates/system/shipping/carrier_config.phtml
index 4cb25022cdd875316496657634c02adb99a87eca..07424f23d1dd1060d4aef81c19421d1d200c85cf 100644
--- a/app/code/Magento/Ups/view/adminhtml/templates/system/shipping/carrier_config.phtml
+++ b/app/code/Magento/Ups/view/adminhtml/templates/system/shipping/carrier_config.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var $upsModel \Magento\Ups\Helper\Config */
 /** @var $this \Magento\Ups\Block\Backend\System\CarrierConfig */
 $upsCarrierConfig = $this->getCarrierConfig();
@@ -33,7 +35,7 @@ if (!$storeCode && $websiteCode) {
     $storedUpsType        = $this->getConfig('carriers/ups/type');
 }
 ?>
-<script type="text/javascript">
+<script>
 require(["prototype"], function(){
 
 //<![CDATA[
diff --git a/app/code/Magento/UrlRewrite/Block/Catalog/Product/Grid.php b/app/code/Magento/UrlRewrite/Block/Catalog/Product/Grid.php
index b3a01003252a2ccea5ac8943ebf15d706a105dd4..f300660f42f601a82e76d082777c03ead01a83e1 100644
--- a/app/code/Magento/UrlRewrite/Block/Catalog/Product/Grid.php
+++ b/app/code/Magento/UrlRewrite/Block/Catalog/Product/Grid.php
@@ -9,6 +9,7 @@ namespace Magento\UrlRewrite\Block\Catalog\Product;
  * Products grid for URL rewrites editing
  *
  * @author     Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.DepthOfInheritance)
  */
 class Grid extends \Magento\Catalog\Block\Adminhtml\Product\Grid
 {
diff --git a/app/code/Magento/UrlRewrite/Block/Cms/Page/Grid.php b/app/code/Magento/UrlRewrite/Block/Cms/Page/Grid.php
index e755954ced4b4cd0368dd7cbf07ac8416c4ad23a..04b9b9cb51085a9703b332f9bebb907f9bddd44e 100644
--- a/app/code/Magento/UrlRewrite/Block/Cms/Page/Grid.php
+++ b/app/code/Magento/UrlRewrite/Block/Cms/Page/Grid.php
@@ -9,6 +9,7 @@ namespace Magento\UrlRewrite\Block\Cms\Page;
  * CMS pages grid for URL rewrites
  *
  * @author     Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.DepthOfInheritance)
  */
 class Grid extends \Magento\Cms\Block\Adminhtml\Page\Grid
 {
diff --git a/app/code/Magento/UrlRewrite/composer.json b/app/code/Magento/UrlRewrite/composer.json
index a108f1b23a17f3ff500a3a4633f397ee6f64aca6..ae89d8f05a90d61270060ec98da0106b0c916390 100644
--- a/app/code/Magento/UrlRewrite/composer.json
+++ b/app/code/Magento/UrlRewrite/composer.json
@@ -3,18 +3,18 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-catalog": "0.42.0-beta3",
-        "magento/module-core": "0.42.0-beta3",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/module-catalog-url-rewrite": "0.42.0-beta3",
-        "magento/module-cms": "0.42.0-beta3",
-        "magento/module-cms-url-rewrite": "0.42.0-beta3",
+        "magento/module-catalog": "0.42.0-beta4",
+        "magento/module-core": "0.42.0-beta4",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/module-catalog-url-rewrite": "0.42.0-beta4",
+        "magento/module-cms": "0.42.0-beta4",
+        "magento/module-cms-url-rewrite": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/UrlRewrite/view/adminhtml/templates/categories.phtml b/app/code/Magento/UrlRewrite/view/adminhtml/templates/categories.phtml
index 526c4d75b3035728efd2c13b83233076775cb513..edb2043180e3080cb6fa12c1f63251a023196704 100644
--- a/app/code/Magento/UrlRewrite/view/adminhtml/templates/categories.phtml
+++ b/app/code/Magento/UrlRewrite/view/adminhtml/templates/categories.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\UrlRewrite\Block\Catalog\Category\Tree */
 ?>
 <fieldset class="fieldset" data-ui-id="category-selector">
diff --git a/app/code/Magento/UrlRewrite/view/adminhtml/templates/edit.phtml b/app/code/Magento/UrlRewrite/view/adminhtml/templates/edit.phtml
index 7d4d27b56410c85c0f4f2cb90acf2235f836ad2f..dfa66b948b3979d63db0cd0c1b192e065065da7e 100644
--- a/app/code/Magento/UrlRewrite/view/adminhtml/templates/edit.phtml
+++ b/app/code/Magento/UrlRewrite/view/adminhtml/templates/edit.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /**
  * @var $this \Magento\UrlRewrite\Block\Edit
  */
@@ -10,7 +13,7 @@
 <?php echo $this->getChildHtml() ?>
 
 <?php if ($this->getChildBlock('form')): ?>
-<script type="text/javascript">
+<script>
 require([
     'jquery',
     'mage/backend/form',
diff --git a/app/code/Magento/UrlRewrite/view/adminhtml/templates/selector.phtml b/app/code/Magento/UrlRewrite/view/adminhtml/templates/selector.phtml
index dd7e123bd02c0a0be88c77de770da726049ae0ef..fa3c88c6333a5c1a009d1bf4dc8ab7045178be1b 100644
--- a/app/code/Magento/UrlRewrite/view/adminhtml/templates/selector.phtml
+++ b/app/code/Magento/UrlRewrite/view/adminhtml/templates/selector.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\UrlRewrite\Block\Selector */
 ?>
 <div class="form-inline">
diff --git a/app/code/Magento/User/Block/User/Edit/Tab/Main.php b/app/code/Magento/User/Block/User/Edit/Tab/Main.php
index d84ca166cff17c1b757205cdfb478383c023e0c7..5eec5e84e013e6eca7cda23a2ae95bc87d9c612e 100644
--- a/app/code/Magento/User/Block/User/Edit/Tab/Main.php
+++ b/app/code/Magento/User/Block/User/Edit/Tab/Main.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\User\Block\User\Edit\Tab;
 
 /**
diff --git a/app/code/Magento/User/Controller/Adminhtml/User/Save.php b/app/code/Magento/User/Controller/Adminhtml/User/Save.php
index e080bedeba812fad7781c4c7ba5587f76513166a..fcf6d4b54ea99a08df16479b516c89c713c59aa8 100644
--- a/app/code/Magento/User/Controller/Adminhtml/User/Save.php
+++ b/app/code/Magento/User/Controller/Adminhtml/User/Save.php
@@ -10,6 +10,8 @@ class Save extends \Magento\User\Controller\Adminhtml\User
 {
     /**
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function execute()
     {
diff --git a/app/code/Magento/User/Model/Resource/User.php b/app/code/Magento/User/Model/Resource/User.php
index 1012a360aa651444e07c5d824605bdca73586442..a25b0836d6973fa1935a3cb18649be62e507104e 100644
--- a/app/code/Magento/User/Model/Resource/User.php
+++ b/app/code/Magento/User/Model/Resource/User.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\User\Model\Resource;
 
 use Magento\Authorization\Model\Acl\Role\Group as RoleGroup;
@@ -12,6 +15,7 @@ use Magento\User\Model\User as ModelUser;
 
 /**
  * ACL user resource
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class User extends \Magento\Framework\Model\Resource\Db\AbstractDb
 {
diff --git a/app/code/Magento/User/composer.json b/app/code/Magento/User/composer.json
index 4bfac9339fc566fb6884efb789d207b8a46a91d3..9f4842f6d67f0cd205619aa4cf9a4445279f74d0 100644
--- a/app/code/Magento/User/composer.json
+++ b/app/code/Magento/User/composer.json
@@ -3,18 +3,18 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-authorization": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/module-core": "0.42.0-beta3",
-        "magento/module-integration": "0.42.0-beta3",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-theme": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
-        "magento/module-require-js": "0.42.0-beta3",
+        "magento/module-authorization": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/module-core": "0.42.0-beta4",
+        "magento/module-integration": "0.42.0-beta4",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-theme": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
+        "magento/module-require-js": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/User/view/adminhtml/templates/admin/forgotpassword.phtml b/app/code/Magento/User/view/adminhtml/templates/admin/forgotpassword.phtml
index af9a47675af7dbdd9ef7554a90f6e3fbcd36d134..5657758c199dcf23d740cc4ce27ca908822cd5f0 100644
--- a/app/code/Magento/User/view/adminhtml/templates/admin/forgotpassword.phtml
+++ b/app/code/Magento/User/view/adminhtml/templates/admin/forgotpassword.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <!doctype html>
 <html lang="en">
@@ -63,7 +66,7 @@
                         </div>
                     </fieldset>
                 </form>
-                <script type="text/javascript">
+                <script>
                     require([
                         "jquery",
                         "mage/backend/form",
diff --git a/app/code/Magento/User/view/adminhtml/templates/admin/forgotpassword_url.phtml b/app/code/Magento/User/view/adminhtml/templates/admin/forgotpassword_url.phtml
index 4fd332836f25ce3544cbd5f5d14b5ecd597a65fd..a7251b5b6538ab6f082af98a9838b590b6e84859 100644
--- a/app/code/Magento/User/view/adminhtml/templates/admin/forgotpassword_url.phtml
+++ b/app/code/Magento/User/view/adminhtml/templates/admin/forgotpassword_url.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <div class="links">
 <a class="action-forgotpassword" href="<?php echo $this->helper('Magento\Backend\Helper\Data')->getUrl('adminhtml/auth/forgotpassword', ['_nosecret' => true])?>"><?php echo __('Forgot your password?') ?></a>
diff --git a/app/code/Magento/User/view/adminhtml/templates/admin/resetforgottenpassword.phtml b/app/code/Magento/User/view/adminhtml/templates/admin/resetforgottenpassword.phtml
index 58e1be91bcd833225d4993e321cb151fda2a1673..d2c97581ce3394e6c5d579b43d1701433aeab4eb 100644
--- a/app/code/Magento/User/view/adminhtml/templates/admin/resetforgottenpassword.phtml
+++ b/app/code/Magento/User/view/adminhtml/templates/admin/resetforgottenpassword.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
 <html lang="en">
@@ -64,7 +67,7 @@
                         </div>
                     </fieldset>
                 </form>
-                <script type="text/javascript">
+                <script>
 require([
     "jquery",
     "mage/backend/form",
diff --git a/app/code/Magento/User/view/adminhtml/templates/role/edit.phtml b/app/code/Magento/User/view/adminhtml/templates/role/edit.phtml
index 7c8f082bad99d1aefe0517990249914863fb0dad..854c85003794a3c5c75414da0edea03df5b75a34 100644
--- a/app/code/Magento/User/view/adminhtml/templates/role/edit.phtml
+++ b/app/code/Magento/User/view/adminhtml/templates/role/edit.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php
diff --git a/app/code/Magento/User/view/adminhtml/templates/role/info.phtml b/app/code/Magento/User/view/adminhtml/templates/role/info.phtml
index ce1d381ac9bcf0cc14f00520d2ebcc56e0301026..a9d2d267f22f2a07fc0e10f0508f43fbb539b2bb 100644
--- a/app/code/Magento/User/view/adminhtml/templates/role/info.phtml
+++ b/app/code/Magento/User/view/adminhtml/templates/role/info.phtml
@@ -7,7 +7,7 @@
 <form action="<?php echo $this->getUrl('*/*/saverole') ?>" method="post" id="role-edit-form">
     <?php echo $this->getBlockHtml('formkey')?>
 </form>
-<script type="text/javascript">
+<script>
 require([
 	"jquery",
 	"mage/mage"
diff --git a/app/code/Magento/User/view/adminhtml/templates/role/users_grid_js.phtml b/app/code/Magento/User/view/adminhtml/templates/role/users_grid_js.phtml
index 8a684c152e28d2c3d40c6766317b2053b43a07f5..60026b71834c242c8c4e5b4d1cbb0dc90f0b2143 100644
--- a/app/code/Magento/User/view/adminhtml/templates/role/users_grid_js.phtml
+++ b/app/code/Magento/User/view/adminhtml/templates/role/users_grid_js.phtml
@@ -3,8 +3,11 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
-<script type="text/javascript">
+<script>
 require([
     'jquery',
     'mage/adminhtml/grid'
diff --git a/app/code/Magento/User/view/adminhtml/templates/user/roles_grid_js.phtml b/app/code/Magento/User/view/adminhtml/templates/user/roles_grid_js.phtml
index 485bd527ab5b2294c81967755c9177d08a7728d4..3dc25bde09e9ada1563698d1dfae9386c9b2bdf7 100644
--- a/app/code/Magento/User/view/adminhtml/templates/user/roles_grid_js.phtml
+++ b/app/code/Magento/User/view/adminhtml/templates/user/roles_grid_js.phtml
@@ -3,8 +3,11 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
-<script type="text/javascript">
+<script>
 require([
     "mage/adminhtml/grid"
 ], function(){
diff --git a/app/code/Magento/Usps/Block/Rma/Adminhtml/Rma/Edit/Tab/General/Shipping/Packaging/Plugin.php b/app/code/Magento/Usps/Block/Rma/Adminhtml/Rma/Edit/Tab/General/Shipping/Packaging/Plugin.php
index 24797911abd7287062c2a173e39a377a0ae3c35b..cc5bca51fa49bcf8247adb39aaba56c694bd877f 100644
--- a/app/code/Magento/Usps/Block/Rma/Adminhtml/Rma/Edit/Tab/General/Shipping/Packaging/Plugin.php
+++ b/app/code/Magento/Usps/Block/Rma/Adminhtml/Rma/Edit/Tab/General/Shipping/Packaging/Plugin.php
@@ -46,6 +46,7 @@ class Plugin
      * @param \Magento\Framework\Object $subject $subject
      * @param bool $result
      * @return bool
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function afterIsGirthAllowed(\Magento\Framework\Object $subject, $result)
     {
@@ -58,6 +59,7 @@ class Plugin
      * @param \Magento\Framework\Object $subject
      * @param \Closure $proceed
      * @return array
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function aroundCheckSizeAndGirthParameter(\Magento\Framework\Object $subject, \Closure $proceed)
     {
diff --git a/app/code/Magento/Usps/Model/Carrier.php b/app/code/Magento/Usps/Model/Carrier.php
index 83cbe7b124d91079ad0f23a571383ae4f0763d43..efccb26521a6358956bfc189fe02a4039dc5686a 100644
--- a/app/code/Magento/Usps/Model/Carrier.php
+++ b/app/code/Magento/Usps/Model/Carrier.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Usps\Model;
 
 use Magento\Shipping\Helper\Carrier as CarrierHelper;
@@ -11,6 +14,8 @@ use Magento\Shipping\Model\Rate\Result;
 
 /**
  * USPS shipping
+ * @SuppressWarnings(PHPMD.ExcessiveClassComplexity)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Carrier extends AbstractCarrierOnline implements \Magento\Shipping\Model\Carrier\CarrierInterface
 {
@@ -63,7 +68,7 @@ class Carrier extends AbstractCarrierOnline implements \Magento\Shipping\Model\C
     /**
      * Rate request data
      *
-     * @var \Magento\Sales\Model\Quote\Address\RateRequest|null
+     * @var \Magento\Quote\Model\Quote\Address\RateRequest|null
      */
     protected $_request = null;
 
@@ -107,11 +112,11 @@ class Carrier extends AbstractCarrierOnline implements \Magento\Shipping\Model\C
 
     /**
      * @param \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig
-     * @param \Magento\Sales\Model\Quote\Address\RateResult\ErrorFactory $rateErrorFactory
+     * @param \Magento\Quote\Model\Quote\Address\RateResult\ErrorFactory $rateErrorFactory
      * @param \Psr\Log\LoggerInterface $logger
      * @param \Magento\Shipping\Model\Simplexml\ElementFactory $xmlElFactory
      * @param \Magento\Shipping\Model\Rate\ResultFactory $rateFactory
-     * @param \Magento\Sales\Model\Quote\Address\RateResult\MethodFactory $rateMethodFactory
+     * @param \Magento\Quote\Model\Quote\Address\RateResult\MethodFactory $rateMethodFactory
      * @param \Magento\Shipping\Model\Tracking\ResultFactory $trackFactory
      * @param \Magento\Shipping\Model\Tracking\Result\ErrorFactory $trackErrorFactory
      * @param \Magento\Shipping\Model\Tracking\Result\StatusFactory $trackStatusFactory
@@ -129,11 +134,11 @@ class Carrier extends AbstractCarrierOnline implements \Magento\Shipping\Model\C
      */
     public function __construct(
         \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig,
-        \Magento\Sales\Model\Quote\Address\RateResult\ErrorFactory $rateErrorFactory,
+        \Magento\Quote\Model\Quote\Address\RateResult\ErrorFactory $rateErrorFactory,
         \Psr\Log\LoggerInterface $logger,
         \Magento\Shipping\Model\Simplexml\ElementFactory $xmlElFactory,
         \Magento\Shipping\Model\Rate\ResultFactory $rateFactory,
-        \Magento\Sales\Model\Quote\Address\RateResult\MethodFactory $rateMethodFactory,
+        \Magento\Quote\Model\Quote\Address\RateResult\MethodFactory $rateMethodFactory,
         \Magento\Shipping\Model\Tracking\ResultFactory $trackFactory,
         \Magento\Shipping\Model\Tracking\Result\ErrorFactory $trackErrorFactory,
         \Magento\Shipping\Model\Tracking\Result\StatusFactory $trackStatusFactory,
@@ -172,10 +177,10 @@ class Carrier extends AbstractCarrierOnline implements \Magento\Shipping\Model\C
     /**
      * Collect and get rates
      *
-     * @param \Magento\Sales\Model\Quote\Address\RateRequest $request
+     * @param \Magento\Quote\Model\Quote\Address\RateRequest $request
      * @return Result|bool|null
      */
-    public function collectRates(\Magento\Sales\Model\Quote\Address\RateRequest $request)
+    public function collectRates(\Magento\Quote\Model\Quote\Address\RateRequest $request)
     {
         if (!$this->getConfigFlag($this->_activeFlag)) {
             return false;
@@ -193,10 +198,13 @@ class Carrier extends AbstractCarrierOnline implements \Magento\Shipping\Model\C
     /**
      * Prepare and set request to this instance
      *
-     * @param \Magento\Sales\Model\Quote\Address\RateRequest $request
+     * @param \Magento\Quote\Model\Quote\Address\RateRequest $request
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
-    public function setRequest(\Magento\Sales\Model\Quote\Address\RateRequest $request)
+    public function setRequest(\Magento\Quote\Model\Quote\Address\RateRequest $request)
     {
         $this->_request = $request;
 
@@ -362,6 +370,9 @@ class Carrier extends AbstractCarrierOnline implements \Magento\Shipping\Model\C
      *
      * @link http://www.usps.com/webtools/htm/Rate-Calculators-v2-3.htm
      * @return Result
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _getXmlQuotes()
     {
@@ -484,6 +495,8 @@ class Carrier extends AbstractCarrierOnline implements \Magento\Shipping\Model\C
      * @param string $response
      * @return Result
      * @link http://www.usps.com/webtools/htm/Rate-Calculators-v2-3.htm
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _parseXmlResponse($response)
     {
@@ -584,6 +597,7 @@ class Carrier extends AbstractCarrierOnline implements \Magento\Shipping\Model\C
      * @param string $type
      * @param string $code
      * @return array|false
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public function getCode($type, $code = '')
     {
@@ -1019,6 +1033,8 @@ class Carrier extends AbstractCarrierOnline implements \Magento\Shipping\Model\C
      * @param string $trackingvalue
      * @param string $response
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     protected function _parseXmlTrackingResponse($trackingvalue, $response)
     {
@@ -1122,6 +1138,7 @@ class Carrier extends AbstractCarrierOnline implements \Magento\Shipping\Model\C
      *
      * @param string $countryId
      * @return string|false
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _getCountryName($countryId)
     {
@@ -1450,6 +1467,7 @@ class Carrier extends AbstractCarrierOnline implements \Magento\Shipping\Model\C
      * @param string $serviceType
      * @return string
      * @throws \Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _formUsSignatureConfirmationShipmentRequest(\Magento\Framework\Object $request, $serviceType)
     {
@@ -1549,6 +1567,9 @@ class Carrier extends AbstractCarrierOnline implements \Magento\Shipping\Model\C
      *
      * @param \Magento\Framework\Object $request
      * @return string
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _formIntlShipmentRequest(\Magento\Framework\Object $request)
     {
@@ -1800,6 +1821,7 @@ class Carrier extends AbstractCarrierOnline implements \Magento\Shipping\Model\C
      *
      * @param \Magento\Framework\Object $request
      * @return \Magento\Framework\Object
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _doShipmentRequest(\Magento\Framework\Object $request)
     {
diff --git a/app/code/Magento/Usps/Model/Source/Method.php b/app/code/Magento/Usps/Model/Source/Method.php
index f161f0a33b7d63d79f03fac76742ec8f340d6337..ad2edd94fc768efc35cdd7f7ba1d67fb32e86ea7 100644
--- a/app/code/Magento/Usps/Model/Source/Method.php
+++ b/app/code/Magento/Usps/Model/Source/Method.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Usps\Model\Source;
 
 /**
diff --git a/app/code/Magento/Usps/composer.json b/app/code/Magento/Usps/composer.json
index b7c72cec3da72f843ee8a8ee9baa3c9d2a8a9587..22293faecc5144f527a98817794ab7e6ab85a539 100644
--- a/app/code/Magento/Usps/composer.json
+++ b/app/code/Magento/Usps/composer.json
@@ -3,19 +3,20 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-shipping": "0.42.0-beta3",
-        "magento/module-directory": "0.42.0-beta3",
-        "magento/module-core": "0.42.0-beta3",
-        "magento/module-catalog": "0.42.0-beta3",
-        "magento/module-sales": "0.42.0-beta3",
-        "magento/module-catalog-inventory": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-shipping": "0.42.0-beta4",
+        "magento/module-directory": "0.42.0-beta4",
+        "magento/module-core": "0.42.0-beta4",
+        "magento/module-catalog": "0.42.0-beta4",
+        "magento/module-sales": "0.42.0-beta4",
+        "magento/module-catalog-inventory": "0.42.0-beta4",
+        "magento/module-quote": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "lib-libxml": "*",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/Webapi/composer.json b/app/code/Magento/Webapi/composer.json
index 755ecba2045258196b7f9948a84fab0f7acf269b..8e6634134a19419b7d2cabe9007de4df15aeaf02 100644
--- a/app/code/Magento/Webapi/composer.json
+++ b/app/code/Magento/Webapi/composer.json
@@ -3,19 +3,19 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-authorization": "0.42.0-beta3",
-        "magento/module-core": "0.42.0-beta3",
-        "magento/module-integration": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-authorization": "0.42.0-beta4",
+        "magento/module-core": "0.42.0-beta4",
+        "magento/module-integration": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "suggest": {
-        "magento/module-user": "0.42.0-beta3"
+        "magento/module-user": "0.42.0-beta4"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/Webapi/view/adminhtml/templates/integration/activate/permissions/tab/webapi.phtml b/app/code/Magento/Webapi/view/adminhtml/templates/integration/activate/permissions/tab/webapi.phtml
index 46e87734172ccb7a39a6a4233a467d65aae3ce0f..4513220c07caee8f56dc1abf1f442413e5b3d3ae 100644
--- a/app/code/Magento/Webapi/view/adminhtml/templates/integration/activate/permissions/tab/webapi.phtml
+++ b/app/code/Magento/Webapi/view/adminhtml/templates/integration/activate/permissions/tab/webapi.phtml
@@ -7,6 +7,9 @@
  *
  * @var \Magento\Webapi\Block\Adminhtml\Integration\Activate\Permissions\Tab\Webapi $this
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <fieldset class="fieldset form-inline entry-edit">
     <?php if ($this->isTreeEmpty()): ?>
@@ -20,7 +23,7 @@
     <?php endif ?>
 </fieldset>
 <?php if (!$this->isTreeEmpty()): ?>
-    <script type="text/javascript">
+    <script>
 require(["jquery", "Magento_User/js/roles-tree"], function($){
 
     $.widget('mage.rolesTree', $.mage.rolesTree, {
diff --git a/app/code/Magento/Webapi/view/adminhtml/templates/resourcetree.phtml b/app/code/Magento/Webapi/view/adminhtml/templates/resourcetree.phtml
index 71d9249d62d461d637123395b7502bddfc3c555c..006bfc06806f773eb5a86815f19e666252cc013d 100644
--- a/app/code/Magento/Webapi/view/adminhtml/templates/resourcetree.phtml
+++ b/app/code/Magento/Webapi/view/adminhtml/templates/resourcetree.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php
diff --git a/app/code/Magento/Weee/Block/Adminhtml/Items/Price/Renderer.php b/app/code/Magento/Weee/Block/Adminhtml/Items/Price/Renderer.php
index b200532f216fb0f403452ba5bd23d793a15fcd43..0a038a681d033c6b9326326d980d54fbf4b7f49f 100644
--- a/app/code/Magento/Weee/Block/Adminhtml/Items/Price/Renderer.php
+++ b/app/code/Magento/Weee/Block/Adminhtml/Items/Price/Renderer.php
@@ -8,7 +8,7 @@ namespace Magento\Weee\Block\Adminhtml\Items\Price;
 use Magento\Sales\Model\Order\Creditmemo\Item as CreditmemoItem;
 use Magento\Sales\Model\Order\Invoice\Item as InvoiceItem;
 use Magento\Sales\Model\Order\Item;
-use Magento\Sales\Model\Quote\Item\AbstractItem as QuoteItem;
+use Magento\Quote\Model\Quote\Item\AbstractItem as QuoteItem;
 use Magento\Weee\Block\Item\Price\Renderer as ItemPriceRenderer;
 
 /**
diff --git a/app/code/Magento/Weee/Block/Renderer/Weee/Tax.php b/app/code/Magento/Weee/Block/Renderer/Weee/Tax.php
index 5dc9086d1645d6cc16b365c6d9cb6cf1b14cb186..43995cb9ff49d59433fe178840eb0bcd9b3da5ac 100644
--- a/app/code/Magento/Weee/Block/Renderer/Weee/Tax.php
+++ b/app/code/Magento/Weee/Block/Renderer/Weee/Tax.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Weee\Block\Renderer\Weee;
 
 use Magento\Framework\Data\Form\Element\AbstractElement;
diff --git a/app/code/Magento/Weee/Helper/Data.php b/app/code/Magento/Weee/Helper/Data.php
index 0a47bbbf720d754139afe2eaabdf9564d69ffd8d..aa6ac7d19875fd67ac0243e09a2815835a37ca7d 100644
--- a/app/code/Magento/Weee/Helper/Data.php
+++ b/app/code/Magento/Weee/Helper/Data.php
@@ -210,6 +210,7 @@ class Data extends \Magento\Framework\App\Helper\AbstractHelper
      * @param string                         $zone
      * @param Store|int|string               $store
      * @return bool|int
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function typeOfDisplay(
         $compareTo = null,
@@ -282,12 +283,12 @@ class Data extends \Magento\Framework\App\Helper\AbstractHelper
     /**
      * Returns applied weee taxes
      *
-     * @param \Magento\Sales\Model\Quote\Item\AbstractItem $item
+     * @param \Magento\Quote\Model\Quote\Item\AbstractItem $item
      * @return array
      */
     public function getApplied($item)
     {
-        if ($item instanceof \Magento\Sales\Model\Quote\Item\AbstractItem) {
+        if ($item instanceof \Magento\Quote\Model\Quote\Item\AbstractItem) {
             if ($item->getHasChildren() && $item->isChildrenCalculated()) {
                 $result = [];
                 foreach ($item->getChildren() as $child) {
@@ -314,7 +315,7 @@ class Data extends \Magento\Framework\App\Helper\AbstractHelper
     /**
      * Sets applied weee taxes
      *
-     * @param \Magento\Sales\Model\Quote\Item\AbstractItem $item
+     * @param \Magento\Quote\Model\Quote\Item\AbstractItem $item
      * @param array $value
      * @return $this
      */
@@ -419,7 +420,7 @@ class Data extends \Magento\Framework\App\Helper\AbstractHelper
     /**
      * Get the weee tax including tax
      *
-     * @param \Magento\Sales\Model\Quote\Item\AbstractItem $item
+     * @param \Magento\Quote\Model\Quote\Item\AbstractItem $item
      * @return float
      */
     public function getWeeeTaxInclTax($item)
@@ -435,7 +436,7 @@ class Data extends \Magento\Framework\App\Helper\AbstractHelper
     /**
      * Get the total base weee tax
      *
-     * @param \Magento\Sales\Model\Quote\Item\AbstractItem $item
+     * @param \Magento\Quote\Model\Quote\Item\AbstractItem $item
      * @return float
      */
     public function getBaseWeeeTaxInclTax($item)
@@ -451,7 +452,7 @@ class Data extends \Magento\Framework\App\Helper\AbstractHelper
     /**
      * Get the total weee including tax by row
      *
-     * @param \Magento\Sales\Model\Quote\Item\AbstractItem $item
+     * @param \Magento\Quote\Model\Quote\Item\AbstractItem $item
      * @return float
      */
     public function getRowWeeeTaxInclTax($item)
@@ -467,7 +468,7 @@ class Data extends \Magento\Framework\App\Helper\AbstractHelper
     /**
      * Get the total base weee including tax by row
      *
-     * @param \Magento\Sales\Model\Quote\Item\AbstractItem $item
+     * @param \Magento\Quote\Model\Quote\Item\AbstractItem $item
      * @return float
      */
     public function getBaseRowWeeeTaxInclTax($item)
@@ -483,7 +484,7 @@ class Data extends \Magento\Framework\App\Helper\AbstractHelper
     /**
      * Get the total tax applied on weee by unit
      *
-     * @param \Magento\Sales\Model\Quote\Item\AbstractItem $item
+     * @param \Magento\Quote\Model\Quote\Item\AbstractItem $item
      * @return float
      */
     public function getTotalTaxAppliedForWeeeTax($item)
@@ -503,7 +504,7 @@ class Data extends \Magento\Framework\App\Helper\AbstractHelper
     /**
      * Get the total tax applied on weee by unit
      *
-     * @param \Magento\Sales\Model\Quote\Item\AbstractItem $item
+     * @param \Magento\Quote\Model\Quote\Item\AbstractItem $item
      * @return float
      */
     public function getBaseTotalTaxAppliedForWeeeTax($item)
@@ -659,7 +660,7 @@ class Data extends \Magento\Framework\App\Helper\AbstractHelper
     /**
      * Returns the total amount of FPT across all items.  Used for displaying the FPT totals line item.
      *
-     * @param  \Magento\Sales\Model\Quote\Item\AbstractItem[] $items
+     * @param  \Magento\Quote\Model\Quote\Item\AbstractItem[] $items
      * @param  null|string|bool|int|Store $store
      * @return float
      */
diff --git a/app/code/Magento/Weee/Model/Attribute/Backend/Weee/Tax.php b/app/code/Magento/Weee/Model/Attribute/Backend/Weee/Tax.php
index c1cffc5c3cd45ed24df0888b364c5d35919df5e1..284593f0d3cfd2d57be62fd4803def7210fa592f 100644
--- a/app/code/Magento/Weee/Model/Attribute/Backend/Weee/Tax.php
+++ b/app/code/Magento/Weee/Model/Attribute/Backend/Weee/Tax.php
@@ -92,6 +92,7 @@ class Tax extends \Magento\Catalog\Model\Product\Attribute\Backend\Price
      *
      * @param   \Magento\Catalog\Model\Product $object
      * @return  $this
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function afterLoad($object)
     {
diff --git a/app/code/Magento/Weee/Model/Observer.php b/app/code/Magento/Weee/Model/Observer.php
index 3269a875f78c1d4a4c1a910af82d778aeaafb627..daca840e903b7e2e8c0f11390a84c259a66ff837 100644
--- a/app/code/Magento/Weee/Model/Observer.php
+++ b/app/code/Magento/Weee/Model/Observer.php
@@ -5,6 +5,9 @@
  */
 namespace Magento\Weee\Model;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class Observer extends \Magento\Framework\Model\AbstractModel
 {
     /**
@@ -45,6 +48,7 @@ class Observer extends \Magento\Framework\Model\AbstractModel
      * @param \Magento\Framework\Model\Resource\AbstractResource $resource
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
diff --git a/app/code/Magento/Weee/Model/Resource/Attribute/Backend/Weee/Tax.php b/app/code/Magento/Weee/Model/Resource/Attribute/Backend/Weee/Tax.php
index c4eaa41704c659881e78b825da9d6097526b5376..ee2d81eaa9ae676c5ee1d90b32b1b6ce74b343c5 100644
--- a/app/code/Magento/Weee/Model/Resource/Attribute/Backend/Weee/Tax.php
+++ b/app/code/Magento/Weee/Model/Resource/Attribute/Backend/Weee/Tax.php
@@ -104,8 +104,6 @@ class Tax extends \Magento\Framework\Model\Resource\Db\AbstractDb
     public function insertProductData($product, $data)
     {
         $data['entity_id'] = (int)$product->getId();
-        $data['entity_type_id'] = (int)$product->getEntityTypeId();
-
         $this->_getWriteAdapter()->insert($this->getMainTable(), $data);
         return $this;
     }
diff --git a/app/code/Magento/Weee/Model/Resource/Setup.php b/app/code/Magento/Weee/Model/Resource/Setup.php
new file mode 100644
index 0000000000000000000000000000000000000000..46bf9145aa456161f367590e440dbbd253ae37ad
--- /dev/null
+++ b/app/code/Magento/Weee/Model/Resource/Setup.php
@@ -0,0 +1,70 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+namespace Magento\Weee\Model\Resource;
+
+/**
+ * Setup Model of Weee Module
+ */
+class Setup extends \Magento\Framework\Module\DataSetup
+{
+    /**
+     * @var \Magento\Sales\Model\Resource\SetupFactory
+     */
+    protected $salesSetupFactory;
+
+    /**
+     * @var \Magento\Quote\Model\Resource\SetupFactory
+     */
+    protected $quoteSetupFactory;
+
+    /**
+     * @param \Magento\Eav\Model\Entity\Setup\Context $context
+     * @param string $resourceName
+     * @param \Magento\Sales\Model\Resource\SetupFactory $salesSetupFactory
+     * @param \Magento\Quote\Model\Resource\SetupFactory $quoteSetupFactory
+     * @param string $moduleName
+     * @param string $connectionName
+     */
+    public function __construct(
+        \Magento\Eav\Model\Entity\Setup\Context $context,
+        $resourceName,
+        \Magento\Sales\Model\Resource\SetupFactory $salesSetupFactory,
+        \Magento\Quote\Model\Resource\SetupFactory $quoteSetupFactory,
+        $moduleName = 'Magento_Weee',
+        $connectionName = \Magento\Framework\Module\Updater\SetupInterface::DEFAULT_SETUP_CONNECTION
+    ) {
+        $this->salesSetupFactory = $salesSetupFactory;
+        $this->quoteSetupFactory = $quoteSetupFactory;
+        parent::__construct(
+            $context,
+            $resourceName,
+            $moduleName,
+            $connectionName
+        );
+    }
+
+    /**
+     * Create Sales Setup
+     *
+     * @param array $data
+     * @return \Magento\Sales\Model\Resource\Setup
+     */
+    public function createSalesSetup(array $data)
+    {
+        return $this->salesSetupFactory->create($data);
+    }
+
+    /**
+     * Create Quote Setup
+     *
+     * @param array $data
+     * @return \Magento\Quote\Model\Resource\Setup
+     */
+    public function createQuoteSetup(array $data)
+    {
+        return $this->quoteSetupFactory->create($data);
+    }
+}
diff --git a/app/code/Magento/Weee/Model/Tax.php b/app/code/Magento/Weee/Model/Tax.php
index 4046cb12fc7adc1193797356520a1332fe5e2b64..7eab12df0722dbead3edf7667a66d52aab10a2c8 100644
--- a/app/code/Magento/Weee/Model/Tax.php
+++ b/app/code/Magento/Weee/Model/Tax.php
@@ -11,6 +11,9 @@ use Magento\Store\Model\Website;
 use Magento\Tax\Model\Calculation;
 use Magento\Customer\Api\AccountManagementInterface;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class Tax extends \Magento\Framework\Model\AbstractModel
 {
     /**
@@ -96,6 +99,7 @@ class Tax extends \Magento\Framework\Model\AbstractModel
      * @param PriceCurrencyInterface $priceCurrency
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
@@ -192,11 +196,13 @@ class Tax extends \Magento\Framework\Model\AbstractModel
 
     /**
      * @param Product $product
-     * @param null|false|\Magento\Sales\Model\Quote\Address $shipping
-     * @param null|false|\Magento\Sales\Model\Quote\Address $billing
+     * @param null|false|\Magento\Quote\Model\Quote\Address $shipping
+     * @param null|false|\Magento\Quote\Model\Quote\Address $billing
      * @param Website $website
      * @param bool $calculateTax
      * @return \Magento\Framework\Object[]
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public function getProductWeeeAttributes(
         $product,
diff --git a/app/code/Magento/Weee/Model/Total/Creditmemo/Weee.php b/app/code/Magento/Weee/Model/Total/Creditmemo/Weee.php
index 0c82ec0a5ee1487b4f625d0a74abf70fa339cea3..4107c5d55a44174261641944f63fb4e983910f82 100644
--- a/app/code/Magento/Weee/Model/Total/Creditmemo/Weee.php
+++ b/app/code/Magento/Weee/Model/Total/Creditmemo/Weee.php
@@ -38,6 +38,10 @@ class Weee extends \Magento\Sales\Model\Order\Creditmemo\Total\AbstractTotal
      *
      * @param  Creditmemo $creditmemo
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function collect(Creditmemo $creditmemo)
     {
diff --git a/app/code/Magento/Weee/Model/Total/Invoice/Weee.php b/app/code/Magento/Weee/Model/Total/Invoice/Weee.php
index a13308b72f533f68bcaf7de14864346559f466c2..b89362baf000fa84ca1d9aa4d89441e4a5f3925d 100644
--- a/app/code/Magento/Weee/Model/Total/Invoice/Weee.php
+++ b/app/code/Magento/Weee/Model/Total/Invoice/Weee.php
@@ -36,6 +36,9 @@ class Weee extends \Magento\Sales\Model\Order\Invoice\Total\AbstractTotal
      *
      * @param  \Magento\Sales\Model\Order\Invoice $invoice
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public function collect(\Magento\Sales\Model\Order\Invoice $invoice)
     {
diff --git a/app/code/Magento/Weee/Model/Total/Quote/Weee.php b/app/code/Magento/Weee/Model/Total/Quote/Weee.php
index d4682b902e9599f0335217bd40662ed45a704250..3ba498c70c4f700f5d6830f1b65b702ff74c45ef 100644
--- a/app/code/Magento/Weee/Model/Total/Quote/Weee.php
+++ b/app/code/Magento/Weee/Model/Total/Quote/Weee.php
@@ -3,10 +3,13 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Weee\Model\Total\Quote;
 
 use Magento\Framework\Pricing\PriceCurrencyInterface;
-use Magento\Sales\Model\Quote\Address\Total\AbstractTotal;
+use Magento\Quote\Model\Quote\Address\Total\AbstractTotal;
 use Magento\Store\Model\Store;
 use Magento\Tax\Model\Sales\Total\Quote\CommonTaxCollector;
 
@@ -81,10 +84,10 @@ class Weee extends AbstractTotal
     /**
      * Collect Weee amounts for the quote / order
      *
-     * @param   \Magento\Sales\Model\Quote\Address $address
+     * @param   \Magento\Quote\Model\Quote\Address $address
      * @return  $this
      */
-    public function collect(\Magento\Sales\Model\Quote\Address $address)
+    public function collect(\Magento\Quote\Model\Quote\Address $address)
     {
         AbstractTotal::collect($address);
         $this->_store = $address->getQuote()->getStore();
@@ -123,11 +126,13 @@ class Weee extends AbstractTotal
     /**
      * Calculate item fixed tax and prepare information for discount and regular taxation
      *
-     * @param   \Magento\Sales\Model\Quote\Address $address
-     * @param   \Magento\Sales\Model\Quote\Item\AbstractItem $item
+     * @param   \Magento\Quote\Model\Quote\Address $address
+     * @param   \Magento\Quote\Model\Quote\Item\AbstractItem $item
      * @return  void|$this
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
-    protected function _process(\Magento\Sales\Model\Quote\Address $address, $item)
+    protected function _process(\Magento\Quote\Model\Quote\Address $address, $item)
     {
         $attributes = $this->weeeData->getProductWeeeAttributes(
             $item->getProduct(),
@@ -235,7 +240,7 @@ class Weee extends AbstractTotal
     /**
      * Process row amount based on FPT total amount configuration setting
      *
-     * @param   \Magento\Sales\Model\Quote\Address $address
+     * @param   \Magento\Quote\Model\Quote\Address $address
      * @param   float $rowValueExclTax
      * @param   float $baseRowValueExclTax
      * @param   float $rowValueInclTax
@@ -274,19 +279,19 @@ class Weee extends AbstractTotal
     /**
      * Recalculate parent item amounts based on children results
      *
-     * @param   \Magento\Sales\Model\Quote\Item\AbstractItem $item
+     * @param   \Magento\Quote\Model\Quote\Item\AbstractItem $item
      * @return  void
      *
      * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
-    protected function _recalculateParent(\Magento\Sales\Model\Quote\Item\AbstractItem $item)
+    protected function _recalculateParent(\Magento\Quote\Model\Quote\Item\AbstractItem $item)
     {
     }
 
     /**
      * Reset information about FPT for shopping cart item
      *
-     * @param   \Magento\Sales\Model\Quote\Item\AbstractItem $item
+     * @param   \Magento\Quote\Model\Quote\Item\AbstractItem $item
      * @return  void
      */
     protected function _resetItemData($item)
@@ -309,10 +314,11 @@ class Weee extends AbstractTotal
     /**
      * Delegate this to WeeeTax collector
      *
-     * @param   \Magento\Sales\Model\Quote\Address $address
+     * @param   \Magento\Quote\Model\Quote\Address $address
      * @return  $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
-    public function fetch(\Magento\Sales\Model\Quote\Address $address)
+    public function fetch(\Magento\Quote\Model\Quote\Address $address)
     {
         return $this;
     }
diff --git a/app/code/Magento/Weee/Model/Total/Quote/WeeeTax.php b/app/code/Magento/Weee/Model/Total/Quote/WeeeTax.php
index 7209f6a9938d7a3d8f64ac5d2a157b50ee0a63b1..9008fda31b5233cc0eeda0f700c79d8f663b1ebe 100644
--- a/app/code/Magento/Weee/Model/Total/Quote/WeeeTax.php
+++ b/app/code/Magento/Weee/Model/Total/Quote/WeeeTax.php
@@ -5,7 +5,7 @@
  */
 namespace Magento\Weee\Model\Total\Quote;
 
-use Magento\Sales\Model\Quote\Address\Total\AbstractTotal;
+use Magento\Quote\Model\Quote\Address\Total\AbstractTotal;
 use Magento\Store\Model\Store;
 use Magento\Tax\Model\Sales\Total\Quote\CommonTaxCollector;
 
@@ -14,12 +14,14 @@ class WeeeTax extends Weee
     /**
      * Collect Weee taxes amount and prepare items prices for taxation and discount
      *
-     * @param   \Magento\Sales\Model\Quote\Address $address
+     * @param   \Magento\Quote\Model\Quote\Address $address
      * @return  $this
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
-    public function collect(\Magento\Sales\Model\Quote\Address $address)
+    public function collect(\Magento\Quote\Model\Quote\Address $address)
     {
-        \Magento\Sales\Model\Quote\Address\Total\AbstractTotal::collect($address);
+        \Magento\Quote\Model\Quote\Address\Total\AbstractTotal::collect($address);
         $this->_store = $address->getQuote()->getStore();
         if (!$this->weeeData->isEnabled($this->_store)) {
             return $this;
@@ -127,7 +129,7 @@ class WeeeTax extends Weee
     /**
      * Process row amount based on FPT total amount configuration setting
      *
-     * @param   \Magento\Sales\Model\Quote\Address $address
+     * @param   \Magento\Quote\Model\Quote\Address $address
      * @param   float $rowValueExclTax
      * @param   float $baseRowValueExclTax
      * @param   float $rowValueInclTax
@@ -157,10 +159,10 @@ class WeeeTax extends Weee
     /**
      * Fetch the Weee total amount for display in totals block when building the initial quote
      *
-     * @param   \Magento\Sales\Model\Quote\Address $address
+     * @param   \Magento\Quote\Model\Quote\Address $address
      * @return  $this
      */
-    public function fetch(\Magento\Sales\Model\Quote\Address $address)
+    public function fetch(\Magento\Quote\Model\Quote\Address $address)
     {
         /** @var $items \Magento\Sales\Model\Order\Item[] */
         $items = $this->_getAddressItems($address);
diff --git a/app/code/Magento/Weee/composer.json b/app/code/Magento/Weee/composer.json
index fb0b9a6779c9958e85913a4ecb3d843b378b674c..e8390ef55ea8c4aba0ddd68b532d18645ca4af90 100644
--- a/app/code/Magento/Weee/composer.json
+++ b/app/code/Magento/Weee/composer.json
@@ -3,20 +3,21 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-catalog": "0.42.0-beta3",
-        "magento/module-tax": "0.42.0-beta3",
-        "magento/module-sales": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/module-directory": "0.42.0-beta3",
-        "magento/module-core": "0.42.0-beta3",
-        "magento/module-eav": "0.42.0-beta3",
-        "magento/module-customer": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-catalog": "0.42.0-beta4",
+        "magento/module-tax": "0.42.0-beta4",
+        "magento/module-sales": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/module-directory": "0.42.0-beta4",
+        "magento/module-core": "0.42.0-beta4",
+        "magento/module-eav": "0.42.0-beta4",
+        "magento/module-customer": "0.42.0-beta4",
+        "magento/module-quote": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/Weee/data/weee_setup/data-install-2.0.0.php b/app/code/Magento/Weee/data/weee_setup/data-install-2.0.0.php
index b9fd7a40d69a3681c29bbf056410f939d6594336..9cf4de4fac7b80b4b84937f36bfb9e6b72f179ea 100644
--- a/app/code/Magento/Weee/data/weee_setup/data-install-2.0.0.php
+++ b/app/code/Magento/Weee/data/weee_setup/data-install-2.0.0.php
@@ -4,44 +4,45 @@
  * See COPYING.txt for license details.
  */
 
-/** @var $this \Magento\Sales\Model\Resource\Setup */
+/** @var $this \Magento\Weee\Model\Resource\Setup */
+$quoteSetup = $this->createQuoteSetup(['resourceName' => 'quote_setup']);
+$quoteSetup->addAttribute('quote_item', 'weee_tax_applied', ['type' => 'text']);
+$quoteSetup->addAttribute('quote_item', 'weee_tax_applied_amount', ['type' => 'decimal']);
+$quoteSetup->addAttribute('quote_item', 'weee_tax_applied_row_amount', ['type' => 'decimal']);
+$quoteSetup->addAttribute('quote_item', 'weee_tax_disposition', ['type' => 'decimal']);
+$quoteSetup->addAttribute('quote_item', 'weee_tax_row_disposition', ['type' => 'decimal']);
+$quoteSetup->addAttribute('quote_item', 'base_weee_tax_applied_amount', ['type' => 'decimal']);
+$quoteSetup->addAttribute('quote_item', 'base_weee_tax_applied_row_amnt', ['type' => 'decimal']);
+$quoteSetup->addAttribute('quote_item', 'base_weee_tax_disposition', ['type' => 'decimal']);
+$quoteSetup->addAttribute('quote_item', 'base_weee_tax_row_disposition', ['type' => 'decimal']);
 
-$this->addAttribute('quote_item', 'weee_tax_applied', ['type' => 'text']);
-$this->addAttribute('quote_item', 'weee_tax_applied_amount', ['type' => 'decimal']);
-$this->addAttribute('quote_item', 'weee_tax_applied_row_amount', ['type' => 'decimal']);
-$this->addAttribute('quote_item', 'weee_tax_disposition', ['type' => 'decimal']);
-$this->addAttribute('quote_item', 'weee_tax_row_disposition', ['type' => 'decimal']);
-$this->addAttribute('quote_item', 'base_weee_tax_applied_amount', ['type' => 'decimal']);
-$this->addAttribute('quote_item', 'base_weee_tax_applied_row_amnt', ['type' => 'decimal']);
-$this->addAttribute('quote_item', 'base_weee_tax_disposition', ['type' => 'decimal']);
-$this->addAttribute('quote_item', 'base_weee_tax_row_disposition', ['type' => 'decimal']);
+$salesSetup = $this->createSalesSetup(['resourceName' => 'sales_setup']);
+$salesSetup->addAttribute('order_item', 'weee_tax_applied', ['type' => 'text']);
+$salesSetup->addAttribute('order_item', 'weee_tax_applied_amount', ['type' => 'decimal']);
+$salesSetup->addAttribute('order_item', 'weee_tax_applied_row_amount', ['type' => 'decimal']);
+$salesSetup->addAttribute('order_item', 'weee_tax_disposition', ['type' => 'decimal']);
+$salesSetup->addAttribute('order_item', 'weee_tax_row_disposition', ['type' => 'decimal']);
+$salesSetup->addAttribute('order_item', 'base_weee_tax_applied_amount', ['type' => 'decimal']);
+$salesSetup->addAttribute('order_item', 'base_weee_tax_applied_row_amnt', ['type' => 'decimal']);
+$salesSetup->addAttribute('order_item', 'base_weee_tax_disposition', ['type' => 'decimal']);
+$salesSetup->addAttribute('order_item', 'base_weee_tax_row_disposition', ['type' => 'decimal']);
 
-$this->addAttribute('order_item', 'weee_tax_applied', ['type' => 'text']);
-$this->addAttribute('order_item', 'weee_tax_applied_amount', ['type' => 'decimal']);
-$this->addAttribute('order_item', 'weee_tax_applied_row_amount', ['type' => 'decimal']);
-$this->addAttribute('order_item', 'weee_tax_disposition', ['type' => 'decimal']);
-$this->addAttribute('order_item', 'weee_tax_row_disposition', ['type' => 'decimal']);
-$this->addAttribute('order_item', 'base_weee_tax_applied_amount', ['type' => 'decimal']);
-$this->addAttribute('order_item', 'base_weee_tax_applied_row_amnt', ['type' => 'decimal']);
-$this->addAttribute('order_item', 'base_weee_tax_disposition', ['type' => 'decimal']);
-$this->addAttribute('order_item', 'base_weee_tax_row_disposition', ['type' => 'decimal']);
+$salesSetup->addAttribute('invoice_item', 'weee_tax_applied', ['type' => 'text']);
+$salesSetup->addAttribute('invoice_item', 'weee_tax_applied_amount', ['type' => 'decimal']);
+$salesSetup->addAttribute('invoice_item', 'weee_tax_applied_row_amount', ['type' => 'decimal']);
+$salesSetup->addAttribute('invoice_item', 'weee_tax_disposition', ['type' => 'decimal']);
+$salesSetup->addAttribute('invoice_item', 'weee_tax_row_disposition', ['type' => 'decimal']);
+$salesSetup->addAttribute('invoice_item', 'base_weee_tax_applied_amount', ['type' => 'decimal']);
+$salesSetup->addAttribute('invoice_item', 'base_weee_tax_applied_row_amnt', ['type' => 'decimal']);
+$salesSetup->addAttribute('invoice_item', 'base_weee_tax_disposition', ['type' => 'decimal']);
+$salesSetup->addAttribute('invoice_item', 'base_weee_tax_row_disposition', ['type' => 'decimal']);
 
-$this->addAttribute('invoice_item', 'weee_tax_applied', ['type' => 'text']);
-$this->addAttribute('invoice_item', 'weee_tax_applied_amount', ['type' => 'decimal']);
-$this->addAttribute('invoice_item', 'weee_tax_applied_row_amount', ['type' => 'decimal']);
-$this->addAttribute('invoice_item', 'weee_tax_disposition', ['type' => 'decimal']);
-$this->addAttribute('invoice_item', 'weee_tax_row_disposition', ['type' => 'decimal']);
-$this->addAttribute('invoice_item', 'base_weee_tax_applied_amount', ['type' => 'decimal']);
-$this->addAttribute('invoice_item', 'base_weee_tax_applied_row_amnt', ['type' => 'decimal']);
-$this->addAttribute('invoice_item', 'base_weee_tax_disposition', ['type' => 'decimal']);
-$this->addAttribute('invoice_item', 'base_weee_tax_row_disposition', ['type' => 'decimal']);
-
-$this->addAttribute('creditmemo_item', 'weee_tax_applied', ['type' => 'text']);
-$this->addAttribute('creditmemo_item', 'weee_tax_applied_amount', ['type' => 'decimal']);
-$this->addAttribute('creditmemo_item', 'weee_tax_applied_row_amount', ['type' => 'decimal']);
-$this->addAttribute('creditmemo_item', 'weee_tax_disposition', ['type' => 'decimal']);
-$this->addAttribute('creditmemo_item', 'weee_tax_row_disposition', ['type' => 'decimal']);
-$this->addAttribute('creditmemo_item', 'base_weee_tax_applied_amount', ['type' => 'decimal']);
-$this->addAttribute('creditmemo_item', 'base_weee_tax_applied_row_amnt', ['type' => 'decimal']);
-$this->addAttribute('creditmemo_item', 'base_weee_tax_disposition', ['type' => 'decimal']);
-$this->addAttribute('creditmemo_item', 'base_weee_tax_row_disposition', ['type' => 'decimal']);
+$salesSetup->addAttribute('creditmemo_item', 'weee_tax_applied', ['type' => 'text']);
+$salesSetup->addAttribute('creditmemo_item', 'weee_tax_applied_amount', ['type' => 'decimal']);
+$salesSetup->addAttribute('creditmemo_item', 'weee_tax_applied_row_amount', ['type' => 'decimal']);
+$salesSetup->addAttribute('creditmemo_item', 'weee_tax_disposition', ['type' => 'decimal']);
+$salesSetup->addAttribute('creditmemo_item', 'weee_tax_row_disposition', ['type' => 'decimal']);
+$salesSetup->addAttribute('creditmemo_item', 'base_weee_tax_applied_amount', ['type' => 'decimal']);
+$salesSetup->addAttribute('creditmemo_item', 'base_weee_tax_applied_row_amnt', ['type' => 'decimal']);
+$salesSetup->addAttribute('creditmemo_item', 'base_weee_tax_disposition', ['type' => 'decimal']);
+$salesSetup->addAttribute('creditmemo_item', 'base_weee_tax_row_disposition', ['type' => 'decimal']);
diff --git a/app/code/Magento/Weee/etc/di.xml b/app/code/Magento/Weee/etc/di.xml
index 2bce72fb54affee830d520b998daf65f22c838d9..628e14cdfd8ce08cee15c6823a3abd50de7cc0f7 100644
--- a/app/code/Magento/Weee/etc/di.xml
+++ b/app/code/Magento/Weee/etc/di.xml
@@ -21,7 +21,7 @@
     <type name="Magento\Framework\Module\Updater\SetupFactory">
         <arguments>
             <argument name="resourceTypes" xsi:type="array">
-                <item name="weee_setup" xsi:type="string">Magento\Sales\Model\Resource\Setup</item>
+                <item name="weee_setup" xsi:type="string">Magento\Weee\Model\Resource\Setup</item>
             </argument>
         </arguments>
     </type>
diff --git a/app/code/Magento/Weee/etc/module.xml b/app/code/Magento/Weee/etc/module.xml
index 14f5cafcaf785347a41fa27e70be09880904c2fc..ab974bb09e637ce42170ff298233a061d7202485 100644
--- a/app/code/Magento/Weee/etc/module.xml
+++ b/app/code/Magento/Weee/etc/module.xml
@@ -6,11 +6,12 @@
  */
 -->
 <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../lib/internal/Magento/Framework/Module/etc/module.xsd">
-    <module name="Magento_Weee" schema_version="2.0.0">
+    <module name="Magento_Weee" schema_version="2.0.0.1">
         <sequence>
             <module name="Magento_Catalog"/>
             <module name="Magento_Tax"/>
             <module name="Magento_Sales"/>
+            <module name="Magento_Quote"/>
         </sequence>
     </module>
 </config>
diff --git a/app/code/Magento/Weee/sql/weee_setup/upgrade-2.0.0-2.0.0.1.php b/app/code/Magento/Weee/sql/weee_setup/upgrade-2.0.0-2.0.0.1.php
new file mode 100644
index 0000000000000000000000000000000000000000..eefa27219ff2bf0b14ccf9b4334f252e36424679
--- /dev/null
+++ b/app/code/Magento/Weee/sql/weee_setup/upgrade-2.0.0-2.0.0.1.php
@@ -0,0 +1,15 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+
+$installer = $this;
+/** @var $installer \Magento\Setup\Module\SetupModule */
+$installer->startSetup();
+$connection = $installer->getConnection();
+
+//Drop entity_type_id column for wee tax table
+$connection->dropColumn($installer->getTable('weee_tax'), 'entity_type_id');
+
+$installer->endSetup();
diff --git a/app/code/Magento/Weee/view/adminhtml/templates/items/price/row.phtml b/app/code/Magento/Weee/view/adminhtml/templates/items/price/row.phtml
index 56e96894609f8121c8988e66eefba4a99faa664a..460393161bd6ce536cc4affcd971e4b740e82fad 100644
--- a/app/code/Magento/Weee/view/adminhtml/templates/items/price/row.phtml
+++ b/app/code/Magento/Weee/view/adminhtml/templates/items/price/row.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /** @var \Magento\Weee\Block\Adminhtml\Items\Price\Renderer $this */
diff --git a/app/code/Magento/Weee/view/adminhtml/templates/items/price/total.phtml b/app/code/Magento/Weee/view/adminhtml/templates/items/price/total.phtml
index fc5037c7b1a72353788fce76952fd3ed74a30c7a..a54d234656ceb55fbdaf607ecd60b03b20327a1b 100644
--- a/app/code/Magento/Weee/view/adminhtml/templates/items/price/total.phtml
+++ b/app/code/Magento/Weee/view/adminhtml/templates/items/price/total.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /** @var \Magento\Weee\Block\Adminhtml\Items\Price\Renderer $this */
diff --git a/app/code/Magento/Weee/view/adminhtml/templates/items/price/unit.phtml b/app/code/Magento/Weee/view/adminhtml/templates/items/price/unit.phtml
index cb9928b5f2c264f861fdb2b7274232da316b210a..533d874ba3dd6634772ab04ffe2f53d752e79a50 100644
--- a/app/code/Magento/Weee/view/adminhtml/templates/items/price/unit.phtml
+++ b/app/code/Magento/Weee/view/adminhtml/templates/items/price/unit.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /** @var \Magento\Weee\Block\Adminhtml\Items\Price\Renderer $this */
diff --git a/app/code/Magento/Weee/view/adminhtml/templates/order/create/items/price/row.phtml b/app/code/Magento/Weee/view/adminhtml/templates/order/create/items/price/row.phtml
index 2bc26762b8fabfc830c3bd0bf90ed7fbc21d8f46..ca8bfceef26b6ea9a47b95769c49dfe19078a00d 100644
--- a/app/code/Magento/Weee/view/adminhtml/templates/order/create/items/price/row.phtml
+++ b/app/code/Magento/Weee/view/adminhtml/templates/order/create/items/price/row.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /** @var $this \Magento\Weee\Block\Item\Price\Renderer */
diff --git a/app/code/Magento/Weee/view/adminhtml/templates/order/create/items/price/total.phtml b/app/code/Magento/Weee/view/adminhtml/templates/order/create/items/price/total.phtml
index 57827f4d5489bd330d30da3c67548963630a69db..35127cbf95f04b2f713fc4bc91284301d3642a5d 100644
--- a/app/code/Magento/Weee/view/adminhtml/templates/order/create/items/price/total.phtml
+++ b/app/code/Magento/Weee/view/adminhtml/templates/order/create/items/price/total.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /** @var \Magento\Weee\Block\Item\Price\Renderer $this */
diff --git a/app/code/Magento/Weee/view/adminhtml/templates/order/create/items/price/unit.phtml b/app/code/Magento/Weee/view/adminhtml/templates/order/create/items/price/unit.phtml
index 08a1a7f7887fb31e54509a7de53e1d74d0c41362..ebff20c3f4e2c36ed2689dc871efb40e7479557e 100644
--- a/app/code/Magento/Weee/view/adminhtml/templates/order/create/items/price/unit.phtml
+++ b/app/code/Magento/Weee/view/adminhtml/templates/order/create/items/price/unit.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /** @var \Magento\Weee\Block\Item\Price\Renderer $this */
diff --git a/app/code/Magento/Weee/view/adminhtml/templates/renderer/tax.phtml b/app/code/Magento/Weee/view/adminhtml/templates/renderer/tax.phtml
index b1ca5c16c489bb64f33cb75fb4c7f8a00f34cf1b..44243d19a4dc46fc8896ce03223383fc004e5971 100644
--- a/app/code/Magento/Weee/view/adminhtml/templates/renderer/tax.phtml
+++ b/app/code/Magento/Weee/view/adminhtml/templates/renderer/tax.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /** @var $this \Magento\Weee\Block\Renderer\Weee\Tax */
diff --git a/app/code/Magento/Weee/view/base/templates/pricing/adjustment.phtml b/app/code/Magento/Weee/view/base/templates/pricing/adjustment.phtml
index ca3e295f83e75f676a8aa9e46a878585acfe6707..79ecab8181839c6d8d8d988668ba364d683ef6e9 100644
--- a/app/code/Magento/Weee/view/base/templates/pricing/adjustment.phtml
+++ b/app/code/Magento/Weee/view/base/templates/pricing/adjustment.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php
diff --git a/app/code/Magento/Weee/view/frontend/templates/checkout/cart/item/price/sidebar.phtml b/app/code/Magento/Weee/view/frontend/templates/checkout/cart/item/price/sidebar.phtml
index e94b43959156d76a518de93836011c1e80a38fbe..58be1c22e053e3129230ee9c47b6ae2479f940cf 100644
--- a/app/code/Magento/Weee/view/frontend/templates/checkout/cart/item/price/sidebar.phtml
+++ b/app/code/Magento/Weee/view/frontend/templates/checkout/cart/item/price/sidebar.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Weee\Block\Item\Price\Renderer */
 ?>
 <?php $_item = $this->getItem() ?>
diff --git a/app/code/Magento/Weee/view/frontend/templates/checkout/onepage/review/item/price/row_excl_tax.phtml b/app/code/Magento/Weee/view/frontend/templates/checkout/onepage/review/item/price/row_excl_tax.phtml
index ac842cdfe6ecdc6d71dee8e5c7a48972f1d101dc..1fae6dfcbf3efe2df2599f33e8c1b9e0df9916b8 100644
--- a/app/code/Magento/Weee/view/frontend/templates/checkout/onepage/review/item/price/row_excl_tax.phtml
+++ b/app/code/Magento/Weee/view/frontend/templates/checkout/onepage/review/item/price/row_excl_tax.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Weee\Block\Item\Price\Renderer */
 
 $_item = $this->getItem();
diff --git a/app/code/Magento/Weee/view/frontend/templates/checkout/onepage/review/item/price/row_incl_tax.phtml b/app/code/Magento/Weee/view/frontend/templates/checkout/onepage/review/item/price/row_incl_tax.phtml
index ff00cb4e9bf152957e69f1686c0ec94296e3557d..5782357df3b224145e62b3b5321a3d5af34671bc 100644
--- a/app/code/Magento/Weee/view/frontend/templates/checkout/onepage/review/item/price/row_incl_tax.phtml
+++ b/app/code/Magento/Weee/view/frontend/templates/checkout/onepage/review/item/price/row_incl_tax.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Weee\Block\Item\Price\Renderer */
 
 $_item = $this->getItem();
diff --git a/app/code/Magento/Weee/view/frontend/templates/checkout/onepage/review/item/price/unit_excl_tax.phtml b/app/code/Magento/Weee/view/frontend/templates/checkout/onepage/review/item/price/unit_excl_tax.phtml
index 419a17a992baab9980cb42ab5fc586b8dfa38ff8..5ed7782e839206497d516eb575bf2f0474550f33 100644
--- a/app/code/Magento/Weee/view/frontend/templates/checkout/onepage/review/item/price/unit_excl_tax.phtml
+++ b/app/code/Magento/Weee/view/frontend/templates/checkout/onepage/review/item/price/unit_excl_tax.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Weee\Block\Item\Price\Renderer */
 
 $_item = $this->getItem();
diff --git a/app/code/Magento/Weee/view/frontend/templates/checkout/onepage/review/item/price/unit_incl_tax.phtml b/app/code/Magento/Weee/view/frontend/templates/checkout/onepage/review/item/price/unit_incl_tax.phtml
index 8cfd55c4277e1812872f715cdfd4f5c2c967fbff..a3bdf78bc3c405ccb1c726d63039e17369d85861 100644
--- a/app/code/Magento/Weee/view/frontend/templates/checkout/onepage/review/item/price/unit_incl_tax.phtml
+++ b/app/code/Magento/Weee/view/frontend/templates/checkout/onepage/review/item/price/unit_incl_tax.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Weee\Block\Item\Price\Renderer */
 
 $_item = $this->getItem();
diff --git a/app/code/Magento/Weee/view/frontend/templates/email/items/price/row.phtml b/app/code/Magento/Weee/view/frontend/templates/email/items/price/row.phtml
index 50353124f100fb2efe29ba99f02f557ed062de36..8a46deb9f8fc80d577e1cf6d5f594a6e9517def9 100644
--- a/app/code/Magento/Weee/view/frontend/templates/email/items/price/row.phtml
+++ b/app/code/Magento/Weee/view/frontend/templates/email/items/price/row.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /** @var \Magento\Weee\Block\Item\Price\Renderer $this */
diff --git a/app/code/Magento/Weee/view/frontend/templates/item/price/row.phtml b/app/code/Magento/Weee/view/frontend/templates/item/price/row.phtml
index b17ca8be9fa1820d43f9e519e616e5204f7bf3ae..c5df85d313ce185b20fa788ac0d9b2b967d3f4f0 100644
--- a/app/code/Magento/Weee/view/frontend/templates/item/price/row.phtml
+++ b/app/code/Magento/Weee/view/frontend/templates/item/price/row.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Weee\Block\Item\Price\Renderer */
 
 $item = $this->getItem();
diff --git a/app/code/Magento/Weee/view/frontend/templates/item/price/total_after_discount.phtml b/app/code/Magento/Weee/view/frontend/templates/item/price/total_after_discount.phtml
index a7e1bc5529cb6c50278641216609946ec42a46af..c094b12eb04fd7948eab50bd8909e47033f63e61 100644
--- a/app/code/Magento/Weee/view/frontend/templates/item/price/total_after_discount.phtml
+++ b/app/code/Magento/Weee/view/frontend/templates/item/price/total_after_discount.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var \Magento\Weee\Block\Item\Price\Renderer $this */
 $_item = $this->getItem();
 ?>
diff --git a/app/code/Magento/Weee/view/frontend/templates/item/price/unit.phtml b/app/code/Magento/Weee/view/frontend/templates/item/price/unit.phtml
index 06f21282765f40294c16627b895d03da9bf1476f..1d5a0f621ee7883ab3733b2dc820f44db29d840b 100644
--- a/app/code/Magento/Weee/view/frontend/templates/item/price/unit.phtml
+++ b/app/code/Magento/Weee/view/frontend/templates/item/price/unit.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Weee\Block\Item\Price\Renderer */
 
 $item = $this->getItem();
diff --git a/app/code/Magento/Widget/Block/Adminhtml/Widget.php b/app/code/Magento/Widget/Block/Adminhtml/Widget.php
index 4a91071fc1802ad10c1bbc1fed63d388e81979eb..cc8d4932b55c4e48d37baba7e66c664701531292 100644
--- a/app/code/Magento/Widget/Block/Adminhtml/Widget.php
+++ b/app/code/Magento/Widget/Block/Adminhtml/Widget.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * WYSIWYG widget plugin main block
  *
diff --git a/app/code/Magento/Widget/Block/Adminhtml/Widget/Chooser.php b/app/code/Magento/Widget/Block/Adminhtml/Widget/Chooser.php
index 6152ce9814810c941d361be4e0b94dda370a96d8..8d49f625148908f0de4c9142d196400e37a98b62 100644
--- a/app/code/Magento/Widget/Block/Adminhtml/Widget/Chooser.php
+++ b/app/code/Magento/Widget/Block/Adminhtml/Widget/Chooser.php
@@ -119,6 +119,7 @@ class Chooser extends \Magento\Backend\Block\Template
      * Flag to indicate include hidden field before chooser or not
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getHiddenEnabled()
     {
@@ -186,7 +187,7 @@ class Chooser extends \Magento\Backend\Block\Template
             <div id="' .
             $chooserId .
             'advice-container" class="hidden"></div>
-            <script type="text/javascript">
+            <script>
             require(["prototype", "mage/adminhtml/wysiwyg/widget"], function(){
             //<![CDATA[
                 (function() {
diff --git a/app/code/Magento/Widget/Block/Adminhtml/Widget/Instance/Edit/Tab/Main.php b/app/code/Magento/Widget/Block/Adminhtml/Widget/Instance/Edit/Tab/Main.php
index f3c95ff9b4b2311f553eef425caaffd05d38206f..409741cec2280a23401a8a7a6e69341c305788f7 100644
--- a/app/code/Magento/Widget/Block/Adminhtml/Widget/Instance/Edit/Tab/Main.php
+++ b/app/code/Magento/Widget/Block/Adminhtml/Widget/Instance/Edit/Tab/Main.php
@@ -109,6 +109,7 @@ class Main extends \Magento\Backend\Block\Widget\Form\Generic implements \Magent
      * Prepare form before rendering HTML
      *
      * @return $this
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _prepareForm()
     {
diff --git a/app/code/Magento/Widget/Block/Adminhtml/Widget/Instance/Edit/Tab/Main/Layout.php b/app/code/Magento/Widget/Block/Adminhtml/Widget/Instance/Edit/Tab/Main/Layout.php
index 2db9f1f3a65fda8d9417b6275ce727bb846ed1b0..b80f97e56e2ba80af5e9d7b63ce8da519439ff09 100644
--- a/app/code/Magento/Widget/Block/Adminhtml/Widget/Instance/Edit/Tab/Main/Layout.php
+++ b/app/code/Magento/Widget/Block/Adminhtml/Widget/Instance/Edit/Tab/Main/Layout.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Widget\Block\Adminhtml\Widget\Instance\Edit\Tab\Main;
 
 use Magento\Framework\Data\Form\Element\AbstractElement;
@@ -185,6 +188,7 @@ class Layout extends \Magento\Backend\Block\Template implements \Magento\Framewo
      * Generate array of parameters for every container type to create html template
      *
      * @return array
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function getDisplayOnContainers()
     {
diff --git a/app/code/Magento/Widget/Block/Adminhtml/Widget/Instance/Edit/Tab/Properties.php b/app/code/Magento/Widget/Block/Adminhtml/Widget/Instance/Edit/Tab/Properties.php
index c2add4b2bd5a2545ac43562a25be057ac43c7a64..665a0dcda716301b26052fc149e075c91b2d4a08 100644
--- a/app/code/Magento/Widget/Block/Adminhtml/Widget/Instance/Edit/Tab/Properties.php
+++ b/app/code/Magento/Widget/Block/Adminhtml/Widget/Instance/Edit/Tab/Properties.php
@@ -11,6 +11,9 @@
  */
 namespace Magento\Widget\Block\Adminhtml\Widget\Instance\Edit\Tab;
 
+/**
+ * @SuppressWarnings(PHPMD.DepthOfInheritance)
+ */
 class Properties extends \Magento\Widget\Block\Adminhtml\Widget\Options implements
     \Magento\Backend\Block\Widget\Tab\TabInterface
 {
diff --git a/app/code/Magento/Widget/Block/Adminhtml/Widget/Options.php b/app/code/Magento/Widget/Block/Adminhtml/Widget/Options.php
index 433bff93d24cbc68b62e7554e8b296178cdbac76..eec29885c95734eff2f38a0aff6166f8b4e2f585 100644
--- a/app/code/Magento/Widget/Block/Adminhtml/Widget/Options.php
+++ b/app/code/Magento/Widget/Block/Adminhtml/Widget/Options.php
@@ -134,6 +134,8 @@ class Options extends \Magento\Backend\Block\Widget\Form\Generic
      *
      * @param \Magento\Framework\Object $parameter
      * @return \Magento\Framework\Data\Form\Element\AbstractElement
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _addField($parameter)
     {
diff --git a/app/code/Magento/Widget/Model/NamespaceResolver.php b/app/code/Magento/Widget/Model/NamespaceResolver.php
index 46832d20756b0b0eea6094b5c11b6f0568f012cd..f4e035bdea589a6d61f7a5fda4ca643c1e93930f 100644
--- a/app/code/Magento/Widget/Model/NamespaceResolver.php
+++ b/app/code/Magento/Widget/Model/NamespaceResolver.php
@@ -34,6 +34,8 @@ class NamespaceResolver
      * @param string $name
      * @param bool $asFullModuleName
      * @return string
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function determineOmittedNamespace($name, $asFullModuleName = false)
     {
diff --git a/app/code/Magento/Widget/Model/Template/Filter.php b/app/code/Magento/Widget/Model/Template/Filter.php
index 081e508e9c00c52368974ba57035a5aa156de357..b22efabc1483bc662444fb0be9e344cd5f50d642 100644
--- a/app/code/Magento/Widget/Model/Template/Filter.php
+++ b/app/code/Magento/Widget/Model/Template/Filter.php
@@ -7,6 +7,7 @@ namespace Magento\Widget\Model\Template;
 
 /**
  * Template Filter Model
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Filter extends \Magento\Cms\Model\Template\Filter
 {
@@ -34,6 +35,7 @@ class Filter extends \Magento\Cms\Model\Template\Filter
      * @param \Magento\Backend\Model\UrlInterface $backendUrlBuilder
      * @param \Magento\Widget\Model\Resource\Widget $widgetResource
      * @param \Magento\Widget\Model\Widget $widget
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Stdlib\String $string,
diff --git a/app/code/Magento/Widget/Model/Widget.php b/app/code/Magento/Widget/Model/Widget.php
index f55a55451e6f7928607cf5e3619d3b8007c3e281..569c2fae5e22d3f027e20b1161c528b22afecbc3 100644
--- a/app/code/Magento/Widget/Model/Widget.php
+++ b/app/code/Magento/Widget/Model/Widget.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Widget model for different purposes
  *
@@ -117,6 +119,8 @@ class Widget
      *
      * @param string $type Widget type
      * @return \Magento\Framework\Object
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function getConfigAsObject($type)
     {
diff --git a/app/code/Magento/Widget/Model/Widget/Instance.php b/app/code/Magento/Widget/Model/Widget/Instance.php
index 11a0f14073483705663edf28a63409e731ea1f3d..f0344e35cc13a04ec4977057cb3e1d2cb3b32a83 100644
--- a/app/code/Magento/Widget/Model/Widget/Instance.php
+++ b/app/code/Magento/Widget/Model/Widget/Instance.php
@@ -18,6 +18,7 @@ use Magento\Framework\App\Filesystem\DirectoryList;
  * @method \Magento\Widget\Model\Widget\Instance setSortOrder(int $value)
  * @method \Magento\Widget\Model\Widget\Instance setThemeId(int $value)
  * @method int getThemeId()
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Instance extends \Magento\Framework\Model\AbstractModel
 {
@@ -123,6 +124,7 @@ class Instance extends \Magento\Framework\Model\AbstractModel
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $relatedCacheTypes
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
@@ -187,6 +189,8 @@ class Instance extends \Magento\Framework\Model\AbstractModel
      * Processing object before save data
      *
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function beforeSave()
     {
@@ -408,6 +412,7 @@ class Instance extends \Magento\Framework\Model\AbstractModel
      * Load widget XML config and merge with theme widget config
      *
      * @return array|null
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function getWidgetConfigAsArray()
     {
@@ -532,6 +537,8 @@ class Instance extends \Magento\Framework\Model\AbstractModel
      * @param string $container
      * @param string $templatePath
      * @return string
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function generateLayoutUpdateXml($container, $templatePath = '')
     {
diff --git a/app/code/Magento/Widget/composer.json b/app/code/Magento/Widget/composer.json
index 3a4c1b875c684330e86e2da7a44474a2487676d5..367b733b445c5ada85f07063dea7a1091deb335a 100644
--- a/app/code/Magento/Widget/composer.json
+++ b/app/code/Magento/Widget/composer.json
@@ -3,16 +3,16 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-cms": "0.42.0-beta3",
-        "magento/module-core": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/module-catalog": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-cms": "0.42.0-beta4",
+        "magento/module-core": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/module-catalog": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/Widget/view/adminhtml/templates/instance/edit/layout.phtml b/app/code/Magento/Widget/view/adminhtml/templates/instance/edit/layout.phtml
index b8fe45b183ec95271533f9f831ad6d2461649de5..ccd04fb7a617b2f6f9b7361036b40d5f5ab077d0 100644
--- a/app/code/Magento/Widget/view/adminhtml/templates/instance/edit/layout.phtml
+++ b/app/code/Magento/Widget/view/adminhtml/templates/instance/edit/layout.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <fieldset class="fieldset">
     <legend class="legend"><span><?php echo __('Layout Updates') ?></span></legend>
@@ -12,7 +15,7 @@
         <div class="actions"><?php echo $this->getAddLayoutButtonHtml() ?></div>
     </div>
 </fieldset>
-<script type="text/javascript">
+<script>
 require(['prototype'], function(){
 
 //<![CDATA[
diff --git a/app/code/Magento/Widget/view/adminhtml/templates/instance/js.phtml b/app/code/Magento/Widget/view/adminhtml/templates/instance/js.phtml
index aac0d475d906964000c3425f8ba4d923f64be53f..21b662c91af6a6ba0846fdd8ed5e84af6431bbdb 100644
--- a/app/code/Magento/Widget/view/adminhtml/templates/instance/js.phtml
+++ b/app/code/Magento/Widget/view/adminhtml/templates/instance/js.phtml
@@ -4,7 +4,7 @@
  * See COPYING.txt for license details.
  */
 ?>
-<script type="text/javascript">
+<script>
 require(["jquery", "prototype"], function(jQuery){
 
 //<![CDATA[
diff --git a/app/code/Magento/Wishlist/Block/AbstractBlock.php b/app/code/Magento/Wishlist/Block/AbstractBlock.php
index e608b7b93948c7c9a61e2e841fa5f167f8d182a0..a8a1b6a56abe0f25e76f8f9d86e853491ed2d215 100644
--- a/app/code/Magento/Wishlist/Block/AbstractBlock.php
+++ b/app/code/Magento/Wishlist/Block/AbstractBlock.php
@@ -81,6 +81,7 @@ abstract class AbstractBlock extends \Magento\Catalog\Block\Product\AbstractProd
      *
      * @param \Magento\Wishlist\Model\Resource\Item\Collection $collection
      * @return \Magento\Wishlist\Block\Customer\Wishlist
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     protected function _prepareCollection($collection)
     {
diff --git a/app/code/Magento/Wishlist/Block/Customer/Sidebar.php b/app/code/Magento/Wishlist/Block/Customer/Sidebar.php
index 72d357a33ea961167d68f2216e94154d0f1df7f8..1898c981c239bb2616dcf44b9fe9f9a9929cf0cc 100644
--- a/app/code/Magento/Wishlist/Block/Customer/Sidebar.php
+++ b/app/code/Magento/Wishlist/Block/Customer/Sidebar.php
@@ -57,6 +57,7 @@ class Sidebar extends \Magento\Wishlist\Block\AbstractBlock implements \Magento\
      *
      * @deprecated after 1.6.2.0
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getCanDisplayWishlist()
     {
diff --git a/app/code/Magento/Wishlist/Controller/Index/Add.php b/app/code/Magento/Wishlist/Controller/Index/Add.php
index e8c9864d08f8945dd8086300fa2a015812f2e61c..91b2eede9db6437d9b17d9735a29a855f4953885 100644
--- a/app/code/Magento/Wishlist/Controller/Index/Add.php
+++ b/app/code/Magento/Wishlist/Controller/Index/Add.php
@@ -52,6 +52,9 @@ class Add extends Action\Action implements IndexInterface
      *
      * @return void
      * @throws NotFoundException
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function execute()
     {
diff --git a/app/code/Magento/Wishlist/Controller/Index/Cart.php b/app/code/Magento/Wishlist/Controller/Index/Cart.php
index 167a08195ce19d0244ba1ee8aab8532b3fdcc3d4..9f599b5e1d44263d56bc8f5eb11192c5043ac416 100644
--- a/app/code/Magento/Wishlist/Controller/Index/Cart.php
+++ b/app/code/Magento/Wishlist/Controller/Index/Cart.php
@@ -10,6 +10,9 @@ use Magento\Framework\App\Action;
 use Magento\Framework\App\ResponseInterface;
 use Magento\Wishlist\Controller\IndexInterface;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class Cart extends Action\Action implements IndexInterface
 {
     /**
@@ -92,6 +95,8 @@ class Cart extends Action\Action implements IndexInterface
      * to product view page with message about needed defined required options
      *
      * @return ResponseInterface
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function execute()
     {
diff --git a/app/code/Magento/Wishlist/Controller/Index/DownloadCustomOption.php b/app/code/Magento/Wishlist/Controller/Index/DownloadCustomOption.php
index 4e87d03ce965973ba83f3f1bc4118d53be906305..3c26bf8e64db6f7007b465927d10622f2e5a3816 100644
--- a/app/code/Magento/Wishlist/Controller/Index/DownloadCustomOption.php
+++ b/app/code/Magento/Wishlist/Controller/Index/DownloadCustomOption.php
@@ -33,6 +33,8 @@ class DownloadCustomOption extends Action\Action implements IndexInterface
      * Custom options download action
      *
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.ExitExpression)
      */
     public function execute()
     {
diff --git a/app/code/Magento/Wishlist/Controller/Index/Fromcart.php b/app/code/Magento/Wishlist/Controller/Index/Fromcart.php
index fa4dda67b9ca8b2895408f9d5d3df894f061331f..174a12bdd49ddf0ad32283097460d8dd835b1794 100644
--- a/app/code/Magento/Wishlist/Controller/Index/Fromcart.php
+++ b/app/code/Magento/Wishlist/Controller/Index/Fromcart.php
@@ -34,6 +34,7 @@ class Fromcart extends Action\Action implements IndexInterface
      *
      * @return \Zend_Controller_Response_Abstract
      * @throws NotFoundException
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function execute()
     {
diff --git a/app/code/Magento/Wishlist/Controller/Index/Send.php b/app/code/Magento/Wishlist/Controller/Index/Send.php
index 39449a53fd3cb3385322115c58bc57fd41a68678..c989d815bda47004d0eb6a2ed73395160cb34152 100644
--- a/app/code/Magento/Wishlist/Controller/Index/Send.php
+++ b/app/code/Magento/Wishlist/Controller/Index/Send.php
@@ -11,6 +11,9 @@ use Magento\Framework\App\Action\NotFoundException;
 use Magento\Framework\App\ResponseInterface;
 use Magento\Wishlist\Controller\IndexInterface;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class Send extends Action\Action implements IndexInterface
 {
     /**
@@ -83,6 +86,9 @@ class Send extends Action\Action implements IndexInterface
      *
      * @return ResponseInterface|void
      * @throws NotFoundException
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public function execute()
     {
diff --git a/app/code/Magento/Wishlist/Controller/Index/Update.php b/app/code/Magento/Wishlist/Controller/Index/Update.php
index adce8168110f2563017e71582a073f4aa4e49772..3a35fced9d37cb8d4453de94876d0d566b951394 100644
--- a/app/code/Magento/Wishlist/Controller/Index/Update.php
+++ b/app/code/Magento/Wishlist/Controller/Index/Update.php
@@ -51,6 +51,8 @@ class Update extends Action\Action implements IndexInterface
      *
      * @return ResponseInterface|void
      * @throws NotFoundException
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function execute()
     {
diff --git a/app/code/Magento/Wishlist/Controller/WishlistProvider.php b/app/code/Magento/Wishlist/Controller/WishlistProvider.php
index 368c086d2c94b6940410907d3bb2bb676e97bd3e..20daf96c7b1011fbca8cd96ed2836ac369b38919 100644
--- a/app/code/Magento/Wishlist/Controller/WishlistProvider.php
+++ b/app/code/Magento/Wishlist/Controller/WishlistProvider.php
@@ -55,6 +55,7 @@ class WishlistProvider implements WishlistProviderInterface
 
     /**
      * {@inheritdoc}
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function getWishlist($wishlistId = null)
     {
diff --git a/app/code/Magento/Wishlist/Helper/Data.php b/app/code/Magento/Wishlist/Helper/Data.php
index aa891ea8cd1df47c27d922c16ce38ba6f8e1a184..2eed816763a185c68f41171aaeb6743f63a81665 100644
--- a/app/code/Magento/Wishlist/Helper/Data.php
+++ b/app/code/Magento/Wishlist/Helper/Data.php
@@ -11,6 +11,7 @@ use Magento\Wishlist\Controller\WishlistProviderInterface;
  * Wishlist Data Helper
  *
  * @author     Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Data extends \Magento\Framework\App\Helper\AbstractHelper
 {
diff --git a/app/code/Magento/Wishlist/Helper/Rss.php b/app/code/Magento/Wishlist/Helper/Rss.php
index 2ab829a15d2a43bd2c79a3d966f0f70e5749477b..5cfee1dc5f20510cff14bd89bce9f4cffdbf69d6 100644
--- a/app/code/Magento/Wishlist/Helper/Rss.php
+++ b/app/code/Magento/Wishlist/Helper/Rss.php
@@ -6,6 +6,9 @@
 
 namespace Magento\Wishlist\Helper;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class Rss extends \Magento\Wishlist\Helper\Data
 {
     /**
@@ -35,6 +38,7 @@ class Rss extends \Magento\Wishlist\Helper\Data
      * @param \Magento\Wishlist\Controller\WishlistProviderInterface $wishlistProvider
      * @param \Magento\Customer\Api\Data\CustomerDataBuilder $customerBuilder
      * @param \Magento\Customer\Api\CustomerRepositoryInterface $customerRepository
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\App\Helper\Context $context,
diff --git a/app/code/Magento/Wishlist/Model/Item.php b/app/code/Magento/Wishlist/Model/Item.php
index f9b15970143e190090368477f643331a524e554e..314afecc70465724a6fccaa2c92a8c1b9b39e01a 100644
--- a/app/code/Magento/Wishlist/Model/Item.php
+++ b/app/code/Magento/Wishlist/Model/Item.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Wishlist\Model;
 
 use Magento\Catalog\Api\ProductRepositoryInterface;
@@ -27,6 +30,7 @@ use Magento\Wishlist\Model\Resource\Item\Option\CollectionFactory;
  * @method \Magento\Wishlist\Model\Item setAddedAt(string $value)
  * @method string getDescription()
  * @method \Magento\Wishlist\Model\Item setDescription(string $value)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Item extends AbstractModel implements ItemInterface
 {
@@ -132,6 +136,7 @@ class Item extends AbstractModel implements ItemInterface
      * @param \Magento\Framework\Model\Resource\AbstractResource $resource
      * @param \Magento\Framework\Data\Collection\Db $resourceCollection
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
diff --git a/app/code/Magento/Wishlist/Model/ItemCarrier.php b/app/code/Magento/Wishlist/Model/ItemCarrier.php
index a94c5804d34b5b1a01694b20afe1144b4e3a95f4..093022fd52078c33ceaac3f822839f852f3c6745 100644
--- a/app/code/Magento/Wishlist/Model/ItemCarrier.php
+++ b/app/code/Magento/Wishlist/Model/ItemCarrier.php
@@ -15,6 +15,9 @@ use Magento\Framework\Message\ManagerInterface as MessageManager;
 use Magento\Framework\UrlInterface;
 use Magento\Wishlist\Helper\Data as WishlistHelper;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class ItemCarrier
 {
     /**
@@ -101,6 +104,9 @@ class ItemCarrier
      * @param Wishlist $wishlist
      * @param array $qtys
      * @return string
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public function moveAllToCart(Wishlist $wishlist, $qtys)
     {
diff --git a/app/code/Magento/Wishlist/Model/Observer.php b/app/code/Magento/Wishlist/Model/Observer.php
index 282121b75004cbcf908acfa0c6a12a06087d87d0..a484c5c8b9a208a4ef4d4f24a30e8a42ed6239f1 100644
--- a/app/code/Magento/Wishlist/Model/Observer.php
+++ b/app/code/Magento/Wishlist/Model/Observer.php
@@ -122,6 +122,7 @@ class Observer
     /**
      * @param \Magento\Framework\Event\Observer $observer
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function processAddToCart($observer)
     {
@@ -177,6 +178,7 @@ class Observer
      *
      * @param \Magento\Framework\Event\Observer $observer
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function customerLogin(\Magento\Framework\Event\Observer $observer)
     {
@@ -190,6 +192,7 @@ class Observer
      *
      * @param \Magento\Framework\Event\Observer $observer
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function customerLogout(\Magento\Framework\Event\Observer $observer)
     {
diff --git a/app/code/Magento/Wishlist/Model/Resource/Item/Collection.php b/app/code/Magento/Wishlist/Model/Resource/Item/Collection.php
index 7494f287f8af20b58f8c8fcc632c51dbe782b150..847f86a83e75922ae2b9eba6837b7b18b2ad0828 100644
--- a/app/code/Magento/Wishlist/Model/Resource/Item/Collection.php
+++ b/app/code/Magento/Wishlist/Model/Resource/Item/Collection.php
@@ -7,6 +7,8 @@ namespace Magento\Wishlist\Model\Resource\Item;
 
 /**
  * Wishlist item collection
+ * @SuppressWarnings(PHPMD.TooManyFields)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Collection extends \Magento\Framework\Model\Resource\Db\Collection\AbstractCollection
 {
diff --git a/app/code/Magento/Wishlist/Model/Resource/Item/Collection/Grid.php b/app/code/Magento/Wishlist/Model/Resource/Item/Collection/Grid.php
index 705b219bd04035a92d8bc6d1170c61b29ccf7368..d9bad91899272ffe8d6006c243f4b40f9af7d11b 100644
--- a/app/code/Magento/Wishlist/Model/Resource/Item/Collection/Grid.php
+++ b/app/code/Magento/Wishlist/Model/Resource/Item/Collection/Grid.php
@@ -11,6 +11,9 @@ namespace Magento\Wishlist\Model\Resource\Item\Collection;
 
 use Magento\Customer\Controller\RegistryConstants as RegistryConstants;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class Grid extends \Magento\Wishlist\Model\Resource\Item\Collection
 {
     /**
diff --git a/app/code/Magento/Wishlist/Model/Wishlist.php b/app/code/Magento/Wishlist/Model/Wishlist.php
index bf637020ddd685bdd0b92d32dc5876f86d08fcfc..45933e31a1a7f4d255f5fac6d298f35e011adaf0 100644
--- a/app/code/Magento/Wishlist/Model/Wishlist.php
+++ b/app/code/Magento/Wishlist/Model/Wishlist.php
@@ -23,6 +23,7 @@ use Magento\Wishlist\Model\Resource\Wishlist\Collection;
  * @method \Magento\Wishlist\Model\Wishlist setSharingCode(string $value)
  * @method string getUpdatedAt()
  * @method \Magento\Wishlist\Model\Wishlist setUpdatedAt(string $value)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Wishlist extends \Magento\Framework\Model\AbstractModel implements \Magento\Framework\Object\IdentityInterface
 {
@@ -135,6 +136,7 @@ class Wishlist extends \Magento\Framework\Model\AbstractModel implements \Magent
      * @param ProductRepositoryInterface $productRepository
      * @param bool $useCurrentWebsite
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\Model\Context $context,
@@ -370,6 +372,8 @@ class Wishlist extends \Magento\Framework\Model\AbstractModel implements \Magent
      * @param bool $forciblySetQty
      * @throws \Magento\Framework\Model\Exception
      * @return Item|string
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function addNewItem($product, $buyRequest = null, $forciblySetQty = false)
     {
@@ -600,6 +604,8 @@ class Wishlist extends \Magento\Framework\Model\AbstractModel implements \Magent
      * @throws Exception
      *
      * @see \Magento\Catalog\Helper\Product::addParamsToBuyRequest()
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function updateItem($itemId, $buyRequest, $params = null)
     {
diff --git a/app/code/Magento/Wishlist/composer.json b/app/code/Magento/Wishlist/composer.json
index d6dc5b534083ee4ce36040ce31649fc0219fd2ed..64e96470ea8bda644c612b3f723096a38de3b3dd 100644
--- a/app/code/Magento/Wishlist/composer.json
+++ b/app/code/Magento/Wishlist/composer.json
@@ -3,28 +3,28 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/module-store": "0.42.0-beta3",
-        "magento/module-customer": "0.42.0-beta3",
-        "magento/module-catalog": "0.42.0-beta3",
-        "magento/module-core": "0.42.0-beta3",
-        "magento/module-checkout": "0.42.0-beta3",
-        "magento/module-theme": "0.42.0-beta3",
-        "magento/module-catalog-inventory": "0.42.0-beta3",
-        "magento/module-rss": "0.42.0-beta3",
-        "magento/module-backend": "0.42.0-beta3",
-        "magento/module-sales": "0.42.0-beta3",
-        "magento/module-grouped-product": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
-        "magento/module-ui": "0.42.0-beta3",
+        "magento/module-store": "0.42.0-beta4",
+        "magento/module-customer": "0.42.0-beta4",
+        "magento/module-catalog": "0.42.0-beta4",
+        "magento/module-core": "0.42.0-beta4",
+        "magento/module-checkout": "0.42.0-beta4",
+        "magento/module-theme": "0.42.0-beta4",
+        "magento/module-catalog-inventory": "0.42.0-beta4",
+        "magento/module-rss": "0.42.0-beta4",
+        "magento/module-backend": "0.42.0-beta4",
+        "magento/module-sales": "0.42.0-beta4",
+        "magento/module-grouped-product": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
+        "magento/module-ui": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "suggest": {
-        "magento/module-configurable-product": "0.42.0-beta3",
-        "magento/module-downloadable": "0.42.0-beta3",
-        "magento/module-bundle": "0.42.0-beta3"
+        "magento/module-configurable-product": "0.42.0-beta4",
+        "magento/module-downloadable": "0.42.0-beta4",
+        "magento/module-bundle": "0.42.0-beta4"
     },
     "type": "magento2-module",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/code/Magento/Wishlist/sql/wishlist_setup/install-2.0.0.php b/app/code/Magento/Wishlist/sql/wishlist_setup/install-2.0.0.php
index 56e1abe9ae014cb1feaf137bab0e795126e93a3a..8d30ddbd7b30b68aac5eaa7043191973a716cd8b 100644
--- a/app/code/Magento/Wishlist/sql/wishlist_setup/install-2.0.0.php
+++ b/app/code/Magento/Wishlist/sql/wishlist_setup/install-2.0.0.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /* @var $installer \Magento\Setup\Module\SetupModule */
 $installer = $this;
 
diff --git a/app/code/Magento/Wishlist/view/adminhtml/templates/customer/edit/tab/wishlist.phtml b/app/code/Magento/Wishlist/view/adminhtml/templates/customer/edit/tab/wishlist.phtml
index b64d0709611ed8dd7d711e694b98412be1aaee7a..266d47e4593d085ab6cc7f5d424edaf8926a03ee 100644
--- a/app/code/Magento/Wishlist/view/adminhtml/templates/customer/edit/tab/wishlist.phtml
+++ b/app/code/Magento/Wishlist/view/adminhtml/templates/customer/edit/tab/wishlist.phtml
@@ -4,11 +4,13 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * @var $this \Magento\Framework\View\Element\Template
  */
 ?>
-<script type="text/javascript">
+<script>
 require([
     "prototype",
     "Magento_Catalog/catalog/product/composite/configure"
diff --git a/app/code/Magento/Wishlist/view/frontend/templates/button/share.phtml b/app/code/Magento/Wishlist/view/frontend/templates/button/share.phtml
index 87981a7c2f9a6a28720dd830d563cf86b5eaff24..3991fbcf0f24e4b05728c2435473b812a542f696 100644
--- a/app/code/Magento/Wishlist/view/frontend/templates/button/share.phtml
+++ b/app/code/Magento/Wishlist/view/frontend/templates/button/share.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Wishlist\Block\Customer\Wishlist\Button */
 ?>
 <?php if ($this->getWishlist()->getItemsCount() && $this->getWishlist()->getShared() < $this->getConfig()->getSharingEmailLimit()): ?>
diff --git a/app/code/Magento/Wishlist/view/frontend/templates/button/tocart.phtml b/app/code/Magento/Wishlist/view/frontend/templates/button/tocart.phtml
index 872dbf1e6879fd06c11f5ab27890b3015bc6c17c..0d1c7bd7f527f7a4435fb243f315f411df8444be 100644
--- a/app/code/Magento/Wishlist/view/frontend/templates/button/tocart.phtml
+++ b/app/code/Magento/Wishlist/view/frontend/templates/button/tocart.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php if ($this->getWishlist()->getItemsCount() && $this->getWishlist()->isSalable()): ?>
diff --git a/app/code/Magento/Wishlist/view/frontend/templates/button/update.phtml b/app/code/Magento/Wishlist/view/frontend/templates/button/update.phtml
index f4b058938bb8cce34d0944818600ed791f8fbcf9..c0c3807b5ccb0aa26c5f1c2197b52d54f13bbce6 100644
--- a/app/code/Magento/Wishlist/view/frontend/templates/button/update.phtml
+++ b/app/code/Magento/Wishlist/view/frontend/templates/button/update.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <?php if ($this->getWishlist()->getItemsCount()): ?>
diff --git a/app/code/Magento/Wishlist/view/frontend/templates/email/items.phtml b/app/code/Magento/Wishlist/view/frontend/templates/email/items.phtml
index 26bb715eed991ed5371541dc5312ad3cd5aba01c..c48029a6bc5d1a02a7649730ab24e96907bbb38a 100644
--- a/app/code/Magento/Wishlist/view/frontend/templates/email/items.phtml
+++ b/app/code/Magento/Wishlist/view/frontend/templates/email/items.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /* @var $this \Magento\Wishlist\Block\Share\Email\Items */
 ?>
 <?php $l = $this->getWishlistItemsCount() ?>
diff --git a/app/code/Magento/Wishlist/view/frontend/templates/item/column/actions.phtml b/app/code/Magento/Wishlist/view/frontend/templates/item/column/actions.phtml
index 1346e78554c65c7be24c5a6f1d279c57b2390bca..9a4d27751f76b07982ee2a82173821789f369a86 100644
--- a/app/code/Magento/Wishlist/view/frontend/templates/item/column/actions.phtml
+++ b/app/code/Magento/Wishlist/view/frontend/templates/item/column/actions.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /* @var \Magento\Wishlist\Model\Item $item */
 ?>
 
diff --git a/app/code/Magento/Wishlist/view/frontend/templates/item/column/cart.phtml b/app/code/Magento/Wishlist/view/frontend/templates/item/column/cart.phtml
index d15fa004e43e94863549bd8dce7dc5a6b286f865..6559dc3ce7c1b6265167f29f20fe82089c4ca4bb 100644
--- a/app/code/Magento/Wishlist/view/frontend/templates/item/column/cart.phtml
+++ b/app/code/Magento/Wishlist/view/frontend/templates/item/column/cart.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /* @var $this \Magento\Wishlist\Block\Customer\Wishlist\Item\Column\Cart */
 /* @var \Magento\Wishlist\Model\Item $item */
 $item = $this->getItem();
diff --git a/app/code/Magento/Wishlist/view/frontend/templates/item/column/comment.phtml b/app/code/Magento/Wishlist/view/frontend/templates/item/column/comment.phtml
index f87ff5c5d3a47b78af4879a519ee8739bc487ee4..d748c629d2e4f9f7791a0e1d37ab93c84cc4f8de 100644
--- a/app/code/Magento/Wishlist/view/frontend/templates/item/column/comment.phtml
+++ b/app/code/Magento/Wishlist/view/frontend/templates/item/column/comment.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /* @var \Magento\Wishlist\Model\Item $item */
 
 $item = $this->getItem();
diff --git a/app/code/Magento/Wishlist/view/frontend/templates/item/column/edit.phtml b/app/code/Magento/Wishlist/view/frontend/templates/item/column/edit.phtml
index 2e1f95ffd8728e794acc8628ccdfa63bb7ea62bc..b07a108332ec28ac29b4832ea2563d32b32b03a6 100644
--- a/app/code/Magento/Wishlist/view/frontend/templates/item/column/edit.phtml
+++ b/app/code/Magento/Wishlist/view/frontend/templates/item/column/edit.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /* @var \Magento\Wishlist\Model\Item $item */
 $item = $this->getItem();
 $product = $item->getProduct();
diff --git a/app/code/Magento/Wishlist/view/frontend/templates/item/column/image.phtml b/app/code/Magento/Wishlist/view/frontend/templates/item/column/image.phtml
index e108bb00cf1eb4d037d4456c67b021f19a4c4440..25d4675cb0a2c85ec5bb34a8236caf105637a6dd 100644
--- a/app/code/Magento/Wishlist/view/frontend/templates/item/column/image.phtml
+++ b/app/code/Magento/Wishlist/view/frontend/templates/item/column/image.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /* @var \Magento\Wishlist\Model\Item $item */
 $item = $this->getItem();
 $product = $item->getProduct();
diff --git a/app/code/Magento/Wishlist/view/frontend/templates/item/column/name.phtml b/app/code/Magento/Wishlist/view/frontend/templates/item/column/name.phtml
index a4469c5e1f3a7602f8f99b9ad0ab7020292820b0..51926c9beb60825ffcce588961ff030193ef4abe 100644
--- a/app/code/Magento/Wishlist/view/frontend/templates/item/column/name.phtml
+++ b/app/code/Magento/Wishlist/view/frontend/templates/item/column/name.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /* @var \Magento\Wishlist\Model\Item $item */
 $item = $this->getItem();
 $product = $item->getProduct();
diff --git a/app/code/Magento/Wishlist/view/frontend/templates/item/column/price.phtml b/app/code/Magento/Wishlist/view/frontend/templates/item/column/price.phtml
index fc84c28629e46d04aa9f83fb59eb2aca78dceb66..ffd35d1a31db1dfe6592756c331d233f2bbd8301 100644
--- a/app/code/Magento/Wishlist/view/frontend/templates/item/column/price.phtml
+++ b/app/code/Magento/Wishlist/view/frontend/templates/item/column/price.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /* @var \Magento\Wishlist\Model\Item $item */
 ?>
 
diff --git a/app/code/Magento/Wishlist/view/frontend/templates/item/column/remove.phtml b/app/code/Magento/Wishlist/view/frontend/templates/item/column/remove.phtml
index 6c09eecb96ce7872e25234bdf8cbf80ab289c7b9..20a2458f7a04a7cbd931b78ea330535021331bd5 100644
--- a/app/code/Magento/Wishlist/view/frontend/templates/item/column/remove.phtml
+++ b/app/code/Magento/Wishlist/view/frontend/templates/item/column/remove.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <a href="#" data-role="remove" data-post-remove='<?php echo $this->getItemRemoveParams($this->getItem()); ?>' title="<?php echo __('Remove Item') ?>" class="btn-remove action delete">
diff --git a/app/code/Magento/Wishlist/view/frontend/templates/item/configure/addto.phtml b/app/code/Magento/Wishlist/view/frontend/templates/item/configure/addto.phtml
index 3968a1e03e86f29821b791db2adc3ecff84a8cdb..7e5042ab2ea8ebc8b3e95a5401adbf84b0039407 100644
--- a/app/code/Magento/Wishlist/view/frontend/templates/item/configure/addto.phtml
+++ b/app/code/Magento/Wishlist/view/frontend/templates/item/configure/addto.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 
 <div class="product-addto-links" data-role="add-to-links">
@@ -19,7 +22,7 @@
         </a>
     <?php endif; ?>
 </div>
-<script type="text/javascript">
+<script>
     require([
         "jquery",
         "mage/mage"
diff --git a/app/code/Magento/Wishlist/view/frontend/templates/item/list.phtml b/app/code/Magento/Wishlist/view/frontend/templates/item/list.phtml
index d48fcb22093ebd22094d3fb5dcc26fbfe9c89220..9601fd557d3817ccaab1c20c77d36ae28a3a70fa 100644
--- a/app/code/Magento/Wishlist/view/frontend/templates/item/list.phtml
+++ b/app/code/Magento/Wishlist/view/frontend/templates/item/list.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php
 /** @var \Magento\Wishlist\Block\Customer\Wishlist\Items $this */
@@ -24,7 +27,9 @@ $columns = $this->getColumns();
         <?php endforeach; ?>
     </ol>
     <?php else: ?>
-        <div class="message info empty"><span><?php echo __('This Wish List has no Items');?></span></div>
+        <div class="message info empty">
+            <span><?php echo __('This Wish List has no Items');?></span>
+        </div>
     <?php endif; ?>
 </div>
 
diff --git a/app/code/Magento/Wishlist/view/frontend/templates/js/components.phtml b/app/code/Magento/Wishlist/view/frontend/templates/js/components.phtml
index 99be8e37348cec69521e018a61f416324e582a94..43f7e9c30c0126f46204910ee749ef83ad81e815 100644
--- a/app/code/Magento/Wishlist/view/frontend/templates/js/components.phtml
+++ b/app/code/Magento/Wishlist/view/frontend/templates/js/components.phtml
@@ -3,5 +3,8 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <?php echo $this->getChildHtml() ?>
diff --git a/app/code/Magento/Wishlist/view/frontend/templates/link.phtml b/app/code/Magento/Wishlist/view/frontend/templates/link.phtml
index c2b312ffa50aa34efeffa4de96ce1e6ef51c1d5f..ed84ed72388be9e20512055a75a799e06c5fbebb 100644
--- a/app/code/Magento/Wishlist/view/frontend/templates/link.phtml
+++ b/app/code/Magento/Wishlist/view/frontend/templates/link.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /* @var $this \Magento\Wishlist\Block\Link */
 ?>
 <li class="link wishlist">
diff --git a/app/code/Magento/Wishlist/view/frontend/templates/options_list.phtml b/app/code/Magento/Wishlist/view/frontend/templates/options_list.phtml
index cfa90e4c054eb47ccf1e12d8033d2a8d0e11475d..9b66b4bbb566bd59408d712d8c5e0216f17a32fe 100644
--- a/app/code/Magento/Wishlist/view/frontend/templates/options_list.phtml
+++ b/app/code/Magento/Wishlist/view/frontend/templates/options_list.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /* @var $this \Magento\Wishlist\Block\Customer\Wishlist\Item\Options */
 ?>
 
diff --git a/app/code/Magento/Wishlist/view/frontend/templates/rss/email.phtml b/app/code/Magento/Wishlist/view/frontend/templates/rss/email.phtml
index b4be8a2ac87d79005c64090fe8bbc2fdca94c7db..5cd029e105e32e4e8d0f651bfcee3c6723fe54ff 100644
--- a/app/code/Magento/Wishlist/view/frontend/templates/rss/email.phtml
+++ b/app/code/Magento/Wishlist/view/frontend/templates/rss/email.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /* @var $this \Magento\Wishlist\Block\Rss\EmailLink */
 ?>
 <?php if ($this->getLink()): ?>
diff --git a/app/code/Magento/Wishlist/view/frontend/templates/rss/wishlist.phtml b/app/code/Magento/Wishlist/view/frontend/templates/rss/wishlist.phtml
index ab7ea7b436e8791818909d0e987598e6d4c2a55f..1f55d5f8ca037bcd53e9112e123ac8561d2ddd8c 100644
--- a/app/code/Magento/Wishlist/view/frontend/templates/rss/wishlist.phtml
+++ b/app/code/Magento/Wishlist/view/frontend/templates/rss/wishlist.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /* @var $this \Magento\Wishlist\Block\Rss\Link */
 ?>
 <?php if ($this->isRssAllowed() && $this->getLink() && $this->helper('Magento\Wishlist\Helper\Data')->getWishlist()->getItemsCount()): ?>
diff --git a/app/code/Magento/Wishlist/view/frontend/templates/shared.phtml b/app/code/Magento/Wishlist/view/frontend/templates/shared.phtml
index 48eb0afdfc41d78b8c46d22a9cd767d7b51cc810..f2c671832ec83ccb6c71db1085aa701e7f5b7162 100644
--- a/app/code/Magento/Wishlist/view/frontend/templates/shared.phtml
+++ b/app/code/Magento/Wishlist/view/frontend/templates/shared.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /* @var $this \Magento\Wishlist\Block\Share\Wishlist */
 $imageBlock =  $this->getLayout()->createBlock('Magento\Catalog\Block\Product\Image');
 ?>
diff --git a/app/code/Magento/Wishlist/view/frontend/templates/sharing.phtml b/app/code/Magento/Wishlist/view/frontend/templates/sharing.phtml
index d9477b34c725b7c685a20b59cd6b4dd89f9f705b..2fe96e7784940ef7734b180f2a5257663d5719da 100644
--- a/app/code/Magento/Wishlist/view/frontend/templates/sharing.phtml
+++ b/app/code/Magento/Wishlist/view/frontend/templates/sharing.phtml
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /** @var $this \Magento\Wishlist\Block\Customer\Sharing */
 ?>
 <form class="form wishlist share"
diff --git a/app/code/Magento/Wishlist/view/frontend/templates/sidebar.phtml b/app/code/Magento/Wishlist/view/frontend/templates/sidebar.phtml
index ec6137afee6c5b05ae37baab84633f6af71c4416..732ab1714e2c0099b457862caa34812fa3f268c1 100644
--- a/app/code/Magento/Wishlist/view/frontend/templates/sidebar.phtml
+++ b/app/code/Magento/Wishlist/view/frontend/templates/sidebar.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /* @var $this \Magento\Wishlist\Block\Customer\Sidebar */
 ?>
 <?php
diff --git a/app/code/Magento/Wishlist/view/frontend/templates/view.phtml b/app/code/Magento/Wishlist/view/frontend/templates/view.phtml
index c152b3b67572d72667429252de2e32a8fab65824..b47de0c8c54f06f14f19956d5ad1f246dc81bfd0 100644
--- a/app/code/Magento/Wishlist/view/frontend/templates/view.phtml
+++ b/app/code/Magento/Wishlist/view/frontend/templates/view.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 /* @var $this \Magento\Wishlist\Block\Customer\Wishlist */
 ?>
 
diff --git a/app/design/adminhtml/Magento/backend/composer.json b/app/design/adminhtml/Magento/backend/composer.json
index 95c694e034fbaf13f7520dfdb949bca58f3c075a..7081c61cc05e10aff97eab8499f1da3820ce4f74 100644
--- a/app/design/adminhtml/Magento/backend/composer.json
+++ b/app/design/adminhtml/Magento/backend/composer.json
@@ -3,11 +3,11 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/framework": "0.42.0-beta3",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-theme",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/design/adminhtml/Magento/backend/theme.xml b/app/design/adminhtml/Magento/backend/theme.xml
index 47c6a489a979b7b8ad99ed3c7d236ce2d3c2aada..64ebbfbdf481f9385f3aa0cb66036010e5679fa4 100644
--- a/app/design/adminhtml/Magento/backend/theme.xml
+++ b/app/design/adminhtml/Magento/backend/theme.xml
@@ -6,5 +6,4 @@
 -->
 <theme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../lib/internal/Magento/Framework/Config/etc/theme.xsd">
     <title>Magento 2 backend</title>
-    <version>0.1.0</version>
 </theme>
diff --git a/app/design/adminhtml/Magento/backend/web/css/source/icons.less b/app/design/adminhtml/Magento/backend/web/css/source/icons.less
new file mode 100644
index 0000000000000000000000000000000000000000..8c910fd5ee08d348e0b4725d928684546bc3236c
--- /dev/null
+++ b/app/design/adminhtml/Magento/backend/web/css/source/icons.less
@@ -0,0 +1,11 @@
+// /**
+//  * Copyright © 2015 Magento. All rights reserved.
+//  * See COPYING.txt for license details.
+//  */
+
+.font-face(
+    @family-name: @icon-font-name,
+    @font-path: @icon-font-path,
+    @font-weight: normal,
+    @font-style: normal
+);
diff --git a/app/design/adminhtml/Magento/backend/web/css/styles.less b/app/design/adminhtml/Magento/backend/web/css/styles.less
index cc2c14c5cf9d51afc9980a6c0513fae0173922ac..f5b4a53888e70bd420310e9c958c06a469f256f8 100644
--- a/app/design/adminhtml/Magento/backend/web/css/styles.less
+++ b/app/design/adminhtml/Magento/backend/web/css/styles.less
@@ -1,5 +1,4 @@
 /**
- * @category    design
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
@@ -13,6 +12,7 @@
 @import "../less/styles/vars.less";
 @import "source/theme"; // import theme styles
 @import "source/table"; // import theme styles
+@import "source/icons";
 
 @baseDir: "../"; //default
 
diff --git a/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansBlack-webfont.eot b/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansBlack-webfont.eot
deleted file mode 100644
index ff6a97e9ddf5f08b1d7a94e4395af25df88ba01f..0000000000000000000000000000000000000000
Binary files a/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansBlack-webfont.eot and /dev/null differ
diff --git a/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansBlack-webfont.svg b/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansBlack-webfont.svg
deleted file mode 100644
index 6c5ffea8d6a9231c4d9f8156e97f9d4b55d8a766..0000000000000000000000000000000000000000
--- a/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansBlack-webfont.svg
+++ /dev/null
@@ -1,244 +0,0 @@
-<?xml version="1.0" standalone="no"?>
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
-<svg xmlns="http://www.w3.org/2000/svg">
-<metadata>
-This is a custom SVG webfont generated by Fontspring.
-</metadata>
-<defs>
-<font id="webfont85gDAx2H" horiz-adv-x="1648" >
-<font-face units-per-em="2048" ascent="1536" descent="-512" />
-<missing-glyph horiz-adv-x="491" />
-<glyph unicode=" "  horiz-adv-x="491" />
-<glyph unicode="&#x09;" horiz-adv-x="491" />
-<glyph unicode="&#xa0;" horiz-adv-x="491" />
-<glyph unicode="!" horiz-adv-x="598" d="M119 152q0 74 52 127t124 53q74 0 126 -53.5t52 -126.5q0 -72 -52 -124.5t-126 -52.5q-72 0 -124 52.5t-52 124.5zM129 1391h354l-59 -895h-240z" />
-<glyph unicode="&#x22;" horiz-adv-x="835" d="M106 788v578h261v-76l-84 -502h-177zM504 788v578h262v-76l-88 -502h-174z" />
-<glyph unicode="#" horiz-adv-x="1443" d="M68 215l22 160h283l57 272h-278l24 158h287l78 379h166l-78 -379h280l78 379h166l-78 -379h301l-24 -158h-310l-55 -272h305l-22 -160h-316l-80 -397h-167l79 397h-276l-82 -397h-168l82 397h-274zM541 375h278l58 272h-281z" />
-<glyph unicode="$" horiz-adv-x="993" d="M70 82l61 250q12 -10 33.5 -25.5t101.5 -43t170 -34.5l6 234q-180 61 -270 146t-90 208q0 127 93 223.5t286 116.5l6 182h104l-6 -176q90 0 170 -15t115 -30l35 -16l-78 -240q-90 47 -248 56l-6 -232q203 -66 287 -144.5t84 -195.5q0 -143 -102.5 -240.5t-286.5 -115.5 l-5 -172h-104l4 166q-213 6 -356 96zM346 831q0 -70 105 -110l4 197q-109 -11 -109 -87zM541 229q109 12 108 90q0 41 -25.5 65t-76.5 44z" />
-<glyph unicode="%" horiz-adv-x="1603" d="M63 1049q0 139 98.5 233t252 94t252 -94t98.5 -233q0 -141 -98.5 -237.5t-252 -96.5t-252 96.5t-98.5 237.5zM246 0l979 1407l110 -74l-923 -1333h-166zM254 1049q0 -63 43 -110.5t116.5 -47.5t116.5 47t43 111q0 61 -43 109t-116.5 48t-116.5 -48t-43 -109zM838 307 q0 139 98 234.5t251.5 95.5t253 -95.5t99.5 -234.5t-99.5 -235.5t-253 -96.5t-251.5 96.5t-98 235.5zM1030 307.5q0 -63.5 42 -109.5t116 -46t118 46t44 109q0 61 -43 108.5t-117 47.5t-117 -46t-43 -109.5z" />
-<glyph unicode="&#x26;" horiz-adv-x="1468" d="M61 350q0 227 258 365q-90 162 -90 311q0 152 102.5 258.5t305.5 106.5q188 0 292.5 -93.5t104.5 -250.5q0 -143 -81 -232.5t-222 -159.5q16 -20 27 -28q100 -113 200 -207q150 199 177 518h274q-43 -424 -252 -686q137 -106 250 -146l-100 -192q-147 18 -355 158 q-160 -96 -370 -97q-94 0 -180.5 19.5t-166 60.5t-127 117t-47.5 178zM346 362q0 -70 58.5 -110.5t160.5 -40.5q92 0 166 31q-141 123 -248 247q-2 2 -8 9.5t-11 14.5t-7 11q-111 -70 -111 -162zM532 1026q0 -82 60 -182q178 86 178 196q0 51 -31.5 83t-85.5 32 q-121 0 -121 -129z" />
-<glyph unicode="'" horiz-adv-x="442" d="M106 788v578h283v-76l-141 -502h-142z" />
-<glyph unicode="(" horiz-adv-x="638" d="M82 553q0 150 32.5 297t80 249.5t94.5 184.5t80 121l32 41l209 -72l-32 -40q-20 -26 -71.5 -109.5t-90.5 -173.5t-72 -226.5t-33 -271.5q0 -150 32 -294t77 -244.5t90 -179.5t76 -118l32 -39l-206 -79q-14 14 -36 42.5t-79 125t-100 201t-79 264t-36 321.5z" />
-<glyph unicode=")" horiz-adv-x="638" d="M18 -322l34 40q22 26 75 114t93 183.5t74 241.5t34 296q0 135 -31 270t-75 230.5t-89 170t-76 111.5l-30 39l211 72q12 -14 33.5 -42t76.5 -118t97 -188.5t77 -247t35 -297.5q0 -162 -34 -320.5t-82 -268t-97 -195.5t-82 -129l-35 -41z" />
-<glyph unicode="*" horiz-adv-x="1048" d="M68 854l323 84l47 -82l-233 -240zM68 1065l137 238l233 -240l-47 -80zM387 510l90 324h92l93 -324h-275zM387 1409h275l-93 -324h-92zM608 856l47 82l324 -84l-137 -238zM608 1063l234 240l137 -238l-324 -82z" />
-<glyph unicode="+" horiz-adv-x="1064" d="M43 436v185h395v409h191v-409h385v-185h-385v-436h-191v436h-395z" />
-<glyph unicode="," horiz-adv-x="530" d="M45 -311l83 81.5t50.5 77t26.5 111.5q0 53 -26.5 108.5t-106.5 178.5l268 86q100 -150 100 -283q0 -213 -293 -467z" />
-<glyph unicode="-" horiz-adv-x="792" d="M102 442v170h588v-170h-588z" />
-<glyph unicode="." horiz-adv-x="534" d="M90 152q0 74 52.5 127t123.5 53q74 0 126 -53.5t52 -126.5q0 -72 -52 -124.5t-126 -52.5q-72 0 -124 52.5t-52 124.5z" />
-<glyph unicode="/" horiz-adv-x="964" d="M37 -401l682 1767h188l-680 -1767h-190z" />
-<glyph unicode="0" horiz-adv-x="1157" d="M76 479q0 207 135 366t377 159q229 0 364 -146.5t135 -345.5q0 -131 -56 -251t-176 -203t-280 -83q-233 0 -366 149.5t-133 354.5zM354 489q0 -113 54.5 -195.5t173.5 -82.5q115 0 170 83t55 195q0 117 -54.5 198t-168.5 81q-121 0 -175.5 -81t-54.5 -198z" />
-<glyph unicode="1" horiz-adv-x="950" d="M98 0v233h262v492h-258v254h562v-746h237v-233h-803z" />
-<glyph unicode="2" horiz-adv-x="974" d="M72 874q16 14 47 36t129 58t196 36q172 0 276.5 -93.5t104.5 -234.5q0 -88 -49 -174t-104.5 -139.5t-149.5 -131.5h389v-231h-835l6 168q16 12 46 32.5t102.5 79t129 112.5t102.5 122t46 117q0 55 -32 88t-97 33q-41 0 -88 -17.5t-74 -34.5l-29 -16z" />
-<glyph unicode="3" horiz-adv-x="856" d="M12 870q18 14 51 37t131.5 60t196.5 37q160 0 265.5 -84t105.5 -213q0 -199 -252 -340q135 -37 209 -126t74 -204q0 -203 -198 -326t-478 -123q-45 0 -66 2l-24 232q53 -4 82 -4q156 0 261 60.5t105 162.5q0 164 -285 164h-32v221q109 4 198.5 71.5t89.5 153.5 q0 49 -31.5 75t-80.5 26q-39 0 -87 -19.5t-77 -38.5l-29 -18z" />
-<glyph unicode="4" horiz-adv-x="1124" d="M45 12v203l510 760h342v-744h176v-219h-176v-407h-297v407h-555zM332 231h268v435z" />
-<glyph unicode="5" horiz-adv-x="854" d="M68 -176q51 -6 100 -6q143 0 232 52t89 165q0 66 -32.5 114t-95 77.5t-126 45t-153.5 29.5v678h661v-231h-366v-254q430 -106 430 -435q0 -225 -178 -348t-467 -123q-45 0 -68 2z" />
-<glyph unicode="6" horiz-adv-x="1083" d="M66 563q0 156 53 299.5t153.5 260t261 188t361.5 80.5l18 -238q-422 -31 -516 -365q94 115 244 115q174 0 281.5 -127t107.5 -309q0 -199 -128 -345.5t-347 -146.5q-236 0 -362.5 170t-126.5 418zM373 567q6 -356 194 -356q72 0 113 62.5t41 164.5q0 221 -156 221 q-100 0 -192 -92z" />
-<glyph unicode="7" horiz-adv-x="972" d="M43 717v262h895v-172q-229 -578 -565 -1233l-299 59q324 610 512 1084h-543z" />
-<glyph unicode="8" horiz-adv-x="1064" d="M78 334q0 121 62.5 205t170.5 153q-186 141 -186 322q0 156 115.5 266.5t306.5 110.5q168 0 291 -90.5t123 -253.5q0 -186 -195 -328q104 -68 162.5 -144.5t58.5 -185.5q0 -166 -130 -290t-341 -124q-170 0 -304 89.5t-134 269.5zM340 354q0 -63 46 -108t118 -45 q76 0 129 48t53 111q0 53 -45 100.5t-131 100.5q-170 -105 -170 -207zM430 1042q0 -106 135 -198q127 82 127 188q0 57 -32.5 95t-102.5 38q-72 0 -99.5 -38t-27.5 -85z" />
-<glyph unicode="9" horiz-adv-x="1110" d="M80 506q0 197 130 347.5t351 150.5q236 0 364 -170t128 -418q0 -156 -53.5 -300.5t-154 -260t-262 -188.5t-362.5 -81l-18 238q442 35 520 383q-92 -123 -256 -123q-170 0 -278.5 124t-108.5 298zM389 530q0 -80 35 -140t123 -60q63 0 117.5 31.5t78.5 58.5 q-4 152 -56 250t-144 98q-74 0 -114 -63.5t-40 -174.5z" />
-<glyph unicode=":" horiz-adv-x="577" d="M113 152q0 74 51 127t124.5 53t126 -53.5t52.5 -126.5q0 -72 -52.5 -124.5t-126 -52.5t-124.5 52.5t-51 124.5zM113 795q0 74 51 127t124.5 53t126 -53.5t52.5 -126.5q0 -72 -52.5 -124.5t-126 -52.5t-124.5 52.5t-51 124.5z" />
-<glyph unicode=";" horiz-adv-x="571" d="M66 -311q59 57 82.5 81.5t50 77t26.5 111.5q0 53 -26.5 108.5t-106.5 178.5l268 86q100 -150 101 -283q0 -213 -293 -467zM109 795q0 74 52 127t124 53q74 0 126 -53.5t52 -126.5q0 -72 -52.5 -124.5t-125.5 -52.5q-72 0 -124 52.5t-52 124.5z" />
-<glyph unicode="&#x3c;" horiz-adv-x="1064" d="M47 479v94l873 469l47 -186l-650 -330l650 -350l-47 -184z" />
-<glyph unicode="=" horiz-adv-x="1064" d="M90 252v180h885v-180h-885zM90 594v180h885v-180h-885z" />
-<glyph unicode="&#x3e;" horiz-adv-x="1064" d="M100 176l648 350l-648 330l47 186l873 -469v-94l-873 -487z" />
-<glyph unicode="?" horiz-adv-x="825" d="M82 1206l70 271q12 -4 33.5 -10.5t85 -30t121 -49t127 -67.5t119.5 -86t85 -103.5t35 -120.5q0 -68 -46 -137.5t-101.5 -120t-101.5 -120t-46 -136.5h-250q-2 20 -2 34q0 74 32.5 147t72.5 119t73 93t33 76q0 55 -85 115.5t-169 93.5zM166 152q0 74 51 127t125 53 t126 -53.5t52 -126.5q0 -72 -52 -124.5t-126 -52.5t-125 52.5t-51 124.5z" />
-<glyph unicode="@" horiz-adv-x="1822" d="M70 391q0 166 65.5 319.5t179 269.5t282.5 185.5t364 69.5q342 0 560 -194.5t218 -487.5q0 -141 -57.5 -264t-174.5 -193q-68 -41 -216 -73.5t-195 -47.5q-23 88 -41 146q-29 -57 -102.5 -101.5t-157.5 -44.5q-131 0 -219.5 106.5t-88.5 280.5q0 242 167 388.5t409 146.5 q43 0 92 -5t78 -11l29 -4v-486l18 -176q117 2 178.5 95t61.5 227q0 217 -150.5 367.5t-406.5 150.5q-293 0 -479.5 -194.5t-186.5 -457.5q0 -250 170 -410.5t381 -172.5l-35 -199q-317 23 -530 239t-213 531zM764 365q0 -172 94 -172q59 0 121 83v420q-94 0 -154.5 -96 t-60.5 -235z" />
-<glyph unicode="A" horiz-adv-x="1320" d="M2 0l508 1376h301l508 -1376h-322l-86 246h-510l-86 -246h-313zM494 512h325l-164 463z" />
-<glyph unicode="B" horiz-adv-x="1255" d="M154 0v1366h510q244 0 353 -95t109 -233q0 -162 -165 -286q88 -47 155.5 -134.5t67.5 -220.5q0 -180 -130 -288.5t-337 -108.5h-563zM471 264h215q168 0 168 152q0 66 -42 105.5t-126 39.5h-215v-297zM471 815h262q63 45 64 141q0 145 -164 146h-162v-287z" />
-<glyph unicode="C" horiz-adv-x="1384" d="M70 653q0 317 212 527.5t566 210.5q295 0 471 -103l12 -8l-117 -264q-14 10 -41.5 26.5t-125 44t-207.5 27.5q-203 0 -327 -115.5t-124 -316.5q0 -207 129 -318.5t313 -111.5q111 0 209.5 29.5t141.5 58.5l43 31l129 -230q-6 -6 -19.5 -17t-62.5 -40t-105.5 -50.5 t-151.5 -40t-202 -18.5q-315 0 -529 179.5t-214 498.5z" />
-<glyph unicode="D" horiz-adv-x="1497" d="M154 0v1366h526q143 0 271 -36t236.5 -111.5t172 -207.5t63.5 -306q0 -336 -224 -520.5t-597 -184.5h-448zM471 264h111q260 0 386 119t126 313q0 186 -112 296t-331 110h-180v-838z" />
-<glyph unicode="E" horiz-adv-x="1134" d="M154 0v1366h893v-264h-576v-277h455v-268h-455v-293h602v-264h-919z" />
-<glyph unicode="F" horiz-adv-x="1105" d="M154 0v1366h899v-264h-582v-291h461v-262h-461v-549h-317z" />
-<glyph unicode="G" horiz-adv-x="1456" d="M66 657q0 305 217 519.5t583 214.5q127 0 245 -25t171 -49l55 -25l-116 -266q-156 88 -365 88q-219 0 -344 -124t-125 -316q0 -201 135 -311.5t332 -110.5l193 14v240h-265v266h576v-737q-317 -59 -524 -60q-334 0 -551 187.5t-217 494.5z" />
-<glyph unicode="H" horiz-adv-x="1570" d="M154 0v1366h317v-535h631v535h315v-1366h-315v563h-631v-563h-317z" />
-<glyph unicode="I" horiz-adv-x="626" d="M154 0v1366h317v-1366h-317z" />
-<glyph unicode="J" horiz-adv-x="624" d="M-115 -127q270 20 271 393v1100h317v-1090q0 -131 -20.5 -233t-71.5 -197.5t-153.5 -158t-254.5 -82.5z" />
-<glyph unicode="K" horiz-adv-x="1327" d="M154 0v1366h317v-516h43l410 516h393l-543 -637l574 -729h-400l-434 582h-43v-582h-317z" />
-<glyph unicode="L" horiz-adv-x="1097" d="M154 0v1366h317v-1102h596v-264h-913z" />
-<glyph unicode="M" horiz-adv-x="1824" d="M129 0l51 1366h453l282 -850l283 850h449l49 -1366h-307l-35 1016l-346 -1016h-201l-338 999l-33 -999h-307z" />
-<glyph unicode="N" horiz-adv-x="1529" d="M154 0v1366h321l590 -874v874h311v-1366h-325l-586 874v-874h-311z" />
-<glyph unicode="O" d="M66 680q0 182 85 341t262 264.5t414 105.5q342 0 549 -198t207 -484q0 -295 -215 -514.5t-559 -219.5q-225 0 -397 100.5t-259 259.5t-87 345zM395 686q0 -174 110.5 -309t309.5 -135t317.5 133t118.5 317q0 178 -112.5 305t-313 127t-315.5 -128t-115 -310z" />
-<glyph unicode="P" horiz-adv-x="1226" d="M154 0v1366h522q252 0 383 -128t131 -325q0 -221 -146.5 -353t-367.5 -132h-205v-428h-317zM471 692h158q115 0 173 55.5t58 151.5q0 203 -231 203h-158v-410z" />
-<glyph unicode="Q" d="M63 680q0 135 51.5 260t144.5 226.5t241.5 163t328.5 61.5q342 0 547 -198t205 -484q0 -229 -136 -422t-370 -271q39 -51 73 -84.5t93 -71.5t142 -55q66 -13 148 -13q20 0 42 1l-47 -282q-9 0 -18 -1q-127 0 -232 28q-113 30 -189.5 83t-119.5 94t-90 97q-10 14 -17 20 l-61 72q-20 25 -60.5 49t-74.5 33q-279 55 -440 246.5t-161 447.5zM395 686q0 -180 110.5 -316.5t309.5 -136.5t317.5 136.5t118.5 320.5q0 182 -112.5 308t-315.5 126q-201 0 -314.5 -128t-113.5 -310z" />
-<glyph unicode="R" horiz-adv-x="1333" d="M154 0v1366h508q254 0 383 -119t129 -311q0 -252 -211 -369l370 -567h-377l-305 481h-180v-481h-317zM471 743h113q147 0 203.5 48.5t56.5 136.5q0 174 -232 174h-141v-359z" />
-<glyph unicode="S" horiz-adv-x="1062" d="M72 90l92 277l45 -33q29 -20 114 -53t166 -33q84 0 133.5 31.5t49.5 85.5q0 55 -60.5 102t-145.5 88t-170 90t-145.5 134t-60.5 198q0 172 131 293t352 121q88 0 183.5 -15.5t148.5 -32.5l51 -14l-43 -280q-166 70 -329 69q-84 0 -129 -28.5t-45 -77.5q0 -55 60 -101.5 t145 -85.5t170 -88t145.5 -137t60.5 -207q0 -188 -141 -303t-350 -115q-233 0 -418 109z" />
-<glyph unicode="T" horiz-adv-x="1239" d="M35 1102v264h1169v-264h-422v-1102h-317v1102h-430z" />
-<glyph unicode="U" horiz-adv-x="1449" d="M139 522v844h318v-819q0 -305 270 -305q127 0 199.5 78.5t72.5 218.5v827h316v-815q0 -270 -167 -423t-423 -153q-262 0 -424 133t-162 414z" />
-<glyph unicode="V" horiz-adv-x="1259" d="M2 1366h336l295 -891l299 891h325l-477 -1376h-301z" />
-<glyph unicode="W" horiz-adv-x="2013" d="M29 1366h327l262 -946l277 946h231l277 -938l258 938h321l-405 -1376h-324l-252 815l-241 -815h-324z" />
-<glyph unicode="X" horiz-adv-x="1306" d="M20 0l445 676l-445 690h373l262 -430l267 430h362l-442 -682l442 -684h-375l-262 428l-260 -428h-367z" />
-<glyph unicode="Y" horiz-adv-x="1284" d="M-10 1366h372l279 -502l295 502h358l-493 -807v-559h-318v557z" />
-<glyph unicode="Z" horiz-adv-x="1196" d="M74 0v197l608 905h-586v264h998v-197l-598 -905h626v-264h-1048z" />
-<glyph unicode="[" horiz-adv-x="598" d="M141 -340v1706h432v-162h-225v-1382h225v-162h-432z" />
-<glyph unicode="\" horiz-adv-x="978" d="M57 1366h201l682 -1767h-203z" />
-<glyph unicode="]" horiz-adv-x="591" d="M16 -209h228v1442h-228v133h435v-1706h-435v131z" />
-<glyph unicode="^" horiz-adv-x="937" d="M-53 512l438 879h166l438 -879h-203l-319 647l-322 -647h-198z" />
-<glyph unicode="_" horiz-adv-x="1040" d="M10 -76h1024v-151h-1024v151z" />
-<glyph unicode="`" horiz-adv-x="1052" d="M268 1456h283l215 -332l-162 -82z" />
-<glyph unicode="a" horiz-adv-x="1034" d="M43 229q0 287 541 359v35q0 61 -24.5 89.5t-82.5 28.5q-156 0 -305 -110l-6 -4l-66 211q18 14 54 34.5t154 55.5t245 35q188 0 264 -75t76 -235v-329q0 -84 90 -97l16 -2l-86 -239h-6q-206 0 -286 133q-16 -29 -44 -57.5t-92.5 -57.5t-146.5 -29q-133 0 -214 70.5 t-81 183.5zM354 258q0 -70 68 -70q82 0 162 101v139q-230 -35 -230 -170z" />
-<glyph unicode="b" horiz-adv-x="1107" d="M106 39v1384l312 50v-582q88 72 217 72q201 0 307.5 -130.5t106.5 -330.5q0 -227 -139.5 -377t-422.5 -150q-92 0 -187 16.5t-144 33.5zM418 201q33 -18 88 -19q102 0 164.5 80t62.5 227q0 117 -47 181.5t-121 64.5q-76 0 -147 -49v-485z" />
-<glyph unicode="c" horiz-adv-x="966" d="M53 446q0 211 150.5 364t380.5 153q96 0 183 -22.5t126 -47.5l41 -23l-103 -221q-96 84 -210 84q-106 0 -178 -67.5t-72 -200.5q0 -123 63.5 -191.5t165.5 -68.5q61 0 121.5 23.5t89.5 45.5l29 23l94 -203q-12 -12 -37 -32.5t-117 -53.5t-202 -33q-238 0 -381.5 135 t-143.5 336z" />
-<glyph unicode="d" horiz-adv-x="1118" d="M59 440q0 135 51.5 252t162 194t259.5 77q88 0 160 -27v487l309 50v-1188q0 -49 11.5 -121t21.5 -119l10 -45l-286 -14q-18 66 -29 133q-98 -143 -276.5 -143.5t-286 133.5t-107.5 331zM377 459q0 -123 40 -193.5t115 -70.5q88 0 160 96v352q-6 96 -123 96 q-90 0 -141 -70.5t-51 -209.5z" />
-<glyph unicode="e" horiz-adv-x="1017" d="M59 465q0 211 131.5 354.5t341.5 143.5q186 0 299 -123t115 -363l-162 -45l-409 -53q53 -174 223 -174q139 0 285 108l4 4l80 -213q-18 -14 -52 -35.5t-141.5 -57.5t-216.5 -36q-236 0 -367 141.5t-131 348.5zM360 541l261 34q0 6 -1.5 17.5t-8.5 40.5t-17 50.5 t-33.5 38.5t-54.5 17q-63 0 -101.5 -54t-44.5 -144z" />
-<glyph unicode="f" horiz-adv-x="770" d="M37 723v170l145 49v66q0 238 137.5 373t348.5 135q82 0 156.5 -20.5t107.5 -41.5l33 -18l-97 -228q-86 66 -192 66q-182 0 -182 -242v-94h245v-215h-245v-723h-312v723h-145z" />
-<glyph unicode="g" horiz-adv-x="1062" d="M39 -250q0 131 215 260q-76 31 -107.5 63.5t-31.5 82.5q0 109 147 196q-92 43 -141 118t-49 167q0 152 125 239t301 87q66 0 145.5 -19.5t130.5 -19.5h127l129 20l14 -207h-94q-14 0 -71 8q55 -63 55 -139q0 -131 -134 -213t-317 -82q-37 0 -53 2q-57 -39 -57 -59 q0 -16 35.5 -29.5t140.5 -44.5l129 -37q70 -20 113 -36.5t102 -48t90 -80t31 -109.5q0 -141 -152.5 -247.5t-382.5 -106.5q-178 0 -309 64.5t-131 170.5zM309 -190q0 -90 187 -91q100 0 167.5 27t67.5 70q0 18 -11 32.5t-44 27.5t-60 22l-88 26l-98 27q-121 -75 -121 -141z M356 633q0 -45 38 -85t104 -40q63 0 104 39t41 88q0 47 -36 88t-103 41q-70 0 -109 -43t-39 -88z" />
-<glyph unicode="h" horiz-adv-x="1107" d="M115 0v1423l311 50v-670q137 160 317 160q262 0 263 -304v-659h-310v514q0 102 -16 141t-59 39q-80 0 -195 -123v-571h-311z" />
-<glyph unicode="i" horiz-adv-x="540" d="M96 1286q0 74 47 118t125 44t126 -44t48 -118t-48 -118t-126 -44t-125 44t-47 118zM115 0v938h311v-938h-311z" />
-<glyph unicode="j" horiz-adv-x="540" d="M-150 -250q121 16 193 84t72 229v875h311v-875q0 -250 -136 -385t-347 -163zM94 1286q0 74 47 118t125 44t126 -44t48 -118t-48 -118t-126 -44t-125 44t-47 118z" />
-<glyph unicode="k" horiz-adv-x="1122" d="M115 0v1423l311 50v-836h35l272 301h389l-395 -408l401 -530h-376l-295 412h-31v-412h-311z" />
-<glyph unicode="l" horiz-adv-x="540" d="M115 0v1423l311 50v-1473h-311z" />
-<glyph unicode="m" horiz-adv-x="1679" d="M111 0v913l295 48v-166q160 168 323 168q201 0 250 -172q156 172 332 172q266 0 266 -304v-659h-309v561q0 76 -18.5 104.5t-63.5 28.5q-78 0 -191 -112v-582h-311v561q0 76 -19.5 104.5t-58.5 28.5q-76 0 -184 -114v-580h-311z" />
-<glyph unicode="n" horiz-adv-x="1103" d="M111 0v913l295 48v-168q147 170 333 170q262 0 262 -304v-659h-311v514q0 102 -12 141t-62 39q-82 0 -194 -116v-578h-311z" />
-<glyph unicode="o" horiz-adv-x="1171" d="M57 467q0 92 29 177t89.5 157.5t165.5 117t245 44.5q260 0 396 -139.5t136 -338.5q0 -88 -28.5 -173t-88 -162.5t-168 -126t-251.5 -48.5q-254 0 -389.5 142.5t-135.5 349.5zM375 479q0 -113 56 -198.5t153 -85.5q90 0 153.5 74.5t63.5 191.5q0 111 -56.5 195.5 t-156.5 84.5q-90 0 -151.5 -72.5t-61.5 -189.5z" />
-<glyph unicode="p" horiz-adv-x="1116" d="M111 -485v1398l297 48v-154q78 156 260 156q180 0 285.5 -133.5t105.5 -329.5q0 -213 -124 -369t-351 -156q-113 0 -162 31v-442zM422 258q0 -25 29.5 -43t83.5 -18q86 0 146 72.5t60 211.5q0 115 -41 181.5t-100 66.5q-96 0 -178 -127v-344z" />
-<glyph unicode="q" horiz-adv-x="1110" d="M59 430q0 225 138.5 379t392.5 154q76 0 178 -14.5t168 -28.5l65 -15v-1341l-311 -49v530q-78 -70 -213 -70q-205 0 -311.5 130t-106.5 325zM375 453q0 -115 47 -179.5t118.5 -64.5t149.5 45v479q-51 20 -96 21q-94 0 -156.5 -80t-62.5 -221z" />
-<glyph unicode="r" horiz-adv-x="784" d="M111 0v913l295 48v-197q127 199 284 199q23 0 43.5 -4.5t28.5 -8.5l8 -2l-41 -289q-45 18 -94 19q-109 0 -213 -131v-547h-311z" />
-<glyph unicode="s" horiz-adv-x="868" d="M55 57l62 248l35 -27q23 -17 95 -45t148 -28q113 0 113 57q0 29 -44 52.5t-107.5 47t-126 56.5t-106.5 94t-44 145q0 127 103.5 216.5t316.5 89.5q78 0 148.5 -12.5t101.5 -24.5l32 -15l-57 -247q-94 70 -236 69q-104 0 -104 -55q0 -29 44 -53.5t106.5 -48t126 -56.5 t107.5 -93t44 -142q0 -135 -110.5 -222.5t-307.5 -87.5q-94 0 -179 20.5t-122 41.5z" />
-<glyph unicode="t" horiz-adv-x="854" d="M33 723v168l164 51v221l297 56v-281h278v-215h-276v-377q0 -121 86 -121q63 0 172 76l86 -219q-16 -12 -45 -29.5t-117 -47.5t-172 -30q-145 0 -233.5 78t-88.5 217v453h-151z" />
-<glyph unicode="u" horiz-adv-x="1112" d="M104 258v680h312v-557q0 -76 17.5 -108.5t60.5 -32.5q78 0 188 104v594h311v-653l41 -279l-299 -26q-16 84 -26 151q-160 -156 -342 -156q-117 0 -190 71t-73 212z" />
-<glyph unicode="v" horiz-adv-x="997" d="M0 938h324l176 -541l186 541h313l-364 -942h-277z" />
-<glyph unicode="w" horiz-adv-x="1601" d="M18 938h314l157 -592l183 592h260l196 -594l144 594h307l-274 -942h-301l-199 561l-180 -561h-303z" />
-<glyph unicode="x" horiz-adv-x="1017" d="M14 0l322 467l-322 471h348l150 -236l156 236h333l-321 -463l321 -475h-337l-158 240l-158 -240h-334z" />
-<glyph unicode="y" horiz-adv-x="995" d="M-4 938h317l191 -592l184 592h309l-374 -1004q-59 -158 -199.5 -281.5t-323.5 -137.5l-92 239q106 8 200.5 64.5t127.5 136.5l22 53z" />
-<glyph unicode="z" horiz-adv-x="942" d="M68 0v190l393 517h-377v231h774v-190l-401 -517h415v-231h-804z" />
-<glyph unicode="{" horiz-adv-x="684" d="M16 459v157q39 2 71 15.5t53.5 42t37 56.5t25.5 77t15 84t8 97.5t3 97.5v104q0 166 123 247t328 81v-152q-51 -4 -87 -12t-62.5 -16.5t-42 -28t-25.5 -34.5t-15.5 -51t-6.5 -61.5t-3 -81.5q-4 -186 -31.5 -297.5t-67.5 -161t-110 -81.5v-4q104 -49 152.5 -173t56.5 -391 q2 -76 5 -107.5t15.5 -72.5t38 -55t68.5 -28.5t115 -20.5v-152q-264 0 -357.5 94.5t-93.5 339.5q0 478 -213 488z" />
-<glyph unicode="|" horiz-adv-x="487" d="M139 -461v1995h209v-1995h-209z" />
-<glyph unicode="}" horiz-adv-x="684" d="M6 -311q59 6 97 13t66 25.5t41 34t21.5 52t9.5 66.5l3 93q8 274 59 395t154 169v4q-109 49 -157 161.5t-56 378.5q-2 92 -6.5 131t-28 78t-70.5 53.5t-133 22.5v152q250 0 348.5 -93.5t98.5 -345.5q0 -459 215 -463v-157q-27 0 -51.5 -9.5t-56.5 -40t-54.5 -80.5 t-37.5 -143.5t-15 -218.5q0 -242 -92.5 -336t-354.5 -94v152z" />
-<glyph unicode="~" horiz-adv-x="1187" d="M100 336q0 184 78 273t219 89q82 0 142.5 -29.5t90 -65.5t69.5 -65.5t83 -29.5q70 0 98.5 57.5t28.5 124.5h187q0 -184 -78 -273t-219 -89q-82 0 -142.5 29.5t-90 65.5t-69.5 65.5t-83 29.5q-70 0 -98.5 -57.5t-28.5 -124.5h-187z" />
-<glyph unicode="&#xa1;" horiz-adv-x="610" d="M129 -455l59 895h240l55 -895h-354zM139 784q0 72 52.5 124.5t125.5 52.5q72 0 124.5 -52.5t52.5 -124.5q0 -74 -52.5 -127t-124.5 -53q-74 0 -126 53t-52 127z" />
-<glyph unicode="&#xa2;" horiz-adv-x="999" d="M66 569q0 180 122.5 307.5t341.5 139.5l9 182h104l-10 -184q188 -20 293 -111l-146 -186q-63 49 -157 61l-21 -405q51 6 105.5 26.5t83.5 38.5l26 17l92 -203q-12 -12 -34.5 -29.5t-104.5 -49.5t-178 -38l-6 -180h-103l9 180q-197 14 -311.5 137t-114.5 297zM365 580 q0 -78 35.5 -131.5t101.5 -69.5l18 397q-155 -30 -155 -196z" />
-<glyph unicode="&#xa3;" horiz-adv-x="1148" d="M70 135q14 6 36.5 17.5t62.5 57.5t46 101l21 178h-123v127h137l18 162q20 180 129 288t295 108q195 0 320 -109l8 -8l-146 -185q-76 72 -174 72q-59 0 -92 -37t-45 -135l-16 -156h325l-16 -127h-321q-8 -72 -23.5 -135t-28.5 -92l-12 -29q80 -49 199 -49q190 0 202 164 h209q-20 -184 -96 -291.5t-250 -107.5q-92 0 -216 46t-189 46q-70 0 -219 -41z" />
-<glyph unicode="&#xa5;" horiz-adv-x="1171" d="M70 1149h317l199 -395l200 395h308l-252 -463h211v-127h-281l-35 -63v-88h316v-127h-316v-281h-309v281h-295v127h295v86l-37 65h-258v127h189z" />
-<glyph unicode="&#xa6;" horiz-adv-x="471" d="M131 -362v733h209v-733h-209zM131 688v733h209v-733h-209z" />
-<glyph unicode="&#xa7;" horiz-adv-x="1013" d="M57 -379l62 152q141 -96 301 -97q111 0 168 82t57 211q0 47 -10 109l-103 573q-23 113 -22 209q0 135 53 209l160 -22q-35 -76 -35 -189q0 -53 10 -115l113 -649q12 -68 12 -135q0 -193 -100 -318.5t-299 -125.5q-94 0 -185.5 26.5t-136.5 52.5zM168 946q0 193 100.5 319 t296.5 126q94 0 186.5 -27t137.5 -53l45 -27l-62 -151q-141 96 -303 96q-109 0 -166 -82t-57 -211q0 -47 10 -109l107 -573q20 -102 20 -209q0 -135 -51 -209l-160 23q35 82 35 188q0 53 -10 115l-117 649q-12 67 -12 135z" />
-<glyph unicode="&#xa8;" horiz-adv-x="1052" d="M135 1282q0 70 41 109t112.5 39t112.5 -39t41 -109t-41 -107.5t-112.5 -37.5t-112.5 37.5t-41 107.5zM610 1282q0 70 41 109t113 39t113 -39t41 -109t-41 -107.5t-113 -37.5q-74 0 -114 37.5t-40 107.5z" />
-<glyph unicode="&#xa9;" horiz-adv-x="1556" d="M70 682q0 293 206.5 500t499.5 207t500 -207t207 -500t-207 -500t-500 -207t-499.5 207t-206.5 500zM190 682q0 -246 170 -421t416 -175q248 0 419 174t171 422t-171 422t-419 174q-246 0 -416 -175t-170 -421zM381 682q0 166 112.5 293t303.5 127q184 0 286 -113l11 -10 l-93 -143q-8 10 -23 26.5t-66.5 43t-108.5 26.5q-106 0 -163.5 -69.5t-57.5 -166.5q0 -106 61.5 -179t165.5 -73q131 4 225 99l56 -150q-10 -12 -31 -32.5t-97.5 -53.5t-166.5 -33q-180 0 -297 117t-117 291z" />
-<glyph unicode="&#xaa;" horiz-adv-x="813" d="M63 879q0 205 381 251v23q0 76 -73 76q-47 0 -102.5 -22.5t-88.5 -43.5l-30 -22l-48 159q14 10 40 24.5t112 39.5t178 25q137 0 191.5 -53.5t54.5 -161.5v-236q8 -63 74 -74l-56 -159q-170 0 -229 90q-70 -96 -186 -97q-98 0 -158 50.5t-60 130.5zM299 905 q0 -23 14.5 -37t36.5 -14q41 0 94 49v109q-145 -23 -145 -107z" />
-<glyph unicode="&#xab;" horiz-adv-x="1042" d="M25 510v8q31 25 206 225l177 203l157 -47l-284 -385l284 -385l-157 -47l-161 182l-107 121l-57 66q-26 29 -36 39t-22 20zM430 510v8q31 25 205 223l180 205l158 -47l-285 -385l285 -385l-158 -47l-163 182l-106 121l-58 66q-26 29 -36 39t-22 20z" />
-<glyph unicode="&#xac;" horiz-adv-x="1155" d="M88 633v180h954v-586h-188v406h-766z" />
-<glyph unicode="&#xad;" horiz-adv-x="792" d="M102 442v170h588v-170h-588z" />
-<glyph unicode="&#xae;" horiz-adv-x="854" d="M72 1087.5q0 145.5 104.5 250t249.5 104.5t249.5 -104.5t104.5 -250t-104.5 -250t-249.5 -104.5t-249.5 104.5t-104.5 250zM152 1087.5q0 -112.5 82.5 -198.5t191.5 -86t192.5 86t83.5 198.5t-83.5 197.5t-192.5 85t-191.5 -85t-82.5 -197.5zM295 918v348h123 q143 0 143 -105q0 -61 -57 -94l110 -149h-110l-88 126h-21v-126h-100zM395 1110h29q39 0 39 45q0 43 -53 43h-15v-88z" />
-<glyph unicode="&#xaf;" horiz-adv-x="937" d="M188 1171v179h562v-179h-562z" />
-<glyph unicode="&#xb0;" horiz-adv-x="630" d="M66 1144.5q0 102.5 72.5 174.5t177 72t177 -72t72.5 -174.5t-72.5 -174t-177 -71.5t-177 71.5t-72.5 174zM188 1145q0 -55 37 -92t90.5 -37t89 37t35.5 92t-35.5 91t-89 36t-90.5 -36t-37 -91z" />
-<glyph unicode="&#xb1;" horiz-adv-x="1064" d="M100 616v183h338v344h193v-344h330v-183h-330v-323h-193v323h-338zM121 0v182h829v-182h-829z" />
-<glyph unicode="&#xb2;" horiz-adv-x="724" d="M49 1499q12 12 36 30.5t98.5 50.5t152.5 32q129 0 213 -72t84 -188q0 -100 -66.5 -193.5t-204.5 -216.5h308v-172h-598l-19 139l70 62l74 65l62 59q44 42 62.5 64.5t43 56t34 61.5t9.5 52q0 82 -103 82q-39 0 -74.5 -14.5t-50.5 -28.5l-16 -14z" />
-<glyph unicode="&#xb3;" horiz-adv-x="692" d="M33 836l96 155q74 -55 162 -55q49 0 75.5 22.5t26.5 59.5q0 76 -127 76h-80v168q170 8 170 100q0 61 -75 61q-68 0 -129 -45l-95 144q14 10 38 25.5t97.5 40t147.5 24.5q123 0 190.5 -60.5t67.5 -144.5q0 -70 -45 -127t-98 -78q82 -16 131 -67.5t49 -122.5 q0 -102 -95.5 -181t-236.5 -79q-70 0 -137.5 21.5t-99.5 41.5z" />
-<glyph unicode="&#xb4;" horiz-adv-x="1095" d="M291 1124l213 332h280l-335 -414z" />
-<glyph unicode="&#xb5;" horiz-adv-x="1234" d="M121 -442q20 199 20 362v1018h308v-545q0 -86 18 -119.5t57 -33.5q78 0 195 104v594h309v-623q0 -84 22.5 -103t110.5 -19v-207q-96 -10 -151 -11q-248 0 -277 148q-152 -147 -332 -148q-29 0 -41 2q8 -86 38 -235.5t30 -183.5h-307z" />
-<glyph unicode="&#x3bc;" horiz-adv-x="1234" d="M121 -442q20 199 20 362v1018h308v-545q0 -86 18 -119.5t57 -33.5q78 0 195 104v594h309v-623q0 -84 22.5 -103t110.5 -19v-207q-96 -10 -151 -11q-248 0 -277 148q-152 -147 -332 -148q-29 0 -41 2q8 -86 38 -235.5t30 -183.5h-307z" />
-<glyph unicode="&#xb6;" horiz-adv-x="1394" d="M59 864q0 203 155 352.5t431 149.5h660v-147h-152v-1219h-158v1219h-153v-1260q0 -444 -391 -444l-31 159q133 0 193.5 74t60.5 242v377h-19q-291 0 -443.5 145t-152.5 352z" />
-<glyph unicode="&#xb7;" horiz-adv-x="538" d="M92 524.5q0 71.5 52.5 124.5t123.5 53q74 0 127.5 -53t53.5 -124.5t-53.5 -124t-127.5 -52.5q-72 0 -124 52.5t-52 124z" />
-<glyph unicode="&#xb8;" horiz-adv-x="1052" d="M324 -422l51 123q74 -59 164 -59q41 0 66.5 13t25.5 33.5t-28 39t-60.5 31t-60 38t-27.5 60.5q0 37 30 92l27 51h137l-20 -41q-16 -43 -17 -49q0 -20 29 -35.5t63.5 -28t63.5 -46t29 -85.5q0 -88 -71 -144t-187 -56q-133 0 -215 63z" />
-<glyph unicode="&#xb9;" horiz-adv-x="681" d="M61 770v164h199v500h-182v163h403v-663h178v-164h-598z" />
-<glyph unicode="&#xba;" horiz-adv-x="892" d="M63 1042q0 139 95.5 243t287.5 104q186 0 284.5 -98.5t98.5 -235.5t-95 -247t-290 -110q-184 0 -282.5 100.5t-98.5 243.5zM307 1047q0 -74 37 -131.5t102 -57.5q59 0 99.5 50t40.5 130q0 76 -36 133.5t-99 57.5q-59 0 -101.5 -51t-42.5 -131z" />
-<glyph unicode="&#xbb;" horiz-adv-x="1042" d="M72 129l282 385l-282 385l157 47q348 -397 369 -416q6 -6 14 -12v-8q-12 -10 -22 -20.5l-36 -38.5l-57 -66l-107 -121l-161 -182zM477 129l285 385l-285 385l156 47l184 -209q172 -195 203 -219v-8q-12 -10 -22.5 -20.5t-35.5 -38.5l-59 -66l-107 -121l-163 -182z" />
-<glyph unicode="&#xbc;" horiz-adv-x="1777" d="M86 535v163h199v500h-183v164h404v-664h178v-163h-598zM475 0l819 1423l144 -65l-781 -1358h-182zM1024 319l307 510h275v-499h106v-164h-106v-166h-213v166h-349zM1200 330h193v315z" />
-<glyph unicode="&#xbd;" horiz-adv-x="1841" d="M84 535v163h199v500h-183v164h404v-664h178v-163h-598zM535 0l819 1423l143 -65l-780 -1358h-182zM1153 729q12 12 35.5 30.5t98.5 50.5t153 32q129 0 213 -72t84 -188q0 -100 -66.5 -193.5t-204.5 -216.5h308v-172h-598l-19 139l70 62l73 65l63 59q44 42 62.5 64.5 t43 56t33.5 61.5t9 52q0 82 -102 82q-39 0 -75 -14.5t-52 -28.5l-14 -14z" />
-<glyph unicode="&#xbe;" horiz-adv-x="1812" d="M66 600l96 156q74 -55 162 -56q49 0 75.5 22.5t26.5 59.5q0 76 -127 76h-80v168q170 8 170 100q0 61 -76 62q-68 0 -129 -45l-94 143q14 10 38 25.5t97.5 40t147.5 24.5q123 0 190.5 -60.5t67.5 -144.5q0 -70 -45 -127t-99 -77q82 -16 131.5 -67.5t49.5 -123.5 q0 -102 -95.5 -181t-236.5 -79q-70 0 -137.5 20.5t-100.5 41.5zM508 0l819 1423l143 -65l-780 -1358h-182zM1057 319l307 510h274v-499h107v-164h-107v-166h-213v166h-348zM1233 330h192v315z" />
-<glyph unicode="&#xbf;" horiz-adv-x="813" d="M66 -51q0 63 46 130.5t101 116t101 116t46 130.5h250q2 -23 2 -34q0 -70 -32.5 -139.5t-72.5 -113.5t-73 -89.5t-33 -71.5q0 -55 85 -115.5t169 -93.5l86 -33l-69 -270q-12 4 -34 10t-85.5 29.5t-120.5 49.5t-126.5 66.5t-120 86t-85 105t-34.5 120.5zM303 786 q0 72 52.5 124.5t126 52.5t124.5 -52.5t51 -124.5q0 -76 -51 -128t-124.5 -52t-126 52t-52.5 128z" />
-<glyph unicode="&#xc0;" horiz-adv-x="1320" d="M2 0l508 1376h301l508 -1376h-322l-86 246h-510l-86 -246h-313zM365 1583l75 207l471 -195l-59 -155zM494 512h325l-164 463z" />
-<glyph unicode="&#xc1;" horiz-adv-x="1320" d="M2 0l508 1376h301l508 -1376h-322l-86 246h-510l-86 -246h-313zM401 1595l471 195l74 -207l-487 -143zM494 512h325l-164 463z" />
-<glyph unicode="&#xc2;" horiz-adv-x="1320" d="M2 0l508 1376h301l508 -1376h-322l-86 246h-510l-86 -246h-313zM281 1565l258 219h235l256 -219l-156 -95l-221 168l-219 -168zM494 512h325l-164 463z" />
-<glyph unicode="&#xc3;" horiz-adv-x="1320" d="M2 0l508 1376h301l508 -1376h-322l-86 246h-510l-86 -246h-313zM258 1528q0 39 8 75.5t29.5 79.5t71 69t122.5 26q80 0 146.5 -33t112 -64.5t75.5 -31.5q59 0 60 96l-2 27h174q2 -14 2 -41q0 -39 -8.5 -76t-30 -82t-73.5 -72.5t-126 -27.5q-66 0 -118 20t-80.5 45 t-62.5 45.5t-62 20.5q-63 0 -64 -95l2 -28h-174q-2 18 -2 47zM494 512h325l-164 463z" />
-<glyph unicode="&#xc4;" horiz-adv-x="1320" d="M2 0l508 1376h301l508 -1376h-322l-86 246h-510l-86 -246h-313zM227 1628.5q0 69.5 44 111.5t116 42t116 -42t44 -111.5t-44 -110.5t-116 -41t-116 41t-44 110.5zM494 512h325l-164 463zM764 1628.5q0 69.5 44 111.5t115.5 42t115.5 -42t44 -111.5t-44 -110.5t-115.5 -41 t-115.5 41t-44 110.5z" />
-<glyph unicode="&#xc5;" horiz-adv-x="1320" d="M2 0l508 1376h301l508 -1376h-322l-86 246h-510l-86 -246h-313zM440 1622q0 68 54.5 115t161 47t159.5 -47t53 -115q0 -78 -52 -127t-160.5 -49t-162 49t-53.5 127zM494 512h325l-164 463zM565 1620q0 -84 90 -84q43 0 68 22.5t25 61.5q0 29 -25 51.5t-68 22.5 q-45 0 -67.5 -22.5t-22.5 -51.5z" />
-<glyph unicode="&#xc6;" horiz-adv-x="1886" d="M-31 0l768 1366h1059v-264h-573v-277h454v-268h-454v-293h602v-264h-920v336h-416l-182 -336h-338zM635 602h270v496z" />
-<glyph unicode="&#xc7;" horiz-adv-x="1384" d="M72 653q0 317 212 527.5t566 210.5q295 0 471 -103l12 -8l-116 -264q-14 10 -42 26.5t-125.5 44t-207.5 27.5q-203 0 -327 -115.5t-124 -316.5q0 -207 129 -318.5t314 -111.5q111 0 209 29.5t141 58.5l43 31l129 -230q-6 -6 -19.5 -17t-59.5 -39t-101.5 -49.5t-146.5 -40 t-191 -20.5l-9 -16q-16 -43 -16 -49q0 -20 28.5 -35.5t63.5 -28t63.5 -46t28.5 -85.5q0 -88 -70.5 -144t-187.5 -56q-133 0 -215 63l51 123q74 -59 164 -59q41 0 66.5 13t25.5 33.5t-27.5 39t-60 31t-60.5 38t-28 60.5q0 37 31 92l16 33q-276 31 -453 205.5t-177 465.5z" />
-<glyph unicode="&#xc8;" horiz-adv-x="1134" d="M154 0v1366h893v-264h-576v-277h455v-268h-455v-293h602v-264h-919zM317 1583l76 207l471 -195l-59 -155z" />
-<glyph unicode="&#xc9;" horiz-adv-x="1134" d="M154 0v1366h893v-264h-576v-277h455v-268h-455v-293h602v-264h-919zM354 1595l471 195l74 -207l-487 -143z" />
-<glyph unicode="&#xca;" horiz-adv-x="1134" d="M154 0v1366h893v-264h-576v-277h455v-268h-455v-293h602v-264h-919zM233 1565l259 219h235l256 -219l-156 -95l-221 168l-219 -168z" />
-<glyph unicode="&#xcb;" horiz-adv-x="1134" d="M154 0v1366h893v-264h-576v-277h455v-268h-455v-293h602v-264h-919zM180 1628.5q0 69.5 44 111.5t116 42t116 -42t44 -111.5t-44 -110.5t-116 -41t-116 41t-44 110.5zM717 1628.5q0 69.5 44 111.5t115.5 42t115.5 -42t44 -111.5t-44 -110.5t-115.5 -41t-115.5 41 t-44 110.5z" />
-<glyph unicode="&#xcc;" horiz-adv-x="626" d="M27 1583l75 207l471 -195l-59 -155zM154 0v1366h317v-1366h-317z" />
-<glyph unicode="&#xcd;" horiz-adv-x="626" d="M63 1595l472 195l73 -207l-487 -143zM154 0v1366h317v-1366h-317z" />
-<glyph unicode="&#xce;" horiz-adv-x="626" d="M-57 1565l258 219h235l256 -219l-155 -95l-222 168l-219 -168zM154 0v1366h317v-1366h-317z" />
-<glyph unicode="&#xcf;" horiz-adv-x="626" d="M-72 1634.5q0 69.5 41 108.5t113 39t113 -39t41 -108.5t-41 -107.5t-113 -38t-113 38t-41 107.5zM154 0v1366h317v-1366h-317zM403 1634.5q0 69.5 41 108.5t113 39t113 -39t41 -108.5t-41 -107.5t-113 -38q-74 0 -114 38t-40 107.5z" />
-<glyph unicode="&#xd0;" horiz-adv-x="1533" d="M45 575v238h148v553h524q143 0 271 -36t237.5 -111.5t173 -207.5t63.5 -306q0 -336 -225 -520.5t-598 -184.5h-446v575h-148zM508 264h110q262 0 389.5 119t127.5 313q0 184 -114 295t-333 111h-180v-289h299v-238h-299v-311z" />
-<glyph unicode="&#xd1;" horiz-adv-x="1529" d="M154 0v1366h321l590 -874v874h311v-1366h-325l-586 874v-874h-311zM367 1528q0 39 8 75.5t29.5 79.5t70.5 69t123 26q80 0 146.5 -33t111.5 -64.5t76 -31.5q59 0 59 96l-2 27h174q2 -14 2 -41q0 -39 -8 -76t-29.5 -82t-74 -72.5t-125.5 -27.5q-63 0 -116.5 20t-82.5 45 t-61.5 45.5t-63.5 20.5q-63 0 -63 -95l2 -28h-174q-2 18 -2 47z" />
-<glyph unicode="&#xd2;" d="M66 680q0 182 85 341t262 264.5t414 105.5q342 0 549 -198t207 -484q0 -295 -215 -514.5t-559 -219.5q-225 0 -397 100.5t-259 259.5t-87 345zM395 686q0 -174 110.5 -309t309.5 -135t317.5 133t118.5 317q0 178 -112.5 305t-313 127t-315.5 -128t-115 -310zM532 1583 l76 207l471 -195l-59 -155z" />
-<glyph unicode="&#xd3;" d="M66 680q0 182 85 341t262 264.5t414 105.5q342 0 549 -198t207 -484q0 -295 -215 -514.5t-559 -219.5q-225 0 -397 100.5t-259 259.5t-87 345zM395 686q0 -174 110.5 -309t309.5 -135t317.5 133t118.5 317q0 178 -112.5 305t-313 127t-315.5 -128t-115 -310zM569 1595 l471 195l74 -207l-487 -143z" />
-<glyph unicode="&#xd4;" d="M66 680q0 182 85 341t262 264.5t414 105.5q342 0 549 -198t207 -484q0 -295 -215 -514.5t-559 -219.5q-225 0 -397 100.5t-259 259.5t-87 345zM395 686q0 -174 110.5 -309t309.5 -135t317.5 133t118.5 317q0 178 -112.5 305t-313 127t-315.5 -128t-115 -310zM449 1565 l258 219h235l256 -219l-156 -95l-221 168l-219 -168z" />
-<glyph unicode="&#xd5;" d="M66 680q0 182 85 341t262 264.5t414 105.5q342 0 549 -198t207 -484q0 -295 -215 -514.5t-559 -219.5q-225 0 -397 100.5t-259 259.5t-87 345zM395 686q0 -174 110.5 -309t309.5 -135t317.5 133t118.5 317q0 178 -112.5 305t-313 127t-315.5 -128t-115 -310zM426 1528 q0 39 8 75.5t29.5 79.5t71 69t122.5 26q80 0 146.5 -33t112 -64.5t75.5 -31.5q59 0 60 96l-2 27h174q2 -14 2 -41q0 -39 -8.5 -76t-30 -82t-73.5 -72.5t-126 -27.5q-66 0 -118 20t-80.5 45t-62.5 45.5t-62 20.5q-63 0 -64 -95l2 -28h-174q-2 18 -2 47z" />
-<glyph unicode="&#xd6;" d="M66 680q0 182 85 341t262 264.5t414 105.5q342 0 549 -198t207 -484q0 -295 -215 -514.5t-559 -219.5q-225 0 -397 100.5t-259 259.5t-87 345zM395 686q0 -174 110.5 -309t309.5 -135t317.5 133t118.5 317q0 178 -112.5 305t-313 127t-315.5 -128t-115 -310zM395 1628.5 q0 69.5 44 111.5t116 42t116 -42t44 -111.5t-44 -110.5t-116 -41t-116 41t-44 110.5zM932 1628.5q0 69.5 44 111.5t115.5 42t115.5 -42t44 -111.5t-44 -110.5t-115.5 -41t-115.5 41t-44 110.5z" />
-<glyph unicode="&#xd7;" horiz-adv-x="1064" d="M66 168l344 354l-344 355l122 124l344 -354l345 354l122 -124l-346 -355l346 -354l-125 -125l-342 352l-342 -352z" />
-<glyph unicode="&#xd8;" d="M66 680q0 182 85 341t262 264.5t414 105.5q209 0 375 -80l88 116h176l-143 -190q125 -94 192.5 -232.5t67.5 -295.5q0 -295 -215 -514.5t-559 -219.5q-209 0 -379 88l-96 -124h-178l155 202q-119 98 -182 239.5t-63 299.5zM395 686q0 -176 103 -299l528 692 q-96 45 -201 45q-201 0 -315.5 -128t-114.5 -310zM604 293q98 -51 211 -51q199 0 317.5 133t118.5 317.5t-112 302.5z" />
-<glyph unicode="&#xd9;" horiz-adv-x="1449" d="M139 522v844h318v-819q0 -305 270 -305q127 0 199.5 78.5t72.5 218.5v827h316v-815q0 -270 -167 -423t-423 -153q-262 0 -424 133t-162 414zM434 1583l76 207l471 -195l-59 -155z" />
-<glyph unicode="&#xda;" horiz-adv-x="1449" d="M139 522v844h318v-819q0 -305 270 -305q127 0 199.5 78.5t72.5 218.5v827h316v-815q0 -270 -167 -423t-423 -153q-262 0 -424 133t-162 414zM471 1595l471 195l74 -207l-488 -143z" />
-<glyph unicode="&#xdb;" horiz-adv-x="1449" d="M139 522v844h318v-819q0 -305 270 -305q127 0 199.5 78.5t72.5 218.5v827h316v-815q0 -270 -167 -423t-423 -153q-262 0 -424 133t-162 414zM350 1565l258 219h236l256 -219l-156 -95l-221 168l-219 -168z" />
-<glyph unicode="&#xdc;" horiz-adv-x="1449" d="M139 522v844h318v-819q0 -305 270 -305q127 0 199.5 78.5t72.5 218.5v827h316v-815q0 -270 -167 -423t-423 -153q-262 0 -424 133t-162 414zM297 1628.5q0 69.5 44 111.5t115.5 42t115.5 -42t44 -111.5t-44 -110.5t-115.5 -41t-115.5 41t-44 110.5zM834 1628.5 q0 69.5 44 111.5t115.5 42t115.5 -42t44 -111.5t-44 -110.5t-115.5 -41t-115.5 41t-44 110.5z" />
-<glyph unicode="&#xdd;" horiz-adv-x="1284" d="M-10 1366h372l279 -502l295 502h358l-493 -807v-559h-318v557zM383 1595l471 195l74 -207l-488 -143z" />
-<glyph unicode="&#xde;" horiz-adv-x="1218" d="M154 0v1366h317v-262h221q244 0 363 -110.5t119 -284.5q0 -199 -134.5 -314.5t-347.5 -115.5h-221v-279h-317zM471 547h172q201 0 201 147q0 70 -42 108t-159 38h-172v-293z" />
-<glyph unicode="&#xdf;" horiz-adv-x="1259" d="M37 723v170l145 49v68q0 231 122 357t351 126q193 0 309.5 -87t116.5 -235q0 -88 -45 -158.5t-89 -123.5t-44 -98q0 -41 34 -79t81 -71t94 -73t81 -104.5t34 -144.5q0 -154 -110.5 -249t-303.5 -95q-59 0 -112.5 9.5t-77.5 19.5l-25 10l39 238q61 -47 141 -47 q61 0 96 32.5t35 79.5q0 39 -28.5 72t-69.5 59.5t-81 59.5t-68.5 89t-28.5 128q0 68 24.5 122t55 86t55.5 82t25 109q0 147 -138 148q-84 0 -122.5 -59.5t-38.5 -194.5v-1018h-312v723h-145z" />
-<glyph unicode="&#xe0;" horiz-adv-x="1034" d="M43 229q0 287 541 359v35q0 61 -24.5 89.5t-82.5 28.5q-156 0 -305 -110l-6 -4l-66 211q18 14 54 34.5t154 55.5t245 35q188 0 264 -75t76 -235v-329q0 -84 90 -97l16 -2l-86 -239q-211 -2 -292 133q-16 -29 -44 -57.5t-92.5 -57.5t-146.5 -29q-133 0 -214 70.5 t-81 183.5zM131 1456h283l215 -332l-162 -82zM354 258q0 -70 68 -70q82 0 162 101v139q-230 -35 -230 -170z" />
-<glyph unicode="&#xe1;" horiz-adv-x="1034" d="M43 229q0 287 541 359v35q0 61 -24.5 89.5t-82.5 28.5q-156 0 -305 -110l-6 -4l-66 211q18 14 54 34.5t154 55.5t245 35q188 0 264 -75t76 -235v-329q0 -84 90 -97l16 -2l-86 -239q-211 -2 -292 133q-16 -29 -44 -57.5t-92.5 -57.5t-146.5 -29q-133 0 -214 70.5 t-81 183.5zM338 1124l213 332h280l-335 -414zM354 258q0 -70 68 -70q82 0 162 101v139q-230 -35 -230 -170z" />
-<glyph unicode="&#xe2;" horiz-adv-x="1034" d="M43 229q0 287 541 359v35q0 61 -24.5 89.5t-82.5 28.5q-156 0 -305 -110l-6 -4l-66 211q18 14 54 34.5t154 55.5t245 35q188 0 264 -75t76 -235v-329q0 -84 90 -97l16 -2l-86 -239q-211 -2 -292 133q-16 -29 -44 -57.5t-92.5 -57.5t-146.5 -29q-133 0 -214 70.5 t-81 183.5zM156 1106l237 350h182l240 -354l-164 -62l-168 238l-168 -238zM354 258q0 -70 68 -70q82 0 162 101v139q-230 -35 -230 -170z" />
-<glyph unicode="&#xe3;" horiz-adv-x="1034" d="M43 229q0 287 541 359v35q0 61 -24.5 89.5t-82.5 28.5q-156 0 -305 -110l-6 -4l-66 211q18 14 54 34.5t154 55.5t245 35q188 0 264 -75t76 -235v-329q0 -84 90 -97l16 -2l-86 -239q-211 -2 -292 133q-16 -29 -44 -57.5t-92.5 -57.5t-146.5 -29q-133 0 -214 70.5 t-81 183.5zM106 1153q0 39 7.5 78t28 86t69.5 76.5t119 29.5q61 0 112.5 -23.5t79 -53t58 -53t55.5 -23.5q57 0 57 102l-2 37h184q2 -14 3 -35q0 -39 -7.5 -78t-29 -88t-71.5 -79.5t-122 -30.5q-61 0 -110.5 23.5t-75 53t-54 53t-55.5 23.5q-61 0 -61 -106l2 -31h-184 q-3 14 -3 39zM354 258q0 -70 68 -70q82 0 162 101v139q-230 -35 -230 -170z" />
-<glyph unicode="&#xe4;" horiz-adv-x="1034" d="M43 229q0 287 541 359v35q0 61 -24.5 89.5t-82.5 28.5q-156 0 -305 -110l-6 -4l-66 211q18 14 54 34.5t154 55.5t245 35q188 0 264 -75t76 -235v-329q0 -84 90 -97l16 -2l-86 -239q-211 -2 -292 133q-16 -29 -44 -57.5t-92.5 -57.5t-146.5 -29q-133 0 -214 70.5 t-81 183.5zM92 1282q0 70 41 109t112.5 39t112.5 -39t41 -109t-41 -107.5t-112.5 -37.5t-112.5 37.5t-41 107.5zM354 258q0 -70 68 -70q82 0 162 101v139q-230 -35 -230 -170zM567 1282q0 70 41 109t113 39t112.5 -39t40.5 -109t-40.5 -107.5t-112.5 -37.5q-74 0 -114 37.5 t-40 107.5z" />
-<glyph unicode="&#xe5;" horiz-adv-x="1034" d="M43 229q0 287 541 359v35q0 61 -24.5 89.5t-82.5 28.5q-156 0 -305 -110l-6 -4l-66 211q18 14 54 34.5t154 55.5t245 35q188 0 264 -75t76 -235v-329q0 -84 90 -97l16 -2l-86 -239q-211 -2 -292 133q-16 -29 -44 -57.5t-92.5 -57.5t-146.5 -29q-133 0 -214 70.5 t-81 183.5zM264 1290q0 72 56.5 129.5t162.5 57.5q104 0 159.5 -57.5t55.5 -129.5q0 -74 -55 -135t-160 -61q-106 0 -162.5 61t-56.5 135zM354 258q0 -70 68 -70q82 0 162 101v139q-230 -35 -230 -170zM391 1288q0 -35 25.5 -61.5t66.5 -26.5t66.5 26.5t25.5 61.5 t-24.5 59.5t-67.5 24.5t-67.5 -24.5t-24.5 -59.5z" />
-<glyph unicode="&#xe6;" horiz-adv-x="1538" d="M43 225q0 264 545 332v43q0 80 -23.5 116t-93.5 36q-141 0 -301 -113l-4 -4l-66 203q20 14 57.5 34.5t148 55.5t216.5 35q178 0 254 -117q111 117 279 117q184 0 297.5 -119t115.5 -352l-161 -54l-414 -45q53 -197 237 -196q68 0 138.5 28.5t107.5 57.5l37 30l72 -209 q-18 -14 -51 -35.5t-138.5 -57.5t-214.5 -36q-246 0 -374 189q-41 -70 -131.5 -129.5t-225.5 -59.5q-141 0 -224 70.5t-83 179.5zM344 248q0 -35 22.5 -53.5t57.5 -18.5q63 0 115.5 58.5t52.5 144.5q-248 -20 -248 -131zM885 569l260 29q0 6 -1 16.5t-8.5 36t-17.5 45 t-33.5 36t-54.5 16.5q-59 0 -98 -47.5t-47 -131.5z" />
-<glyph unicode="&#xe7;" horiz-adv-x="970" d="M55 446q0 211 150.5 364t380.5 153q96 0 183 -22.5t128 -47.5l39 -23l-102 -221q-96 84 -211 84q-106 0 -178 -67.5t-72 -200.5q0 -123 63.5 -191.5t165.5 -68.5q61 0 121.5 23.5t89.5 45.5l29 23l94 -203q-12 -12 -34.5 -30.5t-108.5 -51t-191 -37.5l-8 -16 q-16 -43 -16 -49q0 -20 28.5 -35.5t63.5 -28t63.5 -46t28.5 -85.5q0 -88 -70.5 -144t-187.5 -56q-133 0 -215 63l51 123q74 -59 164 -59q41 0 66.5 13t25.5 33.5t-27.5 39t-60.5 31t-60.5 38t-27.5 60.5q0 37 31 92l18 35q-190 31 -302 158.5t-112 303.5z" />
-<glyph unicode="&#xe8;" horiz-adv-x="1017" d="M59 465q0 211 131.5 354.5t341.5 143.5q186 0 299 -123t115 -363l-162 -45l-409 -53q53 -174 223 -174q139 0 285 108l4 4l80 -213q-18 -14 -52 -35.5t-141.5 -57.5t-216.5 -36q-236 0 -367 141.5t-131 348.5zM162 1456h282l215 -332l-161 -82zM360 541l261 34 q0 6 -1.5 17.5t-8.5 40.5t-17 50.5t-33.5 38.5t-54.5 17q-63 0 -101.5 -54t-44.5 -144z" />
-<glyph unicode="&#xe9;" horiz-adv-x="1017" d="M59 465q0 211 131.5 354.5t341.5 143.5q186 0 299 -123t115 -363l-162 -45l-409 -53q53 -174 223 -174q139 0 285 108l4 4l80 -213q-18 -14 -52 -35.5t-141.5 -57.5t-216.5 -36q-236 0 -367 141.5t-131 348.5zM360 541l261 34q0 6 -1.5 17.5t-8.5 40.5t-17 50.5 t-33.5 38.5t-54.5 17q-63 0 -101.5 -54t-44.5 -144zM371 1124l213 332h280l-336 -414z" />
-<glyph unicode="&#xea;" horiz-adv-x="1017" d="M59 465q0 211 131.5 354.5t341.5 143.5q186 0 299 -123t115 -363l-162 -45l-409 -53q53 -174 223 -174q139 0 285 108l4 4l80 -213q-18 -14 -52 -35.5t-141.5 -57.5t-216.5 -36q-236 0 -367 141.5t-131 348.5zM188 1106l238 350h182l240 -354l-164 -62l-168 238 l-168 -238zM360 541l261 34q0 6 -1.5 17.5t-8.5 40.5t-17 50.5t-33.5 38.5t-54.5 17q-63 0 -101.5 -54t-44.5 -144z" />
-<glyph unicode="&#xeb;" horiz-adv-x="1017" d="M59 465q0 211 131.5 354.5t341.5 143.5q186 0 299 -123t115 -363l-162 -45l-409 -53q53 -174 223 -174q139 0 285 108l4 4l80 -213q-18 -14 -52 -35.5t-141.5 -57.5t-216.5 -36q-236 0 -367 141.5t-131 348.5zM125 1282q0 70 41 109t112.5 39t112.5 -39t41 -109 t-41 -107.5t-112.5 -37.5t-112.5 37.5t-41 107.5zM360 541l261 34q0 6 -1.5 17.5t-8.5 40.5t-17 50.5t-33.5 38.5t-54.5 17q-63 0 -101.5 -54t-44.5 -144zM600 1282q0 70 41 109t112.5 39t112.5 -39t41 -109t-41 -107.5t-112 -37.5q-74 0 -114 37.5t-40 107.5z" />
-<glyph unicode="&#xec;" horiz-adv-x="540" d="M-82 1456h283l215 -332l-162 -82zM115 0v938h311v-938h-311z" />
-<glyph unicode="&#xed;" horiz-adv-x="540" d="M115 0v938h311v-938h-311zM127 1124l213 332h281l-336 -414z" />
-<glyph unicode="&#xee;" horiz-adv-x="540" d="M-55 1106l237 350h183l239 -354l-164 -62l-168 238l-168 -238zM115 0v938h311v-938h-311z" />
-<glyph unicode="&#xef;" horiz-adv-x="540" d="M-119 1282q0 70 41 109t112.5 39t112.5 -39t41 -109t-41 -107.5t-112.5 -37.5t-112.5 37.5t-41 107.5zM115 0v938h311v-938h-311zM356 1282q0 70 41 109t113 39t113 -39t41 -109t-41 -107.5t-113 -37.5q-74 0 -114 37.5t-40 107.5z" />
-<glyph unicode="&#xf0;" horiz-adv-x="1128" d="M57 442q0 203 127 362t332 159q25 0 48.5 -3.5t41 -7.5t31.5 -9t24.5 -10t16.5 -9t10 -6l4 -5q-68 133 -192 228l-277 -152l-71 137l192 107q-117 49 -231 74l59 219q233 -43 422 -156l303 166l70 -139l-236 -129q152 -129 236 -306.5t84 -381.5q0 -262 -137.5 -433.5 t-378.5 -171.5q-223 0 -350.5 135t-127.5 332zM354 461q0 -102 47.5 -184t141.5 -82q92 0 153.5 80.5t61.5 263.5q0 82 -42 142t-128 60q-102 0 -168 -78.5t-66 -201.5z" />
-<glyph unicode="&#xf1;" horiz-adv-x="1103" d="M111 0v913l295 48v-168q147 170 333 170q262 0 262 -304v-659h-311v514q0 102 -12 141t-62 39q-82 0 -194 -116v-578h-311zM190 1153q0 39 7.5 78t28 86t69.5 76.5t119 29.5q61 0 112.5 -23.5t79 -53t58 -53t55.5 -23.5q57 0 57 102l-2 37h184q2 -14 3 -35 q0 -39 -7.5 -78t-29 -88t-71.5 -79.5t-122 -30.5q-61 0 -110.5 23.5t-75 53t-54 53t-55.5 23.5q-61 0 -61 -106l2 -31h-184q-3 14 -3 39z" />
-<glyph unicode="&#xf2;" horiz-adv-x="1171" d="M57 467q0 92 29 177t89.5 157.5t165.5 117t245 44.5q260 0 396 -139.5t136 -338.5q0 -88 -28.5 -173t-88 -162.5t-168 -126t-251.5 -48.5q-254 0 -389.5 142.5t-135.5 349.5zM238 1456h282l215 -332l-162 -82zM375 479q0 -113 56 -198.5t153 -85.5q90 0 153.5 74.5 t63.5 191.5q0 111 -56.5 195.5t-156.5 84.5q-90 0 -151.5 -72.5t-61.5 -189.5z" />
-<glyph unicode="&#xf3;" horiz-adv-x="1171" d="M57 467q0 92 29 177t89.5 157.5t165.5 117t245 44.5q260 0 396 -139.5t136 -338.5q0 -88 -28.5 -173t-88 -162.5t-168 -126t-251.5 -48.5q-254 0 -389.5 142.5t-135.5 349.5zM375 479q0 -113 56 -198.5t153 -85.5q90 0 153.5 74.5t63.5 191.5q0 111 -56.5 195.5 t-156.5 84.5q-90 0 -151.5 -72.5t-61.5 -189.5zM444 1124l213 332h281l-336 -414z" />
-<glyph unicode="&#xf4;" horiz-adv-x="1171" d="M57 467q0 92 29 177t89.5 157.5t165.5 117t245 44.5q260 0 396 -139.5t136 -338.5q0 -88 -28.5 -173t-88 -162.5t-168 -126t-251.5 -48.5q-254 0 -389.5 142.5t-135.5 349.5zM260 1106l238 350h182l240 -354l-164 -62l-168 238l-168 -238zM375 479q0 -113 56 -198.5 t153 -85.5q90 0 153.5 74.5t63.5 191.5q0 111 -56.5 195.5t-156.5 84.5q-90 0 -151.5 -72.5t-61.5 -189.5z" />
-<glyph unicode="&#xf5;" horiz-adv-x="1171" d="M57 467q0 92 29 177t89.5 157.5t165.5 117t245 44.5q260 0 396 -139.5t136 -338.5q0 -88 -28.5 -173t-88 -162.5t-168 -126t-251.5 -48.5q-254 0 -389.5 142.5t-135.5 349.5zM211 1153q0 39 7 78t27.5 86t70 76.5t118.5 29.5q61 0 112.5 -23.5t79 -53t58.5 -53t55 -23.5 q57 0 58 102l-2 37h184q2 -14 2 -35q0 -39 -7 -78t-28.5 -88t-72 -79.5t-121.5 -30.5q-61 0 -110.5 23.5t-75 53t-54.5 53t-55 23.5q-61 0 -62 -106l2 -31h-184q-2 14 -2 39zM375 479q0 -113 56 -198.5t153 -85.5q90 0 153.5 74.5t63.5 191.5q0 111 -56.5 195.5t-156.5 84.5 q-90 0 -151.5 -72.5t-61.5 -189.5z" />
-<glyph unicode="&#xf6;" horiz-adv-x="1171" d="M57 467q0 92 29 177t89.5 157.5t165.5 117t245 44.5q260 0 396 -139.5t136 -338.5q0 -88 -28.5 -173t-88 -162.5t-168 -126t-251.5 -48.5q-254 0 -389.5 142.5t-135.5 349.5zM197 1282q0 70 41 109t112.5 39t112.5 -39t41 -109t-41 -107.5t-112.5 -37.5t-112.5 37.5 t-41 107.5zM375 479q0 -113 56 -198.5t153 -85.5q90 0 153.5 74.5t63.5 191.5q0 111 -56.5 195.5t-156.5 84.5q-90 0 -151.5 -72.5t-61.5 -189.5zM672 1282q0 70 41 109t112.5 39t112.5 -39t41 -109t-41 -107.5t-113 -37.5q-74 0 -113.5 37.5t-39.5 107.5z" />
-<glyph unicode="&#xf7;" horiz-adv-x="1064" d="M74 430v182h917v-182h-917zM383 143q0 66 43 112t106 46q66 0 110 -46t44 -112q0 -63 -44 -107t-110 -44q-63 0 -106 44t-43 107zM383 899.5q0 63.5 43 108.5t106 45q66 0 110 -45t44 -108.5t-44 -109t-110 -45.5q-63 0 -106 45.5t-43 109z" />
-<glyph unicode="&#xf8;" horiz-adv-x="1171" d="M57 467q0 94 29 178t89.5 158t167 117t247.5 43q135 0 244 -45l61 81h152l-107 -143q178 -133 178 -367q0 -90 -28.5 -176t-88 -163.5t-168 -126t-251.5 -48.5q-150 0 -258 52l-68 -88h-152l115 153q-162 135 -162 375zM375 485q0 -84 24 -149l283 379q-43 27 -96 26 q-88 0 -149.5 -73.5t-61.5 -182.5zM475 231q51 -37 113 -36q86 0 149.5 75.5t63.5 192.5q0 86 -37 158z" />
-<glyph unicode="&#xf9;" horiz-adv-x="1110" d="M104 258v680h312v-557q0 -76 17.5 -108.5t60.5 -32.5q78 0 188 104v594h311v-653l41 -279l-299 -26q-16 84 -26 151q-160 -156 -342 -156q-117 0 -190 71t-73 212zM197 1456h282l215 -332l-162 -82z" />
-<glyph unicode="&#xfa;" horiz-adv-x="1110" d="M104 258v680h312v-557q0 -76 17.5 -108.5t60.5 -32.5q78 0 188 104v594h311v-653l41 -279l-299 -26q-16 84 -26 151q-160 -156 -342 -156q-117 0 -190 71t-73 212zM403 1124l213 332h281l-336 -414z" />
-<glyph unicode="&#xfb;" horiz-adv-x="1110" d="M104 258v680h312v-557q0 -76 17.5 -108.5t60.5 -32.5q78 0 188 104v594h311v-653l41 -279l-299 -26q-16 84 -26 151q-160 -156 -342 -156q-117 0 -190 71t-73 212zM219 1106l238 350h182l240 -354l-164 -62l-168 238l-168 -238z" />
-<glyph unicode="&#xfc;" horiz-adv-x="1110" d="M104 258v680h312v-557q0 -76 17.5 -108.5t60.5 -32.5q78 0 188 104v594h311v-653l41 -279l-299 -26q-16 84 -26 151q-160 -156 -342 -156q-117 0 -190 71t-73 212zM156 1282q0 70 41 109t112.5 39t112.5 -39t41 -109t-41 -107.5t-112.5 -37.5t-112.5 37.5t-41 107.5z M631 1282q0 70 41 109t112.5 39t112.5 -39t41 -109t-41 -107.5t-113 -37.5q-74 0 -113.5 37.5t-39.5 107.5z" />
-<glyph unicode="&#xfd;" horiz-adv-x="995" d="M-4 938h317l191 -592l184 592h309l-374 -1004q-59 -158 -199.5 -281.5t-323.5 -137.5l-92 239q106 8 200.5 64.5t127.5 136.5l22 53zM356 1124l213 332h281l-336 -414z" />
-<glyph unicode="&#xfe;" horiz-adv-x="1120" d="M115 -485v1908l311 50v-658q74 147 246 148q180 0 285.5 -133.5t105.5 -327.5q0 -215 -123 -371t-348 -156q-115 0 -166 31v-442zM426 266q0 -72 115 -71q88 0 145 71.5t57 214.5q0 117 -36.5 182.5t-102.5 65.5q-94 0 -178 -127v-336z" />
-<glyph unicode="&#xff;" horiz-adv-x="995" d="M-4 938h317l191 -592l184 592h309l-374 -1004q-59 -158 -199.5 -281.5t-323.5 -137.5l-92 239q106 8 200.5 64.5t127.5 136.5l22 53zM109 1282q0 70 40.5 109t112.5 39t113 -39t41 -109t-41 -107.5t-113 -37.5t-112.5 37.5t-40.5 107.5zM584 1282q0 70 41 109t112.5 39 t112.5 -39t41 -109t-41 -107.5t-113 -37.5q-74 0 -113.5 37.5t-39.5 107.5z" />
-<glyph unicode="&#x152;" horiz-adv-x="2035" d="M66 680q0 133 51 260t143 227.5t237.5 162t317.5 61.5q143 0 256 -25h877v-264h-574v-277h455v-268h-455v-293h600v-264h-917q-147 -25 -262 -25q-324 0 -526.5 208t-202.5 497zM395 686q0 -174 111.5 -309t292.5 -135q166 0 258 30v811q-109 41 -244 41 q-188 0 -303 -130t-115 -308z" />
-<glyph unicode="&#x153;" horiz-adv-x="1751" d="M57 469q0 197 136.5 345.5t390.5 148.5q236 0 366 -162q125 162 324 162q186 0 295.5 -130.5t111.5 -363.5l-159 -47l-398 -51q23 -82 80.5 -128t136.5 -46q68 0 138.5 28.5t107.5 57.5l37 30l74 -209q-18 -14 -52 -35.5t-137.5 -57.5t-208.5 -36q-223 0 -356 152 q-133 -152 -373 -152q-246 0 -380 143.5t-134 350.5zM375 479q0 -113 56 -198.5t153 -85.5q86 0 145 74.5t59 191.5q0 111 -53 195.5t-147 84.5q-90 0 -151.5 -72.5t-61.5 -189.5zM1104 541l264 34q0 6 -1 17.5t-9 40.5t-20.5 50.5t-37 38.5t-59.5 17q-57 0 -94 -54 t-43 -144z" />
-<glyph unicode="&#x178;" horiz-adv-x="1284" d="M-10 1366h372l279 -502l295 502h358l-493 -807v-559h-318v557zM209 1628.5q0 69.5 44 111.5t115.5 42t115.5 -42t44 -111.5t-44 -110.5t-115.5 -41t-115.5 41t-44 110.5zM745 1628.5q0 69.5 44.5 111.5t116 42t115.5 -42t44 -111.5t-44 -110.5t-115.5 -41t-116 41 t-44.5 110.5z" />
-<glyph unicode="&#x2c6;" horiz-adv-x="1052" d="M199 1106l237 350h182l240 -354l-164 -62l-168 238l-168 -238z" />
-<glyph unicode="&#x2dc;" horiz-adv-x="1052" d="M156 1153q0 39 7 78t27.5 86t69.5 76.5t119 29.5q61 0 112.5 -23.5t79 -53t58 -53t55.5 -23.5q57 0 57 102l-2 37h185q2 -14 2 -35q0 -39 -7.5 -78t-29 -88t-71.5 -79.5t-122 -30.5q-61 0 -110 23.5t-75 53t-54.5 53t-55.5 23.5q-61 0 -61 -106l2 -31h-184q-2 14 -2 39z " />
-<glyph unicode="&#x2000;" horiz-adv-x="895" />
-<glyph unicode="&#x2001;" horiz-adv-x="1790" />
-<glyph unicode="&#x2002;" horiz-adv-x="895" />
-<glyph unicode="&#x2003;" horiz-adv-x="1790" />
-<glyph unicode="&#x2004;" horiz-adv-x="596" />
-<glyph unicode="&#x2005;" horiz-adv-x="447" />
-<glyph unicode="&#x2006;" horiz-adv-x="298" />
-<glyph unicode="&#x2007;" horiz-adv-x="298" />
-<glyph unicode="&#x2008;" horiz-adv-x="223" />
-<glyph unicode="&#x2009;" horiz-adv-x="358" />
-<glyph unicode="&#x200a;" horiz-adv-x="99" />
-<glyph unicode="&#x2010;" horiz-adv-x="792" d="M102 442v170h588v-170h-588z" />
-<glyph unicode="&#x2011;" horiz-adv-x="792" d="M102 442v170h588v-170h-588z" />
-<glyph unicode="&#x2012;" horiz-adv-x="792" d="M102 442v170h588v-170h-588z" />
-<glyph unicode="&#x2013;" horiz-adv-x="1044" d="M102 436v182h840v-182h-840z" />
-<glyph unicode="&#x2014;" horiz-adv-x="1843" d="M102 436v182h1639v-182h-1639z" />
-<glyph unicode="&#x2018;" horiz-adv-x="473" d="M74 1130q0 217 239 408l97 -104q-141 -109 -142 -232q0 -51 30 -103t118 -155l-223 -121q-119 166 -119 307z" />
-<glyph unicode="&#x2019;" horiz-adv-x="450" d="M49 1417l221 121q123 -168 123 -307q0 -215 -243 -408l-93 105q139 111 140 229q0 53 -30 104.5t-118 155.5z" />
-<glyph unicode="&#x201a;" horiz-adv-x="499" d="M86 225l213 121q119 -166 119 -309q0 -215 -240 -408l-92 107q135 109 135 229q0 55 -26.5 108.5t-108.5 151.5z" />
-<glyph unicode="&#x201c;" horiz-adv-x="897" d="M74 1133q0 215 239 405l97 -104q-141 -109 -142 -230q0 -59 27 -110.5t121 -149.5l-223 -121q-119 167 -119 310zM498 1133q0 215 241 405l95 -104q-139 -109 -140 -230q0 -59 27 -110.5t121 -149.5l-224 -121q-120 165 -120 310z" />
-<glyph unicode="&#x201d;" horiz-adv-x="876" d="M49 1417l221 121q123 -168 123 -307q0 -215 -243 -408l-93 105q139 111 140 229q0 53 -30 104.5t-118 155.5zM475 1417l221 121q121 -168 121 -307q0 -215 -244 -408l-92 105q141 111 142 229q0 53 -30 103.5t-118 156.5z" />
-<glyph unicode="&#x201e;" horiz-adv-x="925" d="M86 225l213 121q119 -166 119 -309q0 -215 -240 -408l-92 107q135 109 135 229q0 55 -26.5 108.5t-108.5 151.5zM510 225l213 121q119 -162 119 -309q0 -217 -240 -408l-92 107q137 106 137 229q0 55 -27.5 108.5t-109.5 151.5z" />
-<glyph unicode="&#x2022;" horiz-adv-x="864" d="M106 524.5q0 137.5 94.5 231.5t231.5 94q139 0 232.5 -93t93.5 -232.5t-93.5 -232.5t-232.5 -93q-137 0 -231.5 94t-94.5 231.5z" />
-<glyph unicode="&#x2026;" horiz-adv-x="1695" d="M90 152q0 74 52.5 127t123.5 53q74 0 126 -53.5t52 -126.5q0 -72 -52 -124.5t-126 -52.5q-72 0 -124 52.5t-52 124.5zM670 152q0 74 52 127t124 53q74 0 127 -53.5t53 -126.5q0 -72 -53 -124.5t-127 -52.5q-72 0 -124 52.5t-52 124.5zM1251 152q0 74 52.5 127t123.5 53 q74 0 126.5 -53.5t52.5 -127t-51.5 -125t-127.5 -51.5q-72 0 -124 52.5t-52 124.5z" />
-<glyph unicode="&#x202f;" horiz-adv-x="358" />
-<glyph unicode="&#x2039;" horiz-adv-x="634" d="M25 510v8q31 25 206 225l177 203l157 -47l-284 -385l284 -385l-157 -47l-161 182l-107 121l-57 66q-26 29 -36 39t-22 20z" />
-<glyph unicode="&#x203a;" horiz-adv-x="634" d="M72 129l282 385l-282 385l157 47q348 -397 369 -416q6 -6 14 -12v-8q-12 -10 -22 -20.5l-36 -38.5l-57 -66l-107 -121l-161 -182z" />
-<glyph unicode="&#x205f;" horiz-adv-x="447" />
-<glyph unicode="&#x20ac;" horiz-adv-x="1163" d="M68 643v127h135q61 182 206.5 293t346.5 111q80 0 161.5 -18.5t122.5 -37.5l41 -18l-73 -228q-109 72 -238 72q-182 0 -248 -174h455l-37 -127h-448q-2 -23 -3 -68q0 -55 5 -79h405l-37 -127h-338q72 -164 252 -164q51 0 110.5 14t94.5 27l35 14l49 -215 q-131 -70 -317 -70q-209 0 -354.5 106.5t-198.5 287.5h-125v127h104q-4 37 -4 59q0 45 6 88h-108z" />
-<glyph unicode="&#x2122;" horiz-adv-x="1476" d="M70 1247v119h510v-119h-179v-426h-153v426h-178zM666 821l20 545h219l111 -326l114 326h213l21 -545h-150l-14 381l-135 -381h-100l-138 383l-10 -383h-151z" />
-<glyph unicode="&#xe000;" horiz-adv-x="940" d="M0 940h940v-940h-940v940z" />
-<glyph unicode="&#xfb01;" horiz-adv-x="1193" d="M37 723v170l145 49v45q0 246 143.5 387.5t364.5 141.5q82 0 158 -20.5t110 -41.5l35 -18l-100 -213q-94 63 -203 63q-197 0 -196 -274v-74h585v-938h-309v733h-276v-733h-312v723h-145z" />
-<glyph unicode="&#xfb02;" horiz-adv-x="1232" d="M37 723v170l145 49v45q0 246 143.5 387.5t364.5 141.5q156 0 279 -68l149 25v-1473h-307v1257q-66 29 -121 29q-197 0 -196 -274v-74h190v-215h-190v-723h-312v723h-145z" />
-<glyph unicode="&#xfb03;" horiz-adv-x="1845" d="M37 723v170l145 49v16q0 238 137.5 373t348.5 135q82 0 156.5 -22.5t103 -41t39.5 -28.5q135 141 354 142q82 0 156.5 -20.5t107.5 -41.5l35 -18l-98 -213q-86 63 -193 63q-182 0 -182 -254v-94h584v-938h-308v733h-276v-733h-309v733h-344v-733h-312v723h-145zM494 938 h344v70q0 80 16 157q-84 72 -178 72q-182 0 -182 -254v-45z" />
-<glyph unicode="&#xfb04;" horiz-adv-x="1886" d="M37 723v170l145 49v16q0 238 137.5 373t348.5 135q176 0 297 -90q129 139 346 140q156 0 274 -74l187 31v-1473h-310v1245q-74 41 -145 41q-170 0 -170 -244v-104h190v-215h-190v-723h-309v733h-344v-733h-312v723h-145zM494 938h344v82q0 86 16 145q-84 72 -178 72 q-182 0 -182 -254v-45z" />
-</font>
-</defs></svg> 
\ No newline at end of file
diff --git a/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansBlack-webfont.ttf b/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansBlack-webfont.ttf
deleted file mode 100644
index dd75879f10c52328758b7a0b67d0af7d950cdbea..0000000000000000000000000000000000000000
Binary files a/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansBlack-webfont.ttf and /dev/null differ
diff --git a/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansBlack-webfont.woff b/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansBlack-webfont.woff
deleted file mode 100644
index 537ba7898eb8431a9bc9a54aa9701d273ff29546..0000000000000000000000000000000000000000
Binary files a/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansBlack-webfont.woff and /dev/null differ
diff --git a/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansBold-webfont.eot b/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansBold-webfont.eot
deleted file mode 100644
index 007016f5d8eeb02a321ba78ef96ca4bf57cc2a73..0000000000000000000000000000000000000000
Binary files a/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansBold-webfont.eot and /dev/null differ
diff --git a/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansBold-webfont.svg b/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansBold-webfont.svg
deleted file mode 100644
index 7c25c8168325979b2cc4862ad141eb74413c1478..0000000000000000000000000000000000000000
--- a/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansBold-webfont.svg
+++ /dev/null
@@ -1,244 +0,0 @@
-<?xml version="1.0" standalone="no"?>
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
-<svg xmlns="http://www.w3.org/2000/svg">
-<metadata>
-This is a custom SVG webfont generated by Fontspring.
-</metadata>
-<defs>
-<font id="webfontHPO6NoNQ" horiz-adv-x="1640" >
-<font-face units-per-em="2048" ascent="1536" descent="-512" />
-<missing-glyph horiz-adv-x="491" />
-<glyph unicode=" "  horiz-adv-x="491" />
-<glyph unicode="&#x09;" horiz-adv-x="491" />
-<glyph unicode="&#xa0;" horiz-adv-x="491" />
-<glyph unicode="!" horiz-adv-x="583" d="M131 131q0 66 46 113t111.5 47t111.5 -47t46 -113q0 -63 -46 -109.5t-111 -46.5q-63 0 -110.5 46.5t-47.5 109.5zM150 1391h292l-47 -930h-202z" />
-<glyph unicode="&#x22;" horiz-adv-x="792" d="M115 823v543h221v-76l-70 -467h-151zM483 823v543h222v-76l-70 -467h-152z" />
-<glyph unicode="#" horiz-adv-x="1400" d="M70 229l22 144h273l57 278h-270l22 144h277l79 389h148l-80 -389h291l80 389h149l-80 -389h293l-22 -144h-299l-58 -278h297l-22 -144h-303l-84 -411h-152l86 411h-291l-84 -411h-149l84 411h-264zM512 373h291l57 278h-291z" />
-<glyph unicode="$" horiz-adv-x="976" d="M74 84l53 211q12 -10 34.5 -25.5t102.5 -43t170 -33.5l8 288q-168 57 -260 139t-92 205q0 125 91 217.5t278 110.5l6 180h98l-6 -176q86 -2 163 -17.5t111 -29.5l33 -14l-65 -203q-98 49 -246 57l-8 -280q172 -57 263 -134t91 -206q0 -137 -99.5 -229.5t-273.5 -110.5 l-4 -172h-98l4 168q-211 6 -350 96zM317 842q0 -51 32 -81t100 -59l6 248q-138 -12 -138 -108zM532 193q133 14 134 116q0 49 -30 80t-97 57z" />
-<glyph unicode="%" horiz-adv-x="1564" d="M70 1044.5q0 135.5 95 228.5t241 93q143 0 238 -93t95 -228.5t-95 -229.5t-238 -94q-145 0 -240.5 94t-95.5 229.5zM231 1044.5q0 -67.5 49.5 -121t125 -53.5t124 53.5t48.5 121t-48.5 120t-124 52.5t-125 -52.5t-49.5 -120zM236 0l968 1397l103 -70l-922 -1327h-149z M827 299q0 135 95.5 228.5t238.5 93.5q145 0 240.5 -93.5t95.5 -228.5t-95 -229.5t-241 -94.5q-143 0 -238.5 94.5t-95.5 229.5zM989 299q0 -70 48 -122t124 -52t125 52t49 122q0 68 -49 120t-125 52t-124 -52t-48 -120z" />
-<glyph unicode="&#x26;" horiz-adv-x="1441" d="M70 340q0 127 72.5 215t201.5 162q-104 182 -104 327q0 141 97 244t288 103q170 0 266 -87t96 -231q0 -139 -82 -229t-227 -170q37 -51 74 -90q74 -90 186 -199q160 207 186 547h228q-37 -416 -252 -688q164 -125 282 -164l-86 -166q-154 20 -366 170 q-162 -109 -371 -109q-197 0 -343 90.5t-146 274.5zM309 352q0 -84 68.5 -130t177.5 -46t203 49q-127 111 -234 238l-71 88q-144 -90 -144 -199zM502 1047q0 -90 65 -211q94 51 144.5 103t50.5 122q0 55 -35 92t-96 37q-63 0 -96 -41t-33 -102z" />
-<glyph unicode="'" horiz-adv-x="423" d="M115 823v543h235v-76l-106 -467h-129z" />
-<glyph unicode="(" horiz-adv-x="618" d="M90 553q0 152 33 298t79 246.5t92 180.5t79 119l33 39l178 -60l-32 -39q-19 -25 -70.5 -109.5t-91.5 -173.5t-71.5 -226.5t-31.5 -274.5q0 -150 31.5 -296t75.5 -246.5t89 -179.5t78 -118l31 -37l-176 -67q-12 14 -35 43t-79 123t-99 196.5t-78 261t-35 320.5z" />
-<glyph unicode=")" horiz-adv-x="618" d="M27 -324l32 40q20 26 73.5 114t93.5 183.5t73 242.5t33 297q0 393 -232 737l-65 86l178 60l34 -41q22 -27 76 -115t96 -184.5t75.5 -243.5t33.5 -299q0 -162 -33.5 -319.5t-81.5 -265t-95.5 -192.5t-79.5 -126l-35 -41z" />
-<glyph unicode="*" horiz-adv-x="1026" d="M76 854l313 92l41 -69l-235 -226zM76 1090l119 202l235 -225l-41 -72zM395 535l78 315h82l76 -315h-236zM395 1409h236l-76 -317h-82zM598 877l39 69l313 -92l-116 -203zM598 1067l236 225l116 -202l-313 -95z" />
-<glyph unicode="+" horiz-adv-x="1064" d="M51 440v166h395v414h175v-414h389v-166h-389v-440h-175v440h-395z" />
-<glyph unicode="," horiz-adv-x="507" d="M55 -301q94 90 119 131q31 53 31 121q0 55 -25.5 111.5t-95.5 156.5l231 76q94 -131 95 -260q0 -213 -263 -428z" />
-<glyph unicode="-" horiz-adv-x="755" d="M106 440v164h543v-164h-543z" />
-<glyph unicode="." horiz-adv-x="518" d="M100 131q0 66 46.5 113t112 47t111.5 -47t46 -113q0 -63 -47 -109.5t-110.5 -46.5t-111 46.5t-47.5 109.5z" />
-<glyph unicode="/" horiz-adv-x="956" d="M41 -401l682 1767h172l-680 -1767h-174z" />
-<glyph unicode="0" horiz-adv-x="1146" d="M84 475q0 209 131 365.5t367 156.5q225 0 353 -144t128 -343q0 -133 -52.5 -252t-169 -201t-274.5 -82q-225 0 -354 148.5t-129 351.5zM324 481q0 -129 60 -217t189 -88q131 0 191.5 88t60.5 219t-60 222.5t-190 91.5q-131 0 -191 -91.5t-60 -224.5z" />
-<glyph unicode="1" horiz-adv-x="874" d="M100 0v199h246v567h-237v207h487v-774h225v-199h-721z" />
-<glyph unicode="2" horiz-adv-x="950" d="M80 868q16 14 47 36t125 57.5t188 35.5q158 0 257.5 -88t99.5 -225q0 -127 -94.5 -242.5t-251.5 -244.5h432v-197h-797v143q18 12 48 35t107.5 87.5t137 124t108 133t48.5 126.5q0 61 -40 99t-106 38q-104 0 -209 -75z" />
-<glyph unicode="3" horiz-adv-x="841" d="M20 866q18 14 50 36t128.5 58.5t190.5 36.5q147 0 246.5 -80.5t99.5 -201.5q0 -205 -252 -340q135 -37 209 -126t74 -202q0 -207 -185.5 -328.5t-459.5 -121.5q-41 0 -62 2l-22 192q49 -4 72 -4q172 0 283.5 67.5t111.5 192.5q0 96 -88 139t-207 43h-43v189 q111 6 209 81.5t98 172.5q0 53 -37 83.5t-94 30.5q-47 0 -99.5 -20.5t-80.5 -40.5l-29 -23z" />
-<glyph unicode="4" horiz-adv-x="1101" d="M49 27v168l547 784h266v-764h182v-188h-182v-422h-248v422h-565zM295 215h319v483z" />
-<glyph unicode="5" horiz-adv-x="841" d="M66 -207q57 -4 84 -4q162 0 264 62.5t102 191.5q0 61 -27.5 108.5t-52 72t-98.5 50t-97.5 30.5t-113.5 22q-27 6 -39 8v639h631v-197h-385v-280q94 -25 164.5 -55.5t138.5 -80t104.5 -126t36.5 -177.5q0 -219 -174 -339.5t-450 -120.5q-43 0 -66 2z" />
-<glyph unicode="6" horiz-adv-x="1069" d="M76 565q0 156 50 299.5t146.5 259t251 187t346.5 80.5l17 -199q-442 -33 -533 -412q92 115 260 115q174 0 282 -127t108 -309q0 -195 -123 -339.5t-332 -144.5q-227 0 -350 170t-123 420zM334 588q0 -182 60.5 -297t170.5 -115q84 0 133.5 71.5t49.5 184.5q0 100 -43 178 t-150 78q-121 0 -221 -100z" />
-<glyph unicode="7" horiz-adv-x="958" d="M51 752v221h862v-150q-229 -580 -569 -1241l-246 51q311 584 527 1119h-574z" />
-<glyph unicode="8" horiz-adv-x="1056" d="M86 336q0 119 68.5 205t189.5 161q-195 158 -194 332q0 152 111.5 254.5t287.5 102.5q162 0 274.5 -88.5t112.5 -241.5q0 -186 -209 -336q115 -76 180.5 -157t65.5 -195q0 -158 -126 -278t-323 -120q-174 0 -306 96.5t-132 264.5zM309 348q0 -76 58.5 -127t138.5 -51 q86 0 149.5 56.5t63.5 127.5q0 43 -33 87t-69.5 72t-108.5 77q-96 -61 -147.5 -116.5t-51.5 -125.5zM403 1055q0 -113 156 -219q152 104 152 215q0 66 -43 105.5t-115 39.5t-111 -40t-39 -101z" />
-<glyph unicode="9" horiz-adv-x="1083" d="M88 514q0 193 123 338t332 145q227 0 350 -170t123 -419q0 -154 -50.5 -295.5t-146.5 -256t-250.5 -185t-347.5 -79.5l-16 199q444 33 532 416q-90 -119 -260 -119q-174 0 -281.5 125t-107.5 301zM346 541q0 -59 13.5 -109.5t58.5 -93.5t121 -43q121 0 219 98 q-2 176 -61.5 290t-168.5 114q-86 0 -134 -71.5t-48 -184.5z" />
-<glyph unicode=":" horiz-adv-x="569" d="M127 131q0 66 46 113t111.5 47t111.5 -47t46 -113q0 -63 -46 -109.5t-111 -46.5q-63 0 -110.5 46.5t-47.5 109.5zM127 797q0 66 46 111.5t111.5 45.5t111.5 -46t46 -111.5t-46 -110.5t-111.5 -45t-111.5 46.5t-46 109.5z" />
-<glyph unicode=";" horiz-adv-x="563" d="M84 -301q94 90 119 131q31 53 30 121q0 55 -25.5 111.5t-94.5 156.5l231 76q94 -131 94 -260q0 -213 -262 -428zM123 795q0 66 46 112.5t111.5 46.5t111.5 -47t46 -112q0 -63 -47 -109.5t-110.5 -46.5t-110.5 46.5t-47 109.5z" />
-<glyph unicode="&#x3c;" horiz-adv-x="1064" d="M53 473v94l873 469l41 -170l-676 -346l676 -368l-41 -166z" />
-<glyph unicode="=" horiz-adv-x="1064" d="M84 252v164h897v-164h-897zM84 610v164h897v-164h-897z" />
-<glyph unicode="&#x3e;" horiz-adv-x="1064" d="M98 152l674 368l-674 346l41 170l873 -469v-94l-873 -487z" />
-<glyph unicode="?" horiz-adv-x="790" d="M86 1235l57 227q23 -6 62 -19t139 -56.5t176 -90.5t138.5 -122.5t62.5 -155.5q0 -53 -31 -107.5t-76 -102.5l-90 -98q-45 -50 -75.5 -115t-30.5 -134h-207q-4 25 -4 47q0 82 36 161t80 129t79.5 102t35.5 85q0 53 -88 115.5t-176 99.5zM162 131q0 66 46 113t109 47 q66 0 113 -47t47 -113q0 -63 -47 -109.5t-113 -46.5q-63 0 -109 46.5t-46 109.5z" />
-<glyph unicode="@" horiz-adv-x="1779" d="M76 395q0 219 106.5 408.5t305 307.5t448.5 118q332 0 543 -193.5t211 -486.5q0 -307 -217 -449q-47 -31 -104.5 -50t-153 -39.5t-146.5 -35.5q-37 143 -39 146q-31 -59 -102.5 -102.5t-151.5 -43.5q-131 0 -220 107.5t-89 284.5q0 242 170 390t407 148q37 0 80 -4t68 -8 l27 -4v-535q0 -41 4 -84t8 -65l4 -23q129 8 195.5 105.5t66.5 242.5q0 229 -150.5 385t-408.5 156q-295 0 -481.5 -199.5t-186.5 -472.5q0 -256 167 -424t382 -180l-31 -166q-303 18 -507.5 235.5t-204.5 530.5zM709 377q0 -88 28.5 -150.5t83.5 -62.5q90 0 158 108v459 q-117 0 -193.5 -104.5t-76.5 -249.5z" />
-<glyph unicode="A" horiz-adv-x="1300" d="M10 0l514 1376h252l514 -1376h-268l-111 307h-528l-111 -307h-262zM461 526h370l-184 516z" />
-<glyph unicode="B" horiz-adv-x="1234" d="M170 0v1366h455q244 0 353 -95t109 -233q0 -170 -159 -297q86 -41 155.5 -123.5t69.5 -220.5q0 -180 -130 -288.5t-337 -108.5h-516zM434 221h221q223 0 224 185q0 82 -56.5 132t-167.5 50h-221v-367zM434 801h277q8 2 28.5 19.5t46 62.5t25.5 98q0 164 -217 164h-160 v-344z" />
-<glyph unicode="C" horiz-adv-x="1382" d="M80 662q0 313 209 521t555 208q276 0 461 -107l12 -6l-100 -223q-16 12 -45 29.5t-129.5 47t-208.5 29.5q-221 0 -352.5 -134t-131.5 -343q0 -217 138.5 -348t340.5 -131q109 0 208.5 30.5t146.5 63.5l45 31l106 -193q-6 -6 -20.5 -17t-63.5 -39t-104 -49.5t-145.5 -39 t-188.5 -17.5q-311 0 -522 186t-211 501z" />
-<glyph unicode="D" horiz-adv-x="1490" d="M170 0v1366h485q145 0 274.5 -36t238 -111.5t173 -207.5t64.5 -306q0 -336 -226.5 -520.5t-600.5 -184.5h-408zM434 221h123q295 0 434 129t139 342q0 209 -129 331t-374 122h-193v-924z" />
-<glyph unicode="E" horiz-adv-x="1126" d="M170 0v1366h862v-221h-598v-342h471v-219h-471v-363h613v-221h-877z" />
-<glyph unicode="F" horiz-adv-x="1083" d="M170 0v1366h858v-221h-594v-352h471v-220h-471v-573h-264z" />
-<glyph unicode="G" horiz-adv-x="1447" d="M78 659q0 197 90 361t270 267.5t420 103.5q262 0 457 -97l8 -4l-100 -223q-18 10 -50 25.5t-130.5 42t-194.5 26.5q-236 0 -368 -139t-132 -346q0 -215 144.5 -343t365.5 -128l217 20v301h-274v219h532v-708q-293 -61 -497 -62q-326 0 -542 187.5t-216 496.5z" />
-<glyph unicode="H" horiz-adv-x="1562" d="M170 0v1366h264v-559h694v559h263v-1366h-263v588h-694v-588h-264z" />
-<glyph unicode="I" horiz-adv-x="604" d="M170 0v1366h264v-1366h-264z" />
-<glyph unicode="J" horiz-adv-x="604" d="M-86 -164q258 23 258 389v1141h264v-1133q0 -117 -19.5 -212t-65.5 -183t-136 -146.5t-219 -76.5z" />
-<glyph unicode="K" horiz-adv-x="1277" d="M170 0v1366h264v-541h37l461 541h325l-563 -639l592 -727h-334l-481 606h-37v-606h-264z" />
-<glyph unicode="L" horiz-adv-x="1083" d="M170 0v1366h264v-1145h619v-221h-883z" />
-<glyph unicode="M" horiz-adv-x="1802" d="M147 0l50 1366h378l330 -948l330 948h373l49 -1366h-256l-39 1069l-379 -1069h-172l-375 1067l-35 -1067h-254z" />
-<glyph unicode="N" horiz-adv-x="1529" d="M170 0v1366h266l666 -963v963h258v-1366h-268l-664 956v-956h-258z" />
-<glyph unicode="O" d="M78 680q0 182 84 342t258 264.5t405 104.5q332 0 534 -197t202 -485q0 -190 -90.5 -357.5t-265.5 -272t-398 -104.5q-328 0 -528.5 207t-200.5 498zM354 688q0 -193 122 -341t337 -148t344 147.5t129 345.5q0 195 -124 335t-341 140t-342 -141t-125 -338z" />
-<glyph unicode="P" horiz-adv-x="1200" d="M170 0v1366h477q250 0 377 -122t127 -312q0 -215 -142.5 -342t-361.5 -127h-213v-463h-264zM434 684h170q270 0 270 234q0 227 -270 227h-170v-461z" />
-<glyph unicode="Q" d="M78 680q0 182 84 342t258 264.5t405 104.5q332 0 534 -197t202 -485q0 -236 -139.5 -430.5t-374.5 -268.5q41 -55 77.5 -93t98 -82t144.5 -65q76 -20 166 -20h17l-37 -235q-57 0 -110 6t-96 15t-86 28l-74 33q-31 14 -66 41l-54 41q-19 15 -48 46l-40 42 q-11 12 -34.5 40.5t-27.5 32.5l-62 72q-47 57 -129 72q-279 47 -443.5 240.5t-164.5 455.5zM354 688q0 -195 122 -345t337 -150t344 149.5t129 349.5q0 195 -124 335t-341 140t-342 -141t-125 -338z" />
-<glyph unicode="R" horiz-adv-x="1290" d="M170 0v1366h455q252 0 377.5 -113.5t125.5 -294.5q0 -127 -64.5 -224t-172.5 -152l385 -582h-311l-336 516h-195v-516h-264zM434 735h150q133 0 200.5 55.5t67.5 155.5q0 199 -270 199h-148v-410z" />
-<glyph unicode="S" horiz-adv-x="1054" d="M80 90l76 234q16 -14 45.5 -35t119.5 -53q84 -31 163 -31h10q90 0 152.5 39t62.5 106.5t-62.5 120.5t-153 97t-179.5 94.5t-151.5 136.5t-62.5 200q0 164 127 278t344 114q84 0 177.5 -15.5t144.5 -32.5l49 -14l-43 -237q-160 70 -324 69q-92 0 -150 -35.5t-58 -99.5 q0 -49 33.5 -91t87 -73t118 -62.5t129 -69.5t117.5 -84t87 -116.5t34 -158.5q0 -180 -136.5 -288t-338.5 -108q-111 0 -215.5 29t-153.5 57z" />
-<glyph unicode="T" horiz-adv-x="1230" d="M35 1145v221h1161v-221h-448v-1145h-263v1145h-450z" />
-<glyph unicode="U" horiz-adv-x="1458" d="M154 512v854h264v-827q0 -176 84 -258t229.5 -82t228 85t82.5 246v836h265v-825q0 -266 -164 -416t-414 -150q-258 0 -416.5 130.5t-158.5 406.5z" />
-<glyph unicode="V" horiz-adv-x="1239" d="M10 1366h281l334 -981l333 981h271l-484 -1376h-251z" />
-<glyph unicode="W" horiz-adv-x="1984" d="M37 1366h272l285 -1001l297 1001h209l297 -1001l286 1001h265l-412 -1376h-268l-277 907l-274 -907h-271z" />
-<glyph unicode="X" horiz-adv-x="1271" d="M31 0l448 678l-448 688h311l297 -473l299 473h303l-448 -682l448 -684h-311l-297 471l-297 -471h-305z" />
-<glyph unicode="Y" horiz-adv-x="1245" d="M-2 1366h309l316 -535l325 535h299l-491 -795v-571h-264v569z" />
-<glyph unicode="Z" horiz-adv-x="1191" d="M74 0v160l676 985h-646v221h986v-160l-666 -985h690v-221h-1040z" />
-<glyph unicode="[" horiz-adv-x="593" d="M152 -332v1698h413v-143h-231v-1409h231v-146h-413z" />
-<glyph unicode="\" horiz-adv-x="964" d="M61 1366h179l682 -1767h-181z" />
-<glyph unicode="]" horiz-adv-x="589" d="M25 -207h231v1448h-231v125h413v-1698h-413v125z" />
-<glyph unicode="^" horiz-adv-x="964" d="M-27 512l439 879h141l438 -879h-184l-328 655l-325 -655h-181z" />
-<glyph unicode="_" horiz-adv-x="1062" d="M18 -76h1024v-141h-1024v141z" />
-<glyph unicode="`" horiz-adv-x="1044" d="M291 1448h241l211 -334l-135 -74z" />
-<glyph unicode="a" horiz-adv-x="1007" d="M53 219q0 289 545 361v32q0 78 -24.5 116t-104.5 38q-145 -2 -295 -111l-61 181q18 14 53 33.5t146.5 53t228.5 33.5q174 0 243.5 -71.5t69.5 -231.5v-360q0 -92 88 -107l16 -2l-73 -198q-197 6 -260 137q-96 -147 -291 -148q-125 0 -203 69t-78 175zM313 240 q0 -78 90 -78q92 0 195 121v149q-285 -40 -285 -192z" />
-<glyph unicode="b" horiz-adv-x="1093" d="M123 27v1400l256 41v-600q88 88 231 88q197 0 304.5 -129t107.5 -325q0 -221 -137 -374t-389 -153q-70 0 -163 12.5t-149.5 25t-60.5 14.5zM379 174q57 -18 119 -18q119 0 190.5 86t71.5 241q0 131 -53.5 205t-143.5 74t-184 -72v-516z" />
-<glyph unicode="c" horiz-adv-x="956" d="M66 449q0 207 142 357t367 150q195 0 328 -90l4 -4l-90 -186q-96 84 -223 84q-115 0 -189.5 -80t-74.5 -217q0 -131 70.5 -211t185.5 -80q63 0 124.5 23.5t90.5 46.5l28 24l78 -172q-12 -12 -35.5 -32.5t-111.5 -53.5t-193 -33q-225 0 -363 135.5t-138 338.5z" />
-<glyph unicode="d" horiz-adv-x="1110" d="M70 438q0 213 129 365.5t360 152.5q90 0 162 -28v499l254 41v-1183q0 -49 10 -121t23 -119l10 -45l-238 -14q-18 70 -28 135q-84 -145 -285 -146q-178 0 -287.5 133t-109.5 330zM336 455q0 -135 48 -212t138 -77q117 0 199 123v360q0 117 -143 117q-115 0 -178.5 -80.5 t-63.5 -230.5z" />
-<glyph unicode="e" horiz-adv-x="1009" d="M70 461q0 209 129 352t333 143q180 0 289 -118.5t111 -337.5l-139 -41l-461 -60q23 -104 90 -165.5t172 -61.5q68 0 138.5 28.5t107.5 57.5l37 29l65 -181q-6 -6 -17.5 -14t-50 -30.5t-80.5 -40t-109 -32t-134 -14.5q-227 0 -354 140.5t-127 345.5zM326 547l329 43 q0 6 -1 18.5t-9 43t-21.5 53t-42 42t-67.5 19.5q-80 0 -129 -60.5t-59 -158.5z" />
-<glyph unicode="f" horiz-adv-x="733" d="M45 750v137l145 51v78q0 229 125 360t322 131q168 -2 285 -80l-91 -190q-88 66 -190 66q-195 0 -195 -269v-102h250v-182h-250v-750h-256v750h-145z" />
-<glyph unicode="g" horiz-adv-x="1050" d="M47 -246q0 143 225 269q-74 27 -110.5 59.5t-36.5 79.5q0 94 147 182q-90 43 -139 119t-49 168q0 152 120 238.5t290 86.5q63 0 143 -19t129 -19h117q29 0 60.5 5t47.5 11l17 4l14 -184h-100q-37 0 -76 6q61 -61 61 -156q0 -135 -129 -218t-299 -83q-41 0 -59 2 q-70 -39 -70 -65q0 -29 207 -82l88 -25q76 -20 120 -36.5t103.5 -47.5t89 -78t29.5 -108q0 -141 -149.5 -244.5t-368.5 -103.5q-172 0 -297 64t-125 175zM272 -199q0 -51 56.5 -79.5t152.5 -28.5q115 0 192 37t77 94q0 39 -45.5 63.5t-167.5 59.5l-101 28q-4 -2 -25.5 -16 t-28.5 -19l-26 -19q-18 -13 -26 -21l-22 -22q-13 -13 -19 -24.5t-11.5 -25t-5.5 -27.5zM326 627q0 -59 44 -106.5t124 -47.5q76 0 124 43t48 107q0 61 -45.5 112t-125 51t-124.5 -49t-45 -110z" />
-<glyph unicode="h" horiz-adv-x="1099" d="M129 0v1427l256 41v-684q158 172 340 172q254 0 254 -292v-664h-254v555q0 96 -21.5 138t-72.5 42q-100 0 -246 -155v-580h-256z" />
-<glyph unicode="i" horiz-adv-x="514" d="M106 1277.5q0 63.5 43.5 103.5t109 40t107.5 -40t42 -103.5t-42 -103t-107.5 -39.5t-109 39.5t-43.5 103zM129 0v932h256v-932h-256z" />
-<glyph unicode="j" horiz-adv-x="514" d="M-119 -287q115 18 181.5 90t66.5 232v897h256v-885q0 -244 -116.5 -374t-311.5 -158zM104 1277.5q0 63.5 43 103.5t109 40t108 -40t42 -103.5t-42 -103t-108 -39.5t-109 39.5t-43 103z" />
-<glyph unicode="k" horiz-adv-x="1064" d="M129 0v1427l256 41v-858h33l305 322h324l-410 -408l428 -524h-317l-330 424h-33v-424h-256z" />
-<glyph unicode="l" horiz-adv-x="514" d="M129 0v1427l256 41v-1468h-256z" />
-<glyph unicode="m" horiz-adv-x="1669" d="M125 0v911l246 41v-170q160 174 342 174q193 0 237 -176q166 176 346 176q252 0 252 -292v-664h-254v555q0 96 -21.5 138t-72.5 42q-92 0 -235 -143v-592h-254v555q0 96 -21.5 138t-73.5 42q-94 0 -235 -145v-590h-256z" />
-<glyph unicode="n" horiz-adv-x="1095" d="M125 0v911l246 41v-172q162 176 352 176q252 0 252 -292v-664h-254v555q0 96 -21.5 138t-72.5 42q-98 0 -246 -147v-588h-256z" />
-<glyph unicode="o" horiz-adv-x="1142" d="M68 463q0 92 29.5 176t88 156.5t158.5 116.5t231 44q238 0 369 -139t131 -332q0 -90 -28.5 -176t-87 -162.5t-160 -124t-232.5 -47.5q-238 0 -368.5 143.5t-130.5 344.5zM332 481q0 -131 62.5 -223t178.5 -92q102 0 170 82t68 211q0 123 -61.5 215t-178.5 92 q-102 0 -170.5 -80t-68.5 -205z" />
-<glyph unicode="p" horiz-adv-x="1101" d="M125 -481v1392l246 41v-151q80 156 268 155q178 0 284.5 -132t106.5 -328q0 -213 -125 -367t-346 -154q-115 0 -178 39v-454zM381 250q0 -39 36 -61.5t99 -22.5q113 0 181.5 81t68.5 232q0 129 -48 203t-128 74q-113 0 -209 -140v-366z" />
-<glyph unicode="q" horiz-adv-x="1095" d="M70 430q0 221 137 373.5t389 152.5q72 0 165 -13t150 -25l58 -13v-1345l-254 -41v544q-84 -88 -234 -88q-195 0 -303 130t-108 325zM334 449q0 -129 52 -201t144 -72q90 0 185 68v512q-59 20 -119 20q-119 0 -190.5 -85.5t-71.5 -241.5z" />
-<glyph unicode="r" horiz-adv-x="747" d="M125 0v911l246 41v-192q117 197 278 196l80 -16l-41 -246q-43 18 -88 19q-115 0 -219 -154v-559h-256z" />
-<glyph unicode="s" horiz-adv-x="843" d="M66 57l53 209q12 -10 34.5 -26.5t91 -43t136.5 -26.5q145 0 145 80q0 41 -68.5 80t-150.5 69.5t-150.5 101t-68.5 167.5q0 123 95.5 205.5t291.5 82.5q172 0 277 -51l-54 -207q-102 63 -223 64q-133 0 -133 -74q0 -35 45 -63.5t109.5 -56t128 -62.5t108.5 -94.5 t45 -139.5q0 -133 -102.5 -215t-284.5 -82q-90 0 -171 20.5t-118 41.5z" />
-<glyph unicode="t" horiz-adv-x="813" d="M43 750v137l154 51v217l247 49v-272h285v-182h-285v-426q0 -139 97 -140q63 0 180 80l70 -186q-14 -12 -42 -28.5t-109 -45.5t-161 -29q-133 0 -212 74t-79 213v488h-145z" />
-<glyph unicode="u" horiz-adv-x="1095" d="M119 256v676h256v-555q0 -94 19.5 -137t76.5 -43q92 0 236 127v608h254v-647q0 -49 10 -120t20 -116l10 -45l-245 -22q-20 90 -29 157q-158 -164 -352 -164q-117 0 -186.5 69t-69.5 212z" />
-<glyph unicode="v" horiz-adv-x="972" d="M12 932h269l200 -604l226 604h258l-373 -938h-232z" />
-<glyph unicode="w" horiz-adv-x="1570" d="M27 932h262l178 -647l213 647h217l209 -647l182 647h256l-303 -938h-248l-209 608l-206 -608h-250z" />
-<glyph unicode="x" horiz-adv-x="987" d="M29 0l319 465l-319 467h290l179 -273l178 273h282l-321 -461l321 -471h-284l-182 279l-187 -279h-276z" />
-<glyph unicode="y" horiz-adv-x="972" d="M8 932h266l218 -610l213 610h258l-388 -1000q-63 -162 -188 -281.5t-289 -135.5l-78 196q100 12 188.5 81t125.5 155l33 78z" />
-<glyph unicode="z" horiz-adv-x="921" d="M74 0v156l426 579h-410v197h741v-156l-434 -579h451v-197h-774z" />
-<glyph unicode="{" horiz-adv-x="688" d="M23 467v141q55 2 97 26.5t66.5 76t40 96.5t20.5 122t6 115.5t1 114.5v31q0 166 119 247t317 81v-136q-88 -6 -138 -22.5t-76.5 -56t-33 -86t-6.5 -136.5q0 -459 -213 -540v-4q213 -82 213 -564q0 -90 6.5 -136t33 -85t76.5 -55t138 -25v-135q-436 0 -436 328v31 q0 74 -1 116.5t-6 120.5t-20.5 126t-40 100.5t-66.5 79t-97 28.5z" />
-<glyph unicode="|" horiz-adv-x="483" d="M150 -461v1995h184v-1995h-184z" />
-<glyph unicode="}" horiz-adv-x="688" d="M-2 -328q88 8 138 24.5t77 55.5t33 85t6 136q0 481 213 564v4q-213 82 -213 540q0 90 -6 136.5t-33 86t-77 56t-138 22.5v136q201 0 318.5 -81t117.5 -247q0 -268 27 -377q51 -201 205 -205v-141q-55 -2 -97.5 -28.5t-67 -80t-40 -100.5t-20.5 -127t-6 -120t-1 -115v-31 q0 -328 -436 -328v135z" />
-<glyph unicode="~" horiz-adv-x="1189" d="M111 344q0 176 75.5 261t210.5 85q66 0 118 -19.5t84 -48t59.5 -57t60.5 -48t69 -19.5q72 0 101 57t29 127h167q0 -176 -75.5 -261t-210.5 -85q-66 0 -118 19.5t-84 48t-59.5 57t-60.5 48t-69 19.5q-72 0 -100.5 -57t-28.5 -127h-168z" />
-<glyph unicode="&#xa1;" horiz-adv-x="579" d="M139 799q0 63 46 109t112 46q63 0 110.5 -46t47.5 -109q0 -66 -46.5 -113t-112 -47t-111.5 47t-46 113zM143 -461l47 930h203l43 -930h-293z" />
-<glyph unicode="&#xa2;" horiz-adv-x="970" d="M74 569q0 174 113.5 301t314.5 142l8 180h98l-8 -180q88 -8 161 -37t101 -53l29 -27l-125 -158q-72 59 -174 74l-19 -475q57 4 113.5 26.5t85.5 43.5l29 20l78 -172q-12 -12 -35 -29.5t-105 -50.5t-174 -39l-6 -180h-98l6 182q-180 20 -286.5 141t-106.5 291zM324 578 q0 -84 39.5 -147.5t111.5 -84.5l19 461q-78 -16 -124 -76.5t-46 -152.5z" />
-<glyph unicode="&#xa3;" horiz-adv-x="1132" d="M74 127q6 2 14 6t31.5 19.5t42 34t36 50t21.5 68.5l21 184h-123v119h137l20 164q20 182 121 288.5t281 106.5q188 0 309 -110l8 -8l-125 -158q-78 80 -194 80q-70 0 -106 -44t-48 -161l-16 -158h344l-14 -119h-340q-8 -76 -24.5 -146.5t-29.5 -102.5l-12 -33 q106 -57 234 -57q104 0 154 40.5t58 149.5h181q-18 -178 -92 -284.5t-242 -106.5q-90 0 -223 44t-195 44q-68 0 -188 -37z" />
-<glyph unicode="&#xa5;" horiz-adv-x="1161" d="M74 1143h270l236 -436l241 436h258l-270 -467h211v-119h-281l-34 -61v-86h315v-119h-315v-291h-254v291h-295v119h295v84l-37 63h-258v119h188z" />
-<glyph unicode="&#xa6;" horiz-adv-x="483" d="M150 365h186v-734h-186v734zM150 682v733h186v-733h-186z" />
-<glyph unicode="&#xa7;" horiz-adv-x="1009" d="M57 -379l62 135q137 -96 291 -96q115 0 175 85t60 220q0 47 -10 113l-107 590q-23 131 -22 206q0 137 53 211l141 -22q-35 -76 -34 -189q0 -53 10 -114l119 -666q12 -68 12 -137q0 -193 -99.5 -317.5t-293.5 -124.5q-190 0 -351 102zM178 946q0 193 99.5 319t293.5 126 q190 0 351 -103l6 -4l-62 -135q-137 96 -291 96q-115 0 -175 -86t-60 -219q0 -63 10 -113l109 -589q20 -123 20 -207q0 -135 -51 -211l-143 22q35 82 34 189q0 53 -10 114l-119 666q-12 67 -12 135z" />
-<glyph unicode="&#xa8;" horiz-adv-x="1044" d="M168 1276q0 59 38 95t97 36q61 0 99 -36t38 -95t-37.5 -95t-99.5 -36q-59 0 -97 36t-38 95zM604 1276q0 59 38 95t97 36q61 0 99.5 -36t38.5 -95t-38 -95t-100 -36q-59 0 -97 36t-38 95z" />
-<glyph unicode="&#xa9;" horiz-adv-x="1568" d="M78 682q0 293 207 500t499.5 207t499.5 -207t207 -500t-207 -500t-499.5 -207t-499.5 207t-207 500zM193 682q0 -250 172 -426t419.5 -176t419.5 176t172 426t-172 426t-419.5 176t-419.5 -176t-172 -426zM389 680q0 168 111.5 295t304.5 127q182 0 287 -113l10 -10 l-92 -133q-8 10 -24.5 26.5t-70 43t-110.5 26.5q-109 0 -168 -71.5t-59 -176.5q0 -109 64.5 -184.5t174.5 -75.5q131 4 225 98l56 -139q-10 -12 -32 -32.5t-97.5 -53.5t-165.5 -33q-180 0 -297 117t-117 289z" />
-<glyph unicode="&#xaa;" horiz-adv-x="804" d="M76 877q0 203 383 253v21q0 47 -15.5 71.5t-66.5 24.5q-49 0 -103.5 -21.5t-85.5 -41.5l-28 -21l-43 142q14 10 38.5 23t106.5 37t168 24q127 0 177 -51.5t50 -159.5v-252q0 -35 18.5 -54.5t37.5 -21.5l18 -2l-51 -139q-154 2 -199 86q-70 -92 -200 -93 q-92 0 -148.5 48.5t-56.5 126.5zM279 899q0 -59 57 -59t123 73v107q-180 -29 -180 -121z" />
-<glyph unicode="&#xab;" horiz-adv-x="1044" d="M33 510v8q31 25 200 217l189 211l141 -41l-293 -391l293 -391l-141 -41l-165 182l-107 121l-59 66q-26 29 -36 39t-22 20zM434 510v8q31 25 201 217l188 211l142 -41l-293 -391l293 -391l-142 -41l-165 182l-107 121l-58 66q-26 29 -36.5 39t-22.5 20z" />
-<glyph unicode="&#xac;" horiz-adv-x="1163" d="M96 643v164h948v-580h-170v416h-778z" />
-<glyph unicode="&#xad;" horiz-adv-x="755" d="M106 440v164h543v-164h-543z" />
-<glyph unicode="&#xae;" horiz-adv-x="864" d="M78 1087.5q0 145.5 104.5 250t250 104.5t249.5 -104.5t104 -250t-104 -250t-249.5 -104.5t-250 104.5t-104.5 250zM154 1087q0 -117 82.5 -202.5t195.5 -85.5q111 0 195 87t84 201.5t-84 200.5t-195 86q-113 0 -195.5 -86t-82.5 -201zM301 918v348h123q143 0 143 -105 q0 -63 -61 -96l108 -147h-104l-88 126h-27v-126h-94zM395 1106h35q41 0 41 47q0 49 -55 49h-21v-96z" />
-<glyph unicode="&#xaf;" horiz-adv-x="964" d="M219 1182v159h526v-159h-526z" />
-<glyph unicode="&#xb0;" horiz-adv-x="649" d="M74 1144.5q0 102.5 72.5 174.5t177 72t177 -72t72.5 -174.5t-72.5 -174t-177 -71.5t-177 71.5t-72.5 174zM190 1144.5q0 -57.5 39 -97t94.5 -39.5t94.5 39.5t39 97t-39 96.5t-94.5 39t-94.5 -39t-39 -96.5z" />
-<glyph unicode="&#xb1;" horiz-adv-x="1064" d="M92 625v166h354v352h175v-352h348v-166h-348v-349h-175v349h-354zM106 0v164h857v-164h-857z" />
-<glyph unicode="&#xb2;" horiz-adv-x="716" d="M55 883q23 23 71 66l74 69l65 64q40 40 62.5 69t46 62.5t34 64.5t10.5 59q0 102 -115 103q-84 0 -147 -62l-99 121q10 12 32 30.5t94.5 50.5t154.5 32q123 0 199.5 -67.5t76.5 -180.5q0 -184 -278 -444h323v-150h-589z" />
-<glyph unicode="&#xb3;" horiz-adv-x="681" d="M39 829l82 136q76 -53 162 -54q59 0 92 30t33 71q0 47 -46.5 69.5t-105.5 22.5h-70v149q70 2 127.5 38t57.5 91q0 68 -82 68q-35 0 -71 -12.5t-54 -24.5l-19 -10l-79 123q111 86 266 86q113 0 179.5 -56.5t66.5 -138.5q0 -74 -49.5 -132t-114.5 -79q201 -43 200 -192 q0 -106 -90 -183t-229 -77q-68 0 -131.5 18.5t-93.5 38.5z" />
-<glyph unicode="&#xb4;" horiz-adv-x="1071" d="M301 1114l211 334h244l-318 -408z" />
-<glyph unicode="&#xb5;" horiz-adv-x="1204" d="M129 -442q20 199 21 362v1012h256v-555q0 -94 19 -137t77 -43q96 0 235 127v608h254v-645q0 -84 22.5 -103.5t110.5 -19.5v-178q-82 -10 -129 -11q-121 0 -176 41t-71 115q-156 -156 -342 -156q-33 0 -66 7q6 -86 28.5 -237t22.5 -187h-262z" />
-<glyph unicode="&#x3bc;" horiz-adv-x="1204" d="M129 -442q20 199 21 362v1012h256v-555q0 -94 19 -137t77 -43q96 0 235 127v608h254v-645q0 -84 22.5 -103.5t110.5 -19.5v-178q-82 -10 -129 -11q-121 0 -176 41t-71 115q-156 -156 -342 -156q-33 0 -66 7q6 -86 28.5 -237t22.5 -187h-262z" />
-<glyph unicode="&#xb6;" horiz-adv-x="1380" d="M63 864q0 203 155 352.5t431 149.5h635v-137h-151v-1229h-146v1229h-153v-1270q0 -444 -379 -444l-31 149q133 0 193.5 74t60.5 242v387h-19q-291 0 -443.5 145t-152.5 352z" />
-<glyph unicode="&#xb7;" horiz-adv-x="530" d="M106 522q0 66 46.5 112t112 46t111.5 -46t46 -111.5t-46 -110.5t-111.5 -45t-112 46t-46.5 109z" />
-<glyph unicode="&#xb8;" horiz-adv-x="1044" d="M328 -422l49 115q70 -59 155 -60q43 0 70 16.5t27 39.5q0 20 -27 38.5t-59.5 31t-59 38t-26.5 58t32 98.5l25 47h125l-18 -39q-18 -41 -19 -55q0 -20 28.5 -36.5t61.5 -29t61.5 -46.5t28.5 -83q0 -84 -68.5 -140t-178.5 -56q-57 0 -108.5 15t-74.5 32z" />
-<glyph unicode="&#xb9;" horiz-adv-x="643" d="M63 770v141h189v545h-172v141h364v-686h172v-141h-553z" />
-<glyph unicode="&#xba;" horiz-adv-x="876" d="M74 1042.5q0 139.5 92 243t276 103.5q170 0 265.5 -97.5t95.5 -232.5q0 -137 -92.5 -247t-274.5 -110q-172 0 -267 100.5t-95 240zM281 1057q0 -90 40.5 -152.5t118.5 -62.5q68 0 112 56t44 142t-40 146.5t-118 60.5q-68 0 -112.5 -54t-44.5 -136z" />
-<glyph unicode="&#xbb;" horiz-adv-x="1044" d="M80 123l295 391l-295 391l141 41q356 -399 375 -416q6 -6 14 -12v-8q-12 -10 -22 -20.5l-36 -38.5l-58 -66l-108 -121l-165 -182zM481 123l293 391l-293 391l142 41q356 -399 374 -416q6 -6 15 -12v-8q-12 -10 -22.5 -20.5t-36.5 -38.5l-58 -66l-108 -121l-164 -182z" />
-<glyph unicode="&#xbc;" horiz-adv-x="1738" d="M90 541v141h189v545h-173v141h365v-686h172v-141h-553zM432 0l815 1417l135 -57l-782 -1360h-168zM997 311l340 520h219v-503h115v-144h-115v-184h-184v184h-358zM1163 328h209v317z" />
-<glyph unicode="&#xbd;" horiz-adv-x="1822" d="M88 541v141h188v545h-172v141h365v-686h172v-141h-553zM469 0l815 1417l135 -57l-782 -1360h-168zM1149 113q23 23 71 66l73 69l66 64q40 40 62.5 69t46 62.5t33.5 64.5t10 59q0 102 -114 103q-84 0 -148 -62l-98 121q10 12 31.5 30.5t94.5 50.5t155 32 q123 0 199.5 -67.5t76.5 -180.5q0 -184 -278 -444h323v-150h-590z" />
-<glyph unicode="&#xbe;" horiz-adv-x="1751" d="M72 600l82 135q76 -53 161 -53q59 0 92 29.5t33 70.5q0 47 -46 69.5t-105 22.5h-70v150q70 2 127 38t57 91q0 68 -81 68q-35 0 -71 -12.5t-54 -24.5l-19 -10l-80 122q111 86 267 86q113 0 179 -56t66 -138q0 -74 -49 -132.5t-115 -78.5q201 -43 201 -193q0 -106 -90 -183 t-229 -77q-68 0 -131.5 18.5t-94.5 39.5zM444 0l816 1417l135 -57l-783 -1360h-168zM1010 311l340 520h219v-503h114v-144h-114v-184h-185v184h-358zM1176 328h208v317z" />
-<glyph unicode="&#xbf;" horiz-adv-x="778" d="M68 -66q0 51 30.5 102.5t75.5 97.5l90 95q45 49 76 111.5t31 130.5h207q4 -25 4 -49q0 -78 -36 -152.5t-80 -123t-80 -97.5t-36 -82q0 -53 88 -115.5t176 -97.5l88 -37l-57 -227q-23 6 -61.5 19.5t-139 56.5t-176 90t-138 122.5t-62.5 155.5zM311 798.5 q0 65.5 47.5 111.5t112.5 46q63 0 109.5 -47t46.5 -110.5t-46 -110.5t-110 -47q-66 0 -113 46t-47 111.5z" />
-<glyph unicode="&#xc0;" horiz-adv-x="1300" d="M10 0l514 1376h252l514 -1376h-268l-111 307h-528l-111 -307h-262zM362 1593l72 189l443 -195l-52 -137zM461 526h370l-184 516z" />
-<glyph unicode="&#xc1;" horiz-adv-x="1300" d="M10 0l514 1376h252l514 -1376h-268l-111 307h-528l-111 -307h-262zM418 1587l442 195l72 -189l-465 -143zM461 526h370l-184 516z" />
-<glyph unicode="&#xc2;" horiz-adv-x="1300" d="M10 0l514 1376h252l514 -1376h-268l-111 307h-528l-111 -307h-262zM287 1559l258 225h200l256 -225l-131 -89l-225 181l-225 -181zM461 526h370l-184 516z" />
-<glyph unicode="&#xc3;" horiz-adv-x="1300" d="M10 0l514 1376h252l514 -1376h-268l-111 307h-528l-111 -307h-262zM260 1522q0 27 4 54.5t17.5 63t36 62.5t65.5 46t100 19q76 0 138.5 -32.5t106.5 -65.5t79 -33q68 0 67 107v20h158v-30q0 -37 -7 -72t-27.5 -80t-70.5 -72.5t-122 -27.5q-61 0 -111.5 20.5t-78 45 t-60.5 45t-63 20.5q-74 0 -74 -105l2 -18h-158q-2 13 -2 33zM461 526h370l-184 516z" />
-<glyph unicode="&#xc4;" horiz-adv-x="1300" d="M10 0l514 1376h252l514 -1376h-268l-111 307h-528l-111 -307h-262zM250 1626q0 61 39 98t100.5 37t101 -36.5t39.5 -98.5q0 -59 -39.5 -97t-101.5 -38q-59 0 -99 38t-40 97zM461 526h370l-184 516zM762 1626q0 61 40 98t101.5 37t100 -36.5t38.5 -98.5q0 -59 -39.5 -97 t-99.5 -38q-61 0 -101 38t-40 97z" />
-<glyph unicode="&#xc5;" horiz-adv-x="1300" d="M10 0l514 1376h252l514 -1376h-268l-111 307h-528l-111 -307h-262zM438 1622q0 66 52.5 114t155 48t154.5 -48t52 -114q0 -74 -52 -123t-154.5 -49t-155 49t-52.5 123zM461 526h370l-184 516zM553 1620q0 -39 23.5 -63.5t68.5 -24.5q43 0 68.5 24.5t25.5 63.5 q0 33 -24.5 57.5t-69.5 24.5t-68.5 -24.5t-23.5 -57.5z" />
-<glyph unicode="&#xc6;" horiz-adv-x="1843" d="M-23 0l771 1366h1001v-221h-598v-342h471v-219h-471v-363h612v-221h-874v379h-420l-209 -379h-283zM592 600h297v537z" />
-<glyph unicode="&#xc7;" horiz-adv-x="1384" d="M82 662q0 313 209 521t555 208q276 0 461 -107l12 -6l-100 -223q-16 12 -45 29.5t-129.5 47t-208.5 29.5q-221 0 -352.5 -134t-131.5 -343q0 -217 138.5 -348t340.5 -131q109 0 208.5 30.5t144.5 63.5l47 31l106 -193q-6 -6 -20 -16t-61.5 -38t-101.5 -48.5t-142 -39 t-183 -20.5l-6 -14q-18 -41 -18 -55q0 -20 27.5 -36.5t62.5 -29t62.5 -46.5t27.5 -83q0 -84 -68.5 -140t-179.5 -56q-57 0 -108 15t-76 32l-23 16l50 115q70 -59 155 -60q43 0 69.5 16.5t26.5 39.5q0 20 -26.5 38.5t-59 31t-59.5 38t-27 58t33 98.5l15 29 q-272 33 -448.5 213t-176.5 467z" />
-<glyph unicode="&#xc8;" horiz-adv-x="1126" d="M170 0v1366h862v-221h-598v-342h471v-219h-471v-363h613v-221h-877zM326 1593l71 189l443 -195l-52 -137z" />
-<glyph unicode="&#xc9;" horiz-adv-x="1126" d="M170 0v1366h862v-221h-598v-342h471v-219h-471v-363h613v-221h-877zM383 1587l442 195l72 -189l-465 -143z" />
-<glyph unicode="&#xca;" horiz-adv-x="1126" d="M170 0v1366h862v-221h-598v-342h471v-219h-471v-363h613v-221h-877zM252 1559l258 225h201l256 -225l-131 -89l-226 181l-225 -181z" />
-<glyph unicode="&#xcb;" horiz-adv-x="1126" d="M170 0v1366h862v-221h-598v-342h471v-219h-471v-363h613v-221h-877zM215 1626q0 61 39 98t100.5 37t101.5 -36.5t40 -98.5q0 -59 -40 -97t-102 -38q-59 0 -99 38t-40 97zM727 1626q0 61 40 98t101.5 37t100.5 -36.5t39 -98.5q0 -59 -40 -97t-100 -38q-61 0 -101 38 t-40 97z" />
-<glyph unicode="&#xcc;" horiz-adv-x="604" d="M23 1593l71 189l443 -195l-52 -137zM170 0v1366h264v-1366h-264z" />
-<glyph unicode="&#xcd;" horiz-adv-x="604" d="M78 1587l442 195l72 -189l-465 -143zM170 0v1366h264v-1366h-264z" />
-<glyph unicode="&#xce;" horiz-adv-x="604" d="M-53 1559l258 225h201l256 -225l-132 -89l-225 181l-225 -181zM170 0v1366h264v-1366h-264z" />
-<glyph unicode="&#xcf;" horiz-adv-x="604" d="M-47 1630.5q0 59.5 38 95t97 35.5q61 0 99 -35.5t38 -95t-37.5 -95.5t-99.5 -36q-59 0 -97 36t-38 95.5zM170 0v1366h264v-1366h-264zM389 1630.5q0 59.5 38 95t97 35.5q61 0 99.5 -35.5t38.5 -95t-38 -95.5t-100 -36q-59 0 -97 36t-38 95.5z" />
-<glyph unicode="&#xd0;" horiz-adv-x="1521" d="M53 592v203h148v571h485q145 0 274.5 -36t238 -111.5t173 -207.5t64.5 -306q0 -336 -226.5 -520.5t-601.5 -184.5h-407v592h-148zM465 221h123q295 0 434 129t139 342q0 209 -129 331t-375 122h-192v-350h315v-203h-315v-371z" />
-<glyph unicode="&#xd1;" horiz-adv-x="1529" d="M170 0v1366h266l666 -963v963h258v-1366h-268l-664 956v-956h-258zM379 1522q0 27 4 54.5t17.5 63t36 62.5t65.5 46t100 19q76 0 138.5 -32.5t106.5 -65.5t79 -33q68 0 67 107v20h158v-30q0 -37 -7 -72t-27.5 -80t-71 -72.5t-121.5 -27.5q-61 0 -111.5 20.5t-78 45 t-60.5 45t-64 20.5q-74 0 -73 -105l2 -18h-158q-2 13 -2 33z" />
-<glyph unicode="&#xd2;" d="M78 680q0 182 84 342t258 264.5t405 104.5q332 0 534 -197t202 -485q0 -190 -90.5 -357.5t-265.5 -272t-398 -104.5q-328 0 -528.5 207t-200.5 498zM354 688q0 -193 122 -341t337 -148t344 147.5t129 345.5q0 195 -124 335t-341 140t-342 -141t-125 -338zM535 1593 l71 189l443 -195l-52 -137z" />
-<glyph unicode="&#xd3;" d="M78 680q0 182 84 342t258 264.5t405 104.5q332 0 534 -197t202 -485q0 -190 -90.5 -357.5t-265.5 -272t-398 -104.5q-328 0 -528.5 207t-200.5 498zM354 688q0 -193 122 -341t337 -148t344 147.5t129 345.5q0 195 -124 335t-341 140t-342 -141t-125 -338zM592 1587 l442 195l72 -189l-465 -143z" />
-<glyph unicode="&#xd4;" d="M78 680q0 182 84 342t258 264.5t405 104.5q332 0 534 -197t202 -485q0 -190 -90.5 -357.5t-265.5 -272t-398 -104.5q-328 0 -528.5 207t-200.5 498zM354 688q0 -193 122 -341t337 -148t344 147.5t129 345.5q0 195 -124 335t-341 140t-342 -141t-125 -338zM461 1559 l258 225h201l256 -225l-132 -89l-225 181l-225 -181z" />
-<glyph unicode="&#xd5;" d="M78 680q0 182 84 342t258 264.5t405 104.5q332 0 534 -197t202 -485q0 -190 -90.5 -357.5t-265.5 -272t-398 -104.5q-328 0 -528.5 207t-200.5 498zM354 688q0 -193 122 -341t337 -148t344 147.5t129 345.5q0 195 -124 335t-341 140t-342 -141t-125 -338zM434 1522 q0 27 4 54.5t17.5 63t36 62.5t65.5 46t100 19q76 0 138.5 -32.5t106.5 -65.5t79 -33q68 0 68 107v20h157v-30q0 -37 -7 -72t-27.5 -80t-70.5 -72.5t-122 -27.5q-61 0 -111.5 20.5t-78 45t-60.5 45t-63 20.5q-74 0 -74 -105l2 -18h-158q-2 13 -2 33z" />
-<glyph unicode="&#xd6;" d="M78 680q0 182 84 342t258 264.5t405 104.5q332 0 534 -197t202 -485q0 -190 -90.5 -357.5t-265.5 -272t-398 -104.5q-328 0 -528.5 207t-200.5 498zM354 688q0 -193 122 -341t337 -148t344 147.5t129 345.5q0 195 -124 335t-341 140t-342 -141t-125 -338zM424 1626 q0 61 39 98t100.5 37t101.5 -36.5t40 -98.5q0 -59 -40 -97t-102 -38q-59 0 -99 38t-40 97zM936 1626q0 61 40 98t101.5 37t100.5 -36.5t39 -98.5q0 -59 -40 -97t-100 -38q-61 0 -101 38t-40 97z" />
-<glyph unicode="&#xd7;" horiz-adv-x="1064" d="M72 160l348 358l-348 361l110 114l350 -360l351 360l110 -114l-350 -361l350 -358l-112 -115l-349 358l-348 -358z" />
-<glyph unicode="&#xd8;" d="M78 680q0 182 84 342t258 264.5t405 104.5q211 0 377 -86l94 122h162l-145 -192q119 -94 183.5 -231.5t64.5 -294.5q0 -190 -90.5 -357.5t-265.5 -272t-398 -104.5q-213 0 -381 95l-100 -131h-164l157 206q-117 98 -179 237.5t-62 297.5zM354 688q0 -201 119 -340 l582 762q-98 57 -234 57q-217 0 -342 -141t-125 -338zM571 264q104 -66 242 -65q215 0 344 147.5t129 345.5q0 201 -129 340z" />
-<glyph unicode="&#xd9;" horiz-adv-x="1458" d="M154 512v854h264v-827q0 -176 84 -258t229.5 -82t228 85t82.5 246v836h265v-825q0 -266 -164 -416t-414 -150q-258 0 -416.5 130.5t-158.5 406.5zM444 1593l72 189l442 -195l-51 -137z" />
-<glyph unicode="&#xda;" horiz-adv-x="1458" d="M154 512v854h264v-827q0 -176 84 -258t229.5 -82t228 85t82.5 246v836h265v-825q0 -266 -164 -416t-414 -150q-258 0 -416.5 130.5t-158.5 406.5zM502 1587l442 195l72 -189l-465 -143z" />
-<glyph unicode="&#xdb;" horiz-adv-x="1458" d="M154 512v854h264v-827q0 -176 84 -258t229.5 -82t228 85t82.5 246v836h265v-825q0 -266 -164 -416t-414 -150q-258 0 -416.5 130.5t-158.5 406.5zM371 1559l258 225h200l256 -225l-131 -89l-225 181l-225 -181z" />
-<glyph unicode="&#xdc;" horiz-adv-x="1458" d="M154 512v854h264v-827q0 -176 84 -258t229.5 -82t228 85t82.5 246v836h265v-825q0 -266 -164 -416t-414 -150q-258 0 -416.5 130.5t-158.5 406.5zM334 1626q0 61 39 98t100.5 37t101 -36.5t39.5 -98.5q0 -59 -39.5 -97t-101.5 -38q-59 0 -99 38t-40 97zM846 1626 q0 61 40 98t101.5 37t100 -36.5t38.5 -98.5q0 -59 -39.5 -97t-99.5 -38q-61 0 -101 38t-40 97z" />
-<glyph unicode="&#xdd;" horiz-adv-x="1245" d="M-2 1366h309l316 -535l325 535h299l-491 -795v-571h-264v569zM395 1587l443 195l71 -189l-465 -143z" />
-<glyph unicode="&#xde;" horiz-adv-x="1191" d="M170 0v1366h264v-281h234q244 0 358.5 -106.5t114.5 -276.5q0 -195 -130 -306t-343 -111h-234v-285h-264zM434 506h193q240 0 239 182q0 178 -239 178h-193v-360z" />
-<glyph unicode="&#xdf;" horiz-adv-x="1222" d="M45 750v137l145 51v72q0 227 115 351t332 124q182 0 288.5 -84t106.5 -221q0 -70 -28.5 -131.5t-64.5 -97.5t-64.5 -82t-28.5 -89q0 -47 34.5 -90t83.5 -80l97 -78q49 -41 84 -103t35 -140q0 -139 -104.5 -226.5t-282.5 -87.5q-147 0 -234 52l37 202q76 -59 176 -59 q68 0 105.5 33t37.5 84q0 43 -30.5 78.5t-74.5 65.5t-89 65.5t-76 95t-31 137.5q0 74 27 135.5t59.5 95t59 83t26.5 102.5q0 78 -45 113.5t-112 35.5q-182 0 -183 -276v-1018h-256v750h-145z" />
-<glyph unicode="&#xe0;" horiz-adv-x="1007" d="M53 219q0 289 545 361v32q0 78 -24.5 116t-104.5 38q-145 -2 -295 -111l-61 181q18 14 53 33.5t146.5 53t228.5 33.5q174 0 243.5 -71.5t69.5 -231.5v-360q0 -92 88 -107l16 -2l-73 -198q-197 6 -260 137q-96 -147 -291 -148q-125 0 -203 69t-78 175zM145 1448h242 l211 -334l-135 -74zM313 240q0 -78 90 -78q92 0 195 121v149q-285 -40 -285 -192z" />
-<glyph unicode="&#xe1;" horiz-adv-x="1007" d="M53 219q0 289 545 361v32q0 78 -24.5 116t-104.5 38q-145 -2 -295 -111l-61 181q18 14 53 33.5t146.5 53t228.5 33.5q174 0 243.5 -71.5t69.5 -231.5v-360q0 -92 88 -107l16 -2l-73 -198q-197 6 -260 137q-96 -147 -291 -148q-125 0 -203 69t-78 175zM313 240 q0 -78 90 -78q92 0 195 121v149q-285 -40 -285 -192zM350 1114l211 334h244l-318 -408z" />
-<glyph unicode="&#xe2;" horiz-adv-x="1007" d="M53 219q0 289 545 361v32q0 78 -24.5 116t-104.5 38q-145 -2 -295 -111l-61 181q18 14 53 33.5t146.5 53t228.5 33.5q174 0 243.5 -71.5t69.5 -231.5v-360q0 -92 88 -107l16 -2l-73 -198q-197 6 -260 137q-96 -147 -291 -148q-125 0 -203 69t-78 175zM162 1098l235 350 h158l233 -352l-139 -58l-174 244l-172 -244zM313 240q0 -78 90 -78q92 0 195 121v149q-285 -40 -285 -192z" />
-<glyph unicode="&#xe3;" horiz-adv-x="1007" d="M53 219q0 289 545 361v32q0 78 -24.5 116t-104.5 38q-145 -2 -295 -111l-61 181q18 14 53 33.5t146.5 53t228.5 33.5q174 0 243.5 -71.5t69.5 -231.5v-360q0 -92 88 -107l16 -2l-73 -198q-197 6 -260 137q-96 -147 -291 -148q-125 0 -203 69t-78 175zM127 1151q0 37 6 73 t25.5 82t64.5 74.5t111 28.5q70 0 124 -39t92 -78t68 -39q59 0 60 117v25h156v-29q0 -37 -7.5 -74t-26 -84t-65.5 -76.5t-114 -29.5q-70 0 -121 39t-87 77.5t-69 38.5q-59 0 -59 -118v-19h-156q-2 13 -2 31zM313 240q0 -78 90 -78q92 0 195 121v149q-285 -40 -285 -192z" />
-<glyph unicode="&#xe4;" horiz-adv-x="1007" d="M53 219q0 289 545 361v32q0 78 -24.5 116t-104.5 38q-145 -2 -295 -111l-61 181q18 14 53 33.5t146.5 53t228.5 33.5q174 0 243.5 -71.5t69.5 -231.5v-360q0 -92 88 -107l16 -2l-73 -198q-197 6 -260 137q-96 -147 -291 -148q-125 0 -203 69t-78 175zM121 1276 q0 59 38 95t97 36q61 0 99 -36t38 -95t-38 -95t-99 -36q-59 0 -97 36t-38 95zM313 240q0 -78 90 -78q92 0 195 121v149q-285 -40 -285 -192zM557 1276q0 59 38 95t97 36q61 0 99 -36t38 -95t-37.5 -95t-99.5 -36q-59 0 -97 36t-38 95z" />
-<glyph unicode="&#xe5;" horiz-adv-x="1007" d="M53 219q0 289 545 361v32q0 78 -24.5 116t-104.5 38q-145 -2 -295 -111l-61 181q18 14 53 33.5t146.5 53t228.5 33.5q174 0 243.5 -71.5t69.5 -231.5v-360q0 -92 88 -107l16 -2l-73 -198q-197 6 -260 137q-96 -147 -291 -148q-125 0 -203 69t-78 175zM268 1282 q0 72 53.5 126t153.5 54t153.5 -54t53.5 -126t-53.5 -129t-153.5 -57t-153.5 57t-53.5 129zM313 240q0 -78 90 -78q92 0 195 121v149q-285 -40 -285 -192zM383 1280q0 -37 24.5 -62.5t67.5 -25.5t68.5 26.5t25.5 61.5t-24.5 60.5t-69.5 25.5t-68.5 -25.5t-23.5 -60.5z" />
-<glyph unicode="&#xe6;" horiz-adv-x="1538" d="M53 219q0 262 557 328v51q0 88 -24.5 128t-106.5 40q-70 0 -145.5 -27.5t-116.5 -54.5l-43 -29l-61 181q18 14 53 33.5t143.5 53t220.5 33.5q190 0 254 -118q109 119 277 118q180 0 288.5 -115.5t110.5 -330.5l-139 -41l-463 -57q18 -111 88 -175.5t176 -64.5 q68 0 138.5 28.5t107.5 57.5l37 29l68 -181q-16 -14 -48 -35.5t-134.5 -58.5t-211.5 -37q-254 0 -381 195q-39 -76 -130 -135.5t-224 -59.5q-131 0 -211 69t-80 175zM313 240q0 -78 101 -78q82 0 138 61.5t56 177.5q-295 -30 -295 -161zM856 561l328 39q0 6 -1 17.5t-9.5 40 t-21.5 50t-42 40t-68 18.5q-78 0 -126 -56.5t-60 -148.5z" />
-<glyph unicode="&#xe7;" horiz-adv-x="958" d="M66 449q0 207 142 357t367 150q195 0 328 -90l4 -4l-90 -186q-96 84 -223 84q-115 0 -189.5 -80t-74.5 -217q0 -131 70.5 -211t185.5 -80q63 0 124.5 23.5t90.5 46.5l28 24l78 -172q-12 -12 -34.5 -31.5t-107.5 -52.5t-185 -35l-7 -14q-18 -41 -18 -55q0 -20 27.5 -36.5 t62.5 -29t62.5 -46.5t27.5 -83q0 -84 -68.5 -140t-179.5 -56q-57 0 -108 15t-76 32l-22 16l49 115q70 -59 155 -60q43 0 70 16.5t27 39.5q0 20 -27 38.5t-59.5 31t-59 38t-26.5 58t32 98.5l17 33q-180 31 -286.5 159t-106.5 304z" />
-<glyph unicode="&#xe8;" horiz-adv-x="1009" d="M70 461q0 209 129 352t333 143q180 0 289 -118.5t111 -337.5l-139 -41l-461 -60q23 -104 90 -165.5t172 -61.5q68 0 138.5 28.5t107.5 57.5l37 29l65 -181q-6 -6 -17.5 -14t-50 -30.5t-80.5 -40t-109 -32t-134 -14.5q-227 0 -354 140.5t-127 345.5zM184 1448h242 l211 -334l-135 -74zM326 547l329 43q0 6 -1 18.5t-9 43t-21.5 53t-42 42t-67.5 19.5q-80 0 -129 -60.5t-59 -158.5z" />
-<glyph unicode="&#xe9;" horiz-adv-x="1009" d="M70 461q0 209 129 352t333 143q180 0 289 -118.5t111 -337.5l-139 -41l-461 -60q23 -104 90 -165.5t172 -61.5q68 0 138.5 28.5t107.5 57.5l37 29l65 -181q-6 -6 -17.5 -14t-50 -30.5t-80.5 -40t-109 -32t-134 -14.5q-227 0 -354 140.5t-127 345.5zM326 547l329 43 q0 6 -1 18.5t-9 43t-21.5 53t-42 42t-67.5 19.5q-80 0 -129 -60.5t-59 -158.5zM389 1114l211 334h244l-318 -408z" />
-<glyph unicode="&#xea;" horiz-adv-x="1009" d="M70 461q0 209 129 352t333 143q180 0 289 -118.5t111 -337.5l-139 -41l-461 -60q23 -104 90 -165.5t172 -61.5q68 0 138.5 28.5t107.5 57.5l37 29l65 -181q-6 -6 -17.5 -14t-50 -30.5t-80.5 -40t-109 -32t-134 -14.5q-227 0 -354 140.5t-127 345.5zM203 1098l235 350h158 l233 -352l-139 -58l-174 244l-172 -244zM326 547l329 43q0 6 -1 18.5t-9 43t-21.5 53t-42 42t-67.5 19.5q-80 0 -129 -60.5t-59 -158.5z" />
-<glyph unicode="&#xeb;" horiz-adv-x="1009" d="M70 461q0 209 129 352t333 143q180 0 289 -118.5t111 -337.5l-139 -41l-461 -60q23 -104 90 -165.5t172 -61.5q68 0 138.5 28.5t107.5 57.5l37 29l65 -181q-6 -6 -17.5 -14t-50 -30.5t-80.5 -40t-109 -32t-134 -14.5q-227 0 -354 140.5t-127 345.5zM162 1276q0 59 38 95 t97 36q61 0 99 -36t38 -95t-38 -95t-99 -36q-59 0 -97 36t-38 95zM326 547l329 43q0 6 -1 18.5t-9 43t-21.5 53t-42 42t-67.5 19.5q-80 0 -129 -60.5t-59 -158.5zM598 1276q0 59 38 95t97 36q61 0 99 -36t38 -95t-37.5 -95t-99.5 -36q-59 0 -97 36t-38 95z" />
-<glyph unicode="&#xec;" horiz-adv-x="514" d="M-72 1448h242l211 -334l-135 -74zM129 0v932h256v-932h-256z" />
-<glyph unicode="&#xed;" horiz-adv-x="514" d="M129 0v932h256v-932h-256zM133 1114l211 334h244l-318 -408z" />
-<glyph unicode="&#xee;" horiz-adv-x="514" d="M-55 1098l235 350h158l233 -352l-139 -58l-174 244l-172 -244zM129 0v932h256v-932h-256z" />
-<glyph unicode="&#xef;" horiz-adv-x="514" d="M-96 1276q0 59 38 95t97 36q61 0 99 -36t38 -95t-38 -95t-99 -36q-59 0 -97 36t-38 95zM129 0v932h256v-932h-256zM340 1276q0 59 38 95t97 36q61 0 99 -36t38 -95t-37.5 -95t-99.5 -36q-59 0 -97 36t-38 95z" />
-<glyph unicode="&#xf0;" horiz-adv-x="1120" d="M68 444q0 201 128 356.5t328 155.5q133 0 201 -67q-68 156 -203 266l-270 -154l-70 129l201 113q-102 59 -248 94l47 185q229 -43 410 -158l297 168l67 -131l-237 -135q309 -276 309 -688q0 -264 -133 -433.5t-365 -169.5q-215 0 -338.5 137t-123.5 332zM319 463 q0 -115 55.5 -206t164.5 -91q106 0 175.5 92t69.5 289q0 94 -50 156.5t-150 62.5q-117 0 -191 -86t-74 -217z" />
-<glyph unicode="&#xf1;" horiz-adv-x="1095" d="M125 0v911l246 41v-172q162 176 352 176q252 0 252 -292v-664h-254v555q0 96 -21.5 138t-72.5 42q-98 0 -246 -147v-588h-256zM213 1151q0 37 6 73t25.5 82t64.5 74.5t111 28.5q70 0 124 -39t92 -78t69 -39q59 0 59 117v25h156v-29q0 -37 -7.5 -74t-26 -84t-65.5 -76.5 t-114 -29.5q-70 0 -121 39t-87 77.5t-69 38.5q-59 0 -59 -118v-19h-156q-2 13 -2 31z" />
-<glyph unicode="&#xf2;" horiz-adv-x="1142" d="M68 463q0 92 29.5 176t88 156.5t158.5 116.5t231 44q238 0 369 -139t131 -332q0 -90 -28.5 -176t-87 -162.5t-160 -124t-232.5 -47.5q-238 0 -368.5 143.5t-130.5 344.5zM244 1448h241l211 -334l-135 -74zM332 481q0 -131 62.5 -223t178.5 -92q102 0 170 82t68 211 q0 123 -61.5 215t-178.5 92q-102 0 -170.5 -80t-68.5 -205z" />
-<glyph unicode="&#xf3;" horiz-adv-x="1142" d="M68 463q0 92 29.5 176t88 156.5t158.5 116.5t231 44q238 0 369 -139t131 -332q0 -90 -28.5 -176t-87 -162.5t-160 -124t-232.5 -47.5q-238 0 -368.5 143.5t-130.5 344.5zM332 481q0 -131 62.5 -223t178.5 -92q102 0 170 82t68 211q0 123 -61.5 215t-178.5 92 q-102 0 -170.5 -80t-68.5 -205zM446 1114l211 334h244l-317 -408z" />
-<glyph unicode="&#xf4;" horiz-adv-x="1142" d="M68 463q0 92 29.5 176t88 156.5t158.5 116.5t231 44q238 0 369 -139t131 -332q0 -90 -28.5 -176t-87 -162.5t-160 -124t-232.5 -47.5q-238 0 -368.5 143.5t-130.5 344.5zM258 1098l236 350h157l234 -352l-140 -58l-174 244l-172 -244zM332 481q0 -131 62.5 -223 t178.5 -92q102 0 170 82t68 211q0 123 -61.5 215t-178.5 92q-102 0 -170.5 -80t-68.5 -205z" />
-<glyph unicode="&#xf5;" horiz-adv-x="1142" d="M68 463q0 92 29.5 176t88 156.5t158.5 116.5t231 44q238 0 369 -139t131 -332q0 -90 -28.5 -176t-87 -162.5t-160 -124t-232.5 -47.5q-238 0 -368.5 143.5t-130.5 344.5zM223 1151q0 37 6.5 73t25.5 82t64.5 74.5t110.5 28.5q70 0 124 -39t92 -78t69 -39q59 0 59 117v25 h156v-29q0 -37 -7.5 -74t-25.5 -84t-65.5 -76.5t-114.5 -29.5q-70 0 -121 39t-87 77.5t-69 38.5q-59 0 -59 -118v-19h-156q-2 13 -2 31zM332 481q0 -131 62.5 -223t178.5 -92q102 0 170 82t68 211q0 123 -61.5 215t-178.5 92q-102 0 -170.5 -80t-68.5 -205z" />
-<glyph unicode="&#xf6;" horiz-adv-x="1142" d="M68 463q0 92 29.5 176t88 156.5t158.5 116.5t231 44q238 0 369 -139t131 -332q0 -90 -28.5 -176t-87 -162.5t-160 -124t-232.5 -47.5q-238 0 -368.5 143.5t-130.5 344.5zM217 1276q0 59 38 95t97 36q61 0 99 -36t38 -95t-37.5 -95t-99.5 -36q-59 0 -97 36t-38 95z M332 481q0 -131 62.5 -223t178.5 -92q102 0 170 82t68 211q0 123 -61.5 215t-178.5 92q-102 0 -170.5 -80t-68.5 -205zM653 1276q0 59 38 95t97 36q61 0 99.5 -36t38.5 -95t-38 -95t-100 -36q-59 0 -97 36t-38 95z" />
-<glyph unicode="&#xf7;" horiz-adv-x="1064" d="M74 436v166h917v-166h-917zM391 135q0 59 41 101.5t100.5 42.5t101.5 -42t42 -101.5t-42 -100.5t-102 -41q-57 0 -99 42t-42 99zM391 901.5q0 59.5 42 101t99 41.5q59 0 101.5 -41.5t42.5 -101t-42 -101.5t-102 -42q-57 0 -99 42t-42 101.5z" />
-<glyph unicode="&#xf8;" horiz-adv-x="1142" d="M68 463q0 92 29.5 176t88 156.5t158.5 116.5t231 44q137 0 244 -51l68 88h143l-115 -151q160 -135 160 -357q0 -90 -28.5 -176t-87 -162.5t-160 -124t-232.5 -47.5q-141 0 -252 56l-69 -92h-146l119 159q-151 138 -151 365zM332 481q0 -102 37 -182l321 430 q-49 37 -119 37q-102 0 -170.5 -80t-68.5 -205zM444 205q55 -39 129 -39q102 0 170 82t68 211q0 102 -43 184z" />
-<glyph unicode="&#xf9;" horiz-adv-x="1095" d="M119 256v676h256v-555q0 -94 19.5 -137t76.5 -43q92 0 236 127v608h254v-647q0 -49 10 -120t20 -116l10 -45l-245 -22q-20 90 -29 157q-158 -164 -352 -164q-117 0 -186.5 69t-69.5 212zM211 1448h242l211 -334l-136 -74z" />
-<glyph unicode="&#xfa;" horiz-adv-x="1095" d="M119 256v676h256v-555q0 -94 19.5 -137t76.5 -43q92 0 236 127v608h254v-647q0 -49 10 -120t20 -116l10 -45l-245 -22q-20 90 -29 157q-158 -164 -352 -164q-117 0 -186.5 69t-69.5 212zM416 1114l211 334h243l-317 -408z" />
-<glyph unicode="&#xfb;" horiz-adv-x="1095" d="M119 256v676h256v-555q0 -94 19.5 -137t76.5 -43q92 0 236 127v608h254v-647q0 -49 10 -120t20 -116l10 -45l-245 -22q-20 90 -29 157q-158 -164 -352 -164q-117 0 -186.5 69t-69.5 212zM225 1098l236 350h157l234 -352l-139 -58l-174 244l-172 -244z" />
-<glyph unicode="&#xfc;" horiz-adv-x="1095" d="M119 256v676h256v-555q0 -94 19.5 -137t76.5 -43q92 0 236 127v608h254v-647q0 -49 10 -120t20 -116l10 -45l-245 -22q-20 90 -29 157q-158 -164 -352 -164q-117 0 -186.5 69t-69.5 212zM184 1276q0 59 38 95t97 36q61 0 99.5 -36t38.5 -95t-38 -95t-100 -36 q-59 0 -97 36t-38 95zM621 1276q0 59 37.5 95t97.5 36q61 0 99 -36t38 -95t-38 -95t-99 -36q-59 0 -97 36t-38 95z" />
-<glyph unicode="&#xfd;" horiz-adv-x="972" d="M8 932h266l218 -610l213 610h258l-388 -1000q-63 -162 -188 -281.5t-289 -135.5l-78 196q100 12 188.5 81t125.5 155l33 78zM367 1114l211 334h243l-317 -408z" />
-<glyph unicode="&#xfe;" horiz-adv-x="1105" d="M129 -481v1908l256 41v-659q80 147 258 147t284.5 -132t106.5 -328q0 -213 -125 -367t-346 -154q-115 0 -178 39v-454zM385 252q0 -86 135 -86q113 0 181.5 81t68.5 232q0 129 -48 203t-128 74q-113 0 -209 -140v-364z" />
-<glyph unicode="&#xff;" horiz-adv-x="972" d="M8 932h266l218 -610l213 610h258l-388 -1000q-63 -162 -188 -281.5t-289 -135.5l-78 196q100 12 188.5 81t125.5 155l33 78zM137 1276q0 59 38 95t97 36q61 0 99.5 -36t38.5 -95t-38 -95t-100 -36q-59 0 -97 36t-38 95zM573 1276q0 59 38 95t98 36q61 0 99 -36t38 -95 t-38 -95t-99 -36q-59 0 -97.5 36t-38.5 95z" />
-<glyph unicode="&#x152;" horiz-adv-x="2027" d="M78 680q0 182 84 342t258 264.5t405 104.5q139 0 256 -25h852v-221h-598v-342h471v-219h-471v-363h613v-221h-877q-137 -25 -264 -25q-328 0 -528.5 207t-200.5 498zM354 688q0 -190 122 -339.5t337 -149.5q154 0 258 26v905q-111 37 -250 37q-217 0 -342 -141t-125 -338 z" />
-<glyph unicode="&#x153;" horiz-adv-x="1746" d="M68 463q0 92 29.5 176t88 156.5t158.5 116.5t231 44q233 0 365 -168q125 168 330 168q180 0 288.5 -118.5t110.5 -337.5l-139 -41l-461 -60q23 -104 90.5 -165.5t171.5 -61.5q68 0 138.5 28.5t107.5 57.5l37 29l65 -181q-6 -6 -17 -14t-50 -30.5t-81 -40t-108.5 -32 t-134.5 -14.5q-227 0 -352 168q-131 -168 -368.5 -168t-368.5 143.5t-131 344.5zM332 481q0 -131 62.5 -223t178.5 -92q102 0 170 82t68 211q0 123 -61.5 215t-178.5 92q-102 0 -170.5 -80t-68.5 -205zM1063 549l330 41q0 6 -1 18.5t-9.5 43t-21.5 53t-42 42t-68 19.5 q-80 0 -129 -59.5t-59 -157.5z" />
-<glyph unicode="&#x178;" horiz-adv-x="1245" d="M-2 1366h309l316 -535l325 535h299l-491 -795v-571h-264v569zM227 1626q0 61 39 98t100.5 37t101.5 -36.5t40 -98.5q0 -59 -40 -97t-101 -38q-59 0 -99.5 38t-40.5 97zM739 1626q0 61 40 98t101.5 37t100.5 -36.5t39 -98.5q0 -59 -40 -97t-99 -38q-61 0 -101.5 38 t-40.5 97z" />
-<glyph unicode="&#x2c6;" horiz-adv-x="1044" d="M209 1098l235 350h158l234 -352l-140 -58l-174 244l-172 -244z" />
-<glyph unicode="&#x2dc;" horiz-adv-x="1044" d="M178 1151q0 37 6 73t25.5 82t64.5 74.5t111 28.5q70 0 124 -39t92 -78t69 -39q59 0 59 117v25h156v-29q0 -37 -7.5 -74t-25.5 -84t-65.5 -76.5t-114.5 -29.5q-70 0 -121 39t-87 77.5t-69 38.5q-59 0 -59 -118v-19h-156q-2 13 -2 31z" />
-<glyph unicode="&#x2000;" horiz-adv-x="892" />
-<glyph unicode="&#x2001;" horiz-adv-x="1784" />
-<glyph unicode="&#x2002;" horiz-adv-x="892" />
-<glyph unicode="&#x2003;" horiz-adv-x="1784" />
-<glyph unicode="&#x2004;" horiz-adv-x="594" />
-<glyph unicode="&#x2005;" horiz-adv-x="446" />
-<glyph unicode="&#x2006;" horiz-adv-x="297" />
-<glyph unicode="&#x2007;" horiz-adv-x="297" />
-<glyph unicode="&#x2008;" horiz-adv-x="223" />
-<glyph unicode="&#x2009;" horiz-adv-x="356" />
-<glyph unicode="&#x200a;" horiz-adv-x="99" />
-<glyph unicode="&#x2010;" horiz-adv-x="755" d="M106 440v164h543v-164h-543z" />
-<glyph unicode="&#x2011;" horiz-adv-x="755" d="M106 440v164h543v-164h-543z" />
-<glyph unicode="&#x2012;" horiz-adv-x="755" d="M106 440v164h543v-164h-543z" />
-<glyph unicode="&#x2013;" horiz-adv-x="1052" d="M106 442v166h840v-166h-840z" />
-<glyph unicode="&#x2014;" horiz-adv-x="1851" d="M106 442v166h1639v-166h-1639z" />
-<glyph unicode="&#x2018;" horiz-adv-x="458" d="M82 1153q0 203 221 377l84 -94q-125 -100 -125 -211q0 -51 30 -102.5t114 -141.5l-209 -111q-115 142 -115 283z" />
-<glyph unicode="&#x2019;" horiz-adv-x="442" d="M47 1419l211 111q113 -139 113 -281q0 -205 -219 -379l-86 95q127 100 127 213q0 51 -31 103t-115 138z" />
-<glyph unicode="&#x201a;" horiz-adv-x="495" d="M78 199l211 110q115 -141 114 -280q0 -203 -221 -377l-86 92q127 100 127 213q0 53 -30.5 103.5t-114.5 138.5z" />
-<glyph unicode="&#x201c;" horiz-adv-x="849" d="M82 1153q0 203 221 377l84 -94q-125 -100 -125 -211q0 -51 30 -102.5t114 -141.5l-209 -111q-115 142 -115 283zM473 1153q0 203 221 377l84 -94q-125 -100 -125 -211q0 -51 30 -102.5t114 -141.5l-209 -111q-115 142 -115 283z" />
-<glyph unicode="&#x201d;" horiz-adv-x="833" d="M47 1419l211 111q113 -139 113 -281q0 -205 -219 -379l-86 95q127 100 127 213q0 51 -31 103t-115 138zM440 1419l209 111q113 -139 113 -281q0 -205 -219 -379l-86 95q127 100 127 213q0 51 -31 103t-113 138z" />
-<glyph unicode="&#x201e;" horiz-adv-x="886" d="M78 199l211 110q115 -141 114 -280q0 -203 -221 -377l-86 92q127 100 127 213q0 53 -30.5 103.5t-114.5 138.5zM469 199l211 110q115 -141 115 -280q0 -205 -222 -377l-86 92q127 100 127 213q0 53 -30.5 103.5t-114.5 138.5z" />
-<glyph unicode="&#x2022;" horiz-adv-x="833" d="M106 524q0 131 90.5 221.5t221.5 90.5t220 -90.5t89 -221.5t-89 -221t-220 -90t-221.5 90t-90.5 221z" />
-<glyph unicode="&#x2026;" horiz-adv-x="1658" d="M100 131q0 66 46.5 113t112 47t111.5 -47t46 -113q0 -63 -47 -109.5t-110.5 -46.5t-111 46.5t-47.5 109.5zM672 131q0 66 46 113t109 47q66 0 113 -47t47 -113q0 -63 -47 -109.5t-113 -46.5q-63 0 -109 46.5t-46 109.5zM1243 131q0 66 46 113t110 47q66 0 113 -47 t47 -113q0 -63 -47.5 -109.5t-112.5 -46.5q-63 0 -109.5 46.5t-46.5 109.5z" />
-<glyph unicode="&#x202f;" horiz-adv-x="356" />
-<glyph unicode="&#x2039;" horiz-adv-x="643" d="M33 510v8q31 25 200 217l189 211l141 -41l-293 -391l293 -391l-141 -41l-165 182l-107 121l-59 66q-26 29 -36 39t-22 20z" />
-<glyph unicode="&#x203a;" horiz-adv-x="643" d="M80 123l295 391l-295 391l141 41q356 -399 375 -416q6 -6 14 -12v-8q-12 -10 -22 -20.5l-36 -38.5l-58 -66l-108 -121l-165 -182z" />
-<glyph unicode="&#x205f;" horiz-adv-x="446" />
-<glyph unicode="&#x20ac;" horiz-adv-x="1155" d="M76 365v118h106q-4 45 -4 74q0 27 4 84h-106v119h131q53 182 195.5 294.5t342.5 112.5q82 0 162 -18.5t121 -38.5l39 -18l-63 -197q-113 76 -254 76q-205 0 -279 -211h494l-35 -119h-486q-2 -23 -2 -68q0 -47 7 -90h438l-35 -118h-373q80 -193 279 -193q57 0 119.5 15.5 t97.5 29.5l33 16l49 -182q-127 -76 -318 -76q-201 0 -342 104.5t-194 285.5h-127z" />
-<glyph unicode="&#x2122;" horiz-adv-x="1433" d="M72 1257v109h493v-109h-178v-436h-137v436h-178zM653 821l21 545h194l117 -340l119 340h192l21 -545h-133l-17 396l-139 -396h-90l-139 398l-13 -398h-133z" />
-<glyph unicode="&#xe000;" horiz-adv-x="930" d="M0 930h930v-930h-930v930z" />
-<glyph unicode="&#xfb01;" horiz-adv-x="1150" d="M45 750v137l145 51v57q0 240 130.5 376t338.5 136q172 -2 293 -80l-90 -180q-96 63 -205 64q-211 0 -211 -297v-82h574v-932h-254v760h-320v-760h-256v750h-145z" />
-<glyph unicode="&#xfb02;" horiz-adv-x="1187" d="M45 750v137l145 51v57q0 240 130.5 376t338.5 136q131 0 261 -61l137 22v-1468h-254v1276q-82 35 -146 35q-211 0 -211 -297v-82h250v-182h-250v-750h-256v750h-145z" />
-<glyph unicode="&#xfb03;" horiz-adv-x="1781" d="M45 750v137l145 51v29q0 229 128 360t329 131q170 0 293 -90q123 139 330 139q166 -2 282 -80l-90 -180q-88 63 -190 64q-195 0 -195 -277v-102h576v-932h-256v760h-320v-760h-254v760h-377v-760h-256v750h-145zM446 932h377v84q0 96 23 176q-90 70 -195 70 q-205 0 -205 -277v-53z" />
-<glyph unicode="&#xfb04;" horiz-adv-x="1818" d="M45 750v137l145 51v29q0 229 128 360t329 131q170 0 293 -90q123 139 330 139q143 0 258 -65l162 26v-1468h-256v1266q-86 45 -160 45q-197 0 -197 -277v-102h250v-182h-250v-750h-254v760h-377v-760h-256v750h-145zM446 932h377v84q0 92 23 176q-90 70 -195 70 q-205 0 -205 -277v-53z" />
-</font>
-</defs></svg> 
\ No newline at end of file
diff --git a/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansBold-webfont.ttf b/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansBold-webfont.ttf
deleted file mode 100644
index 65b27a67a74d75fe8c06d5ef38f2ee6d024a09ba..0000000000000000000000000000000000000000
Binary files a/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansBold-webfont.ttf and /dev/null differ
diff --git a/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansBold-webfont.woff b/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansBold-webfont.woff
deleted file mode 100644
index 9b82237317f9a7be251948eb43fbf6ecb286c481..0000000000000000000000000000000000000000
Binary files a/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansBold-webfont.woff and /dev/null differ
diff --git a/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansLight-webfont.eot b/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansLight-webfont.eot
deleted file mode 100644
index cbc96985981d657802c40a0ec9b343b4f4a4f7c5..0000000000000000000000000000000000000000
Binary files a/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansLight-webfont.eot and /dev/null differ
diff --git a/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansLight-webfont.svg b/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansLight-webfont.svg
deleted file mode 100644
index 616b462d1354740bbf518ba49cb5ed024358c47d..0000000000000000000000000000000000000000
--- a/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansLight-webfont.svg
+++ /dev/null
@@ -1,244 +0,0 @@
-<?xml version="1.0" standalone="no"?>
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
-<svg xmlns="http://www.w3.org/2000/svg">
-<metadata>
-This is a custom SVG webfont generated by Fontspring.
-</metadata>
-<defs>
-<font id="webfonty8j6eXvh" horiz-adv-x="1073" >
-<font-face units-per-em="2048" ascent="1536" descent="-512" />
-<missing-glyph horiz-adv-x="491" />
-<glyph unicode=" "  horiz-adv-x="491" />
-<glyph unicode="&#x09;" horiz-adv-x="491" />
-<glyph unicode="&#xa0;" horiz-adv-x="491" />
-<glyph unicode="!" horiz-adv-x="544" d="M164 86q0 45 32.5 78t77.5 33t78 -33t33 -78t-33 -78t-78 -33t-77.5 33t-32.5 78zM195 1391h153l-20 -1010h-119z" />
-<glyph unicode="&#x22;" horiz-adv-x="684" d="M137 903v463h127v-76l-39 -387h-88zM438 903v463h127v-76l-39 -387h-88z" />
-<glyph unicode="#" horiz-adv-x="1298" d="M76 266l18 101h238l59 295h-239l20 102h242l86 420h108l-86 -420h318l86 420h108l-86 -420h273l-21 -102h-272l-62 -295h277l-19 -101h-278l-90 -448h-111l92 448h-317l-90 -448h-111l92 448h-235zM440 367h318l59 295h-315z" />
-<glyph unicode="$" horiz-adv-x="935" d="M84 86l33 123l39 -27q25 -16 105.5 -46t164.5 -34l10 422q-55 20 -88 33.5t-84 43.5t-80.5 60.5t-52 81t-22.5 109.5q0 121 86 199.5t258 89.5l6 178h88l-6 -178q170 -6 278 -60l-39 -112q-104 49 -241 59l-11 -397q315 -119 316 -346q0 -125 -89 -203t-245 -90l-4 -174 h-88l4 170q-96 2 -180 26.5t-121 46.5zM248 860q0 -76 47 -119t145 -79l11 366q-203 -12 -203 -168zM514 106q193 25 193 179q0 76 -47.5 122t-135.5 82z" />
-<glyph unicode="%" horiz-adv-x="1472" d="M84 1036q0 127 87 215t212 88q127 0 214 -88t87 -215t-87 -214t-214 -87q-125 0 -212 87t-87 214zM180 1036q0 -84 59.5 -147.5t143.5 -63.5t143.5 63.5t59.5 147.5t-59.5 147.5t-145.5 63.5q-82 0 -141.5 -63.5t-59.5 -147.5zM209 0l950 1370l80 -57l-915 -1313h-115z M797 276q0 127 87 215.5t214 88.5q125 0 212 -88.5t87 -215.5q0 -125 -87 -213t-212 -88q-127 0 -214 88t-87 213zM895 276.5q0 -83.5 59.5 -147t143.5 -63.5t142 63.5t58 147t-59 147t-145 63.5q-82 0 -140.5 -63.5t-58.5 -147z" />
-<glyph unicode="&#x26;" horiz-adv-x="1378" d="M94 313q0 127 80 221.5t225 196.5q-121 213 -120 356q0 113 78.5 208.5t234.5 95.5q131 0 204.5 -73t73.5 -185q0 -127 -78.5 -221.5t-226.5 -198.5q72 -115 164 -232q76 -96 164 -184q176 236 205 621h123q-10 -156 -74 -352.5t-174 -342.5q199 -176 354 -207l-57 -102 q-182 35 -383 213q-166 -152 -379 -152q-172 0 -293 91t-121 247zM223 326q0 -113 90 -173.5t211 -60.5q154 0 281 111q-98 102 -174 196q-88 106 -174 236q-115 -82 -174.5 -152.5t-59.5 -156.5zM422 1092q0 -113 88 -283q113 80 170 146.5t57 150.5q0 70 -40 119t-113 49 q-76 0 -119 -53t-43 -129z" />
-<glyph unicode="'" horiz-adv-x="380" d="M137 903v463h121v-76l-25 -387h-96z" />
-<glyph unicode="(" horiz-adv-x="573" d="M115 553q0 154 30.5 298t74.5 240.5t88 172t75 110.5l31 35l108 -31l-32 -39q-19 -25 -68 -107.5t-88 -172.5t-70 -228.5t-31 -277.5q0 -152 31 -299.5t74 -247.5t86 -178t74 -115l30 -39l-104 -34l-34 39q-22 26 -75 115t-93 187.5t-73.5 254t-33.5 317.5z" />
-<glyph unicode=")" horiz-adv-x="573" d="M45 -326q12 14 31.5 40t71 113t90 182t70.5 243.5t32 300.5q0 139 -29.5 275.5t-72.5 231.5t-85 170t-71 111l-31 37l109 31q12 -12 32.5 -36.5t71.5 -107.5t90 -175.5t72 -237.5t33 -299q0 -459 -236 -815q-41 -63 -73 -98z" />
-<glyph unicode="*" horiz-adv-x="978" d="M98 854l285 115l29 -47l-244 -191zM98 1143l70 123l244 -191l-29 -47zM420 588l43 303h53l43 -303h-139zM420 1409h139l-43 -303h-53zM567 922l27 47l287 -115l-70 -123zM567 1075l244 191l70 -123l-287 -115z" />
-<glyph unicode="+" horiz-adv-x="1064" d="M68 449v120h403v424h131v-424h397v-120h-397v-449h-131v449h-403z" />
-<glyph unicode="," horiz-adv-x="456" d="M82 -274q51 45 70.5 64.5t36 55t16.5 82.5q0 111 -88 230l145 49q72 -82 72 -209q0 -205 -187 -338z" />
-<glyph unicode="-" horiz-adv-x="669" d="M117 438v142h434v-142h-434z" />
-<glyph unicode="." horiz-adv-x="477" d="M127 86q0 45 33 78t80 33q45 0 76.5 -33t31.5 -78t-31.5 -78t-76.5 -33q-47 0 -80 33t-33 78z" />
-<glyph unicode="/" horiz-adv-x="931" d="M49 -401l682 1767h131l-680 -1767h-133z" />
-<glyph unicode="0" horiz-adv-x="1116" d="M109 473q0 207 118.5 358.5t337.5 151.5q211 0 327 -141.5t116 -343.5q0 -133 -45 -248t-151.5 -195t-256.5 -80q-213 0 -329.5 146.5t-116.5 351.5zM240 483q0 -160 83 -275.5t240 -115.5q150 0 232 117t82 276q0 156 -83 268.5t-230.5 112.5t-235.5 -114.5t-88 -268.5z " />
-<glyph unicode="1" horiz-adv-x="694" d="M106 0v115h203v745h-186v98h313v-843h193v-115h-523z" />
-<glyph unicode="2" horiz-adv-x="894" d="M94 90l54 40q34 26 120 100.5t151.5 145t120 162t54.5 162.5q0 74 -51 122t-131 48q-57 0 -120 -25.5t-95 -49.5l-35 -25l-60 84q16 14 46 35.5t117 57.5t167 36q129 0 212 -76t83 -196q0 -78 -40 -161t-114.5 -166t-134 -138.5t-147.5 -128.5h522v-117h-696z" />
-<glyph unicode="3" horiz-adv-x="804" d="M45 856q16 14 46 35.5t117 56.5t167 35q129 0 213 -73.5t84 -192.5q0 -104 -76 -194.5t-180 -147.5q139 -27 215 -111t76 -211q0 -193 -160 -316.5t-416 -123.5q-37 0 -55 2l-13 104q20 -2 60 -2q190 0 320 86t130 234q0 131 -92 188.5t-229 57.5h-64v110 q121 14 235 112.5t114 205.5q0 72 -47.5 115.5t-124.5 43.5q-61 0 -125 -23.5t-97 -47.5l-30 -25z" />
-<glyph unicode="4" horiz-adv-x="1050" d="M59 63v87l631 839h88v-815h199v-111h-199v-458h-127v458h-592zM207 174h444v578z" />
-<glyph unicode="5" horiz-adv-x="808" d="M63 -283q18 -2 60 -2q188 0 321.5 88t133.5 246q0 96 -42 166t-118 107.5t-148.5 57t-167.5 32.5v546h562v-114h-439v-334q215 -41 350.5 -149.5t135.5 -305.5q0 -201 -163 -321.5t-417 -120.5q-39 0 -57 2z" />
-<glyph unicode="6" horiz-adv-x="1030" d="M106 567q0 156 44.5 297.5t128 258t223 188t313.5 80.5l10 -107q-236 -12 -381 -157.5t-188 -366.5q88 113 274 112q195 0 303.5 -124.5t108.5 -307.5q0 -186 -109.5 -325.5t-297.5 -139.5q-207 0 -318 170t-111 422zM242 586q0 -207 75.5 -350.5t219.5 -143.5 q123 0 196.5 96.5t73.5 235.5q0 78 -20.5 147.5t-88 128t-174.5 58.5q-162 0 -282 -121v-51z" />
-<glyph unicode="7" horiz-adv-x="919" d="M68 831v127h792v-94q-219 -541 -586 -1263l-122 32q291 526 563 1198h-647z" />
-<glyph unicode="8" horiz-adv-x="1040" d="M104 317q0 123 83 216.5t235 199.5q-227 178 -227 363q0 137 101 216t251 79q147 0 237 -82t90 -207q0 -104 -66.5 -188.5t-184.5 -170.5q74 -55 116.5 -91t95 -90t77 -112.5t24.5 -121.5q0 -147 -122 -250t-300 -103q-188 0 -299 101.5t-111 240.5zM233 328 q0 -111 85 -172.5t204 -61.5q113 0 195 61.5t82 166.5q0 49 -19.5 92t-74 94t-82.5 74l-111 84q-135 -92 -207 -169t-72 -169zM332 1098q0 -78 52 -145.5t151 -141.5q102 76 157.5 140.5t55.5 142.5q0 90 -65 134t-144 44q-78 0 -142.5 -43t-64.5 -131z" />
-<glyph unicode="9" horiz-adv-x="1024" d="M106 538.5q0 182.5 104.5 313.5t289.5 131q207 0 318.5 -170t111.5 -414q0 -319 -187.5 -549.5t-521.5 -242.5l-10 106q250 18 390 152.5t179 343.5q-92 -113 -274 -113q-188 0 -294 130t-106 312.5zM244 553q0 -55 11 -108.5t40 -109.5t86 -90t137 -34q156 0 275 119 q2 14 2 45q0 207 -79 349t-224 142q-113 0 -180.5 -87t-67.5 -226z" />
-<glyph unicode=":" horiz-adv-x="550" d="M166 86q0 45 31.5 78t78.5 33q45 0 78 -33t33 -78t-32.5 -78t-78.5 -33q-47 0 -78.5 33t-31.5 78zM166 799q0 45 31.5 77.5t78.5 32.5q45 0 78 -32.5t33 -77.5t-32.5 -78t-78.5 -33q-47 0 -78.5 33t-31.5 78z" />
-<glyph unicode=";" horiz-adv-x="540" d="M129 -274q51 45 70.5 64.5t36 55t16.5 82.5q0 111 -88 230l145 49q72 -82 72 -209q0 -205 -186 -338zM158 799q0 45 32.5 77.5t79.5 32.5q45 0 77 -32.5t32 -77.5t-32 -78t-77 -33q-47 0 -79.5 33t-32.5 78z" />
-<glyph unicode="&#x3c;" horiz-adv-x="1064" d="M68 459v94l872 469l27 -129l-736 -387l736 -408l-27 -127z" />
-<glyph unicode="=" horiz-adv-x="1064" d="M70 252v123h925v-123h-925zM70 651v123h925v-123h-925z" />
-<glyph unicode="&#x3e;" horiz-adv-x="1064" d="M96 98l731 408l-731 387l27 129l872 -469v-94l-872 -488z" />
-<glyph unicode="?" horiz-adv-x="710" d="M96 1303l29 122l55 -17q35 -11 123 -50t154.5 -81t122 -105.5t55.5 -129.5q0 -51 -34 -104t-82 -105.5t-96 -113t-82 -148.5t-34 -190h-102q-6 29 -6 76q0 96 44 190t96 153.5t96 123t44 106.5q0 66 -96 134.5t-190 103.5zM154 86q0 45 31.5 78t78.5 33t79 -33t32 -78 t-32 -78t-79 -33t-78.5 33t-31.5 78z" />
-<glyph unicode="@" horiz-adv-x="1673" d="M90 401q0 213 97.5 397.5t280.5 300t413 115.5q303 0 494.5 -190t191.5 -477q0 -299 -178 -438q-41 -33 -102.5 -57.5t-99.5 -35t-145 -32.5l-34 -9q-16 80 -25 148q-39 -63 -109.5 -105.5t-148.5 -42.5q-123 0 -204 106.5t-81 285.5q0 252 163 406.5t388 154.5l119 -6 v-654q0 -47 4 -88t8 -57l2 -19q164 20 243 131t79 287q0 258 -151.5 424t-411.5 166q-297 0 -485.5 -212t-188.5 -509q0 -274 159.5 -456.5t383.5 -192.5l-17 -94q-180 6 -329.5 112.5t-232.5 276t-83 364.5zM580 381q0 -121 51 -203t131 -82q113 0 217 158v561 q-174 0 -286.5 -126t-112.5 -308z" />
-<glyph unicode="A" horiz-adv-x="1255" d="M35 0l528 1376h129l529 -1376h-144l-170 449h-565l-170 -449h-137zM385 563h479l-239 631z" />
-<glyph unicode="B" horiz-adv-x="1189" d="M211 0v1366h321q244 0 353.5 -95t109.5 -233q0 -176 -166 -307q37 -12 72 -31.5t80 -56.5t72.5 -100.5t27.5 -145.5q0 -180 -130 -288.5t-337 -108.5h-403zM346 113h238q176 0 263 70.5t87 195.5t-87 197.5t-263 72.5h-238v-536zM346 764h332q6 4 18.5 11t42 31.5 t52 53.5t41 77t18.5 99q0 217 -348 217h-156v-489z" />
-<glyph unicode="C" horiz-adv-x="1376" d="M111 678q0 303 199.5 508t523.5 205q115 0 226 -30t165 -58l53 -31l-55 -125q-18 14 -53 35.5t-140.5 57.5t-210.5 36q-137 0 -247.5 -52.5t-177 -138.5t-101.5 -188t-35 -211q0 -244 160 -420t409 -176q207 0 396 131l14 10l55 -102q-8 -6 -23.5 -16.5t-64.5 -37 t-101 -47t-132 -37t-158 -16.5q-307 0 -504.5 200t-197.5 503z" />
-<glyph unicode="D" horiz-adv-x="1476" d="M211 0v1366h389q147 0 277.5 -36t242 -111.5t177 -207.5t65.5 -306q0 -336 -229.5 -520.5t-610.5 -184.5h-311zM346 113h156q373 0 544 156.5t171 414.5q0 264 -168 416.5t-478 152.5h-225v-1140z" />
-<glyph unicode="E" horiz-adv-x="1103" d="M211 0v1366h784v-113h-649v-497h514v-113h-514v-530h641v-113h-776z" />
-<glyph unicode="F" horiz-adv-x="1036" d="M211 0v1366h762v-113h-627v-503h496v-123h-496v-627h-135z" />
-<glyph unicode="G" horiz-adv-x="1423" d="M111 666q0 301 194.5 513t528.5 212q119 0 231.5 -26t165.5 -50l53 -27l-55 -127q-18 12 -53 31.5t-140.5 51.5t-212.5 32q-182 0 -314 -89t-192.5 -221t-60.5 -288q0 -254 165 -421t447 -167q61 0 130 10.5t108 20.5l37 10v440h-299v113h434v-645q-238 -63 -436 -64 q-309 0 -520 188t-211 503z" />
-<glyph unicode="H" horiz-adv-x="1538" d="M211 0v1366h135v-612h846v612h135v-1366h-135v641h-846v-641h-135z" />
-<glyph unicode="I" horiz-adv-x="557" d="M211 0v1366h135v-1366h-135z" />
-<glyph unicode="J" horiz-adv-x="559" d="M-16 -252q72 8 120 50t70.5 103.5t30.5 115t8 110.5v1239h135v-1239q0 -82 -16.5 -159t-50 -147.5t-95 -118.5t-143.5 -60z" />
-<glyph unicode="K" horiz-adv-x="1155" d="M211 0v1366h135v-594h25l577 594h172l-633 -641l658 -725h-182l-592 659h-25v-659h-135z" />
-<glyph unicode="L" horiz-adv-x="1044" d="M211 0v1366h135v-1253h668v-113h-803z" />
-<glyph unicode="M" horiz-adv-x="1755" d="M190 0l48 1366h192l442 -1192l449 1192h195l49 -1366h-131l-43 1196l-461 -1196h-111l-461 1210l-36 -1210h-132z" />
-<glyph unicode="N" horiz-adv-x="1529" d="M211 0v1366h133l844 -1167v1167h131v-1366h-133l-844 1149v-1149h-131z" />
-<glyph unicode="O" horiz-adv-x="1624" d="M111 680q0 289 194.5 500t517.5 211q305 0 497.5 -196t192.5 -486q0 -299 -200.5 -516.5t-507.5 -217.5q-301 0 -497.5 206t-196.5 499zM256 694q0 -147 62.5 -282.5t193.5 -227.5t299 -92q250 0 402.5 182.5t152.5 418t-150.5 408.5t-404.5 173q-252 0 -403.5 -175.5 t-151.5 -404.5z" />
-<glyph unicode="P" horiz-adv-x="1138" d="M211 0v1366h367q248 0 364.5 -109.5t116.5 -281.5q0 -201 -131 -314.5t-350 -113.5h-232v-547h-135zM346 659h205q182 0 272 78t90 224q0 131 -87 211.5t-275 80.5h-205v-594z" />
-<glyph unicode="Q" horiz-adv-x="1624" d="M115 680q0 186 80.5 346t244.5 262.5t377 102.5q309 0 504 -196t195 -486q0 -252 -148.5 -452t-390.5 -261q55 -74 93 -116t106.5 -104.5t149.5 -93t173 -32.5l-18 -125h-15q-68 0 -133 16q-72 18 -122 45t-103 72t-80 72.5t-65.5 73.5t-44.5 55l-62 71q-35 43 -119 47 q-276 25 -449 227t-173 476zM260 694q0 -150 61.5 -284t190.5 -225t299 -91q248 0 403.5 183.5t155.5 416.5q0 229 -150.5 404.5t-404.5 175.5q-168 0 -298 -86t-193.5 -217.5t-63.5 -276.5z" />
-<glyph unicode="R" horiz-adv-x="1189" d="M211 0v1366h326q246 0 363.5 -103.5t117.5 -256.5q0 -139 -89 -236.5t-210 -148.5l424 -621h-160l-410 596h-227v-596h-135zM346 711h238q100 0 193 75.5t93 202.5q0 113 -87 188.5t-273 75.5h-164v-542z" />
-<glyph unicode="S" horiz-adv-x="1038" d="M104 90l35 131q18 -14 51 -34.5t127.5 -55.5t184.5 -35q127 0 210 57.5t83 159.5q0 92 -69 163t-166 121l-194 104q-97 54 -166 141.5t-69 204.5q0 152 115.5 248t318.5 96q178 0 340 -62l-43 -129q-147 70 -305 70q-129 0 -210 -53.5t-81 -153.5q0 -94 68.5 -165 t166.5 -121l194 -103q97 -53 166 -141.5t69 -208.5q0 -168 -124 -258.5t-314 -90.5q-104 0 -200.5 29t-141.5 57z" />
-<glyph unicode="T" horiz-adv-x="1206" d="M35 1253v113h1136v-113h-507v-1253h-134v1253h-495z" />
-<glyph unicode="U" horiz-adv-x="1476" d="M193 485v881h133v-846q0 -215 113.5 -321.5t299.5 -106.5q184 0 298 103.5t114 310.5v860h133v-852q0 -256 -153.5 -397.5t-393.5 -141.5q-244 0 -394 124t-150 386z" />
-<glyph unicode="V" horiz-adv-x="1193" d="M35 1366h141l422 -1182l424 1182h137l-497 -1376h-132z" />
-<glyph unicode="W" horiz-adv-x="1916" d="M55 1366h138l354 -1180l336 1180h157l332 -1176l359 1176h133l-422 -1376h-137l-344 1173l-347 -1173h-137z" />
-<glyph unicode="X" horiz-adv-x="1191" d="M57 0l461 680l-461 686h160l381 -580l381 580h154l-459 -682l459 -684h-158l-381 580l-383 -580h-154z" />
-<glyph unicode="Y" horiz-adv-x="1153" d="M23 1366h159l398 -635l401 635h149l-485 -762v-604h-135v602z" />
-<glyph unicode="Z" horiz-adv-x="1183" d="M74 0v74l831 1179h-778v113h954v-74l-821 -1179h830v-113h-1016z" />
-<glyph unicode="[" horiz-adv-x="585" d="M182 -313v1679h361v-100h-246v-1477h246v-102h-361z" />
-<glyph unicode="\" horiz-adv-x="927" d="M70 1366h127l682 -1767h-129z" />
-<glyph unicode="]" horiz-adv-x="587" d="M43 -205h246v1462h-246v109h363v-1679h-363v108z" />
-<glyph unicode="^" horiz-adv-x="1028" d="M33 512l438 879h88l438 -879h-145l-340 682l-340 -682h-139z" />
-<glyph unicode="_" horiz-adv-x="1110" d="M43 -76h1024v-114h-1024v114z" />
-<glyph unicode="`" horiz-adv-x="1028" d="M338 1425h154l206 -342l-84 -49z" />
-<glyph unicode="a" horiz-adv-x="944" d="M80 201q0 279 557 354v61q0 39 -1 61.5t-10.5 53.5t-25.5 48.5t-47 29.5t-76 12q-152 -2 -287 -98l-45 111q16 12 47 30.5t127.5 48t192.5 29.5q133 0 191.5 -67.5t58.5 -221.5v-436q0 -55 25.5 -87t52.5 -36l24 -4l-47 -104q-84 14 -123 52t-51 101q-18 -25 -43 -52.5 t-103.5 -69.5t-164.5 -42q-115 0 -183.5 63t-68.5 163zM219 209q0 -111 131 -111q59 0 117.5 31t90.5 60.5t79 80.5v179q-217 -37 -317.5 -93.5t-100.5 -146.5z" />
-<glyph unicode="b" horiz-adv-x="1056" d="M162 16v1420l125 24v-651q35 51 110.5 92t169.5 41q172 0 281.5 -129t109.5 -328q0 -215 -130 -359t-379 -151h-10q-107 0 -277 41zM287 115q68 -25 164 -25q168 0 270 101.5t102 285.5q0 160 -73.5 253t-194.5 93q-154 0 -268 -143v-565z" />
-<glyph unicode="c" horiz-adv-x="925" d="M98 446.5q0 200.5 121 348t332 147.5q86 0 159.5 -25.5t104.5 -52.5l31 -24l-66 -103q-10 10 -30.5 24.5t-82 38t-124.5 23.5q-143 0 -227.5 -106.5t-84.5 -255.5q0 -154 86 -260.5t232 -106.5q68 0 130 24.5t91 49.5l29 27l47 -101q-12 -12 -37 -32.5t-106.5 -53.5 t-170.5 -33q-193 0 -313.5 135.5t-120.5 336z" />
-<glyph unicode="d" horiz-adv-x="1085" d="M100 428q0 213 134.5 363.5t369.5 150.5q111 0 187 -33v527l124 24v-1175q0 -49 10.5 -121t20.5 -119l10 -45l-129 -14q-18 88 -28 153q-43 -70 -124 -117t-183 -47q-172 0 -282 130t-110 323zM236 438q0 -158 76.5 -250t191.5 -92q162 0 287 187v397q0 147 -187 147 q-164 0 -266 -104.5t-102 -284.5z" />
-<glyph unicode="e" horiz-adv-x="993" d="M100 434q0 221 122 364.5t313 143.5q160 0 259 -105.5t99 -289.5l-84 -25l-571 -73q8 -162 92 -258.5t227 -96.5q72 0 144.5 29t109.5 57l39 31l39 -107q-14 -14 -41 -35.5t-116 -57.5t-183 -36q-215 0 -332 134.5t-117 324.5zM244 561l510 66q0 8 -3 21.5t-18.5 49 t-38 62t-66.5 48t-100 21.5q-115 0 -189.5 -74.5t-94.5 -193.5z" />
-<glyph unicode="f" horiz-adv-x="647" d="M61 809v63l146 58v104q0 215 95 333t263 118q66 0 127.5 -19.5t89.5 -38.5l31 -18l-68 -104q-94 66 -188 65q-96 0 -160.5 -81t-64.5 -249v-122h264v-109h-264v-809h-125v809h-146z" />
-<glyph unicode="g" horiz-adv-x="1017" d="M63 -236q0 168 246 281q-154 45 -153 127q0 31 25.5 63.5t46.5 48.5l63 44q-82 43 -128 120.5t-46 172.5q0 145 107.5 233t258.5 88q57 0 137 -19.5t130 -19.5h90q25 0 55.5 5t46.5 10l19 6l14 -129h-123q-57 0 -72 2q68 -76 68 -195q0 -150 -117 -233.5t-260 -83.5 q-49 0 -82 8q-90 -66 -90 -94q0 -31 53.5 -48.5t179.5 -41.5q23 -4 35 -7q84 -16 136.5 -31.5t110.5 -43t86 -71.5t28 -103q0 -141 -144.5 -239.5t-339.5 -98.5q-156 0 -268.5 65t-112.5 184zM184 -221q0 -86 87 -124t188 -38q135 0 234.5 66.5t99.5 152.5q0 66 -59.5 99.5 t-168.5 56.5q-90 16 -137 26q-78 -41 -121 -67.5t-83 -73.5t-40 -98zM254 612q0 -94 58.5 -158.5t170.5 -64.5q100 0 165 53.5t65 149.5t-61.5 171t-174.5 75q-100 0 -161.5 -64t-61.5 -162z" />
-<glyph unicode="h" horiz-adv-x="1075" d="M166 0v1436l125 24v-710q199 193 391 192q106 0 172 -64.5t66 -205.5v-672h-125v649q0 180 -138 180q-141 0 -366 -208v-621h-125z" />
-<glyph unicode="i" horiz-adv-x="454" d="M133 1262q0 41 30 69.5t68.5 28.5t67.5 -30t29 -68q0 -41 -29 -71t-67.5 -30t-68.5 30t-30 71zM166 0v918h125v-918h-125z" />
-<glyph unicode="j" horiz-adv-x="454" d="M-47 -375q213 45 213 342v951h125v-912q0 -231 -72 -348t-225 -143zM131 1262q0 41 28.5 69.5t69.5 28.5q39 0 68 -30t29 -68q0 -41 -29 -71t-68 -30t-68.5 30t-29.5 71z" />
-<glyph unicode="k" horiz-adv-x="931" d="M166 0v1436l125 24v-909h18l387 367h172l-442 -408l489 -510h-172l-432 457h-20v-457h-125z" />
-<glyph unicode="l" horiz-adv-x="454" d="M166 0v1436l125 24v-1460h-125z" />
-<glyph unicode="m" horiz-adv-x="1638" d="M162 0v905l125 25v-187q215 199 385 199q178 0 215 -180q188 180 373 180q98 0 160.5 -65.5t62.5 -204.5v-672h-125v649q0 180 -121 180q-131 0 -342 -188v-641h-125v649q0 180 -123 180q-59 0 -142 -47t-131 -88t-87 -80v-614h-125z" />
-<glyph unicode="n" d="M162 0v905l125 25v-187q215 199 395 199q104 0 170 -65.5t66 -204.5v-672h-125v649q0 180 -136 180q-88 0 -194.5 -72.5t-175.5 -142.5v-614h-125z" />
-<glyph unicode="o" d="M98 463q0 193 119 336t317.5 143t319.5 -140t121 -335t-120 -343.5t-320 -148.5q-197 0 -317 146.5t-120 341.5zM231 475q0 -156 80 -269.5t226 -113.5q135 0 220 100.5t85 260.5q0 154 -78 263t-229 109q-139 0 -221.5 -97t-82.5 -253z" />
-<glyph unicode="p" horiz-adv-x="1062" d="M162 -473v1378l123 25v-142q37 66 111.5 110t176.5 44q176 0 283 -131t107 -326q0 -217 -129 -363.5t-336 -146.5q-133 0 -211 64v-488zM287 227q2 -66 57 -101.5t143 -35.5q154 0 247 104.5t93 280.5q0 158 -74.5 250t-189.5 92q-162 0 -276 -162v-428z" />
-<glyph unicode="q" horiz-adv-x="1056" d="M98 430q0 213 133.5 362.5t378.5 149.5q63 0 134 -10t112 -21l39 -10v-1350l-125 -24v586q-33 -53 -106.5 -95.5t-171.5 -42.5q-174 0 -284 128t-110 327zM233 438q0 -156 76 -250t195 -94q156 0 266 146v565q-74 23 -172 22q-162 0 -263.5 -102.5t-101.5 -286.5z" />
-<glyph unicode="r" horiz-adv-x="661" d="M162 0v905l125 25v-185q117 197 268 197q23 0 43 -4t29 -8l8 -6l-39 -138q-37 14 -76 15q-119 0 -233 -209v-592h-125z" />
-<glyph unicode="s" horiz-adv-x="790" d="M92 57l29 117q119 -88 266 -88q88 0 135 37t47 100q0 61 -47 105.5t-114.5 74t-135 63.5t-114.5 93t-47 141q0 109 79.5 175.5t237.5 66.5q66 0 128 -12t91 -25l29 -14l-39 -109q-113 49 -225 49q-84 0 -128 -32.5t-44 -87.5q0 -57 47 -99.5t114.5 -72t135 -64.5 t114.5 -96.5t47 -147.5q0 -121 -87 -188.5t-234 -67.5q-174 2 -285 82z" />
-<glyph unicode="t" horiz-adv-x="714" d="M74 809v68l125 53v200l125 35v-247h305v-109h-305v-541q0 -96 29.5 -137t88.5 -41q45 0 95.5 21.5t76.5 44.5l29 20l31 -110q-12 -10 -34 -25.5t-88.5 -40.5t-131.5 -25q-221 0 -221 263v571h-125z" />
-<glyph unicode="u" horiz-adv-x="1054" d="M152 250v668h124v-650q0 -180 144 -180q145 0 340 188v642h125v-633q0 -49 10 -121t20 -119l11 -47l-125 -10q-23 100 -31 166q-178 -178 -371 -179q-247 1 -247 275z" />
-<glyph unicode="v" horiz-adv-x="919" d="M45 918h133l258 -764l316 764h133l-396 -930h-122z" />
-<glyph unicode="w" horiz-adv-x="1499" d="M49 918h133l234 -773l282 773h119l221 -773l291 773h135l-377 -930h-120l-224 741l-280 -741h-121z" />
-<glyph unicode="x" horiz-adv-x="915" d="M66 0l315 459l-315 459h153l240 -361l241 361h150l-315 -455l315 -463h-145l-250 371l-250 -371h-139z" />
-<glyph unicode="y" horiz-adv-x="921" d="M41 918h137l289 -672l278 672h138l-422 -988q-80 -188 -161 -293.5t-208 -121.5l-41 110q94 18 158.5 93t122.5 206l69 158z" />
-<glyph unicode="z" horiz-adv-x="876" d="M88 0v76l508 731h-492v111h666v-74l-514 -731h535v-113h-703z" />
-<glyph unicode="{" horiz-adv-x="698" d="M37 485v105q55 2 99 23.5t72 50t48 82t29.5 95.5t14.5 113.5t6 114.5t1 121q0 166 111.5 247t298.5 81v-95q-70 -6 -117 -14t-80 -30.5t-49 -41t-25.5 -65.5t-11.5 -81t-4 -110q-6 -260 -59.5 -376.5t-161.5 -163.5v-4q104 -47 159.5 -172t61.5 -392q2 -74 4 -108.5 t11.5 -80.5t26.5 -65.5t49 -41t79 -30.5t117 -16v-94q-244 0 -327 95.5t-83 336.5q0 117 -13 207t-39 143.5t-51.5 89t-60 51t-56 19.5t-50.5 6z" />
-<glyph unicode="|" horiz-adv-x="475" d="M180 -461v1995h115v-1995h-115z" />
-<glyph unicode="}" horiz-adv-x="698" d="M-18 -369q59 4 102 14.5t74.5 20.5t51 35t31 42t17.5 61t7 74t3 95q6 266 61.5 391t159.5 173v4q-106 47 -160.5 159.5t-60.5 380.5q-2 74 -4 109t-11 81t-26.5 65.5t-49.5 42t-79 30.5t-116 14v95q229 0 319 -93.5t90 -349.5q0 -131 22.5 -227t50.5 -143.5t72 -75 t68.5 -32.5t59.5 -7v-105q-51 -2 -91.5 -19t-85.5 -66.5t-70.5 -159t-25.5 -273.5q0 -240 -82 -335t-327 -95v94z" />
-<glyph unicode="~" horiz-adv-x="1191" d="M137 362q0 309 260 310q80 0 142.5 -32t94.5 -68.5t76 -68.5t93 -32q137 0 137 193h119q0 -309 -260 -310q-80 0 -142.5 32t-94.5 69t-76 68.5t-93 31.5q-137 0 -137 -193h-119z" />
-<glyph unicode="&#xa1;" horiz-adv-x="503" d="M137 831.5q0 45.5 32 78t79 32.5t78.5 -32.5t31.5 -78t-31.5 -78t-78.5 -32.5t-79 32.5t-32 78zM174 -473l21 1010h118l15 -1010h-154z" />
-<glyph unicode="&#xa2;" horiz-adv-x="903" d="M90 569.5q0 157.5 92 280.5t254 147l4 181h88l-4 -174q176 -6 275 -115l8 -10l-80 -97q-8 10 -24.5 24.5t-70.5 42.5t-112 34l-14 -627h4q68 0 130 25.5t91 50.5l29 24l47 -100q-12 -12 -35.5 -32.5t-101.5 -53.5t-162 -33h-4l-4 -182h-86l4 190q-150 31 -239 149 t-89 275.5zM229 575q0 -109 50.5 -191.5t140.5 -113.5l14 609q-96 -23 -150.5 -108t-54.5 -196z" />
-<glyph unicode="&#xa3;" horiz-adv-x="1091" d="M84 104q6 2 14 5.5t31 17.5t41 33.5t35.5 54.5t23.5 76l25 198h-127v97h139l23 172q23 188 102.5 291.5t243.5 103.5q182 0 291 -113l8 -10l-80 -96q-8 10 -25.5 27.5t-77 45t-124.5 27.5q-90 0 -143.5 -61.5t-69.5 -220.5l-19 -166h398l-11 -97h-395q-10 -98 -28.5 -187 t-32.5 -128l-15 -39q217 -70 344 -69q197 0 222 190l8 66h110q-35 -373 -313 -373q-80 0 -235.5 39t-200.5 39q-53 0 -121 -27z" />
-<glyph unicode="&#xa5;" horiz-adv-x="1130" d="M84 1128h152l329 -512l336 512h139l-313 -479h215v-98h-280l-35 -55v-80h315v-99h-315v-317h-125v317h-295v99h295v78l-39 57h-256v98h192z" />
-<glyph unicode="&#xa6;" horiz-adv-x="516" d="M193 350h133v-733h-133v733zM193 668v733h133v-733h-133z" />
-<glyph unicode="&#xa7;" horiz-adv-x="999" d="M57 -379l62 94q127 -96 264 -96q127 0 195.5 93t68.5 241q0 59 -12 125l-115 631q-23 131 -22 204q0 135 53 213l102 -22q-35 -76 -35 -189q0 -53 11 -114l125 -707q12 -70 12 -139q0 -190 -96.5 -315t-282.5 -125q-176 0 -324 102zM205 948q0 190 96 316.5t285 126.5 q84 0 166 -27t120 -53l41 -27l-61 -94q-125 96 -262 96q-129 0 -197.5 -94t-68.5 -242q0 -61 12 -123l115 -630q20 -119 20 -205q0 -137 -51 -213l-103 22q35 82 35 189q0 53 -10 114l-125 707q-12 69 -12 137z" />
-<glyph unicode="&#xa8;" horiz-adv-x="1028" d="M246 1261.5q0 36.5 29.5 65.5t66.5 29q35 0 63.5 -29t28.5 -65.5t-28.5 -65.5t-63.5 -29q-37 0 -66.5 29t-29.5 65.5zM590 1261.5q0 36.5 29.5 65.5t64.5 29q37 0 65.5 -29t28.5 -65.5t-28.5 -65.5t-65.5 -29q-35 0 -64.5 29t-29.5 65.5z" />
-<glyph unicode="&#xa9;" horiz-adv-x="1601" d="M94 682q0 293 207 500t500 207t499.5 -207t206.5 -500t-206.5 -500t-499.5 -207t-500 207t-207 500zM195 682q0 -256 176 -436t430 -180t430 180t176 436t-176 436t-430 180t-430 -180t-176 -436zM406 674q0 174 110.5 301t306.5 127q172 0 285 -113l10 -10l-92 -107 q-8 10 -25.5 26.5t-72 43.5t-111.5 27q-113 0 -181.5 -83t-68.5 -200t77 -197.5t202 -80.5q59 0 112.5 24.5t77.5 48.5l23 25l55 -113q-10 -12 -31.5 -32.5t-96.5 -53.5t-161 -33q-184 0 -301.5 116t-117.5 284z" />
-<glyph unicode="&#xaa;" horiz-adv-x="786" d="M104 872q0 207 392 261v28q0 47 -4.5 70.5t-29 44t-71.5 20.5q-49 0 -101 -19.5t-81 -39.5l-27 -20l-32 98q109 76 272 76q104 0 146 -46.5t42 -156.5v-293q8 -74 74 -82l-37 -94q-121 6 -145 104q-88 -111 -221 -110q-80 0 -128.5 43.5t-48.5 115.5zM229 879 q0 -72 76 -72q39 0 79 23.5t59.5 44t52.5 61.5v111q-141 -27 -204 -67t-63 -101z" />
-<glyph unicode="&#xab;" horiz-adv-x="1046" d="M55 510v8q35 27 281 295l123 133l98 -26l-313 -406l313 -405l-98 -27l-170 182l-112 121l-61 66l-38 38q-11 11 -23 21zM442 510v8q35 27 281 295l123 133l100 -26l-315 -406l315 -405l-100 -27l-170 182l-112 121l-61 66l-38 38q-11 11 -23 21z" />
-<glyph unicode="&#xac;" horiz-adv-x="1181" d="M115 670v123h936v-566h-131v443h-805z" />
-<glyph unicode="&#xad;" horiz-adv-x="669" d="M117 438v142h434v-142h-434z" />
-<glyph unicode="&#xae;" horiz-adv-x="890" d="M92 1087.5q0 145.5 104.5 250t250 104.5t250 -104.5t104.5 -250t-104.5 -250t-250 -104.5t-250 104.5t-104.5 250zM160 1087.5q0 -120.5 83 -208.5t199 -88q119 0 205 88t86 208.5t-86 207.5t-205 87q-117 0 -199.5 -87t-82.5 -207.5zM315 918v348h123q143 0 144 -105 q0 -70 -72 -100l104 -143h-90l-88 126h-41v-126h-80zM395 1098h49q53 0 54 55q0 57 -68 57h-35v-112z" />
-<glyph unicode="&#xaf;" horiz-adv-x="1028" d="M291 1212v113h446v-113h-446z" />
-<glyph unicode="&#xb0;" horiz-adv-x="692" d="M96 1144.5q0 102.5 73 174.5t177.5 72t177 -72t72.5 -174.5t-72.5 -174t-177 -71.5t-177.5 71.5t-73 174zM193 1144.5q0 -65.5 44 -110.5t109 -45q63 0 107.5 45t44.5 110.5t-44 112t-107.5 46.5t-108.5 -46.5t-45 -112z" />
-<glyph unicode="&#xb1;" horiz-adv-x="1064" d="M70 0v121h925v-121h-925zM74 647v121h389v375h131v-375h397v-121h-397v-411h-131v411h-389z" />
-<glyph unicode="&#xb2;" horiz-adv-x="692" d="M57 819l86 86q59 59 84 86l70 75q45 48 64 78l45 69q25 40 34 75t9 70q0 72 -40 111.5t-100 39.5q-41 0 -83 -19.5t-64 -39.5l-23 -18l-63 71q10 12 31.5 30.5t89 48.5t139.5 30q113 0 174 -69.5t61 -166.5q0 -104 -80.5 -225t-248.5 -283h391v-98h-565z" />
-<glyph unicode="&#xb3;" horiz-adv-x="655" d="M53 815l47 90q78 -47 174 -47q78 0 125 35t47 96q0 70 -63.5 108t-157.5 38h-39v96q84 8 154 58t70 126q0 96 -111 96q-90 0 -164 -55l-47 78q100 78 219 78q96 0 160.5 -51.5t64.5 -133.5q0 -121 -165 -213q92 -20 147 -80.5t55 -138.5q0 -102 -88 -170.5t-213 -68.5 q-129 0 -215 59z" />
-<glyph unicode="&#xb4;" horiz-adv-x="1017" d="M330 1083l205 342h155l-276 -391z" />
-<glyph unicode="&#xb5;" horiz-adv-x="1128" d="M152 -442q20 199 20 362v998h125v-650q0 -180 143 -180q152 0 340 188v642h125v-703q0 -82 24.5 -107.5t108.5 -25.5v-96q-55 -10 -88 -11q-88 0 -126 46.5t-44 130.5q-176 -176 -360 -177q-76 0 -127 25q2 -90 7 -248t5 -194h-153z" />
-<glyph unicode="&#x3bc;" horiz-adv-x="1128" d="M152 -442q20 199 20 362v998h125v-650q0 -180 143 -180q152 0 340 188v642h125v-703q0 -82 24.5 -107.5t108.5 -25.5v-96q-55 -10 -88 -11q-88 0 -126 46.5t-44 130.5q-176 -176 -360 -177q-76 0 -127 25q2 -90 7 -248t5 -194h-153z" />
-<glyph unicode="&#xb6;" horiz-adv-x="1343" d="M72 864q0 203 154.5 352.5t430.5 149.5h582v-111h-152v-1255h-118v1255h-154v-1296q0 -444 -352 -444l-31 123q133 0 193.5 73.5t60.5 241.5v414h-18q-291 0 -443.5 145t-152.5 352z" />
-<glyph unicode="&#xb7;" horiz-adv-x="505" d="M143 520q0 45 33 77t78 32t76.5 -32t31.5 -77t-31.5 -77.5t-76.5 -32.5t-78 32.5t-33 77.5z" />
-<glyph unicode="&#xb8;" horiz-adv-x="1028" d="M338 -422l41 96q66 -57 139 -57q45 0 77 21.5t32 50.5q0 25 -26 43t-56.5 29.5t-56 34t-25.5 52.5q0 16 6 35t17.5 45.5t13.5 32.5l16 39h96l-16 -33q-25 -59 -25 -71q0 -23 27 -42.5t59.5 -33t59 -44t26.5 -73.5q0 -74 -63.5 -131t-155.5 -57q-104 0 -186 63z" />
-<glyph unicode="&#xb9;" horiz-adv-x="550" d="M70 770v90h166v647h-154v90h274v-737h158v-90h-444z" />
-<glyph unicode="&#xba;" horiz-adv-x="835" d="M94 1047q0 133 89 238.5t237 105.5q141 0 229 -97.5t88 -228.5q0 -135 -86 -243.5t-237 -108.5q-143 0 -231.5 101.5t-88.5 232.5zM215 1061q0 -104 52 -179t151 -75q88 0 143 66.5t55 173.5q0 102 -50 175.5t-150 73.5q-92 0 -146.5 -64.5t-54.5 -170.5z" />
-<glyph unicode="&#xbb;" horiz-adv-x="1050" d="M104 109l316 405l-316 406l101 26q362 -395 403 -428v-8q-10 -8 -21.5 -18.5l-24.5 -23.5t-43 -46l-64 -71l-104 -111l-146 -158zM492 109l315 405l-315 406l100 26q367 -397 393 -420q4 -4 10 -8v-8q-12 -10 -22 -21l-38 -38l-62 -66l-111 -121l-170 -182z" />
-<glyph unicode="&#xbc;" horiz-adv-x="1646" d="M98 553v90h166v647h-153v90h274v-737h158v-90h-445zM332 0l811 1403l104 -37l-784 -1366h-131zM936 289l418 545h90v-512h127v-95h-127v-227h-117v227h-383zM1073 322h254v329z" />
-<glyph unicode="&#xbd;" horiz-adv-x="1779" d="M96 553v90h166v647h-153v90h274v-737h158v-90h-445zM317 0l811 1403l105 -37l-784 -1366h-132zM1130 49l87 86q59 59 83 86l70 75q45 48 65 78l44 69q25 40 34 75t9 70q0 72 -40 111.5t-100 39.5q-41 0 -83 -19.5t-64 -39.5l-23 -18l-63 71q10 12 31.5 30.5t89 48.5 t139.5 30q113 0 174.5 -70t61.5 -166q0 -104 -81 -225t-249 -283h391v-98h-565z" />
-<glyph unicode="&#xbe;" horiz-adv-x="1611" d="M86 598l47 90q78 -47 174 -47q78 0 125 35t47 96q0 70 -63.5 108t-157.5 38h-39v96q84 8 153.5 58t69.5 126q0 96 -110 96q-90 0 -164 -55l-47 78q100 78 219 78q96 0 160.5 -51.5t64.5 -133.5q0 -121 -166 -213q92 -20 147.5 -80.5t55.5 -138.5q0 -102 -88 -170.5 t-213 -68.5q-129 0 -215 59zM295 0l811 1403l104 -37l-784 -1366h-131zM901 289l418 545h90v-512h127v-95h-127v-227h-117v227h-383zM1038 322h254v329z" />
-<glyph unicode="&#xbf;" horiz-adv-x="694" d="M74 -104q0 49 33.5 101t82 103.5t96.5 109.5t81.5 143t33.5 184h103q6 -29 6 -76q0 -94 -44 -184.5t-96.5 -147.5t-96.5 -118.5t-44 -102.5q0 -66 96.5 -134.5t190.5 -103.5l96 -35l-28 -122l-56 17q-35 11 -123 50t-154.5 81t-121.5 105.5t-55 129.5zM334 831.5 q0 45.5 31.5 78t79 32.5t79 -32.5t31.5 -78t-31.5 -78t-79 -32.5t-79 32.5t-31.5 78z" />
-<glyph unicode="&#xc0;" horiz-adv-x="1255" d="M35 0l528 1376h129l529 -1376h-144l-170 449h-565l-170 -449h-137zM354 1624l60 133l379 -194l-35 -86zM385 563h479l-239 631z" />
-<glyph unicode="&#xc1;" horiz-adv-x="1255" d="M35 0l528 1376h129l529 -1376h-144l-170 449h-565l-170 -449h-137zM385 563h479l-239 631zM457 1563l377 194l61 -133l-403 -147z" />
-<glyph unicode="&#xc2;" horiz-adv-x="1255" d="M35 0l528 1376h129l529 -1376h-144l-170 449h-565l-170 -449h-137zM307 1544l258 240h121l256 -240l-78 -74l-237 211l-242 -211zM385 563h479l-239 631z" />
-<glyph unicode="&#xc3;" horiz-adv-x="1255" d="M35 0l528 1376h129l529 -1376h-144l-170 449h-565l-170 -449h-137zM268 1505q0 18 5.5 46t22.5 76t64.5 81t116.5 33q66 0 116 -35t89 -68.5t82 -33.5q33 0 55.5 18t30.5 46t10 44.5t2 28.5h117q0 -8 -2 -22.5t-7 -45.5t-19.5 -59.5t-37 -56t-61.5 -44t-88 -16.5 q-53 0 -95 21.5t-65.5 47t-56.5 47t-65.5 21.5t-55.5 -18.5t-30 -46t-9 -40.5t-2 -24h-117zM385 563h479l-239 631z" />
-<glyph unicode="&#xc4;" horiz-adv-x="1255" d="M35 0l528 1376h129l529 -1376h-144l-170 449h-565l-170 -449h-137zM305 1624q0 35 28.5 63.5t65.5 28.5q35 0 64 -28.5t29 -63.5q0 -37 -29 -65.5t-64 -28.5q-37 0 -65.5 27.5t-28.5 66.5zM385 563h479l-239 631zM760 1624q0 35 28.5 63.5t63.5 28.5q37 0 65.5 -28.5 t28.5 -63.5q0 -39 -28.5 -66.5t-65.5 -27.5q-35 0 -63.5 28.5t-28.5 65.5z" />
-<glyph unicode="&#xc5;" horiz-adv-x="1255" d="M35 0l528 1376h129l529 -1376h-144l-170 449h-565l-170 -449h-137zM385 563h479l-239 631zM436 1622q0 66 49.5 114t139.5 48t139 -48t49 -114q0 -68 -49 -116t-139 -48t-139.5 48t-49.5 116zM526 1620q0 -39 26 -67.5t73 -28.5t73.5 28.5t26.5 67.5q0 41 -25.5 69.5 t-75 28.5t-74 -28.5t-24.5 -69.5z" />
-<glyph unicode="&#xc6;" horiz-adv-x="1740" d="M2 0l760 1366h870v-113h-651v-497h516v-113h-516v-530h643v-113h-776v485h-434l-269 -485h-143zM475 598h373v672z" />
-<glyph unicode="&#xc7;" horiz-adv-x="1384" d="M113 678q0 303 199.5 508t523.5 205q115 0 226.5 -30t164.5 -58l53 -31l-55 -125q-18 14 -53 35.5t-140.5 57.5t-210.5 36q-137 0 -247.5 -52.5t-177 -138.5t-101.5 -188t-35 -211q0 -244 160 -420t409 -176q207 0 396 131l14 10l55 -102q-8 -6 -23.5 -16.5t-64.5 -37 t-101 -47t-132 -37t-158 -16.5h-10l-4 -8q-25 -59 -25 -71q0 -23 26.5 -42.5t59.5 -33t59.5 -44t26.5 -73.5q0 -74 -63.5 -131t-155.5 -57q-104 0 -186 63l41 96q66 -57 139 -57q45 0 76.5 21.5t31.5 50.5q0 25 -25.5 43t-56 29.5t-56 34t-25.5 52.5q0 16 6 35t17 45.5 t14 32.5l8 23q-266 33 -433 225.5t-167 468.5z" />
-<glyph unicode="&#xc8;" horiz-adv-x="1103" d="M211 0v1366h784v-113h-649v-497h514v-113h-514v-530h641v-113h-776zM346 1624l60 133l378 -194l-34 -86z" />
-<glyph unicode="&#xc9;" horiz-adv-x="1103" d="M211 0v1366h784v-113h-649v-497h514v-113h-514v-530h641v-113h-776zM449 1563l376 194l62 -133l-404 -147z" />
-<glyph unicode="&#xca;" horiz-adv-x="1103" d="M211 0v1366h784v-113h-649v-497h514v-113h-514v-530h641v-113h-776zM299 1544l258 240h121l256 -240l-78 -74l-238 211l-241 -211z" />
-<glyph unicode="&#xcb;" horiz-adv-x="1103" d="M211 0v1366h784v-113h-649v-497h514v-113h-514v-530h641v-113h-776zM297 1624q0 35 28.5 63.5t65.5 28.5q35 0 63.5 -28.5t28.5 -63.5q0 -37 -28.5 -65.5t-63.5 -28.5q-37 0 -65.5 27.5t-28.5 66.5zM752 1624q0 35 28.5 63.5t63.5 28.5q37 0 65.5 -28.5t28.5 -63.5 q0 -39 -28.5 -66.5t-65.5 -27.5q-35 0 -63.5 28.5t-28.5 65.5z" />
-<glyph unicode="&#xcc;" horiz-adv-x="557" d="M8 1624l60 133l378 -194l-34 -86zM211 0v1366h135v-1366h-135z" />
-<glyph unicode="&#xcd;" horiz-adv-x="557" d="M111 1563l376 194l62 -133l-404 -147zM211 0v1366h135v-1366h-135z" />
-<glyph unicode="&#xce;" horiz-adv-x="557" d="M-39 1544l258 240h121l256 -240l-78 -74l-237 211l-242 -211zM211 0v1366h135v-1366h-135z" />
-<glyph unicode="&#xcf;" horiz-adv-x="557" d="M14 1622q0 37 30 65.5t67 28.5q35 0 63.5 -28.5t28.5 -65.5t-29 -65.5t-63 -28.5q-37 0 -67 28.5t-30 65.5zM211 0v1366h135v-1366h-135zM358 1622q0 37 30 65.5t65 28.5q37 0 65.5 -28.5t28.5 -65.5t-29 -65.5t-65 -28.5q-35 0 -65 28.5t-30 65.5z" />
-<glyph unicode="&#xd0;" horiz-adv-x="1488" d="M76 633v119h147v614h387q147 0 278.5 -36t243 -111.5t177 -207.5t65.5 -306q0 -336 -230.5 -520.5t-611.5 -184.5h-309v633h-147zM356 113h156q373 0 543 156.5t170 414.5q0 264 -167 416.5t-476 152.5h-226v-501h365v-119h-365v-520z" />
-<glyph unicode="&#xd1;" horiz-adv-x="1529" d="M211 0v1366h133l844 -1167v1167h131v-1366h-133l-844 1149v-1149h-131zM408 1505q0 18 5 46t22.5 76t64.5 81t116 33q66 0 116 -35t89 -68.5t82 -33.5q33 0 55.5 18t30.5 46t10 44.5t2 28.5h117q0 -8 -2 -22.5t-7 -45.5t-19.5 -59.5t-37 -56t-61.5 -44t-88 -16.5 q-53 0 -95 21.5t-65.5 47t-56.5 47t-65.5 21.5t-55 -18.5t-30 -46t-9.5 -40.5t-2 -24h-116z" />
-<glyph unicode="&#xd2;" horiz-adv-x="1624" d="M111 680q0 289 194.5 500t517.5 211q305 0 497.5 -196t192.5 -486q0 -299 -200.5 -516.5t-507.5 -217.5q-301 0 -497.5 206t-196.5 499zM256 694q0 -147 62.5 -282.5t193.5 -227.5t299 -92q250 0 402.5 182.5t152.5 418t-150.5 408.5t-404.5 173q-252 0 -403.5 -175.5 t-151.5 -404.5zM541 1624l59 133l379 -194l-35 -86z" />
-<glyph unicode="&#xd3;" horiz-adv-x="1624" d="M111 680q0 289 194.5 500t517.5 211q305 0 497.5 -196t192.5 -486q0 -299 -200.5 -516.5t-507.5 -217.5q-301 0 -497.5 206t-196.5 499zM256 694q0 -147 62.5 -282.5t193.5 -227.5t299 -92q250 0 402.5 182.5t152.5 418t-150.5 408.5t-404.5 173q-252 0 -403.5 -175.5 t-151.5 -404.5zM643 1563l377 194l61 -133l-403 -147z" />
-<glyph unicode="&#xd4;" horiz-adv-x="1624" d="M111 680q0 289 194.5 500t517.5 211q305 0 497.5 -196t192.5 -486q0 -299 -200.5 -516.5t-507.5 -217.5q-301 0 -497.5 206t-196.5 499zM256 694q0 -147 62.5 -282.5t193.5 -227.5t299 -92q250 0 402.5 182.5t152.5 418t-150.5 408.5t-404.5 173q-252 0 -403.5 -175.5 t-151.5 -404.5zM494 1544l258 240h120l256 -240l-77 -74l-238 211l-242 -211z" />
-<glyph unicode="&#xd5;" horiz-adv-x="1624" d="M111 680q0 289 194.5 500t517.5 211q305 0 497.5 -196t192.5 -486q0 -299 -200.5 -516.5t-507.5 -217.5q-301 0 -497.5 206t-196.5 499zM256 694q0 -147 62.5 -282.5t193.5 -227.5t299 -92q250 0 402.5 182.5t152.5 418t-150.5 408.5t-404.5 173q-252 0 -403.5 -175.5 t-151.5 -404.5zM455 1505q0 18 5 46t22.5 76t64.5 81t117 33q66 0 115.5 -35t88.5 -68.5t82 -33.5q33 0 55.5 18t30.5 46t10.5 44.5t2.5 28.5h116q0 -8 -2 -22.5t-7 -45.5t-19.5 -59.5t-37 -56t-61.5 -44t-88 -16.5q-53 0 -95 21.5t-65.5 47t-56.5 47t-65.5 21.5t-55 -18.5 t-30 -46t-9.5 -40.5t-2 -24h-116z" />
-<glyph unicode="&#xd6;" horiz-adv-x="1624" d="M111 680q0 289 194.5 500t517.5 211q305 0 497.5 -196t192.5 -486q0 -299 -200.5 -516.5t-507.5 -217.5q-301 0 -497.5 206t-196.5 499zM256 694q0 -147 62.5 -282.5t193.5 -227.5t299 -92q250 0 402.5 182.5t152.5 418t-150.5 408.5t-404.5 173q-252 0 -403.5 -175.5 t-151.5 -404.5zM492 1624q0 35 28.5 63.5t65.5 28.5q35 0 63.5 -28.5t28.5 -63.5q0 -37 -28.5 -65.5t-63.5 -28.5q-37 0 -65.5 27.5t-28.5 66.5zM946 1624q0 35 29 63.5t63 28.5q37 0 66 -28.5t29 -63.5q0 -39 -29 -66.5t-66 -27.5q-35 0 -63.5 28.5t-28.5 65.5z" />
-<glyph unicode="&#xd7;" horiz-adv-x="1064" d="M86 137l363 373l-363 375l82 86l364 -375l365 375l82 -86l-365 -375l365 -373l-84 -86l-363 373l-362 -373z" />
-<glyph unicode="&#xd8;" horiz-adv-x="1624" d="M111 680q0 289 194.5 500t517.5 211q211 0 381 -105l107 141h125l-152 -198q229 -197 229 -520q0 -299 -200.5 -516.5t-507.5 -217.5q-217 0 -387 115l-115 -151h-127l162 213q-227 204 -227 528zM256 694q0 -256 166 -434l700 922q-135 92 -311 92q-252 0 -403.5 -176.5 t-151.5 -403.5zM496 195q139 -102 315 -103q250 0 402.5 182.5t152.5 417.5q0 254 -166 424z" />
-<glyph unicode="&#xd9;" horiz-adv-x="1476" d="M193 485v881h133v-846q0 -215 113.5 -321.5t299.5 -106.5q184 0 298 103.5t114 310.5v860h133v-852q0 -256 -153.5 -397.5t-393.5 -141.5q-244 0 -394 124t-150 386zM467 1624l59 133l379 -194l-35 -86z" />
-<glyph unicode="&#xda;" horiz-adv-x="1476" d="M193 485v881h133v-846q0 -215 113.5 -321.5t299.5 -106.5q184 0 298 103.5t114 310.5v860h133v-852q0 -256 -153.5 -397.5t-393.5 -141.5q-244 0 -394 124t-150 386zM569 1563l377 194l62 -133l-404 -147z" />
-<glyph unicode="&#xdb;" horiz-adv-x="1476" d="M193 485v881h133v-846q0 -215 113.5 -321.5t299.5 -106.5q184 0 298 103.5t114 310.5v860h133v-852q0 -256 -153.5 -397.5t-393.5 -141.5q-244 0 -394 124t-150 386zM420 1544l258 240h121l256 -240l-78 -74l-238 211l-241 -211z" />
-<glyph unicode="&#xdc;" horiz-adv-x="1476" d="M193 485v881h133v-846q0 -215 113.5 -321.5t299.5 -106.5q184 0 298 103.5t114 310.5v860h133v-852q0 -256 -153.5 -397.5t-393.5 -141.5q-244 0 -394 124t-150 386zM418 1624q0 35 28.5 63.5t65.5 28.5q35 0 63.5 -28.5t28.5 -63.5q0 -37 -28.5 -65.5t-63.5 -28.5 q-37 0 -65.5 27.5t-28.5 66.5zM872 1624q0 35 29 63.5t64 28.5q37 0 65.5 -28.5t28.5 -63.5q0 -39 -29 -66.5t-65 -27.5q-35 0 -64 28.5t-29 65.5z" />
-<glyph unicode="&#xdd;" horiz-adv-x="1153" d="M23 1366h159l398 -635l401 635h149l-485 -762v-604h-135v602zM424 1563l377 194l61 -133l-403 -147z" />
-<glyph unicode="&#xde;" horiz-adv-x="1132" d="M211 0v1366h135v-324h266q240 0 345.5 -98t105.5 -256q0 -184 -120 -286.5t-331 -102.5h-266v-299h-135zM346 412h240q332 0 332 262q0 256 -332 256h-240v-518z" />
-<glyph unicode="&#xdf;" horiz-adv-x="1134" d="M61 809v63l146 58v80q0 215 99.5 335.5t277.5 120.5q160 0 244.5 -86t84.5 -192q0 -57 -32.5 -116.5t-72.5 -101.5t-73 -101.5t-33 -114.5q0 -57 37 -108.5t90 -92.5l107 -83q53 -42 90 -102.5t37 -129.5q0 -119 -84 -191t-229 -72q-78 0 -149 20.5t-101 41.5l-33 22 l35 119q115 -92 254 -92q84 0 129 40t45 103q0 66 -56.5 126.5t-123 103.5t-123 116.5t-56.5 161.5q0 66 32 129.5t69 105.5t68.5 98t31.5 110q0 78 -59.5 122t-139.5 44q-106 0 -173.5 -80t-67.5 -248v-1018h-125v809h-146z" />
-<glyph unicode="&#xe0;" horiz-adv-x="944" d="M80 201q0 279 557 354v61q0 39 -1 61.5t-10.5 53.5t-25.5 48.5t-47 29.5t-76 12q-152 -2 -287 -98l-45 111q16 12 47 30.5t127.5 48t192.5 29.5q133 0 191.5 -67.5t58.5 -221.5v-436q0 -55 25.5 -87t52.5 -36l24 -4l-47 -104q-84 14 -123 52t-51 101q-18 -25 -43 -52.5 t-103.5 -69.5t-164.5 -42q-115 0 -183.5 63t-68.5 163zM176 1425h154l207 -342l-84 -49zM219 209q0 -111 131 -111q59 0 117.5 31t90.5 60.5t79 80.5v179q-217 -37 -317.5 -93.5t-100.5 -146.5z" />
-<glyph unicode="&#xe1;" horiz-adv-x="944" d="M80 201q0 279 557 354v61q0 39 -1 61.5t-10.5 53.5t-25.5 48.5t-47 29.5t-76 12q-152 -2 -287 -98l-45 111q16 12 47 30.5t127.5 48t192.5 29.5q133 0 191.5 -67.5t58.5 -221.5v-436q0 -55 25.5 -87t52.5 -36l24 -4l-47 -104q-84 14 -123 52t-51 101q-18 -25 -43 -52.5 t-103.5 -69.5t-164.5 -42q-115 0 -183.5 63t-68.5 163zM219 209q0 -111 131 -111q59 0 117.5 31t90.5 60.5t79 80.5v179q-217 -37 -317.5 -93.5t-100.5 -146.5zM381 1083l205 342h155l-276 -391z" />
-<glyph unicode="&#xe2;" horiz-adv-x="944" d="M80 201q0 279 557 354v61q0 39 -1 61.5t-10.5 53.5t-25.5 48.5t-47 29.5t-76 12q-152 -2 -287 -98l-45 111q16 12 47 30.5t127.5 48t192.5 29.5q133 0 191.5 -67.5t58.5 -221.5v-436q0 -55 25.5 -87t52.5 -36l24 -4l-47 -104q-84 14 -123 52t-51 101q-18 -25 -43 -52.5 t-103.5 -69.5t-164.5 -42q-115 0 -183.5 63t-68.5 163zM184 1081l228 344h94l227 -344l-86 -49l-188 260l-189 -260zM219 209q0 -111 131 -111q59 0 117.5 31t90.5 60.5t79 80.5v179q-217 -37 -317.5 -93.5t-100.5 -146.5z" />
-<glyph unicode="&#xe3;" horiz-adv-x="944" d="M80 201q0 279 557 354v61q0 39 -1 61.5t-10.5 53.5t-25.5 48.5t-47 29.5t-76 12q-152 -2 -287 -98l-45 111q16 12 47 30.5t127.5 48t192.5 29.5q133 0 191.5 -67.5t58.5 -221.5v-436q0 -55 25.5 -87t52.5 -36l24 -4l-47 -104q-84 14 -123 52t-51 101q-18 -25 -43 -52.5 t-103.5 -69.5t-164.5 -42q-115 0 -183.5 63t-68.5 163zM174 1135q0 10 1 25.5t9.5 56t23.5 71.5t49 56.5t81 25.5t85 -24.5t57.5 -54t44 -54.5t48.5 -25q66 10 72 146h94q0 -10 -1 -26.5t-9 -58.5t-24.5 -75t-51.5 -59.5t-82 -26.5q-59 0 -101 40t-71.5 80t-60.5 40 t-48.5 -34t-19.5 -69l-2 -34h-94zM219 209q0 -111 131 -111q59 0 117.5 31t90.5 60.5t79 80.5v179q-217 -37 -317.5 -93.5t-100.5 -146.5z" />
-<glyph unicode="&#xe4;" horiz-adv-x="944" d="M80 201q0 279 557 354v61q0 39 -1 61.5t-10.5 53.5t-25.5 48.5t-47 29.5t-76 12q-152 -2 -287 -98l-45 111q16 12 47 30.5t127.5 48t192.5 29.5q133 0 191.5 -67.5t58.5 -221.5v-436q0 -55 25.5 -87t52.5 -36l24 -4l-47 -104q-84 14 -123 52t-51 101q-18 -25 -43 -52.5 t-103.5 -69.5t-164.5 -42q-115 0 -183.5 63t-68.5 163zM190 1261.5q0 36.5 30 65.5t67 29q35 0 63.5 -29t28.5 -65.5t-28.5 -65.5t-63.5 -29q-37 0 -67 29t-30 65.5zM219 209q0 -111 131 -111q59 0 117.5 31t90.5 60.5t79 80.5v179q-217 -37 -317.5 -93.5t-100.5 -146.5z M535 1261.5q0 36.5 29.5 65.5t64.5 29q37 0 65.5 -29t28.5 -65.5t-28.5 -65.5t-65.5 -29q-35 0 -64.5 29t-29.5 65.5z" />
-<glyph unicode="&#xe5;" horiz-adv-x="944" d="M80 201q0 279 557 354v61q0 39 -1 61.5t-10.5 53.5t-25.5 48.5t-47 29.5t-76 12q-152 -2 -287 -98l-45 111q16 12 47 30.5t127.5 48t192.5 29.5q133 0 191.5 -67.5t58.5 -221.5v-436q0 -55 25.5 -87t52.5 -36l24 -4l-47 -104q-84 14 -123 52t-51 101q-18 -25 -43 -52.5 t-103.5 -69.5t-164.5 -42q-115 0 -183.5 63t-68.5 163zM219 209q0 -111 131 -111q59 0 117.5 31t90.5 60.5t79 80.5v179q-217 -37 -317.5 -93.5t-100.5 -146.5zM276 1266q0 68 46.5 113.5t136.5 45.5t136 -46t46 -113q0 -70 -46 -119t-136 -49t-136.5 49t-46.5 119z M365 1264q0 -39 22.5 -64.5t71.5 -25.5q47 0 71.5 26.5t24.5 63t-23.5 62.5t-72.5 26q-94 0 -94 -88z" />
-<glyph unicode="&#xe6;" horiz-adv-x="1538" d="M80 205q0 274 582 342v49q0 127 -33 176t-129 49q-74 0 -152 -24.5t-119 -48.5l-39 -25l-45 111q16 12 48 30.5t127.5 48t191.5 29.5q109 0 167 -38t81 -118q125 156 323 156q156 0 256.5 -105.5t98.5 -283.5l-84 -29l-574 -73q6 -156 92 -256.5t228 -100.5 q154 0 280 109l6 4l54 -94q-6 -6 -16.5 -15.5t-44 -33t-71.5 -42t-97.5 -33t-120.5 -14.5q-129 0 -228.5 60.5t-152.5 171.5q-41 -94 -128 -163t-221 -69q-121 0 -200.5 62t-79.5 168zM219 209q0 -53 40 -84t114 -31q125 0 200.5 91t75.5 253q-430 -65 -430 -229zM788 563 l510 68q0 8 -3 21.5t-18 47t-37.5 60t-68 48t-102.5 21.5q-113 0 -185.5 -72.5t-95.5 -193.5z" />
-<glyph unicode="&#xe7;" horiz-adv-x="925" d="M98 446q0 201 121 348.5t332 147.5q86 0 159.5 -25.5t104.5 -52.5l31 -24l-66 -103q-10 10 -30.5 24.5t-82 38t-124.5 23.5q-143 0 -227.5 -106.5t-84.5 -255.5q0 -154 86 -260.5t232 -106.5q68 0 130 24.5t91 49.5l29 27l47 -101q-12 -12 -37 -32.5t-106.5 -53.5 t-170.5 -33h-10l-4 -10q-25 -59 -24 -71q0 -23 26.5 -42.5t59 -33t59.5 -44t27 -73.5q0 -74 -63.5 -131t-156.5 -57q-104 0 -186 63l41 96q66 -57 139 -57q45 0 77 21.5t32 50.5q0 25 -25.5 43t-56.5 29.5t-56.5 34t-25.5 52.5q0 16 6 35t17.5 45.5t13.5 32.5l10 27 q-152 33 -243 160.5t-91 299.5z" />
-<glyph unicode="&#xe8;" horiz-adv-x="993" d="M100 434q0 221 122 364.5t313 143.5q160 0 259 -105.5t99 -289.5l-84 -25l-571 -73q8 -162 92 -258.5t227 -96.5q72 0 144.5 29t109.5 57l39 31l39 -107q-14 -14 -41 -35.5t-116 -57.5t-183 -36q-215 0 -332 134.5t-117 324.5zM231 1425h154l207 -342l-84 -49zM244 561 l510 66q0 8 -3 21.5t-18.5 49t-38 62t-66.5 48t-100 21.5q-115 0 -189.5 -74.5t-94.5 -193.5z" />
-<glyph unicode="&#xe9;" horiz-adv-x="993" d="M100 434q0 221 122 364.5t313 143.5q160 0 259 -105.5t99 -289.5l-84 -25l-571 -73q8 -162 92 -258.5t227 -96.5q72 0 144.5 29t109.5 57l39 31l39 -107q-14 -14 -41 -35.5t-116 -57.5t-183 -36q-215 0 -332 134.5t-117 324.5zM244 561l510 66q0 8 -3 21.5t-18.5 49 t-38 62t-66.5 48t-100 21.5q-115 0 -189.5 -74.5t-94.5 -193.5zM436 1083l205 342h156l-277 -391z" />
-<glyph unicode="&#xea;" horiz-adv-x="993" d="M100 434q0 221 122 364.5t313 143.5q160 0 259 -105.5t99 -289.5l-84 -25l-571 -73q8 -162 92 -258.5t227 -96.5q72 0 144.5 29t109.5 57l39 31l39 -107q-14 -14 -41 -35.5t-116 -57.5t-183 -36q-215 0 -332 134.5t-117 324.5zM240 1081l227 344h94l227 -344l-86 -49 l-188 260l-188 -260zM244 561l510 66q0 8 -3 21.5t-18.5 49t-38 62t-66.5 48t-100 21.5q-115 0 -189.5 -74.5t-94.5 -193.5z" />
-<glyph unicode="&#xeb;" horiz-adv-x="993" d="M100 434q0 221 122 364.5t313 143.5q160 0 259 -105.5t99 -289.5l-84 -25l-571 -73q8 -162 92 -258.5t227 -96.5q72 0 144.5 29t109.5 57l39 31l39 -107q-14 -14 -41 -35.5t-116 -57.5t-183 -36q-215 0 -332 134.5t-117 324.5zM244 561l510 66q0 8 -3 21.5t-18.5 49 t-38 62t-66.5 48t-100 21.5q-115 0 -189.5 -74.5t-94.5 -193.5zM246 1261.5q0 36.5 29.5 65.5t66.5 29q35 0 63.5 -29t28.5 -65.5t-28.5 -65.5t-63.5 -29q-37 0 -66.5 29t-29.5 65.5zM590 1261.5q0 36.5 29.5 65.5t64.5 29q37 0 65.5 -29t28.5 -65.5t-28.5 -65.5t-65.5 -29 q-35 0 -64.5 29t-29.5 65.5z" />
-<glyph unicode="&#xec;" horiz-adv-x="454" d="M-55 1425h153l207 -342l-84 -49zM166 0v918h125v-918h-125z" />
-<glyph unicode="&#xed;" horiz-adv-x="454" d="M152 1083l204 342h156l-276 -391zM166 0v918h125v-918h-125z" />
-<glyph unicode="&#xee;" horiz-adv-x="454" d="M-47 1081l227 344h94l228 -344l-86 -49l-189 260l-188 -260zM166 0v918h125v-918h-125z" />
-<glyph unicode="&#xef;" horiz-adv-x="454" d="M-41 1261.5q0 36.5 29.5 65.5t66.5 29q35 0 63.5 -29t28.5 -65.5t-28.5 -65.5t-63.5 -29q-37 0 -66.5 29t-29.5 65.5zM166 0v918h125v-918h-125zM303 1261.5q0 36.5 29.5 65.5t64.5 29q37 0 66 -29t29 -65.5t-29 -65.5t-66 -29q-35 0 -64.5 29t-29.5 65.5z" />
-<glyph unicode="&#xf0;" horiz-adv-x="1097" d="M98 451q0 197 128 344t315 147q178 0 264 -94q-74 211 -242 356l-252 -157l-57 92l219 137q-135 88 -291 133l31 104q209 -53 371 -167l282 176l54 -95l-246 -153q303 -274 303 -703q0 -270 -123 -433t-334 -163q-193 0 -307.5 145t-114.5 331zM236 465q0 -143 78.5 -256 t215.5 -113q139 0 227.5 117t88.5 356q0 119 -66.5 185.5t-204.5 66.5q-152 0 -245.5 -100t-93.5 -256z" />
-<glyph unicode="&#xf1;" d="M162 0v905l125 25v-187q215 199 395 199q104 0 170 -65.5t66 -204.5v-672h-125v649q0 180 -136 180q-88 0 -194.5 -72.5t-175.5 -142.5v-614h-125zM262 1135q0 10 1 25.5t9.5 56t23.5 71.5t49 56.5t81 25.5t85 -24.5t57.5 -54t44 -54.5t49.5 -25q66 10 71 146h94 q0 -10 -1 -26.5t-9 -58.5t-24.5 -75t-51 -59.5t-82.5 -26.5q-59 0 -101 40t-71.5 80t-60.5 40t-48.5 -34t-19.5 -69l-2 -34h-94z" />
-<glyph unicode="&#xf2;" d="M98 463q0 193 119 336t317.5 143t319.5 -140t121 -335t-120 -343.5t-320 -148.5q-197 0 -317 146.5t-120 341.5zM231 475q0 -156 80 -269.5t226 -113.5q135 0 220 100.5t85 260.5q0 154 -78 263t-229 109q-139 0 -221.5 -97t-82.5 -253zM252 1425h154l206 -342l-84 -49z " />
-<glyph unicode="&#xf3;" d="M98 463q0 193 119 336t317.5 143t319.5 -140t121 -335t-120 -343.5t-320 -148.5q-197 0 -317 146.5t-120 341.5zM231 475q0 -156 80 -269.5t226 -113.5q135 0 220 100.5t85 260.5q0 154 -78 263t-229 109q-139 0 -221.5 -97t-82.5 -253zM459 1083l205 342h155l-276 -391z " />
-<glyph unicode="&#xf4;" d="M98 463q0 193 119 336t317.5 143t319.5 -140t121 -335t-120 -343.5t-320 -148.5q-197 0 -317 146.5t-120 341.5zM231 475q0 -156 80 -269.5t226 -113.5q135 0 220 100.5t85 260.5q0 154 -78 263t-229 109q-139 0 -221.5 -97t-82.5 -253zM260 1081l227 344h95l227 -344 l-86 -49l-188 260l-189 -260z" />
-<glyph unicode="&#xf5;" d="M98 463q0 193 119 336t317.5 143t319.5 -140t121 -335t-120 -343.5t-320 -148.5q-197 0 -317 146.5t-120 341.5zM231 475q0 -156 80 -269.5t226 -113.5q135 0 220 100.5t85 260.5q0 154 -78 263t-229 109q-139 0 -221.5 -97t-82.5 -253zM250 1135q0 10 1 25.5t9 56 t23.5 71.5t49.5 56.5t81 25.5t85 -24.5t57 -54t44 -54.5t49 -25q66 10 72 146h94q0 -10 -1 -26.5t-9 -58.5t-24.5 -75t-51.5 -59.5t-82 -26.5q-59 0 -101 40t-72 80t-60.5 40t-48 -34t-19.5 -69l-2 -34h-94z" />
-<glyph unicode="&#xf6;" d="M98 463q0 193 119 336t317.5 143t319.5 -140t121 -335t-120 -343.5t-320 -148.5q-197 0 -317 146.5t-120 341.5zM231 475q0 -156 80 -269.5t226 -113.5q135 0 220 100.5t85 260.5q0 154 -78 263t-229 109q-139 0 -221.5 -97t-82.5 -253zM266 1261.5q0 36.5 30 65.5t66 29 q35 0 64 -29t29 -65.5t-29 -65.5t-64 -29q-37 0 -66.5 29t-29.5 65.5zM610 1261.5q0 36.5 30 65.5t65 29q37 0 65.5 -29t28.5 -65.5t-29 -65.5t-65 -29q-35 0 -65 29t-30 65.5z" />
-<glyph unicode="&#xf7;" horiz-adv-x="1064" d="M74 451v120h917v-120h-917zM416 117q0 47 34.5 80.5t82 33.5t82 -33.5t34.5 -80.5q0 -49 -34.5 -83t-82 -34t-82 34t-34.5 83zM416 907q0 47 34.5 81t82 34t82 -34t34.5 -81q0 -49 -34.5 -82.5t-82 -33.5t-82 33.5t-34.5 82.5z" />
-<glyph unicode="&#xf8;" d="M92 -61l131 176q-125 141 -125 340q0 186 120 336.5t321 150.5q137 0 245 -76l84 113h121l-133 -178q119 -137 119 -324q0 -119 -49 -230.5t-153.5 -191.5t-242.5 -80q-133 0 -233 72l-82 -108h-123zM231 473q0 -152 70 -254l410 549q-74 53 -176 53q-139 0 -221.5 -94 t-82.5 -254zM371 145q70 -49 166 -49q139 0 222 98.5t83 256.5q0 143 -64 243z" />
-<glyph unicode="&#xf9;" horiz-adv-x="1056" d="M154 250v668h125v-650q0 -180 143 -180q145 0 340 188v642h125v-633q0 -49 10 -121t21 -119l10 -47l-125 -10q-23 100 -31 166q-178 -178 -371 -179q-247 1 -247 275zM242 1425h153l207 -342l-84 -49z" />
-<glyph unicode="&#xfa;" horiz-adv-x="1056" d="M154 250v668h125v-650q0 -180 143 -180q145 0 340 188v642h125v-633q0 -49 10 -121t21 -119l10 -47l-125 -10q-23 100 -31 166q-178 -178 -371 -179q-247 1 -247 275zM446 1083l205 342h156l-277 -391z" />
-<glyph unicode="&#xfb;" horiz-adv-x="1056" d="M154 250v668h125v-650q0 -180 143 -180q145 0 340 188v642h125v-633q0 -49 10 -121t21 -119l10 -47l-125 -10q-23 100 -31 166q-178 -178 -371 -179q-247 1 -247 275zM250 1081l227 344h94l228 -344l-86 -49l-189 260l-188 -260z" />
-<glyph unicode="&#xfc;" horiz-adv-x="1056" d="M154 250v668h125v-650q0 -180 143 -180q145 0 340 188v642h125v-633q0 -49 10 -121t21 -119l10 -47l-125 -10q-23 100 -31 166q-178 -178 -371 -179q-247 1 -247 275zM256 1261.5q0 36.5 29.5 65.5t66.5 29q35 0 63.5 -29t28.5 -65.5t-28.5 -65.5t-63.5 -29 q-37 0 -66.5 29t-29.5 65.5zM600 1261.5q0 36.5 29.5 65.5t64.5 29q37 0 65.5 -29t28.5 -65.5t-28.5 -65.5t-65.5 -29q-35 0 -64.5 29t-29.5 65.5z" />
-<glyph unicode="&#xfd;" horiz-adv-x="921" d="M41 918h137l289 -672l278 672h138l-422 -988q-80 -188 -161 -293.5t-208 -121.5l-41 110q94 18 158.5 93t122.5 206l69 158zM395 1083l205 342h156l-277 -391z" />
-<glyph unicode="&#xfe;" horiz-adv-x="1067" d="M166 -473v1909l125 24v-665q37 63 110.5 105t173.5 42q178 0 285 -131t107 -330q0 -213 -130 -359.5t-343 -146.5q-137 0 -203 62v-486zM291 227q0 -131 184 -131q168 0 262 101.5t94 275.5q0 160 -74.5 253t-189.5 93q-70 0 -136 -38t-94 -67.5t-46 -58.5v-428z" />
-<glyph unicode="&#xff;" horiz-adv-x="921" d="M41 918h137l289 -672l278 672h138l-422 -988q-80 -188 -161 -293.5t-208 -121.5l-41 110q94 18 158.5 93t122.5 206l69 158zM205 1261.5q0 36.5 29.5 65.5t66.5 29q35 0 63.5 -29t28.5 -65.5t-28.5 -65.5t-63.5 -29q-37 0 -66.5 29t-29.5 65.5zM549 1261.5 q0 36.5 29.5 65.5t64.5 29q37 0 65.5 -29t28.5 -65.5t-28.5 -65.5t-65.5 -29q-35 0 -64.5 29t-29.5 65.5z" />
-<glyph unicode="&#x152;" horiz-adv-x="2002" d="M111 680q0 188 78.5 346t251.5 261.5t415 103.5q121 0 256 -25h782v-113h-651v-497h516v-113h-516v-530h643v-113h-776q-152 -25 -270 -25q-336 0 -532.5 203t-196.5 502zM256 694q0 -104 33 -205.5t100.5 -192.5t187 -147.5t275.5 -56.5q131 0 258 19v1134 q-117 29 -270 29q-190 0 -326.5 -87t-197 -215t-60.5 -278z" />
-<glyph unicode="&#x153;" horiz-adv-x="1736" d="M98 453q0 199 116 344t325 145q125 0 224 -58.5t155 -154.5q57 100 148 156.5t208 56.5q162 0 262 -105.5t100 -289.5l-84 -25l-579 -76q8 -164 96 -258t227 -94q156 0 281 107l6 6l53 -94l-15 -16q-9 -9 -44 -32.5t-73 -42t-97 -33t-121 -14.5q-129 0 -229.5 59.5 t-153.5 158.5q-127 -217 -373 -218q-197 0 -314.5 142.5t-117.5 335.5zM231 465q0 -160 85 -266.5t227 -106.5q135 0 217 101.5t82 261.5q0 154 -77 262t-226 108q-141 0 -224.5 -102t-83.5 -258zM979 559l516 68q0 8 -3 21.5t-18.5 49t-38 62t-67.5 48t-104 21.5 q-115 0 -190 -75.5t-95 -194.5z" />
-<glyph unicode="&#x178;" horiz-adv-x="1153" d="M23 1366h159l398 -635l401 635h149l-485 -762v-604h-135v602zM272 1624q0 35 29 63.5t66 28.5q35 0 63.5 -28.5t28.5 -63.5q0 -37 -29 -65.5t-63 -28.5q-37 0 -66 27.5t-29 66.5zM727 1624q0 35 28.5 63.5t63.5 28.5q37 0 65.5 -28.5t28.5 -63.5q0 -39 -28.5 -66.5 t-65.5 -27.5q-35 0 -63.5 28.5t-28.5 65.5z" />
-<glyph unicode="&#x2c6;" horiz-adv-x="1028" d="M240 1081l227 344h94l227 -344l-86 -49l-188 260l-188 -260z" />
-<glyph unicode="&#x2dc;" horiz-adv-x="1028" d="M227 1135q0 10 1 25.5t9.5 56t23.5 71.5t49 56.5t81 25.5t85 -24.5t57.5 -54t44 -54.5t49.5 -25q66 10 71 146h95q0 -10 -1 -26.5t-9.5 -58.5t-25 -75t-51 -59.5t-81.5 -26.5q-59 0 -101.5 40t-72 80t-60.5 40t-48 -34t-19 -69l-2 -34h-95z" />
-<glyph unicode="&#x2000;" horiz-adv-x="892" />
-<glyph unicode="&#x2001;" horiz-adv-x="1784" />
-<glyph unicode="&#x2002;" horiz-adv-x="892" />
-<glyph unicode="&#x2003;" horiz-adv-x="1784" />
-<glyph unicode="&#x2004;" horiz-adv-x="594" />
-<glyph unicode="&#x2005;" horiz-adv-x="446" />
-<glyph unicode="&#x2006;" horiz-adv-x="297" />
-<glyph unicode="&#x2007;" horiz-adv-x="297" />
-<glyph unicode="&#x2008;" horiz-adv-x="223" />
-<glyph unicode="&#x2009;" horiz-adv-x="356" />
-<glyph unicode="&#x200a;" horiz-adv-x="99" />
-<glyph unicode="&#x2010;" horiz-adv-x="669" d="M117 438v142h434v-142h-434z" />
-<glyph unicode="&#x2011;" horiz-adv-x="669" d="M117 438v142h434v-142h-434z" />
-<glyph unicode="&#x2012;" horiz-adv-x="669" d="M117 438v142h434v-142h-434z" />
-<glyph unicode="&#x2013;" horiz-adv-x="1075" d="M117 457v121h839v-121h-839z" />
-<glyph unicode="&#x2014;" horiz-adv-x="1873" d="M117 457v121h1638v-121h-1638z" />
-<glyph unicode="&#x2018;" horiz-adv-x="421" d="M106 1204q0 84 45.5 165t120.5 138l68 -65q-92 -74 -92 -170q0 -104 94 -203l-137 -82q-99 82 -99 217z" />
-<glyph unicode="&#x2019;" horiz-adv-x="417" d="M88 1425l137 82q98 -84 99 -215q0 -84 -45.5 -167t-120.5 -138l-68 66q92 74 92 170q0 106 -94 202z" />
-<glyph unicode="&#x201a;" horiz-adv-x="485" d="M109 137l153 84q104 -90 105 -217q0 -84 -49.5 -166t-124.5 -139l-66 68q98 80 98 167q1 80 -116 203z" />
-<glyph unicode="&#x201c;" horiz-adv-x="733" d="M106 1200q0 182 166 307l68 -65q-92 -76 -92 -176q0 -98 94 -197l-137 -82q-99 82 -99 213zM418 1200q0 182 166 307l65 -65q-90 -72 -90 -178q0 -94 92 -195l-135 -82q-98 82 -98 213z" />
-<glyph unicode="&#x201d;" horiz-adv-x="727" d="M88 1425l137 82q98 -84 99 -215q0 -84 -45.5 -167t-120.5 -138l-68 66q92 74 92 170q0 106 -94 202zM399 1425l136 82q98 -82 98 -215q0 -84 -45 -167t-121 -138l-66 66q90 72 91 170q-1 106 -93 202z" />
-<glyph unicode="&#x201e;" horiz-adv-x="794" d="M109 137l153 84q104 -90 105 -217q0 -84 -49.5 -166t-124.5 -139l-66 68q98 80 98 167q1 80 -116 203zM418 137l153 84q106 -90 107 -217q0 -84 -49 -166t-125 -139l-68 68q100 78 101 167q0 80 -119 203z" />
-<glyph unicode="&#x2022;" horiz-adv-x="757" d="M106 524.5q0 114.5 79 193.5t194 79t193.5 -79t78.5 -193.5t-78.5 -193.5t-193.5 -79t-194 79t-79 193.5z" />
-<glyph unicode="&#x2026;" horiz-adv-x="1570" d="M127 86q0 45 33 78t80 33q45 0 76.5 -33t31.5 -78t-31.5 -78t-76.5 -33q-47 0 -80 33t-33 78zM674 86q0 45 32.5 78t77.5 33q47 0 79 -33t32 -78t-32 -78t-79 -33q-45 0 -77.5 33t-32.5 78zM1221 86q0 45 32.5 78t77.5 33t78 -33t33 -78t-33 -78t-78 -33t-77.5 33 t-32.5 78z" />
-<glyph unicode="&#x202f;" horiz-adv-x="356" />
-<glyph unicode="&#x2039;" horiz-adv-x="659" d="M55 510v8q35 27 281 295l123 133l98 -26l-313 -406l313 -405l-98 -27l-170 182l-112 121l-61 66l-38 38q-11 11 -23 21z" />
-<glyph unicode="&#x203a;" horiz-adv-x="661" d="M104 109l316 405l-316 406l101 26q362 -395 403 -428v-8q-10 -8 -21.5 -18.5l-24.5 -23.5t-43 -46l-64 -71l-104 -111l-146 -158z" />
-<glyph unicode="&#x205f;" horiz-adv-x="446" />
-<glyph unicode="&#x20ac;" horiz-adv-x="1138" d="M90 379v96h109q-4 27 -4 84q0 51 2 76h-103v98h119q43 190 174 305t332 115q180 -2 309 -80l-35 -127q-14 10 -38.5 24.5t-100.5 39t-149 24.5q-145 0 -234.5 -84t-124.5 -217h586l-29 -98h-573q-2 -23 -2 -64q0 -51 6 -96h522l-29 -96h-471q41 -131 134.5 -208 t224.5 -77q70 0 136.5 18.5t98.5 39.5l33 18l49 -104q-14 -10 -38.5 -25.5t-107.5 -40.5t-173 -25q-186 0 -318.5 110t-179.5 294h-125z" />
-<glyph unicode="&#x2122;" horiz-adv-x="1333" d="M78 1284v82h450v-82h-178v-463h-94v463h-178zM621 821l20 545h141l131 -379l131 379h138l20 -545h-90l-16 432l-154 -432h-63l-152 430l-12 -430h-94z" />
-<glyph unicode="&#xe000;" horiz-adv-x="920" d="M0 920h920v-920h-920v920z" />
-<glyph unicode="&#xfb01;" horiz-adv-x="1048" d="M61 809v63l146 58v84q0 223 101.5 347t275.5 124q72 0 140.5 -19.5t100.5 -38.5l33 -18l-67 -109q-102 66 -211 66q-104 0 -176 -85t-72 -261v-102h551v-918h-125v819h-426v-819h-125v809h-146z" />
-<glyph unicode="&#xfb02;" horiz-adv-x="1077" d="M61 809v63l146 58v84q0 223 101.5 347t275.5 124q119 0 217 -47l110 22v-1460h-125v1303q-115 63 -206 63q-104 0 -176 -85t-72 -261v-102h264v-109h-264v-809h-125v809h-146z" />
-<glyph unicode="&#xfb03;" horiz-adv-x="1628" d="M61 809v63l146 58v53q0 215 105.5 333t289.5 118q139 0 270 -80q98 131 273 131q66 0 128 -19.5t91 -38.5l29 -18l-68 -109q-92 66 -186 66q-96 0 -161 -79t-65 -247v-122h551v-918h-127v819h-424v-819h-127v819h-454v-819h-125v809h-146zM332 918h454v116q0 121 31 209 q-121 72 -221 72q-115 0 -189.5 -79t-74.5 -249v-69z" />
-<glyph unicode="&#xfb04;" horiz-adv-x="1656" d="M61 809v63l146 58v53q0 215 105.5 333t289.5 118q145 0 279 -86q104 137 290 137q109 0 218 -45l104 20v-1460h-127v1309q-109 57 -201 57q-109 0 -180.5 -88t-71.5 -266v-94h265v-109h-265v-809h-127v819h-454v-819h-125v809h-146zM332 918h454v90q0 133 37 231 q-123 76 -227 76q-115 0 -189.5 -79t-74.5 -249v-69z" />
-</font>
-</defs></svg> 
\ No newline at end of file
diff --git a/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansLight-webfont.ttf b/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansLight-webfont.ttf
deleted file mode 100644
index 5eacf6d088d7d4420657c3d251df206908e89535..0000000000000000000000000000000000000000
Binary files a/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansLight-webfont.ttf and /dev/null differ
diff --git a/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansLight-webfont.woff b/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansLight-webfont.woff
deleted file mode 100644
index 08c76f87126d89b7b8c6859a833329998d591970..0000000000000000000000000000000000000000
Binary files a/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansLight-webfont.woff and /dev/null differ
diff --git a/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansRegular-webfont.eot b/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansRegular-webfont.eot
deleted file mode 100644
index db87f6c488d72297e573d5bfac2ebe17e637cca9..0000000000000000000000000000000000000000
Binary files a/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansRegular-webfont.eot and /dev/null differ
diff --git a/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansRegular-webfont.svg b/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansRegular-webfont.svg
deleted file mode 100644
index 6fd374788dfd55d86182cf5fe95aa3e3005d6218..0000000000000000000000000000000000000000
--- a/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansRegular-webfont.svg
+++ /dev/null
@@ -1,244 +0,0 @@
-<?xml version="1.0" standalone="no"?>
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
-<svg xmlns="http://www.w3.org/2000/svg">
-<metadata>
-This is a custom SVG webfont generated by Fontspring.
-</metadata>
-<defs>
-<font id="webfontnehNrF5g" horiz-adv-x="1064" >
-<font-face units-per-em="2048" ascent="1536" descent="-512" />
-<missing-glyph horiz-adv-x="491" />
-<glyph unicode=" "  horiz-adv-x="491" />
-<glyph unicode="&#x09;" horiz-adv-x="491" />
-<glyph unicode="&#xa0;" horiz-adv-x="491" />
-<glyph unicode="!" horiz-adv-x="555" d="M156 98.5q0 51.5 35.5 87t87 35.5t87 -35.5t35.5 -87t-35.5 -87.5t-87 -36t-87 36t-35.5 87.5zM182 1391h191l-27 -990h-141z" />
-<glyph unicode="&#x22;" horiz-adv-x="712" d="M131 883v483h152v-76l-47 -407h-105zM451 883v483h151v-76l-47 -407h-104z" />
-<glyph unicode="#" horiz-adv-x="1325" d="M74 256l20 113h246l59 290h-247l20 113h252l84 412h119l-84 -412h311l84 412h119l-84 -412h276l-20 -113h-281l-59 -290h282l-20 -113h-285l-88 -438h-121l91 438h-312l-88 -438h-121l90 438h-243zM459 369h311l59 290h-311z" />
-<glyph unicode="$" horiz-adv-x="946" d="M82 86l37 145l39 -26q25 -16 105.5 -46t164.5 -34l10 387q-72 27 -119 49.5t-102 61.5t-84 95t-29 128q0 121 87.5 204t263.5 95l6 178h90l-4 -176q174 -6 284 -62l-47 -137q-102 49 -241 60l-11 -367q150 -55 238 -135t88 -209t-91 -210t-253 -95l-4 -174h-90l4 170 q-96 2 -182 26.5t-123 46.5zM266 856q0 -70 44 -110.5t132 -73.5l11 336q-187 -13 -187 -152zM518 127q178 23 178 164q0 70 -43 111.5t-125 74.5z" />
-<glyph unicode="%" horiz-adv-x="1497" d="M80 1038q0 129 89 218.5t220 89.5t220 -89.5t89 -218.5t-89 -218t-220 -89t-220 89t-89 218zM195 1038q0 -80 56 -140t138 -60t138.5 60t56.5 140t-56.5 140.5t-140.5 60.5q-80 0 -136 -60.5t-56 -140.5zM215 0l956 1376l86 -59l-917 -1317h-125zM805 283q0 129 89 218 t220 89t220 -89t89 -218t-89 -218.5t-220 -89.5t-220 89.5t-89 218.5zM920 282.5q0 -79.5 56 -140t138 -60.5t138.5 60.5t56.5 140t-56.5 140t-140.5 60.5q-80 0 -136 -60.5t-56 -140z" />
-<glyph unicode="&#x26;" horiz-adv-x="1394" d="M88 319q0 127 79 219.5t220 184.5q-119 211 -119 352q0 121 84 218.5t248 97.5q141 0 221 -76t80 -199q0 -127 -81 -219t-230 -192q74 -111 145 -197q92 -113 170 -189q172 229 199 603h151q-12 -162 -74.5 -354.5t-174.5 -338.5q186 -160 335 -196l-65 -119 q-168 27 -379 201q-164 -139 -375 -140q-178 0 -306 90t-128 254zM246 332q0 -104 85 -160.5t201 -56.5q143 0 263 90q-90 84 -193 211q-70 82 -149 198q-207 -143 -207 -282zM442 1079q0 -109 84 -266q104 70 160.5 135.5t56.5 145.5q0 66 -38.5 111.5t-108.5 45.5 q-74 0 -114 -50t-40 -122z" />
-<glyph unicode="'" horiz-adv-x="393" d="M131 883v483h152v-76l-47 -407h-105z" />
-<glyph unicode="(" horiz-adv-x="585" d="M109 553q0 432 231 772q41 57 72 90l127 -37l-32 -39q-19 -25 -69.5 -108.5t-88.5 -173.5t-69.5 -227.5t-31.5 -276.5q0 -434 229 -786q39 -59 68 -93l-123 -43l-34 41q-22 27 -76 117t-95 189.5t-74.5 256t-33.5 318.5z" />
-<glyph unicode=")" horiz-adv-x="585" d="M41 -326q12 14 31.5 40t71 113t91 182t71.5 243.5t32 300.5q0 399 -227 741l-64 84l127 37q12 -12 32.5 -36.5t73 -109.5t92.5 -177.5t72.5 -239.5t32.5 -299q0 -459 -237 -821q-43 -66 -76 -101z" />
-<glyph unicode="*" horiz-adv-x="991" d="M92 854l293 109l31 -54l-242 -198zM92 1128l82 144l242 -199l-31 -53zM414 573l51 308h61l52 -308h-164zM414 1409h164l-52 -307h-61zM575 909l31 54l293 -109l-82 -143zM575 1073l242 199l82 -144l-293 -108z" />
-<glyph unicode="+" d="M63 446v134h402v419h141v-419h395v-134h-395v-446h-141v446h-402z" />
-<glyph unicode="," horiz-adv-x="471" d="M76 -281q53 47 71.5 66.5t38 59.5t19.5 89q0 104 -96 240l167 55q78 -92 78 -221q0 -205 -207 -362z" />
-<glyph unicode="-" horiz-adv-x="692" d="M115 438v148h463v-148h-463z" />
-<glyph unicode="." horiz-adv-x="487" d="M121 98.5q0 51.5 36 87t87 35.5t87 -35.5t36 -87t-36 -87.5t-87 -36t-87 36t-36 87.5z" />
-<glyph unicode="/" horiz-adv-x="937" d="M47 -401l682 1767h141l-680 -1767h-143z" />
-<glyph unicode="0" horiz-adv-x="1124" d="M102 467q0 213 123 366.5t346 153.5q217 0 334 -140t117 -339q0 -137 -46 -254t-156.5 -198t-266.5 -81q-209 0 -330 147.5t-121 344.5zM262 485q0 -150 81 -260t218 -110q147 0 224 109.5t77 264.5q0 145 -77.5 252t-221.5 107q-139 0 -220 -109t-81 -254z" />
-<glyph unicode="1" horiz-adv-x="741" d="M104 0v137h215v699h-200v127h360v-826h201v-137h-576z" />
-<glyph unicode="2" horiz-adv-x="909" d="M92 104l53 39q33 25 116 97.5t147.5 141.5t117 156t52.5 154q0 70 -48.5 113t-123.5 43q-55 0 -116 -23.5t-93 -46.5l-31 -24l-70 104q16 14 47 35.5t119 57.5t170 36q135 0 224 -79t89 -195q0 -78 -35.5 -158t-106.5 -160t-128 -133t-143 -125h499v-137h-722z" />
-<glyph unicode="3" horiz-adv-x="815" d="M41 858q16 14 47 35.5t119 57.5t172 36q133 0 221 -75.5t88 -194.5q0 -106 -72.5 -195.5t-175.5 -148.5q135 -29 209 -114t74 -208q0 -197 -167 -319.5t-429 -122.5q-37 0 -55 2l-15 127q20 -2 62 -2q186 0 311 81t125 222q0 121 -91 175t-224 54h-58v131 q119 12 228.5 105.5t109.5 195.5q0 68 -45 108t-117 40q-127 -2 -247 -94z" />
-<glyph unicode="4" d="M57 53v109l609 825h135v-803h194v-131h-194v-448h-160v448h-584zM231 184h410v555z" />
-<glyph unicode="5" horiz-adv-x="817" d="M63 -262q20 -2 64 -2q182 0 308 81t126 230q0 74 -29.5 132.5t-71.5 93t-109.5 60t-123 37t-129.5 21.5v572h580v-138h-424v-319q475 -96 475 -451q0 -205 -166 -325.5t-426 -120.5q-39 0 -59 2z" />
-<glyph unicode="6" horiz-adv-x="1040" d="M98 567q0 156 46 298.5t133.5 258t229.5 187t322 80.5l13 -131q-238 -14 -377 -149.5t-182 -344.5q90 113 270 113q190 0 297.5 -126t107.5 -309q0 -188 -112.5 -328.5t-306.5 -140.5q-213 0 -327 170t-114 422zM266 623q0 -240 73 -374t210 -134q111 0 176.5 89 t65.5 222q0 53 -11.5 102.5t-38 99.5t-80 80.5t-129.5 30.5q-155 1 -266 -116z" />
-<glyph unicode="7" horiz-adv-x="929" d="M63 811v152h811v-109q-221 -551 -581 -1257l-156 36q295 539 553 1178h-627z" />
-<glyph unicode="8" horiz-adv-x="1044" d="M100 334q0 119 79 207t222 184q-219 174 -219 354q0 141 104.5 226.5t260.5 85.5q152 0 248 -83t96 -216q0 -106 -63.5 -190.5t-176.5 -164.5q139 -98 216 -188t77 -209q0 -152 -122 -258.5t-306 -106.5q-182 0 -299 106t-117 253zM254 340q0 -98 80 -161.5t184.5 -63.5 t181 59t76.5 156q0 59 -44 118.5t-87 93.5l-135 101q-127 -84 -191.5 -151.5t-64.5 -151.5zM350 1085q0 -74 49.5 -136t141.5 -132q94 68 145 129.5t51 134.5q0 84 -58 127t-136 43q-76 0 -134.5 -42t-58.5 -124z" />
-<glyph unicode="9" horiz-adv-x="1040" d="M102 532q0 184 110 319.5t300 135.5q213 0 326.5 -170t113.5 -422q0 -152 -46 -288t-133 -247.5t-229.5 -180t-322.5 -76.5l-12 131q238 12 377 144t182 327q-90 -111 -268 -111q-186 0 -292 128t-106 310zM270 561q0 -57 10.5 -109.5t36 -104.5t77.5 -83t126 -31 q150 0 264 115q0 225 -72.5 362.5t-209.5 137.5q-104 0 -168 -83t-64 -204z" />
-<glyph unicode=":" horiz-adv-x="555" d="M156 98.5q0 51.5 35.5 87t87 35.5t87 -35.5t35.5 -87t-35.5 -87.5t-87 -36t-87 36t-35.5 87.5zM156 799q0 51 35.5 87t87 36t87 -36t35.5 -87t-35.5 -87t-87 -36t-87 36t-35.5 87z" />
-<glyph unicode=";" horiz-adv-x="546" d="M119 -281q53 47 71.5 66.5t38 59.5t19.5 89q0 104 -96 240l167 55q78 -92 78 -221q0 -205 -207 -362zM150 799q0 51 35.5 87t87 36t87 -36t35.5 -87t-35.5 -87t-87 -36t-87 36t-35.5 87z" />
-<glyph unicode="&#x3c;" d="M63 463v94l873 469l31 -139l-719 -377l719 -397l-31 -138z" />
-<glyph unicode="=" d="M74 252v133h917v-133h-917zM74 641v133h917v-133h-917z" />
-<glyph unicode="&#x3e;" d="M96 113l717 397l-717 377l31 139l872 -469v-94l-872 -488z" />
-<glyph unicode="?" horiz-adv-x="731" d="M94 1284l35 152q20 -6 56 -18.5t127 -52.5t161 -83t127 -110.5t57 -135.5q0 -51 -32.5 -105t-80.5 -105.5t-95.5 -109t-80 -140t-32.5 -175.5h-129q-6 29 -6 70q0 92 42 182t92 147.5t92 117t42 100.5q0 115 -293 235zM156 98.5q0 51.5 35.5 87t87 35.5t87 -35.5 t35.5 -87t-35.5 -87.5t-87 -36t-87 36t-35.5 87.5z" />
-<glyph unicode="@" horiz-adv-x="1701" d="M86 399q0 213 99.5 399.5t288 303.5t421.5 117q311 0 507.5 -191.5t196.5 -480.5q0 -299 -188 -441q-23 -18 -51.5 -32.5t-51 -23.5t-64.5 -21.5t-61.5 -16.5t-77.5 -17t-81 -20q-18 84 -29 152q-35 -63 -105.5 -107.5t-152.5 -44.5q-123 0 -207 107.5t-84 284.5 q0 250 165 402.5t393 152.5l135 -9v-622q0 -45 4 -87t8 -61l2 -18q156 18 231.5 124.5t75.5 274.5q0 250 -152.5 414t-410.5 164q-295 0 -483.5 -209t-188.5 -500q0 -270 162 -448t383 -189l-20 -112q-283 12 -473.5 232t-190.5 523zM614 379q0 -113 45.5 -188.5 t116.5 -75.5q51 0 102.5 37.5t75.5 76.5l25 37v527q-160 0 -262.5 -120t-102.5 -294z" />
-<glyph unicode="A" horiz-adv-x="1267" d="M29 0l524 1376h162l524 -1376h-176l-154 412h-557l-153 -412h-170zM406 553h450l-225 602z" />
-<glyph unicode="B" horiz-adv-x="1202" d="M201 0v1366h356q244 0 353.5 -95t109.5 -233q0 -178 -166 -305q37 -12 73 -32.5t78 -59.5t68.5 -101.5t26.5 -142.5q0 -180 -130 -288.5t-337 -108.5h-432zM369 141h233q160 0 239 65.5t79 178.5q0 115 -79 181.5t-239 66.5h-233v-492zM369 774h317l16.5 10.5t37 29 t47 49t37 69.5t16.5 90q0 203 -314 203h-157v-451z" />
-<glyph unicode="C" horiz-adv-x="1378" d="M102 674q0 305 202 511t532 206q121 0 234.5 -30t166.5 -58l51 -29l-67 -152q-18 14 -51 35t-136.5 54.5t-210.5 33.5q-172 0 -298 -83t-184 -207t-58 -269q0 -238 154.5 -401.5t389.5 -163.5q211 0 394 127l14 10l70 -127q-23 -18 -63 -44t-168 -69t-261 -43 q-309 0 -510 197t-201 502z" />
-<glyph unicode="D" horiz-adv-x="1480" d="M201 0v1366h413q147 0 277.5 -36t241 -111.5t176 -207.5t65.5 -306q0 -336 -229.5 -520.5t-607.5 -184.5h-336zM369 141h147q352 0 515 149.5t163 395.5q0 250 -157.5 394.5t-450.5 144.5h-217v-1084z" />
-<glyph unicode="E" horiz-adv-x="1110" d="M201 0v1366h805v-141h-637v-457h503v-141h-503v-486h635v-141h-803z" />
-<glyph unicode="F" horiz-adv-x="1048" d="M201 0v1366h786v-141h-618v-463h489v-150h-489v-612h-168z" />
-<glyph unicode="G" horiz-adv-x="1429" d="M102 664q0 303 199 515t539 212q121 0 234.5 -26t166.5 -50l53 -27l-67 -151q-18 12 -52 30.5t-138.5 48t-207.5 29.5q-260 0 -404 -167t-144 -400q0 -244 159.5 -400.5t425.5 -156.5l258 35v403h-293v141h461v-661q-252 -63 -452 -64q-313 0 -525.5 188t-212.5 501z" />
-<glyph unicode="H" horiz-adv-x="1544" d="M201 0v1366h168v-598h807v598h167v-1366h-167v627h-807v-627h-168z" />
-<glyph unicode="I" horiz-adv-x="569" d="M201 0v1366h168v-1366h-168z" />
-<glyph unicode="J" horiz-adv-x="571" d="M-35 -229q238 29 238 383v1212h168v-1210q0 -92 -17.5 -174t-54.5 -157t-105.5 -125t-162.5 -65z" />
-<glyph unicode="K" horiz-adv-x="1187" d="M201 0v1366h168v-580h28l547 580h213l-614 -641l639 -725h-221l-564 645h-28v-645h-168z" />
-<glyph unicode="L" horiz-adv-x="1054" d="M201 0v1366h168v-1225h655v-141h-823z" />
-<glyph unicode="M" horiz-adv-x="1767" d="M178 0l49 1366h242l412 -1128l417 1128h242l49 -1366h-164l-43 1161l-438 -1161h-127l-438 1176l-37 -1176h-164z" />
-<glyph unicode="N" horiz-adv-x="1529" d="M201 0v1366h168l796 -1114v1114h164v-1366h-168l-796 1098v-1098h-164z" />
-<glyph unicode="O" horiz-adv-x="1628" d="M102 680q0 184 82 344t250 263.5t389 103.5q313 0 508 -196t195 -486q0 -299 -203 -516.5t-518 -217.5q-307 0 -505 207t-198 498zM283 692q0 -221 144 -396t384 -175q242 0 388.5 173t146.5 398q0 223 -144.5 388t-388.5 165q-242 0 -386 -166t-144 -387z" />
-<glyph unicode="P" horiz-adv-x="1155" d="M201 0v1366h395q248 0 367.5 -112.5t119.5 -290.5q0 -205 -134 -322t-353 -117h-227v-524h-168zM369 666h196q170 0 254 73.5t84 208.5q0 125 -81 201t-257 76h-196v-559z" />
-<glyph unicode="Q" horiz-adv-x="1628" d="M104 680q0 184 82 344t248 263.5t385 103.5q315 0 512 -196t197 -486q0 -248 -146.5 -447t-386.5 -262l69 -87q26 -32 80 -83t102 -80t119 -51.5t148 -22.5l-24 -153h-15q-72 0 -141 17q-76 19 -125 42t-107.5 71t-81 70.5t-66.5 76t-46 55.5l-61 71q-37 45 -123 54 q-276 31 -447.5 229.5t-171.5 470.5zM285 692q0 -104 34.5 -204.5t98 -183.5t166 -133t227.5 -50q240 0 388.5 174t148.5 399q0 219 -143.5 385t-387.5 166q-242 0 -387 -166t-145 -387z" />
-<glyph unicode="R" horiz-adv-x="1216" d="M201 0v1366h358q248 0 368 -106.5t120 -266.5q0 -137 -82 -234t-201 -149l414 -610h-199l-391 575h-219v-575h-168zM369 717h215q109 0 195.5 70.5t86.5 189.5q0 106 -82 177t-256 71h-159v-508z" />
-<glyph unicode="S" horiz-adv-x="1042" d="M98 90l45 158q18 -14 50 -34.5t125.5 -54.5t181.5 -34q117 0 194.5 52t77.5 147q0 86 -66.5 151.5t-162.5 114.5l-192 102q-95 53 -161.5 140.5t-66.5 201.5q0 154 118.5 255.5t325.5 101.5q80 0 167 -15.5t134 -32.5l47 -14l-43 -158q-152 70 -311 70q-119 0 -193.5 -49 t-74.5 -139q0 -86 66.5 -152.5t162.5 -114t191.5 -100.5t162 -141t66.5 -209q0 -172 -127 -266.5t-321 -94.5q-106 0 -205 29t-146 57z" />
-<glyph unicode="T" horiz-adv-x="1212" d="M35 1225v141h1143v-141h-492v-1225h-168v1225h-483z" />
-<glyph unicode="U" horiz-adv-x="1472" d="M182 492v874h168v-842q0 -205 105.5 -304t281.5 -99q174 0 279.5 98t105.5 293v854h168v-846q0 -258 -157.5 -401.5t-397.5 -143.5q-248 0 -400.5 126.5t-152.5 390.5z" />
-<glyph unicode="V" horiz-adv-x="1206" d="M29 1366h178l399 -1128l400 1128h172l-494 -1376h-164z" />
-<glyph unicode="W" horiz-adv-x="1935" d="M51 1366h172l336 -1130l326 1130h172l323 -1130l338 1130h168l-420 -1376h-172l-325 1102l-328 -1102h-172z" />
-<glyph unicode="X" horiz-adv-x="1212" d="M51 0l457 680l-457 686h199l358 -551l361 551h192l-456 -682l456 -684h-198l-359 551l-360 -551h-193z" />
-<glyph unicode="Y" horiz-adv-x="1177" d="M16 1366h199l377 -608l381 608h188l-487 -770v-596h-168v594z" />
-<glyph unicode="Z" horiz-adv-x="1185" d="M74 0v96l794 1129h-747v141h962v-96l-784 -1129h797v-141h-1022z" />
-<glyph unicode="[" horiz-adv-x="587" d="M174 -317v1683h375v-113h-242v-1458h242v-112h-375z" />
-<glyph unicode="\" horiz-adv-x="937" d="M68 1366h141l682 -1767h-143z" />
-<glyph unicode="]" horiz-adv-x="587" d="M39 -205h242v1458h-242v113h375v-1683h-375v112z" />
-<glyph unicode="^" horiz-adv-x="1011" d="M16 512l439 879h102l438 -879h-155l-336 676l-336 -676h-152z" />
-<glyph unicode="_" horiz-adv-x="1097" d="M37 -76h1024v-121h-1024v121z" />
-<glyph unicode="`" horiz-adv-x="1032" d="M328 1432h174l207 -340l-95 -56z" />
-<glyph unicode="a" horiz-adv-x="960" d="M74 207q0 141 143 230t410 124v35q0 45 -1 65.5t-8.5 54.5t-22.5 49t-45 28.5t-75 13.5q-150 -2 -289 -102l-49 129q16 12 49 30.5t132.5 50t201.5 31.5q147 0 206.5 -67.5t59.5 -225.5v-415q0 -104 88 -121l15 -2l-53 -129q-164 18 -199 149q-10 -16 -30.5 -37.5 t-57.5 -52.5t-94.5 -50.5t-122.5 -19.5q-117 0 -187.5 65t-70.5 167zM244 217q0 -102 121 -102q125 0 262 159v170q-199 -33 -291 -86t-92 -141z" />
-<glyph unicode="b" horiz-adv-x="1067" d="M152 16v1418l159 28v-637q94 121 267 121q180 0 288.5 -129t108.5 -325q0 -215 -133 -366t-381 -151q-145 0 -309 41zM311 129q70 -20 158 -20q152 0 245 97t93 275q0 150 -68.5 238t-181.5 88q-135 0 -246 -123v-555z" />
-<glyph unicode="c" horiz-adv-x="933" d="M90 451q0 201 128 348t343 147q88 0 163 -24.5t107 -49.5l31 -26l-71 -125q-10 10 -31 24.5t-83.5 38t-125.5 23.5q-133 0 -213 -100.5t-80 -247.5q0 -145 81 -244.5t218 -99.5q143 4 250 98l55 -119q-12 -12 -35.5 -32.5t-106.5 -53.5t-175 -33q-201 0 -328 135.5 t-127 340.5z" />
-<glyph unicode="d" horiz-adv-x="1091" d="M92 430q0 213 133 364.5t369 151.5q100 0 178 -33v521l160 28v-1177q0 -49 10 -121t21 -119l10 -45l-158 -14q-18 84 -29 147q-98 -158 -299 -158q-176 0 -285.5 130t-109.5 325zM262 440q0 -150 69.5 -237.5t176.5 -87.5q66 0 128 36.5t89 68.5t47 63v397 q-6 131 -176 131q-150 0 -242 -98.5t-92 -272.5z" />
-<glyph unicode="e" horiz-adv-x="997" d="M92 440q0 219 124 362.5t319 143.5q164 0 266 -109.5t102 -301.5l-98 -29l-543 -72q10 -145 91 -232t214 -87q70 0 142.5 28.5t109.5 57.5l37 30l47 -122q-14 -14 -43 -37t-121 -60t-190 -37q-217 0 -337 135t-120 330zM264 557l463 59q0 8 -3 21.5t-15.5 47.5t-33 59.5 t-60.5 47t-91 21.5q-106 0 -174 -71.5t-86 -184.5z" />
-<glyph unicode="f" horiz-adv-x="669" d="M57 793v84l146 55v98q0 217 103.5 339t277.5 122q68 0 132 -19.5t95 -37.5l31 -21l-74 -127q-92 66 -188 66q-94 0 -156 -76t-62 -238v-116h261v-129h-261v-793h-159v793h-146z" />
-<glyph unicode="g" horiz-adv-x="1026" d="M59 -240q0 158 240 281q-154 45 -154 125t142 164q-84 43 -131 120.5t-47 174.5q0 145 111.5 233t268.5 88q53 0 134.5 -19.5t130.5 -19.5h98q27 0 56.5 5.5t45.5 9.5l19 6l14 -144h-117q-35 0 -75 4q70 -76 69 -180q0 -152 -118.5 -235.5t-272.5 -83.5q-39 0 -74 6 q-82 -59 -82 -86t58.5 -46.5t199.5 -49.5q8 -2 13 -2q82 -18 133 -34t108.5 -44.5t86 -73.5t28.5 -104q0 -139 -146.5 -239.5t-344.5 -100.5q-162 0 -278 64t-116 181zM207 -217q0 -76 80 -110.5t178 -34.5q129 0 222 58t93 136q0 61 -61.5 94t-183.5 60q-41 10 -103 20 q-57 -31 -83.5 -47t-66.5 -47t-57.5 -61.5t-17.5 -67.5zM272 614q0 -84 55.5 -143t159.5 -59q94 0 153.5 50t59.5 138q0 86 -57 154.5t-160 68.5q-96 0 -153.5 -59.5t-57.5 -149.5z" />
-<glyph unicode="h" horiz-adv-x="1081" d="M156 0v1434l159 28v-704q176 188 379 188q111 0 176.5 -67.5t65.5 -208.5v-670h-160v625q0 180 -125 180q-127 0 -336 -195v-610h-159z" />
-<glyph unicode="i" horiz-adv-x="471" d="M127 1266q0 45 33 77.5t78 32.5t77.5 -32.5t32.5 -77.5t-32.5 -78t-77.5 -33t-78 33t-33 78zM156 0v922h159v-922h-159z" />
-<glyph unicode="j" horiz-adv-x="471" d="M-66 -352q221 43 222 338v936h159v-906q0 -233 -84 -354t-247 -147zM125 1266q0 45 31.5 77.5t79 32.5t79 -32.5t31.5 -77.5t-31.5 -78t-79 -33t-79 33t-31.5 78z" />
-<glyph unicode="k" horiz-adv-x="966" d="M156 0v1434l159 28v-895h23l364 355h213l-430 -408l469 -514h-215l-399 449h-25v-449h-159z" />
-<glyph unicode="l" horiz-adv-x="471" d="M156 0v1434l159 28v-1462h-159z" />
-<glyph unicode="m" horiz-adv-x="1646" d="M152 0v907l159 29v-178q176 188 371 188q184 0 221 -184q184 184 367 184q104 0 167.5 -67.5t63.5 -208.5v-670h-160v625q0 180 -114 180q-121 0 -314 -180v-625h-159v625q0 180 -115 180q-133 0 -328 -195v-610h-159z" />
-<glyph unicode="n" horiz-adv-x="1079" d="M152 0v907l159 29v-180q184 190 381 190q111 0 176.5 -67.5t65.5 -208.5v-670h-160v625q0 180 -125 180q-135 0 -338 -197v-608h-159z" />
-<glyph unicode="o" horiz-adv-x="1091" d="M90 457q0 121 49 229.5t156.5 184t253.5 75.5q205 0 328.5 -139t123.5 -328q0 -119 -48 -230.5t-157.5 -192.5t-254.5 -81q-205 0 -328 143.5t-123 338.5zM258 475.5q0 -149.5 74 -255t215 -105.5q129 0 208 94t79 244q0 147 -72 250.5t-217 103.5q-131 0 -209 -91 t-78 -240.5z" />
-<glyph unicode="p" horiz-adv-x="1073" d="M152 -475v1382l155 29v-143q37 66 108.5 109.5t174.5 43.5q176 0 283.5 -131t107.5 -328q0 -215 -128 -363.5t-335 -148.5q-133 0 -207 58v-479zM311 231q0 -121 174 -120q150 0 238 97t88 267q0 152 -67.5 240t-174.5 88q-150 0 -258 -158v-414z" />
-<glyph unicode="q" horiz-adv-x="1067" d="M92 430q0 215 133 365.5t381 150.5l309 -41v-1351l-159 -29v573q-84 -123 -267 -123q-180 0 -288.5 129t-108.5 326zM260 440q0 -147 68.5 -234t181.5 -87q131 0 246 121v551q-70 20 -158 20q-152 0 -245 -96.5t-93 -274.5z" />
-<glyph unicode="r" horiz-adv-x="684" d="M152 0v907l159 29v-182q39 70 107.5 131t161.5 61q23 0 43 -4t28 -8l8 -6l-41 -172q-41 16 -77 16q-121 0 -230 -188v-584h-159z" />
-<glyph unicode="s" horiz-adv-x="804" d="M86 57l35 142q117 -90 264 -90q84 0 128 32.5t44 87.5q0 53 -47 94.5t-112.5 71t-132 63.5t-114 93t-47.5 141q0 113 84 183.5t252 70.5q70 0 133.5 -12t94.5 -25l28 -14l-43 -135q-111 53 -225 53q-80 0 -121 -29.5t-41 -78.5q0 -51 47 -90.5t113 -68t132.5 -63 t113.5 -96t47 -145.5q0 -123 -91 -195t-247 -72q-82 0 -155.5 20.5t-106.5 41.5z" />
-<glyph unicode="t" horiz-adv-x="741" d="M66 793v86l131 53v205l159 39v-254h299v-129h-299v-506q0 -172 113 -172q94 0 195 84l38 -129q-12 -10 -35.5 -25.5t-93 -42.5t-137.5 -27q-240 0 -239 269v549h-131z" />
-<glyph unicode="u" d="M143 252v670h160v-625q0 -180 131 -180q139 0 311 172v633h160v-637q0 -49 10.5 -121t20.5 -119l10 -45l-158 -14q-23 102 -30 168q-166 -178 -365 -179q-250 1 -250 277z" />
-<glyph unicode="v" horiz-adv-x="933" d="M37 922h168l244 -723l290 723h166l-389 -932h-151z" />
-<glyph unicode="w" horiz-adv-x="1517" d="M43 922h168l219 -742l264 742h144l221 -742l260 742h166l-357 -932h-155l-219 702l-260 -702h-156z" />
-<glyph unicode="x" horiz-adv-x="933" d="M55 0l318 461l-318 461h191l223 -338l225 338h185l-318 -457l318 -465h-183l-231 346l-234 -346h-176z" />
-<glyph unicode="y" horiz-adv-x="935" d="M33 922h174l268 -652l260 652h168l-411 -992q-74 -178 -167.5 -288.5t-230.5 -126.5l-51 133q180 37 289 282l59 138z" />
-<glyph unicode="z" horiz-adv-x="888" d="M84 96l491 688h-475v138h686v-97l-499 -688h518v-137h-719z" />
-<glyph unicode="{" horiz-adv-x="696" d="M33 481v113q53 2 96 24.5t69.5 52t46 85t29 95.5t14.5 109.5t5 102.5v98v29q0 166 113.5 247t304.5 81v-105q-98 -6 -153.5 -24.5t-83.5 -63.5t-35 -95t-7 -149q0 -457 -219 -540v-4q94 -37 156.5 -171.5t62.5 -392.5q0 -98 7 -148t35 -94t83 -62.5t154 -26.5v-105 q-418 0 -418 328v29v100q0 37 -5 106.5t-14.5 112.5t-29 99.5t-46 88t-69.5 55t-96 25.5z" />
-<glyph unicode="|" horiz-adv-x="477" d="M172 -461v1995h133v-1995h-133z" />
-<glyph unicode="}" horiz-adv-x="696" d="M-14 -358q98 8 153.5 26.5t83 62.5t34.5 94t7 148q0 258 62.5 392.5t156.5 171.5v4q-219 84 -219 540q0 98 -7 148.5t-34.5 95.5t-83 63.5t-153.5 24.5v105q190 0 303.5 -81t113.5 -247v-29v-98q0 -35 5.5 -102.5t14.5 -109.5t28.5 -95.5t46 -84t69.5 -53t97 -24.5v-113 q-53 -2 -96.5 -25.5t-70 -55t-46 -88t-28.5 -99.5t-14.5 -113.5t-5.5 -105.5v-100v-29q0 -328 -417 -328v105z" />
-<glyph unicode="~" horiz-adv-x="1191" d="M131 358q0 317 266 318q80 0 141.5 -31t93.5 -68.5t76 -68.5t91 -31q135 0 135 191h131q0 -317 -266 -318q-80 0 -141.5 31t-93.5 68.5t-76 68.5t-91 31q-135 0 -135 -191h-131z" />
-<glyph unicode="&#xa1;" horiz-adv-x="524" d="M137 823q0 51 36 87t87 36t87 -36t36 -87t-36 -87t-87 -36t-87 36t-36 87zM166 -469l27 989h141l22 -989h-190z" />
-<glyph unicode="&#xa2;" horiz-adv-x="921" d="M86 569q0 162 97.5 286t269.5 146l6 181h90l-4 -178q176 -8 278 -113l6 -8l-92 -113q-76 82 -196 94l-17 -588q139 4 246 99l55 -119q-12 -12 -35.5 -31.5t-102.5 -53.5t-167 -34l-4 -182h-90l4 188q-156 27 -250 146.5t-94 279.5zM254 575q0 -100 47 -179t133 -107 l15 571q-92 -20 -143.5 -99.5t-51.5 -185.5z" />
-<glyph unicode="&#xa3;" horiz-adv-x="1101" d="M82 111q14 4 35.5 14t61.5 57t48 113l23 194h-125v103h137l23 170q49 395 360 395q182 0 295 -113l10 -10l-92 -112q-8 10 -25.5 26.5t-75 43t-118.5 26.5q-84 0 -133 -57.5t-64 -204.5l-16 -164h381l-10 -103h-381q-8 -90 -26.5 -174t-33.5 -122l-14 -39 q184 -66 322 -66q98 0 152 53.5t67 184.5h129q-8 -76 -24.5 -136.5t-50.5 -119t-96.5 -90t-148.5 -31.5q-82 0 -232.5 40t-199.5 40q-61 0 -137 -29z" />
-<glyph unicode="&#xa5;" horiz-adv-x="1138" d="M82 1133h182l305 -496l312 496h170l-303 -478h215v-102h-281l-35 -57v-82h316v-103h-316v-311h-160v311h-294v103h294v80l-38 59h-256v102h192z" />
-<glyph unicode="&#xa6;" horiz-adv-x="507" d="M180 354h148v-733h-148v733zM180 672v733h148v-733h-148z" />
-<glyph unicode="&#xa7;" horiz-adv-x="1001" d="M57 -379l62 105q129 -96 270 -97q125 0 190.5 91.5t65.5 236.5q0 70 -10 121l-113 620q-23 131 -22 205q0 135 53 213l113 -22q-35 -76 -35 -189q0 -53 10 -114l123 -697q12 -70 12 -139q0 -190 -96 -315t-287 -125q-86 0 -170 26.5t-125 52.5zM199 948q0 193 97 318 t286 125q86 0 170 -27t125 -53l41 -27l-62 -104q-129 96 -270 96q-125 0 -191.5 -92t-66.5 -236q0 -59 12 -121l113 -620q20 -119 20 -205q0 -137 -51 -213l-113 23q35 82 35 188q0 53 -10 115l-123 696q-12 69 -12 137z" />
-<glyph unicode="&#xa8;" horiz-adv-x="1032" d="M225 1266q0 43 32 73.5t75 30.5q41 0 72.5 -30.5t31.5 -73.5t-31.5 -74t-72.5 -31q-43 0 -75 31t-32 74zM594 1266q0 43 31.5 73.5t72.5 30.5q43 0 75 -30.5t32 -73.5t-32 -74t-75 -31q-41 0 -72.5 31t-31.5 74z" />
-<glyph unicode="&#xa9;" horiz-adv-x="1593" d="M90 682q0 293 207 500t500 207t499.5 -207t206.5 -500t-206.5 -500t-499.5 -207t-500 207t-207 500zM195 682q0 -254 175 -433t427 -179t427 179t175 433t-175 433t-427 179t-427 -179t-175 -433zM401 676q0 172 111 299t307 127q180 0 285 -113l10 -10l-92 -113l-28 27 q-17 16 -73.5 43t-113.5 27q-113 0 -175.5 -78t-62.5 -193q0 -117 72 -197.5t190 -80.5q129 4 224 98l55 -119q-10 -12 -31.5 -32.5t-97.5 -53.5t-162 -33q-182 0 -300 116t-118 286z" />
-<glyph unicode="&#xaa;" horiz-adv-x="790" d="M96 874q0 205 389 259v22q0 70 -18 99.5t-80 29.5q-49 0 -101.5 -20.5t-80.5 -40.5l-29 -21l-35 111q111 78 283 78q111 0 155 -47.5t44 -157.5v-283q8 -74 73 -80l-41 -106q-131 6 -159 100q-84 -106 -215 -106q-84 0 -134.5 44.5t-50.5 118.5zM242 885q0 -68 71 -68 q76 0 172 113v108q-127 -23 -185 -59.5t-58 -93.5z" />
-<glyph unicode="&#xab;" horiz-adv-x="1046" d="M49 510v8q35 27 285 303l115 125l110 -31l-309 -401l309 -401l-110 -31l-168 182l-111 121l-60 66l-38 38q-11 11 -23 21zM440 510v8q35 27 285 303l115 125l110 -31l-309 -401l309 -401l-110 -31l-168 182l-111 121l-60 66l-38 38q-11 11 -23 21z" />
-<glyph unicode="&#xac;" horiz-adv-x="1177" d="M111 664v133h938v-570h-142v437h-796z" />
-<glyph unicode="&#xad;" horiz-adv-x="692" d="M115 438v148h463v-148h-463z" />
-<glyph unicode="&#xae;" horiz-adv-x="884" d="M88 1087.5q0 145.5 104.5 250t250 104.5t250 -104.5t104.5 -250t-104.5 -250t-250 -104.5t-250 104.5t-104.5 250zM158 1087.5q0 -120.5 83 -207.5t199.5 -87t201.5 87t85 207q0 119 -85 206t-201.5 87t-199.5 -86t-83 -206.5zM311 918v348h123q143 0 144 -105 q0 -68 -68 -100l104 -143h-94l-88 126h-37v-126h-84zM395 1100h45q51 0 52 53q0 55 -66 55h-31v-108z" />
-<glyph unicode="&#xaf;" horiz-adv-x="1011" d="M272 1204v125h467v-125h-467z" />
-<glyph unicode="&#xb0;" horiz-adv-x="679" d="M90 1144.5q0 102.5 73 174.5t177 72t177 -72t73 -174.5t-73 -174t-177 -71.5t-177 71.5t-73 174zM193 1144.5q0 -63.5 43 -107.5t104 -44t104 44t43 107.5t-43 107.5t-104 44t-104 -44t-43 -107.5z" />
-<glyph unicode="&#xb1;" d="M78 641v133h381v369h141v-369h385v-133h-385v-395h-141v395h-381zM80 0v133h907v-133h-907z" />
-<glyph unicode="&#xb2;" horiz-adv-x="698" d="M57 836q213 207 271 274q113 139 112 248q0 63 -37.5 98t-97.5 35q-39 0 -79 -18.5t-62 -36.5l-21 -19l-71 82q10 12 30.5 30.5t90 50.5t143.5 32q117 0 182.5 -66.5t65.5 -171.5q0 -96 -65.5 -201.5t-248.5 -289.5h369v-113h-571z" />
-<glyph unicode="&#xb3;" horiz-adv-x="661" d="M49 819l55 99q78 -45 172 -46q74 0 117 34t43 89q0 63 -58.5 97t-144.5 34h-47v111q80 6 146.5 53t66.5 117q0 88 -102 88q-39 0 -80 -12.5t-61 -24.5l-21 -14l-53 88q96 80 231 80q100 0 166 -52.5t66 -134.5q0 -131 -166 -213q94 -20 148.5 -77.5t54.5 -135.5 q0 -102 -88 -172.5t-220 -70.5q-59 0 -115.5 15t-82.5 32z" />
-<glyph unicode="&#xb4;" horiz-adv-x="1032" d="M324 1092l206 340h175l-287 -396z" />
-<glyph unicode="&#xb5;" horiz-adv-x="1148" d="M145 -442q20 199 21 362v1002h160v-625q0 -180 131 -180q139 0 311 172v633h160v-684q0 -82 22.5 -102.5t110.5 -20.5v-129q-61 -10 -98 -11q-172 0 -191 170q-164 -170 -356 -170q-61 0 -111 19q2 -88 12.5 -244t10.5 -192h-183z" />
-<glyph unicode="&#x3bc;" horiz-adv-x="1148" d="M145 -442q20 199 21 362v1002h160v-625q0 -180 131 -180q139 0 311 172v633h160v-684q0 -82 22.5 -102.5t110.5 -20.5v-129q-61 -10 -98 -11q-172 0 -191 170q-164 -170 -356 -170q-61 0 -111 19q2 -88 12.5 -244t10.5 -192h-183z" />
-<glyph unicode="&#xb6;" horiz-adv-x="1353" d="M70 864q0 203 154.5 352.5t430.5 149.5h596v-117h-151v-1249h-127v1249h-154v-1290q0 -444 -358 -444l-31 129q133 0 193.5 73.5t60.5 241.5v408h-18q-291 0 -443.5 145t-152.5 352z" />
-<glyph unicode="&#xb7;" horiz-adv-x="512" d="M133 520q0 51 36 87t87 36t87 -36t36 -87t-36 -87t-87 -36t-87 36t-36 87z" />
-<glyph unicode="&#xb8;" horiz-adv-x="1032" d="M336 -422l43 100q66 -57 143 -57q45 0 75 19.5t30 48.5q0 23 -26 41t-57.5 30.5t-57 36t-25.5 53.5q0 25 37 109l18 41h102l-16 -35q-23 -49 -22 -67q0 -23 27.5 -40.5t59 -30.5t59.5 -45t28 -77q0 -76 -65.5 -133t-162.5 -57q-49 0 -97 15t-71 32z" />
-<glyph unicode="&#xb9;" horiz-adv-x="575" d="M68 770v104h172v619h-158v104h297v-723h162v-104h-473z" />
-<glyph unicode="&#xba;" horiz-adv-x="845" d="M90 1049q0 133 90 237.5t246 104.5q150 0 240 -97.5t90 -230.5t-89 -242.5t-247 -109.5q-150 0 -240 100.5t-90 237.5zM233 1061q0 -100 48.5 -172t142.5 -72q86 0 137 63.5t51 163.5q0 98 -48 169t-142 71q-86 0 -137.5 -61.5t-51.5 -161.5z" />
-<glyph unicode="&#xbb;" horiz-adv-x="1048" d="M98 113l310 401l-310 401l111 31q362 -397 389 -420q4 -2 10 -8v-8q-12 -10 -22 -21l-38 -38l-61 -66l-110 -121l-168 -182zM489 113l310 401l-310 401l111 31q362 -397 389 -420q4 -2 10 -8v-8q-12 -10 -22 -21l-38 -38l-60 -66l-111 -121l-168 -182z" />
-<glyph unicode="&#xbc;" horiz-adv-x="1671" d="M96 549v104h172v619h-157v104h297v-723h161v-104h-473zM354 0l813 1407l117 -43l-784 -1364h-146zM952 295l398 539h125v-510h122v-109h-122v-215h-136v215h-376zM1098 324h241v325z" />
-<glyph unicode="&#xbd;" horiz-adv-x="1792" d="M94 549v104h172v619h-157v104h297v-723h161v-104h-473zM354 0l813 1407l117 -43l-784 -1364h-146zM1137 66q213 207 270 274q113 139 113 248q0 63 -38 98t-98 35q-39 0 -78.5 -18.5t-60.5 -36.5l-22 -19l-72 82q10 12 30.5 30.5t90 50.5t143.5 32q117 0 182.5 -66.5 t65.5 -171.5q0 -96 -65.5 -201.5t-247.5 -289.5h368v-113h-571z" />
-<glyph unicode="&#xbe;" horiz-adv-x="1648" d="M82 598l55 98q78 -45 172 -45q74 0 117 34t43 89q0 63 -58.5 97t-144.5 34h-47v111q80 6 146.5 53t66.5 117q0 88 -102 88q-39 0 -80 -12.5t-62 -24.5l-20 -14l-53 88q96 80 231 80q100 0 166 -52.5t66 -134.5q0 -131 -166 -213q94 -20 148 -77.5t54 -135.5 q0 -102 -88 -172.5t-219 -70.5q-59 0 -115.5 15t-82.5 32zM332 0l813 1407l117 -43l-785 -1364h-145zM930 295l397 539h125v-510h123v-109h-123v-215h-135v215h-377zM1075 324h242v325z" />
-<glyph unicode="&#xbf;" horiz-adv-x="716" d="M72 -94q0 49 32.5 101t79.5 103l96 106q48 56 80.5 135t32.5 169h129q6 -29 6 -69q0 -90 -42 -176.5t-92 -141.5t-92 -112.5t-42 -96.5q0 -115 293 -235l82 -31l-35 -152q-20 6 -56 18.5t-127 52.5t-161 83t-127 110.5t-57 135.5zM328 823q0 51 35.5 87t87 36t87 -36 t35.5 -87t-35.5 -87t-87 -36t-87 36t-35.5 87z" />
-<glyph unicode="&#xc0;" horiz-adv-x="1267" d="M29 0l524 1376h162l524 -1376h-176l-154 412h-557l-153 -412h-170zM356 1616l64 147l395 -194l-39 -99zM406 553h450l-225 602z" />
-<glyph unicode="&#xc1;" horiz-adv-x="1267" d="M29 0l524 1376h162l524 -1376h-176l-154 412h-557l-153 -412h-170zM406 553h450l-225 602zM446 1569l396 194l63 -147l-420 -146z" />
-<glyph unicode="&#xc2;" horiz-adv-x="1267" d="M29 0l524 1376h162l524 -1376h-176l-154 412h-557l-153 -412h-170zM303 1548l258 236h141l256 -236l-92 -78l-233 203l-238 -203zM406 553h450l-225 602z" />
-<glyph unicode="&#xc3;" horiz-adv-x="1267" d="M29 0l524 1376h162l524 -1376h-176l-154 412h-557l-153 -412h-170zM268 1501v12q0 29 6.5 60t23.5 75t63.5 71.5t113.5 27.5q70 0 123 -34t95 -67.5t83 -33.5q90 0 90 119v16h127v-14q0 -29 -6 -61t-24.5 -77t-65.5 -73.5t-116.5 -28.5t-122 34t-92.5 67.5t-81 33.5 q-90 0 -90 -115v-12h-127zM406 553h450l-225 602z" />
-<glyph unicode="&#xc4;" horiz-adv-x="1267" d="M29 0l524 1376h162l524 -1376h-176l-154 412h-557l-153 -412h-170zM291 1624q0 43 31.5 74t74.5 31q41 0 73 -31t32 -74t-32 -73.5t-73 -30.5q-43 0 -74.5 30.5t-31.5 73.5zM406 553h450l-225 602zM762 1624q0 43 31.5 74t72.5 31q43 0 75 -31t32 -74t-32 -73.5 t-75 -30.5q-41 0 -72.5 30.5t-31.5 73.5z" />
-<glyph unicode="&#xc5;" horiz-adv-x="1267" d="M29 0l524 1376h162l524 -1376h-176l-154 412h-557l-153 -412h-170zM406 553h450l-225 602zM438 1622q0 66 50.5 114t142.5 48t142 -48t50 -114q0 -68 -50 -117t-142 -49t-142.5 49t-50.5 117zM535 1620q0 -39 24.5 -66.5t71.5 -27.5q45 0 71.5 28.5t26.5 65.5 q0 39 -25.5 66.5t-72.5 27.5q-49 0 -72.5 -27.5t-23.5 -66.5z" />
-<glyph unicode="&#xc6;" horiz-adv-x="1767" d="M-4 0l762 1366h905v-141h-637v-457h504v-141h-504v-486h635v-141h-803v457h-430l-252 -457h-180zM506 598h352v637z" />
-<glyph unicode="&#xc7;" horiz-adv-x="1384" d="M104 674q0 305 202 511t532 206q121 0 234.5 -30t164.5 -58l53 -29l-67 -152q-18 14 -51 35t-136.5 54.5t-210.5 33.5q-172 0 -298 -83t-184 -207t-58 -269q0 -238 154.5 -401.5t389.5 -163.5q211 0 394 127l14 10l70 -127q-23 -18 -63 -44t-168 -69t-261 -43h-4l-4 -10 q-23 -49 -23 -67q0 -23 28 -40.5t59.5 -30.5t59 -45t27.5 -77q0 -76 -65.5 -133t-161.5 -57q-49 0 -97 15t-71 32l-22 16l43 100q66 -57 143 -57q45 0 74.5 19.5t29.5 48.5q0 23 -25.5 41t-57 30.5t-57 36t-25.5 53.5q0 25 36 109l11 23q-270 33 -439.5 223t-169.5 469z" />
-<glyph unicode="&#xc8;" horiz-adv-x="1110" d="M201 0v1366h805v-141h-637v-457h503v-141h-503v-486h635v-141h-803zM340 1616l63 147l396 -194l-39 -99z" />
-<glyph unicode="&#xc9;" horiz-adv-x="1110" d="M201 0v1366h805v-141h-637v-457h503v-141h-503v-486h635v-141h-803zM430 1569l395 194l64 -147l-420 -146z" />
-<glyph unicode="&#xca;" horiz-adv-x="1110" d="M201 0v1366h805v-141h-637v-457h503v-141h-503v-486h635v-141h-803zM287 1548l258 236h141l256 -236l-92 -78l-234 203l-237 -203z" />
-<glyph unicode="&#xcb;" horiz-adv-x="1110" d="M201 0v1366h805v-141h-637v-457h503v-141h-503v-486h635v-141h-803zM274 1624q0 43 32 74t75 31q41 0 72.5 -31t31.5 -74t-31.5 -73.5t-72.5 -30.5q-43 0 -75 30.5t-32 73.5zM745 1624q0 43 32 74t73 31q43 0 74.5 -31t31.5 -74t-31.5 -73.5t-74.5 -30.5q-41 0 -73 30.5 t-32 73.5z" />
-<glyph unicode="&#xcc;" horiz-adv-x="569" d="M10 1616l64 147l395 -194l-39 -99zM201 0v1366h168v-1366h-168z" />
-<glyph unicode="&#xcd;" horiz-adv-x="569" d="M100 1569l396 194l63 -147l-420 -146zM201 0v1366h168v-1366h-168z" />
-<glyph unicode="&#xce;" horiz-adv-x="569" d="M-43 1548l258 236h141l256 -236l-92 -78l-233 203l-238 -203zM201 0v1366h168v-1366h-168z" />
-<glyph unicode="&#xcf;" horiz-adv-x="569" d="M-2 1624q0 43 31.5 74t74.5 31q41 0 73 -31t32 -74t-32 -73.5t-73 -30.5q-43 0 -74.5 30.5t-31.5 73.5zM201 0v1366h168v-1366h-168zM367 1624q0 43 31.5 74t72.5 31q43 0 75 -31t32 -74t-32 -73.5t-75 -30.5q-41 0 -72.5 30.5t-31.5 73.5z" />
-<glyph unicode="&#xd0;" horiz-adv-x="1497" d="M70 623v141h147v602h414q147 0 277 -36t241 -111.5t176.5 -207.5t65.5 -306q0 -336 -229.5 -520.5t-608.5 -184.5h-336v623h-147zM385 141h147q350 0 513 149.5t163 395.5q0 250 -157.5 394.5t-448.5 144.5h-217v-461h352v-141h-352v-482z" />
-<glyph unicode="&#xd1;" horiz-adv-x="1529" d="M201 0v1366h168l796 -1114v1114h164v-1366h-168l-796 1098v-1098h-164zM401 1501v12q0 29 6.5 60t24 75t63.5 71.5t113 27.5q70 0 123 -34t95 -67.5t83 -33.5q90 0 90 119v16h127v-14q0 -29 -6 -61t-24.5 -77t-65.5 -73.5t-116.5 -28.5t-122 34t-92.5 67.5t-81 33.5 q-90 0 -90 -115v-12h-127z" />
-<glyph unicode="&#xd2;" horiz-adv-x="1628" d="M102 680q0 184 82 344t250 263.5t389 103.5q313 0 508 -196t195 -486q0 -299 -203 -516.5t-518 -217.5q-307 0 -505 207t-198 498zM283 692q0 -221 144 -396t384 -175q242 0 388.5 173t146.5 398q0 223 -144.5 388t-388.5 165q-242 0 -386 -166t-144 -387zM539 1616 l63 147l395 -194l-39 -99z" />
-<glyph unicode="&#xd3;" horiz-adv-x="1628" d="M102 680q0 184 82 344t250 263.5t389 103.5q313 0 508 -196t195 -486q0 -299 -203 -516.5t-518 -217.5q-307 0 -505 207t-198 498zM283 692q0 -221 144 -396t384 -175q242 0 388.5 173t146.5 398q0 223 -144.5 388t-388.5 165q-242 0 -386 -166t-144 -387zM629 1569 l395 194l63 -147l-419 -146z" />
-<glyph unicode="&#xd4;" horiz-adv-x="1628" d="M102 680q0 184 82 344t250 263.5t389 103.5q313 0 508 -196t195 -486q0 -299 -203 -516.5t-518 -217.5q-307 0 -505 207t-198 498zM283 692q0 -221 144 -396t384 -175q242 0 388.5 173t146.5 398q0 223 -144.5 388t-388.5 165q-242 0 -386 -166t-144 -387zM485 1548 l258 236h142l256 -236l-92 -78l-234 203l-237 -203z" />
-<glyph unicode="&#xd5;" horiz-adv-x="1628" d="M102 680q0 184 82 344t250 263.5t389 103.5q313 0 508 -196t195 -486q0 -299 -203 -516.5t-518 -217.5q-307 0 -505 207t-198 498zM283 692q0 -221 144 -396t384 -175q242 0 388.5 173t146.5 398q0 223 -144.5 388t-388.5 165q-242 0 -386 -166t-144 -387zM451 1501v12 q0 29 6 60t23.5 75t63.5 71.5t113 27.5q70 0 123.5 -34t95.5 -67.5t82 -33.5q90 0 91 119v16h127v-14q0 -29 -6.5 -61t-25 -77t-65.5 -73.5t-116.5 -28.5t-122 34t-92 67.5t-80.5 33.5q-90 0 -90 -115v-12h-127z" />
-<glyph unicode="&#xd6;" horiz-adv-x="1628" d="M102 680q0 184 82 344t250 263.5t389 103.5q313 0 508 -196t195 -486q0 -299 -203 -516.5t-518 -217.5q-307 0 -505 207t-198 498zM283 692q0 -221 144 -396t384 -175q242 0 388.5 173t146.5 398q0 223 -144.5 388t-388.5 165q-242 0 -386 -166t-144 -387zM473 1624 q0 43 32 74t75 31q41 0 72.5 -31t31.5 -74t-31.5 -73.5t-72.5 -30.5q-43 0 -75 30.5t-32 73.5zM944 1624q0 43 32 74t73 31q43 0 74.5 -31t31.5 -74t-31.5 -73.5t-74.5 -30.5q-41 0 -73 30.5t-32 73.5z" />
-<glyph unicode="&#xd7;" d="M82 143l358 369l-358 371l90 94l360 -371l361 371l90 -94l-360 -371l360 -369l-92 -94l-359 369l-358 -369z" />
-<glyph unicode="&#xd8;" horiz-adv-x="1628" d="M102 680q0 184 82 344t250 263.5t389 103.5q215 0 381 -99l103 135h135l-150 -196q233 -199 234 -522q0 -299 -203 -516.5t-518 -217.5q-219 0 -385 109l-111 -145h-137l160 211q-230 206 -230 530zM283 692q0 -238 153 -407l668 878q-125 82 -291 82q-242 0 -386 -167 t-144 -386zM516 211q131 -90 295 -90q242 0 388.5 173t146.5 398q0 240 -158 402z" />
-<glyph unicode="&#xd9;" horiz-adv-x="1472" d="M182 492v874h168v-842q0 -205 105.5 -304t281.5 -99q174 0 279.5 98t105.5 293v854h168v-846q0 -258 -157.5 -401.5t-397.5 -143.5q-248 0 -400.5 126.5t-152.5 390.5zM461 1616l63 147l396 -194l-39 -99z" />
-<glyph unicode="&#xda;" horiz-adv-x="1472" d="M182 492v874h168v-842q0 -205 105.5 -304t281.5 -99q174 0 279.5 98t105.5 293v854h168v-846q0 -258 -157.5 -401.5t-397.5 -143.5q-248 0 -400.5 126.5t-152.5 390.5zM551 1569l395 194l64 -147l-420 -146z" />
-<glyph unicode="&#xdb;" horiz-adv-x="1472" d="M182 492v874h168v-842q0 -205 105.5 -304t281.5 -99q174 0 279.5 98t105.5 293v854h168v-846q0 -258 -157.5 -401.5t-397.5 -143.5q-248 0 -400.5 126.5t-152.5 390.5zM408 1548l258 236h141l256 -236l-92 -78l-234 203l-237 -203z" />
-<glyph unicode="&#xdc;" horiz-adv-x="1472" d="M182 492v874h168v-842q0 -205 105.5 -304t281.5 -99q174 0 279.5 98t105.5 293v854h168v-846q0 -258 -157.5 -401.5t-397.5 -143.5q-248 0 -400.5 126.5t-152.5 390.5zM395 1624q0 43 32 74t75 31q41 0 72.5 -31t31.5 -74t-31.5 -73.5t-72.5 -30.5q-43 0 -75 30.5 t-32 73.5zM866 1624q0 43 32 74t73 31q43 0 74.5 -31t31.5 -74t-31.5 -73.5t-74.5 -30.5q-41 0 -73 30.5t-32 73.5z" />
-<glyph unicode="&#xdd;" horiz-adv-x="1177" d="M16 1366h199l377 -608l381 608h188l-487 -770v-596h-168v594zM416 1569l395 194l63 -147l-419 -146z" />
-<glyph unicode="&#xde;" horiz-adv-x="1148" d="M201 0v1366h168v-311h258q242 0 349 -101.5t107 -261.5q0 -188 -121.5 -292.5t-334.5 -104.5h-258v-295h-168zM369 436h227q307 0 307 242q0 236 -307 235h-227v-477z" />
-<glyph unicode="&#xdf;" horiz-adv-x="1157" d="M57 793v84l146 55v78q0 219 102.5 339.5t292.5 120.5q164 0 255 -85t91 -199q0 -76 -49 -150l-98 -142q-49 -69 -49 -134q0 -57 35.5 -107.5t86.5 -90.5l102 -83q50 -43 86 -103.5t36 -133.5q0 -123 -91.5 -195t-242.5 -72q-78 0 -144.5 18.5t-95.5 39.5l-28 18l34 142 q102 -84 238 -84q78 0 120 33.5t42 90.5q0 51 -35 97.5t-86 85.5l-102 81q-50 42 -84.5 103.5t-34.5 134.5q0 68 29.5 131.5t66.5 103.5t66.5 94t29.5 107q0 76 -55 118t-133 42q-100 0 -163 -76.5t-63 -236.5v-1018h-159v793h-146z" />
-<glyph unicode="&#xe0;" horiz-adv-x="960" d="M74 207q0 141 143 230t410 124v35q0 45 -1 65.5t-8.5 54.5t-22.5 49t-45 28.5t-75 13.5q-150 -2 -289 -102l-49 129q16 12 49 30.5t132.5 50t201.5 31.5q147 0 206.5 -67.5t59.5 -225.5v-415q0 -104 88 -121l15 -2l-53 -129q-164 18 -199 149q-10 -16 -30.5 -37.5 t-57.5 -52.5t-94.5 -50.5t-122.5 -19.5q-117 0 -187.5 65t-70.5 167zM170 1432h174l207 -340l-94 -56zM244 217q0 -102 121 -102q125 0 262 159v170q-199 -33 -291 -86t-92 -141z" />
-<glyph unicode="&#xe1;" horiz-adv-x="960" d="M74 207q0 141 143 230t410 124v35q0 45 -1 65.5t-8.5 54.5t-22.5 49t-45 28.5t-75 13.5q-150 -2 -289 -102l-49 129q16 12 49 30.5t132.5 50t201.5 31.5q147 0 206.5 -67.5t59.5 -225.5v-415q0 -104 88 -121l15 -2l-53 -129q-164 18 -199 149q-10 -16 -30.5 -37.5 t-57.5 -52.5t-94.5 -50.5t-122.5 -19.5q-117 0 -187.5 65t-70.5 167zM244 217q0 -102 121 -102q125 0 262 159v170q-199 -33 -291 -86t-92 -141zM375 1092l207 340h174l-287 -396z" />
-<glyph unicode="&#xe2;" horiz-adv-x="960" d="M74 207q0 141 143 230t410 124v35q0 45 -1 65.5t-8.5 54.5t-22.5 49t-45 28.5t-75 13.5q-150 -2 -289 -102l-49 129q16 12 49 30.5t132.5 50t201.5 31.5q147 0 206.5 -67.5t59.5 -225.5v-415q0 -104 88 -121l15 -2l-53 -129q-164 18 -199 149q-10 -16 -30.5 -37.5 t-57.5 -52.5t-94.5 -50.5t-122.5 -19.5q-117 0 -187.5 65t-70.5 167zM178 1085l230 347h110l230 -347l-101 -51l-184 256l-184 -256zM244 217q0 -102 121 -102q125 0 262 159v170q-199 -33 -291 -86t-92 -141z" />
-<glyph unicode="&#xe3;" horiz-adv-x="960" d="M74 207q0 141 143 230t410 124v35q0 45 -1 65.5t-8.5 54.5t-22.5 49t-45 28.5t-75 13.5q-150 -2 -289 -102l-49 129q16 12 49 30.5t132.5 50t201.5 31.5q147 0 206.5 -67.5t59.5 -225.5v-415q0 -104 88 -121l15 -2l-53 -129q-164 18 -199 149q-10 -16 -30.5 -37.5 t-57.5 -52.5t-94.5 -50.5t-122.5 -19.5q-117 0 -187.5 65t-70.5 167zM162 1130v11q0 20 2 42.5t12 60.5t27.5 65.5t51.5 49t81 21.5q49 0 90 -24.5t61.5 -54t46 -54t50.5 -24.5q61 0 69 131v14h111v-10q0 -29 -5 -60.5t-20.5 -79t-55.5 -78t-97 -30.5q-49 0 -89 24.5 t-60.5 54.5t-46 54.5t-50.5 24.5q-68 0 -68 -129v-9h-110zM244 217q0 -102 121 -102q125 0 262 159v170q-199 -33 -291 -86t-92 -141z" />
-<glyph unicode="&#xe4;" horiz-adv-x="960" d="M74 207q0 141 143 230t410 124v35q0 45 -1 65.5t-8.5 54.5t-22.5 49t-45 28.5t-75 13.5q-150 -2 -289 -102l-49 129q16 12 49 30.5t132.5 50t201.5 31.5q147 0 206.5 -67.5t59.5 -225.5v-415q0 -104 88 -121l15 -2l-53 -129q-164 18 -199 149q-10 -16 -30.5 -37.5 t-57.5 -52.5t-94.5 -50.5t-122.5 -19.5q-117 0 -187.5 65t-70.5 167zM172 1266q0 43 32 73.5t75 30.5q41 0 72.5 -30.5t31.5 -73.5t-32 -74t-72 -31q-43 0 -75 31t-32 74zM244 217q0 -102 121 -102q125 0 262 159v170q-199 -33 -291 -86t-92 -141zM541 1266q0 43 31.5 73.5 t72.5 30.5q43 0 75 -30.5t32 -73.5t-32 -74t-75 -31q-41 0 -72.5 31t-31.5 74z" />
-<glyph unicode="&#xe5;" horiz-adv-x="960" d="M74 207q0 141 143 230t410 124v35q0 45 -1 65.5t-8.5 54.5t-22.5 49t-45 28.5t-75 13.5q-150 -2 -289 -102l-49 129q16 12 49 30.5t132.5 50t201.5 31.5q147 0 206.5 -67.5t59.5 -225.5v-415q0 -104 88 -121l15 -2l-53 -129q-164 18 -199 149q-10 -16 -30.5 -37.5 t-57.5 -52.5t-94.5 -50.5t-122.5 -19.5q-117 0 -187.5 65t-70.5 167zM244 217q0 -102 121 -102q125 0 262 159v170q-199 -33 -291 -86t-92 -141zM274 1269.5q0 69.5 48.5 118t140.5 48.5t140 -48.5t48 -118t-48 -120.5t-140 -51t-140.5 51t-48.5 120.5zM369 1268 q0 -37 23.5 -63.5t70.5 -26.5t71.5 26.5t24.5 63.5t-23.5 62.5t-72.5 25.5q-94 0 -94 -88z" />
-<glyph unicode="&#xe6;" horiz-adv-x="1538" d="M74 207q0 131 147.5 219t425.5 121v49q0 57 -3 85t-16.5 62.5t-46 49t-87.5 14.5q-72 0 -149 -25.5t-118 -52.5l-41 -24l-49 129q18 12 50 30.5t131.5 50t197.5 31.5q201 0 250 -139q123 139 311 139q162 0 264.5 -108.5t102.5 -296.5l-98 -29l-545 -72q10 -143 91 -234 t214 -91q72 0 143.5 28.5t106.5 57.5l35 26l57 -116q-14 -14 -43 -37t-123 -61t-195 -38q-266 0 -380 222q-41 -88 -130.5 -155t-216.5 -67q-125 0 -205.5 66t-80.5 166zM244 217q0 -102 137 -102q117 0 187.5 83t70.5 230q-395 -57 -395 -211zM807 563l461 60q0 8 -3 20 t-15.5 45t-33 58.5t-61.5 46t-94 20.5q-102 0 -169 -68.5t-85 -181.5z" />
-<glyph unicode="&#xe7;" horiz-adv-x="933" d="M90 451q0 201 128 348t343 147q88 0 163 -24.5t107 -49.5l31 -26l-71 -125q-10 10 -31 24.5t-83.5 38t-125.5 23.5q-133 0 -213 -100.5t-80 -247.5q0 -145 81 -244.5t218 -99.5q143 4 250 98l55 -119q-12 -12 -35.5 -32.5t-106.5 -53.5t-175 -33h-6l-7 -12 q-23 -49 -22 -67q0 -23 27.5 -40.5t59.5 -30.5t59.5 -45t27.5 -77q0 -76 -65.5 -133t-161.5 -57q-49 0 -97.5 16t-70.5 33l-23 14l43 100q66 -57 144 -57q45 0 74.5 19.5t29.5 48.5q0 23 -25.5 41t-57.5 30.5t-57.5 36t-25.5 53.5q0 25 37 109l12 29q-160 33 -255 161 t-95 304z" />
-<glyph unicode="&#xe8;" horiz-adv-x="997" d="M92 440q0 219 124 362.5t319 143.5q164 0 266 -109.5t102 -301.5l-98 -29l-543 -72q10 -145 91 -232t214 -87q70 0 142.5 28.5t109.5 57.5l37 30l47 -122q-14 -14 -43 -37t-121 -60t-190 -37q-217 0 -337 135t-120 330zM221 1432h174l207 -340l-94 -56zM264 557l463 59 q0 8 -3 21.5t-15.5 47.5t-33 59.5t-60.5 47t-91 21.5q-106 0 -174 -71.5t-86 -184.5z" />
-<glyph unicode="&#xe9;" horiz-adv-x="997" d="M92 440q0 219 124 362.5t319 143.5q164 0 266 -109.5t102 -301.5l-98 -29l-543 -72q10 -145 91 -232t214 -87q70 0 142.5 28.5t109.5 57.5l37 30l47 -122q-14 -14 -43 -37t-121 -60t-190 -37q-217 0 -337 135t-120 330zM264 557l463 59q0 8 -3 21.5t-15.5 47.5t-33 59.5 t-60.5 47t-91 21.5q-106 0 -174 -71.5t-86 -184.5zM426 1092l207 340h174l-287 -396z" />
-<glyph unicode="&#xea;" horiz-adv-x="997" d="M92 440q0 219 124 362.5t319 143.5q164 0 266 -109.5t102 -301.5l-98 -29l-543 -72q10 -145 91 -232t214 -87q70 0 142.5 28.5t109.5 57.5l37 30l47 -122q-14 -14 -43 -37t-121 -60t-190 -37q-217 0 -337 135t-120 330zM229 1085l230 347h110l230 -347l-101 -51l-184 256 l-184 -256zM264 557l463 59q0 8 -3 21.5t-15.5 47.5t-33 59.5t-60.5 47t-91 21.5q-106 0 -174 -71.5t-86 -184.5z" />
-<glyph unicode="&#xeb;" horiz-adv-x="997" d="M92 440q0 219 124 362.5t319 143.5q164 0 266 -109.5t102 -301.5l-98 -29l-543 -72q10 -145 91 -232t214 -87q70 0 142.5 28.5t109.5 57.5l37 30l47 -122q-14 -14 -43 -37t-121 -60t-190 -37q-217 0 -337 135t-120 330zM223 1266q0 43 32 73.5t75 30.5q41 0 72.5 -30.5 t31.5 -73.5t-31.5 -74t-72.5 -31q-43 0 -75 31t-32 74zM264 557l463 59q0 8 -3 21.5t-15.5 47.5t-33 59.5t-60.5 47t-91 21.5q-106 0 -174 -71.5t-86 -184.5zM592 1266q0 43 31.5 73.5t72.5 30.5q43 0 75 -30.5t32 -73.5t-32 -74t-75 -31q-41 0 -72.5 31t-31.5 74z" />
-<glyph unicode="&#xec;" horiz-adv-x="471" d="M-57 1432h174l207 -340l-95 -56zM156 0v922h159v-922h-159z" />
-<glyph unicode="&#xed;" horiz-adv-x="471" d="M147 1092l207 340h174l-286 -396zM156 0v922h159v-922h-159z" />
-<glyph unicode="&#xee;" horiz-adv-x="471" d="M-49 1085l229 347h111l229 -347l-100 -51l-184 256l-185 -256zM156 0v922h159v-922h-159z" />
-<glyph unicode="&#xef;" horiz-adv-x="471" d="M-55 1266q0 43 31.5 73.5t74.5 30.5q41 0 73 -30.5t32 -73.5t-32 -74t-73 -31q-43 0 -74.5 31t-31.5 74zM156 0v922h159v-922h-159zM313 1266q0 43 32 73.5t73 30.5q43 0 74.5 -30.5t31.5 -73.5t-31.5 -74t-74.5 -31q-41 0 -73 31t-32 74z" />
-<glyph unicode="&#xf0;" horiz-adv-x="1103" d="M90 449q0 199 128 348t319 149q166 0 247 -88q-74 197 -231 334l-258 -158l-59 103l215 131q-131 80 -281 123l35 125q215 -43 385 -164l282 172l58 -103l-244 -147q145 -135 225 -317.5t80 -383.5q0 -270 -125 -434t-344 -164q-197 0 -314.5 143t-117.5 331zM258 465 q0 -135 71.5 -242.5t203 -107.5t214 110.5t82.5 337.5q0 111 -62 177.5t-189 66.5q-141 0 -230.5 -96t-89.5 -246z" />
-<glyph unicode="&#xf1;" horiz-adv-x="1079" d="M152 0v907l159 29v-180q184 190 381 190q111 0 176.5 -67.5t65.5 -208.5v-670h-160v625q0 180 -125 180q-135 0 -338 -197v-608h-159zM250 1130v11q0 20 2 42.5t12 60.5t27.5 65.5t51.5 49t81 21.5q49 0 90 -24.5t61.5 -54t46 -54t50.5 -24.5q61 0 69 131v14h111v-10 q0 -29 -5 -60.5t-20.5 -79t-55.5 -78t-97 -30.5q-49 0 -89 24.5t-60.5 54.5t-46 54.5t-50.5 24.5q-68 0 -68 -129v-9h-110z" />
-<glyph unicode="&#xf2;" horiz-adv-x="1091" d="M90 457q0 121 49 229.5t156.5 184t253.5 75.5q205 0 328.5 -139t123.5 -328q0 -119 -48 -230.5t-157.5 -192.5t-254.5 -81q-205 0 -328 143.5t-123 338.5zM252 1432h174l207 -340l-94 -56zM258 475.5q0 -149.5 74 -255t215 -105.5q129 0 208 94t79 244q0 147 -72 250.5 t-217 103.5q-131 0 -209 -91t-78 -240.5z" />
-<glyph unicode="&#xf3;" horiz-adv-x="1091" d="M90 457q0 121 49 229.5t156.5 184t253.5 75.5q205 0 328.5 -139t123.5 -328q0 -119 -48 -230.5t-157.5 -192.5t-254.5 -81q-205 0 -328 143.5t-123 338.5zM258 475.5q0 -149.5 74 -255t215 -105.5q129 0 208 94t79 244q0 147 -72 250.5t-217 103.5q-131 0 -209 -91 t-78 -240.5zM457 1092l207 340h174l-287 -396z" />
-<glyph unicode="&#xf4;" horiz-adv-x="1091" d="M90 457q0 121 49 229.5t156.5 184t253.5 75.5q205 0 328.5 -139t123.5 -328q0 -119 -48 -230.5t-157.5 -192.5t-254.5 -81q-205 0 -328 143.5t-123 338.5zM258 475.5q0 -149.5 74 -255t215 -105.5q129 0 208 94t79 244q0 147 -72 250.5t-217 103.5q-131 0 -209 -91 t-78 -240.5zM260 1085l229 347h111l229 -347l-100 -51l-184 256l-185 -256z" />
-<glyph unicode="&#xf5;" horiz-adv-x="1091" d="M90 457q0 121 49 229.5t156.5 184t253.5 75.5q205 0 328.5 -139t123.5 -328q0 -119 -48 -230.5t-157.5 -192.5t-254.5 -81q-205 0 -328 143.5t-123 338.5zM244 1130v11q0 20 2 42.5t12 60.5t27.5 65.5t51.5 49t81 21.5q49 0 90 -24.5t61.5 -54t46 -54t50.5 -24.5 q61 0 69 131v14h111v-10q0 -29 -5 -60.5t-20.5 -79t-55.5 -78t-97 -30.5q-49 0 -89 24.5t-60.5 54.5t-46.5 54.5t-50 24.5q-68 0 -68 -129v-9h-110zM258 475.5q0 -149.5 74 -255t215 -105.5q129 0 208 94t79 244q0 147 -72 250.5t-217 103.5q-131 0 -209 -91t-78 -240.5z " />
-<glyph unicode="&#xf6;" horiz-adv-x="1091" d="M90 457q0 121 49 229.5t156.5 184t253.5 75.5q205 0 328.5 -139t123.5 -328q0 -119 -48 -230.5t-157.5 -192.5t-254.5 -81q-205 0 -328 143.5t-123 338.5zM254 1266q0 43 31.5 73.5t74.5 30.5q41 0 73 -30.5t32 -73.5t-32 -74t-73 -31q-43 0 -74.5 31t-31.5 74z M258 475.5q0 -149.5 74 -255t215 -105.5q129 0 208 94t79 244q0 147 -72 250.5t-217 103.5q-131 0 -209 -91t-78 -240.5zM623 1266q0 43 31.5 73.5t72.5 30.5q43 0 75 -30.5t32 -73.5t-32 -74t-75 -31q-41 0 -72.5 31t-31.5 74z" />
-<glyph unicode="&#xf7;" d="M74 446v134h917v-134h-917zM410 121q0 51 35.5 87t87 36t87 -36t35.5 -87t-35.5 -87t-87 -36t-87 36t-35.5 87zM410 905q0 51 35.5 87t87 36t87 -36t35.5 -87t-35.5 -87t-87 -36t-87 36t-35.5 87z" />
-<glyph unicode="&#xf8;" horiz-adv-x="1091" d="M90 457q0 121 49 229.5t156.5 184t253.5 75.5q137 0 244 -69l79 106h127l-127 -172q129 -139 129 -332q0 -119 -48 -230.5t-157.5 -192.5t-254.5 -81q-137 0 -240 68l-78 -104h-129l127 170q-131 141 -131 348zM258 475q0 -141 61 -235l386 518q-66 49 -160 49 q-131 0 -209 -91t-78 -241zM389 162q70 -47 158 -47q129 0 208 94t79 244q0 133 -58 229z" />
-<glyph unicode="&#xf9;" horiz-adv-x="1067" d="M145 252v670h160v-625q0 -180 131 -180q139 0 312 172v633h159v-637q0 -49 10.5 -121t20.5 -119l10 -45l-157 -14q-23 102 -31 168q-166 -178 -365 -179q-250 1 -250 277zM236 1432h174l206 -340l-94 -56z" />
-<glyph unicode="&#xfa;" horiz-adv-x="1067" d="M145 252v670h160v-625q0 -180 131 -180q139 0 312 172v633h159v-637q0 -49 10.5 -121t20.5 -119l10 -45l-157 -14q-23 102 -31 168q-166 -178 -365 -179q-250 1 -250 277zM440 1092l207 340h174l-286 -396z" />
-<glyph unicode="&#xfb;" horiz-adv-x="1067" d="M145 252v670h160v-625q0 -180 131 -180q139 0 312 172v633h159v-637q0 -49 10.5 -121t20.5 -119l10 -45l-157 -14q-23 102 -31 168q-166 -178 -365 -179q-250 1 -250 277zM244 1085l229 347h111l229 -347l-100 -51l-185 256l-184 -256z" />
-<glyph unicode="&#xfc;" horiz-adv-x="1067" d="M145 252v670h160v-625q0 -180 131 -180q139 0 312 172v633h159v-637q0 -49 10.5 -121t20.5 -119l10 -45l-157 -14q-23 102 -31 168q-166 -178 -365 -179q-250 1 -250 277zM238 1266q0 43 31.5 73.5t74.5 30.5q41 0 73 -30.5t32 -73.5t-32 -74t-73 -31q-43 0 -74.5 31 t-31.5 74zM606 1266q0 43 32 73.5t73 30.5q43 0 74.5 -30.5t31.5 -73.5t-31.5 -74t-74.5 -31q-41 0 -73 31t-32 74z" />
-<glyph unicode="&#xfd;" horiz-adv-x="935" d="M33 922h174l268 -652l260 652h168l-411 -992q-74 -178 -167.5 -288.5t-230.5 -126.5l-51 133q180 37 289 282l59 138zM389 1092l207 340h174l-287 -396z" />
-<glyph unicode="&#xfe;" horiz-adv-x="1077" d="M156 -475v1909l159 28v-663q88 147 279 147q178 0 284.5 -131t106.5 -330q0 -213 -129 -361.5t-344 -148.5q-131 0 -197 56v-477zM315 231q0 -117 172 -116q154 0 241 96t87 264q0 152 -67.5 240t-174.5 88q-150 0 -258 -158v-414z" />
-<glyph unicode="&#xff;" horiz-adv-x="935" d="M33 922h174l268 -652l260 652h168l-411 -992q-74 -178 -167.5 -288.5t-230.5 -126.5l-51 133q180 37 289 282l59 138zM186 1266q0 43 32 73.5t75 30.5q41 0 72.5 -30.5t31.5 -73.5t-31.5 -74t-72.5 -31q-43 0 -75 31t-32 74zM555 1266q0 43 31.5 73.5t72.5 30.5 q43 0 75 -30.5t32 -73.5t-32 -74t-75 -31q-41 0 -72.5 31t-31.5 74z" />
-<glyph unicode="&#x152;" horiz-adv-x="2009" d="M102 680q0 139 47.5 265t137.5 226.5t235.5 160t325.5 59.5q127 0 256 -25h801v-141h-637v-457h504v-141h-504v-486h635v-141h-803q-141 -25 -269 -25q-334 0 -531.5 204t-197.5 501zM283 692q0 -100 31.5 -197.5t96 -183.5t176 -138t255 -52t258.5 20v1073 q-117 31 -264 31q-264 0 -408.5 -164t-144.5 -389z" />
-<glyph unicode="&#x153;" horiz-adv-x="1738" d="M90 457q0 121 49 229.5t156.5 184t253.5 75.5q244 0 375 -201q119 201 352 201q164 0 266.5 -109.5t102.5 -301.5l-99 -29l-549 -72q10 -145 92 -232t220 -87q70 0 140.5 28.5t106.5 57.5l35 26l58 -116q-16 -14 -45 -37t-122 -61t-192 -38q-254 0 -377 203 q-131 -203 -372 -203q-205 0 -328 143.5t-123 338.5zM258 475.5q0 -149.5 74 -255t215 -105.5q129 0 208 94t79 244q0 147 -72 250.5t-217 103.5q-131 0 -209 -91t-78 -240.5zM999 555l469 61q0 8 -3 21.5t-15 47.5t-32.5 59.5t-60.5 47t-91 21.5q-111 0 -180 -71.5 t-87 -186.5z" />
-<glyph unicode="&#x178;" horiz-adv-x="1177" d="M16 1366h199l377 -608l381 608h188l-487 -770v-596h-168v594zM260 1624q0 43 32 74t75 31q41 0 72.5 -31t31.5 -74t-31.5 -73.5t-72.5 -30.5q-43 0 -75 30.5t-32 73.5zM731 1624q0 43 32 74t73 31q43 0 74.5 -31t31.5 -74t-31.5 -73.5t-74.5 -30.5q-41 0 -73 30.5 t-32 73.5z" />
-<glyph unicode="&#x2c6;" horiz-adv-x="1032" d="M231 1085l230 347h110l230 -347l-101 -51l-184 256l-184 -256z" />
-<glyph unicode="&#x2dc;" horiz-adv-x="1032" d="M215 1130v11q0 20 2 42.5t12.5 60.5t27.5 65.5t51 49t81 21.5q49 0 90 -24.5t61.5 -54t46 -54t50.5 -24.5q61 0 70 131v14h110v-10q0 -29 -5 -60.5t-20.5 -79t-55.5 -78t-97 -30.5q-49 0 -89 24.5t-60.5 54.5t-46 54.5t-50.5 24.5q-68 0 -67 -129v-9h-111z" />
-<glyph unicode="&#x2000;" horiz-adv-x="892" />
-<glyph unicode="&#x2001;" horiz-adv-x="1784" />
-<glyph unicode="&#x2002;" horiz-adv-x="892" />
-<glyph unicode="&#x2003;" horiz-adv-x="1784" />
-<glyph unicode="&#x2004;" horiz-adv-x="594" />
-<glyph unicode="&#x2005;" horiz-adv-x="446" />
-<glyph unicode="&#x2006;" horiz-adv-x="297" />
-<glyph unicode="&#x2007;" horiz-adv-x="297" />
-<glyph unicode="&#x2008;" horiz-adv-x="223" />
-<glyph unicode="&#x2009;" horiz-adv-x="356" />
-<glyph unicode="&#x200a;" horiz-adv-x="99" />
-<glyph unicode="&#x2010;" horiz-adv-x="692" d="M115 438v148h463v-148h-463z" />
-<glyph unicode="&#x2011;" horiz-adv-x="692" d="M115 438v148h463v-148h-463z" />
-<glyph unicode="&#x2012;" horiz-adv-x="692" d="M115 438v148h463v-148h-463z" />
-<glyph unicode="&#x2013;" horiz-adv-x="1069" d="M115 453v133h839v-133h-839z" />
-<glyph unicode="&#x2014;" horiz-adv-x="1867" d="M115 453v133h1638v-133h-1638z" />
-<glyph unicode="&#x2018;" horiz-adv-x="432" d="M100 1190q0 186 181 323l71 -73q-100 -80 -100 -180q0 -102 106 -213l-155 -91q-103 97 -103 234z" />
-<glyph unicode="&#x2019;" horiz-adv-x="423" d="M78 1423l155 90q102 -96 103 -233q0 -186 -180 -324l-72 74q100 80 100 180q0 102 -106 213z" />
-<glyph unicode="&#x201a;" horiz-adv-x="487" d="M100 154l168 90q109 -102 109 -234q0 -88 -50.5 -173t-136.5 -150l-71 73q106 84 106 181q0 82 -125 213z" />
-<glyph unicode="&#x201c;" horiz-adv-x="763" d="M100 1190q0 186 181 323l71 -73q-100 -80 -100 -180q0 -102 106 -213l-155 -91q-103 97 -103 234zM432 1190q0 186 180 323l72 -73q-100 -80 -100 -180q0 -102 106 -213l-155 -91q-103 97 -103 234z" />
-<glyph unicode="&#x201d;" horiz-adv-x="755" d="M78 1423l155 90q102 -96 103 -233q0 -186 -180 -324l-72 74q100 80 100 180q0 102 -106 213zM410 1423l155 90q102 -96 103 -233q0 -186 -181 -324l-71 74q100 80 100 180q0 102 -106 213z" />
-<glyph unicode="&#x201e;" horiz-adv-x="819" d="M100 154l168 90q109 -102 109 -234q0 -88 -50.5 -173t-136.5 -150l-71 73q106 84 106 181q0 82 -125 213zM432 154l168 90q109 -102 109 -234q0 -88 -50.5 -173t-136.5 -150l-71 73q106 84 106 181q0 82 -125 213z" />
-<glyph unicode="&#x2022;" horiz-adv-x="778" d="M106 524.5q0 118.5 82 200.5t201 82t201 -82t82 -200.5t-82 -200.5t-201 -82t-201 82t-82 200.5z" />
-<glyph unicode="&#x2026;" horiz-adv-x="1593" d="M121 98.5q0 51.5 36 87t87 35.5t87 -35.5t36 -87t-36 -87.5t-87 -36t-87 36t-36 87.5zM674 98.5q0 51.5 35.5 87t87 35.5t87.5 -35.5t36 -87t-36 -87.5t-87.5 -36t-87 36t-35.5 87.5zM1227 98.5q0 51.5 35.5 87t87 35.5t87.5 -35.5t36 -87t-36 -87.5t-87.5 -36t-87 36 t-35.5 87.5z" />
-<glyph unicode="&#x202f;" horiz-adv-x="356" />
-<glyph unicode="&#x2039;" horiz-adv-x="655" d="M49 510v8q35 27 285 303l115 125l110 -31l-309 -401l309 -401l-110 -31l-168 182l-111 121l-60 66l-38 38q-11 11 -23 21z" />
-<glyph unicode="&#x203a;" horiz-adv-x="657" d="M98 113l310 401l-310 401l111 31q362 -397 389 -420q4 -2 10 -8v-8q-12 -10 -22 -21l-38 -38l-61 -66l-110 -121l-168 -182z" />
-<glyph unicode="&#x205f;" horiz-adv-x="446" />
-<glyph unicode="&#x20ac;" horiz-adv-x="1142" d="M86 375v102h109q-4 27 -5 82q0 25 5 78h-105v102h121q45 188 179 303t335 115q180 -2 313 -80l-43 -145q-119 86 -278 86q-137 0 -221 -77t-117 -202h561l-31 -102h-549q-2 -23 -2 -66q0 -47 7 -94h499l-30 -102h-445q39 -119 127 -189.5t211 -70.5q66 0 131.5 18.5 t97.5 34.5l33 18l49 -125q-14 -10 -39.5 -24t-110.5 -38t-173 -24q-190 0 -322.5 107.5t-179.5 292.5h-127z" />
-<glyph unicode="&#x2122;" horiz-adv-x="1359" d="M76 1278v88h463v-88h-179v-457h-106v457h-178zM629 821l20 545h156l127 -371l129 371h151l21 -545h-103l-16 422l-149 -422h-70l-150 424l-12 -424h-104z" />
-<glyph unicode="&#xe000;" horiz-adv-x="920" d="M0 920h920v-920h-920v920z" />
-<glyph unicode="&#xfb01;" horiz-adv-x="1075" d="M57 793v84l146 55v78q0 225 108.5 353t292.5 128q162 0 279 -78l-74 -127q-100 66 -209 66q-102 0 -170 -82t-68 -252v-96h558v-922h-160v803h-398v-803h-159v793h-146z" />
-<glyph unicode="&#xfb02;" horiz-adv-x="1105" d="M57 793v84l146 55v78q0 225 108.5 353t292.5 128q115 0 227 -51l119 22v-1462h-159v1296q-98 55 -191 56q-102 0 -170 -82t-68 -252v-96h261v-129h-261v-793h-159v793h-146z" />
-<glyph unicode="&#xfb03;" horiz-adv-x="1669" d="M57 793v84l146 55v47q0 217 111.5 339t299.5 122q141 0 275 -82q104 133 289 133q68 0 132 -19.5t95 -37.5l31 -21l-74 -127q-92 66 -188 66q-94 0 -156 -76t-62 -238v-116h557v-922h-159v803h-398v-803h-159v803h-435v-803h-159v793h-146zM362 922h435v108q0 109 28 199 q-115 72 -215 71q-109 0 -178.5 -75.5t-69.5 -237.5v-65z" />
-<glyph unicode="&#xfb04;" horiz-adv-x="1699" d="M57 793v84l146 55v47q0 217 111.5 339t299.5 122q147 0 283 -88q109 139 301 139q115 0 227 -51l119 22v-1462h-160v1296q-98 55 -190 56q-102 0 -170 -82t-68 -252v-96h261v-129h-261v-793h-159v803h-435v-803h-159v793h-146zM362 922h435v88q0 125 32 215 q-119 76 -219 75q-109 0 -178.5 -75.5t-69.5 -237.5v-65z" />
-</font>
-</defs></svg> 
\ No newline at end of file
diff --git a/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansRegular-webfont.ttf b/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansRegular-webfont.ttf
deleted file mode 100644
index 9856192a5d6fc9a8c0f7c17c5135d6ccc7df2520..0000000000000000000000000000000000000000
Binary files a/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansRegular-webfont.ttf and /dev/null differ
diff --git a/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansRegular-webfont.woff b/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansRegular-webfont.woff
deleted file mode 100644
index 9477ccebc8b71a1372e3dcb2dd9f51abdc13cb46..0000000000000000000000000000000000000000
Binary files a/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansRegular-webfont.woff and /dev/null differ
diff --git a/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansSemiBold-webfont.eot b/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansSemiBold-webfont.eot
deleted file mode 100644
index 2833c1bf81cfc3be091dbe4aa7f8c920db677c9f..0000000000000000000000000000000000000000
Binary files a/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansSemiBold-webfont.eot and /dev/null differ
diff --git a/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansSemiBold-webfont.svg b/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansSemiBold-webfont.svg
deleted file mode 100644
index 3cee70eab9e0f457c5185043f43f62851e594dd6..0000000000000000000000000000000000000000
--- a/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansSemiBold-webfont.svg
+++ /dev/null
@@ -1,243 +0,0 @@
-<?xml version="1.0" standalone="no"?>
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
-<svg xmlns="http://www.w3.org/2000/svg">
-<metadata>
-This is a custom SVG webfont generated by Fontspring.
-</metadata>
-<defs>
-<font id="webfontFCImWf6J" horiz-adv-x="491" >
-<font-face units-per-em="2048" ascent="1536" descent="-512" />
-<missing-glyph horiz-adv-x="500" />
-<glyph unicode=" " />
-<glyph unicode="!" horiz-adv-x="567" d="M145 112.5q0 57.5 40 98.5t97.5 41t98.5 -40t41 -99q0 -57 -41 -97.5t-98.5 -40.5t-97.5 40t-40 97.5zM168 1391h235l-34 -963h-170z" />
-<glyph unicode="&#x22;" horiz-adv-x="747" d="M125 856v510h182v-76l-57 -434h-125zM465 856v510h184v-76l-59 -434h-125z" />
-<glyph unicode="#" horiz-adv-x="1359" d="M72 244l22 127h256l60 284h-258l20 127h262l84 402h131l-82 -402h301l84 402h131l-82 -402h285l-22 -127h-289l-57 -284h288l-20 -127h-295l-86 -426h-133l86 426h-301l-86 -426h-133l86 426h-252zM483 371h301l60 284h-303z" />
-<glyph unicode="$" horiz-adv-x="960" d="M78 86l45 174q12 -10 35.5 -26.5t103.5 -45t168 -34.5l10 344q-160 57 -251 134t-91 206q0 123 89 210t270 101l6 178h94l-6 -176q82 -2 155.5 -17.5t106.5 -29.5l33 -14l-55 -166q-100 49 -244 57l-8 -328q160 -57 249 -135t89 -207q0 -133 -94.5 -219t-262.5 -100 l-4 -174h-94l4 170q-98 2 -185 26.5t-126 46.5zM289 850q0 -61 39 -96t116 -68l9 295q-164 -16 -164 -131zM524 156q158 20 158 143q0 61 -36 97t-114 67z" />
-<glyph unicode="%" horiz-adv-x="1527" d="M76 1040q0 131 91 222.5t228 91.5q139 0 230.5 -91.5t91.5 -222.5t-92.5 -222t-229.5 -91t-228 91t-91 222zM211 1040q0 -74 53 -131t131 -57q80 0 133.5 57.5t53.5 130.5q0 76 -53.5 132.5t-133.5 56.5t-132 -56.5t-52 -132.5zM223 0l963 1384l94 -63l-920 -1321h-137z M815 289q0 131 91 223t229 92q139 0 230 -91t91 -224q0 -131 -92 -222.5t-229.5 -91.5t-228.5 91.5t-91 222.5zM950 289q0 -74 53.5 -130.5t131.5 -56.5q80 0 133 56.5t53 130.5q0 76 -53.5 132t-133 56t-132 -56t-52.5 -132z" />
-<glyph unicode="&#x26;" horiz-adv-x="1415" d="M80 328q0 127 75.5 218t211.5 173q-111 199 -111 342q0 131 89 230.5t265 99.5q156 0 243 -82t87 -213q0 -133 -81 -223.5t-230 -182.5q68 -96 112 -147q72 -88 179 -195q166 221 192 578h186q-14 -168 -76.5 -357.5t-172.5 -332.5q180 -145 311 -183l-76 -139 q-158 23 -373 184q-162 -123 -372 -123q-186 0 -322.5 90.5t-136.5 262.5zM274 340q0 -94 78 -146.5t191 -52.5q125 0 235 72q-92 82 -211 223q-68 82 -114 148q-179 -117 -179 -244zM469 1065q0 -100 76 -240q207 125 207 254q0 61 -37 103.5t-103 42.5q-70 0 -106.5 -46 t-36.5 -114z" />
-<glyph unicode="'" horiz-adv-x="407" d="M125 856v510h188v-76l-73 -434h-115z" />
-<glyph unicode="(" horiz-adv-x="600" d="M100 553q0 152 32 297t78 244.5t91 177.5t76 114l33 37l149 -45l-32 -39q-19 -25 -69 -108.5t-89 -173.5t-71 -228.5t-32 -275.5q0 -152 31 -298t75 -246.5t88 -179.5t75 -116l30 -39l-145 -53q-12 14 -33.5 42t-77 119t-97.5 192.5t-77 259t-35 319.5z" />
-<glyph unicode=")" horiz-adv-x="600" d="M35 -326l33 40q20 26 71 114t91 183t73 242.5t33 299.5q0 137 -31 273.5t-74 231.5t-86 171t-73 112l-31 37l152 45l32 -39q20 -25 73.5 -110.5t94.5 -180t74 -241.5t33 -299q0 -459 -242 -829q-43 -66 -76 -103z" />
-<glyph unicode="*" horiz-adv-x="1007" d="M86 854l301 102l35 -61l-240 -211zM86 1110l96 170l240 -209l-35 -61zM406 555l63 311h70l63 -311h-196zM406 1409h196l-63 -311h-70zM586 895l35 61l301 -102l-99 -170zM586 1071l237 209l99 -170l-301 -100z" />
-<glyph unicode="+" horiz-adv-x="1064" d="M57 444v148h400v416h155v-416h394v-148h-394v-444h-155v444h-400z" />
-<glyph unicode="," horiz-adv-x="487" d="M68 -289q90 82 110 119q27 47 27 111q0 102 -107 254l197 63q84 -111 84 -238q0 -207 -232 -393z" />
-<glyph unicode="-" horiz-adv-x="720" d="M111 438v156h499v-156h-499z" />
-<glyph unicode="." horiz-adv-x="501" d="M113 112.5q0 57.5 40 98.5t97 41t98 -41t41 -98.5t-41 -97.5t-98 -40t-97 40t-40 97.5z" />
-<glyph unicode="/" horiz-adv-x="946" d="M45 -401l682 1767h154l-680 -1767h-156z" />
-<glyph unicode="0" horiz-adv-x="1134" d="M94 471q0 209 127 364.5t354 155.5q221 0 343 -142t122 -341q0 -135 -49 -253t-161.5 -199t-270.5 -81q-217 0 -341 147.5t-124 348.5zM289 483q0 -139 71.5 -240.5t206.5 -101.5q139 0 209 100.5t70 245.5q0 139 -69.5 238.5t-207 99.5t-209 -100.5t-71.5 -241.5z" />
-<glyph unicode="1" horiz-adv-x="800" d="M102 0v164h230v641h-217v162h417v-803h211v-164h-641z" />
-<glyph unicode="2" horiz-adv-x="927" d="M90 123l50 38q32 24 113 92.5t142.5 132t111.5 144t50 142.5q0 66 -44 107.5t-114 41.5q-53 0 -109.5 -21.5t-86.5 -43.5l-31 -23l-82 129q16 14 47 36t121 57.5t178 35.5q145 0 238.5 -83t93.5 -208q0 -96 -65.5 -202.5t-136 -175t-179.5 -158.5h467v-164h-756z" />
-<glyph unicode="3" horiz-adv-x="827" d="M35 862q16 14 47 36t122 57.5t179 35.5q141 0 233.5 -77.5t92.5 -196.5q0 -109 -73 -197t-177 -145q137 -33 210.5 -120t73.5 -206q0 -201 -176 -323.5t-444 -122.5q-37 0 -57 2l-17 157q23 -2 66 -2q180 0 298.5 74t118.5 209q0 109 -90 158t-217 49h-49v158 q113 10 218.5 95t105.5 185q0 59 -42 96t-106 37q-109 0 -229 -88z" />
-<glyph unicode="4" horiz-adv-x="1081" d="M53 41v135l582 807h192v-784h191v-158h-191v-436h-198v436h-576zM260 199h369v522z" />
-<glyph unicode="5" horiz-adv-x="827" d="M63 -238q199 -16 338.5 54.5t139.5 228.5q0 70 -29 124t-69 85t-107.5 55.5t-115.5 33.5t-126 22v602h602v-164h-407v-299q207 -49 335 -152.5t128 -296.5q0 -223 -189.5 -345t-480.5 -105z" />
-<glyph unicode="6" horiz-adv-x="1052" d="M88 567q0 156 48 298.5t139.5 258t239 187t333.5 80.5l14 -162q-238 -16 -372 -141t-175 -318q88 115 265 115q184 0 291.5 -126t107.5 -308q0 -193 -117 -334.5t-319 -141.5q-219 0 -337 170t-118 422zM297 586q0 -190 67.5 -317.5t190.5 -127.5q100 0 157.5 81 t57.5 206q0 70 -16.5 129t-69.5 109.5t-141 50.5q-137 0 -246 -109v-22z" />
-<glyph unicode="7" horiz-adv-x="942" d="M57 784v183h836v-127q-221 -551 -578 -1250l-196 43q301 557 540 1151h-602z" />
-<glyph unicode="8" horiz-adv-x="1050" d="M94 334q0 119 75 207t206 174q-207 166 -207 344q0 145 107.5 238.5t271.5 93.5q158 0 261 -86t103 -228q0 -106 -60 -187t-169 -157q129 -88 200.5 -175t71.5 -204q0 -154 -122.5 -266.5t-311.5 -112.5q-178 0 -302 101.5t-124 257.5zM279 344q0 -88 69.5 -146.5 t163.5 -58.5q96 0 167 58.5t71 142.5q0 51 -38 104.5t-80 87t-124 89.5q-113 -74 -171 -136.5t-58 -140.5zM375 1071q0 -119 174 -246q176 125 176 242q0 76 -52 118t-126 42t-123 -42t-49 -114z" />
-<glyph unicode="9" horiz-adv-x="1060" d="M96 524q0 188 116 327.5t314 139.5q219 0 337 -170t118 -420q0 -154 -48 -292t-139.5 -250.5t-238.5 -182t-334 -77.5l-14 161q240 14 374 137t175 310q-88 -115 -267 -115q-180 0 -286.5 127t-106.5 305zM305 553q0 -51 9.5 -97t32 -93.5t69.5 -75t112 -27.5 q137 0 244 107v6q0 199 -66.5 325.5t-191.5 126.5q-96 0 -152.5 -77.5t-56.5 -194.5z" />
-<glyph unicode=":" horiz-adv-x="561" d="M143 112.5q0 57.5 40 98.5t98 41q59 0 99 -40t40 -99q0 -57 -41 -97.5t-98.5 -40.5t-97.5 40t-40 97.5zM143 798.5q0 57.5 40 97.5t97.5 40t98.5 -40t41 -97.5t-41 -98.5t-98.5 -41t-97.5 41t-40 98.5z" />
-<glyph unicode=";" horiz-adv-x="552" d="M104 -289q90 82 111 119q27 47 27 111q0 102 -107 254l197 63q84 -111 84 -238q0 -207 -232 -393zM139 796.5q0 57.5 40 98.5t97.5 41t98.5 -41t41 -98.5t-41 -97.5t-98.5 -40t-97.5 40t-40 97.5z" />
-<glyph unicode="&#x3c;" horiz-adv-x="1064" d="M59 467v94l873 469l35 -151l-699 -365l699 -383l-35 -151z" />
-<glyph unicode="=" horiz-adv-x="1064" d="M78 252v147h909v-147h-909zM78 627v147h909v-147h-909z" />
-<glyph unicode="&#x3e;" horiz-adv-x="1064" d="M96 131l699 383l-699 365l37 151l873 -469v-94l-873 -487z" />
-<glyph unicode="?" horiz-adv-x="757" d="M90 1262l45 186q23 -6 59.5 -18.5t132 -54.5t168 -87t132 -115.5t59.5 -144.5q0 -53 -32.5 -106.5t-79 -103.5t-91.5 -104.5t-77.5 -129t-32.5 -156.5h-164q-6 27 -6 59q0 88 39 173t87 138.5t87 111t39 94.5q0 57 -91.5 121.5t-183.5 99.5zM158 112.5q0 57.5 41 98.5 t98 41t98 -41t41 -98.5t-41 -97.5t-98 -40t-98 40t-41 97.5z" />
-<glyph unicode="@" horiz-adv-x="1736" d="M82 397q0 217 102.5 404.5t295 304.5t433.5 117q322 0 524.5 -192.5t202.5 -483.5q0 -133 -49 -252t-153 -191q-35 -25 -84 -45t-81 -29.5t-113 -27.5l-116 -27q-20 84 -32 150q-33 -61 -104.5 -105.5t-151.5 -44.5q-129 0 -215 107.5t-86 284.5q0 246 168 397t399 151 l152 -12v-584l16 -167q143 12 215 115.5t72 258.5q0 242 -151.5 401.5t-410.5 159.5q-295 0 -482 -204.5t-187 -487.5q0 -264 163.5 -436t383.5 -184l-25 -137q-293 14 -489.5 233t-196.5 526zM657 379q0 -102 37 -172t103 -70q100 0 182 131v498q-139 0 -230.5 -113.5 t-91.5 -273.5z" />
-<glyph unicode="A" horiz-adv-x="1282" d="M20 0l521 1376h200l521 -1376h-218l-135 365h-544l-134 -365h-211zM430 541h416l-209 565z" />
-<glyph unicode="B" horiz-adv-x="1216" d="M186 0v1366h402q244 0 353.5 -95t109.5 -233q0 -174 -164 -301q238 -98 237 -340q0 -180 -130 -288.5t-337 -108.5h-471zM397 176h230q137 0 205.5 58.5t68.5 159t-68.5 159.5t-205.5 59h-230v-436zM397 786h299q6 2 14.5 8.5t31 26t40 43t31.5 61.5t14 79 q0 186 -270 186h-160v-404z" />
-<glyph unicode="C" horiz-adv-x="1380" d="M92 667.5q0 309.5 206 516.5t542 207q127 0 242.5 -29t166.5 -57l51 -29l-81 -184q-16 12 -48 31.5t-134.5 52t-209.5 32.5q-240 0 -377 -152.5t-137 -369.5q0 -229 146.5 -378.5t367.5 -149.5q106 0 208 33.5t149 66.5l49 33l86 -158l-23 -17q-14 -11 -63 -38 t-103.5 -47.5t-140.5 -38t-176 -17.5q-309 0 -515 191.5t-206 501z" />
-<glyph unicode="D" horiz-adv-x="1484" d="M186 0v1366h447q145 0 275 -36t241 -111.5t175.5 -207.5t64.5 -306q0 -336 -227.5 -520.5t-606.5 -184.5h-369zM397 176h138q326 0 478 140.5t152 371.5q0 233 -144 367.5t-417 134.5h-207v-1014z" />
-<glyph unicode="E" horiz-adv-x="1116" d="M186 0v1366h832v-176h-621v-406h490v-178h-490v-430h627v-176h-838z" />
-<glyph unicode="F" horiz-adv-x="1064" d="M186 0v1366h820v-176h-609v-414h482v-182h-482v-594h-211z" />
-<glyph unicode="G" horiz-adv-x="1437" d="M92 662q0 303 204 516t552 213q258 0 450 -99l9 -4l-82 -182q-18 12 -52 28.5t-135.5 45t-199.5 28.5q-248 0 -387.5 -154.5t-139.5 -375.5q0 -231 152.5 -375.5t398.5 -144.5q53 0 112.5 7t94.5 15l33 6v359h-285v176h494v-682q-270 -63 -473 -64q-319 0 -532.5 188 t-213.5 499z" />
-<glyph unicode="H" horiz-adv-x="1552" d="M186 0v1366h211v-580h758v580h209v-1366h-209v608h-758v-608h-211z" />
-<glyph unicode="I" horiz-adv-x="585" d="M186 0v1366h211v-1366h-211z" />
-<glyph unicode="J" horiz-adv-x="585" d="M-57 -201q246 25 245 387v1180h211v-1176q0 -506 -385 -563z" />
-<glyph unicode="K" horiz-adv-x="1228" d="M186 0v1366h211v-561h33l508 561h264l-592 -641l619 -725h-273l-526 627h-33v-627h-211z" />
-<glyph unicode="L" horiz-adv-x="1067" d="M186 0v1366h211v-1190h639v-176h-850z" />
-<glyph unicode="M" horiz-adv-x="1783" d="M164 0l49 1366h303l375 -1051l379 1051h301l49 -1366h-205l-41 1118l-411 -1118h-148l-412 1126l-34 -1126h-205z" />
-<glyph unicode="N" horiz-adv-x="1529" d="M186 0v1366h213l738 -1047v1047h206v-1366h-213l-737 1034v-1034h-207z" />
-<glyph unicode="O" horiz-adv-x="1634" d="M92 680q0 184 83 344t253 263.5t395 103.5q324 0 521.5 -196t197.5 -486q0 -299 -207 -516.5t-530 -217.5q-315 0 -514 207t-199 498zM315 690q0 -209 134.5 -371.5t361.5 -162.5q229 0 368.5 161.5t139.5 374.5q0 211 -135 364.5t-366.5 153.5t-367 -154.5 t-135.5 -365.5z" />
-<glyph unicode="P" horiz-adv-x="1175" d="M186 0v1366h432q250 0 373 -118t123 -300q0 -209 -138 -329.5t-358 -120.5h-221v-498h-211zM397 674h187q307 0 307 260q0 117 -73 186.5t-234 69.5h-187v-516z" />
-<glyph unicode="Q" horiz-adv-x="1634" d="M92 680q0 184 83 344t253 263.5t393 103.5q324 0 522.5 -196t198.5 -486q0 -242 -143.5 -439.5t-380.5 -265.5q49 -63 85 -102t100.5 -91.5t146.5 -77.5q76 -24 165 -24h15l-31 -190q-11 0 -22 -1q-61 0 -118 10q-67 11 -123 36.5t-98 49.5t-85 64l-64 61q-20 19 -56 62 t-40 47l-62 72q-41 49 -124 62q-279 37 -447 234.5t-168 463.5zM315 690q0 -211 133.5 -373.5t362.5 -162.5t369.5 162.5t140.5 377.5q0 207 -135 361.5t-366.5 154.5t-368 -155.5t-136.5 -364.5z" />
-<glyph unicode="R" horiz-adv-x="1249" d="M186 0v1366h402q250 0 372.5 -110.5t122.5 -278.5q0 -131 -74.5 -228.5t-187.5 -150.5l402 -598h-250l-365 549h-211v-549h-211zM397 725h187q119 0 197.5 63.5t78.5 174.5q0 100 -73.5 163.5t-233.5 63.5h-156v-465z" />
-<glyph unicode="S" horiz-adv-x="1048" d="M90 90l60 193q16 -14 46.5 -35t122 -54.5t179.5 -33.5q104 0 174.5 47t70.5 129q0 66 -47 120t-116 90l-152 82q-82 46 -151.5 92t-116.5 124t-47 174q0 160 122.5 266.5t333.5 106.5q184 0 359 -62l-43 -192q-156 70 -318 69q-106 0 -173.5 -44t-67.5 -122 q0 -66 47 -120t116.5 -88.5t151.5 -79.5t151.5 -92.5t116.5 -127t47 -180.5q0 -176 -132 -276.5t-328 -100.5q-106 0 -208 29t-149 57z" />
-<glyph unicode="T" horiz-adv-x="1220" d="M35 1190v176h1151v-176h-473v-1190h-209v1190h-469z" />
-<glyph unicode="U" horiz-adv-x="1466" d="M170 500v866h211v-836q0 -193 96 -283.5t258 -90.5q160 0 256 92t96 272v846h209v-838q0 -260 -160.5 -406.5t-402.5 -146.5q-252 0 -407.5 128.5t-155.5 396.5z" />
-<glyph unicode="V" horiz-adv-x="1220" d="M20 1366h224l370 -1063l371 1063h215l-489 -1376h-203z" />
-<glyph unicode="W" horiz-adv-x="1957" d="M45 1366h217l313 -1071l312 1071h190l309 -1073l316 1073h211l-416 -1376h-215l-303 1014l-303 -1014h-217z" />
-<glyph unicode="X" horiz-adv-x="1239" d="M43 0l453 680l-453 686h248l332 -516l331 516h242l-453 -682l453 -684h-248l-332 516l-331 -516h-242z" />
-<glyph unicode="Y" horiz-adv-x="1208" d="M8 1366h248l350 -575l357 575h237l-489 -780v-586h-211v584z" />
-<glyph unicode="Z" horiz-adv-x="1187" d="M74 0v125l741 1065h-700v176h970v-125l-731 -1065h750v-176h-1030z" />
-<glyph unicode="[" horiz-adv-x="589" d="M164 -324v1690h391v-127h-236v-1436h236v-127h-391z" />
-<glyph unicode="\" horiz-adv-x="950" d="M66 1366h157l682 -1767h-160z" />
-<glyph unicode="]" horiz-adv-x="587" d="M33 -205h237v1452h-237v119h391v-1690h-391v119z" />
-<glyph unicode="^" horiz-adv-x="991" d="M-4 512l438 879h121l438 -879h-168l-331 668l-332 -668h-166z" />
-<glyph unicode="_" horiz-adv-x="1081" d="M29 -76h1024v-129h-1024v129z" />
-<glyph unicode="`" horiz-adv-x="1038" d="M311 1438h205l209 -336l-113 -64z" />
-<glyph unicode="a" horiz-adv-x="980" d="M66 213q0 285 548 356v17q0 43 -1 64.5t-8 53t-21.5 47t-42 26.5t-68.5 11q-68 0 -140.5 -26.5t-111.5 -52.5l-41 -27l-53 152q18 12 51 31.5t137.5 52t212.5 32.5q162 0 225.5 -68.5t63.5 -228.5v-391q0 -51 25.5 -79.5t50.5 -32.5l27 -5l-62 -159q-180 12 -227 143 q-18 -29 -48 -58.5t-99.5 -62.5t-151.5 -33q-121 0 -193.5 67t-72.5 171zM274 227q0 -92 109 -92t231 144v159q-340 -51 -340 -211z" />
-<glyph unicode="b" horiz-adv-x="1079" d="M139 20v1412l203 32v-618q92 104 250 104q186 0 294.5 -129t108.5 -325q0 -217 -134 -369t-384 -152q-145 0 -338 45zM342 150q63 -20 139 -21q137 0 221 92t84 260q0 143 -62 224t-165 81q-111 0 -217 -96v-540z" />
-<glyph unicode="c" horiz-adv-x="944" d="M80 451q0 203 134 351t353 148q90 0 169 -24.5t112 -48.5l35 -25l-80 -152q-96 86 -232 86q-125 0 -202.5 -91t-77.5 -234q0 -139 75.5 -229.5t202.5 -90.5q141 4 248 97l66 -144q-12 -12 -36 -32.5t-109 -53.5t-183 -33q-213 0 -344 135.5t-131 340.5z" />
-<glyph unicode="d" horiz-adv-x="1099" d="M82 434q0 213 131 364.5t365 151.5q92 0 172 -30v512l202 32v-1179q0 -49 10.5 -121t20.5 -119l10 -45l-194 -14q-18 76 -29 141q-94 -152 -291 -152q-178 0 -287.5 132t-109.5 327zM295 446q0 -143 60.5 -226t158.5 -83q135 0 236 150v381q-6 123 -162 123 q-135 0 -214 -90.5t-79 -254.5z" />
-<glyph unicode="e" horiz-adv-x="1003" d="M82 449q0 215 126 358t327 143q170 0 275 -113.5t105 -318.5l-116 -33l-506 -67q16 -129 92 -203t195 -74q70 0 140.5 29t106.5 57l37 29l58 -147q-16 -14 -46 -37t-127.5 -60t-199.5 -37q-221 0 -344 137.5t-123 336.5zM293 553l401 51q0 8 -2 20.5t-13 45t-27.5 57.5 t-51.5 45.5t-80 20.5q-94 0 -153.5 -67t-73.5 -173z" />
-<glyph unicode="f" horiz-adv-x="698" d="M51 772v109l146 53v90q0 223 113.5 348t297.5 125q72 0 139.5 -19.5t98.5 -39.5l31 -19l-80 -155q-90 66 -191 65q-90 0 -148.5 -70.5t-58.5 -222.5v-110h256v-154h-256v-772h-202v772h-146z" />
-<glyph unicode="g" horiz-adv-x="1036" d="M53 -242q0 152 236 275q-152 51 -152 131q0 90 146 172q-88 43 -136.5 119.5t-48.5 171.5q0 150 115 236.5t279 86.5q57 0 138 -19.5t130 -19.5h106q27 0 57.5 5.5t47.5 9.5l18 6l15 -162h-111q-39 0 -76 6q68 -78 68 -170q0 -143 -124 -227t-286 -84q-47 0 -67 4 q-76 -51 -76 -76q0 -33 235 -90l47 -12q63 -16 101.5 -27.5t91.5 -34t83 -47t52.5 -64.5t22.5 -89q0 -141 -148.5 -242.5t-357.5 -101.5q-166 0 -286 64t-120 179zM236 -209q0 -63 68.5 -96t166.5 -33q123 0 209 48t86 118q0 55 -58.5 84t-209.5 68q-20 6 -62 14 q-63 -35 -95 -55.5t-68.5 -62.5t-36.5 -85zM297 621q0 -74 50 -128.5t142 -54.5q86 0 140.5 47t54.5 125q0 76 -51 136.5t-144 60.5q-88 0 -140 -55t-52 -131z" />
-<glyph unicode="h" horiz-adv-x="1089" d="M143 0v1432l203 32v-694q170 180 363 180q117 0 182 -69.5t65 -212.5v-668h-202v594q0 180 -111 180q-119 0 -297 -178v-596h-203z" />
-<glyph unicode="i" d="M119 1272q0 53 37 89t90 36q55 0 92 -36t37 -89t-37 -89t-92 -36q-53 0 -90 36t-37 89zM143 0v926h203v-926h-203z" />
-<glyph unicode="j" d="M-90 -324q111 20 172 96t61 236v918h203v-895q0 -457 -375 -516zM117 1272q0 53 36.5 89t90.5 36q55 0 92 -36t37 -89t-37 -89t-92 -36q-53 0 -90 36t-37 89z" />
-<glyph unicode="k" horiz-adv-x="1011" d="M143 0v1432l203 32v-876h29l336 338h264l-422 -406l451 -520h-261l-368 438h-29v-438h-203z" />
-<glyph unicode="l" d="M143 0v1432l203 32v-1464h-203z" />
-<glyph unicode="m" horiz-adv-x="1656" d="M139 0v909l199 33v-174q166 182 358 182q188 0 230 -182q168 182 356 182q113 0 176.5 -69.5t63.5 -212.5v-668h-201v594q0 180 -106.5 180t-278.5 -168v-606h-203v594q0 180 -104 180q-115 0 -287 -172v-602h-203z" />
-<glyph unicode="n" horiz-adv-x="1085" d="M139 0v909l199 33v-176q168 184 369 184q115 0 180 -69.5t65 -212.5v-668h-202v594q0 180 -111 180q-117 0 -297 -174v-600h-203z" />
-<glyph unicode="o" horiz-adv-x="1114" d="M80 459q0 195 125 343t356 148q219 0 346 -139t127 -330q0 -88 -29.5 -175t-85 -161.5t-151.5 -122t-215 -47.5q-219 0 -346 143.5t-127 340.5zM291 477q0 -141 68.5 -240.5t199.5 -99.5q117 0 190.5 89t73.5 229q0 137 -67.5 235t-198.5 98q-119 0 -192.5 -86 t-73.5 -225z" />
-<glyph unicode="p" horiz-adv-x="1085" d="M139 -477v1386l197 33v-147q84 156 276 155q178 0 285 -132t107 -326q0 -215 -127 -366t-340 -151q-127 0 -195 50v-469zM342 240q0 -104 158 -105q133 0 212 89t79 253q0 141 -58.5 223t-154.5 82q-133 0 -236 -149v-393z" />
-<glyph unicode="q" horiz-adv-x="1079" d="M82 430q0 217 135 368.5t385 151.5l338 -45v-1349l-203 -33v555q-94 -102 -252 -103q-186 0 -294.5 129t-108.5 326zM293 444q0 -139 61.5 -219t163.5 -80q115 0 219 95v534q-66 20 -139 21q-137 0 -221 -91.5t-84 -259.5z" />
-<glyph unicode="r" horiz-adv-x="712" d="M139 0v909l199 33v-186q113 195 272 194l80 -16l-41 -205q-41 16 -82 16q-117 0 -225 -172v-573h-203z" />
-<glyph unicode="s" horiz-adv-x="823" d="M78 57l43 172q12 -10 34.5 -25.5t92 -42t135.5 -26.5q78 0 119 27.5t41 75.5q0 53 -70 98t-152.5 76.5t-152.5 101.5t-70 168q0 117 89 192.5t270 75.5q162 0 264 -51l-47 -166q-106 57 -225 58q-147 0 -148 -93q0 -43 46 -77.5t110.5 -63.5t130 -63.5t111.5 -95 t46 -142.5q0 -127 -96 -204t-264 -77q-86 0 -163 20.5t-111 41.5z" />
-<glyph unicode="t" horiz-adv-x="774" d="M55 772v111l142 51v211l198 43v-262h293v-154h-293v-469q0 -158 107 -158q27 0 59.5 11.5t52.5 23.5l48 30q27 17 28 17l51 -153l-39 -27q-25 -16 -98.5 -44t-146.5 -28q-125 0 -194.5 69t-69.5 208v520h-138z" />
-<glyph unicode="u" horiz-adv-x="1079" d="M133 254v672h203v-594q0 -180 115 -180q113 0 276 151v623h203v-641q0 -49 10 -120t21 -116l10 -47l-197 -18q-20 96 -31 163q-162 -172 -358 -172q-252 0 -252 279z" />
-<glyph unicode="v" horiz-adv-x="952" d="M27 926h213l225 -672l260 672h207l-381 -934h-189z" />
-<glyph unicode="w" horiz-adv-x="1542" d="M37 926h209l203 -701l239 701h176l217 -697l224 697h206l-331 -934h-199l-213 659l-238 -659h-196z" />
-<glyph unicode="x" horiz-adv-x="958" d="M43 0l319 463l-319 463h236l202 -308l205 308h227l-317 -459l317 -467h-227l-209 315l-213 -315h-221z" />
-<glyph unicode="y" horiz-adv-x="952" d="M23 926h215l243 -635l240 635h209l-402 -996q-156 -385 -432 -415l-63 161q98 16 177 88t122 173l49 110z" />
-<glyph unicode="z" horiz-adv-x="903" d="M80 0v123l461 639h-445v164h711v-123l-471 -639h487v-164h-743z" />
-<glyph unicode="{" horiz-adv-x="692" d="M29 475v125q45 2 81.5 16.5t61.5 46t43 61.5t29.5 82t17.5 86t9 95.5t3 87.5v84v31q0 166 117 247t311 81v-119q-94 -6 -147 -23.5t-79.5 -60.5t-34 -91t-7.5 -143q0 -457 -217 -540v-4q92 -35 154.5 -169.5t62.5 -394.5q0 -76 4 -117.5t18.5 -82.5t44 -61.5t78 -35 t123.5 -20.5v-119q-428 0 -428 328q0 279 -28 393q-55 213 -217 217z" />
-<glyph unicode="|" horiz-adv-x="479" d="M162 -461v1995h155v-1995h-155z" />
-<glyph unicode="}" horiz-adv-x="692" d="M-8 -344q76 6 123 20.5t76.5 35t44 61.5t18.5 83t4 117q0 260 62.5 394.5t154.5 169.5v4q-217 84 -217 540q0 94 -7 143.5t-34 91.5t-79 59.5t-146 23.5v119q195 0 310.5 -81t115.5 -247q0 -268 28 -377q53 -209 218 -213v-125q-45 -2 -82 -17.5t-61.5 -48t-43 -64.5 t-30 -86t-17.5 -90t-9 -99.5t-3 -89.5v-84v-31q0 -328 -426 -328v119z" />
-<glyph unicode="~" horiz-adv-x="1191" d="M123 352q0 330 274 330q80 0 141.5 -30.5t92.5 -67.5t74 -68t90 -31q133 0 133 189h145q0 -330 -274 -330q-80 0 -141.5 31t-92 67.5t-73.5 67.5t-91 31q-133 0 -133 -189h-145z" />
-<glyph unicode="&#xa0;" />
-<glyph unicode="&#xa1;" horiz-adv-x="548" d="M137 813q0 57 41 97t98.5 40t97.5 -40t40 -97t-40 -98t-98 -41q-59 0 -99 40t-40 99zM156 -465l34 963h170l31 -963h-235z" />
-<glyph unicode="&#xa2;" horiz-adv-x="944" d="M80 569q0 168 104.5 293t290.5 144l6 180h94l-6 -178q178 -12 281 -113l6 -6l-106 -133q-72 70 -185 84l-18 -537q59 2 118.5 25.5t88.5 46.5l30 22l66 -141q-12 -12 -35.5 -31.5t-102.5 -52.5t-169 -35l-6 -182h-95l7 186q-168 25 -268.5 144.5t-100.5 283.5zM285 575 q0 -92 44 -163.5t124 -96.5l16 521q-86 -20 -135 -91.5t-49 -169.5z" />
-<glyph unicode="&#xa3;" horiz-adv-x="1116" d="M78 117q6 2 14 5t31.5 18.5t42 34t36 52t21.5 72.5l23 190h-125v109h139l21 168q49 395 378 395q57 0 110.5 -12t88.5 -29.5t61.5 -36t38.5 -30.5l13 -13l-109 -133q-8 10 -24.5 25.5t-70.5 40t-112 24.5q-78 0 -122 -52t-56 -185l-16 -162h364l-12 -109h-362 q-8 -84 -25.5 -161.5t-32.5 -114.5l-12 -35q150 -63 283 -63q178 0 204 149l13 68h151q-8 -80 -26.5 -141.5t-53 -120t-97 -90t-150.5 -31.5q-86 0 -227.5 42t-196.5 42q-70 0 -162 -33z" />
-<glyph unicode="&#xa5;" horiz-adv-x="1148" d="M78 1137h221l274 -471l281 471h209l-289 -473h215v-109h-280l-35 -59v-84h315v-109h-315v-303h-203v303h-295v109h295v82l-39 61h-256v109h191z" />
-<glyph unicode="&#xa6;" horiz-adv-x="497" d="M166 358h166v-733h-166v733zM166 676v733h166v-733h-166z" />
-<glyph unicode="&#xa7;" horiz-adv-x="1005" d="M57 -379l62 119q133 -96 278 -96q121 0 184.5 88t63.5 229q0 66 -10 117l-111 606q-23 131 -22 205q0 135 53 213l127 -23q-35 -76 -35 -188q0 -53 10 -115l121 -682q12 -70 13 -137q0 -193 -98.5 -317.5t-291.5 -124.5q-184 0 -338 102zM190 948q0 193 97.5 318 t290.5 125q184 0 337 -103l7 -4l-62 -119q-133 96 -278 97q-121 0 -184.5 -89.5t-63.5 -228.5q0 -68 10 -117l111 -606q20 -119 20 -205q0 -137 -51 -213l-125 23q35 82 35 188q0 53 -10 115l-121 682q-13 69 -13 137z" />
-<glyph unicode="&#xa8;" horiz-adv-x="1038" d="M199 1270q0 51 34.5 83.5t86 32.5t85 -32.5t33.5 -83.5t-33.5 -83t-85 -32t-86 33t-34.5 82zM598 1270q0 51 34 83.5t85 32.5t86 -32.5t35 -83.5q0 -49 -35 -82t-86 -33t-85 32t-34 83z" />
-<glyph unicode="&#xa9;" horiz-adv-x="1583" d="M84 682q0 293 208 500t498.5 207t498.5 -207t208 -500t-208 -500t-498.5 -207t-498.5 207t-208 500zM195 682q0 -252 173 -430t423 -178q252 0 425 178t173 430t-173.5 430t-424.5 178q-250 0 -423 -178t-173 -430zM395 678q0 170 111.5 297t306.5 127q180 0 287 -113 l8 -10l-92 -121q-8 10 -25.5 26.5t-72 43t-111.5 26.5q-111 0 -172.5 -75.5t-61.5 -186.5q0 -113 69 -191.5t183 -78.5q129 4 224 98l55 -127q-10 -12 -31.5 -32.5t-96.5 -53.5t-163 -33q-184 0 -301 116t-117 288z" />
-<glyph unicode="&#xaa;" horiz-adv-x="796" d="M88 874q0 201 387 256q0 76 -16.5 107t-75.5 31q-109 0 -213 -84l-39 125q115 80 295 80q119 0 166 -48.5t47 -158.5v-269q8 -72 74 -79l-45 -121q-143 6 -179 94q-78 -100 -208 -100q-86 0 -139.5 45.5t-53.5 121.5zM258 891q0 -63 66 -64q68 0 151 97v106 q-217 -35 -217 -139z" />
-<glyph unicode="&#xab;" horiz-adv-x="1046" d="M43 510v8q31 23 199 211l194 217l125 -35l-303 -397l303 -397l-125 -35l-166 182l-109 121l-60 66q-26 29 -36 39t-22 20zM438 510v8q29 23 197 209l199 219l122 -35l-301 -397l301 -397l-122 -35l-168 182l-109 121l-59 66q-27 29 -37.5 39t-22.5 20z" />
-<glyph unicode="&#xac;" horiz-adv-x="1171" d="M104 655v146h943v-574h-154v428h-789z" />
-<glyph unicode="&#xad;" horiz-adv-x="720" d="M111 438v156h499v-156h-499z" />
-<glyph unicode="&#xae;" horiz-adv-x="876" d="M84 1087.5q0 145.5 104.5 250t250 104.5t250 -104.5t104.5 -250t-104.5 -250t-250 -104.5t-250 104.5t-104.5 250zM156 1087.5q0 -118.5 83 -205.5t197.5 -87t199.5 87t85 205.5t-85 204.5t-199.5 86t-197.5 -86t-83 -204.5zM307 918v348h123q143 0 143 -105 q0 -66 -65 -98l106 -145h-98l-88 126h-33v-126h-88zM395 1102h41q47 0 47 51q0 53 -61 53h-27v-104z" />
-<glyph unicode="&#xaf;" horiz-adv-x="991" d="M248 1194v141h493v-141h-493z" />
-<glyph unicode="&#xb0;" horiz-adv-x="665" d="M84 1144.5q0 102.5 72.5 174.5t177 72t177.5 -72t73 -174.5t-73 -174t-177.5 -71.5t-177 71.5t-72.5 174zM193 1144.5q0 -61.5 40.5 -103.5t100 -42t99.5 42t40 103.5t-40 103.5t-99.5 42t-100 -42t-40.5 -103.5z" />
-<glyph unicode="&#xb1;" horiz-adv-x="1064" d="M84 635v145h369v363h155v-363h371v-145h-371v-375h-155v375h-369zM92 0v147h885v-147h-885z" />
-<glyph unicode="&#xb2;" horiz-adv-x="706" d="M57 856l76 74l78 76l67 68q44 46 63 74l45 65q26 38 35 71t9 66q0 57 -35 87.5t-90 30.5q-39 0 -78 -17t-59 -34l-18 -18l-84 100q10 12 31.5 30.5t91 50.5t147.5 32q121 0 191.5 -66.5t70.5 -175.5q0 -96 -65.5 -200.5t-235.5 -270.5h350v-129h-579z" />
-<glyph unicode="&#xb3;" horiz-adv-x="669" d="M45 823l66 115q78 -47 168 -47q68 0 106.5 31.5t38.5 78.5q0 57 -53.5 86t-126.5 29h-58v127q76 4 138.5 47t62.5 107q0 78 -94 78q-37 0 -76 -12.5t-57 -24.5l-21 -13l-63 105q102 82 246 82q106 0 171.5 -54.5t65.5 -136.5q0 -72 -47 -127t-117 -84q94 -20 147.5 -73.5 t53.5 -130.5q0 -104 -89 -177t-224 -73q-140 -1 -238 67z" />
-<glyph unicode="&#xb4;" horiz-adv-x="1050" d="M313 1102l209 336h205l-301 -400z" />
-<glyph unicode="&#xb5;" horiz-adv-x="1173" d="M139 -442q20 199 21 362v1006h200v-594q0 -180 117 -180q111 0 277 151v623h202v-666q0 -84 22.5 -103.5t111.5 -19.5v-151q-72 -10 -113 -11q-106 0 -153.5 43t-59.5 121q-164 -164 -352 -164q-49 0 -93 13q4 -86 20.5 -240t16.5 -190h-217z" />
-<glyph unicode="&#x3bc;" horiz-adv-x="1173" d="M139 -442q20 199 21 362v1006h200v-594q0 -180 117 -180q111 0 277 151v623h202v-666q0 -84 22.5 -103.5t111.5 -19.5v-151q-72 -10 -113 -11q-106 0 -153.5 43t-59.5 121q-164 -164 -352 -164q-49 0 -93 13q4 -86 20.5 -240t16.5 -190h-217z" />
-<glyph unicode="&#xb6;" horiz-adv-x="1366" d="M68 864q0 203 154.5 352.5t430.5 149.5h613v-125h-152v-1241h-135v1241h-154v-1282q0 -444 -366 -444l-31 137q133 0 193.5 73.5t60.5 241.5v400h-18q-291 0 -443.5 145t-152.5 352z" />
-<glyph unicode="&#xb7;" horiz-adv-x="520" d="M121 520q0 57 41 98t98 41t98 -40.5t41 -98.5q0 -55 -41 -96t-98 -41t-98 41t-41 96z" />
-<glyph unicode="&#xb8;" horiz-adv-x="1038" d="M332 -422l47 107q66 -57 147 -58q45 0 73 17.5t28 44.5q0 23 -27 41t-57.5 30.5t-57 36t-26.5 56.5q0 25 35 104l22 43h111l-17 -37q-20 -41 -20 -61q0 -23 27.5 -40.5t60.5 -29.5t60.5 -45t27.5 -80q0 -78 -66.5 -135t-169.5 -57q-53 0 -102 15t-72 32z" />
-<glyph unicode="&#xb9;" horiz-adv-x="606" d="M66 770v121h180v586h-164v120h326v-706h167v-121h-509z" />
-<glyph unicode="&#xba;" horiz-adv-x="860" d="M84 1044q0 135 91 240t259 105q160 0 252 -97.5t92 -230.5q0 -135 -91 -244.5t-259 -109.5q-160 0 -252 100t-92 237zM256 1059q0 -96 45 -164t131 -68q78 0 126 60.5t48 154.5q0 92 -44 159t-132 67q-78 0 -126 -58.5t-48 -150.5z" />
-<glyph unicode="&#xbb;" horiz-adv-x="1046" d="M90 117l303 397l-303 397l125 35q360 -399 379 -418q6 -4 14 -10v-8q-12 -10 -22.5 -20.5t-35.5 -38.5l-60 -66l-109 -121l-166 -182zM485 117l303 397l-303 397l125 35q360 -401 396 -428v-8q-12 -10 -22.5 -20.5l-38.5 -39.5l-59 -66l-109 -120l-167 -182z" />
-<glyph unicode="&#xbc;" horiz-adv-x="1701" d="M94 545v121h180v585h-163v121h325v-706h168v-121h-510zM389 0l813 1411l125 -49l-782 -1362h-156zM973 301l373 533h165v-508h119v-125h-119v-201h-155v201h-371zM1126 326h230v325z" />
-<glyph unicode="&#xbd;" horiz-adv-x="1806" d="M92 545v121h180v585h-163v121h325v-706h168v-121h-510zM408 0l813 1411l125 -49l-783 -1362h-155zM1143 86l76 74l77 76l67 68q44 46 63 74l45 65q26 38 35.5 71t9.5 66q0 57 -35 87.5t-90 30.5q-39 0 -78 -17t-60 -34l-18 -18l-84 100q10 12 31.5 30.5t91 50.5t147.5 32 q121 0 191.5 -66.5t70.5 -175.5q0 -96 -65.5 -200.5t-235.5 -270.5h351v-129h-580z" />
-<glyph unicode="&#xbe;" horiz-adv-x="1695" d="M78 598l65 115q78 -47 168 -47q68 0 107 31.5t39 78.5q0 57 -53.5 86t-127.5 29h-57v127q76 4 138.5 47t62.5 106q0 78 -94 78q-37 0 -76 -12t-57 -25l-21 -12l-63 105q102 82 245 81q106 0 172 -54t66 -136q0 -72 -47 -127t-117 -84q94 -20 147.5 -73.5t53.5 -131.5 q0 -104 -89 -177t-225 -73q-139 0 -237 68zM383 0l813 1411l125 -49l-782 -1362h-156zM967 301l372 533h166v-508h119v-125h-119v-201h-155v201h-371zM1120 326h230v325z" />
-<glyph unicode="&#xbf;" horiz-adv-x="743" d="M70 -82q0 49 32.5 101.5t77.5 100.5l91 100q46 52 79 125t33 153h164q6 -27 6 -60q0 -84 -39 -166t-87 -133t-87 -105t-39 -91q0 -57 91 -122t181 -100l93 -36l-45 -187q-23 6 -60 18.5t-132 54.5t-168 87t-132 115.5t-59 144.5zM319 813q0 57 41 97t98.5 40t98.5 -40 t41 -97t-41 -98t-98.5 -41t-98.5 41t-41 98z" />
-<glyph unicode="&#xc0;" horiz-adv-x="1282" d="M20 0l521 1376h200l521 -1376h-218l-135 365h-544l-134 -365h-211zM358 1606l68 166l416 -195l-43 -115zM430 541h416l-209 565z" />
-<glyph unicode="&#xc1;" horiz-adv-x="1282" d="M20 0l521 1376h200l521 -1376h-218l-135 365h-544l-134 -365h-211zM430 541h416l-209 565zM434 1577l416 195l68 -166l-441 -144z" />
-<glyph unicode="&#xc2;" horiz-adv-x="1282" d="M20 0l521 1376h200l521 -1376h-218l-135 365h-544l-134 -365h-211zM297 1552l258 232h168l256 -232l-111 -82l-229 191l-233 -191zM430 541h416l-209 565z" />
-<glyph unicode="&#xc3;" horiz-adv-x="1282" d="M20 0l521 1376h200l521 -1376h-218l-135 365h-544l-134 -365h-211zM266 1495q4 2 0 26.5t7.5 64.5t28.5 78t64.5 64.5t112.5 26.5q72 0 129.5 -33.5t100.5 -66.5t82 -33q80 16 79 131h142q-4 -2 0 -27.5t-8.5 -66.5t-31 -79t-66.5 -65.5t-115 -27.5q-72 0 -127.5 33.5 t-95.5 67.5t-79 34q-82 -16 -83 -127h-140zM430 541h416l-209 565z" />
-<glyph unicode="&#xc4;" horiz-adv-x="1282" d="M20 0l521 1376h200l521 -1376h-218l-135 365h-544l-134 -365h-211zM272 1624q0 51 35 85t88 34q49 0 84 -34t35 -85q0 -49 -35 -83t-84 -34q-51 0 -87 34t-36 83zM430 541h416l-209 565zM762 1624q0 51 34.5 85t86 34t86.5 -34t35 -85q0 -49 -35 -83t-86.5 -34t-86 34 t-34.5 83z" />
-<glyph unicode="&#xc5;" horiz-adv-x="1282" d="M20 0l521 1376h200l521 -1376h-218l-135 365h-544l-134 -365h-211zM430 541h416l-209 565zM438 1622q0 66 51.5 114t147.5 48t147.5 -48t51.5 -114q0 -72 -50.5 -120t-148.5 -48t-148.5 48t-50.5 120zM543 1620q0 -39 24.5 -65.5t69.5 -26.5q43 0 69.5 27.5t26.5 64.5 q0 35 -24.5 61.5t-71.5 26.5t-70.5 -25.5t-23.5 -62.5z" />
-<glyph unicode="&#xc6;" horiz-adv-x="1802" d="M-12 0l766 1366h948v-176h-621v-406h490v-178h-490v-430h627v-176h-836v422h-426l-233 -422h-225zM543 598h329v592z" />
-<glyph unicode="&#xc7;" horiz-adv-x="1384" d="M94 668q0 309 206 516t542 207q127 0 242.5 -29t166.5 -57l52 -29l-82 -184q-16 12 -48 31.5t-134.5 52t-209.5 32.5q-240 0 -377 -152.5t-137 -369.5q0 -229 146.5 -378.5t367.5 -149.5q106 0 208 33.5t151 66.5l47 33l86 -158l-22 -16q-13 -10 -62 -38t-103.5 -48.5 t-139.5 -38t-175 -17.5l-4 -12q-20 -41 -20 -61q0 -23 27.5 -40.5t60 -29.5t60.5 -45t28 -80q0 -78 -66.5 -135t-169.5 -57q-53 0 -102 15t-72 32l-24 16l47 107q66 -57 147 -58q45 0 72.5 17.5t27.5 44.5q0 23 -26.5 41t-57 30.5t-57 36t-26.5 56.5q0 25 34 104l13 25 q-270 31 -443.5 217t-173.5 469z" />
-<glyph unicode="&#xc8;" horiz-adv-x="1116" d="M186 0v1366h832v-176h-621v-406h490v-178h-490v-430h627v-176h-838zM334 1606l67 166l416 -195l-43 -115z" />
-<glyph unicode="&#xc9;" horiz-adv-x="1116" d="M186 0v1366h832v-176h-621v-406h490v-178h-490v-430h627v-176h-838zM410 1577l415 195l68 -166l-440 -144z" />
-<glyph unicode="&#xca;" horiz-adv-x="1116" d="M186 0v1366h832v-176h-621v-406h490v-178h-490v-430h627v-176h-838zM272 1552l258 232h168l256 -232l-110 -82l-230 191l-233 -191z" />
-<glyph unicode="&#xcb;" horiz-adv-x="1116" d="M186 0v1366h832v-176h-621v-406h490v-178h-490v-430h627v-176h-838zM248 1624q0 51 34.5 85t88.5 34q49 0 83.5 -34t34.5 -85q0 -49 -34.5 -83t-83.5 -34q-51 0 -87 34t-36 83zM737 1624q0 51 35 85t86 34t86 -34t35 -85q0 -49 -35 -83t-86 -34t-86 34t-35 83z" />
-<glyph unicode="&#xcc;" horiz-adv-x="585" d="M14 1606l68 166l416 -195l-43 -115zM186 0v1366h211v-1366h-211z" />
-<glyph unicode="&#xcd;" horiz-adv-x="585" d="M90 1577l416 195l67 -166l-440 -144zM186 0v1366h211v-1366h-211z" />
-<glyph unicode="&#xce;" horiz-adv-x="585" d="M-47 1552l258 232h168l256 -232l-111 -82l-229 191l-234 -191zM186 0v1366h211v-1366h-211z" />
-<glyph unicode="&#xcf;" horiz-adv-x="585" d="M-23 1626q0 51 35 84t86.5 33t85 -33t33.5 -84t-33.5 -83t-85 -32t-86.5 33t-35 82zM186 0v1366h211v-1366h-211zM377 1626q0 51 33.5 84t85 33t86 -33t34.5 -84q0 -49 -34.5 -82t-86 -33t-85 32t-33.5 83z" />
-<glyph unicode="&#xd0;" horiz-adv-x="1507" d="M63 608v170h148v588h444q145 0 275.5 -36t241 -111.5t175 -207.5t64.5 -306q0 -336 -227.5 -520.5t-605.5 -184.5h-367v608h-148zM420 176h137q326 0 478.5 140.5t152.5 372t-145.5 366.5t-415.5 135h-207v-412h338v-170h-338v-432z" />
-<glyph unicode="&#xd1;" horiz-adv-x="1529" d="M186 0v1366h213l738 -1047v1047h206v-1366h-213l-737 1034v-1034h-207zM393 1495q4 2 0 26.5t7.5 64.5t28.5 78t64.5 64.5t112.5 26.5q72 0 129.5 -33.5t100.5 -66.5t82 -33q80 16 79 131h142q-4 -2 0 -27.5t-8.5 -66.5t-31 -79t-66.5 -65.5t-115 -27.5 q-72 0 -127.5 33.5t-95.5 67.5t-79 34q-82 -16 -84 -127h-139z" />
-<glyph unicode="&#xd2;" horiz-adv-x="1634" d="M92 680q0 184 83 344t253 263.5t395 103.5q324 0 521.5 -196t197.5 -486q0 -299 -207 -516.5t-530 -217.5q-315 0 -514 207t-199 498zM315 690q0 -209 134.5 -371.5t361.5 -162.5q229 0 368.5 161.5t139.5 374.5q0 211 -135 364.5t-366.5 153.5t-367 -154.5 t-135.5 -365.5zM537 1606l67 166l416 -195l-43 -115z" />
-<glyph unicode="&#xd3;" horiz-adv-x="1634" d="M92 680q0 184 83 344t253 263.5t395 103.5q324 0 521.5 -196t197.5 -486q0 -299 -207 -516.5t-530 -217.5q-315 0 -514 207t-199 498zM315 690q0 -209 134.5 -371.5t361.5 -162.5q229 0 368.5 161.5t139.5 374.5q0 211 -135 364.5t-366.5 153.5t-367 -154.5 t-135.5 -365.5zM612 1577l416 195l68 -166l-441 -144z" />
-<glyph unicode="&#xd4;" horiz-adv-x="1634" d="M92 680q0 184 83 344t253 263.5t395 103.5q324 0 521.5 -196t197.5 -486q0 -299 -207 -516.5t-530 -217.5q-315 0 -514 207t-199 498zM315 690q0 -209 134.5 -371.5t361.5 -162.5q229 0 368.5 161.5t139.5 374.5q0 211 -135 364.5t-366.5 153.5t-367 -154.5 t-135.5 -365.5zM475 1552l258 232h168l256 -232l-110 -82l-230 191l-233 -191z" />
-<glyph unicode="&#xd5;" horiz-adv-x="1634" d="M92 680q0 184 83 344t253 263.5t395 103.5q324 0 521.5 -196t197.5 -486q0 -299 -207 -516.5t-530 -217.5q-315 0 -514 207t-199 498zM315 690q0 -209 134.5 -371.5t361.5 -162.5q229 0 368.5 161.5t139.5 374.5q0 211 -135 364.5t-366.5 153.5t-367 -154.5 t-135.5 -365.5zM444 1495q4 2 0 26.5t7.5 64.5t29 78t64.5 64.5t112 26.5q72 0 129.5 -33.5t100.5 -66.5t82 -33q80 16 80 131h141q-4 -2 0 -27.5t-8.5 -66.5t-30.5 -79t-66.5 -65.5t-115.5 -27.5q-72 0 -127.5 33.5t-95 67.5t-78.5 34q-82 -16 -84 -127h-140z" />
-<glyph unicode="&#xd6;" horiz-adv-x="1634" d="M92 680q0 184 83 344t253 263.5t395 103.5q324 0 521.5 -196t197.5 -486q0 -299 -207 -516.5t-530 -217.5q-315 0 -514 207t-199 498zM315 690q0 -209 134.5 -371.5t361.5 -162.5q229 0 368.5 161.5t139.5 374.5q0 211 -135 364.5t-366.5 153.5t-367 -154.5 t-135.5 -365.5zM451 1624q0 51 34.5 85t87.5 34q49 0 84 -34t35 -85q0 -49 -34.5 -83t-84.5 -34q-51 0 -86.5 34t-35.5 83zM940 1624q0 51 35 85t86 34t86 -34t35 -85q0 -49 -35 -83t-86 -34t-86 34t-35 83z" />
-<glyph unicode="&#xd7;" horiz-adv-x="1064" d="M78 150l354 364l-354 367l98 102l356 -367l357 367l98 -102l-356 -367l356 -364l-100 -103l-355 365l-354 -365z" />
-<glyph unicode="&#xd8;" horiz-adv-x="1634" d="M92 680q0 184 83 344t253 263.5t395 103.5q213 0 381 -95l99 131h145l-148 -194q115 -94 178.5 -230.5t63.5 -293.5q0 -299 -207 -516.5t-530 -217.5q-211 0 -383 103l-107 -139h-147l160 208q-236 207 -236 533zM315 690q0 -221 138 -377l630 826q-117 72 -266 71 q-231 0 -366.5 -155.5t-135.5 -364.5zM541 236q119 -80 270 -80q229 0 368.5 161.5t139.5 374.5q0 223 -145 375z" />
-<glyph unicode="&#xd9;" horiz-adv-x="1466" d="M170 500v866h211v-836q0 -193 96 -283.5t258 -90.5q160 0 256 92t96 272v846h209v-838q0 -260 -160.5 -406.5t-402.5 -146.5q-252 0 -407.5 128.5t-155.5 396.5zM453 1606l67 166l416 -195l-43 -115z" />
-<glyph unicode="&#xda;" horiz-adv-x="1466" d="M170 500v866h211v-836q0 -193 96 -283.5t258 -90.5q160 0 256 92t96 272v846h209v-838q0 -260 -160.5 -406.5t-402.5 -146.5q-252 0 -407.5 128.5t-155.5 396.5zM528 1577l416 195l68 -166l-441 -144z" />
-<glyph unicode="&#xdb;" horiz-adv-x="1466" d="M170 500v866h211v-836q0 -193 96 -283.5t258 -90.5q160 0 256 92t96 272v846h209v-838q0 -260 -160.5 -406.5t-402.5 -146.5q-252 0 -407.5 128.5t-155.5 396.5zM391 1552l258 232h168l256 -232l-110 -82l-230 191l-233 -191z" />
-<glyph unicode="&#xdc;" horiz-adv-x="1466" d="M170 500v866h211v-836q0 -193 96 -283.5t258 -90.5q160 0 256 92t96 272v846h209v-838q0 -260 -160.5 -406.5t-402.5 -146.5q-252 0 -407.5 128.5t-155.5 396.5zM367 1624q0 51 34.5 85t87.5 34q49 0 84 -34t35 -85q0 -49 -34.5 -83t-84.5 -34q-51 0 -86.5 34t-35.5 83z M856 1624q0 51 35 85t86 34t86 -34t35 -85q0 -49 -35 -83t-86 -34t-86 34t-35 83z" />
-<glyph unicode="&#xdd;" horiz-adv-x="1208" d="M8 1366h248l350 -575l357 575h237l-489 -780v-586h-211v584zM408 1577l415 195l68 -166l-440 -144z" />
-<glyph unicode="&#xde;" horiz-adv-x="1169" d="M186 0v1366h211v-297h248q242 0 353.5 -104.5t111.5 -268.5q0 -190 -126 -297.5t-339 -107.5h-248v-291h-211zM397 467h213q276 0 277 215q0 211 -277 211h-213v-426z" />
-<glyph unicode="&#xdf;" horiz-adv-x="1185" d="M51 772v109l146 53v76q0 223 108.5 345t310.5 122q172 0 269.5 -84t97.5 -209q0 -66 -29.5 -126.5t-65.5 -99t-65.5 -91t-29.5 -99.5q0 -53 34.5 -99t84.5 -85l101 -81q50 -42 85 -104.5t35 -136.5q0 -129 -97.5 -208t-261.5 -79q-158 0 -252 66l35 168q92 -74 211 -74 q72 0 113 34t41 89q0 47 -34 89t-81 77t-94 74t-81 99t-34 136q0 72 28.5 133.5t62.5 98t62.5 89t28.5 105.5q0 76 -51 116t-123 40q-96 0 -151.5 -73t-55.5 -224v-1018h-202v772h-146z" />
-<glyph unicode="&#xe0;" horiz-adv-x="980" d="M66 213q0 285 548 356v17q0 43 -1 64.5t-8 53t-21.5 47t-42 26.5t-68.5 11q-68 0 -140.5 -26.5t-111.5 -52.5l-41 -27l-53 152q18 12 51 31.5t137.5 52t212.5 32.5q162 0 225.5 -68.5t63.5 -228.5v-391q0 -51 25.5 -79.5t50.5 -32.5l27 -5l-62 -159q-180 12 -227 143 q-18 -29 -48 -58.5t-99.5 -62.5t-151.5 -33q-121 0 -193.5 67t-72.5 171zM160 1438h205l208 -336l-112 -64zM274 227q0 -92 109 -92t231 144v159q-340 -51 -340 -211z" />
-<glyph unicode="&#xe1;" horiz-adv-x="980" d="M66 213q0 285 548 356v17q0 43 -1 64.5t-8 53t-21.5 47t-42 26.5t-68.5 11q-68 0 -140.5 -26.5t-111.5 -52.5l-41 -27l-53 152q18 12 51 31.5t137.5 52t212.5 32.5q162 0 225.5 -68.5t63.5 -228.5v-391q0 -51 25.5 -79.5t50.5 -32.5l27 -5l-62 -159q-180 12 -227 143 q-18 -29 -48 -58.5t-99.5 -62.5t-151.5 -33q-121 0 -193.5 67t-72.5 171zM274 227q0 -92 109 -92t231 144v159q-340 -51 -340 -211zM365 1102l208 336h205l-301 -400z" />
-<glyph unicode="&#xe2;" horiz-adv-x="980" d="M66 213q0 285 548 356v17q0 43 -1 64.5t-8 53t-21.5 47t-42 26.5t-68.5 11q-68 0 -140.5 -26.5t-111.5 -52.5l-41 -27l-53 152q18 12 51 31.5t137.5 52t212.5 32.5q162 0 225.5 -68.5t63.5 -228.5v-391q0 -51 25.5 -79.5t50.5 -32.5l27 -5l-62 -159q-180 12 -227 143 q-18 -29 -48 -58.5t-99.5 -62.5t-151.5 -33q-121 0 -193.5 67t-72.5 171zM170 1092l233 346h132l231 -348l-119 -54l-180 250l-178 -250zM274 227q0 -92 109 -92t231 144v159q-340 -51 -340 -211z" />
-<glyph unicode="&#xe3;" horiz-adv-x="980" d="M66 213q0 285 548 356v17q0 43 -1 64.5t-8 53t-21.5 47t-42 26.5t-68.5 11q-68 0 -140.5 -26.5t-111.5 -52.5l-41 -27l-53 152q18 12 51 31.5t137.5 52t212.5 32.5q162 0 225.5 -68.5t63.5 -228.5v-391q0 -51 25.5 -79.5t50.5 -32.5l27 -5l-62 -159q-180 12 -227 143 q-18 -29 -48 -58.5t-99.5 -62.5t-151.5 -33q-121 0 -193.5 67t-72.5 171zM145 1126q4 2 0 28t6.5 67t26 78.5t56 65.5t100.5 28q53 0 96 -25t65.5 -53.5t50 -53t52.5 -24.5q66 10 66 143h131q-4 -2 0 -28.5t-7.5 -68.5t-27 -81t-58.5 -67.5t-102 -28.5q-53 0 -95 24.5 t-63.5 54t-48 54.5t-53.5 25q-63 -8 -64 -138h-131zM274 227q0 -92 109 -92t231 144v159q-340 -51 -340 -211z" />
-<glyph unicode="&#xe4;" horiz-adv-x="980" d="M66 213q0 285 548 356v17q0 43 -1 64.5t-8 53t-21.5 47t-42 26.5t-68.5 11q-68 0 -140.5 -26.5t-111.5 -52.5l-41 -27l-53 152q18 12 51 31.5t137.5 52t212.5 32.5q162 0 225.5 -68.5t63.5 -228.5v-391q0 -51 25.5 -79.5t50.5 -32.5l27 -5l-62 -159q-180 12 -227 143 q-18 -29 -48 -58.5t-99.5 -62.5t-151.5 -33q-121 0 -193.5 67t-72.5 171zM147 1270q0 51 35 83.5t86 32.5t85 -32.5t34 -83.5t-34 -83t-85 -32t-86 33t-35 82zM274 227q0 -92 109 -92t231 144v159q-340 -51 -340 -211zM547 1270q0 51 33.5 83.5t85 32.5t86 -32.5t34.5 -83.5 q0 -49 -34.5 -82t-86 -33t-85 32t-33.5 83z" />
-<glyph unicode="&#xe5;" horiz-adv-x="980" d="M66 213q0 285 548 356v17q0 43 -1 64.5t-8 53t-21.5 47t-42 26.5t-68.5 11q-68 0 -140.5 -26.5t-111.5 -52.5l-41 -27l-53 152q18 12 51 31.5t137.5 52t212.5 32.5q162 0 225.5 -68.5t63.5 -228.5v-391q0 -51 25.5 -79.5t50.5 -32.5l27 -5l-62 -159q-180 12 -227 143 q-18 -29 -48 -58.5t-99.5 -62.5t-151.5 -33q-121 0 -193.5 67t-72.5 171zM270 1276q0 70 50.5 121t146.5 51t146.5 -51t50.5 -121q0 -72 -50.5 -125t-146.5 -53t-146.5 53t-50.5 125zM274 227q0 -92 109 -92t231 144v159q-340 -51 -340 -211zM375 1274q0 -37 23.5 -63.5 t68.5 -26.5t70.5 26.5t25.5 63.5q0 35 -24.5 60.5t-71.5 25.5t-69.5 -24.5t-22.5 -61.5z" />
-<glyph unicode="&#xe6;" horiz-adv-x="1538" d="M66 213q0 266 565 334v49q0 68 -6.5 102.5t-39 62t-98.5 27.5q-152 0 -303 -104l-4 -2l-53 152q18 12 51 31.5t136.5 52t207.5 32.5q197 0 252 -129q117 129 297 129q170 0 274.5 -111.5t104.5 -312.5l-115 -34l-508 -64q12 -129 88 -208t197 -79q72 0 142.5 28t105.5 56 l37 29l61 -145q-16 -14 -46 -37t-127 -60t-202 -37q-262 0 -381 209q-39 -82 -129 -145.5t-219 -63.5t-208.5 67t-79.5 171zM274 227q0 -92 121 -92q92 0 161 69.5t69 172.5v39q-351 -46 -351 -189zM829 563l402 49q0 8 -2 19.5t-13.5 43.5t-29 55.5t-52 43t-81.5 19.5 q-92 0 -150 -64t-74 -166z" />
-<glyph unicode="&#xe7;" horiz-adv-x="944" d="M80 451q0 203 134 351t353 148q90 0 169 -24.5t112 -48.5l35 -25l-80 -152q-96 86 -232 86q-125 0 -202.5 -91t-77.5 -234q0 -139 75.5 -229.5t202.5 -90.5q141 4 248 97l66 -144q-12 -12 -36 -31.5t-108 -53.5t-182 -34l-6 -14q-20 -41 -21 -61q0 -23 28 -40.5 t60.5 -29.5t60.5 -45t28 -80q0 -78 -67 -135t-169 -57q-53 0 -102.5 16t-73.5 33l-23 14l47 107q66 -57 148 -58q45 0 72.5 17.5t27.5 44.5q0 23 -26.5 41t-57 30.5t-57.5 36t-27 55.5q0 25 35 105l15 31q-170 33 -269.5 160t-99.5 305z" />
-<glyph unicode="&#xe8;" horiz-adv-x="1003" d="M82 449q0 215 126 358t327 143q170 0 275 -113.5t105 -318.5l-116 -33l-506 -67q16 -129 92 -203t195 -74q70 0 140.5 29t106.5 57l37 29l58 -147q-16 -14 -46 -37t-127.5 -60t-199.5 -37q-221 0 -344 137.5t-123 336.5zM205 1438h205l208 -336l-112 -64zM293 553l401 51 q0 8 -2 20.5t-13 45t-27.5 57.5t-51.5 45.5t-80 20.5q-94 0 -153.5 -67t-73.5 -173z" />
-<glyph unicode="&#xe9;" horiz-adv-x="1003" d="M82 449q0 215 126 358t327 143q170 0 275 -113.5t105 -318.5l-116 -33l-506 -67q16 -129 92 -203t195 -74q70 0 140.5 29t106.5 57l37 29l58 -147q-16 -14 -46 -37t-127.5 -60t-199.5 -37q-221 0 -344 137.5t-123 336.5zM293 553l401 51q0 8 -2 20.5t-13 45t-27.5 57.5 t-51.5 45.5t-80 20.5q-94 0 -153.5 -67t-73.5 -173zM410 1102l208 336h205l-301 -400z" />
-<glyph unicode="&#xea;" horiz-adv-x="1003" d="M82 449q0 215 126 358t327 143q170 0 275 -113.5t105 -318.5l-116 -33l-506 -67q16 -129 92 -203t195 -74q70 0 140.5 29t106.5 57l37 29l58 -147q-16 -14 -46 -37t-127.5 -60t-199.5 -37q-221 0 -344 137.5t-123 336.5zM217 1092l234 346h131l231 -348l-119 -54 l-180 250l-178 -250zM293 553l401 51q0 8 -2 20.5t-13 45t-27.5 57.5t-51.5 45.5t-80 20.5q-94 0 -153.5 -67t-73.5 -173z" />
-<glyph unicode="&#xeb;" horiz-adv-x="1003" d="M82 449q0 215 126 358t327 143q170 0 275 -113.5t105 -318.5l-116 -33l-506 -67q16 -129 92 -203t195 -74q70 0 140.5 29t106.5 57l37 29l58 -147q-16 -14 -46 -37t-127.5 -60t-199.5 -37q-221 0 -344 137.5t-123 336.5zM195 1270q0 51 34.5 83.5t86 32.5t85 -32.5 t33.5 -83.5t-33.5 -83t-85 -32t-86 33t-34.5 82zM293 553l401 51q0 8 -2 20.5t-13 45t-27.5 57.5t-51.5 45.5t-80 20.5q-94 0 -153.5 -67t-73.5 -173zM594 1270q0 51 34 83.5t85 32.5t86 -32.5t35 -83.5q0 -49 -35 -82t-86 -33t-85 32t-34 83z" />
-<glyph unicode="&#xec;" d="M-63 1438h204l209 -336l-112 -64zM143 0v926h203v-926h-203z" />
-<glyph unicode="&#xed;" d="M141 1102l209 336h205l-301 -400zM143 0v926h203v-926h-203z" />
-<glyph unicode="&#xee;" d="M-53 1092l233 346h131l232 -348l-119 -54l-180 250l-178 -250zM143 0v926h203v-926h-203z" />
-<glyph unicode="&#xef;" d="M-76 1270q0 51 35 83.5t86 32.5t85 -32.5t34 -83.5t-34 -83t-85 -32t-86 33t-35 82zM143 0v926h203v-926h-203zM324 1270q0 51 33.5 83.5t85 32.5t86 -32.5t34.5 -83.5q0 -49 -34.5 -82t-86 -33t-85 32t-33.5 83z" />
-<glyph unicode="&#xf0;" horiz-adv-x="1110" d="M80 446q0 201 128 352.5t322 151.5q158 0 228 -78q-72 176 -219 304l-265 -156l-63 115l209 122q-117 70 -266 109l41 152q217 -41 395 -160l289 170l63 -115l-242 -141q147 -133 227.5 -313.5t80.5 -383.5q0 -268 -128 -434t-354 -166q-205 0 -325.5 140.5t-120.5 330.5 zM285 465q0 -127 65.5 -227.5t184.5 -100.5q121 0 197.5 102.5t76.5 317.5q0 102 -57.5 166.5t-171.5 64.5q-129 0 -212 -91t-83 -232z" />
-<glyph unicode="&#xf1;" horiz-adv-x="1085" d="M139 0v909l199 33v-176q168 184 369 184q115 0 180 -69.5t65 -212.5v-668h-202v594q0 180 -111 180q-117 0 -297 -174v-600h-203zM233 1126q4 2 0 28t6.5 67t26 78.5t56 65.5t100.5 28q53 0 96 -25t65.5 -53.5t50.5 -53t52 -24.5q66 10 66 143h131q-4 -2 0 -28.5 t-7.5 -68.5t-26.5 -81t-58 -67.5t-103 -28.5q-53 0 -95 24.5t-63.5 54t-48 54.5t-53.5 25q-63 -8 -63 -138h-132z" />
-<glyph unicode="&#xf2;" horiz-adv-x="1114" d="M80 459q0 195 125 343t356 148q219 0 346 -139t127 -330q0 -88 -29.5 -175t-85 -161.5t-151.5 -122t-215 -47.5q-219 0 -346 143.5t-127 340.5zM248 1438h205l209 -336l-113 -64zM291 477q0 -141 68.5 -240.5t199.5 -99.5q117 0 190.5 89t73.5 229q0 137 -67.5 235 t-198.5 98q-119 0 -192.5 -86t-73.5 -225z" />
-<glyph unicode="&#xf3;" horiz-adv-x="1114" d="M80 459q0 195 125 343t356 148q219 0 346 -139t127 -330q0 -88 -29.5 -175t-85 -161.5t-151.5 -122t-215 -47.5q-219 0 -346 143.5t-127 340.5zM291 477q0 -141 68.5 -240.5t199.5 -99.5q117 0 190.5 89t73.5 229q0 137 -67.5 235t-198.5 98q-119 0 -192.5 -86 t-73.5 -225zM453 1102l209 336h204l-301 -400z" />
-<glyph unicode="&#xf4;" horiz-adv-x="1114" d="M80 459q0 195 125 343t356 148q219 0 346 -139t127 -330q0 -88 -29.5 -175t-85 -161.5t-151.5 -122t-215 -47.5q-219 0 -346 143.5t-127 340.5zM260 1092l234 346h131l231 -348l-119 -54l-180 250l-178 -250zM291 477q0 -141 68.5 -240.5t199.5 -99.5q117 0 190.5 89 t73.5 229q0 137 -67.5 235t-198.5 98q-119 0 -192.5 -86t-73.5 -225z" />
-<glyph unicode="&#xf5;" horiz-adv-x="1114" d="M80 459q0 195 125 343t356 148q219 0 346 -139t127 -330q0 -88 -29.5 -175t-85 -161.5t-151.5 -122t-215 -47.5q-219 0 -346 143.5t-127 340.5zM236 1126q4 2 -0.5 28t6 67t26 78.5t56.5 65.5t100 28q53 0 96 -25t65.5 -53.5t50.5 -53t52 -24.5q66 10 66 143h131 q-4 -2 0 -28.5t-7.5 -68.5t-26.5 -81t-58 -67.5t-103 -28.5q-53 0 -95 24.5t-63.5 54t-48 54.5t-53.5 25q-63 -8 -63 -138h-131zM291 477q0 -141 68.5 -240.5t199.5 -99.5q117 0 190.5 89t73.5 229q0 137 -67.5 235t-198.5 98q-119 0 -192.5 -86t-73.5 -225z" />
-<glyph unicode="&#xf6;" horiz-adv-x="1114" d="M80 459q0 195 125 343t356 148q219 0 346 -139t127 -330q0 -88 -29.5 -175t-85 -161.5t-151.5 -122t-215 -47.5q-219 0 -346 143.5t-127 340.5zM238 1270q0 51 34.5 83.5t86 32.5t85 -32.5t33.5 -83.5t-33.5 -83t-85 -32t-86 33t-34.5 82zM291 477q0 -141 68.5 -240.5 t199.5 -99.5q117 0 190.5 89t73.5 229q0 137 -67.5 235t-198.5 98q-119 0 -192.5 -86t-73.5 -225zM637 1270q0 51 34 83.5t85 32.5t86 -32.5t35 -83.5q0 -49 -35 -82t-86 -33t-85 32t-34 83z" />
-<glyph unicode="&#xf7;" horiz-adv-x="1064" d="M74 442v148h917v-148h-917zM401 127q0 55 39 94t92 39q55 0 93.5 -39t38.5 -94q0 -53 -38 -92t-94 -39q-53 0 -92 39t-39 92zM401 903q0 53 39 92t92 39q55 0 93.5 -39t38.5 -92t-38 -92t-94 -39q-53 0 -92 39t-39 92z" />
-<glyph unicode="&#xf8;" horiz-adv-x="1114" d="M80 459q0 195 125 343t356 148q137 0 244 -61l74 98h135l-121 -162q141 -137 141 -344q0 -88 -29.5 -175t-85 -161.5t-151.5 -122t-215 -47.5q-133 0 -246 62l-74 -98h-137l123 165q-139 140 -139 355zM291 477q0 -121 49 -211l358 479q-59 43 -141 43q-119 0 -192.5 -86 t-73.5 -225zM414 182q61 -45 145 -45q117 0 190.5 89t73.5 229q0 119 -51 209z" />
-<glyph unicode="&#xf9;" horiz-adv-x="1079" d="M135 254v672h203v-594q0 -180 115 -180q113 0 276 151v623h203v-641q0 -49 10 -120t21 -116l10 -47l-197 -18q-20 96 -31 163q-162 -172 -358 -172q-252 0 -252 279zM225 1438h205l209 -336l-113 -64z" />
-<glyph unicode="&#xfa;" horiz-adv-x="1079" d="M135 254v672h203v-594q0 -180 115 -180q113 0 276 151v623h203v-641q0 -49 10 -120t21 -116l10 -47l-197 -18q-20 96 -31 163q-162 -172 -358 -172q-252 0 -252 279zM430 1102l209 336h205l-301 -400z" />
-<glyph unicode="&#xfb;" horiz-adv-x="1079" d="M135 254v672h203v-594q0 -180 115 -180q113 0 276 151v623h203v-641q0 -49 10 -120t21 -116l10 -47l-197 -18q-20 96 -31 163q-162 -172 -358 -172q-252 0 -252 279zM236 1092l233 346h131l231 -348l-118 -54l-181 250l-178 -250z" />
-<glyph unicode="&#xfc;" horiz-adv-x="1079" d="M135 254v672h203v-594q0 -180 115 -180q113 0 276 151v623h203v-641q0 -49 10 -120t21 -116l10 -47l-197 -18q-20 96 -31 163q-162 -172 -358 -172q-252 0 -252 279zM213 1270q0 51 35 83.5t86 32.5t85 -32.5t34 -83.5t-34 -83t-85 -32t-86 33t-35 82zM612 1270 q0 51 34 83.5t85 32.5t86 -32.5t35 -83.5q0 -49 -35 -82t-86 -33t-85 32t-34 83z" />
-<glyph unicode="&#xfd;" horiz-adv-x="952" d="M23 926h215l243 -635l240 635h209l-402 -996q-156 -385 -432 -415l-63 161q98 16 177 88t122 173l49 110zM379 1102l209 336h205l-301 -400z" />
-<glyph unicode="&#xfe;" horiz-adv-x="1089" d="M143 -477v1909l203 32v-661q86 147 270 147q178 0 285 -131t107 -330q0 -213 -127 -363.5t-346 -150.5q-123 0 -189 50v-469zM346 236q0 -47 42 -73t114 -26q135 0 214 89t79 251q0 141 -58.5 223t-154.5 82q-129 0 -236 -149v-397z" />
-<glyph unicode="&#xff;" horiz-adv-x="952" d="M23 926h215l243 -635l240 635h209l-402 -996q-156 -385 -432 -415l-63 161q98 16 177 88t122 173l49 110zM164 1270q0 51 34.5 83.5t86 32.5t85 -32.5t33.5 -83.5t-33.5 -83t-85 -32t-86 33t-34.5 82zM563 1270q0 51 34 83.5t85 32.5t86 -32.5t35 -83.5q0 -49 -35 -82 t-86 -33t-85 32t-34 83z" />
-<glyph unicode="&#x152;" horiz-adv-x="2017" d="M92 680q0 137 48 263t139.5 226.5t235.5 161t323 60.5q133 0 256 -25h823v-176h-619v-406h490v-178h-490v-430h625v-176h-836q-133 -25 -266 -25q-332 0 -530.5 205t-198.5 500zM315 690q0 -96 31 -188t91.5 -171t161.5 -127t230 -48q154 0 258 22v1000q-113 33 -258 32 q-242 0 -378 -153.5t-136 -366.5z" />
-<glyph unicode="&#x153;" horiz-adv-x="1742" d="M80 459q0 195 125 343t356 148q240 0 369 -184q125 184 344 184q170 0 275.5 -113.5t105.5 -318.5l-115 -33l-512 -69q16 -127 92 -201t199 -74q70 0 140.5 28t105.5 56l37 29l61 -145q-16 -14 -46 -37t-127 -60t-200 -37q-242 0 -368 187q-131 -186 -369 -187 q-219 0 -346 143.5t-127 340.5zM291 477q0 -141 68.5 -240.5t199.5 -99.5q117 0 190.5 89t73.5 229q0 137 -67.5 235t-198.5 98q-119 0 -192.5 -86t-73.5 -225zM1028 553l406 51q0 8 -2 20.5t-12.5 45t-28 57.5t-52 45.5t-79.5 20.5q-98 0 -158 -67t-74 -173z" />
-<glyph unicode="&#x178;" horiz-adv-x="1208" d="M8 1366h248l350 -575l357 575h237l-489 -780v-586h-211v584zM246 1624q0 51 34.5 85t88.5 34q49 0 83.5 -34t34.5 -85q0 -49 -34.5 -83t-83.5 -34q-51 0 -87 34t-36 83zM735 1624q0 51 35 85t86 34t86 -34t35 -85q0 -49 -35 -83t-86 -34t-86 34t-35 83z" />
-<glyph unicode="&#x2c6;" horiz-adv-x="1038" d="M221 1092l234 346h131l231 -348l-119 -54l-180 250l-178 -250z" />
-<glyph unicode="&#x2dc;" horiz-adv-x="1038" d="M199 1126q4 2 0 28t6 67t25.5 78.5t56.5 65.5t100 28q53 0 96 -25t65.5 -53.5t50.5 -53t52 -24.5q66 10 66 143h131q-4 -2 0 -28.5t-7.5 -68.5t-26.5 -81t-58 -67.5t-103 -28.5q-53 0 -95 24.5t-63.5 54t-48 54.5t-53.5 25q-63 -8 -63 -138h-131z" />
-<glyph unicode="&#x2000;" horiz-adv-x="892" />
-<glyph unicode="&#x2001;" horiz-adv-x="1784" />
-<glyph unicode="&#x2002;" horiz-adv-x="892" />
-<glyph unicode="&#x2003;" horiz-adv-x="1784" />
-<glyph unicode="&#x2004;" horiz-adv-x="594" />
-<glyph unicode="&#x2005;" horiz-adv-x="446" />
-<glyph unicode="&#x2006;" horiz-adv-x="297" />
-<glyph unicode="&#x2007;" horiz-adv-x="297" />
-<glyph unicode="&#x2008;" horiz-adv-x="223" />
-<glyph unicode="&#x2009;" horiz-adv-x="356" />
-<glyph unicode="&#x200a;" horiz-adv-x="99" />
-<glyph unicode="&#x2010;" horiz-adv-x="720" d="M111 438v156h499v-156h-499z" />
-<glyph unicode="&#x2011;" horiz-adv-x="720" d="M111 438v156h499v-156h-499z" />
-<glyph unicode="&#x2012;" horiz-adv-x="720" d="M111 438v156h499v-156h-499z" />
-<glyph unicode="&#x2013;" horiz-adv-x="1062" d="M111 449v147h839v-147h-839z" />
-<glyph unicode="&#x2014;" horiz-adv-x="1861" d="M111 449v147h1638v-147h-1638z" />
-<glyph unicode="&#x2018;" horiz-adv-x="444" d="M92 1174q0 195 199 346l78 -82q-113 -86 -113 -195q0 -94 123 -225l-178 -100q-109 117 -109 256z" />
-<glyph unicode="&#x2019;" horiz-adv-x="432" d="M63 1421l181 99q109 -115 108 -254q0 -193 -198 -348l-78 83q113 86 112 195q0 51 -26.5 101t-98.5 124z" />
-<glyph unicode="&#x201a;" d="M90 174l186 98q113 -119 113 -254q0 -190 -203 -348l-77 84q117 90 116 193q0 49 -29.5 99t-105.5 128z" />
-<glyph unicode="&#x201c;" horiz-adv-x="802" d="M92 1174q0 195 199 346l78 -82q-113 -86 -113 -195q0 -94 123 -225l-178 -100q-109 117 -109 256zM451 1174q0 195 198 346l78 -82q-113 -86 -113 -195q0 -94 123 -225l-178 -100q-108 117 -108 256z" />
-<glyph unicode="&#x201d;" horiz-adv-x="790" d="M63 1421l181 99q109 -115 108 -254q0 -193 -198 -348l-78 83q113 86 112 195q0 51 -26.5 101t-98.5 124zM424 1421l178 99q109 -115 109 -254q0 -193 -199 -348l-78 83q113 86 113 195q0 94 -123 225z" />
-<glyph unicode="&#x201e;" horiz-adv-x="849" d="M90 174l186 98q113 -119 113 -254q0 -190 -203 -348l-77 84q117 90 116 193q0 49 -29.5 99t-105.5 128zM449 174l186 98q113 -119 113 -254q0 -190 -203 -348l-78 84q117 90 117 193q0 49 -29.5 99t-105.5 128z" />
-<glyph unicode="&#x2022;" horiz-adv-x="802" d="M106 524q0 125 85 210t210 85t210 -85t85 -210t-85 -210t-210 -85t-210 85t-85 210z" />
-<glyph unicode="&#x2026;" horiz-adv-x="1622" d="M113 112.5q0 57.5 40 98.5t97 41t98 -41t41 -98.5t-41 -97.5t-98 -40t-97 40t-40 97.5zM674 112.5q0 57.5 40 98.5t97 41t98 -41t41 -98.5t-41 -97.5t-98 -40t-97 40t-40 97.5zM1233 112.5q0 57.5 41 98.5t98.5 41t98 -41t40.5 -98.5t-40.5 -97.5t-98 -40t-98.5 40 t-41 97.5z" />
-<glyph unicode="&#x202f;" horiz-adv-x="356" />
-<glyph unicode="&#x2039;" horiz-adv-x="649" d="M43 510v8q31 23 199 211l194 217l125 -35l-303 -397l303 -397l-125 -35l-166 182l-109 121l-60 66q-26 29 -36 39t-22 20z" />
-<glyph unicode="&#x203a;" horiz-adv-x="651" d="M90 117l303 397l-303 397l125 35q360 -399 379 -418q6 -4 14 -10v-8q-12 -10 -22.5 -20.5t-35.5 -38.5l-60 -66l-109 -121l-166 -182z" />
-<glyph unicode="&#x205f;" horiz-adv-x="446" />
-<glyph unicode="&#x20ac;" horiz-adv-x="1148" d="M82 371v108h106q-4 25 -4 80q0 53 4 80h-104v109h123q49 186 187 299.5t339 113.5q82 0 162 -19.5t117 -39.5l39 -19l-52 -168q-117 82 -268 82q-123 0 -201.5 -68.5t-111.5 -180.5h532l-32 -109h-521q-2 -23 -2 -68q0 -49 6 -92h473l-32 -108h-414q39 -106 119 -168 t194 -62q61 0 125 16.5t97 32.5l34 17l50 -150q-127 -82 -322 -82t-332 106.5t-186 289.5h-125z" />
-<glyph unicode="&#x2122;" horiz-adv-x="1392" d="M74 1270v96h477v-96h-178v-449h-121v449h-178zM639 821l20 545h175l122 -358l125 358h168l21 -545h-115l-16 412l-146 -412h-78l-145 414l-12 -414h-119z" />
-<glyph unicode="&#xe000;" horiz-adv-x="925" d="M0 925h925v-925h-925v925z" />
-<glyph unicode="&#xfb01;" horiz-adv-x="1110" d="M51 772v109l146 53v70q0 231 118.5 362t313.5 131q168 -2 284 -78l-79 -151q-98 66 -207 65q-100 0 -164 -76.5t-64 -240.5v-90h566v-926h-203v782h-363v-782h-202v772h-146z" />
-<glyph unicode="&#xfb02;" horiz-adv-x="1142" d="M51 772v109l146 53v70q0 231 118.5 362t313.5 131q125 0 241 -53l127 20v-1464h-200v1288q-94 45 -170 45q-100 0 -164 -76.5t-64 -240.5v-90h256v-154h-256v-772h-202v772h-146z" />
-<glyph unicode="&#xfb03;" horiz-adv-x="1720" d="M51 772v109l146 53v39q0 225 118.5 350t313.5 125q145 0 282 -86q113 135 308 135q72 0 139 -19.5t100 -39.5l31 -19l-82 -151q-90 66 -188 65q-92 0 -149.5 -70.5t-57.5 -226.5v-110h563v-926h-201v782h-362v-782h-203v782h-410v-782h-202v772h-146zM399 926h410v98 q0 102 25 186q-100 72 -205 72q-102 0 -166 -70.5t-64 -224.5v-61z" />
-<glyph unicode="&#xfb04;" horiz-adv-x="1753" d="M51 772v109l146 53v39q0 225 118.5 350t313.5 125q158 0 289 -90q115 139 313 139q125 0 239 -55l140 22v-1464h-203v1282q-96 51 -178 51q-96 0 -156.5 -74.5t-60.5 -234.5v-98h254v-154h-254v-772h-203v782h-410v-782h-202v772h-146zM399 926h410v86q0 106 29 196 q-106 74 -209 74t-166.5 -70.5t-63.5 -224.5v-61z" />
-</font>
-</defs></svg> 
\ No newline at end of file
diff --git a/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansSemiBold-webfont.ttf b/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansSemiBold-webfont.ttf
deleted file mode 100644
index b6a7ac228aca0015479521d21c48781ce909df52..0000000000000000000000000000000000000000
Binary files a/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansSemiBold-webfont.ttf and /dev/null differ
diff --git a/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansSemiBold-webfont.woff b/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansSemiBold-webfont.woff
deleted file mode 100644
index f643b28633bbcd624879f20e9bebe37cd92af384..0000000000000000000000000000000000000000
Binary files a/app/design/adminhtml/Magento/backend/web/fonts/calluna/CallunaSansSemiBold-webfont.woff and /dev/null differ
diff --git a/app/design/adminhtml/Magento/backend/web/fonts/icons/admin-icons.woff2 b/app/design/adminhtml/Magento/backend/web/fonts/icons/admin-icons.woff2
new file mode 100644
index 0000000000000000000000000000000000000000..a828934ddeec2ebf948c599cc8528a8910882946
Binary files /dev/null and b/app/design/adminhtml/Magento/backend/web/fonts/icons/admin-icons.woff2 differ
diff --git a/app/design/adminhtml/Magento/backend/web/less/clearless/typography.less b/app/design/adminhtml/Magento/backend/web/less/clearless/typography.less
index 6988924dead036ae72c64397733c5d1f995b585f..e75404f5fea567be598e741b7fe5c8acaa8f8eb7 100644
--- a/app/design/adminhtml/Magento/backend/web/less/clearless/typography.less
+++ b/app/design/adminhtml/Magento/backend/web/less/clearless/typography.less
@@ -20,7 +20,10 @@
     @font-face {
         font-family: @family-name;
         src: url('@{font-path}.eot');
-        src: url('@{font-path}.eot?#iefix') format('embedded-opentype'), url('@{font-path}.woff') format('woff'), url('@{font-path}.ttf') format('truetype');
+        src: url('@{font-path}.eot?#iefix') format('embedded-opentype'),
+        url('@{font-path}.woff2') format('woff2'),
+        url('@{font-path}.woff') format('woff'),
+        url('@{font-path}.ttf') format('truetype');
         font-weight: @font-weight;
         font-style: @font-style;
     }
@@ -30,7 +33,11 @@
     @font-face {
         font-family: @family-name;
         src: url('@{font-path}.eot');
-        src: url('@{font-path}.eot?#iefix') format('embedded-opentype'), url('@{font-path}.woff') format('woff'), url('@{font-path}.ttf') format('truetype'), url('@{font-path}.svg#@{family-name}') format('svg');
+        src: url('@{font-path}.eot?#iefix') format('embedded-opentype'),
+        url('@{font-path}.woff2') format('woff2'),
+        url('@{font-path}.woff') format('woff'),
+        url('@{font-path}.ttf') format('truetype'),
+        url('@{font-path}.svg#@{family-name}') format('svg');
         font-weight: @font-weight;
         font-style: @font-style;
     }
diff --git a/app/design/frontend/Magento/blank/Magento_Bundle/web/css/source/module.less b/app/design/frontend/Magento/blank/Magento_Bundle/web/css/source/module.less
index 40ea02740a8658e871d137007bd8e0a0ee246b11..400d5229ef41dd775adebf2f39244781b690c302 100644
--- a/app/design/frontend/Magento/blank/Magento_Bundle/web/css/source/module.less
+++ b/app/design/frontend/Magento/blank/Magento_Bundle/web/css/source/module.less
@@ -7,7 +7,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 .bundle-actions {
     &:extend(.abs-box-tocart all);
@@ -53,7 +53,7 @@
 
     .block-bundle-summary {
         padding: @indent-s-base @indent-base;
-        background: @color-secondary;
+        .css(background, @color-secondary);
         &:extend(.abs-add-box-sizing all);
 
         > .title > strong {
@@ -95,7 +95,7 @@
         }
     }
     p.required {
-        color: @form-field-label-asterisk-color;
+        .css(color, @form-field-label-asterisk-color);
     }
 }
 
@@ -104,7 +104,7 @@
 //
 //    Desktop
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .bundle-options-container {
         .legend.title {
             &:extend(.abs-reset-left-margin all);
diff --git a/app/design/frontend/Magento/blank/Magento_Catalog/web/css/source/listings.less b/app/design/frontend/Magento/blank/Magento_Catalog/web/css/source/listings.less
index a176ab0c5f1b8e2a5722fa65f5613783b226f930..152942e367a27710c69d6956f79dd60d00c6abca 100644
--- a/app/design/frontend/Magento/blank/Magento_Catalog/web/css/source/listings.less
+++ b/app/design/frontend/Magento/blank/Magento_Catalog/web/css/source/listings.less
@@ -11,7 +11,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 .product-name() {
     font-weight: @font-weight-base;
@@ -142,7 +142,7 @@
         .minimal-price-link {
             margin-top: 5px;
             .price-label {
-                color: @link-color;
+                .css(color, @link-color);
                 .font-size(14);
             }
             .price {
@@ -251,7 +251,7 @@
 //    Mobile
 //--------------------------------------
 
-.responsive-max-m (@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-s) {
     .products-list .product {
         &-item {
             table-layout: fixed;
@@ -263,7 +263,7 @@
     }
 }
 
-.responsive-min-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-s) {
     .product {
         &-item {
             .products-grid & {
@@ -305,12 +305,12 @@
 //    Desktop
 //--------------------------------------
 
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .page-products .products-grid .product-item { width: 100%/3 }
     .page-products.page-layout-1column .products-grid .product-item { width: 100%/4 }
     .page-products.page-layout-3columns .products-grid .product-item { width: 100%/2 }
 }
-.responsive-min-l(@break) when (@break = @screen-l) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-l) {
     .products-grid .product-item { width: 100%/5 }
     .page-layout-1column .products-grid .product-item { width: 100%/6 }
     .page-layout-3columns .products-grid .product-item { width: 100%/4 }
diff --git a/app/design/frontend/Magento/blank/Magento_Catalog/web/css/source/module.less b/app/design/frontend/Magento/blank/Magento_Catalog/web/css/source/module.less
index b26f89f2e79aa1795e791edaabd101e54dc0ef17..25f78a31db89e5de53d6ecbab2dc3e0e33fcea37 100644
--- a/app/design/frontend/Magento/blank/Magento_Catalog/web/css/source/module.less
+++ b/app/design/frontend/Magento/blank/Magento_Catalog/web/css/source/module.less
@@ -37,7 +37,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 //
 //    Category view
@@ -130,7 +130,7 @@
     }
     .notice {
         margin: @indent-s-base 0;
-        color: @text-color-muted;
+        .css(color, @text-color-muted);
         .font-size(@font-size-s);
     }
     .product.thumbs {
@@ -181,7 +181,7 @@
             &.sku {
                 display: inline-block;
                 vertical-align: top;
-                color: @text-color-muted;
+                .css(color, @text-color-muted);
                 > .value {
                     display: inline-block;
                     vertical-align: top;
@@ -269,7 +269,7 @@
 
 .prices-tier {
     &:extend(.abs-reset-list all);
-    background: @sidebar-background;
+    .css(background, @sidebar-background);
     padding: @indent-s-base (.75 * @indent-base);
     margin: @indent-s-base 0;
     .price-tier_price {
@@ -333,7 +333,7 @@
             margin-right: 8px;
         }
         .counter {
-            color: @color-primary-lighter;
+            .css(color, @color-primary-lighter);
             .font-size(12);
             white-space: nowrap;
         }
@@ -390,7 +390,7 @@
 //
 //    Mobile
 //--------------------------------------
-.responsive-max-m(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-m) {
     .catalog-product-view {
         .column.main {
             .vendor-prefix-display(flex);
@@ -418,7 +418,7 @@
 //
 //    Desktop
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .product-info-main,
     .product-options-bottom {
         .box-tocart {
@@ -474,7 +474,7 @@
 //
 //    Desktop large
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-xl) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-xl) {
     .sidebar {
         .product-items {
             .product-item {
@@ -498,7 +498,7 @@
 //
 //    Category page layout
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .product-info-main {
         float: right;
     }
@@ -530,7 +530,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 //
 //    Minimum Advertising Price
@@ -678,7 +678,7 @@ body.catalog-product-compare-index {
     top: 0;
     left: 0;
     width: auto;
-    background: @page-bg-color;
+    .css(background, @page-bg-color);
 }
 
 .block-compare {
diff --git a/app/design/frontend/Magento/blank/Magento_Catalog/web/css/source/toolbar.less b/app/design/frontend/Magento/blank/Magento_Catalog/web/css/source/toolbar.less
index f8d9de9802d2a391820a37cc791f5e6a23a43a2e..c6361620db51d4a69ef8095a89b706f565f61290 100644
--- a/app/design/frontend/Magento/blank/Magento_Catalog/web/css/source/toolbar.less
+++ b/app/design/frontend/Magento/blank/Magento_Catalog/web/css/source/toolbar.less
@@ -10,7 +10,7 @@
 @toolbar-mode-icon-font-size: 24px;
 @toolbar-element-background: @panel-bg;
 
-.responsive-common() {
+& when (@media-common = true) {
 
 .page-products .columns {
     position: relative;
@@ -97,7 +97,7 @@
 //    Mobile
 //--------------------------------------
 
-.responsive-min-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-s) {
     .page-products .columns {
         position: relative;
         z-index: 1;
@@ -129,7 +129,7 @@
             float: left;
             border: 1px solid @border-color-base;
             font-weight: @font-weight-base;
-            color: @text-color-muted;
+            .css(color, @text-color-muted);
             text-align: center;
             padding: 7px 10px;
             line-height: 1;
@@ -137,13 +137,13 @@
             .icon-text-hide();
             &:not(.active):hover {
                 background: darken(@toolbar-element-background, 7%);
-                color: @text-color-muted;
+                .css(color, @text-color-muted);
             }
             &:last-child {
                 border-right: 1px solid @border-color-base;
             }
             &.active {
-                color: @color-primary-light;
+                .css(color, @color-primary-light);
             }
             .icon-font(
                 @icon-grid,
diff --git a/app/design/frontend/Magento/blank/Magento_Catalog/web/css/source/widgets.less b/app/design/frontend/Magento/blank/Magento_Catalog/web/css/source/widgets.less
index f664053abc1d7177816e4063ac94dee7980e0efa..c7a7e0b1cb814072ee7ced7fbabb8241149d0b94 100644
--- a/app/design/frontend/Magento/blank/Magento_Catalog/web/css/source/widgets.less
+++ b/app/design/frontend/Magento/blank/Magento_Catalog/web/css/source/widgets.less
@@ -7,7 +7,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 .block-product-link,
 .block-category-link {
@@ -51,7 +51,7 @@
 //    Mobile
 //--------------------------------------
 
-.responsive-min-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-s) {
     .block.widget .products-grid .product-item,
     .page-layout-1column .block.widget .products-grid .product-item,
     .page-layout-3columns .block.widget .products-grid .product-item { width: 100%/3 }
@@ -61,13 +61,13 @@
 //    Desktop
 //--------------------------------------
 
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .block.widget .products-grid .product-item{ width: 100%/3 }
     .page-layout-1column .block.widget .products-grid .product-item { width: 100%/4 }
     .page-layout-3columns .block.widget .products-grid .product-item { width: 100%/2 }
 }
 
-.responsive-min-l(@break) when (@break = @screen-l) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-l) {
     .block.widget .products-grid .product-item { width: 100%/5 }
     .page-layout-1column .block.widget .products-grid .product-item {
         width: 100%/6;
@@ -91,7 +91,7 @@
     }
 }
 
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .sidebar .block.widget .pager {
         .item:not(.pages-item-next):not(.pages-item-previous) {
             &:extend(.abs-no-display-desktop all);
diff --git a/app/design/frontend/Magento/blank/Magento_CatalogSearch/web/css/source/module.less b/app/design/frontend/Magento/blank/Magento_CatalogSearch/web/css/source/module.less
index e83ba409b966f4f4d5aec47dd62a8fc6b07d013f..86b195336a8f03fa3714baa50606bd28a0ea630d 100644
--- a/app/design/frontend/Magento/blank/Magento_CatalogSearch/web/css/source/module.less
+++ b/app/design/frontend/Magento/blank/Magento_CatalogSearch/web/css/source/module.less
@@ -5,15 +5,15 @@
 
 @autocomplete-background: @color-white;
 @autocomplete-border: 1px solid @form-element-input-border-color;
-@autocomplete-item-border: 1px solid #e5e5e5;
-@autocomplete-item-hover: #e8e8e8;
-@autocomplete-item-amount-color: #999;
+@autocomplete-item-border: 1px solid @color-gray90;
+@autocomplete-item-hover: @color-gray91;
+@autocomplete-item-amount-color: @color-gray60;
 
 //
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 .block-search {
     margin-bottom: 0;
@@ -73,11 +73,11 @@
         .list-reset-styles();
         li {
             &:not(:empty) {
-                background: @autocomplete-background;
-                border: @autocomplete-border;
+                .css(background, @autocomplete-background);
+                .css(border, @autocomplete-border);
                 border-top: 0;
             }
-            border-top: @autocomplete-item-border;
+            .css(border-top, @autocomplete-item-border);
             cursor: pointer;
             padding: @indent-xs-base @indent-xl-base @indent-xs-base @indent-s-base;
             margin: 0;
@@ -89,10 +89,10 @@
             }
             &:hover,
             &.selected {
-                background: @autocomplete-item-hover;
+                .css(background, @autocomplete-item-hover);
             }
             .amount {
-                color: @autocomplete-item-amount-color;
+                .css(color, @autocomplete-item-amount-color);
                 position: absolute;
                 right: 7px;
                 top: @indent-xs-base;
@@ -156,7 +156,7 @@
 //
 //    Mobile
 //--------------------------------------
-.responsive-max-m(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-m) {
     .block-search {
         .block-content {
             margin-bottom: 0;
@@ -164,7 +164,7 @@
     }
 }
 
-.responsive-max-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-s) {
     .block-search {
         margin-top: @indent-s-base;
     }
@@ -173,7 +173,7 @@
 //
 //    Desktop
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .block-search {
         position: relative;
         float: right;
@@ -213,7 +213,7 @@
             .button-reset();
             &:focus {
                 &:before {
-                    color: @color-gray20;
+                    .css(color, @color-gray20);
                 }
             }
             padding: @indent-xs-base 0;
diff --git a/app/design/frontend/Magento/blank/Magento_Checkout/web/css/source/cart.less b/app/design/frontend/Magento/blank/Magento_Checkout/web/css/source/cart.less
index cfd8ae14037b5ad148ef47b0220a18b519267c5a..4849ee0a58c761cb492604afefef18f50b0f17d3 100644
--- a/app/design/frontend/Magento/blank/Magento_Checkout/web/css/source/cart.less
+++ b/app/design/frontend/Magento/blank/Magento_Checkout/web/css/source/cart.less
@@ -7,7 +7,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 //
 //    Shopping cart
@@ -16,7 +16,7 @@
     //  Summary block
     &-summary {
         &:extend(.abs-add-box-sizing all);
-        background: @sidebar-background;
+        .css(background, @sidebar-background);
         margin-bottom: @indent-m-base;
         padding: 1px 15px @indent-m-base;
         > .title {
@@ -322,7 +322,7 @@
 //
 //    Mobile
 //--------------------------------------
-.responsive-max-m(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-m) {
     .cart {
         &.table-wrapper {
             thead {
@@ -362,7 +362,7 @@
 //
 //    Desktop
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .cart {
         &-container {
             &:extend(.abs-add-clearfix-desktop all);
diff --git a/app/design/frontend/Magento/blank/Magento_Checkout/web/css/source/minicart.less b/app/design/frontend/Magento/blank/Magento_Checkout/web/css/source/minicart.less
index 31ea2c20883260810b7692cf8a84dd9f0ed06b6e..a92c3fd6c643a1da8b366ac93e55fe290a13149b 100644
--- a/app/design/frontend/Magento/blank/Magento_Checkout/web/css/source/minicart.less
+++ b/app/design/frontend/Magento/blank/Magento_Checkout/web/css/source/minicart.less
@@ -7,7 +7,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 //
 //    Minicart
@@ -122,9 +122,9 @@
             &.empty {
                display: none;
             }
-            background: @color-active;
+            .css(background, @color-active);
             border-radius: 2px;
-            color: @page-bg-color;
+            .css(color, @page-bg-color);
             clip: none;
             display: inline-block;
             height: 24px;
@@ -167,7 +167,7 @@
             font-weight: @font-weight-base;
             margin-top: 0;
             a {
-                color: @link-color;
+                .css(color, @link-color);
             }
         }
         &-item-details {
@@ -205,9 +205,9 @@
                  @_icon-font-size: 28px,
                  @_icon-font-line-height: 28px,
                  @_icon-font-text-hide: true,
-                 @_icon-font-color: #303030,
-                 @_icon-font-color-hover: #303030,
-                 @_icon-font-color-active: #303030
+                 @_icon-font-color: @color-gray19,
+                 @_icon-font-color-hover: @color-gray19,
+                 @_icon-font-color-active: @color-gray19
              );
          }
          &.delete {
@@ -223,13 +223,13 @@
 //
 //    Mobile
 //--------------------------------------
-.responsive-max-m(@break) when (@break = @screen-xs) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-xs) {
     .minicart-wrapper .block-minicart {
         width: 290px;
     }
 }
 
-.responsive-max-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-s) {
     .minicart-wrapper {
         margin-top: @indent-s-base;
     }
@@ -238,7 +238,7 @@
 //
 //    Desktop
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .minicart-wrapper {
         margin-left: 13px;
         .block-minicart {
diff --git a/app/design/frontend/Magento/blank/Magento_Checkout/web/css/source/module.less b/app/design/frontend/Magento/blank/Magento_Checkout/web/css/source/module.less
index e9128d43363cf62310c3d6197be1dc307657d259..f51a0874b06b2c5b9a71717bee88489b41d551b3 100644
--- a/app/design/frontend/Magento/blank/Magento_Checkout/web/css/source/module.less
+++ b/app/design/frontend/Magento/blank/Magento_Checkout/web/css/source/module.less
@@ -3,384 +3,381 @@
 //  * See COPYING.txt for license details.
 //  */
 
-@import "cart.less";
-@import "minicart.less";
+@import 'cart.less';
+@import 'minicart.less';
 
 @desktop-form-field-vertical-indent: 29px;
 
 //
-//    Common
-//--------------------------------------
+//  Common
+//  _____________________________________________
 
-.responsive-common() {
+& when (@media-common = true) {
 
-//
-//    One Page Checkout
-//--------------------------------------
-.opc-wrapper {
-    &:extend(.abs-add-box-sizing all);
-    .css(padding-bottom, @indent-xl-base);
-    > .opc {
-        &:extend(.abs-reset-list all);
-    }
-    .section {
-        &.allow .step-title {
-            cursor: pointer;
-        }
-        &.active {
-            .step {
-                &-title {
-                    color: @color-primary-darker;
-                    cursor: default;
-                }
-                &-content {
-                    display: block;
-                }
-            }
-        }
-    }
-    .step {
-        &-title {
-            color: @color-primary-lighter;
-            line-height: 50px;
-            h2,
-            .number {
-                display: inline-block;
-                .heading(h3);
-            }
-            .number:after {
-                content: ".";
-            }
-            border-bottom: @border-width-base solid @border-color-base;
+    //
+    //  One Page Checkout
+    //  ---------------------------------------------
+
+    .opc-wrapper:extend(.abs-add-box-sizing all) {
+        .css(padding-bottom, @indent-xl-base);
+        > .opc:extend(.abs-reset-list all) {
         }
-        &-content {
-            display: none;
-            padding: @indent-base @indent-s-base;
-            position: relative;
-            .addresses .control {
-                margin: @indent-base 0;
+        .section {
+            &.allow .step-title {
+                cursor: pointer;
             }
-            .fieldset {
-                margin-bottom: 0;
-                &.login {
-                    .form-hasrequired(bottom);
-                    &:after {
-                        margin-top: 35px;
-                        text-align: center;
+            &.active {
+                .step {
+                    &-title {
+                        .css(color, @color-primary-darker);
+                        cursor: default;
                     }
-                }
-                > .field {
-                    margin: @form-field-vertical-indent 0 0;
-                }
-                &.address {
-                    .field:first-of-type:not(.additional) {
-                        margin: 0;
+                    &-content {
+                        display: block;
                     }
                 }
-                .legend.payments-title {
-                    &:extend(.abs-visually-hidden all);
+            }
+        }
+        .step {
+            &-title {
+                border-bottom: @border-width-base solid @border-color-base;
+                .css(color, @color-primary-lighter);
+                line-height: 50px;
+                h2,
+                .number {
+                    display: inline-block;
+                    .heading(h3);
+                }
+                .number:after {
+                    content: '.';
                 }
             }
-            .methods-shipping {
-                .item-content {
-                    .fieldset {
-                        > .legend {
-                            &:extend(.abs-visually-hidden all);
+            &-content {
+                display: none;
+                padding: @indent-base @indent-s-base;
+                position: relative;
+                .addresses .control {
+                    margin: @indent-base 0;
+                }
+                .fieldset {
+                    margin-bottom: 0;
+                    &.login {
+                        .form-hasrequired(bottom);
+                        &:after {
+                            margin-top: 35px;
+                            text-align: center;
                         }
-                        > .legend + br {
-                            &:extend(.abs-no-display all);
+                    }
+                    > .field {
+                        margin: @form-field-vertical-indent 0 0;
+                    }
+                    &.address {
+                        .field:first-of-type:not(.additional) {
+                            margin: 0;
                         }
-                        > .field {
-                            margin: @indent-base 0 0;
-                            &:before {
-                                display: none;
+                    }
+                    .legend.payments-title:extend(.abs-visually-hidden all) {
+                    }
+                }
+                .methods-shipping {
+                    .item-content {
+                        .fieldset {
+                            > .legend:extend(.abs-visually-hidden all) {
                             }
-                            .control {
-                                display: inline-block;
+                            > .legend + br:extend(.abs-no-display all) {
+                            }
+                            > .field {
+                                margin: @indent-base 0 0;
+                                &:before {
+                                    display: none;
+                                }
+                                .control {
+                                    display: inline-block;
+                                }
+                            }
+                            br + .field {
+                                margin: 0;
                             }
-                        }
-                        br + .field {
-                            margin: 0;
                         }
                     }
                 }
-            }
-            .form {
-                .form-hasrequired(bottom);
-                &:after {
-                    text-align: center;
-                }
-                > .choice {
-                    margin-top: @form-field-vertical-indent;
+                .form {
+                    .form-hasrequired(bottom);
+                    &:after {
+                        text-align: center;
+                    }
+                    .field:not(:first-child) {
+                        margin: @indent-base 0 0;
+                    }
+                    > .field.choice {
+                        margin: @form-field-vertical-indent 0 0;
+                    }
+                    .field {
+                        &.month {
+                            padding-right: @indent-s-base;
+                        }
+                        &.year {
+                            margin-top: 0;
+                        }
+                    }
                 }
-                .field:not(:first-child) {
-                    margin: @indent-base 0 0;
+                .form:not(.login),
+                .order-review {
+                    .action.primary:extend(.abs-button-l all) {
+                    }
                 }
-                > .field.choice {
-                    margin: @form-field-vertical-indent 0 0;
+                .actions {
+                    margin-top: @indent-base;
                 }
-            }
-            .form:not(.login),
-            .order-review {
-                .action.primary {
-                    &:extend(.abs-button-l all);
+                .field.street {
+                    .field.additional {
+                        .label:extend(.abs-visually-hidden all) {
+                        }
+                    }
                 }
             }
-            .actions {
-                margin-top: @indent-base;
-            }
         }
-    }
 
-    .step-content {
-        .field.street {
-            .field.additional {
-                .label {
-                  &:extend(.abs-visually-hidden all);
-                }
+        .opc-payment-additional {
+            margin: 0 0 @indent-xs-base;
+            + .opc-payment {
+                margin: @indent-base 0 0;
             }
         }
-    }
 
-    .opc-payment-additional {
-        margin: 0 0 @indent-xs-base;
-        + .opc-payment {
-            margin: @indent-base 0 0;
-        }
-    }
+        //
+        //  Order review
+        //  ---------------------------------------------
 
-    // Order review
-    .data.table {
-        &:extend(.abs-product-options-list all);
-        .col {
-            &.price,
-            &.qty {
-                text-align: center;
-                white-space: nowrap;
+        .order-review {
+            .fieldset > .field > .label {
+                font-weight: @font-weight-base;
             }
         }
-        .item-options {
-            font-size: @font-size-s;
-            margin: @indent-s-base 0 0;
-            &:extend(.abs-add-clearfix all);
+        
+        .data.table:extend(.abs-product-options-list all) {
+            .col {
+                &.price,
+                &.qty {
+                    text-align: center;
+                    white-space: nowrap;
+                }
+            }
+            .item-options:extend(.abs-add-clearfix all) {
+                font-size: @font-size-s;
+                margin: @indent-s-base 0 0;
+            }
+            .cart-price:extend(.abs-checkout-cart-price all) {
+            }
         }
-        .cart-price {
-            &:extend(.abs-checkout-cart-price all);
+
+        .action.primary.checkout {
+            margin: 0 0 @indent-base;
         }
-    }
 
-    .action.primary.checkout {
-        margin: 0 0 @indent-base;
-    }
+        .hidden:extend(.abs-no-display all) {
+        }
 
-    .hidden {
-        &:extend(.abs-no-display all);
-    }
+        //
+        //  Customer login
+        //  ---------------------------------------------
 
-    //  Customer login
-    .login-wrapper {
-        .block {
-            .block-title {
-                &:extend(.abs-login-block-title all);
-            }
-            .fieldset.guest {
-                margin-top: @indent-base;
-            }
-            .field.choice {
-                margin-bottom: @indent-s-base;
+        .login-wrapper {
+            .block {
+                .block-title:extend(.abs-login-block-title all) {
+                }
+                .fieldset.guest {
+                    margin-top: @indent-base;
+                }
+                .field.choice {
+                    margin-bottom: @indent-s-base;
+                }
             }
         }
-    }
 
-    .actions-toolbar {
-        margin: @indent-xl-base 0 0;
+        .actions-toolbar {
+            margin: @indent-xl-base 0 0;
+        }
     }
-}
 
-// Shipping methods
-.methods-shipping {
-    .item-title {
-        &:extend(.abs-methods-shipping-title all);
-    }
-    .item-content {
-        margin: 0 0 @indent-xl-base;
-        .price {
-            font-weight: @font-weight-bold;
-        }
-        &:extend(.abs-adjustment-incl-excl-tax all);
-        .field.choice {
-            margin: 0 0 @indent-s-base;
-            .control {
-                float: left;
+    //
+    //  Shipping methods
+    //  ---------------------------------------------
+
+    .methods-shipping {
+        .item-title:extend(.abs-methods-shipping-title all) {
+        }
+        .item-content:extend(.abs-adjustment-incl-excl-tax all) {
+            margin: 0 0 @indent-xl-base;
+            .price {
+                font-weight: @font-weight-bold;
             }
-            .label {
-                display: block;
-                overflow: hidden;
+            .field.choice {
+                margin: 0 0 @indent-s-base;
+                .control {
+                    float: left;
+                }
+                .label {
+                    display: block;
+                    overflow: hidden;
+                }
             }
         }
-    }
-    .price-box {
-        margin-top: @indent-s-base;
-        margin-bottom: @indent-xs-base;
-        margin-left: @indent-xl-base;
-        .label + .price {
-            font-weight: @font-weight-bold;
+        .price-box {
+            margin-bottom: @indent-xs-base;
+            margin-left: @indent-xl-base;
+            margin-top: @indent-s-base;
+            .label + .price {
+                font-weight: @font-weight-bold;
+            }
+        }
+        img {
+            vertical-align: middle;
         }
     }
-    img {
-        vertical-align: middle;
-    }
-    .field.month {
-        padding-right: @indent-s-base;
-    }
-}
 
-// Payment methods
-.methods-payment {
-    .item-title {
-        font-weight: @font-weight-base;
-    }
-    .item-content {
-        margin: 0 0 0 @indent-xl-base;
-        .fieldset {
-            padding: 15px 0;
-            .field {
-                .font-size(@font-size-base);
-                &:first-child,
-                &.year {
-                    margin-top: 0;
+    //
+    //  Payment methods
+    //  ---------------------------------------------
+
+    .methods-payment {
+        .item {
+            &-title {
+                font-weight: @font-weight-base;
+            }
+            &-content {
+                margin: 0 0 0 @indent-base;
+                .label {
+                    font-weight: @font-weight-base;
                 }
             }
-            &.redirect {
-                margin-left: -17px;
-                padding: 0 0 15px;
-                .font-size(@font-size-s);
+        }
+        .fieldset {
+            padding: 15px 0 @indent-m-base;
+        }
+        .fieldset & {
+            .item-content > .fieldset > .field:first-child {
+                margin-top: 0;
             }
         }
-        .label {
-            font-weight: @font-weight-base;
+        .redirect {
+            .font-size(@font-size-s);
+            padding: 0 0 15px;
+        }
+        img {
+            margin-right: @indent-xs-base;
+            vertical-align: middle;
         }
     }
-    img {
-        margin-right: @indent-xs-base;
-        vertical-align: middle;
-    }
-    .field.month {
-        padding-right: @indent-s-base;
+
+    .cart-tax-info + .cart-tax-total {
+        display: block;
     }
-}
 
-.cart-tax-info + .cart-tax-total {
-    display: block;
-}
+    //
+    //  Checkout Progress
+    //  ---------------------------------------------
 
-//
-//    Checkout Progress
-//--------------------------------------
-.opc-block-progress {
-    &:extend(.abs-add-box-sizing all);
-    margin-bottom: @indent-l-base;
-    > .title {
-        background: @sidebar-background;
-        .heading(h3);
-        margin: 0;
-        padding: 15px 15px @indent-base;
-        strong {
-            font-weight: @font-weight-base;
-        }
-    }
-    > .content {
-        background: @sidebar-background;
-        padding: 0 15px @indent-xs-base;
-        .item-content.complete {
-            margin: 0 0 15px;
-            overflow: hidden;
-        }
-        .action,
-        .payment-method .title {
-            font-weight: @font-weight-base;
-        }
-        .data.table {
-            font-size: @font-size-s;
-        }
-    }
-    .payment-method {
+    .opc-block-progress:extend(.abs-add-box-sizing all) {
+        margin-bottom: @indent-l-base;
         > .title {
-            font-weight: @font-weight-light;
+            .css(background, @sidebar-background);
+            .heading(h3);
+            margin: 0;
+            padding: 15px 15px @indent-base;
+            strong {
+                font-weight: @font-weight-base;
+            }
         }
         > .content {
-            margin: 0 0 @indent-s-base;
-            &:last-child {
-                margin-bottom: 0;
+            .css(background, @sidebar-background);
+            padding: 0 15px @indent-xs-base;
+            .item-content.complete {
+                margin: 0 0 15px;
+                overflow: hidden;
+            }
+            .action,
+            .payment-method .title {
+                font-weight: @font-weight-base;
+            }
+            .data.table {
+                font-size: @font-size-s;
             }
         }
-        .items-cards {
-            margin: 0;
+        .payment-method {
+            > .title {
+                font-weight: @font-weight-light;
+            }
             > .content {
-                margin: 0;
+                margin: 0 0 @indent-s-base;
+                &:last-child {
+                    margin-bottom: 0;
+                }
             }
-        }
-        .data.table {
-            th {
-                padding: @indent-xs-base @indent-s-base @indent-xs-base 0;
+            .items-cards {
+                margin: 0;
+                > .content {
+                    margin: 0;
+                }
             }
-            td {
-                padding: @indent-xs-base 0;
+            .data.table {
+                th {
+                    padding: @indent-xs-base @indent-s-base @indent-xs-base 0;
+                }
+                td {
+                    padding: @indent-xs-base 0;
+                }
             }
         }
     }
-}
 
-//
-//    Checkout Success
-//--------------------------------------
-.checkout-onepage-success {
-    .page-title {
-        .print {
-            &:extend(.abs-no-display all);
+    //
+    //  Checkout Success
+    //  ---------------------------------------------
+
+    .checkout-onepage-success {
+        .page-title {
+            .print:extend(.abs-no-display all) {
+            }
         }
     }
-}
 
-.checkout-success {
-    .actions-toolbar {
-        margin-top: @indent-xl-base;
+    .checkout-success {
+        .actions-toolbar {
+            margin-top: @indent-xl-base;
+        }
     }
-}
 
-.checkout-onepage-index {
-    .nav-toggle {
-        &:extend(.abs-no-display all);
-    }
-    .logo {
-        margin-left: 0;
+    .checkout-onepage-index {
+        .nav-toggle:extend(.abs-no-display all) {
+        }
+        .logo {
+            margin-left: 0;
+        }
     }
 }
 
-}
-
 //
-//    Mobile
-//--------------------------------------
-.responsive-max-m(@break) when (@break = @screen-s) {
+//  Mobile
+//  _____________________________________________
+
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-s) {
     .opc-wrapper {
-        table.data.table {
-            &:extend(.abs-checkout-order-review all);
+        table.data.table:extend(.abs-checkout-order-review all) {
         }
     }
 }
 
 //
-//    Desktop
-//--------------------------------------
-.responsive-min-m(@break) when (@break = @screen-s) {
-    .checkout-onepage-index .column.main {
-        &:extend(.abs-add-clearfix-desktop-s all);
+//  Desktop
+//  _____________________________________________
+
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-s) {
+    .checkout-onepage-index .column.main:extend(.abs-add-clearfix-desktop-s all) {
     }
 
-    .opc-wrapper {
+    .opc-wrapper:extend(.abs-add-box-sizing-desktop-s all) {
         .layout-column(2, 2, @layout-column-checkout-main-width);
-        &:extend(.abs-add-box-sizing-desktop-s all);
         .step-content {
             padding: @indent-base 18px @indent-xl-base;
             .addresses .control {
@@ -390,8 +387,9 @@
                 &:after {
                     text-align: right;
                 }
-                &:not(.login) .actions-toolbar {
-                    &:extend(.abs-reset-left-margin-desktop-s all);
+                &:not(.login) {
+                    .actions-toolbar:extend(.abs-reset-left-margin-desktop-s all) {
+                    }
                 }
                 > .field.choice,
                 .fieldset > .field {
@@ -403,25 +401,19 @@
                     }
                 }
             }
-            .fieldset.login {
-                &:after {
-                    &:extend(.abs-margin-for-forms-desktop-s all);
-                    text-align: left;
-                }
+            .fieldset.login:after:extend(.abs-margin-for-forms-desktop-s all) {
+                text-align: left;
             }
         }
     }
 
-    .opc-block-progress {
+    .opc-block-progress:extend(.abs-add-box-sizing-desktop-s all) {
         .layout-column(2, 1, @layout-column-checkout-left-width);
         padding-right: @layout-column-main-sidebar-offset;
-        &:extend(.abs-add-box-sizing-desktop-s all);
     }
 
-    .login-wrapper {
-        &:extend(.abs-add-clearfix-desktop-s all);
-        .block {
-            &:extend(.abs-blocks-2columns-s all);
+    .login-wrapper:extend(.abs-add-clearfix-desktop-s all) {
+        .block:extend(.abs-blocks-2columns-s all) {
         }
         .field.choice:not(.persistent) {
             &:before {
@@ -429,19 +421,21 @@
             }
         }
         .fieldset.login {
-            .actions {
-                &:extend(.abs-margin-for-forms-desktop-s all);
+            .actions:extend(.abs-margin-for-forms-desktop-s all) {
             }
         }
     }
 
+    //
     //  Checkout success
+    //  ---------------------------------------------
+
     .checkout-onepage-success {
         .page-title {
             .print {
                 display: inline-block;
-                margin-left: @indent-xl-base;
                 .font-size(14);
+                margin-left: @indent-xl-base;
             }
         }
     }
diff --git a/app/design/frontend/Magento/blank/Magento_Cms/web/css/source/widgets.less b/app/design/frontend/Magento/blank/Magento_Cms/web/css/source/widgets.less
index 351c5e03c92cde187a27f4c8bd05530784900b0e..2aeb9b876db914d9839e46d4f228106fe38e81ab 100644
--- a/app/design/frontend/Magento/blank/Magento_Cms/web/css/source/widgets.less
+++ b/app/design/frontend/Magento/blank/Magento_Cms/web/css/source/widgets.less
@@ -9,22 +9,22 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 .block-static-block,
 .block-cms-link {
     &.widget {
-        display: block;
         .css(margin-bottom, @widgets-indent-bottom);
+        .links & {
+            margin-bottom: 0;
+        }
     }
-
 }
 
 .block-cms-link-inline {
     &.widget {
         margin: 0;
     }
-
 }
 
 }
diff --git a/app/design/frontend/Magento/blank/Magento_Customer/web/css/source/module.less b/app/design/frontend/Magento/blank/Magento_Customer/web/css/source/module.less
index 4a071586c0e4427760747c3b42c628e035a1d053..c3f3d14d3435801f25090ef0f34a3900ce8ed61c 100644
--- a/app/design/frontend/Magento/blank/Magento_Customer/web/css/source/module.less
+++ b/app/design/frontend/Magento/blank/Magento_Customer/web/css/source/module.less
@@ -7,7 +7,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 .login-container {
     .block {
@@ -55,8 +55,8 @@
     }
 }
 
-.box-address-billing,
-.box-address-shipping,
+.box-billing-address,
+.box-shipping-address,
 .box-information,
 .box-newsletter {
     .box-content {
@@ -166,7 +166,7 @@
 //
 //    Mobile @screen-s
 //--------------------------------------
-.responsive-max-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-s) {
     .account {
         .column.main,
         .sidebar-additional {
@@ -178,7 +178,7 @@
 //
 //    Mobile @screen-m
 //--------------------------------------
-.responsive-max-m(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-m) {
     .login-container {
         .fieldset {
             &:after {
@@ -210,7 +210,7 @@
 //
 //    Desktop
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .login-container {
         &:extend(.abs-add-clearfix-desktop all);
         .block {
diff --git a/app/design/frontend/Magento/blank/Magento_Downloadable/web/css/source/module.less b/app/design/frontend/Magento/blank/Magento_Downloadable/web/css/source/module.less
index 8b9a07ca1781e7f9a0d1503104fc32cbf62b4244..87d1365e788d6390163ae6cad4e912f3a211904f 100644
--- a/app/design/frontend/Magento/blank/Magento_Downloadable/web/css/source/module.less
+++ b/app/design/frontend/Magento/blank/Magento_Downloadable/web/css/source/module.less
@@ -7,7 +7,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 .downloadable.samples {
     margin-bottom: @indent-base;
@@ -72,7 +72,7 @@
 //
 // Product view Desktop
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .page-product-downloadable {
         .product-add-form {
             &:extend(.clearer all);
diff --git a/app/design/frontend/Magento/blank/Magento_GiftMessage/web/css/source/module.less b/app/design/frontend/Magento/blank/Magento_GiftMessage/web/css/source/module.less
index f8b0392d53c1b9052d97e9f946cb90e91c97d602..31d809f4e92f13512fb344cd8f1f42e4e0afa1d0 100644
--- a/app/design/frontend/Magento/blank/Magento_GiftMessage/web/css/source/module.less
+++ b/app/design/frontend/Magento/blank/Magento_GiftMessage/web/css/source/module.less
@@ -7,7 +7,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 .gift-message {
     margin: 0;
@@ -36,7 +36,7 @@
         &:extend(.abs-reset-image-wrapper all);
     }
     .options-items {
-        background: @sidebar-background;
+        .css(background, @sidebar-background);
         display: block;
         margin: @indent-base 0 0;
         padding: @indent-base;
@@ -155,7 +155,7 @@
 //
 //    Desktop
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .gift-message {
         .item {
             border-bottom: @border-width-base solid @border-color-base;
diff --git a/app/design/frontend/Magento/blank/Magento_LayeredNavigation/web/css/source/module.less b/app/design/frontend/Magento/blank/Magento_LayeredNavigation/web/css/source/module.less
index 398d325c13c8fb0c0555323e9b62aa6d1046a22f..31073c01f15be290b35d3818fc4db6344c975f75 100644
--- a/app/design/frontend/Magento/blank/Magento_LayeredNavigation/web/css/source/module.less
+++ b/app/design/frontend/Magento/blank/Magento_LayeredNavigation/web/css/source/module.less
@@ -7,7 +7,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 .block.filter {
     margin-bottom: 40px;
@@ -34,7 +34,7 @@
             }
         }
         .count {
-            color: @text-color-muted;
+            .css(color, @text-color-muted);
             &:before {
                 content: "(";
             }
diff --git a/app/design/frontend/Magento/blank/Magento_Multishipping/web/css/source/module.less b/app/design/frontend/Magento/blank/Magento_Multishipping/web/css/source/module.less
index 10d1369a605fb7fffe21df6712025f85dc68391b..235d7da3cc15fb55f20ddc3fa3d9425ee555c5b5 100644
--- a/app/design/frontend/Magento/blank/Magento_Multishipping/web/css/source/module.less
+++ b/app/design/frontend/Magento/blank/Magento_Multishipping/web/css/source/module.less
@@ -7,7 +7,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 .multicheckout {
     .title {
@@ -55,7 +55,7 @@
             }
         }
     }
-    
+
     > .actions-toolbar {
         margin-top: @indent-xl-base;
     }
@@ -85,7 +85,7 @@
         &:extend(.abs-product-options-list all);
         &:extend(.abs-add-clearfix all);
     }
-    
+
     &:extend(.abs-account-blocks all);
 
     .block {
@@ -121,7 +121,7 @@
         strong {
             font-weight: @font-weight-base;
             span {
-                color: @color-primary-light;
+                .css(color, @color-primary-light);
             }
         }
     }
@@ -197,7 +197,7 @@
 //
 //    Mobile
 //--------------------------------------
-.responsive-max-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-s) {
     .multicheckout {
         .data.table {
             .address {
@@ -254,7 +254,7 @@
     }
 }
 
-.responsive-min-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-s) {
     .multicheckout {
         .actions-toolbar {
             .column:not(.sidebar-main) & {
diff --git a/app/design/frontend/Magento/blank/Magento_Newsletter/web/css/source/module.less b/app/design/frontend/Magento/blank/Magento_Newsletter/web/css/source/module.less
index e270bea1f993fd94d071180a52b02fa6a7e2bf96..ba675a34ac101110196b6c090b0a325bdaade689 100644
--- a/app/design/frontend/Magento/blank/Magento_Newsletter/web/css/source/module.less
+++ b/app/design/frontend/Magento/blank/Magento_Newsletter/web/css/source/module.less
@@ -7,7 +7,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 //
 //    Newsletter subscription
@@ -65,7 +65,7 @@
 //
 //    Desktop
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .block.newsletter {
         width: 32%;
         .field {
diff --git a/app/design/frontend/Magento/blank/Magento_Paypal/web/css/source/module.less b/app/design/frontend/Magento/blank/Magento_Paypal/web/css/source/module.less
index 1957714b58e1c74ce4df9d70741f3ca7e1d21772..cc65519a25b31ff546c0bdf742ae50e617bcac1a 100644
--- a/app/design/frontend/Magento/blank/Magento_Paypal/web/css/source/module.less
+++ b/app/design/frontend/Magento/blank/Magento_Paypal/web/css/source/module.less
@@ -7,7 +7,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 //
 //    PayPal checkout button
@@ -109,7 +109,7 @@
 //
 //    Mobile
 //--------------------------------------
-.responsive-max-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-s) {
     .table-paypal-review-items {
         .product-item-name {
             display: inline-block;
@@ -120,7 +120,7 @@
 //
 //    Desktop
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .paypal-review {
         .block-content {
             &:extend(.abs-add-clearfix-desktop all);
diff --git a/app/design/frontend/Magento/blank/Magento_RecurringPayment/web/css/source/module.less b/app/design/frontend/Magento/blank/Magento_RecurringPayment/web/css/source/module.less
index 2abfb62e38fcd174e4726c6053401a1aec0e99bd..a255bd4a8b6b53d2ff6ada6bbb8ab6b8ca4d0e63 100644
--- a/app/design/frontend/Magento/blank/Magento_RecurringPayment/web/css/source/module.less
+++ b/app/design/frontend/Magento/blank/Magento_RecurringPayment/web/css/source/module.less
@@ -7,7 +7,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 .payment-schedule {
     margin: 20px 0 0;
@@ -36,5 +36,5 @@
 //
 //    Desktop
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
 }
diff --git a/app/design/frontend/Magento/blank/Magento_Review/web/css/source/module.less b/app/design/frontend/Magento/blank/Magento_Review/web/css/source/module.less
index 9eae8f095e04ce2e16a99331a43c9c79d433dbba..041c8e1ef224e4d22de5a8470e2f86362fb0f17c 100644
--- a/app/design/frontend/Magento/blank/Magento_Review/web/css/source/module.less
+++ b/app/design/frontend/Magento/blank/Magento_Review/web/css/source/module.less
@@ -7,7 +7,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 .rating-summary {
     .mixin-rating-summary();
@@ -114,7 +114,7 @@
 //
 //    Desktop
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .product-reviews-summary {
         .products.wrapper.list & {
             margin: 0;
@@ -126,7 +126,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 .customer-review {
     .product-details {
@@ -201,7 +201,7 @@
 //--------------------------------------
 .review {
     &-toolbar {
-        border-top: 1px solid #c9c9c9;
+        border-top: 1px solid @color-gray79;
         margin: 0 0 @indent-base;
         text-align: center;
         &:first-child {
@@ -210,7 +210,7 @@
         .pages {
             display: block;
             text-align: center;
-            border-bottom: 1px solid #c9c9c9;
+            border-bottom: 1px solid @color-gray79;
             padding: @indent-base 0;
         }
         .limiter {
@@ -261,7 +261,7 @@
     }
     &-item {
         padding: @indent-base 0;
-        border-bottom: 1px solid #c9c9c9;
+        border-bottom: 1px solid @color-gray79;
         margin: 0;
         .clearer();
         &:last-child {
@@ -297,7 +297,7 @@
 //
 //    Desktop
 //--------------------------------------
-.responsive-min-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-s) {
     .review {
         &-form {
             max-width: 500px;
diff --git a/app/design/frontend/Magento/blank/Magento_Sales/web/css/source/module.less b/app/design/frontend/Magento/blank/Magento_Sales/web/css/source/module.less
index beb71a9007e16776e16b36af7d0794d94180cc8f..dcd17c87acc086bfbebd42df060d5db98ff5cbfd 100644
--- a/app/design/frontend/Magento/blank/Magento_Sales/web/css/source/module.less
+++ b/app/design/frontend/Magento/blank/Magento_Sales/web/css/source/module.less
@@ -7,7 +7,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 .order-links {
     border-bottom: @border-width-base solid @border-color-base;
@@ -203,7 +203,7 @@
 //
 //    Mobile
 //--------------------------------------
-.responsive-max-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-s) {
     .account {
         .order-details-items {
             .table-order-items {
@@ -234,7 +234,7 @@
 //
 //    Desktop
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .table-order-items {
         .subtotal,
         .amount {
diff --git a/app/design/frontend/Magento/blank/Magento_Sendfriend/web/css/source/module.less b/app/design/frontend/Magento/blank/Magento_Sendfriend/web/css/source/module.less
index 68d8e8eddd7f31ae71446d6388040dd6f0fc7d9d..6c656e6cddb90d02eb00428f66180b02dc36185f 100644
--- a/app/design/frontend/Magento/blank/Magento_Sendfriend/web/css/source/module.less
+++ b/app/design/frontend/Magento/blank/Magento_Sendfriend/web/css/source/module.less
@@ -7,7 +7,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 .form.send.friend {
     &:extend(.abs-add-fields all);
@@ -33,7 +33,7 @@
 //
 //    Desktop
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .form.send.friend {
         &:extend(.abs-add-fields-desktop all);
     }
diff --git a/app/design/frontend/Magento/blank/Magento_Theme/web/css/source/collapsible_navigation.less b/app/design/frontend/Magento/blank/Magento_Theme/web/css/source/collapsible_navigation.less
index 8b629b056c5910298dc230f72a7077615470926d..463946acee06901a201927cf6d70c0497dbca0aa 100644
--- a/app/design/frontend/Magento/blank/Magento_Theme/web/css/source/collapsible_navigation.less
+++ b/app/design/frontend/Magento/blank/Magento_Theme/web/css/source/collapsible_navigation.less
@@ -4,19 +4,19 @@
 //  */
 
 @collapsible-nav-background: @sidebar-background;
-@collapsible-nav-item-hover: #e8e8e8;
+@collapsible-nav-item-hover: @color-gray91;
 @collapsible-nav-color: false;
 @collapsible-nav-current-color: false;
 @collapsible-nav-current-font-weight: @font-weight-semibold;
 @collapsible-nav-current-border: 3px solid transparent;
-@collapsible-nav-current-border-color: #ff5501;
+@collapsible-nav-current-border-color: @color-orange-red1;
 
 
 //
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 //
 //    Collapsible navigation
@@ -42,7 +42,7 @@
             text-decoration: none;
             &:hover {
                 .css(background, @collapsible-nav-item-hover);
-            } 
+            }
         }
         &.current {
             a,
@@ -64,7 +64,7 @@
 //
 //    Desktop
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .block-collapsible-nav {
         .title {
             &:extend(.abs-visually-hidden-desktop all);
@@ -75,7 +75,7 @@
 //
 //    Mobile
 //--------------------------------------
-.responsive-max-m(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-m) {
     .block-collapsible-nav {
         position: absolute;
         top: -21px;
diff --git a/app/design/frontend/Magento/blank/Magento_Theme/web/css/source/module.less b/app/design/frontend/Magento/blank/Magento_Theme/web/css/source/module.less
index 047211740d770afaec39d96aca6351e8767b5877..f6f63a35b0b3c221650d6afeffc5fc013d8908ce 100644
--- a/app/design/frontend/Magento/blank/Magento_Theme/web/css/source/module.less
+++ b/app/design/frontend/Magento/blank/Magento_Theme/web/css/source/module.less
@@ -6,14 +6,14 @@
 @import "collapsible_navigation.less";
 
 @message-global-note-color: @text-color;
-@message-global-note-background: #ffee9c;
+@message-global-note-background: @color-yellow-light2;
 @message-global-note-link-color: @link-color;
 @message-global-note-link-color-hover: @link-color-hover;
 @message-global-note-link-color-active: @link-color-active;
-@message-global-note-border-color: #d6ca8e;
+@message-global-note-border-color: @color-yellow-light3;
 
 @message-global-caution-color: @color-white;
-@message-global-caution-background: #ff0101;
+@message-global-caution-background: @color-red9;
 @message-global-caution-link-color: @link-color;
 @message-global-caution-link-color-hover: @link-color-hover;
 @message-global-caution-link-color-active: @link-color-active;
@@ -30,13 +30,11 @@
 
 @h1-margin-bottom-desktop: @indent-xl-base;
 
-
-
 //
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 body {
     .css(background-color, @page-bg-color);
@@ -138,10 +136,6 @@ body {
             &:extend(.abs-reset-list all);
         }
         .links {
-            display: inline-block;
-            vertical-align: top;
-            margin-bottom: 20px;
-            padding: 0 50px 0 0;
             > li {
                 margin: 0 0 8px;
             }
@@ -207,9 +201,6 @@ body {
 
 .widget {
     clear: both;
-    img {
-        max-width: 100%;
-    }
     .block-title {
         &:extend(.abs-block-title all);
     }
@@ -220,7 +211,7 @@ body {
 //
 //    Desktop
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
 
     html,
     body {
@@ -232,7 +223,8 @@ body {
         .vendor-prefix-flex-direction(column);
         min-height: 100%; // stretch content area for sticky footer
         > .breadcrumbs,
-        > .top-container {
+        > .top-container,
+        > .widget {
             width: 100%;
             box-sizing: border-box;
         }
@@ -306,6 +298,12 @@ body {
             .block {
                 float: right;
             }
+            .links {
+                display: inline-block;
+                vertical-align: top;
+                margin-bottom: 20px;
+                padding: 0 50px 0 0;
+            }
             .switcher.store {
                 display: inline-block;
                 padding-right: 50px;
@@ -322,8 +320,7 @@ body {
 //    Common
 //--------------------------------------
 
-.responsive-common() {
-
+& when (@media-common = true) {
 
 .no-display {
     &:extend(.abs-no-display all);
diff --git a/app/design/frontend/Magento/blank/Magento_Weee/web/css/source/module.less b/app/design/frontend/Magento/blank/Magento_Weee/web/css/source/module.less
index 81a817b60a083b2cc05a69a51630c8df5c2ecbba..5e8017a0274a4647277de555ecf67c61ed5c9e71 100644
--- a/app/design/frontend/Magento/blank/Magento_Weee/web/css/source/module.less
+++ b/app/design/frontend/Magento/blank/Magento_Weee/web/css/source/module.less
@@ -7,7 +7,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 .minilist {
     .weee {
diff --git a/app/design/frontend/Magento/blank/Magento_Wishlist/web/css/source/module.less b/app/design/frontend/Magento/blank/Magento_Wishlist/web/css/source/module.less
index 574290a32fd96c88a8c85bbd995174d454dac52e..77738d0046d9397d0d2f3a38fa370a9236ae8af0 100644
--- a/app/design/frontend/Magento/blank/Magento_Wishlist/web/css/source/module.less
+++ b/app/design/frontend/Magento/blank/Magento_Wishlist/web/css/source/module.less
@@ -7,7 +7,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 .form.wishlist.items {
     .actions-toolbar {
@@ -141,7 +141,7 @@
 //
 //    Mobile
 //--------------------------------------
-.responsive-max-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-s) {
     .products-grid.wishlist {
         .product-item {
             border-bottom: 1px solid @color-secondary;
@@ -152,7 +152,7 @@
     }
 }
 
-.responsive-max-m(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-m) {
     .products-grid.wishlist {
         margin-right: -@indent-s-base;
         margin-bottom: @indent-l-base;
@@ -221,11 +221,11 @@
                     width: auto;
                 }
             }
-        } 
+        }
     }
 }
 
-.responsive-min-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-s) {
     .wishlist-index-index {
         .products-grid {
             .product-item {
@@ -242,7 +242,7 @@
 //
 //    Desktop
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .products-grid.wishlist {
         .product {
             &-item {
@@ -286,7 +286,7 @@
     }
 }
 
-.responsive-min-l(@break) when (@break = @screen-l) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-l) {
     .wishlist-index-index .products-grid .product-items { margin: 0; }
     .wishlist-index-index .products-grid .product-item {
         width: 24%;
diff --git a/app/design/frontend/Magento/blank/composer.json b/app/design/frontend/Magento/blank/composer.json
index f6da390cca977e941c13df73b7b077932bc1c327..90ed8e25844025c525ed12aa7e52362275c6622b 100644
--- a/app/design/frontend/Magento/blank/composer.json
+++ b/app/design/frontend/Magento/blank/composer.json
@@ -3,11 +3,11 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/framework": "0.42.0-beta3",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-theme",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/design/frontend/Magento/blank/theme.xml b/app/design/frontend/Magento/blank/theme.xml
index 49df5f9897d69b3c32d786a5d703eebd9371fbe1..5389a03c7220e2e0a4a128842308a66076d9be1a 100644
--- a/app/design/frontend/Magento/blank/theme.xml
+++ b/app/design/frontend/Magento/blank/theme.xml
@@ -6,7 +6,6 @@
 -->
 <theme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../lib/internal/Magento/Framework/Config/etc/theme.xsd">
     <title>Magento Blank</title>
-    <version>0.1.0</version>
     <media>
         <preview_image>media/preview.jpg</preview_image>
     </media>
diff --git a/app/design/frontend/Magento/blank/web/css/print.less b/app/design/frontend/Magento/blank/web/css/print.less
index f51a22e53e77796040e292fbf40bc8edabf851d3..c574ff4e25b770991fdbe9e42f55f503fe8473b2 100644
--- a/app/design/frontend/Magento/blank/web/css/print.less
+++ b/app/design/frontend/Magento/blank/web/css/print.less
@@ -1,5 +1,4 @@
 /**
- * @category    design
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
@@ -29,7 +28,7 @@
     // Don't show links for images, or javascript/internal links */
     pre,
     blockquote {
-        border: 1px solid #999;
+        border: 1px solid @color-gray60;
         page-break-inside: avoid;
     }
     thead {
@@ -42,7 +41,7 @@
         }
         table-layout: fixed;
         & > tfoot > tr:first-child {
-            border-top: 1px solid #999;
+            border-top: 1px solid @color-gray60;
         }
     }
     .box,
diff --git a/app/design/frontend/Magento/blank/web/css/source/abstract.less b/app/design/frontend/Magento/blank/web/css/source/abstract.less
index 2521eeab0a8b84e2386ff599091ddb6c9ed28190..9f0c27a0cf8132a3a277bf66c47b7e8c43cacd16 100644
--- a/app/design/frontend/Magento/blank/web/css/source/abstract.less
+++ b/app/design/frontend/Magento/blank/web/css/source/abstract.less
@@ -35,7 +35,7 @@
         clear: left;
         margin: 0 @indent-s-base @indent-xs-base 0;
         &:after {
-            content: ': ';  
+            content: ': ';
         }
     }
     dd {
@@ -49,7 +49,7 @@
     @abs-product-options-list();
 }
 
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .abs-product-options-list-desktop {
         @abs-product-options-list();
     }
@@ -66,13 +66,13 @@
     @abs-button-responsive();
 }
 
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .abs-button-desktop {
         width: auto;
     }
 }
 
-.responsive-max-m(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-m) {
     .abs-button-responsive-smaller {
         @abs-button-responsive();
     }
@@ -92,13 +92,13 @@
     }
 };
 
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .abs-blocks-2columns {
         @abs-blocks-2columns();
     }
 }
 
-.responsive-min-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-s) {
     .abs-blocks-2columns-s {
         @abs-blocks-2columns();
     }
@@ -221,9 +221,9 @@
         @_icon-font-size: 26px,
         @_icon-font-line-height: 15px,
         @_icon-font-text-hide: true,
-        @_icon-font-color: #303030,
-        @_icon-font-color-hover: #303030,
-        @_icon-font-color-active: #303030
+        @_icon-font-color: @color-gray19,
+        @_icon-font-color-hover: @color-gray19,
+        @_icon-font-color-active: @color-gray19
     );
 }
 
@@ -232,10 +232,10 @@
 //--------------------------------------
 .abs-product-link {
     .link(
-        @_link-color: #303030,
-        @_link-color-hover: #303030,
-        @_link-color-active: #303030,
-        @_link-color-visited: #303030
+        @_link-color: @color-gray19,
+        @_link-color-hover: @color-gray19,
+        @_link-color-active: @color-gray19,
+        @_link-color-visited: @color-gray19
     );
 }
 
@@ -250,13 +250,13 @@
     @abs-reset-left-margin();
 }
 
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .abs-reset-left-margin-desktop {
         @abs-reset-left-margin();
     }
 }
 
-.responsive-min-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-s) {
     .abs-reset-left-margin-desktop-s {
         @abs-reset-left-margin();
     }
@@ -280,7 +280,7 @@
 //
 //    Action with icon remove with text for desktop
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .abs-action-remove-desktop when not (@form-field-type-inline-label-width = false) and not (@form-field-type-inline-label-width = '') {
         top: 6px;
         margin-left: @form-field-type-inline-label-width + 50%;
@@ -327,7 +327,7 @@
 //
 //    Add Recipient for desktop
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .abs-add-fields-desktop {
         .fieldset {
             > .field:not(.choice) {
@@ -351,13 +351,13 @@
     .css(margin-left, @form-field-type-inline-label-width);
 };
 
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .abs-margin-for-forms-desktop {
         @abs-margin-for-forms-desktop();
     }
 }
 
-.responsive-min-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-s) {
     .abs-margin-for-forms-desktop-s {
         @abs-margin-for-forms-desktop();
     }
@@ -381,25 +381,25 @@
     @abs-visually-hidden();
 }
 
-.responsive-max-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-s) {
     .abs-visually-hidden-mobile {
         @abs-visually-hidden();
     }
 }
 
-.responsive-max-m(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-m) {
     .abs-visually-hidden-mobile-m {
         @abs-visually-hidden();
     }
 }
 
-.responsive-min-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-s) {
     .abs-visually-hidden-desktop-s {
         @abs-visually-hidden();
     }
 }
 
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .abs-visually-hidden-desktop {
         @abs-visually-hidden();
     }
@@ -416,25 +416,25 @@
     @abs-add-clearfix();
 }
 
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .abs-add-clearfix-desktop {
         @abs-add-clearfix();
     }
 }
 
-.responsive-min-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-s) {
     .abs-add-clearfix-desktop-s {
         @abs-add-clearfix();
     }
 }
 
-.responsive-max-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-s) {
     .abs-add-clearfix-mobile {
         @abs-add-clearfix();
     }
 }
 
-.responsive-max-m(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-m) {
     .abs-add-clearfix-mobile-m {
         @abs-add-clearfix();
     }
@@ -451,13 +451,13 @@
     @abs-add-box-sizing();
 }
 
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .abs-add-box-sizing-desktop {
         @abs-add-box-sizing();
     }
 }
 
-.responsive-min-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-s) {
     .abs-add-box-sizing-desktop-s {
         @abs-add-box-sizing();
     }
@@ -466,7 +466,7 @@
 //
 //    Revert field type
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .abs-revert-field-type-desktop {
         .fieldset {
             > .field,
@@ -648,7 +648,7 @@
 //
 //    Checkout order review
 //--------------------------------------
-.responsive-max-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-s) {
     .abs-checkout-order-review {
         tbody tr {
             &:not(:last-child) {
@@ -705,7 +705,7 @@
     );
 }
 
-.responsive-max-m(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-m) {
     .abs-icon-add-mobile {
         .icon-font(
             @_icon-font-content: @icon-expand,
@@ -739,7 +739,7 @@
 //
 //    Abstract toggle title block
 //--------------------------------------
-.responsive-max-m(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-m) {
     .abs-toggling-title-mobile {
         border-top: @border-width-base solid @border-color-base;
         border-bottom: @border-width-base solid @border-color-base;
@@ -779,13 +779,13 @@
     @abs-no-display();
 }
 
-.responsive-max-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-s) {
     .abs-no-display-s {
         @abs-no-display();
     }
 }
 
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .abs-no-display-desktop {
         @abs-no-display();
     }
@@ -802,7 +802,7 @@
 //
 //    Pager toolbar for non-catalog pages mobile
 //--------------------------------------
-.responsive-max-m(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-m) {
     .abs-pager-toolbar-mobile {
         .toolbar-amount,
         .limiter,
@@ -816,7 +816,7 @@
 //
 //    Pager toolbar for non-catalog pages mobile
 //--------------------------------------
-.responsive-max-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-s) {
     .abs-pager-toolbar-mobile-s {
         .toolbar-amount,
         .limiter,
@@ -829,7 +829,7 @@
 //
 //    Pager toolbar for non-catalog pages desktop
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .abs-pager-toolbar {
         margin-bottom: @indent-base;
         position: relative;
@@ -907,7 +907,7 @@
     }
 }
 
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .abs-shopping-cart-items-desktop {
         float: left;
         width: 73%;
diff --git a/app/design/frontend/Magento/blank/web/css/source/actions-toolbar.less b/app/design/frontend/Magento/blank/web/css/source/actions-toolbar.less
index 73db3a5f9fe0d30b03e3a08bdf3ccc4c1196439f..c246c38e904bdc8b58680d4e739c72d1145b78d1 100644
--- a/app/design/frontend/Magento/blank/web/css/source/actions-toolbar.less
+++ b/app/design/frontend/Magento/blank/web/css/source/actions-toolbar.less
@@ -7,7 +7,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 .actions-toolbar {
     > .primary,
@@ -32,7 +32,7 @@
 //
 //    Desktop
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .actions-toolbar {
         .actions-toolbar();
         > .primary,
diff --git a/app/design/frontend/Magento/blank/web/css/source/breadcrumbs.less b/app/design/frontend/Magento/blank/web/css/source/breadcrumbs.less
index 1c1527c4309678c0e51332c8f7252fc9c6807424..1b459c27ef12d7c9df59bca23ab2ccee38d2446f 100644
--- a/app/design/frontend/Magento/blank/web/css/source/breadcrumbs.less
+++ b/app/design/frontend/Magento/blank/web/css/source/breadcrumbs.less
@@ -7,7 +7,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 .breadcrumbs {
     .mixin-breadcrumbs();
diff --git a/app/design/frontend/Magento/blank/web/css/source/buttons.less b/app/design/frontend/Magento/blank/web/css/source/buttons.less
index 96a0abc950230824bf549f2226d447562b56eba2..ada2483849ae8337f721d6d6924b0e56914f1d3a 100644
--- a/app/design/frontend/Magento/blank/web/css/source/buttons.less
+++ b/app/design/frontend/Magento/blank/web/css/source/buttons.less
@@ -7,7 +7,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 //
 //    Using buttons mixins
diff --git a/app/design/frontend/Magento/blank/web/css/source/forms.less b/app/design/frontend/Magento/blank/web/css/source/forms.less
index e0c1990ef921cfe03258af98ef0997cd9e126265..ac5ba9d30f729fffce3a4d1f71c8a1f7a97cc81c 100644
--- a/app/design/frontend/Magento/blank/web/css/source/forms.less
+++ b/app/design/frontend/Magento/blank/web/css/source/forms.less
@@ -9,7 +9,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 .fieldset {
     .form-fieldset();
@@ -94,9 +94,10 @@ select:focus ~ .tooltip .tooltip-content {
         .fields > .field {
             margin: 0 0 @form-field-vertical-indent;
             .label {
-                padding: 0 0 5px;
+                margin: 0 0 4px;
+                padding: 0 0 @indent-xs-base;
                 text-align: left;
-                width: 100%
+                width: 100%;
             }
             .control {
                 width: 100%;
@@ -110,7 +111,7 @@ select:focus ~ .tooltip .tooltip-content {
 //
 //    Desktop
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .fieldset {
         .legend {
             &:extend(.abs-margin-for-forms-desktop all);
diff --git a/app/design/frontend/Magento/blank/web/css/source/icons.less b/app/design/frontend/Magento/blank/web/css/source/icons.less
index aa022529ea6250010e3b5924d8252ebded1fb2f6..8c910fd5ee08d348e0b4725d928684546bc3236c 100644
--- a/app/design/frontend/Magento/blank/web/css/source/icons.less
+++ b/app/design/frontend/Magento/blank/web/css/source/icons.less
@@ -2,3 +2,10 @@
 //  * Copyright © 2015 Magento. All rights reserved.
 //  * See COPYING.txt for license details.
 //  */
+
+.font-face(
+    @family-name: @icon-font-name,
+    @font-path: @icon-font-path,
+    @font-weight: normal,
+    @font-style: normal
+);
diff --git a/app/design/frontend/Magento/blank/web/css/source/layout.less b/app/design/frontend/Magento/blank/web/css/source/layout.less
index 7f67532fedce27a07452411b6d58a20e1fec1115..4499557886ca8ac957a9e857adb8e2427d46929e 100644
--- a/app/design/frontend/Magento/blank/web/css/source/layout.less
+++ b/app/design/frontend/Magento/blank/web/css/source/layout.less
@@ -10,7 +10,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 .columns {
     #layout-columns();
@@ -40,7 +40,7 @@
 //
 //    Mobile
 //--------------------------------------
-.responsive-max-m(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-m) {
     .navigation,
     .breadcrumbs,
     .page-header .header.panel,
@@ -66,7 +66,7 @@
 //
 //    Desktop
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .navigation,
     .breadcrumbs,
     .page-header .header.panel,
diff --git a/app/design/frontend/Magento/blank/web/css/source/loaders.less b/app/design/frontend/Magento/blank/web/css/source/loaders.less
index f9fa76b12e0172d8ecd80261780d51adf516eefc..0c608a402d54782d412ab447990f01e045c00e73 100644
--- a/app/design/frontend/Magento/blank/web/css/source/loaders.less
+++ b/app/design/frontend/Magento/blank/web/css/source/loaders.less
@@ -7,7 +7,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 .load.indicator {
     .loader();
diff --git a/app/design/frontend/Magento/blank/web/css/source/messages.less b/app/design/frontend/Magento/blank/web/css/source/messages.less
index 064465399818c922a85da4aac5bf5b758aefaa48..94917805459512368610512f77ec352ce8a60fe5 100644
--- a/app/design/frontend/Magento/blank/web/css/source/messages.less
+++ b/app/design/frontend/Magento/blank/web/css/source/messages.less
@@ -7,7 +7,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 .message.info {
     .message-icon-inner(info);
diff --git a/app/design/frontend/Magento/blank/web/css/source/navigation.less b/app/design/frontend/Magento/blank/web/css/source/navigation.less
index b98209c575fb49682e8c3486a3c1b7d36eeeb3d8..9f572326c4d8613f2ead506c5b56fadfdcf7128b 100644
--- a/app/design/frontend/Magento/blank/web/css/source/navigation.less
+++ b/app/design/frontend/Magento/blank/web/css/source/navigation.less
@@ -7,7 +7,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 .panel.header {
     .links,
@@ -43,7 +43,7 @@
 //    Mobile
 //--------------------------------------
 @active-nav-indent: 54px;
-.responsive-max-m(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-m) {
     .navigation {
         padding: 0;
         .parent .level-top {
@@ -79,7 +79,7 @@
         .css(transition, left .3s, 1);
 
         .switcher {
-            border-top: 1px solid #D1D1D1;
+            border-top: 1px solid @color-gray82;
             margin: 0;
             font-size: 1.6rem;
             padding: 8px 20px;
@@ -89,7 +89,7 @@
                 margin-bottom: @indent-xs-base;
             }
             &:last-child {
-                    border-bottom: 1px solid #D1D1D1;
+                    border-bottom: 1px solid @color-gray82;
             }
             &-trigger {
                 strong {
@@ -123,7 +123,7 @@
         .header.links {
             .list-reset-styles();
             li {
-                border-top: 1px solid #D1D1D1;
+                border-top: 1px solid @color-gray82;
                 margin: 0;
                 font-size: 1.6rem;
                 &.greet.welcome {
@@ -131,7 +131,7 @@
                     font-weight: 700;
                 }
                 &:last-child {
-                    border-bottom: 1px solid #D1D1D1;
+                    border-bottom: 1px solid @color-gray82;
                 }
             }
             a, a:hover
@@ -227,7 +227,7 @@
 //
 //    Desktop
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .nav-toggle {
         display: none;
     }
diff --git a/app/design/frontend/Magento/blank/web/css/source/pages.less b/app/design/frontend/Magento/blank/web/css/source/pages.less
index 31e0ea5ba27d406fd93d21416116137c503ecec9..a6b4c6178f98aa448a036ecabef6f19059f54270 100644
--- a/app/design/frontend/Magento/blank/web/css/source/pages.less
+++ b/app/design/frontend/Magento/blank/web/css/source/pages.less
@@ -7,7 +7,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 .pages {
     .pager();
diff --git a/app/design/frontend/Magento/blank/web/css/source/popups.less b/app/design/frontend/Magento/blank/web/css/source/popups.less
index db81f9b3838bff566e4543419ea4af2ff18a2b74..34b652793e77ae52ef1cabb144d3a65fb1070da1 100644
--- a/app/design/frontend/Magento/blank/web/css/source/popups.less
+++ b/app/design/frontend/Magento/blank/web/css/source/popups.less
@@ -7,7 +7,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 // Popup working with dropdown dialog
 .ui-dialog.popup {
diff --git a/app/design/frontend/Magento/blank/web/css/source/price.less b/app/design/frontend/Magento/blank/web/css/source/price.less
index 6600547fdd966cbaff0fffbbf34ade41c08b92be..2c1bcf0eef194bc0c50a257122d50da452300ec3 100644
--- a/app/design/frontend/Magento/blank/web/css/source/price.less
+++ b/app/design/frontend/Magento/blank/web/css/source/price.less
@@ -7,7 +7,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 // Prices
 .price-style-1() {
diff --git a/app/design/frontend/Magento/blank/web/css/source/reset.less b/app/design/frontend/Magento/blank/web/css/source/reset.less
new file mode 100644
index 0000000000000000000000000000000000000000..8716b3b745b1f7e50bc7032c9cf0cf2b8121ffee
--- /dev/null
+++ b/app/design/frontend/Magento/blank/web/css/source/reset.less
@@ -0,0 +1,6 @@
+// /**
+//  * Copyright © 2015 Magento. All rights reserved.
+//  * See COPYING.txt for license details.
+//  */
+
+.magento-reset();   // Reset default styles with magento-reset
diff --git a/app/design/frontend/Magento/blank/web/css/source/sections.less b/app/design/frontend/Magento/blank/web/css/source/sections.less
index 738efddb4ce3ebc5463ef1417c49c4e8c7e167d5..7d97f8c378e9ac92a14375c15575e7267877838b 100644
--- a/app/design/frontend/Magento/blank/web/css/source/sections.less
+++ b/app/design/frontend/Magento/blank/web/css/source/sections.less
@@ -7,7 +7,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 .product.data.items {
     .data-accordion();
@@ -19,7 +19,7 @@
 //
 //    Desktop
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .product.data.items {
         .data-tabs(
             @_tab-content-border-top-status: true
@@ -31,7 +31,7 @@
 //    Mobile
 //--------------------------------------
 
-.responsive-max-m(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-m) {
     .product.data.items {
         .data-accordion();
         .data.item {
diff --git a/app/design/frontend/Magento/blank/web/css/source/tables.less b/app/design/frontend/Magento/blank/web/css/source/tables.less
index c23621b0d9a7cfdb5733c6ca602be14bec2d5033..904bb05b6f3a0bd7e707ade1b22b6a76415e2e7a 100644
--- a/app/design/frontend/Magento/blank/web/css/source/tables.less
+++ b/app/design/frontend/Magento/blank/web/css/source/tables.less
@@ -7,7 +7,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 .table-wrapper {
     margin-bottom: @indent-base;
@@ -42,7 +42,7 @@ table {
 //
 //    Mobile
 //--------------------------------------
-.responsive-max-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-s) {
     .table-wrapper {
         .table-overflow();
         position: relative; // to hide unnecessary horizontal scrollbar in Safari
diff --git a/app/design/frontend/Magento/blank/web/css/source/theme.less b/app/design/frontend/Magento/blank/web/css/source/theme.less
index aac0f1a953ba103bbf104285af1bc3b6821fea0b..f47cd9af6f28eeec57626da5aab8cbb2aa5bd999 100644
--- a/app/design/frontend/Magento/blank/web/css/source/theme.less
+++ b/app/design/frontend/Magento/blank/web/css/source/theme.less
@@ -9,7 +9,7 @@
 @link-color-visited: @link-color;
 
 // Introduce new theme specific variables
-@sidebar-background: #f5f5f5;  // Used in cart sidebar, Checkout sidebar, Tier Prices, My account navigation, Rating block background
+@sidebar-background: @color-white-smoke;  // Used in cart sidebar, Checkout sidebar, Tier Prices, My account navigation, Rating block background
 
 @h1-font-size: ceil((@font-size-base * 1.85)); // 26px
 @h1-font-size-desktop: ceil((@font-size-base * 2.85)); // 40px
diff --git a/app/design/frontend/Magento/blank/web/css/source/tooltips.less b/app/design/frontend/Magento/blank/web/css/source/tooltips.less
index 9bcfe1c6152b3c591700d90e91ce8e336d0bb72c..7303335dba48b72ecd4c32a54c648d8d642d818d 100644
--- a/app/design/frontend/Magento/blank/web/css/source/tooltips.less
+++ b/app/design/frontend/Magento/blank/web/css/source/tooltips.less
@@ -7,7 +7,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 .tooltip.wrapper {
     .tooltip(
diff --git a/app/design/frontend/Magento/blank/web/css/source/typography.less b/app/design/frontend/Magento/blank/web/css/source/typography.less
index 2fcb84e27191844a59db6534a9015aa81fe6aa96..1facef728af939c6bca78e392f2ebea51dba4b0b 100644
--- a/app/design/frontend/Magento/blank/web/css/source/typography.less
+++ b/app/design/frontend/Magento/blank/web/css/source/typography.less
@@ -37,7 +37,7 @@
 //
 //    Desktop
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     h1 {
         .css(font-size, @h1-font-size-desktop);
         .css(margin-bottom, @h1-margin-bottom-desktop);
@@ -49,7 +49,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 .items {
     .list-reset-styles();
diff --git a/app/design/frontend/Magento/blank/web/css/styles-l.less b/app/design/frontend/Magento/blank/web/css/styles-l.less
index 53d4c5e1e3ec1f7c3e534cef0561f86925e778b3..f3aaed4c81db63f796c531275d2894cce549bd56 100644
--- a/app/design/frontend/Magento/blank/web/css/styles-l.less
+++ b/app/design/frontend/Magento/blank/web/css/styles-l.less
@@ -1,9 +1,9 @@
-// /**
-//  * Copyright © 2015 Magento. All rights reserved.
-//  * See COPYING.txt for license details.
-//  */
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
 
-@import 'styles.less';
+@import "styles.less";
 
 //
 //    Magento Import instructions
@@ -14,22 +14,8 @@
 //@magento_import "source/extend.less"; // for minor customisation
 
 //
-//    Laptop styles collector
+//    Styles grouped by media queries
 //--------------------------------------
-
-.responsive-min-l(@break) {}
-
-@media all and (min-width: @screen-m),
-print {
-    .responsive-min-l(@screen-m);
-}
-
-@media all and (min-width: @screen-l),
-print {
-    .responsive-min-l(@screen-l);
-}
-
-@media all and (min-width: @screen-xl),
-print {
-    .responsive-min-l(@screen-xl);
-}
+@import "source/lib/responsive.less";
+@media-target: 'desktop'; // Sets target device for this file
+@media-common: false; // Sets not to output common styles
diff --git a/app/design/frontend/Magento/blank/web/css/styles-m.less b/app/design/frontend/Magento/blank/web/css/styles-m.less
index 39621246c55b25bd644e054e158a947d2547f8b4..cbf0274d2d174e9bddec2f1e4c819c829ad9df28 100644
--- a/app/design/frontend/Magento/blank/web/css/styles-m.less
+++ b/app/design/frontend/Magento/blank/web/css/styles-m.less
@@ -1,11 +1,11 @@
-// /**
-//  * Copyright © 2015 Magento. All rights reserved.
-//  * See COPYING.txt for license details.
-//  */
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
 
 .magento-reset();   // Reset default styles with magento_reset
 
-@import 'styles';
+@import "styles.less";
 
 //    Magento Import instructions
 //--------------------------------------
@@ -15,31 +15,7 @@
 //@magento_import "source/extend.less"; // for minor customisation
 
 //
-//    Common styles collector
+//    Styles grouped by media queries
 //--------------------------------------
-
-.responsive-common() {}
-.responsive-common();
-
-//
-//    Mobile styles collector
-//--------------------------------------
-
-.responsive-max-m(@break) {}
-.responsive-min-m(@break) {}
-
-@media only screen and (max-width: (@screen-xs - 1)) {
-    .responsive-max-m(@screen-xs);
-}
-
-@media only screen and (max-width: (@screen-s - 1)) {
-    .responsive-max-m(@screen-s);
-}
-
-@media only screen and (max-width: (@screen-m - 1)) {
-    .responsive-max-m(@screen-m);
-}
-
-@media all and (min-width: @screen-s) {
-    .responsive-min-m(@screen-s);
-}
+@import "source/lib/responsive.less";
+@media-target: 'mobile'; // Sets target device for this file
diff --git a/app/design/frontend/Magento/blank/web/css/styles.less b/app/design/frontend/Magento/blank/web/css/styles.less
index d8db194f17d2042e9048ac5762cf8fc487c912e5..3f8398a9e231b08b978da08efd904dbdd406c1a3 100644
--- a/app/design/frontend/Magento/blank/web/css/styles.less
+++ b/app/design/frontend/Magento/blank/web/css/styles.less
@@ -1,5 +1,4 @@
 /**
- * @category    design
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
diff --git a/app/design/frontend/Magento/luma/Magento_Bundle/web/css/source/module.less b/app/design/frontend/Magento/luma/Magento_Bundle/web/css/source/module.less
index d0c1aefb387ddd75c835bc9c4cea06d7b7154b4c..095ee22c4e5ff6d5d31cb15db839325aa74ee933 100644
--- a/app/design/frontend/Magento/luma/Magento_Bundle/web/css/source/module.less
+++ b/app/design/frontend/Magento/luma/Magento_Bundle/web/css/source/module.less
@@ -7,7 +7,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 .bundle-actions {
     margin: 0 0 @indent-l-base;
@@ -39,7 +39,7 @@
         margin-bottom: @indent-l-base;
         .fieldset > .field {
             padding-top: @form-field-vertical-indent;
-            border-top: 1px #e4e4e4 solid;
+            border-top: 1px @color-gray-middle1 solid;
             &:first-of-type {
                 border-top: 0;
                 padding-top: 0;
@@ -83,7 +83,7 @@
         }
         > .title,
         .bundle-summary .subtitle {
-            border-bottom: 1px #e4e4e4 solid;
+            border-bottom: 1px @color-gray-middle1 solid;
             padding-bottom: 16px;
             margin-bottom: @indent-m-base;
         }
@@ -142,7 +142,7 @@
         }
     }
     p.required {
-        color: @form-field-label-asterisk-color;
+        .css(color, @form-field-label-asterisk-color);
     }
     .nested {
         .field.qty {
@@ -166,7 +166,7 @@
 //
 //    Desktop
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .bundle-actions {
         .action.primary.customize {
             width: auto;
@@ -193,12 +193,12 @@
                     font-size: @price-size-desktop;
                     line-height: @price-size-desktop;
                     font-weight: @font-weight-semibold;
-                    color: @price-color;
+                    .css(color, @price-color);
                 }
             }
             .price-container {
                 .weee {
-                    color: @price-color;
+                    .css(color, @price-color);
                     .price {
                         .font-size(12);
                         font-weight: @font-weight-bold;
diff --git a/app/design/frontend/Magento/luma/Magento_Catalog/web/css/source/listings.less b/app/design/frontend/Magento/luma/Magento_Catalog/web/css/source/listings.less
index 0d2580ca7de7e2226e232643fe01832b47d74c43..19e47cb9d3cd3d65b5063a8c2face3d582921127 100644
--- a/app/design/frontend/Magento/luma/Magento_Catalog/web/css/source/listings.less
+++ b/app/design/frontend/Magento/luma/Magento_Catalog/web/css/source/listings.less
@@ -10,7 +10,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 .product-name() {
     font-weight: @font-weight-base;
@@ -100,7 +100,7 @@
             }
             .price-label {
                 font-size: @font-size-s;
-                color: @text-color-muted;
+                .css(color, @text-color-muted);
             }
         }
 
@@ -219,7 +219,7 @@
 //    Mobile
 //--------------------------------------
 
-.responsive-max-m (@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-s) {
     .products-list .product {
         &-item {
             table-layout: fixed;
@@ -231,35 +231,37 @@
     }
 }
 
-.responsive-min-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-s) {
     .product-item-info {
         .products-grid &:hover {
             margin: -10px;
             padding: 9px;
-            border: 1px solid #bbb;
+            border: 1px solid @color-gray-light2;
             @_shadow: 3px 3px 4px 0 rgba(0, 0, 0, .3);
             .css(box-shadow, @_shadow);
             position: relative;
             z-index: 2;
-            background: @color-white;
+            .css(background, @color-white);
             .product-item-inner {
                 display: block;
             }
         }
     }
     .product-item-inner {
-        display: none;
-        position: absolute;
-        left: 0;
-        right: -1px;
-        z-index: 2;
-        background: @color-white;
-        padding: 0 9px 9px 9px;
-        margin: 9px 0 0 -1px;
-        border: 1px solid #bbb;
-        border-top: none;
-        @_shadow: 3px 4px 4px 0 rgba(0, 0, 0, .3);
-        .css(box-shadow, @_shadow);
+        .products-grid & {
+            display: none;
+            position: absolute;
+            left: 0;
+            right: -1px;
+            z-index: 2;
+            .css(background, @color-white);
+            padding: 0 9px 9px 9px;
+            margin: 9px 0 0 -1px;
+            border: 1px solid @color-gray-light2;
+            border-top: none;
+            @_shadow: 3px 4px 4px 0 rgba(0, 0, 0, .3);
+            .css(box-shadow, @_shadow);
+        }
     }
 
     .product-item-actions {
@@ -304,12 +306,12 @@
 //    Desktop
 //--------------------------------------
 
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .page-products .products-grid .product-item { width: 100%/3 }
     .page-products.page-layout-1column .products-grid .product-item { width: 100%/4 }
     .page-products.page-layout-3columns .products-grid .product-item { width: 100%/2 }
 }
-.responsive-min-l(@break) when (@break = @screen-l) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-l) {
     .products-grid .product-item { width: 100%/5 }
     .page-layout-1column .products-grid .product-item { width: 100%/6 }
     .page-layout-3columns .products-grid .product-item { width: 100%/4 }
diff --git a/app/design/frontend/Magento/luma/Magento_Catalog/web/css/source/module.less b/app/design/frontend/Magento/luma/Magento_Catalog/web/css/source/module.less
index 39dbcb86b5362e7fc28de72e106fca382f2052e8..d0a743141695773fb0c883fb0c2788c5c41f21e9 100644
--- a/app/design/frontend/Magento/luma/Magento_Catalog/web/css/source/module.less
+++ b/app/design/frontend/Magento/luma/Magento_Catalog/web/css/source/module.less
@@ -6,21 +6,21 @@
 @import "listings.less";
 @import "toolbar.less";
 
-@product-info-price: #575757;
+@product-info-price: @color-gray34;
 @product-h1-margin-bottom-desktop: @indent-s-base + @indent-xs-base;
 
 //
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 //
 //    Category view
 //--------------------------------------
 .old-price,
 .old.price {
-    color: @text-color-muted;
+    .css(color, @text-color-muted);
 }
 
 .price-tier_price {
@@ -110,7 +110,7 @@
     }
     .notice {
         margin: @indent-s-base 0;
-        color: @text-color-muted;
+        .css(color, @text-color-muted);
         .font-size(@font-size-s);
     }
     .product.thumbs {
@@ -150,10 +150,10 @@
 
 .product-info-main {
     .product-info-price {
-        border-bottom: 1px #c1c1c1 solid;
+        border-bottom: 1px @color-gray-light5 solid;
         display: table;
         width: 100%;
-        color: @product-info-price;
+        .css(color, @product-info-price);
         margin-bottom: @indent-s-base + @indent-xs-base;
         .price-box {
             display: table-cell;
@@ -251,7 +251,7 @@
 
 .product-options-bottom .price-box,
 .product-info-price .price-box {
-    color: @product-info-price;
+    .css(color, @product-info-price);
     display: table-cell;
     vertical-align: top;
     padding-bottom: @indent-s-base;
@@ -390,7 +390,7 @@
             margin-right: 8px;
         }
         .counter {
-            color: @color-primary-lighter;
+            .css(color, @color-primary-lighter);
             font-size: 12px;
             white-space: nowrap;
         }
@@ -452,7 +452,7 @@
 //
 //    Mobile @screen-m
 //--------------------------------------
-.responsive-max-m(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-m) {
     .catalog-product-view {
         .column.main {
             .vendor-prefix-display(flex);
@@ -467,7 +467,7 @@
 //
 //    Mobile @screen-s
 //--------------------------------------
-.responsive-max-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-s) {
     .product-social-links {
         .action.tocompare {
             display: none;
@@ -500,7 +500,7 @@
 //
 //    Desktop
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .product-info-main {
         .page-title {
             h1 {
@@ -605,7 +605,7 @@
 //
 //    Desktop large
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-xl) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-xl) {
     .sidebar {
         .product-items {
             .product-item {
@@ -631,7 +631,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 //
 //    Minimum Advertising Price
@@ -822,7 +822,7 @@ body.catalog-product-compare-index {
     top: 0;
     left: 0;
     width: auto;
-    background: @color-white;
+    .css(background, @color-white);
 }
 
 .block-compare {
@@ -855,7 +855,7 @@ body.catalog-product-compare-index {
 //
 //    Mobile
 //--------------------------------------
-.responsive-max-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-s) {
     .table-wrapper.comparison {
         .table-comparison > tbody > tr{
             > th,
@@ -866,7 +866,7 @@ body.catalog-product-compare-index {
         }
     }
 }
-.responsive-max-m(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-m) {
     .compare.wrapper,
     [class*="block-compare"] {
         display: none;
@@ -876,7 +876,7 @@ body.catalog-product-compare-index {
 //
 //    Desktop
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .compare.wrapper {
         float: right;
         .list-reset-styles();
@@ -894,7 +894,7 @@ body.catalog-product-compare-index {
             );
         }
         .counter.qty {
-            color: @color-primary-lighter;
+            .css(color, @color-primary-lighter);
             &:before {
                 content: "(";
             }
@@ -909,7 +909,7 @@ body.catalog-product-compare-index {
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 .block.related {
     .action.select {
@@ -938,7 +938,7 @@ body.catalog-product-compare-index {
 //
 //    Desktop large
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-l) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-l) {
     .box-tocart {
         .paypal:first-of-type {
             margin-top: 13px;
diff --git a/app/design/frontend/Magento/luma/Magento_Catalog/web/css/source/toolbar.less b/app/design/frontend/Magento/luma/Magento_Catalog/web/css/source/toolbar.less
index c590c9c66debaf1e5de1b42c0b2cb5a48806547d..77a787112480f185ea21e8015321710cb71d0bce 100644
--- a/app/design/frontend/Magento/luma/Magento_Catalog/web/css/source/toolbar.less
+++ b/app/design/frontend/Magento/luma/Magento_Catalog/web/css/source/toolbar.less
@@ -5,7 +5,7 @@
 
 @toolbar-mode-icon-font-size: 16px;
 @toolbar-background: transparent;
-@toolbar-element-background: #f0f0f0;
+@toolbar-element-background: @color-gray94;
 @pager-action-background: @toolbar-element-background;
 @pager-action-background-hover: darken(@toolbar-element-background, 7%);
 @pager-font-weight: @font-weight-bold;
@@ -14,7 +14,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 .page-products .columns {
     position: relative;
@@ -24,7 +24,7 @@
 
 .toolbar {
     select {
-        background-color: @toolbar-element-background;
+        .css(background-color, @toolbar-element-background);
         border-radius: 3px;
         .css(box-shadow, @button-shadow);
     }
@@ -120,13 +120,13 @@
 //    Mobile
 //--------------------------------------
 
-.responsive-max-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-s) {
     .toolbar-products {
         margin-bottom: 0;
     }
 }
 
-.responsive-min-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-s) {
     .page-products .columns {
         position: relative;
         z-index: 1;
@@ -160,7 +160,7 @@
             float: left;
             border: 1px solid @border-color-base;
             font-weight: @font-weight-base;
-            color: @text-color-muted;
+            .css(color, @text-color-muted);
             text-align: center;
             padding: 7px 10px;
             line-height: 1;
@@ -173,7 +173,7 @@
             }
             &:hover {
                 background: darken(@toolbar-element-background, 2%);
-                color: @text-color-muted;
+                .css(color, @text-color-muted);
             }
             &:last-child {
                 border-radius: 0 3px 3px 0;
@@ -182,7 +182,7 @@
             &.active {
                 .css(box-shadow, @button-shadow-active);
                 background: darken(@toolbar-element-background, 7%);
-                color: #9e9e9e;
+                color: @color-gray62;
             }
             .icon-font(
                 @icon-grid,
diff --git a/app/design/frontend/Magento/luma/Magento_CatalogSearch/web/css/source/module.less b/app/design/frontend/Magento/luma/Magento_CatalogSearch/web/css/source/module.less
index 7fe66442b3bff90b9a08e224b4c2105f156f6a69..2959b60e23263b18a6b0cbc9d1fa8d44c034ea34 100644
--- a/app/design/frontend/Magento/luma/Magento_CatalogSearch/web/css/source/module.less
+++ b/app/design/frontend/Magento/luma/Magento_CatalogSearch/web/css/source/module.less
@@ -5,15 +5,15 @@
 
 @autocomplete-background: @color-white;
 @autocomplete-border: 1px solid @form-element-input-border-color;
-@autocomplete-item-border: 1px solid #e5e5e5;
-@autocomplete-item-hover: #e8e8e8;
-@autocomplete-item-amount-color: #999;
+@autocomplete-item-border: 1px solid @color-gray90;
+@autocomplete-item-hover: @color-gray91;
+@autocomplete-item-amount-color: @color-gray60;
 
 //
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 .block-search {
     margin-bottom: 0;
@@ -74,12 +74,12 @@
     ul {
         .list-reset-styles();
         &:not(:empty) {
-            background: @autocomplete-background;
-            border: @autocomplete-border;
+            .css(background, @autocomplete-background);
+            .css(border, @autocomplete-border);
             border-top: 0;
         }
         li {
-            border-top: @autocomplete-item-border;
+            .css(border-top, @autocomplete-item-border);
             cursor: pointer;
             padding: @indent-xs-base @indent-xl-base @indent-xs-base @indent-s-base;
             margin: 0;
@@ -91,10 +91,10 @@
             }
             &:hover,
             &.selected {
-                background: @autocomplete-item-hover;
+                .css(background, @autocomplete-item-hover);
             }
             .amount {
-                color: @autocomplete-item-amount-color;
+                .css(color, @autocomplete-item-amount-color);
                 position: absolute;
                 right: 7px;
                 top: @indent-xs-base;
@@ -168,7 +168,7 @@
 //
 //    Mobile
 //--------------------------------------
-.responsive-max-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-s) {
     .block-search {
         margin-top: @indent-s-base;
     }
@@ -177,7 +177,7 @@
 //
 //    Desktop
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .block-search {
         position: relative;
         float: right;
@@ -215,7 +215,7 @@
             .button-reset();
             &:focus {
                 &:before {
-                    color: @color-gray20;
+                    .css(color, @color-gray20);
                 }
             }
         }
diff --git a/app/design/frontend/Magento/luma/Magento_Checkout/web/css/source/cart.less b/app/design/frontend/Magento/luma/Magento_Checkout/web/css/source/cart.less
index 8ff56139d19a1623b64a81830b8f007284cc1a5c..826ffb01e5a28665e94a242e18dc185566f59c16 100644
--- a/app/design/frontend/Magento/luma/Magento_Checkout/web/css/source/cart.less
+++ b/app/design/frontend/Magento/luma/Magento_Checkout/web/css/source/cart.less
@@ -4,14 +4,14 @@
 //  */
 
 @mobile-cart-padding: 15px;
-@cart-price-color: #666;
+@cart-price-color: @color-gray40;
 @cart-item-cell-padding-top: 20px;
 
 //
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 //
 //    Shopping cart
@@ -37,7 +37,7 @@
     //  Summary block
     &-summary {
         &:extend(.abs-add-box-sizing all);
-        background: @sidebar-background;
+        .css(background, @sidebar-background);
         margin-bottom: 25px;
         padding: 1px 0 25px;
         > .title {
@@ -270,7 +270,7 @@
                 }
             }
             > .price {
-                color: @color-primary-lighter;
+                .css(color, @color-primary-lighter);
                 .font-size(18);
                 font-weight: @font-weight-bold;
             }
@@ -431,7 +431,7 @@
 //
 //    Mobile
 //--------------------------------------
-.responsive-max-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-s) {
     .cart {
         &-totals {
              .table.totals {
@@ -466,7 +466,7 @@
     }
 }
 
-.responsive-max-m(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-m) {
     .cart {
         // Cart container
         &-container {
@@ -543,7 +543,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 //
 //    Cross sell
@@ -561,7 +561,7 @@
 //
 //    Desktop
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .checkout-cart-index {
         .page-main {
             padding-left: @layout-width-xs-indent;
diff --git a/app/design/frontend/Magento/luma/Magento_Checkout/web/css/source/minicart.less b/app/design/frontend/Magento/luma/Magento_Checkout/web/css/source/minicart.less
index 2749ee8267b955e07b5e3ba043bda322889d34af..685e89076f55f87934584e26ef3761b873e1ff1b 100644
--- a/app/design/frontend/Magento/luma/Magento_Checkout/web/css/source/minicart.less
+++ b/app/design/frontend/Magento/luma/Magento_Checkout/web/css/source/minicart.less
@@ -7,7 +7,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 //
 //    Minicart
@@ -119,9 +119,9 @@
             &.empty {
                display: none;
             }
-            background: @color-active;
+            .css(background, @color-active);
             border-radius: 2px;
-            color: @page-bg-color;
+            .css(color, @page-bg-color);
             clip: none;
             display: inline-block;
             height: 24px;
@@ -165,7 +165,7 @@
             font-weight: @font-weight-base;
             margin-top: 0;
             a {
-                color: @link-color;
+                .css(color, @link-color);
             }
         }
         &-item-details {
@@ -179,7 +179,7 @@
             &:after {
                 position: static;
                 margin: 0 0 0 @indent-xs-base;
-                color: @color-gray56;
+                .css(color, @color-gray56);
             }
             border: 0;
             padding: 0 @indent-xl-base @indent-xs-base 0;
@@ -241,13 +241,13 @@
 //
 //    Mobile
 //--------------------------------------
-.responsive-max-m(@break) when (@break = @screen-xs) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-xs) {
     .minicart-wrapper .block-minicart {
         width: 290px;
     }
 }
 
-.responsive-max-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-s) {
     .minicart-wrapper {
         margin-top: @indent-s-base;
     }
@@ -256,7 +256,7 @@
 //
 //    Desktop
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .minicart-wrapper {
         margin-left: 13px;
         .block-minicart {
diff --git a/app/design/frontend/Magento/luma/Magento_Checkout/web/css/source/module.less b/app/design/frontend/Magento/luma/Magento_Checkout/web/css/source/module.less
index 7bd1ac9fd45d88314ad1f2ef0c36a227c86b628f..a2c17672bc6dff34bd1529e46609c22f96d0df18 100644
--- a/app/design/frontend/Magento/luma/Magento_Checkout/web/css/source/module.less
+++ b/app/design/frontend/Magento/luma/Magento_Checkout/web/css/source/module.less
@@ -3,503 +3,494 @@
 //  * See COPYING.txt for license details.
 //  */
 
-@import "cart.less";
-@import "minicart.less";
+@import 'cart.less';
+@import 'minicart.less';
 
 @opc-margin-left: 10%;
 
 //
-//    Common
-//--------------------------------------
+//  Common
+//  _____________________________________________
 
-.responsive-common() {
+& when (@media-common = true) {
 
-//
-//    One Page Checkout
-//--------------------------------------
-.opc-wrapper {
-    .field select {
-        max-width: none;
-    }
-    &:extend(.abs-add-box-sizing all);
-    > .opc {
-        &:extend(.abs-reset-list all);
-    }
-    .section {
-        &.allow {
-            .step-title {
-                cursor: pointer;
-                .icon-font(
+    //
+    //  One Page Checkout
+    //  ---------------------------------------------
+
+    .opc-wrapper:extend(.abs-add-box-sizing all) {
+        .field select {
+            max-width: none;
+        }
+        > .opc:extend(.abs-reset-list all) {
+        }
+        .section {
+            &.allow {
+                .step-title {
+                    cursor: pointer;
+                    .icon-font(
                     @icon-edit,
                     @_icon-font-size: 20px,
                     @_icon-font-display: block,
                     @_icon-font-position: after
-                );
-                &:after {
-                    position: absolute;
-                    right: 18px;
-                    top: 12px;
+                    );
+                    &:after {
+                        position: absolute;
+                        right: 18px;
+                        top: 12px;
+                    }
+                }
+                &.active {
+                    .step-title {
+                        cursor: default;
+                    }
+                    .step-title:after {
+                        display: none;
+                    }
                 }
             }
+            .step-content {
+                display: none;
+            }
             &.active {
                 .step-title {
-                    cursor: default;
+                    .css(color, @color-primary);
                 }
-                .step-title:after {
-                    display: none;
+                .step-content {
+                    display: block;
                 }
             }
         }
-        .step-content {
-            display: none;
-        }
-        &.active {
-            .step-title {
-                color: @color-primary;
-            }
-            .step-content {
-                display: block;
-            }
-        }
-    }
-    .step {
-        &-title {
-            background: @sidebar-background;
-            margin-bottom: 2px;
-            color: lighten(@color-primary, 40%);
-            padding: 13px 25px;
-            position: relative;
-            h2 {
-                .font-size(18);
-                font-weight: @font-weight-semibold;
-                margin: 0;
-            }
-            .number {
-                display: none;
-            }
-        }
-
-        &-content {
-            padding: 35px 25px 80px;
-            position: relative;
-            .addresses .control {
-                margin: 20px 0 30px;
-            }
-            .fieldset {
-                margin-bottom: 0;
-                &.login {
-                    .form-hasrequired(bottom);
-                    &:after {
-                        margin-top: 35px;
-                        text-align: center;
-                    }
+        .step {
+            &-title {
+                .css(background, @sidebar-background);
+                .css(color, lighten(@color-primary, 40%));
+                margin-bottom: 2px;
+                padding: 13px @indent-m-base;
+                position: relative;
+                h2 {
+                    .font-size(18);
+                    font-weight: @font-weight-semibold;
+                    margin: 0;
                 }
-                .legend.payments-title {
-                    &:extend(.abs-visually-hidden all);
+                .number {
+                    display: none;
                 }
             }
-            .methods-shipping {
-                .item-content {
-                    .fieldset {
-                        > .legend {
-                            &:extend(.abs-visually-hidden all);
-                        }
-                        > .legend + br {
-                            &:extend(.abs-no-display all);
+
+            &-content {
+                padding: 35px @indent-m-base 80px;
+                position: relative;
+                .addresses .control {
+                    margin: @indent-base 0 @indent-l-base;
+                }
+                .fieldset {
+                    margin-bottom: 0;
+                    &.login {
+                        .form-hasrequired(bottom);
+                        &:after {
+                            margin-top: 35px;
+                            text-align: center;
                         }
-                        > .field {
-                            margin-bottom: 15px;
-                            &:before {
-                                display: none;
+                    }
+                    .legend.payments-title:extend(.abs-visually-hidden all) {
+                    }
+                }
+                .methods-shipping {
+                    .item-content {
+                        .fieldset {
+                            > .legend:extend(.abs-visually-hidden all) {
                             }
-                            .control {
-                                display: inline-block;
+                            > .legend + br:extend(.abs-no-display all) {
+                            }
+                            > .field {
+                                margin-bottom: 15px;
+                                &:before {
+                                    display: none;
+                                }
+                                .control {
+                                    display: inline-block;
+                                }
                             }
                         }
                     }
                 }
-            }
-            .form {
-                .form-hasrequired(bottom);
-                &:after {
-                    text-align: center;
+                .form {
+                    .form-hasrequired(bottom);
+                    &:after {
+                        text-align: center;
+                    }
+                    > .choice {
+                        margin-top: @form-field-vertical-indent;
+                    }
                 }
-                > .choice {
-                    margin-top: @form-field-vertical-indent;
+                .form:not(.login),
+                .order-review {
+                    .action.primary:extend(.abs-button-l all) {
+                    }
                 }
-            }
-            .form:not(.login),
-            .order-review {
-                .action.primary {
-                    &:extend(.abs-button-l all);
+                .actions {
+                    margin-top: @indent-xl-base;
+                }
+                .field.street {
+                    .field.additional {
+                        .label:extend(.abs-visually-hidden all) {
+                        }
+                    }
                 }
             }
-            .actions {
-                margin-top: 40px;
-            }
-        }
 
-        .fieldset > .field:last-of-type {
-            margin-bottom: 0;
-        }
-    }
-
-    .step-content {
-        .field.street {
-            .field.additional {
-                .label {
-                    &:extend(.abs-visually-hidden all);
-                }
+            .fieldset > .field:last-of-type {
+                margin-bottom: 0;
             }
         }
-    }
 
-    // Customer login
-    .login-wrapper {
-        .block {
-            .block-title {
-                strong {
-                    .font-size(22);
-                    font-weight: @font-weight-light;
-                    margin: 0;
+        //
+        //  Customer login
+        //  ---------------------------------------------
+
+        .login-wrapper {
+            .block {
+                .block-title {
+                    margin-bottom: @indent-l-base;
+                    strong {
+                        .font-size(22);
+                        font-weight: @font-weight-light;
+                        margin: 0;
+                    }
                 }
-                margin-bottom: 30px;
-            }
-            .fieldset.guest {
-                margin-top: 20px;
-            }
-            .field {
-                &.choice {
-                    margin-bottom: 10px;
+                .fieldset.guest {
+                    margin-top: @indent-base;
                 }
-                &.note {
-                    margin-bottom: 30px;
+                .field {
+                    &.choice {
+                        margin-bottom: @indent-s-base;
+                    }
+                    &.note {
+                        margin-bottom: @indent-l-base;
+                    }
                 }
             }
         }
-    }
 
-    .opc-payment-additional {
-        margin: 0 0 10px 15px;
-        + .opc-payment {
-            margin: 40px 0 0;
+        .opc-payment-additional {
+            margin: 0 0 @indent-s-base 15px;
+            + .opc-payment {
+                margin: @indent-xl-base 0 0;
+            }
         }
-    }
 
-    .action.primary.checkout {
-        margin: 0 0 20px;
-    }
+        .action.primary.checkout {
+            margin: 0 0 @indent-base;
+        }
 
-    .hidden {
-        &:extend(.abs-no-display all);
-    }
+        .hidden:extend(.abs-no-display all) {
+        }
 
-    .actions-toolbar {
-        margin: 40px 0 0;
-    }
-}
+        .actions-toolbar {
+            margin: @indent-xl-base 0 0;
+        }
 
-// Shipping methods
-.methods-shipping {
-    .item-title {
-        &:extend(.abs-methods-shipping-title all);
-    }
-    .item-content {
-        margin: 0 0 35px;
         .field {
-            margin-bottom: 15px;
-            .price {
-                font-weight: @font-weight-bold;
+            &.month {
+                padding-right: @indent-s-base;
+                .control {
+                    position: relative;
+                    &:after {
+                        color: @color-primary-light;
+                        content: '/';
+                        position: absolute;
+                        right: -9px;
+                        top: @indent-xs-base;
+                    }
+                }
             }
-            &.choice {
+            &.cvv {
+                width: 30%;
                 .control {
-                    float: left;
+                    position: relative;
                 }
-                .label {
-                    display: block;
-                    overflow: hidden;
+                .note {
+                    position: absolute;
+                    right: -23px;
+                    top: 0;
+                    &:before {
+                        display: none;
+                    }
+                    > a {
+                        .icon-font(
+                        @_icon-font-content: @icon-help,
+                        @_icon-font-size: 16px,
+                        @_icon-font-color: @color-primary-light,
+                        @_icon-font-color-hover: @color-primary,
+                        @_icon-font-text-hide: true
+                        );
+                    }
                 }
             }
         }
-        &:extend(.abs-adjustment-incl-excl-tax all);
-    }
-    .price.box {
-        > .price {
-            display: block;
-        }
-        .regular .price,
-        .price .price {
-            font-weight: @font-weight-bold;
-        }
-    }
-    .price-box {
-        margin-top: @indent-s-base;
-        margin-bottom: @indent-xs-base;
-        margin-left: @indent-base;
     }
-}
 
-// Payment methods
-.methods-payment {
-    border-bottom: @border-width-base solid @border-color-base;
-    .item-title {
-        border-top: @border-width-base solid @border-color-base;
-        font-weight: @font-weight-base;
-        margin: 0;
-        padding: 16px 15px 15px;
-    }
-    .item-content {
-        margin: 0;
-        > .fieldset {
-            padding: 0 @indent-s-base @indent-xl-base;
-            &.redirect {
-                padding: 0;
-                margin: @indent-s-base 0 @indent-l-base 37px;
-                width: 80%;
-            }
-        }
-    }
-    img {
-        margin-right: @indent-xs-base;
-        vertical-align: middle;
-    }
+    //
+    //  Shipping methods
+    //  ---------------------------------------------
 
-    .field {
-        &.month {
-            padding-right: @indent-s-base;
-            .control {
-                position: relative;
-                &:after {
-                    content: "/";
-                    color: @color-primary-light;
-                    position: absolute;
-                    right: -9px;
-                    top: @indent-xs-base;
-                }
-            }
+    .methods-shipping {
+        .item-title:extend(.abs-methods-shipping-title all) {
         }
-        &.cvv {
-            width: 30%;
-            .control {
-                position: relative;
-            }
-            .note {
-                position: absolute;
-                right: -23px;
-                top: 0;
-                &:before {
-                    display: none;
+        .item-content:extend(.abs-adjustment-incl-excl-tax all) {
+            margin: 0 0 35px;
+            .field {
+                margin-bottom: 15px;
+                .price {
+                    font-weight: @font-weight-bold;
                 }
-                > a {
-                    .icon-font(
-                    @_icon-font-content: @icon-help,
-                    @_icon-font-size: 16px,
-                    @_icon-font-color: @color-primary-light,
-                    @_icon-font-color-hover: @color-primary,
-                    @_icon-font-text-hide: true
-                    )
+                &.choice {
+                    .control {
+                        float: left;
+                    }
+                    .label {
+                        display: block;
+                        overflow: hidden;
+                    }
                 }
             }
         }
-    }
-}
-
-// Order review
-.table-order-review {
-    &:extend(.abs-product-options-list all);
-    thead tr:first-child th {
-        padding-top: 0;
-    }
-    .col {
-        &.price,
-        &.qty {
-            text-align: center;
-            white-space: nowrap;
-        }
-        &.price,
-        &.subtotal {
-            &:extend(.abs-incl-excl-tax all);
-        }
-    }
-    .item-options {
-        margin: @indent-base 0 0;
-        &:extend(.abs-add-clearfix all);
-        .price {
-            font-weight: @font-weight-bold;
+        .price.box {
+            > .price {
+                display: block;
+            }
+            .regular .price,
+            .price .price {
+                font-weight: @font-weight-bold;
+            }
         }
-    }
-    .product-item-name {
-        &:extend(.abs-checkout-product-name all);
-    }
-    .cart-price {
-        &:extend(.abs-checkout-cart-price all);
-    }
-    .grand.totals {
-        .font-size(16);
-        th,
-        td {
-            padding: 0 @indent-s-base;
+        .price-box {
+            margin-bottom: @indent-xs-base;
+            margin-left: @indent-base;
+            margin-top: @indent-s-base;
         }
     }
-}
-
-.cart-tax-info + .cart-tax-total,
-.order-details-items .table-wrapper .cart-tax-info + .cart-tax-total {
-    display: block;
-}
 
-//
-//    Checkout Progress
-//--------------------------------------
-.opc-block-progress-wrapper {
-    margin-top: 20px;
-    margin-bottom: @indent-l-base;
-}
+    //
+    //  Payment methods
+    //  ---------------------------------------------
 
-.opc-block-progress {
-    &:extend(.abs-add-box-sizing all);
-    display: none;
-    &.order-review-step {
-        display: block;
-    }
-    > .title {
-        background: @sidebar-background;
-        .font-size(18);
-        font-weight: @font-weight-light;
-        margin: 0;
-        padding: 10px 15px;
-        strong {
+    .methods-payment {
+        border-bottom: @border-width-base solid @border-color-base;
+        .item-title {
+            border-top: @border-width-base solid @border-color-base;
             font-weight: @font-weight-base;
-        }
-    }
-    > .content {
-        background: @sidebar-background;
-        padding: 0 15px;
-        .items {
             margin: 0;
+            padding: 16px 15px 15px;
         }
-        .item-title {
-            border-top: @border-width-base solid @border-color-base;
+        .item-content {
             margin: 0;
-            padding: 15px 0 7px;
-            display: none;
-            &.complete {
-                display: block;
+            > .fieldset {
+                padding: 0 @indent-s-base @indent-xl-base;
+                &.redirect {
+                    margin: @indent-s-base 0 @indent-l-base 37px;
+                    padding: 0;
+                    width: 80%;
+                }
+            }
+        }
+        img {
+            margin-right: @indent-xs-base;
+            vertical-align: middle;
+        }
+    }
+
+    //
+    //  Order review
+    //  ---------------------------------------------
+    .table-order-review:extend(.abs-product-options-list all) {
+        thead tr:first-child th {
+            padding-top: 0;
+        }
+        .col {
+            &.price,
+            &.qty {
+                text-align: center;
+                white-space: nowrap;
             }
-            span {
-                .font-size(16);
-                font-weight: @font-weight-semibold;
+            &.price:extend(.abs-incl-excl-tax all),
+            &.subtotal:extend(.abs-incl-excl-tax all) {
             }
         }
-        .item-content {
-            margin: 0;
-            padding: 0 0 15px;
-            overflow: hidden;
-            display: none;
-            &.complete {
-                display: block;
+        .item-options:extend(.abs-add-clearfix all) {
+            margin: @indent-base 0 0;
+            .price {
+                font-weight: @font-weight-bold;
             }
         }
-        .action {
-            font-weight: @font-weight-base;
+        .product-item-name:extend(.abs-checkout-product-name all) {
         }
-        .data.table {
-            font-size: @font-size-s;
+        .cart-price:extend(.abs-checkout-cart-price all) {
         }
+        .grand.totals {
+            .font-size(16);
+            th,
+            td {
+                padding: 0 @indent-s-base;
+            }
+        }
+    }
+
+    .cart-tax-info + .cart-tax-total,
+    .order-details-items .table-wrapper .cart-tax-info + .cart-tax-total {
+        display: block;
+    }
+
+    //
+    //  Checkout Progress
+    //  ---------------------------------------------
+
+    .opc-block-progress-wrapper {
+        margin-bottom: @indent-l-base;
+        margin-top: @indent-base;
     }
-    .payment-method {
+
+    .opc-block-progress:extend(.abs-add-box-sizing all) {
+        display: none;
+        &.order-review-step {
+            display: block;
+        }
         > .title {
+            .css(background, @sidebar-background);
+            .font-size(18);
             font-weight: @font-weight-light;
+            margin: 0;
+            padding: @indent-s-base 15px;
+            strong {
+                font-weight: @font-weight-base;
+            }
         }
         > .content {
-             margin: 0 0 10px;
-            &:last-child {
-                margin-bottom: 0;
+            .css(background, @sidebar-background);
+            padding: 0 15px;
+            .items {
+                margin: 0;
             }
-        }
-        .items-cards {
-            margin: 0;
-            > .content {
+            .item-title {
+                border-top: @border-width-base solid @border-color-base;
+                display: none;
                 margin: 0;
+                padding: 15px 0 7px;
+                &.complete {
+                    display: block;
+                }
+                span {
+                    .font-size(16);
+                    font-weight: @font-weight-semibold;
+                }
+            }
+            .item-content {
+                display: none;
+                margin: 0;
+                overflow: hidden;
+                padding: 0 0 15px;
+                &.complete {
+                    display: block;
+                }
+            }
+            .action {
+                font-weight: @font-weight-base;
+            }
+            .data.table {
+                font-size: @font-size-s;
             }
         }
-        .data.table {
-            th {
-                padding: 5px 10px 5px 0;
+        .payment-method {
+            > .title {
+                font-weight: @font-weight-light;
             }
-            td {
-                padding: 5px 0;
+            > .content {
+                margin: 0 0 @indent-s-base;
+                &:last-child {
+                    margin-bottom: 0;
+                }
+            }
+            .items-cards {
+                margin: 0;
+                > .content {
+                    margin: 0;
+                }
+            }
+            .data.table {
+                th {
+                    padding: @indent-xs-base @indent-s-base @indent-xs-base 0;
+                }
+                td {
+                    padding: @indent-xs-base 0;
+                }
             }
         }
     }
-}
 
-//
-//    Checkout Success
-//--------------------------------------
-.checkout-onepage-success {
-    .page-title {
-        .print {
-            &:extend(.abs-no-display all);
+    //
+    //  Checkout Success
+    //  ---------------------------------------------
+
+    .checkout-onepage-success {
+        .page-title {
+            .print:extend(.abs-no-display all) {
+            }
         }
     }
-}
 
-.checkout-success {
-    .actions-toolbar {
-        margin-top: 50px;
+    .checkout-success {
+        .actions-toolbar {
+            margin-top: 50px;
+        }
     }
-}
 
-.checkout-onepage-index {
-    .nav-toggle {
-        &:extend(.abs-no-display all);
-    }
-    .logo {
-        margin-left: 0;
+    .checkout-onepage-index {
+        .nav-toggle:extend(.abs-no-display all) {
+        }
+        .logo {
+            margin-left: 0;
+        }
     }
 }
 
-}
-
 //
-//    Mobile
-//--------------------------------------
-.responsive-max-m(@break) when (@break = @screen-s) {
-    .table-wrapper.order-review-wrapper {
-        &:extend(.abs-no-border-top all);
-        .table.table-order-review {
+//  Mobile
+//  _____________________________________________
+
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-s) {
+    .table-wrapper.order-review-wrapper:extend(.abs-no-border-top all) {
+        .table.table-order-review:extend(.abs-checkout-order-review all) {
             tbody tr {
-                td:not(:last-child) {
-                    border: none;
-                }
-                td:last-child {
-                    border-top: none;
-                    border-bottom: @border-width-base solid @border-color-base;
+                td {
+                    &:not(:last-child) {
+                        border: none;
+                    }
                 }
                 &:first-child td:first-child {
                     padding-top: 0;
                 }
             }
-            &:extend(.abs-checkout-order-review all);
+        }
+
+        .table.table-order-review:not(.totals):not(.cart):not(.table-comparison) tbody > tr > td:last-child {
+            border-bottom: none;
+            border-top: none;
         }
     }
 }
 
 //
-//    Desktop
-//--------------------------------------
-.responsive-min-m(@break) when (@break = @screen-s) {
-    .checkout-onepage-index .column.main {
-        &:extend(.abs-add-clearfix-desktop-s all);
+//  Desktop
+//  _____________________________________________
+
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-s) {
+    .checkout-onepage-index .column.main:extend(.abs-add-clearfix-desktop-s all) {
     }
 
-    .opc-wrapper {
+    .opc-wrapper:extend(.abs-add-box-sizing-desktop-s all) {
         .layout-column(2, 2, @layout-column-checkout-main-width);
-        &:extend(.abs-add-box-sizing-desktop-s all);
-        .step-content {
-            &:extend(.abs-form-field-column-2-s all);
-
+        .step-content:extend(.abs-form-field-column-2-s all) {
             .form {
                 &.shipping.address,
                 &.billing,
@@ -523,19 +514,30 @@
                 }
             }
 
-            .payments .field {
-                &:extend(.abs-form-field-revert-column-1-s all);
+            .payments,
+            .order-review {
+                .field:extend(.abs-form-field-revert-column-1-s all) {
+                    &:nth-last-child(1),
+                    &:nth-last-child(2) {
+                        margin-bottom: @indent-base;
+                    }
+                    &:last-child {
+                        margin: 0;
+                    }
+                }
             }
+
             .toolbar {
                 text-align: left;
             }
         }
 
-        // Login or register
-        .login-wrapper {
-            &:extend(.abs-add-clearfix-desktop-s all);
-            .block {
-                &:extend(.abs-blocks-2columns-s all);
+        //
+        //  Login or register
+        //  ---------------------------------------------
+
+        .login-wrapper:extend(.abs-add-clearfix-desktop-s all) {
+            .block:extend(.abs-blocks-2columns-s all) {
                 margin-bottom: 0;
             }
             .fieldset {
@@ -557,24 +559,30 @@
         }
     }
 
-    // Payment methods
-    .methods-payment {
-        .item-content > .fieldset {
-            margin: @indent-s-base 0 @indent-l-base @opc-margin-left;
-            padding: 0;
-            width: 46%;
-            .field {
-                &.cvv {
-                    display: inline-block;
-                    width: 30%;
-                }
-                &.date {
-                    display: inline-block;
-                    width: 70%;
-                }
-                &.month {
-                    padding-right: 12px;
-                }
+    //
+    //  Payment methods
+    //  ---------------------------------------------
+
+    .methods-payment .item-content > .fieldset,
+    .order-review .fieldset {
+        margin: @indent-s-base 0 @indent-l-base @opc-margin-left;
+        padding: 0;
+        width: 46%;
+        .field .field {
+            &.cvv {
+                display: inline-block;
+                width: 30%;
+            }
+            &.date {
+                display: inline-block;
+                width: 70%;
+            }
+            &.month {
+                padding-right: 12px;
+            }
+            &.month,
+            &.year {
+                margin-bottom: 0;
             }
         }
     }
@@ -610,30 +618,31 @@
             }
             .amount {
                 strong {
-                    padding-left: @indent-s-base;
                     margin-right: @indent-s-base;
+                    padding-left: @indent-s-base;
                 }
             }
         }
     }
 
-    // Checkout success
+    //
+    //  Checkout success
+    //  ---------------------------------------------
+
     .checkout-onepage-success {
         .page-title {
-            .print {
+            .print:extend(.abs-action-print-s all) {
                 display: inline-block;
-                margin-left: @indent-xl-base;
                 .font-size(14);
-                &:extend(.abs-action-print-s all);
+                margin-left: @indent-xl-base;
             }
         }
     }
 
-    .opc-block-progress-wrapper {
+    .opc-block-progress-wrapper:extend(.abs-add-box-sizing-desktop-s all) {
         .layout-column(2, 1, @layout-column-checkout-left-width);
-        &:extend(.abs-add-box-sizing-desktop-s all);
-        padding-right: @layout-column-main-sidebar-offset;
         margin-top: 0;
+        padding-right: @layout-column-main-sidebar-offset;
     }
 
     .opc-block-progress.active {
diff --git a/app/design/frontend/Magento/luma/Magento_Customer/web/css/source/module.less b/app/design/frontend/Magento/luma/Magento_Customer/web/css/source/module.less
index e5f79936b4fdd5e36b653b52c90c2c94764bad6f..6cba3049fc8ff356f3504a032eb26737779be685 100644
--- a/app/design/frontend/Magento/luma/Magento_Customer/web/css/source/module.less
+++ b/app/design/frontend/Magento/luma/Magento_Customer/web/css/source/module.less
@@ -3,15 +3,15 @@
 //  * See COPYING.txt for license details.
 //  */
 
-@account-title-border-color: #c6c6c6;
-@account-table-border-bottom-color: #e4e4e4;
-@account-table-action-delete: #d10029;
+@account-title-border-color: @color-gray-middle2;
+@account-table-border-bottom-color: @color-gray-middle1;
+@account-table-action-delete: @color-red12;
 
 //
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 .login-container {
     .block {
@@ -68,8 +68,8 @@
     }
 }
 
-.box-address-billing,
-.box-address-shipping,
+.box-billing-address,
+.box-shipping-address,
 .box-information,
 .box-newsletter {
     .box-content {
@@ -113,7 +113,7 @@
             .action {
                 &:extend(.abs-account-actions all);
                 &.delete {
-                    color: @account-table-action-delete;
+                    .css(color, @account-table-action-delete);
                 }
             }
         }
@@ -181,7 +181,7 @@
 //
 //    Desktop
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .login-container {
         &:extend(.abs-add-clearfix-desktop all);
         .block {
@@ -281,8 +281,8 @@
         }
     }
 
-    .box-address-billing,
-    .box-address-shipping,
+    .box-billing-address,
+    .box-shipping-address,
     .box-information {
         .box-content {
             &:extend(.abs-account-block-font-size all);
@@ -299,7 +299,7 @@
 //
 //    Mobile @screen-s
 //--------------------------------------
-.responsive-max-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-s) {
     .account {
         .column.main,
         .sidebar-additional {
@@ -314,7 +314,7 @@
 //
 //    Mobile @screen-m
 //--------------------------------------
-.responsive-max-m(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-m) {
     .login-container {
         .fieldset {
             &:after {
diff --git a/app/design/frontend/Magento/luma/Magento_Downloadable/web/css/source/module.less b/app/design/frontend/Magento/luma/Magento_Downloadable/web/css/source/module.less
index e7f8a59e577106e4f8bd678dceb5ea9a756bcc17..41f0eec0a6ee8ccf184a5a6c5c03902c7d4e7bc4 100644
--- a/app/design/frontend/Magento/luma/Magento_Downloadable/web/css/source/module.less
+++ b/app/design/frontend/Magento/luma/Magento_Downloadable/web/css/source/module.less
@@ -7,7 +7,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 .table-downloadable-products {
     .product-name {
@@ -79,7 +79,7 @@
     }
     .field.choice {
         box-sizing: border-box;
-        border-bottom: 1px solid #ebebeb;
+        border-bottom: 1px solid @color-gray92;
         padding-bottom: @indent-s-base;
         margin-bottom: @indent-s-base;
         &:extend(.clearer all);
@@ -123,7 +123,7 @@
 //
 //    Mobile
 //--------------------------------------
-.responsive-max-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-s) {
     .page-product-downloadable .product-options-wrapper {
         margin-bottom: @indent-m-base;
     }
@@ -139,7 +139,7 @@
         }
     }
     .page-product-downloadable .product-info-price ~ *:last-child:after {
-        border-bottom: 1px #c1c1c1 solid;
+        border-bottom: 1px @color-gray-light5 solid;
         content: '';
         display: block;
         height: 0;
@@ -152,7 +152,7 @@
 //
 // Product view Desktop
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
 .page-product-downloadable {
         .product-add-form {
             &:extend(.clearer all);
diff --git a/app/design/frontend/Magento/luma/Magento_GiftMessage/web/css/source/module.less b/app/design/frontend/Magento/luma/Magento_GiftMessage/web/css/source/module.less
index 415d7a96eeb2cf61491d0a4c0dafecb25089157e..3c53fa14239441c21c904db69bed1b1390196877 100644
--- a/app/design/frontend/Magento/luma/Magento_GiftMessage/web/css/source/module.less
+++ b/app/design/frontend/Magento/luma/Magento_GiftMessage/web/css/source/module.less
@@ -7,7 +7,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 .gift-message {
     margin: 0;
@@ -24,7 +24,7 @@
     .activate.message {
         border-top: @border-width-base solid @border-color-base;
         border-bottom: @border-width-base solid @border-color-base;
-        color: @color-primary;
+        .css(color, @color-primary);
         display: block;
         font-weight: @font-weight-semibold;
         line-height: 36px;
@@ -43,7 +43,7 @@
             top: 0;
         }
         &:hover {
-            color: @filter-link-hover;
+            .css(color, @filter-link-hover);
         }
         &.active {
             border-bottom: 0;
@@ -103,9 +103,9 @@
         .product {
             margin: 0 0 @indent-base;
             .number {
-                color: @color-primary-light;
+                .css(color, @color-primary-light);
                 span {
-                    color: @color-primary;
+                    .css(color, @color-primary);
                     font-weight: @font-weight-semibold;
                 }
             }
@@ -176,7 +176,7 @@
 //    Mobile
 //--------------------------------------
 
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .gift-message {
         .items {
             .item {
diff --git a/app/design/frontend/Magento/luma/Magento_LayeredNavigation/web/css/source/module.less b/app/design/frontend/Magento/luma/Magento_LayeredNavigation/web/css/source/module.less
index 468f87834e1db9f11945400276366373730a9bd1..53c4a42602a071d869bda6d14a15640406249aab 100644
--- a/app/design/frontend/Magento/luma/Magento_LayeredNavigation/web/css/source/module.less
+++ b/app/design/frontend/Magento/luma/Magento_LayeredNavigation/web/css/source/module.less
@@ -7,7 +7,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 .filter {
     &.block {
@@ -22,7 +22,7 @@
             text-align: center;
             padding: 7px 10px;
             @_shadow: inset 0 1px 0 0 @color-white, inset 0 -1px 0 0 fade(@border-color-base, 30);
-            background-color: @toolbar-element-background;
+            .css(background-color, @toolbar-element-background);
             .css(box-shadow, @_shadow);
             border-radius: 3px;
             font-weight: 400;
@@ -35,10 +35,10 @@
                 padding: 2px;
                 font-size: .8em;
                 margin: 0 5px;
-                color: @color-white;
+                .css(color, @color-white);
                 min-width: 1em;
                 line-height: 1;
-                background: #fc5e10;
+                background: @color-orange-red4;
             }
             &.disabled {
                 opacity: .5;
@@ -88,7 +88,7 @@
         }
     }
     &-value {
-        color: @filter-quantity;
+        .css(color, @filter-quantity);
     }
     &-options {
         display: none;
@@ -119,7 +119,7 @@
                 top: 9px;
             }
             &:hover {
-                color: @filter-link-hover;
+                .css(color, @filter-link-hover);
             }
             .active > & {
                 .icon-font-symbol(
@@ -136,21 +136,21 @@
                 line-height: 1.5em;
             }
             a {
-                color: @filter-link;
+                .css(color, @filter-link);
                 margin-right: -5px;
                 padding-left: 5px;
                 margin-left: -5px;
                 padding-right: 7px;
                 &:hover {
-                    background-color: #e8e8e8;
+                    background-color: @color-gray91;
                     text-decoration: none;
                     & + .count {
-                        background-color: #e8e8e8;
+                        background-color: @color-gray91;
                     }
                 }
             }
             .count {
-                color: @filter-quantity;
+                .css(color, @filter-quantity);
                 padding-right: 5px;
                 &:before {
                     content: "(";
@@ -169,7 +169,7 @@
 //    Mobile
 //--------------------------------------
 
-.responsive-max-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-s) {
     body.filter-active {
         .page-wrapper {
             visibility: hidden;
@@ -220,7 +220,7 @@
                 right: 0;
                 left: 0;
                 height: 50px;
-                background: @toolbar-background;
+                .css(background, @toolbar-background);
                 z-index: 1;
                 line-height: 32px;
             }
@@ -232,7 +232,7 @@
                 right: 0;
                 bottom: 0;
                 overflow: scroll;
-                background: @color-white;
+                .css(background, @color-white);
                 z-index: 10;
             }
         }
@@ -290,7 +290,7 @@
             &:after {
                 content:' (' attr(data-count) ')';
                 font-size:.9em;
-                color: @text-color-muted;
+                .css(color, @text-color-muted);
             }
         }
         &.active {
@@ -314,7 +314,7 @@
     }
 }
 
-.responsive-min-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-s) {
 
     .filter {
         &.block {
@@ -383,7 +383,7 @@
                         &:before {
                             content: "";
                             display: block;
-                            .arrow(up,8px,#000);
+                            .arrow(up, 8px, @color-black);
                             position: absolute;
                             left: 50%;
                             bottom: -1px;
@@ -391,7 +391,7 @@
                             margin-left: -20px;
                         }
                         &:after {
-                            border-bottom-color: @color-white;
+                            .css(border-bottom-color, @color-white);
                             margin-top:2px;
                             z-index: 4;
                         }
@@ -408,7 +408,7 @@
                 &-content {
                     position: absolute;
                     z-index: 2;
-                    background: @color-white;
+                    .css(background, @color-white);
                     width: 180px;
                     top: 100%;
                     border: 1px solid @border-color-base;
@@ -422,7 +422,7 @@
                             margin-left: 0;
                         }
                         &:hover {
-                            background-color: #e8e8e8;
+                            background-color: @color-gray91;
                         }
                     }
                 }
@@ -433,7 +433,7 @@
                 &-subtitle {
                     display: inline;
                     padding: 0;
-                    color: @text-color-muted;
+                    .css(color, @text-color-muted);
                     font-size: @font-size-base;
                     font-weight: normal;
                     &:after {
diff --git a/app/design/frontend/Magento/luma/Magento_Newsletter/web/css/source/module.less b/app/design/frontend/Magento/luma/Magento_Newsletter/web/css/source/module.less
index 61202aa34dd24e30294d5293337f1d8557e37ae9..2f9691ce7bf14a5af8f8e7d0e487bca728b8483e 100644
--- a/app/design/frontend/Magento/luma/Magento_Newsletter/web/css/source/module.less
+++ b/app/design/frontend/Magento/luma/Magento_Newsletter/web/css/source/module.less
@@ -7,7 +7,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 //
 //    Newsletter subscription
@@ -68,7 +68,7 @@
 //
 //    Desktop
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .block.newsletter {
         width: 34%;
     }
diff --git a/app/design/frontend/Magento/luma/Magento_RecurringPayment/web/css/source/module.less b/app/design/frontend/Magento/luma/Magento_RecurringPayment/web/css/source/module.less
index 0ea11a98dd1f946601bb8ce5f3035ea91584b360..909175dbbb7dd7ccd132167b8749b603c171ec76 100644
--- a/app/design/frontend/Magento/luma/Magento_RecurringPayment/web/css/source/module.less
+++ b/app/design/frontend/Magento/luma/Magento_RecurringPayment/web/css/source/module.less
@@ -7,7 +7,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 //
 //    Product
@@ -23,22 +23,22 @@
         line-height: @tab-control-height;
         margin: 0 0 -1px;
         strong {
-            background: @tab-control-bg-active;
+            .css(background, @tab-control-bg-active);
             border: @border-width-base solid @border-color-base;
             display: block;
             font-weight: @tab-control-font-weight;
             padding: 0 20px;
         }
         a {
-            background: @tab-control-bg;
-            color: @tab-control-color;
+            .css(background, @tab-control-bg);
+            .css(color, @tab-control-color);
             border: @border-width-base solid @border-color-base;
             display: block;
             font-weight: @tab-control-font-weight;
             padding: 0 20px;
             &:hover {
-                background: @tab-control-bg-hover;
-                text-decoration: @tab-control-text-decoration-hover;
+                .css(background, @tab-control-bg-hover);
+                .css(text-decoration, @tab-control-text-decoration-hover);
             }
         }
     }
@@ -53,7 +53,7 @@
 //
 //    Desktop
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .items-info-tabs {
         &:extend(.abs-add-clearfix-desktop all);
         .item {
diff --git a/app/design/frontend/Magento/luma/Magento_Review/web/css/source/module.less b/app/design/frontend/Magento/luma/Magento_Review/web/css/source/module.less
index ae5389c035136005674fed95a895348a88b87cb9..5c76ef950d1ed58dc324c706a23656afadc45170 100644
--- a/app/design/frontend/Magento/luma/Magento_Review/web/css/source/module.less
+++ b/app/design/frontend/Magento/luma/Magento_Review/web/css/source/module.less
@@ -7,10 +7,10 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 .data.switch .counter {
-    color: @text-color-muted;
+    .css(color, @text-color-muted);
     &:before {
         content:"(";
     }
@@ -79,7 +79,7 @@
 .review {
     &-toolbar {
         padding: 0;
-        border-top: 1px solid #c9c9c9;
+        border-top: 1px solid @color-gray79;
         margin: 0 0 @indent-base;
         text-align: center;
         &:first-child {
@@ -88,7 +88,7 @@
         .pages {
             display: block;
             text-align: center;
-            border-bottom: 1px solid #c9c9c9;
+            border-bottom: 1px solid @color-gray79;
             padding: @indent-base 0;
         }
         .limiter {
@@ -155,7 +155,7 @@
     }
     &-item {
         padding: @indent-base 0;
-        border-bottom: 1px solid #c9c9c9;
+        border-bottom: 1px solid @color-gray79;
         margin: 0;
         .clearer();
         &:last-child {
@@ -201,7 +201,7 @@
 //
 //    Desktop
 //--------------------------------------
-.responsive-min-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-s) {
     .review {
         &-form {
             max-width: 500px;
@@ -243,7 +243,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 .data.table.reviews {
     .rating-summary {
@@ -292,7 +292,7 @@
 //
 //    Desktop
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .product-reviews-summary {
         margin-bottom: @indent-s-base + @indent-xs-base;
         .products.wrapper.list & {
@@ -310,7 +310,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 //
 //    Account
@@ -357,7 +357,7 @@
 //
 //    Mobile
 //--------------------------------------
-.responsive-max-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-s) {
     .account {
         .table-reviews {
             .col.actions {
@@ -370,7 +370,7 @@
 //
 //    Desktop
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .block-reviews-dashboard {
         .product-name {
             &:extend(.abs-account-block-font-size all);
@@ -382,7 +382,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 .customer-review {
     .product-details {
@@ -435,7 +435,7 @@
 //
 //    Mobile
 //--------------------------------------
-.responsive-max-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-s) {
     .customer-review {
         .product-name {
             .css(margin-bottom, @indent-xs-base);
@@ -452,7 +452,7 @@
 //
 //    Desktop
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .customer-review {
         .product-details {
             &:extend(.abs-margin-for-blocks-and-widgets-desktop all);
diff --git a/app/design/frontend/Magento/luma/Magento_Sales/web/css/source/module.less b/app/design/frontend/Magento/luma/Magento_Sales/web/css/source/module.less
index c1e5d4e154c8d409a350efb4d4859440587e7288..491edd81b045815cfec0bad97fd70915a224ce65 100644
--- a/app/design/frontend/Magento/luma/Magento_Sales/web/css/source/module.less
+++ b/app/design/frontend/Magento/luma/Magento_Sales/web/css/source/module.less
@@ -7,29 +7,29 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 .order-links {
     .item {
         line-height: @tab-control-height;
         margin: 0 0 -1px;
         strong {
-            background: @tab-control-bg-active;
+            .css(background, @tab-control-bg-active);
             border: @border-width-base solid @border-color-base;
             display: block;
             font-weight: @tab-control-font-weight;
             padding: 0 20px;
         }
         a {
-            background: @tab-control-bg;
-            color: @tab-control-color;
+            .css(background, @tab-control-bg);
+            .css(color, @tab-control-color);
             border: @border-width-base solid @border-color-base;
             display: block;
             font-weight: @tab-control-font-weight;
             padding: 0 20px;
             &:hover {
-                background: @tab-control-bg-hover;
-                text-decoration: @tab-control-text-decoration-hover;
+                .css(background, @tab-control-bg-hover);
+                .css(text-decoration, @tab-control-text-decoration-hover);
             }
         }
     }
@@ -160,7 +160,7 @@
                 @_icon-font-position: after,
                 @_icon-font-display: inline-block
             );
-            color: @color-primary;
+            .css(color, @color-primary);
             &.expanded {
                 .icon-font-symbol(
                     @_icon-font-content: @icon-up,
@@ -320,7 +320,7 @@
 //
 //    Mobile
 //--------------------------------------
-.responsive-max-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-s) {
     .table-wrapper {
         &.orders-recent {
             &:extend(.abs-account-table-margin-mobile all);
@@ -414,7 +414,7 @@
 //
 //    Desktop
 //--------------------------------------
-.responsive-min-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-s) {
     .order-details-items {
         .order-title {
             .action {
@@ -430,7 +430,7 @@
 //
 //    Desktop
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .table-wrapper.orders-recent {
         &:extend(.abs-account-table-margin-desktop all);
     }
diff --git a/app/design/frontend/Magento/luma/Magento_Sendfriend/web/css/source/module.less b/app/design/frontend/Magento/luma/Magento_Sendfriend/web/css/source/module.less
index f203a755c62d1205171def4c3a0ffa6756950c48..62b880e0a47b44f4d9a3fc1ba8a10cbf883b14d2 100644
--- a/app/design/frontend/Magento/luma/Magento_Sendfriend/web/css/source/module.less
+++ b/app/design/frontend/Magento/luma/Magento_Sendfriend/web/css/source/module.less
@@ -7,7 +7,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 .form.send.friend {
    &:extend(.abs-add-fields all);
@@ -26,7 +26,7 @@
 //
 //    Desktop
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .form.send.friend {
         width: 60%;
         &:extend(.abs-add-fields-desktop all);
diff --git a/app/design/frontend/Magento/luma/Magento_Theme/web/css/source/collapsible_navigation.less b/app/design/frontend/Magento/luma/Magento_Theme/web/css/source/collapsible_navigation.less
index af35b5c3fea7d059aefedb03345f859b3485fd7a..470c4f88c7601bb0869b633cdd5707eeefe425a5 100644
--- a/app/design/frontend/Magento/luma/Magento_Theme/web/css/source/collapsible_navigation.less
+++ b/app/design/frontend/Magento/luma/Magento_Theme/web/css/source/collapsible_navigation.less
@@ -4,18 +4,18 @@
 //  */
 
 @collapsible-nav-background: @sidebar-background;
-@collapsible-nav-item-hover: #e8e8e8;
-@collapsible-nav-color: #575757;
-@collapsible-nav-current-color: #000;
+@collapsible-nav-item-hover: @color-gray91;
+@collapsible-nav-color: @color-gray34;
+@collapsible-nav-current-color: @color-black;
 @collapsible-nav-current-font-weight: @font-weight-semibold;
 @collapsible-nav-current-border: 3px solid transparent;
-@collapsible-nav-current-border-color: #ff5501;
+@collapsible-nav-current-border-color: @color-orange-red1;
 
 //
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 //
 //    Collapsible navigation
@@ -41,7 +41,7 @@
             text-decoration: none;
             &:hover {
                 .css(background, @collapsible-nav-item-hover);
-            } 
+            }
         }
         &.current {
             a,
@@ -63,7 +63,7 @@
 //
 //    Desktop
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .block-collapsible-nav {
         .title {
             &:extend(.abs-visually-hidden-desktop all);
@@ -74,7 +74,7 @@
 //
 //    Mobile
 //--------------------------------------
-.responsive-max-m(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-m) {
     .block-collapsible-nav {
         position: absolute;
         top: -21px;
diff --git a/app/design/frontend/Magento/luma/Magento_Theme/web/css/source/module.less b/app/design/frontend/Magento/luma/Magento_Theme/web/css/source/module.less
index 4fd17187e14ea734b0a651cb37866b755128ed0b..b53d9390f9d547a43e31364cd799c6f8a0df8186 100644
--- a/app/design/frontend/Magento/luma/Magento_Theme/web/css/source/module.less
+++ b/app/design/frontend/Magento/luma/Magento_Theme/web/css/source/module.less
@@ -3,97 +3,110 @@
 //  * See COPYING.txt for license details.
 //  */
 
-@import "collapsible_navigation.less";
+@import 'collapsible_navigation.less';
+
+//
+//  Theme variables
+//  _____________________________________________
+
+//
+//  Messages
+//  ---------------------------------------------
 
 @message-global-note-color: @text-color;
-@message-global-note-background: #ffee9c;
+@message-global-note-background: @color-yellow-light2;
 @message-global-note-link-color: @link-color;
 @message-global-note-link-color-hover: @link-color-hover;
 @message-global-note-link-color-active: @link-color-active;
-@message-global-note-border-color: #d6ca8e;
+@message-global-note-border-color: @color-yellow-light3;
 
 @message-global-caution-color: @color-white;
-@message-global-caution-background: #ff0101;
+@message-global-caution-background: @color-red9;
 @message-global-caution-link-color: @link-color;
 @message-global-caution-link-color-hover: @link-color-hover;
 @message-global-caution-link-color-active: @link-color-active;
 @message-global-caution-border-color: none;
 
 @header-bg-color: false;
-@header-panel-bg-color: #7e807e;
+@header-panel-bg-color: @color-gray-middle3;
 @header-panel-text-color: @color-white;
 @header-icons-color: @color-gray56;
 @header-icons-color-hover: @color-gray20;
 
-@addto-color: #999;
+@addto-color: @color-gray60;
 @addto-hover-color: @color-primary;
 @minicart-icons-color: @header-icons-color;
 @minicart-icons-color-hover: @header-icons-color-hover;
 
-@price-color: #575757;
+@price-color: @color-gray34;
 @price-size: 22px;
 @price-size-desktop: 36px;
 
-@button-shadow: inset 0 1px 0 0 rgba(255, 255, 255, 1), inset 0 -1px 0 0 fade(@border-color-base, 30);  // Used for secondary button and catalog toolbar controls
-@button-shadow-active: inset 0 1px 0 0 fade(@border-color-base, 80), inset 0 -1px 0 0 fade(@border-color-base, 30);  // Used for secondary button and catalog toolbar controls
+@button-shadow: inset 0 1px 0 0 rgba(255, 255, 255, 1), inset 0 -1px 0 0 fade(@border-color-base, 30); //  Used for secondary button and catalog toolbar controls
+@button-shadow-active: inset 0 1px 0 0 fade(@border-color-base, 80), inset 0 -1px 0 0 fade(@border-color-base, 30); //  Used for secondary button and catalog toolbar controls
 
 @h1-margin-bottom-desktop: @indent-xl-base;
 
-// Footer
+//
+//  Footer
+//  ---------------------------------------------
 
-@footer-bg-color: #f4f4f4;
-@footer-links-separator-border-color: #cecece;
-@footer-links-color: #575757;
-@footer-links-color-hover: #333;
+@footer-bg-color: @color-gray-light01;
+@footer-links-separator-border-color: @color-gray-light4;
+@footer-links-color: @color-gray34;
+@footer-links-color-hover: @color-gray20;
 @footer-links-color-current: @color-primary-light;
 
+//
+//  Layered navigation
+//  ---------------------------------------------
 
-// Layered navigation
-
-@filter-title-bg: #f0f0f0;
-@filter-link: #494949;
+@filter-title-bg: @color-gray94;
+@filter-link: @color-gray-darken4;
 @filter-link-hover: darken(@filter-link, 30%);
-@filter-quantity: #858585;
+@filter-quantity: @color-gray52;
 
 //
-//    Common
-//--------------------------------------
+//  Common
+//  _____________________________________________
 
-.responsive-common() {
-
-body {
-    .css(background-color, @page-bg-color);
-}
+& when (@media-common = true) {
+    body {
+        .css(background-color, @page-bg-color);
+    }
 
-// ToDo UI: move it directly to .page-wrapper (now it doesn't appear in mediaquery cuz of size of css)
-.page-wrapper {
-    .ie9 & {
-        min-height: 0;
-        background-color: @color-background-page;
+    //  ToDo UI: move it directly to .page-wrapper (now it doesn't appear in mediaquery cuz of size of css)
+    .page-wrapper {
+        .ie9 & {
+            .css(background-color, @color-background-page);
+            min-height: 0;
+        }
     }
-}
 
-//
-//    Header
-//--------------------------------------
-.page-header {
-    .css(background-color, @header-bg-color);
-    border-bottom: 1px solid @border-color-base;
-    margin-bottom: @indent-base;
-    .panel.wrapper {
-        .css(background-color, @header-panel-bg-color);
-        .css(color, @header-panel-text-color);
+    //
+    //  Header
+    //  ---------------------------------------------
+
+    .page-header {
+        .css(background-color, @header-bg-color);
+        border-bottom: 1px solid @border-color-base;
+        margin-bottom: @indent-base;
+        .panel.wrapper {
+            .css(background-color, @header-panel-bg-color);
+            .css(color, @header-panel-text-color);
+        }
     }
-}
 
-.header.panel {
-    > .header.links {
-        float: right;
-        .list-inline();
-        > li {
-            margin: 0 0 0 15px;
-            > a {
-                .link(
+    .header.panel {
+        > .header.links {
+            .list-inline();
+            float: right;
+            margin-left: auto;
+            margin-right: @indent-base;
+            > li {
+                margin: 0 0 0 15px;
+                > a {
+                    .link(
                     @_link-color: @header-panel-text-color,
                     @_link-text-decoration: none,
                     @_link-color-visited: @header-panel-text-color,
@@ -102,151 +115,140 @@ body {
                     @_link-text-decoration-hover: underline,
                     @_link-color-active: @header-panel-text-color,
                     @_link-text-decoration-active: underline
-                );
+                    );
+                }
             }
         }
-        margin-left: auto;
-        margin-right: 20px;
     }
-}
 
-.header {
-    &.content {
-        padding-top: 10px;
-        position: relative;
-        &:extend(.abs-add-clearfix all);
+    .header {
+        &.content:extend(.abs-add-clearfix all) {
+            padding-top: @indent-s-base;
+            position: relative;
+        }
     }
-}
 
-.logo {
-    position: relative;
-    z-index: 5;
-    float: left;
-    max-width: 50%;
-    margin: 0 0 10px @indent-xl-base;
-    img {
-        max-height: 50px;
-        max-width: 100%;
-        display: block;
-    }
-    .page-print & {
-        float: none;
-        display: inline-block;
+    .logo {
+        float: left;
+        margin: 0 0 @indent-s-base @indent-xl-base;
+        max-width: 50%;
+        position: relative;
+        z-index: 5;
+        img {
+            display: block;
+            max-height: 50px;
+            max-width: 100%;
+        }
+        .page-print & {
+            display: inline-block;
+            float: none;
+        }
     }
-}
 
-.page-main {
-    > .page-title {
-        .title + .action {
-            margin-top: @indent-l-base;
+    .page-main {
+        > .page-title {
+            .title + .action {
+                margin-top: @indent-l-base;
+            }
         }
     }
-}
 
-.action.skip {
-    &:extend(.abs-visually-hidden all);
-}
+    .action.skip:extend(.abs-visually-hidden all) {
+    }
 
-//
-//  Global notice
-//--------------------------------------
+    //
+    //  Global notice
+    //  ---------------------------------------------
 
-.message.global {
-    p {
-        margin: 0;
-    }
-    &.noscript,
-    &.cookie {
-        .message(@_message-type: global-note);
-        margin: 0;
-    }
-    &.cookie {
-        position: fixed;
-        bottom: 0;
-        left: 0;
-        right: 0;
-        z-index: 3;
-        .actions {
-            margin-top: @indent-s-base;
+    .message.global {
+        p {
+            margin: 0;
+        }
+        &.noscript,
+        &.cookie {
+            .message(@_message-type: global-note);
+            margin: 0;
+        }
+        &.cookie {
+            bottom: 0;
+            left: 0;
+            position: fixed;
+            right: 0;
+            z-index: 3;
+            .actions {
+                margin-top: @indent-s-base;
+            }
+        }
+        &.demo {
+            .message(@_message-type: global-caution);
+            margin-bottom: 0;
+            text-align: center;
         }
     }
-    &.demo {
-        .message(@_message-type: global-caution);
-        text-align: center;
-        margin-bottom: 0;
-    }
-}
 
-//
-//  Footer
-//--------------------------------------
+    //
+    //  Footer
+    //  ---------------------------------------------
 
-@footer-bg-color: #f4f4f4;
-@footer-links-separator-border-color: #cecece;
-@footer-links-color: #575757;
-@footer-links-color-hover: @color-gray20;
-@footer-links-color-current: @color-primary-light;
-
-.page-footer {
-    margin-top: @indent-m-base;
-}
+    .page-footer {
+        margin-top: @indent-m-base;
+    }
 
-.footer {
-    &.content {
-        padding-top: @indent-base;
-        border-top: 1px solid @footer-links-separator-border-color;
-        ul {
-            &:extend(.abs-reset-list all);
-        }
-        .links {
-            > li {
-                border-top: 1px solid @footer-links-separator-border-color;
-                font-size: 16px;
-                background: @footer-bg-color;
-                margin: 0 -@layout-width-xs-indent;
-                padding: 0 @layout-width-xs-indent;
-            }
-            strong,
-            a {
-                display: block;
-                padding: @indent-s-base 0;
-            }
-            strong {
-                font-weight: normal;
-                color: @footer-links-color-current;
+    .footer {
+        &.content {
+            border-top: 1px solid @footer-links-separator-border-color;
+            padding-top: @indent-base;
+            ul:extend(.abs-reset-list all) {
             }
-            a {
-                .link(
-                     @_link-color: @footer-links-color,
-                     @_link-text-decoration: none,
-                     @_link-color-visited: @footer-links-color,
-                     @_link-text-decoration-visited: none,
-                     @_link-color-hover: @footer-links-color-hover,
-                     @_link-text-decoration-hover: underline,
-                     @_link-color-active: @footer-links-color-hover,
-                     @_link-text-decoration-active: underline
-                );
+            .links {
+                > li {
+                    .css(background, @footer-bg-color);
+                    .font-size(16);
+                    border-top: 1px solid @footer-links-separator-border-color;
+                    margin: 0 -@layout-width-xs-indent;
+                    padding: 0 @layout-width-xs-indent;
+                }
+                strong,
+                a {
+                    display: block;
+                    padding: @indent-s-base 0;
+                }
+                strong {
+                    .css(color, @footer-links-color-current);
+                    font-weight: normal;
+                }
+                a {
+                    .link(
+                    @_link-color: @footer-links-color,
+                    @_link-text-decoration: none,
+                    @_link-color-visited: @footer-links-color,
+                    @_link-text-decoration-visited: none,
+                    @_link-color-hover: @footer-links-color-hover,
+                    @_link-text-decoration-hover: underline,
+                    @_link-color-active: @footer-links-color-hover,
+                    @_link-text-decoration-active: underline
+                    );
+                }
             }
         }
     }
-}
 
-.copyright {
-    display: block;
-    padding: @indent-s-base;
-    background-color: @color-background-copyright;
-    text-align: center;
-    color: @color-white;
-    .checkout-onepage-index & {
-        margin-top: auto;
+    .copyright {
+        .css(background-color, @color-background-copyright);
+        .css(color, @color-white);
+        display: block;
+        padding: @indent-s-base;
+        text-align: center;
+        .checkout-onepage-index & {
+            margin-top: auto;
+        }
     }
-}
 
-.page-header,
-.page-footer {
-    .switcher {
-        .options {
-            .dropdown(
+    .page-header,
+    .page-footer {
+        .switcher {
+            .options {
+                .dropdown(
                 @_dropdown-actions-padding: 0,
                 @_dropdown-list-item-padding: 0,
                 @_dropdown-toggle-icon-content: @icon-down,
@@ -255,66 +257,65 @@ body {
                 @_icon-font-size: 10px,
                 @_icon-font-line-height: 22px,
                 @_dropdown-list-min-width: 160px
-            );
-            ul.dropdown {
-                a {
-                    .link(
-                         @_link-color: @color-gray20,
-                         @_link-text-decoration: none,
-                         @_link-color-visited: @color-gray20,
-                         @_link-text-decoration-visited: none,
-                         @_link-color-hover: @color-gray20,
-                         @_link-text-decoration-hover: none,
-                         @_link-color-active: @color-gray20,
-                         @_link-text-decoration-active: none
-                    );
-                    display: block;
-                    padding: 8px;
+                );
+                ul.dropdown {
+                    a {
+                        .link(
+                        @_link-color: @color-gray20,
+                        @_link-text-decoration: none,
+                        @_link-color-visited: @color-gray20,
+                        @_link-text-decoration-visited: none,
+                        @_link-color-hover: @color-gray20,
+                        @_link-text-decoration-hover: none,
+                        @_link-color-active: @color-gray20,
+                        @_link-text-decoration-active: none
+                        );
+                        display: block;
+                        padding: 8px;
+                    }
                 }
             }
-        }
-        strong {
-            font-weight: @font-weight-base;
-        }
-        .label {
-            &:extend(.abs-visually-hidden all);
+            strong {
+                font-weight: @font-weight-base;
+            }
+            .label:extend(.abs-visually-hidden all) {
+            }
         }
     }
 }
 
-}
-
 //
-//    Navigation
-//--------------------------------------
-.responsive-max-m(@break) when (@break = @screen-m) {
+//  Navigation
+//  ---------------------------------------------
+
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-m) {
     .customer-name,
     .customer-welcome + .authorization-link {
         display: none;
     }
     .nav-sections .switcher-trigger strong:after {
-        font-size: 16px;
+        .font-size(16);
         right: -25px;
         top: 2px;
     }
     .navigation .parent .level-top:after {
-        font-size: 16px;
-        top: 7px;
+        .font-size(16);
         right: 10px;
+        top: 7px;
     }
     .page-footer .footer.content {
         .switcher-store {
-            background: @footer-bg-color;
-            font-size: 16px;
+            .css(background, @footer-bg-color);
+            .font-size(16);
             margin: 0 -@layout-width-xs-indent;
             .switcher-options {
                 display: block;
                 ul.dropdown {
-                    position: relative;
+                    background: none;
+                    border: 0;
                     box-shadow: none;
                     margin: 0;
-                    border: 0;
-                    background: none;
+                    position: relative;
                     &:before,
                     &:after {
                         display: none;
@@ -324,10 +325,10 @@ body {
                 .switcher-option {
                     border-top: 1px solid @footer-links-separator-border-color;
                     display: block;
-                    padding: 10px @layout-indent;
+                    padding: @indent-s-base @layout-indent;
                 }
                 .switcher-trigger strong {
-                    padding: 10px 0;
+                    padding: @indent-s-base 0;
                 }
                 .switcher-option a {
                     padding: 0;
@@ -337,58 +338,50 @@ body {
     }
 }
 
-.responsive-max-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-s) {
     .logo {
-        margin-top: 4px;
         margin-bottom: 13px;
+        margin-top: 4px;
     }
 }
 
 //
-//    Common
-//--------------------------------------
+//  Common
+//  _____________________________________________
 
-.responsive-common() {
+& when (@media-common = true) {
 
-//
-//    Layered navigation
-//--------------------------------------
+    //
+    //  Widgets
+    //  ---------------------------------------------
 
-//
-//    Widgets
-//--------------------------------------
-.sidebar {
-    .widget.block:not(:last-child),
-    .widget:not(:last-child) {
-        margin-bottom: @indent-xl-base;
+    .sidebar {
+        .widget.block:not(:last-child),
+        .widget:not(:last-child) {
+            margin-bottom: @indent-xl-base;
+        }
     }
-}
 
-.widget {
-    clear: both;
-    img {
-        max-width: 100%;
-    }
-    .block-title {
-        &:extend(.abs-block-widget-title all);
+    .widget {
+        clear: both;
+        .block-title:extend(.abs-block-widget-title all) {
+        }
     }
 }
 
-}
-
 //
-//    Desktop
-//--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+//  Desktop
+//  _____________________________________________
 
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     html,
     body {
-        height: 100%; // stretch screen area for sticky footer
+        height: 100%; //  Stretch screen area for sticky footer
     }
 
     body {
         .ie9 & {
-            background-color: @color-background-copyright;
+            .css(background-color, @color-background-copyright);
         }
     }
 
@@ -402,10 +395,9 @@ body {
             border-bottom: 1px solid @color-secondary;
             .css(background-color, @header-panel-bg-color);
         }
-        .header.panel {
-            padding-top: 10px;
-            padding-bottom: 10px;
-            &:extend(.abs-add-clearfix-desktop all);
+        .header.panel:extend(.abs-add-clearfix-desktop all) {
+            padding-bottom: @indent-s-base;
+            padding-top: @indent-s-base;
         }
         .switcher {
             float: right;
@@ -429,51 +421,50 @@ body {
 
     .customer-welcome {
         .dropdown(
-            @_toggle-selector : ~".action.switch",
-            @_options-selector : ~"ul",
-            @_dropdown-actions-padding: 0,
-            @_dropdown-list-item-padding: 0,
-            @_dropdown-toggle-icon-content: @icon-down,
-            @_dropdown-toggle-active-icon-content: @icon-up,
-            @_icon-font-text-hide: true,
-            @_icon-font-size: 10px,
-            @_icon-font-line-height: 22px,
-            @_dropdown-list-pointer-position: right,
-            @_dropdown-list-position-right: 0
+        @_toggle-selector: ~".action.switch",
+        @_options-selector: ~"ul",
+        @_dropdown-actions-padding: 0,
+        @_dropdown-list-item-padding: 0,
+        @_dropdown-toggle-icon-content: @icon-down,
+        @_dropdown-toggle-active-icon-content: @icon-up,
+        @_icon-font-text-hide: true,
+        @_icon-font-size: 10px,
+        @_icon-font-line-height: 22px,
+        @_dropdown-list-pointer-position: right,
+        @_dropdown-list-position-right: 0
         );
-        .action.switch {
-            .button-reset();
-            .css(color, @color-white);
-        }
-        .header.links {
-            min-width: 175px;
-        }
-        li {
-            &:extend(.switcher li all);
+        li:extend(.switcher li all) {
             a {
                 .link(
-                      @_link-color: @color-gray20,
-                      @_link-text-decoration: none,
-                      @_link-color-visited: @color-gray20,
-                      @_link-text-decoration-visited: none,
-                      @_link-color-hover: @color-gray20,
-                      @_link-text-decoration-hover: none,
-                      @_link-color-active: @color-gray20,
-                      @_link-text-decoration-active: none
-                 );
+                @_link-color: @color-gray20,
+                @_link-text-decoration: none,
+                @_link-color-visited: @color-gray20,
+                @_link-text-decoration-visited: none,
+                @_link-color-hover: @color-gray20,
+                @_link-text-decoration-hover: none,
+                @_link-color-active: @color-gray20,
+                @_link-text-decoration-active: none
+                );
                 display: block;
-                padding: 8px;
                 line-height: 1.4;
+                padding: 8px;
             }
         }
         .customer-menu {
             display: none;
         }
+        .action.switch {
+            .button-reset();
+            .css(color, @color-white);
+        }
+        .header.links {
+            min-width: 175px;
+        }
         &.active {
             .action.switch {
                 .icon-font-symbol(
-                    @_icon-font-content: @icon-up,
-                    @_icon-font-position: after
+                @_icon-font-content: @icon-up,
+                @_icon-font-position: after
                 );
             }
             .customer-menu {
@@ -495,28 +486,27 @@ body {
                     margin: 0 0 0 15px;
                     &.welcome,
                     > a {
-                        line-height: 1.4;
                         display: inline-block;
+                        line-height: 1.4;
                     }
                 }
                 > .authorization-link:after {
-                    content: "or";
+                    content: 'or';
                     display: inline-block;
-                    margin: 0 -5px 0 5px;
+                    margin: 0 -@indent-xs-base 0 @indent-xs-base;
                 }
                 > .customer-welcome + .authorization-link {
                     display: none;
                 }
             }
         }
-        &.content {
-            padding: 30px 20px 0;
-            &:extend(.abs-add-clearfix-desktop all);
+        &.content:extend(.abs-add-clearfix-desktop all) {
+            padding: @indent-l-base @indent-base 0;
         }
     }
 
     .logo {
-        margin: -8px auto 25px 0;
+        margin: -8px auto @indent-m-base 0;
         img {
             max-height: inherit;
         }
@@ -525,14 +515,15 @@ body {
     .page-wrapper {
         .vendor-prefix-display(flex);
         .vendor-prefix-flex-direction(column);
-        transition: margin .3s ease-out 0;
-        position: relative;
         margin: 0;
-        min-height: 100%; // stretch content area for sticky footer
+        min-height: 100%; //  Stretch content area for sticky footer
+        position: relative;
+        transition: margin .3s ease-out 0;
         > .breadcrumbs,
-        > .top-container {
-            width: 100%;
+        > .top-container,
+        > .widget {
             box-sizing: border-box;
+            width: 100%;
         }
         .ie10 &,
         .ie11 & {
@@ -541,9 +532,9 @@ body {
     }
 
     .page-footer {
+        .css(background, @footer-bg-color);
         margin-top: auto;
-        padding-bottom: 25px;
-        background: @footer-bg-color;
+        padding-bottom: @indent-m-base;
     }
 
     .footer {
@@ -561,14 +552,14 @@ body {
             }
             .links {
                 display: inline-block;
-                vertical-align: top;
                 padding-right: 50px;
+                vertical-align: top;
                 li {
-                    border: none;
                     background: transparent;
+                    border: none;
                     font-size: 14px;
+                    margin: 0 0 8px;
                     padding: 0;
-                    margin: 0 0 8px 0;
                 }
                 a,
                 strong {
@@ -580,24 +571,24 @@ body {
 }
 
 //
-//    Common
-//--------------------------------------
-
-.responsive-common() {
+//  Common
+//  _____________________________________________
 
-.no-display {
-    &:extend(.abs-no-display all);
-}
+& when (@media-common = true) {
+    .no-display:extend(.abs-no-display all) {
+    }
 
-// Calendar
-.ui-datepicker td {
-    padding: 0;
-}
+    //
+    //  Calendar
+    //  ---------------------------------------------
 
-.ui-tooltip {
-    border: @tooltip-border-width solid @tooltip-border-color;
-    background: @tooltip-background;
-    padding: 10px;
-}
+    .ui-datepicker td {
+        padding: 0;
+    }
 
+    .ui-tooltip {
+        border: @tooltip-border-width solid @tooltip-border-color;
+        .css(background, @tooltip-background);
+        padding: 10px;
+    }
 }
diff --git a/app/design/frontend/Magento/luma/Magento_Wishlist/web/css/source/module.less b/app/design/frontend/Magento/luma/Magento_Wishlist/web/css/source/module.less
index 125a5f9f9afd969f6ce2be64e6f9abf0c88efd9f..41133bfc5d5b69f90600be3bddcdc38c493d9eee 100644
--- a/app/design/frontend/Magento/luma/Magento_Wishlist/web/css/source/module.less
+++ b/app/design/frontend/Magento/luma/Magento_Wishlist/web/css/source/module.less
@@ -7,7 +7,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 .form.wishlist.items {
     .actions-toolbar {
@@ -76,7 +76,7 @@
 
 .link.wishlist {
     .counter {
-        color: @text-color-muted;
+        .css(color, @text-color-muted);
         white-space: nowrap;
         &:before {
             content: "(";
@@ -147,7 +147,7 @@
 //
 //    Mobile
 //--------------------------------------
-.responsive-max-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-s) {
     .products-grid.wishlist {
         .product-item {
             border-bottom: 1px solid @color-secondary;
@@ -158,7 +158,7 @@
     }
 }
 
-.responsive-max-m(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-m) {
     .products-grid.wishlist {
         margin-right: -@indent-s-base;
         margin-bottom: @indent-l-base;
@@ -228,7 +228,7 @@
     }
 }
 
-.responsive-min-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-s) {
     .wishlist-index-index {
         .products-grid {
             .product-item {
@@ -245,7 +245,7 @@
 //
 //    Desktop
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .products-grid.wishlist {
         .product {
             &-item {
@@ -299,7 +299,7 @@
     }
 }
 
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .wishlist-index-index {
         .product-item-inner {
             display: none;
@@ -307,10 +307,10 @@
             left: 0;
             right: -1px;
             z-index: 2;
-            background: @color-white;
-            padding: 0 9px 9px 9px;
+            .css(background, @color-white);
+            padding: 0 9px 9px;
             margin: 9px 0 0 -1px;
-            border: 1px solid #bbb;
+            border: 1px solid @color-gray-light2;
             border-top: none;
             @_shadow: 3px 4px 4px 0 rgba(0, 0, 0, .3);
             .css(box-shadow, @_shadow);
@@ -321,7 +321,7 @@
     }
 }
 
-.responsive-min-l(@break) when (@break = @screen-l) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-l) {
     .wishlist-index-index {
         .products-grid {
             .product-items {
diff --git a/app/design/frontend/Magento/luma/composer.json b/app/design/frontend/Magento/luma/composer.json
index 3c8c3377313a6f3e6bc85ad5b032a7f01bc7506e..ad479e7f35ca538163e6a6e2723b1df6e4ccd914 100644
--- a/app/design/frontend/Magento/luma/composer.json
+++ b/app/design/frontend/Magento/luma/composer.json
@@ -3,12 +3,12 @@
     "description": "N/A",
     "require": {
         "php": "~5.4.11|~5.5.0|~5.6.0",
-        "magento/theme-frontend-blank": "0.42.0-beta3",
-        "magento/framework": "0.42.0-beta3",
+        "magento/theme-frontend-blank": "0.42.0-beta4",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-theme",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/app/design/frontend/Magento/luma/theme.xml b/app/design/frontend/Magento/luma/theme.xml
index ca668b48fe871ca04a257f567f7d26c0d8fa9005..a076b74818636816aae0330636603324c3d94b9d 100644
--- a/app/design/frontend/Magento/luma/theme.xml
+++ b/app/design/frontend/Magento/luma/theme.xml
@@ -6,7 +6,6 @@
 -->
 <theme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../lib/internal/Magento/Framework/Config/etc/theme.xsd">
     <title>Magento Luma</title>
-    <version>0.1.0</version>
     <parent>Magento/blank</parent>
     <media>
         <preview_image>media/preview.jpg</preview_image>
diff --git a/app/design/frontend/Magento/luma/web/css/source/abstract.less b/app/design/frontend/Magento/luma/web/css/source/abstract.less
index 02798fb7bd1d007c1e42b384fd50b5872250c7c9..43f04f6079f888ca32f6324670674bd086c5578b 100644
--- a/app/design/frontend/Magento/luma/web/css/source/abstract.less
+++ b/app/design/frontend/Magento/luma/web/css/source/abstract.less
@@ -105,7 +105,7 @@
 //
 //    Desktop
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .abs-product-options-list-desktop {
         @abs-product-options-list();
     }
@@ -118,7 +118,7 @@
     .button-responsive();
 }
 
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .abs-button-desktop {
         width: auto;
     }
@@ -141,13 +141,13 @@
     }
 };
 
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .abs-blocks-2columns {
         @abs-blocks-2columns();
     }
 }
 
-.responsive-min-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-s) {
     .abs-blocks-2columns-s {
         @abs-blocks-2columns();
     }
@@ -223,7 +223,7 @@
     margin-bottom: @indent-xl-base;
 }
 
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .abs-margin-for-blocks-and-widgets-desktop {
         margin-bottom: @indent-xl-base + @indent-s-base;
     }
@@ -238,9 +238,9 @@
         @_icon-font-size: 12px,
         @_icon-font-line-height: 15px,
         @_icon-font-text-hide: true,
-        @_icon-font-color: #999,
-        @_icon-font-color-hover: #494949,
-        @_icon-font-color-active: #999
+        @_icon-font-color: @color-gray60,
+        @_icon-font-color-hover: @color-gray-darken4,
+        @_icon-font-color-active: @color-gray60
     );
 }
 
@@ -249,10 +249,10 @@
 //--------------------------------------
 .abs-product-link {
     .link(
-        @_link-color: #303030,
-        @_link-color-hover: #303030,
-        @_link-color-active: #303030,
-        @_link-color-visited: #303030
+        @_link-color: @color-gray19,
+        @_link-color-hover: @color-gray19,
+        @_link-color-active: @color-gray19,
+        @_link-color-visited: @color-gray19
     );
 }
 
@@ -275,13 +275,13 @@
     @abs-reset-left-margin();
 }
 
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .abs-reset-left-margin-desktop {
         @abs-reset-left-margin();
     }
 }
 
-.responsive-min-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-s) {
     .abs-reset-left-margin-desktop-s {
         @abs-reset-left-margin();
     }
@@ -303,7 +303,7 @@
 //
 //    Action with icon remove with text for desktop
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .abs-action-remove-desktop {
         margin-left: 90%;
     }
@@ -348,7 +348,7 @@
 //
 //    Add Recipient for desktop
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .abs-add-fields-desktop {
         .fieldset {
             .field {
@@ -368,7 +368,7 @@
 //
 //    Margin for forms
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .abs-margin-for-forms-desktop {
         margin-left: @form-field-type-inline-label-width;
     }
@@ -396,25 +396,25 @@
     @abs-visually-hidden();
 }
 
-.responsive-max-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-s) {
     .abs-visually-hidden-mobile {
         @abs-visually-hidden();
     }
 }
 
-.responsive-max-m(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-m) {
     .abs-visually-hidden-mobile-m {
         @abs-visually-hidden();
     }
 }
 
-.responsive-min-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-s) {
     .abs-visually-hidden-desktop-s {
         @abs-visually-hidden();
     }
 }
 
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .abs-visually-hidden-desktop {
         @abs-visually-hidden();
     }
@@ -431,25 +431,25 @@
     @abs-add-clearfix();
 }
 
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .abs-add-clearfix-desktop {
         @abs-add-clearfix();
     }
 }
 
-.responsive-min-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-s) {
     .abs-add-clearfix-desktop-s {
         @abs-add-clearfix();
     }
 }
 
-.responsive-max-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-s) {
     .abs-add-clearfix-mobile {
         @abs-add-clearfix();
     }
 }
 
-.responsive-max-m(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-m) {
     .abs-add-clearfix-mobile-m {
         @abs-add-clearfix();
     }
@@ -466,13 +466,13 @@
     @abs-add-box-sizing();
 }
 
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .abs-add-box-sizing-desktop {
         @abs-add-box-sizing();
     }
 }
 
-.responsive-min-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-s) {
     .abs-add-box-sizing-desktop-s {
         @abs-add-box-sizing();
     }
@@ -481,7 +481,7 @@
 //
 //    Revert field type
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .abs-revert-field-type-desktop {
         .fieldset {
             > .field,
@@ -543,13 +543,13 @@
     }
 };
 
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .abs-form-field-column-2 {
         @abs-form-field-column-2();
     }
 }
 
-.responsive-min-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-s) {
     .abs-form-field-column-2-s {
         @abs-form-field-column-2();
     }
@@ -562,13 +562,13 @@
     .form-field-column-number(@_column-number: 1);
 };
 
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .abs-form-field-revert-column-1 {
         @abs-form-field-revert-column-1();
     }
 }
 
-.responsive-min-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-s) {
     .abs-form-field-revert-column-1-s {
         @abs-form-field-revert-column-1();
     }
@@ -586,7 +586,7 @@
 //
 //    Checkout order review
 //--------------------------------------
-.responsive-max-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-s) {
     .abs-checkout-order-review {
         tbody > tr {
             &:extend(.abs-add-clearfix-mobile all);
@@ -657,7 +657,7 @@
 //
 //    General pages forms
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .abs-forms-general-desktop {
         max-width: 500px;
         .legend {
@@ -672,7 +672,7 @@
 //
 //    Revert side paddings
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .abs-revert-side-paddings {
         padding-left: 0;
         padding-right: 0;
@@ -708,7 +708,7 @@
     );
 }
 
-.responsive-max-m(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-m) {
     .abs-toggling-title-mobile {
         @abs-toggling-title();
         border-bottom: @border-width-base solid @border-color-base;
@@ -787,7 +787,7 @@
 //
 //    Mobile checkout order product name
 //--------------------------------------
-.responsive-max-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-s) {
     .abs-product-items-summary {
         tbody {
             .col {
@@ -841,7 +841,7 @@
 //
 //    Account pages: block font size
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .abs-account-block-font-size {
         .font-size(16);
     }
@@ -857,12 +857,12 @@
 //
 //    Account pages: margin for table
 //--------------------------------------
-.responsive-max-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-s) {
     .abs-account-table-margin-mobile {
         .css(margin-top, -@indent-base);
     }
 }
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .abs-account-table-margin-desktop {
         .css(margin-top, -@indent-m-base);
     }
@@ -871,7 +871,7 @@
 //
 //    Account pages: table col actions
 //--------------------------------------
-.responsive-max-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-s) {
     .abs-col-no-prefix {
         &:before {
             .visually-hidden();
@@ -904,13 +904,13 @@
     }
 };
 
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .abs-action-print {
         @abs-action-print();
     }
 }
 
-.responsive-min-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-s) {
     .abs-action-print-s {
         @abs-action-print();
     }
@@ -1071,7 +1071,7 @@
     );
 }
 
-.responsive-max-m(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-m) {
     .abs-icon-add-mobile {
         .icon-font(
             @_icon-font-content: @icon-expand,
@@ -1113,13 +1113,13 @@
     @abs-no-display();
 }
 
-.responsive-max-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-s) {
     .abs-no-display-s {
         @abs-no-display();
     }
 }
 
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .abs-no-display-desktop {
         @abs-no-display();
     }
@@ -1138,7 +1138,7 @@
     vertical-align: top;
 }
 
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .abs-status-desktop {
         margin-top: 6px;
         padding: 5px 10px;
@@ -1165,7 +1165,7 @@
     }
 }
 
-.responsive-max-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-s) {
     .abs-title-orders-mobile {
         .page-main {
             .page-title {
@@ -1181,7 +1181,7 @@
     }
 }
 
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .abs-title-orders-desktop {
         .page-main {
             .page-title {
@@ -1206,7 +1206,7 @@
     );
 }
 
-.responsive-max-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-s) {
     .abs-table-striped-mobile {
         > tbody > tr > td:last-child {
             border: 0;
@@ -1217,7 +1217,7 @@
 //
 //    Table bordered desktop
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .abs-table-bordered-desktop {
         .table-bordered(
             @_table_type: light,
@@ -1229,7 +1229,7 @@
 //
 //    Pager toolbar for non-catalog pages desktop
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .abs-pager-toolbar {
         position: relative;
         .toolbar-amount,
@@ -1282,7 +1282,7 @@
     }
 }
 
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .abs-shopping-cart-items-desktop {
         .layout-column(2, 1, @layout-column-checkout-main-width);
         &:extend(.abs-add-box-sizing-desktop all);
@@ -1294,7 +1294,7 @@
 //
 //    Remove top border
 //--------------------------------------
-.responsive-max-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-s) {
     .abs-no-border-top {
         border-top: 0;
     }
@@ -1303,7 +1303,7 @@
 //
 //    Remove bottom border
 //--------------------------------------
-.responsive-max-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-s) {
     .abs-no-border-bottom {
         border-bottom: 0;
     }
diff --git a/app/design/frontend/Magento/luma/web/css/source/actions-toolbar.less b/app/design/frontend/Magento/luma/web/css/source/actions-toolbar.less
index 4c04a9fe3420d148cb56666edee0190605f11fa9..0d4dcef6178531ff75909e594bf02f8cf3db92a9 100644
--- a/app/design/frontend/Magento/luma/web/css/source/actions-toolbar.less
+++ b/app/design/frontend/Magento/luma/web/css/source/actions-toolbar.less
@@ -7,7 +7,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 .actions-toolbar {
     > .primary,
@@ -40,7 +40,7 @@
 //
 //    Desktop
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .actions-toolbar {
         .actions-toolbar();
         > .primary,
diff --git a/app/design/frontend/Magento/luma/web/css/source/breadcrumbs.less b/app/design/frontend/Magento/luma/web/css/source/breadcrumbs.less
index 7b7fae3ac24b4a90eca09cca3920b1192067da9d..d8870a51d54ad3bf0681c1b3ac8accc46ac733f4 100644
--- a/app/design/frontend/Magento/luma/web/css/source/breadcrumbs.less
+++ b/app/design/frontend/Magento/luma/web/css/source/breadcrumbs.less
@@ -7,7 +7,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 .breadcrumbs {
     .mixin-breadcrumbs();
@@ -18,7 +18,7 @@
 //
 //    Mobile
 //--------------------------------------
-.responsive-max-m(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-m) {
     .breadcrumbs {
         display: none;
     }
diff --git a/app/design/frontend/Magento/luma/web/css/source/buttons.less b/app/design/frontend/Magento/luma/web/css/source/buttons.less
index e9626a2712452436a8f173e8958cd68242e0b0c4..54bad432be8d8c3263cd9275145a25220532deb4 100644
--- a/app/design/frontend/Magento/luma/web/css/source/buttons.less
+++ b/app/design/frontend/Magento/luma/web/css/source/buttons.less
@@ -7,7 +7,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 //
 //    Using buttons mixins
diff --git a/app/design/frontend/Magento/luma/web/css/source/forms.less b/app/design/frontend/Magento/luma/web/css/source/forms.less
index d58b68ab72656a9793172cbafc76e094a373f19d..7dbff5a55043070a6228aee143911d03ef9abcc6 100644
--- a/app/design/frontend/Magento/luma/web/css/source/forms.less
+++ b/app/design/frontend/Magento/luma/web/css/source/forms.less
@@ -3,14 +3,14 @@
 //  * See COPYING.txt for license details.
 //  */
 
-@legend-border-bottom: 1px solid #c5c5c5;
+@legend-border-bottom: 1px solid @color-gray-light6;
 @form-field-vertical-indent-desktop: 29px;
 
 //
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 .fieldset {
     .form-fieldset();
@@ -123,9 +123,10 @@ select:focus ~ .tooltip .tooltip-content {
         .fields > .field {
             margin: 0 0 @form-field-vertical-indent;
             .label {
-                padding: 0 0 5px;
+                margin: 0 0 4px;
+                padding: 0 0 @indent-xs-base;
                 text-align: left;
-                width: 100%
+                width: 100%;
             }
             .control {
                 width: 100%;
@@ -139,7 +140,7 @@ select:focus ~ .tooltip .tooltip-content {
 //
 //    Desktop
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .legend {
         .css(border-bottom, @legend-border-bottom);
     }
diff --git a/app/design/frontend/Magento/luma/web/css/source/lib/variables.less b/app/design/frontend/Magento/luma/web/css/source/lib/variables.less
deleted file mode 100644
index be25fc3bffa5fdfdde7e09b29aec210f6fb932bb..0000000000000000000000000000000000000000
--- a/app/design/frontend/Magento/luma/web/css/source/lib/variables.less
+++ /dev/null
@@ -1,1464 +0,0 @@
-// /**
-//  * Copyright © 2015 Magento. All rights reserved.
-//  * See COPYING.txt for license details.
-//  */
-
-//
-//    Typography
-//--------------------------------------
-
-// Base
-@font-family-sans-serif: 'Helvetica Neue', Helvetica, Arial, sans-serif;
-@font-family-serif: Georgia, 'Times New Roman', Times, serif;
-@font-family-monospace: Menlo, Monaco, Consolas, 'Courier New', monospace;
-@font-path: "../../fonts/";
-@font-family-base: 'Open Sans', @font-family-sans-serif;
-@icon-font-path: '@{baseDir}fonts/Luma-Icons';
-@icon-font-name: 'luma-icons';
-
-// Colors
-@color-white: #fff;
-@color-gray20: #333;
-@color-gray56: #8f8f8f;
-
-// Color nesting
-@color-background-page: @color-white;
-@color-background-copyright: @color-gray56;
-@color-primary: @color-gray20;
-@color-primary-dark: darken(@color-primary, 35%);  // #000
-@color-primary-darker: darken(@color-primary, 13.5%);  // #111
-@color-primary-lighter: lighten(@color-primary, 29%);  // #7d7d7d
-@color-primary-light: lighten(@color-primary, 45%);  // #a6a6a6
-@color-secondary: #e8e8e8;
-@color-secondary-light: lighten(@color-secondary, 5%);
-@page-bg-color: @color-white;
-@panel-bg: #f6f6f6;
-@color-active: #ff5501;
-@color-error: #e02b27;
-@color-focus: #68a8e0;
-
-@font-family-base: @font-family-sans-serif; // Also used in: @loader-text-font-family
-// setting font-size for HTML tag, use <b>%</b>  units
-@font-size-root: 62.5%;
-// defines ratio between root font size and base font size
-@font-size-base-ratio: 1.4;
-@font-rem-ratio: unit(@font-size-root * 16/100);
-//base font size value in <b>px</b>:
-@font-size-base: unit((@font-size-root / 100) * 16 * @font-size-base-ratio, px); // Also used in: @loader-text-font-size
-@font-size-xl: ceil(1.5 * @font-size-base);  // 21
-@font-size-l: ceil(1.25 * @font-size-base);  // 18
-@font-size-s: ceil(.85 * @font-size-base);  // 12 Also used in: Breadcrumbs and in Small button
-@font-size-xs: floor(.75 * @font-size-base);  // 11
-
-@font-weight-base: 400;
-@font-weight-light: 300;
-@font-weight-semibold: 600;
-@font-weight-bold: 700; // Also used in: @loader-text-font-weight
-@font-style-base: normal; // Also used in: @loader-text-font-style
-@font-style-emphasis: italic;
-
-@line-height-base: 1.428571429;
-@line-height-computed: floor(@font-size-base * @line-height-base);
-@line-height-s: 1.33;
-@line-height-l: 1.5;
-
-@text-color: @color-primary; // Also used in @pager-action-color-visited, @pager-action-color-hover, @pager-action-color-active, @tab-control-color-active
-@text-color-intense: @color-primary-darker;
-@text-color-muted: @color-primary-lighter; // Also used in @pager-action-color, @tab-control-color
-
-@indent-base: @line-height-computed; // 20px
-@indent-xl-base: @indent-base * 2; // 40px
-@indent-l-base: @indent-base * 1.5; // 30px
-@indent-m-base: @indent-base * 1.25; // 25px
-@indent-s-base: @indent-base / 2; // 10px
-@indent-xs-base: @indent-base / 4; // 5px
-
-@border-color-base: #ccc;
-@border-width-base: 1px;
-
-// Links
-@link-color: #1979c3;
-@link-text-decoration: none;
-
-@link-color-visited: #800080;
-@link-text-decoration-visited: none;
-
-@link-color-hover: #006bb4;
-@link-text-decoration-hover: underline;
-
-@link-color-active: @color-active;
-@link-text-decoration-active: underline;
-
-// Lists
-@list-color-base: false;
-@list-font-size-base: false;
-@list-margin-top: 0;
-@list-margin-bottom: @indent-m-base;
-@list-item-margin-top: 0;
-@list-item-margin-bottom: @indent-s-base;
-
-@dl-margin-top: 0;
-@dl-margin-bottom: @indent-base;
-@dt-margin-top: 0;
-@dt-margin-bottom: @indent-xs-base;
-@dt-font-weight: @font-weight-bold;
-@dd-margin-top: 0;
-@dd-margin-bottom: @indent-s-base;
-
-// Paragraphs
-@p-margin-top: 0;
-@p-margin-bottom: @indent-s-base;
-
-// Headings
-@heading-font-family-base: false;
-@heading-font-weight-base: @font-weight-light;
-@heading-line-height-base: 1.1;
-@heading-color-base: false;
-@heading-font-style-base: false;
-@heading-margin-top-base: @indent-base;
-@heading-margin-bottom-base: @indent-base;
-
-@h1-font-size: ceil((@font-size-base * 2.85)); // 40px
-@h1-font-color: @heading-color-base;
-@h1-font-family: @heading-font-family-base;
-@h1-font-weight: @heading-font-weight-base;
-@h1-font-style: @heading-font-style-base;
-@h1-line-height: @heading-line-height-base;
-@h1-margin-top: 0;
-@h1-margin-bottom: @heading-margin-bottom-base;
-
-@h2-font-size: ceil((@font-size-base * 1.85)); // 26px
-@h2-font-color: @heading-color-base;
-@h2-font-family: @heading-font-family-base;
-@h2-font-weight: @heading-font-weight-base;
-@h2-font-style: @heading-font-style-base;
-@h2-line-height: @heading-line-height-base;
-@h2-margin-top: @indent-m-base;
-@h2-margin-bottom: @heading-margin-bottom-base;
-
-@h3-font-size: ceil((@font-size-base * 1.28)); // 18px
-@h3-font-color: @heading-color-base;
-@h3-font-family: @heading-font-family-base;
-@h3-font-weight: @font-weight-semibold;
-@h3-font-style: @heading-font-style-base;
-@h3-line-height: @heading-line-height-base;
-@h3-margin-top: @indent-base;
-@h3-margin-bottom: @indent-s-base;
-
-@h4-font-size: @font-size-base; // 14px
-@h4-font-color: @heading-color-base;
-@h4-font-family: @heading-font-family-base;
-@h4-font-weight: @font-weight-bold;
-@h4-font-style: @heading-font-style-base;
-@h4-line-height: @heading-line-height-base;
-@h4-margin-top: @heading-margin-top-base;
-@h4-margin-bottom: @heading-margin-bottom-base;
-
-@h5-font-size: ceil((@font-size-base * .85)); // 12px
-@h5-font-color: @heading-color-base;
-@h5-font-family: @heading-font-family-base;
-@h5-font-weight: @font-weight-bold;
-@h5-font-style: @heading-font-style-base;
-@h5-line-height: @heading-line-height-base;
-@h5-margin-top: @heading-margin-top-base;
-@h5-margin-bottom: @heading-margin-bottom-base;
-
-@h6-font-size: ceil((@font-size-base * .7)); // 10px
-@h6-font-color: @heading-color-base;
-@h6-font-family: @heading-font-family-base;
-@h6-font-weight: @font-weight-bold;
-@h6-font-style: @heading-font-style-base;
-@h6-line-height: @heading-line-height-base;
-@h6-margin-top: @heading-margin-top-base;
-@h6-margin-bottom: @heading-margin-bottom-base;
-
-@heading-small-color: @color-primary;
-@heading-small-line-height: 1;
-@heading-small-size: (@font-size-xs/@font-size-base) * 100%;
-
-// Focus
-@focus-box-shadow: 0 0 3px 1px @color-focus;
-
-// Code blocks
-@code-bg: @panel-bg;
-@code-color: @color-primary-darker;
-@code-font-size: @font-size-s;
-@code-padding: 2px 4px;
-
-@pre-bg: @panel-bg;
-@pre-border-color: @border-color-base;
-@pre-border-width: @border-width-base;
-@pre-color: @color-primary-darker;
-
-@kbd-bg: @panel-bg;
-@kbd-color: @color-primary-darker;
-
-// Blockquote
-@blockquote-border-color: @border-color-base;
-@blockquote-border-width: 0;
-@blockquote-before-content: '\2014 \00A0'; // em dash, nbsp
-@blockquote-font-size: @font-size-base;
-@blockquote-font-style: @font-style-emphasis;
-@blockquote-margin: 0 0 @indent-base @indent-xl-base;
-@blockquote-padding: 0;
-@blockquote-small-color: @color-primary;
-@blockquote-small-font-size: @font-size-xs;
-
-@cite-font-style: @font-style-base;
-
-// Misc
-@hr-border-color: @border-color-base;
-@hr-border-style: solid;
-@hr-border-width: @border-width-base;
-
-@mark-color: @color-primary-dark;
-@mark-bg: @panel-bg;
-
-@abbr-border-color: @border-color-base;
-
-// Disable filters output in css
-@disable-filters: false;
-
-//
-//    Tables variables
-//--------------------------------------
-@table-width: 100%;
-@table-margin-bottom: false;
-@table-bg: false;
-@table-head-bg: @table-bg;
-@table-foot-bg: @table-bg;
-@table-td-bg: @table-bg;
-@table-body-th-bg: @table-bg;
-
-@table-cell-padding-horizontal: @indent-s-base;
-@table-cell-padding-vertical: 11px;
-
-@table-border-color: @border-color-base;
-@table-border-width: @border-width-base;
-@table-border-style: solid;
-
-@table-caption-hide: true; // true, false
-@table-caption-font-size: false;
-@table-caption-color: false;
-@table-caption-font-family: false;
-@table-caption-font-weight: false;
-@table-caption-font-style: false;
-@table-caption-line-height: false;
-@table-caption-alignment: false;
-@table-caption-margin-top: false;
-@table-caption-margin-bottom: false;
-
-@table-td-font-size: false;
-@table-td-color: false;
-@table-td-font-family: false;
-@table-td-font-weight: false;
-@table-td-line-height: false;
-@table-td-font-style: false;
-
-@table-th-font-size: false;
-@table-th-color: @text-color-intense;
-@table-th-font-family: false;
-@table-th-font-weight: @font-weight-bold;
-@table-th-line-height: false;
-@table-th-font-style: false;
-
-@table-cell-bg-stripped: @table-cell-bg-hover;
-@table-cell-bg-hover: @panel-bg;
-@table-cell-color-stripped: @table-td-color;
-
-@table-bg-responsive: @table-bg;
-@table-th-bg-responsive: @table-cell-bg-stripped;
-@table-responsive-cell-padding: @indent-xs-base @indent-s-base;
-
-//
-//    Page layout variables
-//--------------------------------------
-
-// Layout widths variables
-@layout-width: ''; // for the fixed width layout
-@layout-max-width: 1280px;
-@layout-indent: 20px;
-@layout-width-xs-indent: 15px;
-
-// Classnames defining different layouts
-@layout-class-1column: page-layout-1column;
-@layout-class-2columns-left: page-layout-2columns-left;
-@layout-class-2columns-right: page-layout-2columns-right;
-@layout-class-3columns: page-layout-3columns;
-
-// Variables used for layout grid
-@total-columns: 24;
-@gutter-width: 0;
-
-// Variables for layout columns
-@layout-columns-width: @total-columns;
-@layout-column-sidebar-width: 5;
-@layout-column-left-width: @layout-column-sidebar-width;
-@layout-column-right-width: @layout-column-sidebar-width;
-
-// Variables for layout columns depending on layout used
-@layout-column-main-width-1: 100%;
-@layout-column-main-width-2-left: @layout-columns-width - @layout-column-left-width;
-@layout-column-main-width-2-right: @layout-columns-width - @layout-column-right-width;
-@layout-column-main-width-3: @layout-columns-width - @layout-column-left-width - @layout-column-right-width;
-
-// Checkout columns width
-@layout-column-checkout-left-width: 6;
-@layout-column-checkout-main-width: @layout-columns-width - @layout-column-checkout-left-width;
-
-//
-//    Responsive
-//--------------------------------------
-
-// Settings variables (TO DO: should be global)
-@use-flex: true; // Use flexbox [true|false]
-@responsive: true; // Theme is responsive [true|false]
-
-@screen-xxs: 320px;
-@screen-xs: 400px;
-@screen-s: 640px;
-@screen-m: 768px;
-@screen-l: 1000px;
-@screen-xl: 1440px;
-
-//
-//    Navigation variables
-//--------------------------------------
-@navigation-background: #f0f0f0;
-@navigation-border: '';
-@navigation-level0-font-size: 16;
-@navigation-level0-font-weight: @font-weight-bold;
-@navigation-level0-item-line-height: false;
-@navigation-level0-item-margin: 0;
-@navigation-level0-item-padding: 8px 20px;
-@navigation-level0-text-transform: uppercase;
-
-@navigation-level0-item-background: '';
-@navigation-level0-item-border: 1px solid #d1d1d1;
-@navigation-level0-item-color: #575757;
-@navigation-level0-item-text-decoration: none;
-
-@navigation-level0-item-background-active: '';
-@navigation-level0-item-border-active: '';
-@navigation-level0-item-color-active: @color-primary;
-@navigation-level0-item-text-decoration-active: '';
-
-@submenu-background: '';
-@submenu-border: '';
-@submenu-padding: 0 0 0 20px;
-@submenu-font-size: '';
-@submenu-font-weight: @font-weight-base;
-@submenu-item-padding: 8px 0;
-
-@submenu-item-background: '';
-@submenu-item-border: '';
-@submenu-item-color: #575757;
-@submenu-item-text-decoration: '';
-
-@submenu-item-background-active: '';
-@submenu-item-border-active: '';
-@submenu-item-color-active: @navigation-level0-item-color-active;
-@submenu-item-text-decoration-active: '';
-
-// Desktop navigation
-@navigation-desktop-background: @navigation-background;
-@navigation-desktop-border: '';
-@navigation-desktop-font-size: '';
-@navigation-desktop-font-weight: @font-weight-bold;
-
-@navigation-desktop-level0-item-line-height: 47px;
-@navigation-desktop-level0-item-margin: 0 10px 0 0;
-@navigation-desktop-level0-item-padding: 0 12px;
-
-@navigation-desktop-level0-item-background: '';
-@navigation-desktop-level0-item-border: '';
-@navigation-desktop-level0-item-color: #575757;
-@navigation-desktop-level0-item-text-decoration: none;
-
-@navigation-desktop-level0-item-background-hover: '';
-@navigation-desktop-level0-item-border-hover: '';
-@navigation-desktop-level0-item-color-hover: @color-primary;
-@navigation-desktop-level0-item-text-decoration-hover: @navigation-desktop-level0-item-text-decoration;
-
-@navigation-desktop-level0-item-background-active: '';
-@navigation-desktop-level0-item-border-active: '';
-@navigation-desktop-level0-item-color-active: @navigation-desktop-level0-item-color-hover;
-@navigation-desktop-level0-item-text-decoration-active: @navigation-desktop-level0-item-text-decoration;
-
-@submenu-desktop-background: @page-bg-color;
-@submenu-desktop-border-width: @border-width-base;
-@submenu-desktop-border-style: solid;
-@submenu-desktop-border-color: @border-color-base;
-@submenu-desktop-box-shadow: 0 5px 5px rgba(0, 0, 0, .19);
-@submenu-desktop-font-size: '';
-@submenu-desktop-font-weight: @font-weight-base;
-@submenu-desktop-min-width: 230px;
-@submenu-desktop-padding: 15px 0;
-
-@submenu-desktop-arrow: true; // true | false
-@submenu-desktop-arrow-size: 10px;
-@submenu-desktop-arrow-left: 20px;
-
-@submenu-desktop-item-padding: 8px 20px;
-@submenu-desktop-item-background: '';
-@submenu-desktop-item-border: '';
-@submenu-desktop-item-color: @navigation-desktop-level0-item-color;
-@submenu-desktop-item-text-decoration: '';
-
-@submenu-desktop-item-background-hover: @color-secondary;
-@submenu-desktop-item-border-hover: '';
-@submenu-desktop-item-color-hover: @navigation-desktop-level0-item-color-hover;
-@submenu-desktop-item-text-decoration-hover: @navigation-desktop-level0-item-text-decoration;
-
-@submenu-desktop-item-background-active: '';
-@submenu-desktop-item-border-active: '';
-@submenu-desktop-item-color-active: @navigation-level0-item-color-active;
-@submenu-desktop-item-text-decoration-active: '';
-
-//
-//    Sections variables
-//--------------------------------------
-
-// Tabs
-
-// Tabs controls
-@tab-control-font-size: @font-size-base;
-@tab-control-font-family: false;
-@tab-control-font-weight: @font-weight-base;
-@tab-control-font-style: false;
-@tab-control-line-height: @tab-control-height;
-
-// Current tab
-@tab-control-bg: @panel-bg;
-@tab-control-color: @text-color-muted;
-@tab-control-text-decoration: none;
-
-// Hovered tab
-@tab-control-bg-hover: lighten(@tab-control-bg, 5%);
-@tab-control-color-hover: @tab-control-color;
-@tab-control-text-decoration-hover: @tab-control-text-decoration;
-
-// Active tab
-@tab-control-bg-active: lighten(@tab-control-bg, 15%); // Also used in: @tab-content-bg
-@tab-control-color-active: @text-color;
-@tab-control-text-decoration-active: @tab-control-text-decoration;
-
-@tab-control-height-base: @line-height-computed;
-@tab-control-height: @indent-base*2;
-@tab-control-margin-right: -1px;
-@tab-control-padding: @indent-xs-base @indent-xl-base;
-
-@tab-control-padding-top: 1px;
-@tab-control-padding-right: 35px;
-@tab-control-padding-bottom: @tab-control-padding-top;
-@tab-control-padding-left: @tab-control-padding-right;
-
-// Tabs content
-@tab-content-bg: @tab-control-bg-active;
-@tab-content-border-top-status: false;
-@tab-control-border-color: @border-color-base;
-@tab-control-border-width: @border-width-base;
-@tab-content-border: @tab-control-border-width solid @tab-control-border-color;
-
-@tab-content-padding: @indent-base;
-
-@tab-content-margin-top: @tab-control-height + @tab-control-border-width + @tab-control-padding-top + @tab-control-padding-bottom;
-
-@tab-content-padding-top: 35px;
-@tab-content-padding-right: @tab-control-padding-right;
-@tab-content-padding-bottom: @tab-content-padding-top;
-@tab-content-padding-left: @tab-content-padding-right;
-
-// Accordions  variables
-@accordion-control-font-family: false;
-@accordion-control-font-size: @font-size-base;
-@accordion-control-font-style: false;
-@accordion-control-font-weight: @font-weight-semibold;
-@accordion-control-line-height: @accordion-control-height;
-
-@accordion-control-border-top: @tab-control-border-width solid @tab-control-border-color;
-@accordion-control-border-right: false;
-@accordion-control-border-bottom: false;
-@accordion-control-border-left: false;
-
-@accordion-control-bg: false;
-@accordion-control-color: @color-primary;
-@accordion-control-text-decoration: @tab-control-text-decoration;
-
-@accordion-control-color-visited: @accordion-control-color;
-@accordion-control-text-decoration-visited: @accordion-control-text-decoration;
-
-@accordion-control-bg-hover: false;
-@accordion-control-color-hover: @accordion-control-color;
-@accordion-control-text-decoration-hover: @tab-control-text-decoration-hover;
-
-@accordion-control-bg-active: false;
-@accordion-control-color-active: @accordion-control-color;
-@accordion-control-text-decoration-active: @tab-control-text-decoration-active;
-
-@accordion-control-height: @indent-xl-base;
-@accordion-control-margin-bottom: 0;
-
-@accordion-control-padding-top: @tab-control-padding-top;
-@accordion-control-padding-right: 10px;
-@accordion-control-padding-bottom: @tab-control-padding-bottom;
-@accordion-control-padding-left: 10px;
-
-@accordion-content-bg: @tab-control-bg-active;
-@accordion-content-border: false;
-
-@accordion-content-margin: 0;
-@accordion-content-padding: @indent-s-base @indent-s-base @indent-l-base;
-
-//
-//    Buttons variables
-//--------------------------------------
-
-// Button font style
-@button-font-family: @font-family-base;
-@button-font-size: @font-size-base;
-@button-font-weight: @font-weight-semibold;
-@button-line-height: @font-size-base + 2;
-@button-margin: 0;
-@button-padding: 7px 15px; // is set up to false when buttons don't depend of side paddings or have fixed width, Also used in @button-primary-padding
-@button-width: false; // is set up to false when buttons depend of side paddings or to fixed value when needed
-
-// Buttons display settings
-@button-display: inline-block;
-@button-default-border: @button-border;
-@button-cursor: pointer;
-@button-disabled-opacity: .5;
-
-// Default = secondary button
-@button-color: @color-primary;
-@button-background: #eee;
-@button-border: 1px solid @border-color-base;
-@button-gradient-start-color: false;
-@button-gradient-end-color: false;
-
-@button-color-hover: @button-color;
-@button-background-hover: darken(@button-background, 5%);
-@button-border-hover: @button-border;
-@button-gradient-start-color-hover: false;
-@button-gradient-end-color-hover: false;
-
-@button-color-active: @button-color;
-@button-background-active: #e2e2e2;
-@button-border-active: @button-border;
-@button-gradient-start-color-active: false;
-@button-gradient-end-color-active: false;
-
-// Primary button
-@button-primary-line-height: false;
-@button-primary-width: false;
-@button-primary-margin: false;
-@button-primary-padding: @button-padding;
-@button-primary-gradient: false;
-@button-primary-gradient-direction: false;
-
-@button-primary-background: #1979c3;
-@button-primary-border: 1px solid #1979c3;
-@button-primary-color: @color-white;
-@button-primary-gradient-start-color: false;
-@button-primary-gradient-end-color: false;
-
-@button-primary-background-hover: #006bb4;
-@button-primary-border-hover: 1px solid #006bb4;
-@button-primary-color-hover: @color-white;
-@button-primary-gradient-start-color-hover: false;
-@button-primary-gradient-end-color-hover: false;
-
-@button-primary-background-active: #006bb4;
-@button-primary-border-active: 1px solid #006bb4;
-@button-primary-color-active: @color-white;
-@button-primary-gradient-start-color-active: false;
-@button-primary-gradient-end-color-active: false;
-
-// Gradient button
-// Does button have gradient background:
-@button-gradient: false;
-@button-gradient-direction: false;
-
-// Button with icon
-@button-icon-use: false;
-@button-font-content: @icon-settings;
-@button-icon-font: @icon-font; // Also used in: @popup-icon-font
-@button-icon-font-size: 22px; // Also used in: @popup-icon-font-size
-@button-icon-font-line-height: @icon-font-line-height; // Also used in: @popup-icon-font-line-height
-@button-icon-font-color: inherit; // Also used in: @popup-icon-font-color
-@button-icon-font-color-hover: inherit; // Also used in: @popup-icon-font-color-hover
-@button-icon-font-color-active: inherit; // Also used in: @popup-icon-font-color-active
-@button-icon-font-margin: 0; // Also used in: @popup-icon-font-margin
-@button-icon-font-vertical-align: top; // Also used in: @popup-icon-font-vertical-align
-@button-icon-font-position: @icon-position; // Also used in: @popup-icon-font-position
-@button-icon-font-text-hide: false; // Also used in: @popup-icon-font-text-hide
-
-// Large button
-@button-l-font-size: @font-size-l;
-@button-l-line-height: @font-size-l + 4;
-@button-l-padding: 14px 17px;
-
-// Small button
-@button-s-font-size: 11px;
-@button-s-line-height: @button-s-font-size + 1;
-@button-s-padding: @indent-xs-base 8px;
-
-//
-//    Icons variables
-//--------------------------------------
-@icon-position: before;
-@icon-text-hide: false;
-@icon-height: 26px;
-@icon-width: 26px;
-@icon-margin: '';
-@icon-vertical-align: middle; // Also used in: @icon-font-vertical-align
-
-@icon-image-position-x: 0;
-@icon-image-position-y: 0;
-
-@icon-sprite-position-x: 0;
-@icon-sprite-position-y: 0;
-@icon-sprite-grid: 26px;
-
-@icon-font: @icon-font-name; // Also used in: @button-icon-font, @rating-icon-font, @pager-icon-font
-@icon-font-position: @icon-position;
-@icon-font-text-hide: @icon-text-hide;
-@icon-font-margin: @icon-margin;
-@icon-font-size: inherit; // Also used in: @icon-font-line-height
-@icon-font-line-height: @icon-font-size;
-@icon-font-color: inherit;
-@icon-font-color-hover: false;
-@icon-font-color-active: false;
-@icon-font-vertical-align: @icon-vertical-align;
-@icon-font-display: inline-block;
-
-// Variables for icons-blank-theme
-@icon-wishlist-full: '\e600';
-@icon-warning: '\e602';
-@icon-update: '\e603';
-@icon-trash: '\e604';
-@icon-star: '\e605';
-@icon-settings: '\e606';
-@icon-pointer-down: '\e607';
-@icon-next: '\e608';
-@icon-menu: '\e609';
-@icon-location: '\e60a';
-@icon-list: '\e60b';
-@icon-info: '\e60c';
-@icon-grid: '\e60d';
-@icon-collapse: '\e60f';
-@icon-checkmark: '\e610';
-@icon-cart: '\e611';
-@icon-calendar: '\e612';
-@icon-arrow-up: '\e613';
-@icon-arrow-down: '\e614';
-@icon-search: '\e615';
-@icon-remove: '\e616';
-@icon-prev: '\e617';
-@icon-pointer-up: '\e618';
-@icon-pointer-right: '\e619';
-@icon-pointer-left: '\e61a';
-@icon-flag: '\e61b';
-@icon-expand: '\e61c';
-@icon-envelope: '\e61d';
-@icon-compare-full: '\e61e';
-@icon-comment: '\e620';
-@icon-up: '\e621';
-@icon-down: '\e622';
-@icon-account: '\e627';
-@icon-success: '\e60e';
-@icon-error: '\e61f';
-@icon-edit: '\e601';
-@icon-help: '\e623';
-@icon-print: '\e624';
-@icon-star-empty: '\e625';
-@icon-download: '\e626';
-@icon-private: '\e629';
-
-//
-//    Messages variables
-//--------------------------------------
-@message-padding: 12px 20px 12px 25px;
-@message-margin: 0 0 @indent-s-base;
-
-@message-color: false; // Each message type has its own message color
-@message-font-size: false;
-@message-font-family: false;
-@message-font-style: false;
-@message-font-weight: false;
-@message-line-height: false;
-
-@message-icon-font-size: 24px;
-@message-icon-font-line-height: @message-icon-font-size;
-@message-icon-inner-padding-left: 45px;
-@message-icon-lateral-width: 30px;
-@message-icon-lateral-arrow-size: 5px;
-@message-icon-top: 22px;
-@message-icon-right: false;
-@message-icon-bottom: false;
-@message-icon-left: 0;
-
-@message-border-width: false;
-@message-border-color: false;
-@message-border-style: false;
-@message-border-radius: false;
-
-// Information message
-@message-info-color: #6f4400;
-@message-info-background: #fdf0d5;
-@message-info-link-color: @link-color;
-@message-info-link-color-hover: @link-color-hover;
-@message-info-link-color-active: @link-color-hover;
-@message-info-border-color: @message-border-color;
-@message-info-icon: @icon-warning;
-@message-info-icon-color-inner: #c07600;
-@message-info-icon-color-lateral: @color-white;
-@message-info-icon-background: #6f4400;
-@message-info-icon-top: @message-icon-top;
-@message-info-icon-right: @message-icon-right;
-@message-info-icon-bottom: @message-icon-bottom;
-@message-info-icon-left: @message-icon-left;
-
-// Warning message
-@message-warning-color: @message-info-color;
-@message-warning-background: @message-info-background;
-@message-warning-link-color: @message-info-link-color;
-@message-warning-link-color-hover: @message-info-link-color-hover;
-@message-warning-link-color-active: @message-info-link-color-active;
-@message-warning-border-color: @message-info-border-color;
-@message-warning-icon: @message-info-icon;
-@message-warning-icon-color-inner: @message-info-icon-color-inner;
-@message-warning-icon-color-lateral: @message-info-icon-color-lateral;
-@message-warning-icon-background: @message-info-icon-background;
-@message-warning-icon-top: @message-icon-top;
-@message-warning-icon-right: @message-icon-right;
-@message-warning-icon-bottom: @message-icon-bottom;
-@message-warning-icon-left: @message-icon-left;
-
-// Error message
-@message-error-color: @color-error;
-@message-error-background: #fae5e5;
-@message-error-link-color: @link-color;
-@message-error-link-color-hover: @link-color-hover;
-@message-error-link-color-active: @link-color-hover;
-@message-error-border-color: @message-border-color;
-@message-error-icon: @icon-error;
-@message-error-icon-color-inner: #b30000;
-@message-error-icon-color-lateral: @color-white;
-@message-error-icon-background: #b30000;
-@message-error-icon-top: @message-icon-top;
-@message-error-icon-right: @message-icon-right;
-@message-error-icon-bottom: @message-icon-bottom;
-@message-error-icon-left: @message-icon-left;
-
-// Success message
-@message-success-color: #006400;
-@message-success-background: #e5efe5;
-@message-success-link-color: @link-color;
-@message-success-link-color-hover: @link-color-hover;
-@message-success-link-color-active: @link-color-hover;
-@message-success-border-color: @message-border-color;
-@message-success-icon: @icon-success;
-@message-success-icon-color-inner: #006400;
-@message-success-icon-color-lateral: @color-white;
-@message-success-icon-background: #006400;
-@message-success-icon-top: @message-icon-top;
-@message-success-icon-right: @message-icon-right;
-@message-success-icon-bottom: @message-icon-bottom;
-@message-success-icon-left: @message-icon-left;
-
-// Notice message
-@message-notice-color: @message-info-color;
-@message-notice-background: @message-info-background;
-@message-notice-link-color: @message-info-link-color;
-@message-notice-link-color-hover: @message-info-link-color-hover;
-@message-notice-link-color-active: @message-info-link-color-active;
-@message-notice-border-color: @message-info-border-color;
-@message-notice-icon: @message-info-icon;
-@message-notice-icon-color-inner: @message-info-icon-color-inner;
-@message-notice-icon-color-lateral: @message-info-icon-color-lateral;
-@message-notice-icon-background: @message-info-icon-background;
-@message-notice-icon-top: @message-icon-top;
-@message-notice-icon-right: @message-icon-right;
-@message-notice-icon-bottom: @message-icon-bottom;
-@message-notice-icon-left: @message-icon-left;
-
-//
-//    Tooltips variables
-//--------------------------------------
-@tooltip-background: @color-white;
-@tooltip-border-color: #bbb;
-@tooltip-border-width: 1px;
-@tooltip-border-radius: false;
-@tooltip-color: @color-primary;
-@tooltip-cursor: help;
-@tooltip-font-size: false;
-@tooltip-font-family: false;
-@tooltip-font-weight: false;
-@tooltip-line-height: 1.4;
-@tooltip-font-style: false;
-@tooltip-margin: false;
-@tooltip-padding: 12px 16px;
-@tooltip-min-width: 210px;
-@tooltip-max-width: 360px;
-@tooltip-arrow-size: 5px;
-@tooltip-arrow-offset: 10px;
-@tooltip-z-index: 100;
-
-//
-//    Loaders variables
-//--------------------------------------
-@loader-overlay-background-color: rgba(255, 255, 255, .7); // also used in: @loading-background-color
-@loader-overlay-z-index: 9999;
-@loader-icon-width: 160px;
-@loader-icon-height: 160px;
-@loader-icon-background-color: transparent;
-@loader-icon-background-image: url('@{baseDir}images/loader-2.gif'); // also used in: @loading-background-image
-@loader-icon-background-position: 50% 50%;
-@loader-icon-border-radius: 5px;
-@loader-icon-padding: '';
-@loader-text: false;
-@loader-text-color: @color-primary;
-@loader-text-font-size: @font-size-base;
-@loader-text-font-family: @font-family-base;
-@loader-text-font-weight: @font-weight-base;
-@loader-text-font-style: @font-style-base;
-@loader-text-padding: 130px 0 0;
-@loading-background-color: @loader-overlay-background-color;
-@loading-background-image: @loader-icon-background-image;
-
-//
-//    Forms variables
-//--------------------------------------
-
-// Form elements inputs default variables
-@form-element-input-type: ''; // input-text, select, textarea, input-radio, input-checkbox
-@form-element-input-background: @color-white;
-@form-element-input-border-color: #c2c2c2;
-@form-element-input-border: 1px solid @form-element-input-border-color;
-@form-element-input-border-radius: 1px;
-@form-element-input-height: 32px;
-@form-element-input-width: 100%;
-@form-element-input-margin: false;
-@form-element-input-padding: 0 9px;
-@form-element-input-vertical-align: baseline;
-@form-element-input-background-clip: padding-box; // border-box, content-box
-@form-element-input-font-size: @font-size-base;
-@form-element-input-color: false;
-@form-element-input-font-family: @font-family-base;
-@form-element-input-font-weight: false;
-@form-element-input-font-style: false;
-@form-element-input-line-height: @line-height-base;
-
-// Placeholder
-@form-element-input-placeholder-color: #c2c2c2;
-@form-element-input-placeholder-font-style: @form-element-input-font-style;
-
-// Disabled state
-@form-element-input-disabled-background: @form-element-input-background;
-@form-element-input-disabled-border: @form-element-input-border;
-@form-element-input-disabled-opacity: .5;
-@form-element-input-disabled-color: @form-element-input-color;
-@form-element-input-disabled-font-style: @form-element-input-font-style;
-
-// Focus state
-@form-element-input-focus-background: @form-element-input-background;
-@form-element-input-focus-border: @form-element-input-border;
-@form-element-input-focus-color: @form-element-input-color;
-@form-element-input-focus-font-style: @form-element-input-font-style;
-
-// Form elements choice default variables
-@form-element-choice-type: ''; //radio, checkbox
-@form-element-choice-vertical-align: false;
-@form-element-choice-margin: 2px @indent-xs-base 0 0;
-@form-element-choice-disabled-opacity: @form-element-input-disabled-opacity;
-
-// Input-text
-@input-text-background: @form-element-input-background;
-@input-text-border: @form-element-input-border;
-@input-text-border-radius: @form-element-input-border-radius;
-@input-text-height: @form-element-input-height;
-@input-text-width: @form-element-input-width;
-@input-text-margin: @form-element-input-margin;
-@input-text-padding: @form-element-input-padding;
-@input-text-vertical-align: @form-element-input-vertical-align;
-@input-text-background-clip: @form-element-input-background-clip; // border-box, content-box
-@input-text-font-size: @form-element-input-font-size;
-@input-text-color: @form-element-input-color;
-@input-text-font-family: @form-element-input-font-family;
-@input-text-font-weight: @form-element-input-font-weight;
-@input-text-font-style: @form-element-input-font-style;
-@input-text-line-height: @form-element-input-line-height;
-
-// Placeholder
-@input-text-placeholder-color: @form-element-input-placeholder-color;
-@input-text-placeholder-font-style: @form-element-input-placeholder-font-style;
-
-// Disabled state
-@input-text-disabled-background: @form-element-input-disabled-background;
-@input-text-disabled-border: @form-element-input-disabled-border;
-@input-text-disabled-opacity: @form-element-input-disabled-opacity;
-@input-text-disabled-color: @form-element-input-disabled-color;
-@input-text-disabled-font-style: @form-element-input-disabled-font-style;
-
-// Focus state
-@input-text-focus-background: @form-element-input-focus-background;
-@input-text-focus-border: @form-element-input-focus-border;
-@input-text-focus-color: @form-element-input-focus-color;
-@input-text-focus-font-style: @form-element-input-focus-font-style;
-
-// Select
-@select-background: @form-element-input-background;
-@select-border: @form-element-input-border;
-@select-border-radius: @form-element-input-border-radius;
-@select-height: @form-element-input-height;
-@select-width: @form-element-input-width;
-@select-margin: @form-element-input-margin;
-@select-padding: 5px 10px 4px;
-@select-vertical-align: @form-element-input-vertical-align;
-@select-background-clip: @form-element-input-background-clip; // border-box, content-box
-@select-font-size: @form-element-input-font-size;
-@select-color: @form-element-input-color;
-@select-font-family: @form-element-input-font-family;
-@select-font-weight: @form-element-input-font-weight;
-@select-font-style: @form-element-input-font-style;
-@select-line-height: @form-element-input-line-height;
-
-// Placeholder
-@select-placeholder-color: false;
-@select-placeholder-font-style: false;
-
-// Disabled state
-@select-disabled-background: @form-element-input-disabled-background;
-@select-disabled-border: @form-element-input-disabled-border;
-@select-disabled-opacity: @form-element-input-disabled-opacity;
-@select-disabled-color: @form-element-input-disabled-color;
-@select-disabled-font-style: @form-element-input-disabled-font-style;
-
-// Focus state
-@select-focus-background: @form-element-input-focus-background;
-@select-focus-border: @form-element-input-focus-border;
-@select-focus-color: @form-element-input-focus-color;
-@select-focus-font-style: @form-element-input-focus-font-style;
-
-// Textarea
-@textarea-background: @form-element-input-background;
-@textarea-border: @form-element-input-border;
-@textarea-border-radius: @form-element-input-border-radius;
-@textarea-height: auto;
-@textarea-width: @form-element-input-width;
-@textarea-padding: @indent-s-base;
-@textarea-margin: 0;
-@textarea-vertical-align: @form-element-input-vertical-align;
-@textarea-background-clip: @form-element-input-background-clip; // border-box, content-box
-@textarea-font-size: @form-element-input-font-size;
-@textarea-color: @form-element-input-color;
-@textarea-font-family: @form-element-input-font-family;
-@textarea-font-weight: @form-element-input-font-weight;
-@textarea-font-style: @form-element-input-font-style;
-@textarea-line-height: @form-element-input-line-height;
-@textarea-resize: vertical; // none | both | horizontal | vertical | inherit
-
-// Placeholder
-@textarea-placeholder-color: @form-element-input-placeholder-color;
-@textarea-placeholder-font-style: @form-element-input-placeholder-font-style;
-
-// Disabled state
-@textarea-disabled-background: @form-element-input-disabled-background;
-@textarea-disabled-border: @form-element-input-disabled-border;
-@textarea-disabled-opacity: @form-element-input-disabled-opacity;
-@textarea-disabled-color: @form-element-input-disabled-color;
-@textarea-disabled-font-style: @form-element-input-disabled-font-style;
-
-// Focus state
-@textarea-focus-background: @form-element-input-focus-background;
-@textarea-focus-border: @form-element-input-focus-border;
-@textarea-focus-color: @form-element-input-focus-color;
-@textarea-focus-font-style: @form-element-input-focus-font-style;
-
-// Radio
-@input-radio-vertical-align: @form-element-choice-vertical-align;
-@input-radio-margin: @form-element-choice-margin;
-@input-radio-disabled-opacity: @form-element-choice-disabled-opacity;
-
-// Checkbox
-@input-checkbox-vertical-align: @form-element-choice-vertical-align;
-@input-checkbox-margin: @form-element-choice-margin;
-@input-checkbox-disabled-opacity: @form-element-choice-disabled-opacity;
-
-// Validation variables
-@form-validation-note-color-error: @color-error;
-@form-validation-note-font-size: @font-size-s;
-@form-validation-note-font-family: false;
-@form-validation-note-font-style: false;
-@form-validation-note-font-weight: false;
-@form-validation-note-line-height: false;
-@form-validation-note-margin: 3px 0 0;
-@form-validation-note-padding: false;
-
-@form-validation-note-icon-use: false;
-@form-validation-note-icon-font-content: @icon-pointer-up;
-@form-validation-note-icon-font: @icon-font;
-@form-validation-note-icon-font-size: @form-validation-note-font-size * 2;
-@form-validation-note-icon-font-line-height: @form-validation-note-font-size;
-@form-validation-note-icon-font-color: @form-validation-note-color-error;
-@form-validation-note-icon-font-color-hover: false;
-@form-validation-note-icon-font-color-active: false;
-@form-validation-note-icon-font-margin: false;
-@form-validation-note-icon-font-vertical-align: @icon-font-vertical-align;
-@form-validation-note-icon-font-position: @icon-font-position;
-@form-validation-note-icon-font-text-hide: @icon-font-text-hide;
-
-@form-element-validation-color-error: false;
-@form-element-validation-color-valid: false;
-@form-element-validation-border-error: lighten(@form-validation-note-color-error, 20%); //darken(@form-element-validation-color-error, 5%)
-@form-element-validation-border-valid: false; //darken(@form-element-validation-color-valid, 5%)
-@form-element-validation-background-error: false; //lighten(@form-element-validation-color-error, 50%)
-@form-element-validation-background-valid: false; //lighten(@form-element-validation-color-valid, 50%)
-
-// Fieldset
-@form-fieldset-border: 0;
-@form-fieldset-margin: 0 0 @indent-xl-base;
-@form-fieldset-padding: 0;
-@form-fieldset-legend-color: false;
-@form-fieldset-legend-font-size: 18px;
-@form-fieldset-legend-font-family: false;
-@form-fieldset-legend-font-weight: @font-weight-light;
-@form-fieldset-legend-font-style: false;
-@form-fieldset-legend-line-height: 1.2;
-@form-fieldset-legend-margin: 0 0 @indent-base;
-@form-fieldset-legend-padding: 0 0 @indent-s-base;
-@form-fieldset-legend-width: 100%;
-
-// Field
-@form-field-type: block; //inline
-@form-field-type-revert: false; // inline, block, false
-@form-field-border: false;
-@form-field-column: false;
-@form-field-column-padding: 0 12px 0 0;
-@form-field-column-number: 2;
-@form-field-vertical-indent: @indent-base;
-@form-field-additional-vertical-indent: @indent-s-base;
-@form-field-type-block-margin: 0 0 @form-field-vertical-indent;
-@form-field-type-inline-margin: 0 0 @form-field-vertical-indent;
-
-// Form field label
-@form-field-label-align: false;
-@form-field-label-color: false;
-@form-field-label-font-size: false;
-@form-field-label-font-family: false;
-@form-field-label-font-weight: @font-weight-semibold;
-@form-field-label-font-style: false;
-@form-field-label-line-height: false;
-@form-field-type-inline-label-margin: false;
-@form-field-type-inline-label-padding-top: 6px;
-@form-field-type-inline-label-padding: @form-field-type-inline-label-padding-top 15px 0 0;
-@form-field-type-inline-label-width: 25.8%;
-@form-field-type-inline-label-align: right;
-@form-field-type-block-label-margin: 0 0 8px;
-@form-field-type-block-label-padding: false;
-@form-field-type-block-label-align: @form-field-label-align;
-
-// Form field control
-@form-field-type-inline-control-width: 74.2%;
-
-// Form field label asterisk
-@form-field-label-asterisk-color: #e02b27; // also used in: @form-hasrequired-color
-@form-field-label-asterisk-font-size: @font-size-s;
-@form-field-label-asterisk-font-family: false;
-@form-field-label-asterisk-font-weight: false;
-@form-field-label-asterisk-font-style: false;
-@form-field-label-asterisk-line-height: false;
-@form-field-label-asterisk-margin: 0 0 0 @indent-xs-base;
-
-// Form field note
-@form-field-note-color: false;
-@form-field-note-font-size: @font-size-s;
-@form-field-note-font-family: false;
-@form-field-note-font-weight: false;
-@form-field-note-font-style: false;
-@form-field-note-line-height: false;
-@form-field-note-margin: 3px 0 0;
-@form-field-note-padding: 0;
-
-// Form field note icon
-@form-field-note-icon-font-content: false;
-@form-field-note-icon-font: @icon-font;
-@form-field-note-icon-font-size: @form-field-note-font-size * 2;
-@form-field-note-icon-font-line-height: @form-field-note-font-size;
-@form-field-note-icon-font-color: @form-field-note-color;
-@form-field-note-icon-font-color-hover: false;
-@form-field-note-icon-font-color-active: false;
-@form-field-note-icon-font-margin: false;
-@form-field-note-icon-font-vertical-align: @icon-font-vertical-align;
-@form-field-note-icon-font-position: @icon-font-position;
-@form-field-note-icon-font-text-hide: @icon-font-text-hide;
-
-// Hasrequired
-@form-hasrequired-position: top; // top | bottom
-@form-hasrequired-color: @form-field-label-asterisk-color;
-@form-hasrequired-font-size: @font-size-s;
-@form-hasrequired-font-family: false;
-@form-hasrequired-font-weight: false;
-@form-hasrequired-font-style: false;
-@form-hasrequired-line-height: false;
-@form-hasrequired-border: false;
-@form-hasrequired-margin: @indent-s-base 0 0;
-@form-hasrequired-padding: false;
-
-//
-//    Pager variables
-//--------------------------------------
-@pager-label-display: none;
-@pager-item-display: inline-block;
-@pager-reset-spaces: true;  // reset spaces between inline-block elements
-
-@pager-font-size: @font-size-s;
-@pager-font-weight: @font-weight-base;
-@pager-line-height: @indent-l-base;
-@pager-item-margin: 0 8px 0 0;
-@pager-item-padding: 0 @indent-xs-base;
-@pager-actions-padding: 0;
-
-// Pager current page
-@pager-current-font-weight: @font-weight-bold;
-@pager-current-color: @color-primary;
-@pager-current-border: false;
-@pager-current-background: #e5e5e5;
-
-@pager-current-gradient: false;
-@pager-current-gradient-direction: false;
-
-@pager-current-gradient-start-color: false;
-@pager-current-gradient-end-color: false;
-
-// Pager link page
-@pager-gradient: false;
-@pager-gradient-direction: false;
-
-// Pager link default
-@pager-color: @link-color;
-@pager-border: false;
-@pager-text-decoration: none;
-@pager-background: false;
-@pager-gradient-start-color: false;
-@pager-gradient-end-color: false;
-
-// Pager link visited
-@pager-color-visited: @link-color-visited;
-@pager-border-visited: false;
-@pager-background-visited: false;
-@pager-gradient-start-color-visited: false;
-@pager-gradient-end-color-visited: false;
-
-// Pager link hover
-@pager-color-hover: @link-color-hover;
-@pager-border-hover: false;
-@pager-text-decoration-hover: none;
-@pager-background-hover: false;
-@pager-gradient-start-color-hover: false;
-@pager-gradient-end-color-hover: false;
-
-// Pager link active
-@pager-color-active: @link-color-active;
-@pager-border-active: false;
-@pager-background-active: false;
-@pager-gradient-start-color-active: false;
-@pager-gradient-end-color-active: false;
-
-// Pager link.action
-@pager-icon-use: true;
-@pager-icon-previous-content: @icon-prev;
-@pager-icon-next-content: @icon-next;
-@pager-icon-text-hide: true;
-@pager-icon-position: before;
-@pager-icon-font: @icon-font;
-@pager-icon-font-margin: 0;
-@pager-icon-font-vertical-align: top;
-@pager-icon-font-size: 16px;
-@pager-icon-font-line-height: @icon-font-line-height;
-
-// Pager link.action gradient: does element have gradient background
-@pager-action-gradient: false;
-@pager-action-gradient-direction: false;
-
-// Pager link.action default
-@pager-action-color: @text-color-muted;
-@pager-action-border: @border-width-base solid @border-color-base;
-@pager-action-text-decoration: @pager-text-decoration;
-@pager-action-background: @pager-background;
-@pager-action-gradient-start-color: false;
-@pager-action-gradient-end-color: false;
-
-// Pager link.action visited
-@pager-action-color-visited: @text-color-muted;
-@pager-action-border-visited: false;
-@pager-action-background-visited: false;
-@pager-action-gradient-start-color-visited: false;
-@pager-action-gradient-end-color-visited: false;
-
-// Pager link.action hover
-@pager-action-color-hover: @text-color-muted;
-@pager-action-border-hover: false;
-@pager-action-background-hover: false;
-@pager-action-text-decoration-hover: @pager-text-decoration-hover;
-@pager-action-gradient-start-color-hover: false;
-@pager-action-gradient-end-color-hover: false;
-
-// Pager link.action active
-@pager-action-color-active: @text-color-muted;
-@pager-action-border-active: false;
-@pager-action-background-active: false;
-@pager-action-gradient-start-color-active: false;
-@pager-action-gradient-end-color-active: false;
-
-//
-//    Ratings variables
-//--------------------------------------
-@rating-icon-count: 5;
-@rating-icon-content: @icon-star;
-@rating-icon-font: @icon-font;
-@rating-icon-font-size: 16px;
-@rating-icon-letter-spacing: 2px;
-@rating-icon-color: #c7c7c7;
-@rating-icon-color-active: #ff5501;
-@rating-label-hide: false;
-
-//
-//    Dropdowns variables
-//--------------------------------------
-
-// Variables simple dropdown
-@dropdown-actions-padding: false;
-@dropdown-list-min-width: 100%; // Also used in: @dropdown-split-list-min-width
-@dropdown-list-width: false; // Also used in: @dropdown-split-list-width
-@dropdown-list-height: false; // Also used in: @dropdown-split-list-height
-@dropdown-list-position-top: 100%;
-@dropdown-list-position-right: false;
-@dropdown-list-position-bottom: false;
-@dropdown-list-position-left: false;
-@dropdown-list-pointer: true; // true | false
-@dropdown-list-background: @color-white;
-@dropdown-list-border: 1px solid #bbb;
-@dropdown-list-pointer-border: #bbb;
-@dropdown-list-pointer-position: left; // right
-@dropdown-list-pointer-position-top: -12px;
-@dropdown-list-pointer-position-left-right: 10px;
-@dropdown-list-item-border: 0;
-@dropdown-list-item-padding: 3px 5px;
-@dropdown-list-item-margin: 0;
-@dropdown-list-item-hover: #e8e8e8;
-@dropdown-list-shadow: 0 3px 3px rgba(0,0,0,.15); // '' | none
-@dropdown-list-z-index: 100;
-
-@dropdown-toggle-icon-content: @icon-down;
-@dropdown-toggle-active-icon-content: @icon-up;
-@dropdown-toggle-icon-font: @button-icon-font;
-@dropdown-toggle-icon-font-size: 12px;
-@dropdown-toggle-icon-font-line-height: @button-icon-font-line-height;
-@dropdown-toggle-icon-font-color: @button-icon-font-color;
-@dropdown-toggle-icon-font-color-hover: @button-icon-font-color-hover;
-@dropdown-toggle-icon-font-color-active: @button-icon-font-color-active;
-@dropdown-toggle-icon-font-margin: @button-icon-font-margin;
-@dropdown-toggle-icon-position: after;
-@dropdown-toggle-icon-font-vertical-align: @button-icon-font-vertical-align;
-@dropdown-toggle-icon-text-hide: @button-icon-font-text-hide;
-
-// Variables split dropdown
-@dropdown-split-actions-padding: 0 5px;
-@dropdown-split-toggle-actions-padding: false;
-@dropdown-split-button-actions-padding: false;
-@dropdown-split-toggle-position: right; // Also used in: @dropdown-split-list-pointer-position
-@dropdown-split-list-min-width: @dropdown-list-min-width;
-@dropdown-split-list-width: @dropdown-list-width;
-@dropdown-split-list-height: @dropdown-list-height;
-@dropdown-split-list-position-top: @dropdown-list-position-top;
-@dropdown-split-list-position-right: @dropdown-list-position-right;
-@dropdown-split-list-position-bottom: @dropdown-list-position-bottom;
-@dropdown-split-list-position-left: @dropdown-list-position-left;
-@dropdown-split-list-background: @dropdown-list-background;
-@dropdown-split-list-border: @dropdown-list-border;
-@dropdown-split-list-pointer: @dropdown-list-pointer;
-@dropdown-split-list-pointer-border: @dropdown-list-pointer-border;
-@dropdown-split-list-pointer-position: @dropdown-split-toggle-position;
-@dropdown-split-list-pointer-position-top: @dropdown-list-pointer-position-top;
-@dropdown-split-list-pointer-position-left-right: @dropdown-list-pointer-position-left-right;
-@dropdown-split-list-item-border: @dropdown-list-item-border;
-@dropdown-split-list-item-padding: @dropdown-list-item-padding;
-@dropdown-split-list-item-margin: @dropdown-list-item-margin;
-@dropdown-split-list-item-hover: @dropdown-list-item-hover;
-@dropdown-split-button-border-radius-fix: false;
-@dropdown-split-list-shadow: @dropdown-list-shadow; // '', none
-@dropdown-split-list-z-index: @dropdown-list-z-index;
-
-@dropdown-split-toggle-icon-content: @dropdown-toggle-icon-content;
-@dropdown-split-toggle-active-icon-content: @dropdown-toggle-active-icon-content;
-@dropdown-split-toggle-icon-font: @button-icon-font;
-@dropdown-split-toggle-icon-font-size: @button-icon-font-size;
-@dropdown-split-toggle-icon-font-line-height: @button-icon-font-line-height;
-@dropdown-split-toggle-icon-font-color: @button-icon-font-color;
-@dropdown-split-toggle-icon-font-color-hover: @button-icon-font-color-hover;
-@dropdown-split-toggle-icon-font-color-active: @button-icon-font-color-active;
-@dropdown-split-toggle-icon-font-margin: @button-icon-font-margin;
-@dropdown-split-toggle-icon-font-vertical-align: @button-icon-font-vertical-align;
-@dropdown-split-toggle-icon-position: @dropdown-toggle-icon-position;
-@dropdown-split-toggle-icon-text-hide: true; // false
-
-//
-//    Actions-toolbar variables
-//--------------------------------------
-@actions-toolbar-actions-position: left; // left, right, center, justify
-// Also used in: @popup-actions-toolbar-actions-position
-@actions-toolbar-actions-reverse: false; // true
-// Also used in: @popup-actions-toolbar-actions-position-reverse
-@actions-toolbar-margin: false; // Also used in: @popup-actions-toolbar-margins
-@actions-toolbar-padding: false; // Also used in: @popup-actions-toolbar-padding
-@actions-toolbar-actions-margin: false; // Also used in: @popup-actions-toolbar-actions-margin
-@actions-toolbar-primary-actions-margin: 0 15px 0 0; // Also used in: @popup-actions-toolbar-primary-actions-margin
-@actions-toolbar-secondary-actions-margin: false; // Also used in: @popup-actions-toolbar-secondary-actions-margin
-@actions-toolbar-actions-links-margin-top: false; // Also used in: @popup-actions-toolbar-actions-links-margin-top
-@actions-toolbar-primary-actions-links-margin-top: false; // Also used in: @popup-actions-primary-toolbar-actions-links-margin-top
-@actions-toolbar-secondary-actions-links-margin-top: 6px; // Also used in: @popup-actions-secondary-toolbar-actions-links-margin-top
-
-//
-//    Breadcrumbs variables
-//--------------------------------------
-@breadcrumbs-font-size: @font-size-s;
-@breadcrumbs-display: false;
-@breadcrumbs-container-margin: 0 0 15px;
-@breadcrumbs-padding: false;
-
-@breadcrumbs-separator-symbol: false;
-@breadcrumbs-separator-color: @breadcrumbs-current-color;
-
-@breadcrumbs-icon-use: true;
-@breadcrumbs-icon-font-content: @icon-next;
-@breadcrumbs-icon-font: @icon-font;
-@breadcrumbs-icon-font-size: 10px;
-@breadcrumbs-icon-font-line-height: 18px;
-@breadcrumbs-icon-font-color: false;
-@breadcrumbs-icon-font-margin: 0 @indent-s-base;
-@breadcrumbs-icon-font-vertical-align: top;
-
-// Breadcrumbs - current page
-@breadcrumbs-current-color: #a3a3a3;
-@breadcrumbs-current-font-weight: @font-weight-base;
-@breadcrumbs-current-background: false;
-@breadcrumbs-current-border: false;
-
-// Breadcrumbs - current page - gradient background
-@breadcrumbs-current-gradient: false;
-@breadcrumbs-current-gradient-direction: vertical;
-@breadcrumbs-current-gradient-start-color: false;
-@breadcrumbs-current-gradient-end-color: false;
-
-// Breadcrumbs - link
-// Breadcrumbs link - gradient
-@breadcrumbs-link-gradient: false;
-@breadcrumbs-link-gradient-direction: false;
-
-@breadcrumbs-link-color: @color-primary;
-@breadcrumbs-link-background: false;
-@breadcrumbs-link-border: false;
-@breadcrumbs-link-text-decoration: none;
-@breadcrumbs-link-gradient-start-color: false;
-@breadcrumbs-link-gradient-end-color: false;
-
-// Breadcrumbs link - visited
-@breadcrumbs-link-color-visited: @color-primary;
-@breadcrumbs-link-background-visited: @breadcrumbs-link-background;
-@breadcrumbs-link-border-visited: @breadcrumbs-link-border;
-@breadcrumbs-link-text-decoration-visited: none;
-@breadcrumbs-link-gradient-start-color-visited: false;
-@breadcrumbs-link-gradient-end-color-visited: false;
-
-// Breadcrumbs link - hover
-@breadcrumbs-link-color-hover: @color-primary;
-@breadcrumbs-link-background-hover: false;
-@breadcrumbs-link-border-hover: @breadcrumbs-link-border;
-@breadcrumbs-link-text-decoration-hover: underline;
-@breadcrumbs-link-gradient-start-color-hover: false;
-@breadcrumbs-link-gradient-end-color-hover: false;
-
-// Breadcrumbs link - active
-@breadcrumbs-link-color-active: @color-primary;
-@breadcrumbs-link-background-active: @breadcrumbs-link-background;
-@breadcrumbs-link-border-active: @breadcrumbs-link-border;
-@breadcrumbs-link-text-decoration-active: none;
-@breadcrumbs-link-gradient-start-color-active: false;
-@breadcrumbs-link-gradient-end-color-active: false;
-
-//
-//    Popups variables
-//--------------------------------------
-@popup-width: auto;
-@popup-height: auto;
-@popup-padding: 22px;
-@popup-background: @color-white;
-@popup-border-color: #adadad;
-@popup-border: 1px solid @popup-border-color;
-@popup-shadow: 0 3px 3px rgba(0,0,0,.15);
-@popup-fade: opacity .3s linear;
-@popup-z-index: 1001;
-
-@popup-position: fixed;
-@popup-position-top: 0;
-@popup-position-right: 0;
-@popup-position-bottom: 0;
-@popup-position-left: 0;
-
-@popup-margin-top: false;
-@popup-margin-right: false;
-@popup-margin-bottom: false;
-@popup-margin-left: false;
-
-@popup-content-height: auto;
-@popup-header-margin: 0 0 25px;
-@popup-content-margin: false;
-@popup-footer-margin: false;
-
-@popup-title-headings: true; // false
-@popup-title-headings-level: h2; // h1, h2, h3, h4, h5, h6
-
-@popup-button-close-icon: true; // false
-@popup-button-close-reset: true; // false
-@popup-button-close-position: absolute;
-@popup-button-close-position-top: 10px;
-@popup-button-close-position-right: 10px;
-@popup-button-close-position-bottom: false;
-@popup-button-close-position-left: false;
-
-// Actions toolbar variables
-@popup-action-toolbar: false; // true
-@popup-actions-toolbar-actions-position: @actions-toolbar-actions-position;
-@popup-actions-toolbar-actions-reverse: @actions-toolbar-actions-reverse;
-@popup-actions-toolbar-margin: @actions-toolbar-margin;
-@popup-actions-toolbar-padding: @actions-toolbar-padding;
-@popup-actions-toolbar-actions-margin: @actions-toolbar-actions-margin;
-@popup-actions-toolbar-primary-actions-margin: @actions-toolbar-primary-actions-margin;
-@popup-actions-toolbar-secondary-actions-margin: @actions-toolbar-secondary-actions-margin;
-@popup-actions-toolbar-actions-links-margin-top: @actions-toolbar-actions-links-margin-top;
-@popup-actions-toolbar-primary-actions-links-margin-top: @actions-toolbar-primary-actions-links-margin-top;
-@popup-actions-toolbar-secondary-actions-links-margin-top: @actions-toolbar-secondary-actions-links-margin-top;
-
-// Popup Icons variables
-@popup-icon-font-content: @icon-remove;
-@popup-icon-font: @button-icon-font;
-@popup-icon-font-size: 16px;
-@popup-icon-font-line-height: 16px;
-@popup-icon-font-color: #8c8c8c;
-@popup-icon-font-color-hover: darken(#8c8c8c, 10%);
-@popup-icon-font-color-active: @popup-icon-font-color-hover;
-@popup-icon-font-margin: @button-icon-font-margin;
-@popup-icon-font-vertical-align: @button-icon-font-vertical-align;
-@popup-icon-font-position: @button-icon-font-position;
-@popup-icon-font-text-hide: true;
-
-// Window overlay variables
-@overlay-background: #8c8c8c;
-@overlay-opacity: .7;
-@overlay-opacity-old: 70;
-@overlay-fade: opacity .15s linear;
-@overlay-z-index: 1000;
-
-@gallery-thumb-border-color-active: #ff5700;
diff --git a/app/design/frontend/Magento/luma/web/css/source/pages.less b/app/design/frontend/Magento/luma/web/css/source/pages.less
index 215b34ebeb48fd676ce56f4c675926c296ba0a21..92a5621a59a6c9f95b8c42effd8c34487a2496ae 100644
--- a/app/design/frontend/Magento/luma/web/css/source/pages.less
+++ b/app/design/frontend/Magento/luma/web/css/source/pages.less
@@ -7,7 +7,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 .pages {
     .pager();
@@ -30,7 +30,7 @@
 //
 //    Small Screen
 //--------------------------------------
-.responsive-max-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-s) {
     .pages {
         & &-items {
             display: block;
diff --git a/app/design/frontend/Magento/luma/web/css/source/popups.less b/app/design/frontend/Magento/luma/web/css/source/popups.less
index 0832f85f3b33743741089d923b5210201ab7d671..8368a994c470b63d257db744d1b24ac165dba142 100644
--- a/app/design/frontend/Magento/luma/web/css/source/popups.less
+++ b/app/design/frontend/Magento/luma/web/css/source/popups.less
@@ -7,7 +7,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 // Popup working with dropdown dialog
 .ui-dialog.popup {
@@ -54,7 +54,7 @@
 //    Mobile
 //--------------------------------------
 
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .popup .popup-content {
         .fieldset .actions-toolbar {
             .secondary {
diff --git a/app/design/frontend/Magento/luma/web/css/source/sections.less b/app/design/frontend/Magento/luma/web/css/source/sections.less
index 7c070d91991dfbd9a02f51f1ef1bf7f7a2e26374..fc91573df370763d97fd5714ce3e5cfb99f5d850 100644
--- a/app/design/frontend/Magento/luma/web/css/source/sections.less
+++ b/app/design/frontend/Magento/luma/web/css/source/sections.less
@@ -7,7 +7,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 .product.data.items {
     .data-accordion();
@@ -53,7 +53,7 @@
 //
 //    Desktop
 //--------------------------------------
-.responsive-min-l(@break) when (@break = @screen-m) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .product.data.items {
         .data-tabs();
         border-bottom: 0;
diff --git a/app/design/frontend/Magento/luma/web/css/source/tables.less b/app/design/frontend/Magento/luma/web/css/source/tables.less
index 35159ed761afc1c13481b77a2da5c2645c55bcc6..eb802aacd57c87f1bbf3d96b9a7d2ecbd0fda095 100644
--- a/app/design/frontend/Magento/luma/web/css/source/tables.less
+++ b/app/design/frontend/Magento/luma/web/css/source/tables.less
@@ -7,7 +7,7 @@
 //    Common
 //--------------------------------------
 
-.responsive-common() {
+& when (@media-common = true) {
 
 .table-wrapper {
     margin-bottom: @indent-base;
@@ -19,7 +19,7 @@ table {
 
 .table {
     tfoot {
-        background: @sidebar-background;
+        .css(background, @sidebar-background);
         > tr:first-child {
             th,
             td {
@@ -43,7 +43,7 @@ table {
 //
 //    Mobile
 //--------------------------------------
-.responsive-max-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-s) {
     .table-wrapper {
         border-top: @table-border-width @table-border-style @table-border-color;
         .table-overflow();
@@ -102,7 +102,7 @@ table {
 //
 //    Desktop
 //--------------------------------------
-.responsive-min-m(@break) when (@break = @screen-s) {
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-s) {
     .table {
         .table-bordered(
             @_table_type: horizontal_body
diff --git a/app/design/frontend/Magento/luma/web/css/source/theme.less b/app/design/frontend/Magento/luma/web/css/source/theme.less
new file mode 100644
index 0000000000000000000000000000000000000000..41cd6a2d8ac6bac2fcc319bee28b0b6c3943c8ce
--- /dev/null
+++ b/app/design/frontend/Magento/luma/web/css/source/theme.less
@@ -0,0 +1,222 @@
+// /**
+//  * Copyright © 2015 Magento. All rights reserved.
+//  * See COPYING.txt for license details.
+//  */
+
+//  Override default variables
+@font-family-base: 'Open Sans', @font-family-sans-serif;
+@button-border-radius: 3px;
+@link-color-visited: @link-color;
+
+//  Introduce new theme specific variables
+@sidebar-background:@color-white-smoke; //  Used in cart sidebar, Checkout sidebar, Tier Prices, My account navigation, Rating block background
+
+@h1-font-size: ceil((@font-size-base * 1.85)); //  26px
+@h1-font-size-desktop: ceil((@font-size-base * 2.85)); //  40px
+
+//
+//  Global variables override
+//  _____________________________________________
+
+//  Typography
+@font-family-base: 'Open Sans', @font-family-sans-serif;
+@icon-font-path: '@{baseDir}fonts/Luma-Icons';
+@icon-font-name: 'luma-icons';
+
+//  Color nesting
+@color-background-page: @color-white;
+@color-background-copyright: @color-gray56;
+@panel-bg: @color-gray-light0;
+@border-color-base: @color-gray80;
+
+//  Headings
+@h3-font-weight: @font-weight-semibold;
+@h3-margin-top: @indent-base;
+
+//  Tables
+@table-cell-padding-vertical: 11px;
+@table-cell-bg-stripped: @table-cell-bg-hover;
+@table-th-bg-responsive: @table-cell-bg-stripped;
+@table-responsive-cell-padding: @indent-xs-base @indent-s-base;
+
+//  Variables used for layout grid
+@total-columns: 24;
+
+//  Variables for layout columns
+@layout-column-sidebar-width: 5;
+
+//  Checkout columns width
+@layout-column-checkout-left-width: 6;
+
+//  Navigation
+@navigation-background: @color-gray94;
+@navigation-level0-item-color-active: @color-primary;
+@submenu-item-color-active: @navigation-level0-item-color-active;
+
+//  Desktop navigation
+@navigation-desktop-level0-item-line-height: 47px;
+@submenu-desktop-font-weight: @font-weight-base;
+@submenu-desktop-item-color-active: @navigation-level0-item-color-active;
+
+//  Tabs
+@tab-control-font-weight: @font-weight-base;
+@tab-control-height: @indent-base*2;
+@tab-control-margin-right: -1px;
+@tab-control-padding-top: 1px;
+@tab-control-padding-right: 35px;
+
+//  Tabs content
+@tab-content-padding-top: 35px;
+@tab-content-padding-right: @tab-control-padding-right;
+
+//  Accordion
+@accordion-control-font-family: false;
+@accordion-control-font-size: @font-size-base;
+@accordion-control-font-style: false;
+@accordion-control-font-weight: @font-weight-semibold;
+@accordion-control-border-right: false;
+@accordion-control-border-bottom: false;
+@accordion-control-border-left: false;
+@accordion-control-bg: false;
+@accordion-control-color: @color-primary;
+@accordion-control-bg-hover: false;
+@accordion-control-color-hover: @accordion-control-color;
+@accordion-control-bg-active: false;
+@accordion-control-color-active: @accordion-control-color;
+@accordion-control-margin-bottom: 0;
+@accordion-control-padding-right: @indent-s-base;
+@accordion-control-padding-left: @indent-s-base;
+@accordion-content-border: false;
+@accordion-content-margin: 0;
+@accordion-content-padding: @indent-s-base @indent-s-base @indent-l-base;
+
+//  Buttons
+@button-font-weight: @font-weight-semibold;
+
+//  Default = secondary button
+@button-background: @color-gray-darken0;
+@button-border: 1px solid @border-color-base;
+@button-color-hover: @button-color;
+@button-background-hover: darken(@button-background, 5%);
+@button-background-active: @color-gray-darken1;
+
+//  Primary button
+@button-primary-color-hover: @color-white;
+@button-primary-background-active: @link-color-hover;
+@button-primary-border-active: 1px solid @link-color-hover;
+@button-primary-color-active: @color-white;
+
+//  Button with icon
+@button-icon-font-line-height: @icon-font-line-height;
+
+//  Icons
+@icon-wishlist-empty: false;
+@icon-comment-reflected: false;
+@icon-compare-empty: false;
+@icon-arrow-up-thin: false;
+@icon-arrow-right-thin: false;
+@icon-arrow-left-thin: false;
+@icon-arrow-down-thin: false;
+@icon-wishlist-empty: '\e601';
+@icon-success: '\e60e';
+@icon-error: '\e61f';
+@icon-edit: '\e601';
+@icon-help: '\e623';
+@icon-print: '\e624';
+@icon-star-empty: '\e625';
+@icon-download: '\e626';
+@icon-private: '\e629';
+
+//  Messages
+@message-padding: 12px @indent-base 12px @indent-m-base;
+@message-line-height: false;
+@message-icon-font-size: 24px;
+@message-icon-inner-padding-left: 45px;
+@message-icon-top: 22px;
+@message-error-icon: @icon-error;
+@message-success-icon: @icon-success;
+
+//  Loaders variables
+@loader-overlay-background-color: rgba(255, 255, 255, .7);
+
+//  Form fieldset
+@form-fieldset-legend-font-size: 18px;
+@form-fieldset-legend-font-weight: @font-weight-light;
+@form-fieldset-legend-margin: 0 0 @indent-base;
+@form-fieldset-legend-padding: 0 0 @indent-s-base;
+@form-fieldset-legend-width: 100%;
+
+//  Form field
+@form-field-type-revert: false;
+@form-field-additional-vertical-indent: @indent-s-base;
+
+//  Form field label
+@form-field-label-font-weight: @font-weight-semibold;
+@form-field-type-block-label-margin: 0 0 8px;
+
+//  Form field note icon
+@form-field-note-icon-font-content: false;
+
+//  Pager
+@pager-font-weight: @font-weight-base;
+@pager-line-height: @indent-l-base;
+@pager-item-margin: 0 8px 0 0;
+@pager-item-padding: 0 @indent-xs-base;
+
+//  Pager current page
+@pager-current-background: @color-gray90;
+
+//  Pager link.action
+@pager-icon-font-margin: 0;
+@pager-icon-font-size: 16px;
+
+//  Pager link.action visited
+@pager-action-color-visited: @text-color-muted;
+
+//  Pager link.action hover
+@pager-action-color-hover: @text-color-muted;
+
+//  Pager link.action active
+@pager-action-color-active: @text-color-muted;
+
+//  Rating
+@rating-icon-font-size: 16px;
+@rating-icon-letter-spacing: 2px;
+@rating-icon-color-active: @color-active;
+
+//  Dropdowns
+@dropdown-toggle-icon-content: @icon-down;
+@dropdown-toggle-active-icon-content: @icon-up;
+@dropdown-toggle-icon-font-size: 12px;
+
+//  Split dropdown
+@dropdown-split-actions-padding: 0 @indent-xs-base;
+@dropdown-split-toggle-actions-padding: false;
+
+//  Actions-toolbar
+@actions-toolbar-actions-position: left;
+@actions-toolbar-primary-actions-margin: 0 15px 0 0;
+
+//  Breadcrumbs
+@breadcrumbs-container-margin: 0 0 15px;
+@breadcrumbs-icon-font-size: 10px;
+@breadcrumbs-icon-font-margin: 0 @indent-s-base;
+
+//  Popups
+@popup-border-color: @color-gray68;
+@popup-border: 1px solid @popup-border-color;
+@popup-title-headings-level: h2;
+
+//  Popup icons
+@popup-icon-font-size: 16px;
+@popup-icon-font-line-height: 16px;
+@popup-icon-font-color: @color-gray55;
+@popup-icon-font-color-hover: darken(@popup-icon-font-color, 10%);
+@popup-icon-font-color-active: @popup-icon-font-color-hover;
+
+//  Window overlay
+@overlay-background: @color-gray55;
+@overlay-opacity: .7;
+@overlay-opacity-old: 70;
+
+@gallery-thumb-border-color-active: @color-active;
diff --git a/app/design/frontend/Magento/luma/web/fonts/Luma-Icons.woff2 b/app/design/frontend/Magento/luma/web/fonts/Luma-Icons.woff2
new file mode 100644
index 0000000000000000000000000000000000000000..cc91480dac868dc0a36bc6ce3d95bc3bcbf8ed27
Binary files /dev/null and b/app/design/frontend/Magento/luma/web/fonts/Luma-Icons.woff2 differ
diff --git a/app/i18n/magento/de_de/composer.json b/app/i18n/magento/de_de/composer.json
index 5245e7280e836177eab5687ce1f663a48e893172..3e3ea88931ee72dfe6fc860e20bc920c57a6aedb 100644
--- a/app/i18n/magento/de_de/composer.json
+++ b/app/i18n/magento/de_de/composer.json
@@ -1,13 +1,13 @@
 {
     "name": "magento/language-de_de",
     "description": "German (Germany) language",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
     ],
     "require": {
-        "magento/framework": "0.42.0-beta3",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-language",
diff --git a/app/i18n/magento/en_us/composer.json b/app/i18n/magento/en_us/composer.json
index 1f4e07ce5a2919d7871182a124e726990e02228b..36452489550b9a0d21154eab938d30569f005d0d 100644
--- a/app/i18n/magento/en_us/composer.json
+++ b/app/i18n/magento/en_us/composer.json
@@ -1,13 +1,13 @@
 {
     "name": "magento/language-en_us",
     "description": "English (United States) language",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
     ],
     "require": {
-        "magento/framework": "0.42.0-beta3",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-language",
diff --git a/app/i18n/magento/es_es/composer.json b/app/i18n/magento/es_es/composer.json
index bdf4a5639c3ea73f539df5fd0cad373524afc534..c2129b9d9f67d45c53b4d9c939fe32b12d64a880 100644
--- a/app/i18n/magento/es_es/composer.json
+++ b/app/i18n/magento/es_es/composer.json
@@ -1,13 +1,13 @@
 {
     "name": "magento/language-es_es",
     "description": "Spanish (Spain) language",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
     ],
     "require": {
-        "magento/framework": "0.42.0-beta3",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-language",
diff --git a/app/i18n/magento/fr_fr/composer.json b/app/i18n/magento/fr_fr/composer.json
index b46de534ce0ec86267656ecee665138b40ec2255..1b5f86ba485f07009f136bf0de9c49df2d20863f 100644
--- a/app/i18n/magento/fr_fr/composer.json
+++ b/app/i18n/magento/fr_fr/composer.json
@@ -1,13 +1,13 @@
 {
     "name": "magento/language-fr_fr",
     "description": "French (France) language",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
     ],
     "require": {
-        "magento/framework": "0.42.0-beta3",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-language",
diff --git a/app/i18n/magento/nl_nl/composer.json b/app/i18n/magento/nl_nl/composer.json
index 851bfae841145c3eb69ff790a4b3cb232677551e..f1ea5b69ca99d248ef60621dfb618e7639a3bc8e 100644
--- a/app/i18n/magento/nl_nl/composer.json
+++ b/app/i18n/magento/nl_nl/composer.json
@@ -1,13 +1,13 @@
 {
     "name": "magento/language-nl_nl",
     "description": "Dutch (Netherlands) language",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
     ],
     "require": {
-        "magento/framework": "0.42.0-beta3",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-language",
diff --git a/app/i18n/magento/pt_br/composer.json b/app/i18n/magento/pt_br/composer.json
index a3e34f6402ca06d4203547ade0a55675f375965d..a2e727e6b9ee9605948d14dd3b65f91f300184d5 100644
--- a/app/i18n/magento/pt_br/composer.json
+++ b/app/i18n/magento/pt_br/composer.json
@@ -1,13 +1,13 @@
 {
     "name": "magento/language-pt_br",
     "description": "Portuguese (Brazil) language",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
     ],
     "require": {
-        "magento/framework": "0.42.0-beta3",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-language",
diff --git a/app/i18n/magento/zh_cn/composer.json b/app/i18n/magento/zh_cn/composer.json
index 7230f2551f0a314038b7a31796b02fc1f1f414cc..75e74d0940dd4bc7ec5979f76babf42b2027c9f4 100644
--- a/app/i18n/magento/zh_cn/composer.json
+++ b/app/i18n/magento/zh_cn/composer.json
@@ -1,13 +1,13 @@
 {
     "name": "magento/language-zh_cn",
     "description": "Chinese (China) language",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
     ],
     "require": {
-        "magento/framework": "0.42.0-beta3",
+        "magento/framework": "0.42.0-beta4",
         "magento/magento-composer-installer": "*"
     },
     "type": "magento2-language",
diff --git a/composer.json b/composer.json
index 0b627b47ac957f0e3e72e461927780e6325f62d7..64f4d82c9d865f6e72914ece47865acfa5d54131 100644
--- a/composer.json
+++ b/composer.json
@@ -2,7 +2,7 @@
     "name": "magento/project-community-edition",
     "description": "Magento project (Community Edition)",
     "type": "project",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
@@ -106,6 +106,7 @@
         "magento/module-payment": "self.version",
         "magento/module-persistent": "self.version",
         "magento/module-product-alert": "self.version",
+        "magento/module-quote": "self.version",
         "magento/module-reports": "self.version",
         "magento/module-require-js": "self.version",
         "magento/module-review": "self.version",
@@ -142,7 +143,6 @@
         "magento/language-pt_br": "self.version",
         "magento/language-zh_cn": "self.version",
         "magento/framework": "self.version",
-        "magento/project-setup": "0.1.0",
         "oyejorge/less.php": "1.7.0",
         "trentrichardson/jquery-timepicker-addon": "1.4.3",
         "components/handlebars.js": "1.3.0",
diff --git a/composer.lock b/composer.lock
index 92e802301136f3521623c37f09aea08e87b17ef5..7b97eaf296a318fe02d104c15f032bca9537ba42 100644
--- a/composer.lock
+++ b/composer.lock
@@ -4,7 +4,7 @@
         "Read more about it at http://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file",
         "This file is @generated automatically"
     ],
-    "hash": "5b6a910ddfa8d9e972d2f0d003f1fdf7",
+    "hash": "b2434120b753fdef32c2584eade97c9d",
     "packages": [
         {
             "name": "composer/composer",
@@ -1821,16 +1821,16 @@
         },
         {
             "name": "fabpot/php-cs-fixer",
-            "version": "v1.3",
+            "version": "v1.4",
             "source": {
                 "type": "git",
                 "url": "https://github.com/FriendsOfPHP/PHP-CS-Fixer.git",
-                "reference": "653cefbf33241185b58f7323157f1829552e370d"
+                "reference": "72a8c34210c0fbd8caa007fccea87a59f6f0a4d3"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/FriendsOfPHP/PHP-CS-Fixer/zipball/653cefbf33241185b58f7323157f1829552e370d",
-                "reference": "653cefbf33241185b58f7323157f1829552e370d",
+                "url": "https://api.github.com/repos/FriendsOfPHP/PHP-CS-Fixer/zipball/72a8c34210c0fbd8caa007fccea87a59f6f0a4d3",
+                "reference": "72a8c34210c0fbd8caa007fccea87a59f6f0a4d3",
                 "shasum": ""
             },
             "require": {
@@ -1843,15 +1843,13 @@
                 "symfony/process": "~2.3",
                 "symfony/stopwatch": "~2.5"
             },
+            "require-dev": {
+                "satooshi/php-coveralls": "0.7.*@dev"
+            },
             "bin": [
                 "php-cs-fixer"
             ],
             "type": "application",
-            "extra": {
-                "branch-alias": {
-                    "dev-master": "1.3-dev"
-                }
-            },
             "autoload": {
                 "psr-4": {
                     "Symfony\\CS\\": "Symfony/CS/"
@@ -1872,20 +1870,20 @@
                 }
             ],
             "description": "A script to automatically fix Symfony Coding Standard",
-            "time": "2014-12-12 06:09:01"
+            "time": "2015-01-12 21:28:53"
         },
         {
             "name": "league/climate",
-            "version": "2.6.0",
+            "version": "2.6.1",
             "source": {
                 "type": "git",
                 "url": "https://github.com/thephpleague/climate.git",
-                "reference": "776b6c3b32837832a9f6d94f134b55cb7910ece6"
+                "reference": "28851c909017424f61cc6a62089316313c645d1c"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/thephpleague/climate/zipball/776b6c3b32837832a9f6d94f134b55cb7910ece6",
-                "reference": "776b6c3b32837832a9f6d94f134b55cb7910ece6",
+                "url": "https://api.github.com/repos/thephpleague/climate/zipball/28851c909017424f61cc6a62089316313c645d1c",
+                "reference": "28851c909017424f61cc6a62089316313c645d1c",
                 "shasum": ""
             },
             "require": {
@@ -1921,7 +1919,7 @@
                 "php",
                 "terminal"
             ],
-            "time": "2015-01-08 02:28:23"
+            "time": "2015-01-18 14:31:58"
         },
         {
             "name": "lusitanian/oauth",
@@ -2261,16 +2259,16 @@
         },
         {
             "name": "phpunit/php-token-stream",
-            "version": "1.3.0",
+            "version": "1.4.0",
             "source": {
                 "type": "git",
                 "url": "https://github.com/sebastianbergmann/php-token-stream.git",
-                "reference": "f8d5d08c56de5cfd592b3340424a81733259a876"
+                "reference": "db32c18eba00b121c145575fcbcd4d4d24e6db74"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/f8d5d08c56de5cfd592b3340424a81733259a876",
-                "reference": "f8d5d08c56de5cfd592b3340424a81733259a876",
+                "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/db32c18eba00b121c145575fcbcd4d4d24e6db74",
+                "reference": "db32c18eba00b121c145575fcbcd4d4d24e6db74",
                 "shasum": ""
             },
             "require": {
@@ -2283,7 +2281,7 @@
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-master": "1.3-dev"
+                    "dev-master": "1.4-dev"
                 }
             },
             "autoload": {
@@ -2306,7 +2304,7 @@
             "keywords": [
                 "tokenizer"
             ],
-            "time": "2014-08-31 06:12:13"
+            "time": "2015-01-17 09:51:32"
         },
         {
             "name": "phpunit/phpunit",
diff --git a/dev/shell/cache.php b/dev/shell/cache.php
index 4aebbda7a1121cd5de99bd90898bb12f7d440842..9c44a5914daa6e255fe74d66ca587da01cd4ed35 100644
--- a/dev/shell/cache.php
+++ b/dev/shell/cache.php
@@ -15,17 +15,20 @@ require __DIR__ . '/../../app/bootstrap.php';
 
 $usage = 'Usage: php -f cache.php -- [--' . ManagerApp::KEY_SET . '=1|0]'
     . ' [--' . ManagerApp::KEY_CLEAN . ']'
+    . ' [--' . ManagerApp::KEY_STATUS . ']'
     . ' [--' . ManagerApp::KEY_FLUSH . ']'
     . ' [--' . ManagerApp::KEY_TYPES . '=<type1>,<type2>,...]'
     . ' [--bootstrap=' . escapeshellarg('INIT_PARAM=foo&ANOTHER_PARAM[key]=bar') . ']
     --' . ManagerApp::KEY_TYPES . ' - list of cache types, comma-separated. If omitted, all caches will be affected
     --' . ManagerApp::KEY_SET . ' - enable or disable the specified cache types
     --' . ManagerApp::KEY_CLEAN . ' - clean data of the specified cache types
+    --' . ManagerApp::KEY_STATUS . ' - display current status for each cache type
     --' . ManagerApp::KEY_FLUSH . ' - destroy all data in storage that the specified cache types reside on
     --bootstrap - add or override parameters of the bootstrap' . PHP_EOL;
 $longOpts = [
     ManagerApp::KEY_SET . '::',
     ManagerApp::KEY_CLEAN,
+    ManagerApp::KEY_STATUS,
     ManagerApp::KEY_FLUSH,
     ManagerApp::KEY_TYPES . '::',
     'bootstrap::',
diff --git a/dev/tests/api-functional/_files/Magento/TestModule4/Service/V1/DataObjectServiceInterface.php b/dev/tests/api-functional/_files/Magento/TestModule4/Service/V1/DataObjectServiceInterface.php
index b67c6545cb9f3ff9d58018268d77c9788ccc207e..f3b219f7e65a5b0fc61be6a73054ec6f9088c18f 100644
--- a/dev/tests/api-functional/_files/Magento/TestModule4/Service/V1/DataObjectServiceInterface.php
+++ b/dev/tests/api-functional/_files/Magento/TestModule4/Service/V1/DataObjectServiceInterface.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\TestModule4\Service\V1;
 
 use Magento\TestModule4\Service\V1\Entity\DataObjectRequest;
diff --git a/dev/tests/api-functional/_files/Magento/TestModule4/Service/V1/Entity/ExtensibleRequest.php b/dev/tests/api-functional/_files/Magento/TestModule4/Service/V1/Entity/ExtensibleRequest.php
index 806953fc16f8a1e2fef7ca6ccf0a020866f9ba6f..d96ca365fbd34fa3d1efa4fb02efa4267243ccfa 100644
--- a/dev/tests/api-functional/_files/Magento/TestModule4/Service/V1/Entity/ExtensibleRequest.php
+++ b/dev/tests/api-functional/_files/Magento/TestModule4/Service/V1/Entity/ExtensibleRequest.php
@@ -3,10 +3,12 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\TestModule4\Service\V1\Entity;
 
-class ExtensibleRequest extends \Magento\Framework\Model\AbstractExtensibleModel
-    implements ExtensibleRequestInterface
+class ExtensibleRequest extends \Magento\Framework\Model\AbstractExtensibleModel implements ExtensibleRequestInterface
 {
     public function getName()
     {
diff --git a/dev/tests/api-functional/_files/Magento/TestModuleMSC/Model/Data/CustomAttributeDataObject.php b/dev/tests/api-functional/_files/Magento/TestModuleMSC/Model/Data/CustomAttributeDataObject.php
index 0e1444899ec0e0e8208efcd1d936f043f21c1546..f6b61082458b361c76db197749a866d3cdc3d48e 100644
--- a/dev/tests/api-functional/_files/Magento/TestModuleMSC/Model/Data/CustomAttributeDataObject.php
+++ b/dev/tests/api-functional/_files/Magento/TestModuleMSC/Model/Data/CustomAttributeDataObject.php
@@ -3,12 +3,15 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\TestModuleMSC\Model\Data;
 
 use Magento\TestModuleMSC\Api\Data\CustomAttributeDataObjectInterface;
 
-class CustomAttributeDataObject extends \Magento\Framework\Api\AbstractExtensibleObject
-    implements CustomAttributeDataObjectInterface
+class CustomAttributeDataObject extends \Magento\Framework\Api\AbstractExtensibleObject implements
+    CustomAttributeDataObjectInterface
 {
     /**
      * @return string
diff --git a/dev/tests/api-functional/_files/Magento/TestModuleMSC/Model/Data/CustomAttributeNestedDataObject.php b/dev/tests/api-functional/_files/Magento/TestModuleMSC/Model/Data/CustomAttributeNestedDataObject.php
index a8b51c8c3c01e338adcf218742608dd6d3050749..24937c7ecae46870cb3af65c34e1cad80daf9310 100644
--- a/dev/tests/api-functional/_files/Magento/TestModuleMSC/Model/Data/CustomAttributeNestedDataObject.php
+++ b/dev/tests/api-functional/_files/Magento/TestModuleMSC/Model/Data/CustomAttributeNestedDataObject.php
@@ -3,12 +3,15 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\TestModuleMSC\Model\Data;
 
 use Magento\TestModuleMSC\Api\Data\CustomAttributeNestedDataObjectInterface;
 
-class CustomAttributeNestedDataObject extends \Magento\Framework\Model\AbstractExtensibleModel
-    implements CustomAttributeNestedDataObjectInterface
+class CustomAttributeNestedDataObject extends \Magento\Framework\Model\AbstractExtensibleModel implements
+    CustomAttributeNestedDataObjectInterface
 {
     /**
      * @return string
diff --git a/dev/tests/api-functional/_files/Magento/TestModuleMSC/Model/Data/Item.php b/dev/tests/api-functional/_files/Magento/TestModuleMSC/Model/Data/Item.php
index 8866c08cd20ae0e250539653af11191b3354bbdb..c35147c0e7745c3829215f1c93ba772894a9f0f5 100644
--- a/dev/tests/api-functional/_files/Magento/TestModuleMSC/Model/Data/Item.php
+++ b/dev/tests/api-functional/_files/Magento/TestModuleMSC/Model/Data/Item.php
@@ -3,12 +3,14 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\TestModuleMSC\Model\Data;
 
 use Magento\TestModuleMSC\Api\Data\ItemInterface;
 
-class Item extends \Magento\Framework\Model\AbstractExtensibleModel
-    implements ItemInterface
+class Item extends \Magento\Framework\Model\AbstractExtensibleModel implements ItemInterface
 {
     /**
      * @return int
diff --git a/dev/tests/api-functional/framework/Magento/TestFramework/Annotation/ApiDataFixture.php b/dev/tests/api-functional/framework/Magento/TestFramework/Annotation/ApiDataFixture.php
index 849f7838a3e0de87eed0edcdf5afc3e65c4b01f0..749c0de354ea2b9530f392c478be5eea5ccf5e61 100644
--- a/dev/tests/api-functional/framework/Magento/TestFramework/Annotation/ApiDataFixture.php
+++ b/dev/tests/api-functional/framework/Magento/TestFramework/Annotation/ApiDataFixture.php
@@ -9,6 +9,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\TestFramework\Annotation;
 
 class ApiDataFixture
diff --git a/dev/tests/api-functional/framework/Magento/TestFramework/Authentication/Rest/OauthClient.php b/dev/tests/api-functional/framework/Magento/TestFramework/Authentication/Rest/OauthClient.php
index 6a71b708ac95f5941def2e26e81ad96946476036..ae4604fd1c322d09f41da047fc23ae9fcff6934f 100644
--- a/dev/tests/api-functional/framework/Magento/TestFramework/Authentication/Rest/OauthClient.php
+++ b/dev/tests/api-functional/framework/Magento/TestFramework/Authentication/Rest/OauthClient.php
@@ -19,6 +19,9 @@ use OAuth\OAuth1\Signature\SignatureInterface;
 use OAuth\OAuth1\Token\StdOAuth1Token;
 use OAuth\OAuth1\Token\TokenInterface;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class OauthClient extends AbstractService
 {
     /** @var string|null */
diff --git a/dev/tests/api-functional/framework/Magento/TestFramework/TestCase/Webapi/Adapter/Rest.php b/dev/tests/api-functional/framework/Magento/TestFramework/TestCase/Webapi/Adapter/Rest.php
index 26ae75ed20431bd2bf9f4bf56c5a7192040bb058..7488f42ae06740f31bbb0723920220e1edd51239 100644
--- a/dev/tests/api-functional/framework/Magento/TestFramework/TestCase/Webapi/Adapter/Rest.php
+++ b/dev/tests/api-functional/framework/Magento/TestFramework/TestCase/Webapi/Adapter/Rest.php
@@ -62,6 +62,7 @@ class Rest implements \Magento\TestFramework\TestCase\Webapi\AdapterInterface
      * {@inheritdoc}
      * @throws \LogicException
      * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function call($serviceInfo, $arguments = [], $storeCode = null)
     {
diff --git a/dev/tests/api-functional/framework/Magento/TestFramework/TestCase/WebapiAbstract.php b/dev/tests/api-functional/framework/Magento/TestFramework/TestCase/WebapiAbstract.php
index e0f80d3ef43a7d8a4e6dd8958093340e67c89927..50cd00f7497f0d5a6bf4f801b01d00828f875772 100644
--- a/dev/tests/api-functional/framework/Magento/TestFramework/TestCase/WebapiAbstract.php
+++ b/dev/tests/api-functional/framework/Magento/TestFramework/TestCase/WebapiAbstract.php
@@ -11,6 +11,9 @@ use Magento\Framework\App\Filesystem\DirectoryList;
 use Magento\Framework\Filesystem;
 use Magento\Webapi\Model\Soap\Fault;
 
+/**
+ * @SuppressWarnings(PHPMD.NumberOfChildren)
+ */
 abstract class WebapiAbstract extends \PHPUnit_Framework_TestCase
 {
     /** TODO: Reconsider implementation of fixture-management methods after implementing several tests */
diff --git a/dev/tests/api-functional/testsuite/Magento/Catalog/Api/CategoryManagementTest.php b/dev/tests/api-functional/testsuite/Magento/Catalog/Api/CategoryManagementTest.php
index c4e818cee4ab2aa98003cc1d27587a97c8e65d35..9bcc44ac3a7b993869bb2e4627218f917e96c577 100644
--- a/dev/tests/api-functional/testsuite/Magento/Catalog/Api/CategoryManagementTest.php
+++ b/dev/tests/api-functional/testsuite/Magento/Catalog/Api/CategoryManagementTest.php
@@ -4,6 +4,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Api;
 
 use Magento\TestFramework\TestCase\WebapiAbstract;
@@ -37,7 +40,7 @@ class CategoryManagementTest extends WebapiAbstract
         ];
         $result = $this->_webApiCall($serviceInfo, $requestData);
 
-        for($i = 0; $i < $expectedLevel; $i++) {
+        for ($i = 0; $i < $expectedLevel; $i++) {
             $result = $result['children_data'][0];
         }
         $this->assertEquals($expectedId, $result['id']);
diff --git a/dev/tests/api-functional/testsuite/Magento/Catalog/Api/ProductAttributeManagementTest.php b/dev/tests/api-functional/testsuite/Magento/Catalog/Api/ProductAttributeManagementTest.php
index 2aa9ab3163d10e2d785f43dd02fb23a727c288be..b6838804873bff5d690822da4948741a229b540f 100644
--- a/dev/tests/api-functional/testsuite/Magento/Catalog/Api/ProductAttributeManagementTest.php
+++ b/dev/tests/api-functional/testsuite/Magento/Catalog/Api/ProductAttributeManagementTest.php
@@ -4,6 +4,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Api;
 
 use Magento\TestFramework\Helper\Bootstrap;
@@ -148,7 +151,8 @@ class ProductAttributeManagementTest extends \Magento\TestFramework\TestCase\Web
                 'operation' => self::SERVICE_NAME . 'Unassign',
             ],
         ];
-        $this->assertTrue($this->_webApiCall(
+        $this->assertTrue(
+            $this->_webApiCall(
                 $serviceInfo,
                 [
                     'attributeSetId' => $payload['attributeSetId'],
diff --git a/dev/tests/api-functional/testsuite/Magento/Catalog/Api/ProductCustomOptionRepositoryTest.php b/dev/tests/api-functional/testsuite/Magento/Catalog/Api/ProductCustomOptionRepositoryTest.php
index 02be2c00873139adfdc58d1e7be1eba1225f6e43..e6a159a4675067d0b7c3551eced9ce7e9c2a3673 100644
--- a/dev/tests/api-functional/testsuite/Magento/Catalog/Api/ProductCustomOptionRepositoryTest.php
+++ b/dev/tests/api-functional/testsuite/Magento/Catalog/Api/ProductCustomOptionRepositoryTest.php
@@ -5,6 +5,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Api;
 
 use Magento\TestFramework\Helper\Bootstrap;
@@ -95,6 +97,7 @@ class ProductCustomOptionRepositoryTest extends WebapiAbstract
     /**
      * @magentoApiDataFixture Magento/Catalog/_files/product_with_options.php
      * @magentoAppIsolation enabled
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function testGetList()
     {
@@ -136,6 +139,7 @@ class ProductCustomOptionRepositoryTest extends WebapiAbstract
      * @magentoApiDataFixture Magento/Catalog/_files/product_without_options.php
      * @magentoAppIsolation enabled
      * @dataProvider optionDataProvider
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function testSave($optionData)
     {
@@ -263,12 +267,11 @@ class ProductCustomOptionRepositoryTest extends WebapiAbstract
         if (TESTS_WEB_API_ADAPTER == self::ADAPTER_SOAP) {
             $optionDataPost['option_id'] = $optionId;
             $updatedOption = $this->_webApiCall(
-                $serviceInfo, [ 'id' => $optionId, 'option' => $optionDataPost]
+                $serviceInfo,
+                ['id' => $optionId, 'option' => $optionDataPost]
             );
         } else {
-            $updatedOption = $this->_webApiCall(
-                $serviceInfo, ['option' => $optionDataPost]
-            );
+            $updatedOption = $this->_webApiCall($serviceInfo, ['option' => $optionDataPost]);
         }
 
         unset($updatedOption['values']);
@@ -282,6 +285,7 @@ class ProductCustomOptionRepositoryTest extends WebapiAbstract
      * @magentoApiDataFixture Magento/Catalog/_files/product_with_options.php
      * @magentoAppIsolation enabled
      * @dataProvider validOptionDataProvider
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function testUpdateOptionAddingNewValue($optionType)
     {
@@ -308,13 +312,14 @@ class ProductCustomOptionRepositoryTest extends WebapiAbstract
 
         $values = [];
         foreach ($option->getValues() as $key => $value) {
-            $values[] = [
-                'price' => $value->getPrice(),
-                'price_type' => $value->getPriceType(),
-                'sku' => $value->getSku(),
-                'title' => $value->getTitle(),
-                'sort_order' => $value->getSortOrder(),
-        ];
+            $values[] =
+                [
+                    'price' => $value->getPrice(),
+                    'price_type' => $value->getPriceType(),
+                    'sku' => $value->getSku(),
+                    'title' => $value->getTitle(),
+                    'sort_order' => $value->getSortOrder(),
+                ];
         }
         $values[] = $valueData;
         $data = [
@@ -340,12 +345,11 @@ class ProductCustomOptionRepositoryTest extends WebapiAbstract
         if (TESTS_WEB_API_ADAPTER == self::ADAPTER_SOAP) {
             $data['option_id'] = $fixtureOption->getId();
             $valueObject = $this->_webApiCall(
-                $serviceInfo, [ 'option_id' => $fixtureOption->getId(), 'option' => $data]
+                $serviceInfo,
+                [ 'option_id' => $fixtureOption->getId(), 'option' => $data]
             );
         } else {
-            $valueObject = $this->_webApiCall(
-                $serviceInfo, ['option' => $data]
-            );
+            $valueObject = $this->_webApiCall($serviceInfo, ['option' => $data]);
         }
 
         $values = end($valueObject['values']);
diff --git a/dev/tests/api-functional/testsuite/Magento/Catalog/Api/ProductMediaAttributeManagementTest.php b/dev/tests/api-functional/testsuite/Magento/Catalog/Api/ProductMediaAttributeManagementTest.php
index 49c95c5cc1bd13207dedfd7a40f7d52664999bce..d8eca5a6c52809f194b67f08dbe28faf89b29fc7 100644
--- a/dev/tests/api-functional/testsuite/Magento/Catalog/Api/ProductMediaAttributeManagementTest.php
+++ b/dev/tests/api-functional/testsuite/Magento/Catalog/Api/ProductMediaAttributeManagementTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Api;
 
 use Magento\TestFramework\TestCase\WebapiAbstract;
@@ -35,7 +38,7 @@ class ProductMediaAttributeManagementTest extends WebapiAbstract
         $mediaAttributes = $this->_webApiCall($serviceInfo, $requestData);
 
         $this->assertNotEmpty($mediaAttributes);
-        $attribute = $this->getAttributeByCode($mediaAttributes,  'funny_image');
+        $attribute = $this->getAttributeByCode($mediaAttributes, 'funny_image');
         $this->assertNotNull($attribute);
         $this->assertEquals('Funny image', $attribute['default_frontend_label']);
         $this->assertEquals(1, $attribute['is_user_defined']);
diff --git a/dev/tests/api-functional/testsuite/Magento/Catalog/Api/ProductTierPriceManagementTest.php b/dev/tests/api-functional/testsuite/Magento/Catalog/Api/ProductTierPriceManagementTest.php
index 9ff940a3e619b38b5fd5b13c560dd3bd74e889e4..1dbc5e0d5218d56d2713ffa6a491539bb4065bbb 100644
--- a/dev/tests/api-functional/testsuite/Magento/Catalog/Api/ProductTierPriceManagementTest.php
+++ b/dev/tests/api-functional/testsuite/Magento/Catalog/Api/ProductTierPriceManagementTest.php
@@ -5,6 +5,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Api;
 
 use Magento\TestFramework\TestCase\WebapiAbstract;
@@ -36,9 +38,9 @@ class ProductTierPriceManagementTest extends WebapiAbstract
         ];
 
         $groupPriceList = $this->_webApiCall(
-                $serviceInfo,
-                ['productSku' => $productSku, 'customerGroupId' => $customerGroupId]
-            );
+            $serviceInfo,
+            ['productSku' => $productSku, 'customerGroupId' => $customerGroupId]
+        );
 
         $this->assertCount($count, $groupPriceList);
         if ($count) {
diff --git a/dev/tests/api-functional/testsuite/Magento/CatalogInventory/Api/LowStockItemsTest.php b/dev/tests/api-functional/testsuite/Magento/CatalogInventory/Api/LowStockItemsTest.php
index 564bdbcb41a748275d70732dccd34f08a5d4ac9b..bbcf1389aafad111e7d5af62cd0b6cd2a2459123 100644
--- a/dev/tests/api-functional/testsuite/Magento/CatalogInventory/Api/LowStockItemsTest.php
+++ b/dev/tests/api-functional/testsuite/Magento/CatalogInventory/Api/LowStockItemsTest.php
@@ -23,6 +23,7 @@ class LowStockItemsTest extends WebapiAbstract
      * @param array $result
      * @magentoApiDataFixture Magento/Catalog/_files/multiple_products.php
      * @dataProvider getLowStockItemsDataProvider
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function testGetLowStockItems($qty, $currentPage, $pageSize, $result)
     {
diff --git a/dev/tests/api-functional/testsuite/Magento/CatalogInventory/Api/StockItemTest.php b/dev/tests/api-functional/testsuite/Magento/CatalogInventory/Api/StockItemTest.php
index b0b7eceb47feaa60a8ec05c642d4589d8058e9ab..747b12d4f189c58e21b053318e9aeb20a0a642df 100644
--- a/dev/tests/api-functional/testsuite/Magento/CatalogInventory/Api/StockItemTest.php
+++ b/dev/tests/api-functional/testsuite/Magento/CatalogInventory/Api/StockItemTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\CatalogInventory\Api;
 
 use Magento\TestFramework\Helper\Bootstrap;
@@ -147,7 +150,7 @@ class StockItemTest extends WebapiAbstract
                     'use_config_max_sale_qty' => 1,
                     'is_in_stock' => 1,
                     'low_stock_date' => '',
-                    'notify_stock_qty' => NULL,
+                    'notify_stock_qty' => null,
                     'use_config_notify_stock_qty' => 1,
                     'manage_stock' => 0,
                     'use_config_manage_stock' => 1,
@@ -174,8 +177,8 @@ class StockItemTest extends WebapiAbstract
                     'max_sale_qty' => '0.0000',
                     'use_config_max_sale_qty' => '1',
                     'is_in_stock' => '1',
-                    'low_stock_date' => NULL,
-                    'notify_stock_qty' => NULL,
+                    'low_stock_date' => null,
+                    'notify_stock_qty' => null,
                     'use_config_notify_stock_qty' => '1',
                     'manage_stock' => '0',
                     'use_config_manage_stock' => '1',
diff --git a/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/Address/Billing/ReadServiceTest.php b/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/Address/Billing/ReadServiceTest.php
index edfadd13b2ebde0d8c1a9da3ece95eaf841339a7..d5510f855ed522be2878d4dc137b4d9a4759da03 100644
--- a/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/Address/Billing/ReadServiceTest.php
+++ b/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/Address/Billing/ReadServiceTest.php
@@ -32,10 +32,10 @@ class ReadServiceTest extends WebapiAbstract
      */
     public function testGetAddress()
     {
-        $quote = $this->objectManager->create('Magento\Sales\Model\Quote');
+        $quote = $this->objectManager->create('Magento\Quote\Model\Quote');
         $quote->load('test_order_1', 'reserved_order_id');
 
-        /** @var \Magento\Sales\Model\Quote\Address $address */
+        /** @var \Magento\Quote\Model\Quote\Address $address */
         $address = $quote->getBillingAddress();
 
         $data = [
diff --git a/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/Address/Billing/WriteServiceTest.php b/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/Address/Billing/WriteServiceTest.php
index 21df22d23f3c1d89d3a529597d9bb7613da95812..4644c779b9bb50895ccda8993e7652be20049af3 100644
--- a/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/Address/Billing/WriteServiceTest.php
+++ b/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/Address/Billing/WriteServiceTest.php
@@ -36,8 +36,8 @@ class WriteServiceTest extends WebapiAbstract
      */
     public function testSetAddress()
     {
-        /** @var \Magento\Sales\Model\Quote $quote */
-        $quote = $this->objectManager->create('Magento\Sales\Model\Quote');
+        /** @var \Magento\Quote\Model\Quote $quote */
+        $quote = $this->objectManager->create('Magento\Quote\Model\Quote');
         $quote->load('test_order_1', 'reserved_order_id');
 
         $serviceInfo = [
@@ -77,7 +77,7 @@ class WriteServiceTest extends WebapiAbstract
         $addressId = $this->_webApiCall($serviceInfo, $requestData);
 
         //reset $quote to reload data
-        $quote = $this->objectManager->create('Magento\Sales\Model\Quote');
+        $quote = $this->objectManager->create('Magento\Quote\Model\Quote');
         $quote->load('test_order_1', 'reserved_order_id');
         $savedData  = $quote->getBillingAddress()->getData();
         $this->assertEquals($addressId, $savedData['address_id']);
diff --git a/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/Address/Shipping/ReadServiceTest.php b/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/Address/Shipping/ReadServiceTest.php
index e732bdf1301403618e57778876180bbe927589fc..21562162dad41a76b77b06eaecfefbf5ea1ef69e 100644
--- a/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/Address/Shipping/ReadServiceTest.php
+++ b/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/Address/Shipping/ReadServiceTest.php
@@ -32,10 +32,10 @@ class ReadServiceTest extends WebapiAbstract
      */
     public function testGetAddress()
     {
-        $quote = $this->objectManager->create('Magento\Sales\Model\Quote');
+        $quote = $this->objectManager->create('Magento\Quote\Model\Quote');
         $quote->load('test_order_1', 'reserved_order_id');
 
-        /** @var \Magento\Sales\Model\Quote\Address  $address */
+        /** @var \Magento\Quote\Model\Quote\Address  $address */
         $address = $quote->getShippingAddress();
 
         $data = [
@@ -83,7 +83,7 @@ class ReadServiceTest extends WebapiAbstract
      */
     public function testGetAddressOfQuoteWithVirtualProduct()
     {
-        $quote = $this->objectManager->create('Magento\Sales\Model\Quote');
+        $quote = $this->objectManager->create('Magento\Quote\Model\Quote');
         $cartId = $quote->load('test_order_with_virtual_product', 'reserved_order_id')->getId();
 
         $serviceInfo = $this->getServiceInfo();
@@ -94,6 +94,7 @@ class ReadServiceTest extends WebapiAbstract
 
     /**
      * @return array
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     protected function getServiceInfo()
     {
diff --git a/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/Address/Shipping/WriteServiceTest.php b/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/Address/Shipping/WriteServiceTest.php
index a8e84261dae8dc3847851461fb79f8b9d84e3f5f..a318918c707ff4e33b66497a5d2332103e345e74 100644
--- a/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/Address/Shipping/WriteServiceTest.php
+++ b/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/Address/Shipping/WriteServiceTest.php
@@ -36,8 +36,8 @@ class WriteServiceTest extends WebapiAbstract
      */
     public function testSetAddress()
     {
-        /** @var \Magento\Sales\Model\Quote $quote */
-        $quote = $this->objectManager->create('Magento\Sales\Model\Quote');
+        /** @var \Magento\Quote\Model\Quote $quote */
+        $quote = $this->objectManager->create('Magento\Quote\Model\Quote');
         $quote->load('test_order_1', 'reserved_order_id');
 
         $serviceInfo = [
@@ -77,7 +77,7 @@ class WriteServiceTest extends WebapiAbstract
         $addressId = $this->_webApiCall($serviceInfo, $requestData);
 
         //reset $quote to reload data
-        $quote = $this->objectManager->create('Magento\Sales\Model\Quote');
+        $quote = $this->objectManager->create('Magento\Quote\Model\Quote');
         $quote->load('test_order_1', 'reserved_order_id');
         $savedData  = $quote->getShippingAddress()->getData();
         $this->assertEquals($addressId, $savedData['address_id']);
@@ -105,8 +105,8 @@ class WriteServiceTest extends WebapiAbstract
      */
     public function testSetAddressForVirtualQuote()
     {
-        /** @var \Magento\Sales\Model\Quote $quote */
-        $quote = $this->objectManager->create('Magento\Sales\Model\Quote');
+        /** @var \Magento\Quote\Model\Quote $quote */
+        $quote = $this->objectManager->create('Magento\Quote\Model\Quote');
         $quote->load('test_order_with_virtual_product', 'reserved_order_id');
 
         $serviceInfo = [
diff --git a/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/Cart/ReadServiceTest.php b/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/Cart/ReadServiceTest.php
index 88ca0a2d2ebaa4ffab89616dd956698a4e8ae3bd..c5f621411d6e96cea138e9e4fe17bea54e506bad 100644
--- a/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/Cart/ReadServiceTest.php
+++ b/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/Cart/ReadServiceTest.php
@@ -64,13 +64,13 @@ class ReadServiceTest extends WebapiAbstract
      * Retrieve quote by given reserved order ID
      *
      * @param string $reservedOrderId
-     * @return \Magento\Sales\Model\Quote
+     * @return \Magento\Quote\Model\Quote
      * @throws \InvalidArgumentException
      */
     protected function getCart($reservedOrderId)
     {
-        /** @var $cart \Magento\Sales\Model\Quote */
-        $cart = $this->objectManager->get('Magento\Sales\Model\Quote');
+        /** @var $cart \Magento\Quote\Model\Quote */
+        $cart = $this->objectManager->get('Magento\Quote\Model\Quote');
         $cart->load($reservedOrderId, 'reserved_order_id');
         if (!$cart->getId()) {
             throw new \InvalidArgumentException('There is no quote with provided reserved order ID.');
diff --git a/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/Cart/TotalsServiceTest.php b/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/Cart/TotalsServiceTest.php
index 785a5fc8d9194e822ab4827b20ab4e9c5e24108a..309f92958af160b4f56ad9cb875774d916ddfb58 100644
--- a/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/Cart/TotalsServiceTest.php
+++ b/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/Cart/TotalsServiceTest.php
@@ -47,12 +47,12 @@ class TotalsServiceTest extends WebapiAbstract
      */
     public function testGetTotals()
     {
-        /** @var \Magento\Sales\Model\Quote $quote */
-        $quote = $this->objectManager->create('Magento\Sales\Model\Quote');
+        /** @var \Magento\Quote\Model\Quote $quote */
+        $quote = $this->objectManager->create('Magento\Quote\Model\Quote');
         $quote->load('test_order_1', 'reserved_order_id');
         $cartId = $quote->getId();
 
-        /** @var \Magento\Sales\Model\Quote\Address $shippingAddress */
+        /** @var \Magento\Quote\Model\Quote\Address $shippingAddress */
         $shippingAddress = $quote->getShippingAddress();
 
         $data = [
@@ -145,10 +145,10 @@ class TotalsServiceTest extends WebapiAbstract
     /**
      * Fetch quote item totals data from quote
      *
-     * @param \Magento\Sales\Model\Quote $quote
+     * @param \Magento\Quote\Model\Quote $quote
      * @return array
      */
-    protected function getQuoteItemTotalsData(\Magento\Sales\Model\Quote $quote)
+    protected function getQuoteItemTotalsData(\Magento\Quote\Model\Quote $quote)
     {
         $items = $quote->getAllItems();
         $item = array_shift($items);
diff --git a/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/Cart/WriteServiceTest.php b/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/Cart/WriteServiceTest.php
index 9944eb7d0573968b7fd97216bfb56f6444f30595..70f3ba753b99bb0c189690edc10cacc17a1240fb 100644
--- a/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/Cart/WriteServiceTest.php
+++ b/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/Cart/WriteServiceTest.php
@@ -48,8 +48,8 @@ class WriteServiceTest extends WebapiAbstract
 
     public function tearDown()
     {
-        /** @var \Magento\Sales\Model\Quote $quote */
-        $quote = $this->objectManager->create('Magento\Sales\Model\Quote');
+        /** @var \Magento\Quote\Model\Quote $quote */
+        $quote = $this->objectManager->create('Magento\Quote\Model\Quote');
         foreach ($this->createdQuotes as $quoteId) {
             $quote->load($quoteId);
             $quote->delete();
@@ -62,8 +62,8 @@ class WriteServiceTest extends WebapiAbstract
      */
     public function testAssignCustomer()
     {
-        /** @var $quote \Magento\Sales\Model\Quote */
-        $quote = $this->objectManager->create('Magento\Sales\Model\Quote')->load('test01', 'reserved_order_id');
+        /** @var $quote \Magento\Quote\Model\Quote */
+        $quote = $this->objectManager->create('Magento\Quote\Model\Quote')->load('test01', 'reserved_order_id');
         $cartId = $quote->getId();
         /** @var $repository \Magento\Customer\Api\CustomerRepositoryInterface */
         $repository = $this->objectManager->create('Magento\Customer\Api\CustomerRepositoryInterface');
@@ -92,7 +92,7 @@ class WriteServiceTest extends WebapiAbstract
 
         $this->assertTrue($this->_webApiCall($serviceInfo, $requestData));
         // Reload target quote
-        $quote = $this->objectManager->create('Magento\Sales\Model\Quote')->load('test01', 'reserved_order_id');
+        $quote = $this->objectManager->create('Magento\Quote\Model\Quote')->load('test01', 'reserved_order_id');
         $this->assertEquals(0, $quote->getCustomerIsGuest());
         $this->assertEquals($customer->getId(), $quote->getCustomerId());
         $this->assertEquals($customer->getFirstname(), $quote->getCustomerFirstname());
@@ -105,8 +105,8 @@ class WriteServiceTest extends WebapiAbstract
      */
     public function testAssignCustomerThrowsExceptionIfThereIsNoCustomerWithGivenId()
     {
-        /** @var $quote \Magento\Sales\Model\Quote */
-        $quote = $this->objectManager->create('Magento\Sales\Model\Quote')->load('test01', 'reserved_order_id');
+        /** @var $quote \Magento\Quote\Model\Quote */
+        $quote = $this->objectManager->create('Magento\Quote\Model\Quote')->load('test01', 'reserved_order_id');
         $cartId = $quote->getId();
         $customerId = 9999;
         $serviceInfo = [
@@ -165,8 +165,8 @@ class WriteServiceTest extends WebapiAbstract
         /** @var $customer \Magento\Customer\Model\Customer */
         $customer = $this->objectManager->create('Magento\Customer\Model\Customer')->load(1);
         $customerId = $customer->getId();
-        /** @var $quote \Magento\Sales\Model\Quote */
-        $quote = $this->objectManager->create('Magento\Sales\Model\Quote')->load('test01', 'reserved_order_id');
+        /** @var $quote \Magento\Quote\Model\Quote */
+        $quote = $this->objectManager->create('Magento\Quote\Model\Quote')->load('test01', 'reserved_order_id');
         $cartId = $quote->getId();
 
         $serviceInfo = [
@@ -199,8 +199,8 @@ class WriteServiceTest extends WebapiAbstract
         $repository = $this->objectManager->create('Magento\Customer\Api\CustomerRepositoryInterface');
         /** @var $customer \Magento\Customer\Api\Data\CustomerInterface */
         $customer = $repository->getById(1);
-        /** @var $quote \Magento\Sales\Model\Quote */
-        $quote = $this->objectManager->create('Magento\Sales\Model\Quote')->load('test01', 'reserved_order_id');
+        /** @var $quote \Magento\Quote\Model\Quote */
+        $quote = $this->objectManager->create('Magento\Quote\Model\Quote')->load('test01', 'reserved_order_id');
 
         $customerId = $customer->getId();
         $cartId = $quote->getId();
@@ -235,12 +235,12 @@ class WriteServiceTest extends WebapiAbstract
         /** @var $customer \Magento\Customer\Model\Customer */
         $customer = $this->objectManager->create('Magento\Customer\Model\Customer')->load(1);
         // Customer has a quote with reserved order ID test_order_1 (see fixture)
-        /** @var $customerQuote \Magento\Sales\Model\Quote */
-        $customerQuote = $this->objectManager->create('Magento\Sales\Model\Quote')
+        /** @var $customerQuote \Magento\Quote\Model\Quote */
+        $customerQuote = $this->objectManager->create('Magento\Quote\Model\Quote')
             ->load('test_order_1', 'reserved_order_id');
         $customerQuote->setIsActive(1)->save();
-        /** @var $quote \Magento\Sales\Model\Quote */
-        $quote = $this->objectManager->create('Magento\Sales\Model\Quote')->load('test01', 'reserved_order_id');
+        /** @var $quote \Magento\Quote\Model\Quote */
+        $quote = $this->objectManager->create('Magento\Quote\Model\Quote')->load('test01', 'reserved_order_id');
 
         $cartId = $quote->getId();
         $customerId = $customer->getId();
@@ -269,8 +269,8 @@ class WriteServiceTest extends WebapiAbstract
      */
     public function testOrderPlacesOrder()
     {
-        /** @var $quote \Magento\Sales\Model\Quote */
-        $quote = $this->objectManager->create('Magento\Sales\Model\Quote')->load('test_order_1', 'reserved_order_id');
+        /** @var $quote \Magento\Quote\Model\Quote */
+        $quote = $this->objectManager->create('Magento\Quote\Model\Quote')->load('test_order_1', 'reserved_order_id');
 
         $cartId = $quote->getId();
 
diff --git a/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/Coupon/ReadServiceTest.php b/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/Coupon/ReadServiceTest.php
index 8dc60aba0450314b7ad0272b07ff5977d814c4b3..4b8e7a4e32dcf154e99ae98945fd4b6bf1238845 100644
--- a/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/Coupon/ReadServiceTest.php
+++ b/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/Coupon/ReadServiceTest.php
@@ -31,8 +31,8 @@ class ReadServiceTest extends WebapiAbstract
      */
     public function testGet()
     {
-        /** @var \Magento\Sales\Model\Quote  $quote */
-        $quote = $this->objectManager->create('Magento\Sales\Model\Quote');
+        /** @var \Magento\Quote\Model\Quote  $quote */
+        $quote = $this->objectManager->create('Magento\Quote\Model\Quote');
         $quote->load('test_order_1', 'reserved_order_id');
         $cartId = $quote->getId();
         $data = [
diff --git a/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/Coupon/WriteServiceTest.php b/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/Coupon/WriteServiceTest.php
index b424b68488bf89682d34ef28a13dd20edc91b8e7..0599c1d885fd131b1a6d35082c5fc50b3b2a2612 100644
--- a/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/Coupon/WriteServiceTest.php
+++ b/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/Coupon/WriteServiceTest.php
@@ -31,8 +31,8 @@ class WriteServiceTest extends WebapiAbstract
      */
     public function testDelete()
     {
-        /** @var \Magento\Sales\Model\Quote $quote */
-        $quote = $this->objectManager->create('Magento\Sales\Model\Quote');
+        /** @var \Magento\Quote\Model\Quote $quote */
+        $quote = $this->objectManager->create('Magento\Quote\Model\Quote');
         $quote->load('test_order_1', 'reserved_order_id');
         $cartId = $quote->getId();
         $serviceInfo = [
@@ -59,8 +59,8 @@ class WriteServiceTest extends WebapiAbstract
      */
     public function testSetCouponThrowsExceptionIfCouponDoesNotExist()
     {
-        /** @var \Magento\Sales\Model\Quote $quote */
-        $quote = $this->objectManager->create('Magento\Sales\Model\Quote');
+        /** @var \Magento\Quote\Model\Quote $quote */
+        $quote = $this->objectManager->create('Magento\Quote\Model\Quote');
         $quote->load('test_order_1', 'reserved_order_id');
         $cartId = $quote->getId();
 
@@ -92,8 +92,8 @@ class WriteServiceTest extends WebapiAbstract
      */
     public function testSetCouponSuccess()
     {
-        /** @var \Magento\Sales\Model\Quote $quote */
-        $quote = $this->objectManager->create('Magento\Sales\Model\Quote');
+        /** @var \Magento\Quote\Model\Quote $quote */
+        $quote = $this->objectManager->create('Magento\Quote\Model\Quote');
         $quote->load('test01', 'reserved_order_id');
         $cartId = $quote->getId();
 
@@ -122,7 +122,7 @@ class WriteServiceTest extends WebapiAbstract
 
         $this->assertTrue($this->_webApiCall($serviceInfo, $requestData));
 
-        $quoteWithCoupon = $this->objectManager->create('Magento\Sales\Model\Quote');
+        $quoteWithCoupon = $this->objectManager->create('Magento\Quote\Model\Quote');
         $quoteWithCoupon->load('test01', 'reserved_order_id');
 
         $this->assertEquals($quoteWithCoupon->getCouponCode(), $couponCode);
diff --git a/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/Item/ReadServiceTest.php b/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/Item/ReadServiceTest.php
index 44089682c6e726ce957f8aa974bc81bb27eea166..af342783b7a84d74794b588cdc27a0f78babce12 100644
--- a/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/Item/ReadServiceTest.php
+++ b/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/Item/ReadServiceTest.php
@@ -31,8 +31,8 @@ class ReadServiceTest extends WebapiAbstract
      */
     public function testGetList()
     {
-        /** @var \Magento\Sales\Model\Quote  $quote */
-        $quote = $this->objectManager->create('Magento\Sales\Model\Quote');
+        /** @var \Magento\Quote\Model\Quote  $quote */
+        $quote = $this->objectManager->create('Magento\Quote\Model\Quote');
         $quote->load('test_order_item_with_items', 'reserved_order_id');
         $cartId = $quote->getId();
         $output = [];
diff --git a/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/Item/WriteServiceTest.php b/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/Item/WriteServiceTest.php
index c276faf3f5d944a598e30ff666fb65d8c9d49c2b..4faa6cd4ffebd6b4fcdf7209a1b7c492eb02162e 100644
--- a/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/Item/WriteServiceTest.php
+++ b/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/Item/WriteServiceTest.php
@@ -33,8 +33,8 @@ class WriteServiceTest extends WebapiAbstract
     {
         $product = $this->objectManager->create('Magento\Catalog\Model\Product')->load(2);
         $productSku = $product->getSku();
-        /** @var \Magento\Sales\Model\Quote  $quote */
-        $quote = $this->objectManager->create('Magento\Sales\Model\Quote');
+        /** @var \Magento\Quote\Model\Quote  $quote */
+        $quote = $this->objectManager->create('Magento\Quote\Model\Quote');
         $quote->load('test_order_1', 'reserved_order_id');
         $cartId = $quote->getId();
         $serviceInfo = [
@@ -66,8 +66,8 @@ class WriteServiceTest extends WebapiAbstract
      */
     public function testRemoveItem()
     {
-        /** @var \Magento\Sales\Model\Quote  $quote */
-        $quote = $this->objectManager->create('Magento\Sales\Model\Quote');
+        /** @var \Magento\Quote\Model\Quote  $quote */
+        $quote = $this->objectManager->create('Magento\Quote\Model\Quote');
         $quote->load('test_order_item_with_items', 'reserved_order_id');
         $cartId = $quote->getId();
         $product = $this->objectManager->create('Magento\Catalog\Model\Product');
@@ -91,7 +91,7 @@ class WriteServiceTest extends WebapiAbstract
             "itemId" => $itemId,
         ];
         $this->assertTrue($this->_webApiCall($serviceInfo, $requestData));
-        $quote = $this->objectManager->create('Magento\Sales\Model\Quote');
+        $quote = $this->objectManager->create('Magento\Quote\Model\Quote');
         $quote->load('test_order_item_with_items', 'reserved_order_id');
         $this->assertFalse($quote->hasProductId($productId));
     }
@@ -101,8 +101,8 @@ class WriteServiceTest extends WebapiAbstract
      */
     public function testUpdateItem()
     {
-        /** @var \Magento\Sales\Model\Quote  $quote */
-        $quote = $this->objectManager->create('Magento\Sales\Model\Quote');
+        /** @var \Magento\Quote\Model\Quote  $quote */
+        $quote = $this->objectManager->create('Magento\Quote\Model\Quote');
         $quote->load('test_order_item_with_items', 'reserved_order_id');
         $cartId = $quote->getId();
         $product = $this->objectManager->create('Magento\Catalog\Model\Product');
@@ -129,7 +129,7 @@ class WriteServiceTest extends WebapiAbstract
             ],
         ];
         $this->assertTrue($this->_webApiCall($serviceInfo, $requestData));
-        $quote = $this->objectManager->create('Magento\Sales\Model\Quote');
+        $quote = $this->objectManager->create('Magento\Quote\Model\Quote');
         $quote->load('test_order_item_with_items', 'reserved_order_id');
         $this->assertTrue($quote->hasProductId(1));
         $this->assertEquals(5, $quote->getItemByProduct($product)->getQty());
diff --git a/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/PaymentMethod/ReadServiceTest.php b/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/PaymentMethod/ReadServiceTest.php
index 3125afe9c655c44b1b617b394d2b921c34216f75..9a1a0126b96dc57a18f70f6e426bd6a88b77eba7 100644
--- a/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/PaymentMethod/ReadServiceTest.php
+++ b/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/PaymentMethod/ReadServiceTest.php
@@ -30,8 +30,8 @@ class ReadServiceTest extends WebapiAbstract
      */
     public function testGetList()
     {
-        /** @var \Magento\Sales\Model\Quote  $quote */
-        $quote = $this->objectManager->create('Magento\Sales\Model\Quote');
+        /** @var \Magento\Quote\Model\Quote  $quote */
+        $quote = $this->objectManager->create('Magento\Quote\Model\Quote');
         $quote->load('test_order_1', 'reserved_order_id');
         $cartId = $quote->getId();
 
@@ -64,8 +64,8 @@ class ReadServiceTest extends WebapiAbstract
      */
     public function testGetPayment()
     {
-        /** @var \Magento\Sales\Model\Quote  $quote */
-        $quote = $this->objectManager->create('Magento\Sales\Model\Quote');
+        /** @var \Magento\Quote\Model\Quote  $quote */
+        $quote = $this->objectManager->create('Magento\Quote\Model\Quote');
         $quote->load('test_order_1_with_payment', 'reserved_order_id');
         $cartId = $quote->getId();
 
diff --git a/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/PaymentMethod/WriteServiceTest.php b/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/PaymentMethod/WriteServiceTest.php
index 561d5de35f1acfb50c96239721e403f69c6f5fb7..a4b9a3f485502c5c4026fcf2f315f3ec1e4c1ce0 100644
--- a/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/PaymentMethod/WriteServiceTest.php
+++ b/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/PaymentMethod/WriteServiceTest.php
@@ -29,8 +29,8 @@ class WriteServiceTest extends WebapiAbstract
      */
     public function testReSetPayment()
     {
-        /** @var \Magento\Sales\Model\Quote  $quote */
-        $quote = $this->objectManager->create('Magento\Sales\Model\Quote');
+        /** @var \Magento\Quote\Model\Quote  $quote */
+        $quote = $this->objectManager->create('Magento\Quote\Model\Quote');
         $quote->load('test_order_1_with_payment', 'reserved_order_id');
         $cartId = $quote->getId();
 
@@ -66,8 +66,8 @@ class WriteServiceTest extends WebapiAbstract
      */
     public function testSetPaymentWithVirtualProduct()
     {
-        /** @var \Magento\Sales\Model\Quote  $quote */
-        $quote = $this->objectManager->create('Magento\Sales\Model\Quote');
+        /** @var \Magento\Quote\Model\Quote  $quote */
+        $quote = $this->objectManager->create('Magento\Quote\Model\Quote');
         $quote->load('test_order_with_virtual_product', 'reserved_order_id');
         $cartId = $quote->getId();
 
@@ -102,8 +102,8 @@ class WriteServiceTest extends WebapiAbstract
      */
     public function testSetPaymentWithSimpleProduct()
     {
-        /** @var \Magento\Sales\Model\Quote  $quote */
-        $quote = $this->objectManager->create('Magento\Sales\Model\Quote');
+        /** @var \Magento\Quote\Model\Quote  $quote */
+        $quote = $this->objectManager->create('Magento\Quote\Model\Quote');
         $quote->load('test_order_1', 'reserved_order_id');
         $cartId = $quote->getId();
 
@@ -141,8 +141,8 @@ class WriteServiceTest extends WebapiAbstract
      */
     public function testSetPaymentWithVirtualProductWithoutAddress()
     {
-        /** @var \Magento\Sales\Model\Quote  $quote */
-        $quote = $this->objectManager->create('Magento\Sales\Model\Quote');
+        /** @var \Magento\Quote\Model\Quote  $quote */
+        $quote = $this->objectManager->create('Magento\Quote\Model\Quote');
         $quote->load('test_order_with_virtual_product_without_address', 'reserved_order_id');
         $cartId = $quote->getId();
 
@@ -179,8 +179,8 @@ class WriteServiceTest extends WebapiAbstract
      */
     public function testSetPaymentWithSimpleProductWithoutAddress()
     {
-        /** @var \Magento\Sales\Model\Quote  $quote */
-        $quote = $this->objectManager->create('Magento\Sales\Model\Quote');
+        /** @var \Magento\Quote\Model\Quote  $quote */
+        $quote = $this->objectManager->create('Magento\Quote\Model\Quote');
         $quote->load('test_order_with_simple_product_without_address', 'reserved_order_id');
         $cartId = $quote->getId();
 
diff --git a/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/ShippingMethod/ReadServiceTest.php b/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/ShippingMethod/ReadServiceTest.php
index 28458e670822bc4902eed3564faa04eb1d9406e9..40cfd42c3a5b68a3609619c60187213680ccacb5 100644
--- a/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/ShippingMethod/ReadServiceTest.php
+++ b/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/ShippingMethod/ReadServiceTest.php
@@ -31,8 +31,8 @@ class ReadServiceTest extends WebapiAbstract
      */
     public function testGetMethod()
     {
-        /** @var \Magento\Sales\Model\Quote $quote */
-        $quote = $this->objectManager->create('Magento\Sales\Model\Quote');
+        /** @var \Magento\Quote\Model\Quote $quote */
+        $quote = $this->objectManager->create('Magento\Quote\Model\Quote');
         $quote->load('test_order_1', 'reserved_order_id');
 
         $cartId = $quote->getId();
@@ -59,7 +59,7 @@ class ReadServiceTest extends WebapiAbstract
      */
     public function testGetMethodOfVirtualCart()
     {
-        $quote = $this->objectManager->create('Magento\Sales\Model\Quote');
+        $quote = $this->objectManager->create('Magento\Quote\Model\Quote');
         $cartId = $quote->load('test_order_with_virtual_product', 'reserved_order_id')->getId();
 
         $result = $this->_webApiCall($this->getSelectedMethodServiceInfo($cartId), ["cartId" => $cartId]);
@@ -71,7 +71,7 @@ class ReadServiceTest extends WebapiAbstract
      */
     public function testGetMethodOfCartWithNoShippingMethod()
     {
-        $quote = $this->objectManager->create('Magento\Sales\Model\Quote');
+        $quote = $this->objectManager->create('Magento\Quote\Model\Quote');
         $cartId = $quote->load('test_order_1', 'reserved_order_id')->getId();
 
         $result = $this->_webApiCall($this->getSelectedMethodServiceInfo($cartId), ["cartId" => $cartId]);
@@ -84,7 +84,7 @@ class ReadServiceTest extends WebapiAbstract
      */
     public function testGetListForVirtualCart()
     {
-        $quote = $this->objectManager->create('Magento\Sales\Model\Quote');
+        $quote = $this->objectManager->create('Magento\Quote\Model\Quote');
         $cartId = $quote->load('test_order_with_virtual_product', 'reserved_order_id')->getId();
 
         $this->assertEquals([], $this->_webApiCall($this->getListServiceInfo($cartId), ["cartId" => $cartId]));
@@ -95,8 +95,8 @@ class ReadServiceTest extends WebapiAbstract
      */
     public function testGetList()
     {
-        /** @var \Magento\Sales\Model\Quote $quote */
-        $quote = $this->objectManager->create('Magento\Sales\Model\Quote');
+        /** @var \Magento\Quote\Model\Quote $quote */
+        $quote = $this->objectManager->create('Magento\Quote\Model\Quote');
         $quote->load('test_order_1', 'reserved_order_id');
         $cartId = $quote->getId();
         if (!$cartId) {
@@ -116,6 +116,7 @@ class ReadServiceTest extends WebapiAbstract
     /**
      * @param string $cartId
      * @return array
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     protected function getSelectedMethodServiceInfo($cartId)
     {
@@ -157,7 +158,7 @@ class ReadServiceTest extends WebapiAbstract
      * Convert rate models array to data array
      *
      * @param string $currencyCode
-     * @param \Magento\Sales\Model\Quote\Address\Rate[] $groupedRates
+     * @param \Magento\Quote\Model\Quote\Address\Rate[] $groupedRates
      * @return array
      */
     protected function convertRates($groupedRates, $currencyCode)
diff --git a/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/ShippingMethod/WriteServiceTest.php b/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/ShippingMethod/WriteServiceTest.php
index 741bf5c9866cde0973892fea72700cd2ed65526f..372088cd6e2a5c12fd4b84767447728ea25aa3c5 100644
--- a/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/ShippingMethod/WriteServiceTest.php
+++ b/dev/tests/api-functional/testsuite/Magento/Checkout/Service/V1/ShippingMethod/WriteServiceTest.php
@@ -17,14 +17,14 @@ class WriteServiceTest extends WebapiAbstract
     private $objectManager;
 
     /**
-     * @var \Magento\Sales\Model\Quote
+     * @var \Magento\Quote\Model\Quote
      */
     protected $quote;
 
     protected function setUp()
     {
         $this->objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager();
-        $this->quote = $this->objectManager->create('Magento\Sales\Model\Quote');
+        $this->quote = $this->objectManager->create('Magento\Quote\Model\Quote');
     }
 
     protected function getServiceInfo()
diff --git a/dev/tests/api-functional/testsuite/Magento/ConfigurableProduct/Api/OptionRepositoryTest.php b/dev/tests/api-functional/testsuite/Magento/ConfigurableProduct/Api/OptionRepositoryTest.php
index 4a4c1a5cbc7dbcb8d9f70629ac27fb3d7db0fe8e..1c4993fd6ca1921a2d3c2fe7b065198a3c3dbd8f 100644
--- a/dev/tests/api-functional/testsuite/Magento/ConfigurableProduct/Api/OptionRepositoryTest.php
+++ b/dev/tests/api-functional/testsuite/Magento/ConfigurableProduct/Api/OptionRepositoryTest.php
@@ -4,6 +4,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\ConfigurableProduct\Api;
 
 use Magento\Webapi\Model\Rest\Config;
@@ -286,5 +289,4 @@ class OptionRepositoryTest extends \Magento\TestFramework\TestCase\WebapiAbstrac
         ];
         return $this->_webApiCall($serviceInfo, ['productSku' => $productSku]);
     }
-
 }
diff --git a/dev/tests/api-functional/testsuite/Magento/Customer/Api/AddressMetadataTest.php b/dev/tests/api-functional/testsuite/Magento/Customer/Api/AddressMetadataTest.php
index 4a85003340c26a9100690283ad601419efac2765..4f701f7b038ddf52a7e2022479733a1469676b97 100644
--- a/dev/tests/api-functional/testsuite/Magento/Customer/Api/AddressMetadataTest.php
+++ b/dev/tests/api-functional/testsuite/Magento/Customer/Api/AddressMetadataTest.php
@@ -195,6 +195,7 @@ class AddressMetadataTest extends WebapiAbstract
      * @param array $expectedResult
      * @param array $actualResult
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function checkValidationRules($expectedResult, $actualResult)
     {
diff --git a/dev/tests/api-functional/testsuite/Magento/Customer/Api/AddressRepositoryTest.php b/dev/tests/api-functional/testsuite/Magento/Customer/Api/AddressRepositoryTest.php
index 6d8fa26eb22ea148d2d0a5aae4f4b1777110b8d9..371c7229b112c60b8a5ac7d44c2c7bd6c4075812 100644
--- a/dev/tests/api-functional/testsuite/Magento/Customer/Api/AddressRepositoryTest.php
+++ b/dev/tests/api-functional/testsuite/Magento/Customer/Api/AddressRepositoryTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Customer\Api;
 
 use Magento\TestFramework\Helper\Bootstrap;
diff --git a/dev/tests/api-functional/testsuite/Magento/Customer/Api/CustomerMetadataTest.php b/dev/tests/api-functional/testsuite/Magento/Customer/Api/CustomerMetadataTest.php
index b82ec82b34292709859b8824248b269928e76be7..d4f800547232b22db12b28dcc42f7b4bb3552bac 100644
--- a/dev/tests/api-functional/testsuite/Magento/Customer/Api/CustomerMetadataTest.php
+++ b/dev/tests/api-functional/testsuite/Magento/Customer/Api/CustomerMetadataTest.php
@@ -258,6 +258,7 @@ class CustomerMetadataTest extends WebapiAbstract
      * @param array $expectedResult
      * @param array $actualResult
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function checkValidationRules($expectedResult, $actualResult)
     {
diff --git a/dev/tests/api-functional/testsuite/Magento/Downloadable/Service/V1/DownloadableLink/WriteServiceTest.php b/dev/tests/api-functional/testsuite/Magento/Downloadable/Service/V1/DownloadableLink/WriteServiceTest.php
index be271d6775cccc858793b60c54e6e6602f1bf0f1..b398ffcaa81fd5a91e8419069d5efe1018b32aa2 100644
--- a/dev/tests/api-functional/testsuite/Magento/Downloadable/Service/V1/DownloadableLink/WriteServiceTest.php
+++ b/dev/tests/api-functional/testsuite/Magento/Downloadable/Service/V1/DownloadableLink/WriteServiceTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Downloadable\Service\V1\DownloadableLink;
 
 use Magento\Catalog\Model\Product;
diff --git a/dev/tests/api-functional/testsuite/Magento/Downloadable/Service/V1/DownloadableSample/WriteServiceTest.php b/dev/tests/api-functional/testsuite/Magento/Downloadable/Service/V1/DownloadableSample/WriteServiceTest.php
index a322af9750842faf335e2a38cffbd9a8761a3633..f6a35621f59edf42b73235ed97f9ce78c38cd7f4 100644
--- a/dev/tests/api-functional/testsuite/Magento/Downloadable/Service/V1/DownloadableSample/WriteServiceTest.php
+++ b/dev/tests/api-functional/testsuite/Magento/Downloadable/Service/V1/DownloadableSample/WriteServiceTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Downloadable\Service\V1\DownloadableSample;
 
 use Magento\Catalog\Model\Product;
diff --git a/dev/tests/api-functional/testsuite/Magento/Framework/Stdlib/CookieManagerTest.php b/dev/tests/api-functional/testsuite/Magento/Framework/Stdlib/CookieManagerTest.php
index c6f10aab5508ca9c126db72a1f3b586279dc12af..219416fd6db0c23aef5782eff447bd2386d6623b 100644
--- a/dev/tests/api-functional/testsuite/Magento/Framework/Stdlib/CookieManagerTest.php
+++ b/dev/tests/api-functional/testsuite/Magento/Framework/Stdlib/CookieManagerTest.php
@@ -152,6 +152,7 @@ class CookieManagerTest extends \Magento\TestFramework\TestCase\WebapiAbstract
      * @param string $cookieName
      * @param array $cookies
      * @return $cookie|null
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     private function findCookie($cookieName, $cookies)
     {
diff --git a/dev/tests/api-functional/testsuite/Magento/GiftMessage/Service/V1/ReadServiceTest.php b/dev/tests/api-functional/testsuite/Magento/GiftMessage/Service/V1/ReadServiceTest.php
index ed946e51793d14dbd2462a1a9d0c9bdf12e398ed..0f2b0fc0bac7b844346a0d99a1ecf54c5a1eb39d 100644
--- a/dev/tests/api-functional/testsuite/Magento/GiftMessage/Service/V1/ReadServiceTest.php
+++ b/dev/tests/api-functional/testsuite/Magento/GiftMessage/Service/V1/ReadServiceTest.php
@@ -30,8 +30,8 @@ class ReadServiceTest extends WebapiAbstract
      */
     public function testGet()
     {
-        /** @var \Magento\Sales\Model\Quote $quote */
-        $quote = $this->objectManager->create('Magento\Sales\Model\Quote');
+        /** @var \Magento\Quote\Model\Quote $quote */
+        $quote = $this->objectManager->create('Magento\Quote\Model\Quote');
         $quote->load('message_order_21', 'reserved_order_id');
 
         $cartId = $quote->getId();
@@ -66,8 +66,8 @@ class ReadServiceTest extends WebapiAbstract
      */
     public function testGetItemMessage()
     {
-        /** @var \Magento\Sales\Model\Quote $quote */
-        $quote = $this->objectManager->create('Magento\Sales\Model\Quote');
+        /** @var \Magento\Quote\Model\Quote $quote */
+        $quote = $this->objectManager->create('Magento\Quote\Model\Quote');
         $quote->load('test_order_item_with_message', 'reserved_order_id');
         $product = $this->objectManager->create('Magento\Catalog\Model\Product');
         $product->load($product->getIdBySku('simple_with_message'));
diff --git a/dev/tests/api-functional/testsuite/Magento/GiftMessage/Service/V1/WriteServiceTest.php b/dev/tests/api-functional/testsuite/Magento/GiftMessage/Service/V1/WriteServiceTest.php
index 6e65c889de24077f79f7efda0b7afe7f2858da50..501509ef33a63bbd7078812ff4c4bd14bfb0ab88 100644
--- a/dev/tests/api-functional/testsuite/Magento/GiftMessage/Service/V1/WriteServiceTest.php
+++ b/dev/tests/api-functional/testsuite/Magento/GiftMessage/Service/V1/WriteServiceTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\GiftMessage\Service\V1;
 
 use Magento\TestFramework\TestCase\WebapiAbstract;
@@ -33,8 +35,8 @@ class WriteServiceTest extends WebapiAbstract
         // sales/gift_options/allow_order must be set to 1 in system configuration
         // @todo remove next statement when \Magento\TestFramework\TestCase\WebapiAbstract::_updateAppConfig is fixed
         $this->markTestIncomplete('This test relies on system configuration state.');
-        /** @var \Magento\Sales\Model\Quote $quote */
-        $quote = $this->objectManager->create('Magento\Sales\Model\Quote');
+        /** @var \Magento\Quote\Model\Quote $quote */
+        $quote = $this->objectManager->create('Magento\Quote\Model\Quote');
         $quote->load('test_order_item_with_message', 'reserved_order_id');
 
         $cartId = $quote->getId();
@@ -76,8 +78,8 @@ class WriteServiceTest extends WebapiAbstract
         // sales/gift_options/allow_items must be set to 1 in system configuration
         // @todo remove next statement when \Magento\TestFramework\TestCase\WebapiAbstract::_updateAppConfig is fixed
         $this->markTestIncomplete('This test relies on system configuration state.');
-        /** @var \Magento\Sales\Model\Quote $quote */
-        $quote = $this->objectManager->create('Magento\Sales\Model\Quote');
+        /** @var \Magento\Quote\Model\Quote $quote */
+        $quote = $this->objectManager->create('Magento\Quote\Model\Quote');
         $quote->load('test_order_item_with_message', 'reserved_order_id');
         $cartId = $quote->getId();
         $product = $this->objectManager->create('Magento\Catalog\Model\Product');
diff --git a/dev/tests/api-functional/testsuite/Magento/Integration/Service/V1/CustomerTokenServiceTest.php b/dev/tests/api-functional/testsuite/Magento/Integration/Service/V1/CustomerTokenServiceTest.php
index 03318d3bffac91c0dbed9360efed9e4ba89658ae..c565a0e9bb846e00c7a68225265a159dd6d9108f 100644
--- a/dev/tests/api-functional/testsuite/Magento/Integration/Service/V1/CustomerTokenServiceTest.php
+++ b/dev/tests/api-functional/testsuite/Magento/Integration/Service/V1/CustomerTokenServiceTest.php
@@ -83,6 +83,7 @@ class CustomerTokenServiceTest extends WebapiAbstract
 
     /**
      * @dataProvider validationDataProvider
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function testCreateCustomerAccessTokenEmptyOrNullCredentials($username, $password)
     {
diff --git a/dev/tests/api-functional/testsuite/Magento/Sales/Service/V1/CreditmemoCreateTest.php b/dev/tests/api-functional/testsuite/Magento/Sales/Service/V1/CreditmemoCreateTest.php
index 8c6087b2e8c76de1a30adb59d426576cd8ee8a20..3884e6e449c6695f7df146c5fdb7b1b764dab1f2 100644
--- a/dev/tests/api-functional/testsuite/Magento/Sales/Service/V1/CreditmemoCreateTest.php
+++ b/dev/tests/api-functional/testsuite/Magento/Sales/Service/V1/CreditmemoCreateTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Sales\Service\V1;
 
 use Magento\TestFramework\TestCase\WebapiAbstract;
diff --git a/dev/tests/api-functional/testsuite/Magento/Sales/Service/V1/OrderAddressUpdateTest.php b/dev/tests/api-functional/testsuite/Magento/Sales/Service/V1/OrderAddressUpdateTest.php
index f1455585d4f3460e5a35c8dbac5b1aff3d4133ee..5827ababd9fb042eeaad7e9751440938119f93f6 100644
--- a/dev/tests/api-functional/testsuite/Magento/Sales/Service/V1/OrderAddressUpdateTest.php
+++ b/dev/tests/api-functional/testsuite/Magento/Sales/Service/V1/OrderAddressUpdateTest.php
@@ -20,6 +20,7 @@ class OrderAddressUpdateTest extends WebapiAbstract
 
     /**
      * @magentoApiDataFixture Magento/Sales/_files/order.php
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function testOrderAddressUpdate()
     {
diff --git a/dev/tests/api-functional/testsuite/Magento/Sales/Service/V1/OrderCreateTest.php b/dev/tests/api-functional/testsuite/Magento/Sales/Service/V1/OrderCreateTest.php
index 2ae28508e9cec6d2717f5ba1659747d341b8ec52..25791cb1b37da23969678d73e9c21c1b71e25f4d 100644
--- a/dev/tests/api-functional/testsuite/Magento/Sales/Service/V1/OrderCreateTest.php
+++ b/dev/tests/api-functional/testsuite/Magento/Sales/Service/V1/OrderCreateTest.php
@@ -55,6 +55,12 @@ class OrderCreateTest extends WebapiAbstract
 
         $email = uniqid() . 'email@example.com';
         $orderItem->setSku('sku#1');
+        if (TESTS_WEB_API_ADAPTER == self::ADAPTER_SOAP) {
+            $orderItem->setData('parent_item', $orderItem->getData() + ['parent_item' => null]);
+            $orderItem->setAdditionalData('test');
+        } else {
+            $orderItem->setData('parent_item', ['weight' => 1]);
+        }
         $orderPayment->setCcLast4('4444');
         $orderPayment->setMethod('checkmo');
         $orderPayment->setAccountStatus('ok');
diff --git a/dev/tests/api-functional/testsuite/Magento/Sales/Service/V1/OrderStatusHistoryAddTest.php b/dev/tests/api-functional/testsuite/Magento/Sales/Service/V1/OrderStatusHistoryAddTest.php
index 720423bfd753b4727535a4a65af9974f89d81bd7..b5bda07bc0a0138b51137b42d05ef2048053a02f 100644
--- a/dev/tests/api-functional/testsuite/Magento/Sales/Service/V1/OrderStatusHistoryAddTest.php
+++ b/dev/tests/api-functional/testsuite/Magento/Sales/Service/V1/OrderStatusHistoryAddTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Sales\Service\V1;
 
 use Magento\Sales\Api\Data\OrderStatusHistoryInterface;
@@ -33,6 +36,7 @@ class OrderStatusHistoryAddTest extends WebapiAbstract
 
     /**
      * @magentoApiDataFixture Magento/Sales/_files/order.php
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function testOrderCommentAdd()
     {
@@ -74,10 +78,12 @@ class OrderStatusHistoryAddTest extends WebapiAbstract
             $this->assertEquals($commentData[OrderStatusHistoryInterface::COMMENT], $statusHistoryComment->getComment());
             $this->assertEquals($commentData[OrderStatusHistoryInterface::PARENT_ID], $statusHistoryComment->getParentId());
             $this->assertEquals(
-                $commentData[OrderStatusHistoryInterface::IS_CUSTOMER_NOTIFIED], $statusHistoryComment->getIsCustomerNotified()
+                $commentData[OrderStatusHistoryInterface::IS_CUSTOMER_NOTIFIED],
+                $statusHistoryComment->getIsCustomerNotified()
             );
             $this->assertEquals(
-                $commentData[OrderStatusHistoryInterface::IS_VISIBLE_ON_FRONT], $statusHistoryComment->getIsVisibleOnFront()
+                $commentData[OrderStatusHistoryInterface::IS_VISIBLE_ON_FRONT],
+                $statusHistoryComment->getIsVisibleOnFront()
             );
         }
     }
diff --git a/dev/tests/api-functional/testsuite/Magento/Sales/Service/V1/ShipmentCreateTest.php b/dev/tests/api-functional/testsuite/Magento/Sales/Service/V1/ShipmentCreateTest.php
index d15b8cacd4c789a5b179522142a27e9757c8ce39..38925a62319c9454358e545dc3b365e06fb2b2c5 100644
--- a/dev/tests/api-functional/testsuite/Magento/Sales/Service/V1/ShipmentCreateTest.php
+++ b/dev/tests/api-functional/testsuite/Magento/Sales/Service/V1/ShipmentCreateTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Sales\Service\V1;
 
 use Magento\TestFramework\TestCase\WebapiAbstract;
diff --git a/dev/tests/api-functional/testsuite/Magento/Tax/Api/TaxClassRepositoryTest.php b/dev/tests/api-functional/testsuite/Magento/Tax/Api/TaxClassRepositoryTest.php
index 40af69cc8c54110eac3087044bf8ebef838726b9..4dfd23166bd53cb76bcafce8841baedd8d9b1810 100644
--- a/dev/tests/api-functional/testsuite/Magento/Tax/Api/TaxClassRepositoryTest.php
+++ b/dev/tests/api-functional/testsuite/Magento/Tax/Api/TaxClassRepositoryTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Tax\Api;
 
 use Magento\Framework\Api\FilterBuilder;
@@ -291,10 +293,14 @@ class TaxClassRepositoryTest extends WebapiAbstract
         ];
         $searchResults = $this->_webApiCall($serviceInfo, $requestData);
         $this->assertEquals(2, $searchResults['total_count']);
-        $this->assertEquals($productTaxClass[Data\TaxClassInterface::KEY_NAME],
-            $searchResults['items'][0][Data\TaxClassInterface::KEY_NAME]);
-        $this->assertEquals($customerTaxClass[Data\TaxClassInterface::KEY_NAME],
-            $searchResults['items'][1][Data\TaxClassInterface::KEY_NAME]);
+        $this->assertEquals(
+            $productTaxClass[Data\TaxClassInterface::KEY_NAME],
+            $searchResults['items'][0][Data\TaxClassInterface::KEY_NAME]
+        );
+        $this->assertEquals(
+            $customerTaxClass[Data\TaxClassInterface::KEY_NAME],
+            $searchResults['items'][1][Data\TaxClassInterface::KEY_NAME]
+        );
 
         /** class_name == 'Retail Customer' && ( class_type == 'CUSTOMER' || class_type == 'PRODUCT') */
         $this->searchCriteriaBuilder->addFilter([$filter2]);
@@ -305,7 +311,9 @@ class TaxClassRepositoryTest extends WebapiAbstract
         $serviceInfo['rest']['resourcePath'] = self::RESOURCE_PATH . '/search' . '?' . http_build_query($requestData);
         $searchResults = $this->_webApiCall($serviceInfo, $requestData);
         $this->assertEquals(1, $searchResults['total_count']);
-        $this->assertEquals($customerTaxClass[Data\TaxClassInterface::KEY_NAME],
-            $searchResults['items'][0][Data\TaxClassInterface::KEY_NAME]);
+        $this->assertEquals(
+            $customerTaxClass[Data\TaxClassInterface::KEY_NAME],
+            $searchResults['items'][0][Data\TaxClassInterface::KEY_NAME]
+        );
     }
 }
diff --git a/dev/tests/api-functional/testsuite/Magento/Webapi/Routing/ServiceVersionV1Test.php b/dev/tests/api-functional/testsuite/Magento/Webapi/Routing/ServiceVersionV1Test.php
index b576028352f1b691609bd3ffa54a0e3d85b2d46b..6061850059dacf24947d2323f56a88405e1749a5 100644
--- a/dev/tests/api-functional/testsuite/Magento/Webapi/Routing/ServiceVersionV1Test.php
+++ b/dev/tests/api-functional/testsuite/Magento/Webapi/Routing/ServiceVersionV1Test.php
@@ -71,6 +71,7 @@ class ServiceVersionV1Test extends \Magento\Webapi\Routing\BaseService
 
     /**
      *  Test get item with any type
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function testItemAnyType()
     {
diff --git a/dev/tests/api-functional/testsuite/Magento/Webapi/WsdlGenerationFromDataObjectTest.php b/dev/tests/api-functional/testsuite/Magento/Webapi/WsdlGenerationFromDataObjectTest.php
index 2d7c98bde2267f274e03db022436f914ff298d46..23bb628f55448a1dd85da8582c7360498358e584 100644
--- a/dev/tests/api-functional/testsuite/Magento/Webapi/WsdlGenerationFromDataObjectTest.php
+++ b/dev/tests/api-functional/testsuite/Magento/Webapi/WsdlGenerationFromDataObjectTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Webapi;
 
 use Magento\TestFramework\Helper\Bootstrap;
@@ -220,6 +222,7 @@ RESPONSE_TYPE;
      * Ensure that complex type generated from Data Object is correct.
      *
      * @param string $wsdlContent
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _checkReferencedTypeDeclaration($wsdlContent)
     {
@@ -585,6 +588,7 @@ GENERIC_FAULT_IN_MESSAGES;
 
     /**
      * @param string $wsdlContent
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _checkFaultsComplexTypeSection($wsdlContent)
     {
diff --git a/dev/tests/functional/.gitignore b/dev/tests/functional/.gitignore
index d3b32c5f1d405f9a8bb0a4b6ba742409c6f6050b..a415b0cffbf047e222eb3fa16734eeb8c1382409 100755
--- a/dev/tests/functional/.gitignore
+++ b/dev/tests/functional/.gitignore
@@ -8,4 +8,4 @@
 !/config/isolation.yml.dist
 !/config/server.yml.dist
 phpunit.xml
-/lib/Mtf/Util/Generate/testcase.xml
+/lib/Magento/Mtf/Util/Generate/testcase.xml
diff --git a/dev/tests/functional/bootstrap.php b/dev/tests/functional/bootstrap.php
index b6b2fac9294d8ad17f4192fb3f4c23d77e223df3..b661b84d1ceccd96c2b4ceb28ee3ee9ff0d31dc2 100644
--- a/dev/tests/functional/bootstrap.php
+++ b/dev/tests/functional/bootstrap.php
@@ -6,6 +6,7 @@
 
 session_start();
 defined('MTF_BOOT_FILE') || define('MTF_BOOT_FILE', __FILE__);
+defined('MTF_BP') || define('MTF_BP', str_replace('\\', '/', (__DIR__)));
 require_once __DIR__ . '/../../../app/bootstrap.php';
 restore_error_handler();
 require_once __DIR__ . '/vendor/autoload.php';
diff --git a/dev/tests/functional/composer.json b/dev/tests/functional/composer.json
index e2e3d4ad289ce347e9c3fade95d09f606d490ea5..0cd1467c6a9172fd9cfd7fd36d7d48557c9256a2 100644
--- a/dev/tests/functional/composer.json
+++ b/dev/tests/functional/composer.json
@@ -1,15 +1,17 @@
 {
     "require": {
-        "magento/mtf": "1.0.0-rc11",
+        "magento/mtf": "1.0.0-rc14",
         "php": ">=5.4.0",
         "phpunit/phpunit": "4.1.0",
         "phpunit/phpunit-selenium": ">=1.2",
         "netwing/selenium-server-standalone": ">=2.35"
     },
+    "suggest": {
+        "facebook/webdriver": "dev-master"
+    },
     "autoload": {
         "psr-4": {
-            "Mtf\\": ["lib/Mtf/", "generated/Mtf/", "testsuites/Mtf/"],
-            "Magento\\": ["generated/Magento/", "tests/app/Magento/"],
+            "Magento\\": ["lib/Magento/", "testsuites/Magento", "generated/Magento/", "tests/app/Magento/"],
             "Test\\": "generated/Test/"
         }
     }
diff --git a/dev/tests/functional/composer.json.dist b/dev/tests/functional/composer.json.dist
index 2ea37c5b4a7aad5482f3df3812de7030e6684306..81d984634e945462ad6b3f79fe23d305d9b14bad 100644
--- a/dev/tests/functional/composer.json.dist
+++ b/dev/tests/functional/composer.json.dist
@@ -6,10 +6,12 @@
         "phpunit/phpunit-selenium": ">=1.2",
         "netwing/selenium-server-standalone": ">=2.35"
     },
+    "suggest": {
+        "facebook/webdriver": "dev-master"
+    },
     "autoload": {
         "psr-4": {
-            "Mtf\\": ["lib/Mtf/", "generated/Mtf/", "testsuites/Mtf/"],
-            "Magento\\": ["generated/Magento/", "tests/app/Magento/"],
+            "Magento\\": ["lib/Magento/", "testsuites/Magento", "generated/Magento/", "tests/app/Magento/"],
             "Test\\": "generated/Test/"
         }
     }
diff --git a/dev/tests/functional/etc/global/di.xml b/dev/tests/functional/etc/global/di.xml
index e4cd6218292aead4caf9cdea7fac747ca44956d2..034b05ab359dbc1b48e241a95db5096de1e2678f 100644
--- a/dev/tests/functional/etc/global/di.xml
+++ b/dev/tests/functional/etc/global/di.xml
@@ -6,6 +6,6 @@
  */
 -->
 <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../lib/internal/Magento/Framework/ObjectManager/etc/config.xsd">
-    <preference for="Mtf\Util\Generate\Fixture\FieldsProviderInterface" type="Mtf\Util\Generate\Fixture\FieldsProvider" />
-    <preference for="Mtf\Util\Generate\Repository\CollectionProviderInterface" type="Mtf\Util\Generate\Repository\CollectionProvider" />
+    <preference for="Magento\Mtf\Util\Generate\Fixture\FieldsProviderInterface" type="Magento\Mtf\Util\Generate\Fixture\FieldsProvider" />
+    <preference for="Magento\Mtf\Util\Generate\Repository\CollectionProviderInterface" type="Magento\Mtf\Util\Generate\Repository\CollectionProvider" />
 </config>
diff --git a/dev/tests/functional/lib/Mtf/App/State/AbstractState.php b/dev/tests/functional/lib/Magento/Mtf/App/State/AbstractState.php
similarity index 93%
rename from dev/tests/functional/lib/Mtf/App/State/AbstractState.php
rename to dev/tests/functional/lib/Magento/Mtf/App/State/AbstractState.php
index f1c47546ed044ca9c870b7e52c75afa7fb11550c..ef8d88494f1aebb463c210ce18e7c00959ab4dbc 100644
--- a/dev/tests/functional/lib/Mtf/App/State/AbstractState.php
+++ b/dev/tests/functional/lib/Magento/Mtf/App/State/AbstractState.php
@@ -4,7 +4,7 @@
  * See COPYING.txt for license details.
  */
 
-namespace Mtf\App\State;
+namespace Magento\Mtf\App\State;
 
 use Magento\Framework\App\DeploymentConfig\DbConfig;
 use Magento\Framework\App\Filesystem\DirectoryList;
@@ -39,7 +39,8 @@ abstract class AbstractState implements StateInterface
      */
     public function clearInstance()
     {
-        $dirList = \Mtf\ObjectManagerFactory::getObjectManager()->get('Magento\Framework\Filesystem\DirectoryList');
+        $dirList = \Magento\Mtf\ObjectManagerFactory::getObjectManager()
+            ->get('Magento\Framework\Filesystem\DirectoryList');
         $deploymentConfig = new \Magento\Framework\App\DeploymentConfig(
             new \Magento\Framework\App\DeploymentConfig\Reader($dirList),
             []
diff --git a/dev/tests/functional/lib/Mtf/App/State/State1.php b/dev/tests/functional/lib/Magento/Mtf/App/State/State1.php
similarity index 93%
rename from dev/tests/functional/lib/Mtf/App/State/State1.php
rename to dev/tests/functional/lib/Magento/Mtf/App/State/State1.php
index 59d8ecced3bc7a25cf283b279d9a128b7652e6c5..a5422ee0884ce75233a85e3a1d7132a09f56f659 100644
--- a/dev/tests/functional/lib/Mtf/App/State/State1.php
+++ b/dev/tests/functional/lib/Magento/Mtf/App/State/State1.php
@@ -4,10 +4,10 @@
  * See COPYING.txt for license details.
  */
 
-namespace Mtf\App\State;
+namespace Magento\Mtf\App\State;
 
-use Mtf\ObjectManager;
-use Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\ObjectManager;
+use Magento\Mtf\Fixture\FixtureFactory;
 use Magento\Core\Test\Fixture\ConfigData;
 
 /**
diff --git a/dev/tests/functional/lib/Mtf/Client/Driver/Selenium/Element/ConditionsElement.php b/dev/tests/functional/lib/Magento/Mtf/Client/Element/ConditionsElement.php
similarity index 86%
rename from dev/tests/functional/lib/Mtf/Client/Driver/Selenium/Element/ConditionsElement.php
rename to dev/tests/functional/lib/Magento/Mtf/Client/Element/ConditionsElement.php
index 6f755fd6d159c48c73a072a0a6f8dc40743a0b7a..ea8d59e184ec1bf120c411d0665803e4d132652a 100644
--- a/dev/tests/functional/lib/Mtf/Client/Driver/Selenium/Element/ConditionsElement.php
+++ b/dev/tests/functional/lib/Magento/Mtf/Client/Element/ConditionsElement.php
@@ -4,12 +4,11 @@
  * See COPYING.txt for license details.
  */
 
-namespace Mtf\Client\Driver\Selenium\Element;
+namespace Magento\Mtf\Client\Element;
 
-use Mtf\Client\Driver\Selenium\Element as AbstractElement;
-use Mtf\Client\Element;
-use Mtf\Client\Element\Locator;
-use Mtf\ObjectManager;
+use Magento\Mtf\ObjectManager;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Client\ElementInterface;
 
 /**
  * Class ConditionsElement
@@ -37,7 +36,7 @@ use Mtf\ObjectManager;
  *
  * @SuppressWarnings(PHPMD.TooManyFields)
  */
-class ConditionsElement extends AbstractElement
+class ConditionsElement extends SimpleElement
 {
     /**
      * Main condition
@@ -86,7 +85,7 @@ class ConditionsElement extends AbstractElement
      *
      * @var string
      */
-    protected $created = './/preceding-sibling::li[1]';
+    protected $created = './ul/li[span[contains(@class,"rule-param-new-child")]]/preceding-sibling::li[1]';
 
     /**
      * Children condition
@@ -100,7 +99,7 @@ class ConditionsElement extends AbstractElement
      *
      * @var string
      */
-    protected $param = './span[@class="rule-param"]/span/*[substring(@id,(string-length(@id)-%d+1))="%s"]/../..';
+    protected $param = './span[span[*[substring(@id,(string-length(@id)-%d+1))="%s"]]]';
 
     /**
      * Key of last find param
@@ -187,19 +186,19 @@ class ConditionsElement extends AbstractElement
      * Add condition combination
      *
      * @param string $condition
-     * @param Element $context
-     * @return Element
+     * @param ElementInterface $context
+     * @return ElementInterface
      */
-    protected function addConditionsCombination($condition, Element $context)
+    protected function addConditionsCombination($condition, ElementInterface $context)
     {
         $condition = $this->parseCondition($condition);
         $newCondition = $context->find($this->newCondition, Locator::SELECTOR_XPATH);
         $newCondition->find($this->addNew, Locator::SELECTOR_XPATH)->click();
         $typeNewCondition = $newCondition->find($this->typeNew, Locator::SELECTOR_XPATH, 'select');
         $typeNewCondition->setValue($condition['type']);
-        $this->ruleParamWait();
 
-        $createdCondition = $newCondition->find($this->created, Locator::SELECTOR_XPATH);
+        $createdCondition = $context->find($this->created, Locator::SELECTOR_XPATH);
+        $this->waitForCondition($createdCondition);
         if (!empty($condition['rules'])) {
             $this->fillCondition($condition['rules'], $createdCondition);
         }
@@ -210,10 +209,10 @@ class ConditionsElement extends AbstractElement
      * Add conditions
      *
      * @param array $conditions
-     * @param Element $context
+     * @param ElementInterface $context
      * @return void
      */
-    protected function addMultipleCondition(array $conditions, Element $context)
+    protected function addMultipleCondition(array $conditions, ElementInterface $context)
     {
         foreach ($conditions as $key => $condition) {
             $elementContext = is_numeric($key) ? $context : $this->addConditionsCombination($key, $context);
@@ -229,10 +228,10 @@ class ConditionsElement extends AbstractElement
      * Add single Condition
      *
      * @param string $condition
-     * @param Element $context
+     * @param ElementInterface $context
      * @return void
      */
-    protected function addSingleCondition($condition, Element $context)
+    protected function addSingleCondition($condition, ElementInterface $context)
     {
         $condition = $this->parseCondition($condition);
 
@@ -246,9 +245,8 @@ class ConditionsElement extends AbstractElement
             }
         );
         $newCondition->find($this->typeNew, Locator::SELECTOR_XPATH, 'select')->setValue($condition['type']);
-        $this->ruleParamWait();
-
-        $createdCondition = $newCondition->find($this->created, Locator::SELECTOR_XPATH);
+        $createdCondition = $context->find($this->created, Locator::SELECTOR_XPATH);
+        $this->waitForCondition($createdCondition);
         $this->fillCondition($condition['rules'], $createdCondition);
     }
 
@@ -256,14 +254,15 @@ class ConditionsElement extends AbstractElement
      * Fill single condition
      *
      * @param array $rules
-     * @param Element $element
+     * @param ElementInterface $element
      * @return void
      * @throws \Exception
      */
-    protected function fillCondition(array $rules, Element $element)
+    protected function fillCondition(array $rules, ElementInterface $element)
     {
         $this->resetKeyParam();
         foreach ($rules as $rule) {
+            /** @var ElementInterface $param */
             $param = $this->findNextParam($element);
             $param->find('a')->click();
 
@@ -287,13 +286,13 @@ class ConditionsElement extends AbstractElement
                     return $element->isVisible() ? true : null;
                 }
             );
-            $value = $param->find('select', Locator::SELECTOR_CSS, 'select');
+            $value = $param->find('select', Locator::SELECTOR_TAG_NAME, 'select');
             if ($value->isVisible()) {
                 $value->setValue($rule);
                 $this->click();
                 continue;
             }
-            $value = $param->find('input');
+            $value = $param->find('input', Locator::SELECTOR_TAG_NAME);
             if ($value->isVisible()) {
                 $value->setValue($rule);
 
@@ -356,11 +355,11 @@ class ConditionsElement extends AbstractElement
     /**
      * Find next param of condition for fill
      *
-     * @param Element $context
-     * @return Element
+     * @param ElementInterface $context
+     * @return ElementInterface
      * @throws \Exception
      */
-    protected function findNextParam(Element $context)
+    protected function findNextParam(ElementInterface $context)
     {
         do {
             if (!isset($this->mapParams[$this->findKeyParam])) {
@@ -389,14 +388,11 @@ class ConditionsElement extends AbstractElement
      *
      * @return void
      */
-    protected function ruleParamWait()
+    protected function waitForCondition(ElementInterface $element)
     {
-        $browser = $this;
-        $ruleParamWait = $this->ruleParamWait;
-        $browser->waitUntil(
-            function () use ($browser, $ruleParamWait) {
-                $element = $browser->find($ruleParamWait, Locator::SELECTOR_XPATH);
-                return $element->isVisible() ? null : true;
+        $this->waitUntil(
+            function () use ($element) {
+                return $element->getAttribute('class') == 'rule-param-wait' ? null : true;
             }
         );
     }
diff --git a/dev/tests/functional/lib/Mtf/Client/Driver/Selenium/Element/DatepickerElement.php b/dev/tests/functional/lib/Magento/Mtf/Client/Element/DatepickerElement.php
similarity index 94%
rename from dev/tests/functional/lib/Mtf/Client/Driver/Selenium/Element/DatepickerElement.php
rename to dev/tests/functional/lib/Magento/Mtf/Client/Element/DatepickerElement.php
index 97c094b5b4cfba8f230402b33ec45c9495d348f1..06e569057153cfa433bf399daf28b93ecec41f9f 100644
--- a/dev/tests/functional/lib/Mtf/Client/Driver/Selenium/Element/DatepickerElement.php
+++ b/dev/tests/functional/lib/Magento/Mtf/Client/Element/DatepickerElement.php
@@ -4,15 +4,14 @@
  * See COPYING.txt for license details.
  */
 
-namespace Mtf\Client\Driver\Selenium\Element;
+namespace Magento\Mtf\Client\Element;
 
-use Mtf\Client\Driver\Selenium\Element;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Client\Locator;
 
 /**
  * General class for datepicker elements.
  */
-class DatepickerElement extends Element
+class DatepickerElement extends SimpleElement
 {
     /**
      * DatePicker button.
diff --git a/dev/tests/functional/lib/Mtf/Client/Driver/Selenium/Element/GlobalsearchElement.php b/dev/tests/functional/lib/Magento/Mtf/Client/Element/GlobalsearchElement.php
similarity index 82%
rename from dev/tests/functional/lib/Mtf/Client/Driver/Selenium/Element/GlobalsearchElement.php
rename to dev/tests/functional/lib/Magento/Mtf/Client/Element/GlobalsearchElement.php
index 5c934406a4d52d7d7272c0466eb35b05c15432fa..9d074a65d2c4a9b92458149c1854af30b7957bb4 100644
--- a/dev/tests/functional/lib/Mtf/Client/Driver/Selenium/Element/GlobalsearchElement.php
+++ b/dev/tests/functional/lib/Magento/Mtf/Client/Element/GlobalsearchElement.php
@@ -4,16 +4,21 @@
  * See COPYING.txt for license details.
  */
 
-namespace Mtf\Client\Driver\Selenium\Element;
+namespace Magento\Mtf\Client\Element;
 
-use Mtf\Client\Element\Locator;
-use Mtf\Client\Driver\Selenium\Element;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Client\ElementInterface;
 
 /**
  * Typified element class for global search element.
  */
-class GlobalsearchElement extends Element
+class GlobalsearchElement extends SimpleElement
 {
+    /**
+     * "Backspace" key code.
+     */
+    const BACKSPACE = "\xEE\x80\x83";
+
     /**
      * Search icon selector.
      *
@@ -49,11 +54,6 @@ class GlobalsearchElement extends Element
      */
     protected $resultItem = 'li';
 
-    /**
-     * "Backspace" key code.
-     */
-    const BACKSPACE = "\xEE\x80\x83";
-
     /**
      * Set value.
      *
@@ -62,7 +62,7 @@ class GlobalsearchElement extends Element
      */
     public function setValue($value)
     {
-        $this->_eventManager->dispatchEvent(['set_value'], [__METHOD__, $this->getAbsoluteSelector()]);
+        $this->eventManager->dispatchEvent(['set_value'], [__METHOD__, $this->getAbsoluteSelector()]);
 
         $this->waitInitElement();
 
@@ -71,7 +71,7 @@ class GlobalsearchElement extends Element
         }
         $this->selectWindow();
         $this->clear();
-        $this->find($this->searchInput)->_getWrappedElement()->value($value);
+        $this->find($this->searchInput)->setValue($value);
         $this->selectWindow();
 
         $this->waitResult();
@@ -86,7 +86,7 @@ class GlobalsearchElement extends Element
     {
         $element = $this->find($this->searchInput);
         while ('' != $element->getValue()) {
-            $element->keys([self::BACKSPACE]);
+            $element->setValue([self::BACKSPACE]);
         }
     }
 
@@ -97,8 +97,7 @@ class GlobalsearchElement extends Element
      */
     protected function selectWindow()
     {
-        $windowHandles = $this->_driver->windowHandles();
-        $this->_driver->window(end($windowHandles));
+        $this->driver->closeWindow();
     }
 
     /**
@@ -109,10 +108,10 @@ class GlobalsearchElement extends Element
      */
     protected function waitInitElement()
     {
-        $browser = clone $this;
         $selector = $this->initializedSuggest;
 
-        $browser->waitUntil(
+        $browser = $this->driver;
+        $this->driver->waitUntil(
             function () use ($browser, $selector) {
                 return $browser->find($selector, Locator::SELECTOR_XPATH)->isVisible() ? true : null;
             }
@@ -126,10 +125,10 @@ class GlobalsearchElement extends Element
      */
     public function waitResult()
     {
-        $browser = clone $this;
         $selector = $this->searchResult;
+        $browser = $this->driver;
 
-        $browser->waitUntil(
+        $this->driver->waitUntil(
             function () use ($browser, $selector) {
                 if ($browser->find($selector)->isVisible()) {
                     return true;
@@ -174,12 +173,12 @@ class GlobalsearchElement extends Element
      */
     protected function getSearchResults()
     {
-        /** @var Element $searchResult */
+        /** @var ElementInterface $searchResult */
         $searchResult = $this->find($this->searchResult);
-        $resultItems = $searchResult->find($this->resultItem)->getElements();
+        $resultItems = $searchResult->getElements($this->resultItem);
         $resultArray = [];
 
-        /** @var Element $resultItem */
+        /** @var ElementInterface $resultItem */
         foreach ($resultItems as $resultItem) {
             $resultItemLink = $resultItem->find('a');
             $resultText = $resultItemLink->isVisible()
diff --git a/dev/tests/functional/lib/Mtf/Client/Driver/Selenium/Element/JquerytreeElement.php b/dev/tests/functional/lib/Magento/Mtf/Client/Element/JquerytreeElement.php
similarity index 95%
rename from dev/tests/functional/lib/Mtf/Client/Driver/Selenium/Element/JquerytreeElement.php
rename to dev/tests/functional/lib/Magento/Mtf/Client/Element/JquerytreeElement.php
index f94db8b433ba4351f54d59a8bab33f92d7a982d6..e08b8a6adff03f71182cb7366445c3509970713e 100644
--- a/dev/tests/functional/lib/Mtf/Client/Driver/Selenium/Element/JquerytreeElement.php
+++ b/dev/tests/functional/lib/Magento/Mtf/Client/Element/JquerytreeElement.php
@@ -4,15 +4,13 @@
  * See COPYING.txt for license details.
  */
 
-namespace Mtf\Client\Driver\Selenium\Element;
+namespace Magento\Mtf\Client\Element;
 
-use Mtf\Client\Element;
+use Magento\Mtf\Client\ElementInterface;
 
 /**
  * Class JquerytreeElement
  * Typified element class for JqueryTree elements
- *
- * @package Mtf\Client\Element
  */
 class JquerytreeElement extends Tree
 {
@@ -64,11 +62,11 @@ class JquerytreeElement extends Tree
     /**
      *  Recursive walks tree
      *
-     * @param Element $node
+     * @param ElementInterface $node
      * @param string $parentCssClass
      * @return array
      */
-    protected function _getNodeContent($node, $parentCssClass)
+    protected function _getNodeContent(ElementInterface $node, $parentCssClass)
     {
         $counter = 1;
         $nextNodeSelector = $parentCssClass . " > " . $this->nodeSelector . ":nth-of-type($counter)";
diff --git a/dev/tests/functional/lib/Mtf/Client/Driver/Selenium/Element/LiselectstoreElement.php b/dev/tests/functional/lib/Magento/Mtf/Client/Element/LiselectstoreElement.php
similarity index 80%
rename from dev/tests/functional/lib/Mtf/Client/Driver/Selenium/Element/LiselectstoreElement.php
rename to dev/tests/functional/lib/Magento/Mtf/Client/Element/LiselectstoreElement.php
index 1a513bc921fd12ad18afa1dc43284184629953c9..ee459e0ef5db890fa20c42666685e69d18a727ad 100644
--- a/dev/tests/functional/lib/Mtf/Client/Driver/Selenium/Element/LiselectstoreElement.php
+++ b/dev/tests/functional/lib/Magento/Mtf/Client/Element/LiselectstoreElement.php
@@ -4,16 +4,15 @@
  * See COPYING.txt for license details.
  */
 
-namespace Mtf\Client\Driver\Selenium\Element;
+namespace Magento\Mtf\Client\Element;
 
-use Mtf\Client\Driver\Selenium\Element;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class LiselectstoreElement
  * Typified element class for lists selectors
  */
-class LiselectstoreElement extends Element
+class LiselectstoreElement extends SimpleElement
 {
     /**
      * Template for each element of option
@@ -65,8 +64,8 @@ class LiselectstoreElement extends Element
      */
     public function setValue($value)
     {
-        $this->_eventManager->dispatchEvent(['set_value'], [__METHOD__, $this->getAbsoluteSelector()]);
-        $this->_context->find($this->toggleSelector)->click();
+        $this->eventManager->dispatchEvent(['set_value'], [__METHOD__, $this->getAbsoluteSelector()]);
+        $this->driver->find($this->toggleSelector)->click();
 
         $value = explode('/', $value);
         $optionSelector = [];
@@ -75,7 +74,7 @@ class LiselectstoreElement extends Element
         }
         $optionSelector = './/' . implode($this->optionMaskFollowing, $optionSelector) . '/a';
 
-        $option = $this->_context->find($optionSelector, Locator::SELECTOR_XPATH);
+        $option = $this->driver->find($optionSelector, Locator::SELECTOR_XPATH);
         if (!$option->isVisible()) {
             throw new \Exception('[' . implode('/', $value) . '] option is not visible in store switcher.');
         }
@@ -89,13 +88,11 @@ class LiselectstoreElement extends Element
      */
     protected function getLiElements()
     {
-        $this->_context->find($this->toggleSelector)->click();
-        $criteria = new \PHPUnit_Extensions_Selenium2TestCase_ElementCriteria('css selector');
-        $criteria->value('li');
-        $elements = $this->_getWrappedElement()->elements($criteria);
+        $this->driver->find($this->toggleSelector)->click();
+        $elements = $this->driver->getElements($this, 'li', Locator::SELECTOR_TAG_NAME);
         $dropdownData = [];
         foreach ($elements as $element) {
-            $class = $element->attribute('class');
+            $class = $element->getAttribute('class');
             $dropdownData[] = [
                 'element' => $element,
                 'storeView' => $this->isSubstring($class, "store-switcher-store-view"),
@@ -121,7 +118,7 @@ class LiselectstoreElement extends Element
             if ($dropdownElement['storeView']) {
                 $data[] = $this->findNearestElement('website', $key, $dropdownData) . "/"
                     . $this->findNearestElement('store', $key, $dropdownData) . "/"
-                    . $dropdownElement['element']->text();
+                    . $dropdownElement['element']->getText();
             }
         }
         return $data;
@@ -151,7 +148,7 @@ class LiselectstoreElement extends Element
     {
         $elementText = false;
         while ($elementText == false) {
-            $elementText = $elements[$key][$criteria] == true ? $elements[$key]['element']->text() : false;
+            $elementText = $elements[$key][$criteria] == true ? $elements[$key]['element']->getText() : false;
             $key--;
         }
         return $elementText;
@@ -165,18 +162,20 @@ class LiselectstoreElement extends Element
      */
     public function getValue()
     {
-        $this->_eventManager->dispatchEvent(['get_value'], [(string)$this->_locator]);
+        $this->eventManager->dispatchEvent(['get_value'], [$this->getAbsoluteSelector()]);
         $elements = $this->getLiElements();
         foreach ($elements as $key => $element) {
             if ($element['current'] == true) {
                 if ($element['default_config'] == true) {
-                    return $element['element']->text();
+                    return $element['element']->getText();
                 }
                 $path = $this->findNearestElement('website', $key, $elements) . "/"
                     . $this->findNearestElement('store', $key, $elements) . "/"
-                    . $element['element']->text();
+                    . $element['element']->getText();
                 return $path;
             }
         }
+
+        return '';
     }
 }
diff --git a/dev/tests/functional/lib/Mtf/Client/Driver/Selenium/Element/MultiselectgrouplistElement.php b/dev/tests/functional/lib/Magento/Mtf/Client/Element/MultiselectgrouplistElement.php
similarity index 90%
rename from dev/tests/functional/lib/Mtf/Client/Driver/Selenium/Element/MultiselectgrouplistElement.php
rename to dev/tests/functional/lib/Magento/Mtf/Client/Element/MultiselectgrouplistElement.php
index f54b1570870bba2da3a1c692beb61d1b44acb17a..88f9924f7ebf905594b2ca20994c0eaab1996443 100644
--- a/dev/tests/functional/lib/Mtf/Client/Driver/Selenium/Element/MultiselectgrouplistElement.php
+++ b/dev/tests/functional/lib/Magento/Mtf/Client/Element/MultiselectgrouplistElement.php
@@ -4,10 +4,10 @@
  * See COPYING.txt for license details.
  */
 
-namespace Mtf\Client\Driver\Selenium\Element;
+namespace Magento\Mtf\Client\Element;
 
-use Mtf\Client\Element;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Client\ElementInterface;
 
 /**
  * Class MultiselectgrouplistElement
@@ -105,7 +105,7 @@ class MultiselectgrouplistElement extends MultiselectElement
      */
     public function setValue($values)
     {
-        $this->clearSelectedOptions();
+        $this->deselectAll();
         $values = is_array($values) ? $values : [$values];
         foreach ($values as $value) {
             $this->selectOption($value);
@@ -152,16 +152,17 @@ class MultiselectgrouplistElement extends MultiselectElement
      * Get optgroup
      *
      * @param string $value
-     * @param Element $context
-     * @return Element
+     * @param ElementInterface $context
+     * @return ElementInterface
      * @throws \Exception
      */
-    protected function getOptgroup($value, Element $context)
+    protected function getOptgroup($value, ElementInterface $context)
     {
         $optgroup = $context->find(sprintf($this->optgroupByLabel, $value), Locator::SELECTOR_XPATH);
         if (!$optgroup->isVisible()) {
             throw new \Exception("Can't find group \"{$value}\".");
         }
+
         return $optgroup;
     }
 
@@ -169,11 +170,11 @@ class MultiselectgrouplistElement extends MultiselectElement
      * Get child optgroup
      *
      * @param string $value
-     * @param Element $context
-     * @return Element
+     * @param ElementInterface $context
+     * @return ElementInterface
      * @throws \Exception
      */
-    protected function getChildOptgroup($value, Element $context)
+    protected function getChildOptgroup($value, ElementInterface $context)
     {
         $childOptgroup = null;
         $count = 1;
@@ -210,7 +211,7 @@ class MultiselectgrouplistElement extends MultiselectElement
         foreach ($this->getSelectedOptions() as $option) {
             $value = [];
 
-            /** @var Element $option */
+            /** @var ElementInterface $option */
             $optionText = $option->getText();
             $optionValue = trim($optionText, $this->trim);
             $value[] = $optionValue;
@@ -220,8 +221,8 @@ class MultiselectgrouplistElement extends MultiselectElement
             }
 
             $pathOptgroup = sprintf($this->parentOptgroup, $this->indent . $optionValue);
-            $optgroup = $this->_getWrappedElement()->byXPath($pathOptgroup);
-            $optgroupText = $optgroup->attribute('label');
+            $optgroup = $this->find($pathOptgroup, Locator::SELECTOR_XPATH);
+            $optgroupText = $optgroup->getAttribute('label');
             $optgroupValue = trim($optgroupText, $this->trim);
             $amountIndent = strlen($optgroupText) - strlen($optgroupValue);
             $amountIndent = $amountIndent ? ($amountIndent / strlen($this->indent)) : 0;
@@ -235,8 +236,8 @@ class MultiselectgrouplistElement extends MultiselectElement
             $indent = $amountIndent ? str_repeat($this->indent, $amountIndent) : '';
             $pathOptgroup .= sprintf($this->precedingOptgroup, $amountIndent * self::INDENT_LENGTH, $indent);
             while (0 <= $amountIndent && $this->find($pathOptgroup, Locator::SELECTOR_XPATH)->isVisible()) {
-                $optgroup = $this->_getWrappedElement()->byXPath($pathOptgroup);
-                $optgroupText = $optgroup->attribute('label');
+                $optgroup = $this->find($pathOptgroup, Locator::SELECTOR_XPATH);
+                $optgroupText = $optgroup->getAttribute('label');
                 $optgroupValue = trim($optgroupText, $this->trim);
                 $value[] = $optgroupValue;
 
@@ -254,7 +255,7 @@ class MultiselectgrouplistElement extends MultiselectElement
     /**
      * Get options
      *
-     * @return array
+     * @return ElementInterface[]
      */
     protected function getOptions()
     {
@@ -288,6 +289,7 @@ class MultiselectgrouplistElement extends MultiselectElement
             ++$countOptgroup;
             $optgroup = $this->find(sprintf($this->optgroupByNumber, $countOptgroup), Locator::SELECTOR_XPATH);
         }
+
         return $options;
     }
 
@@ -300,11 +302,11 @@ class MultiselectgrouplistElement extends MultiselectElement
     {
         $options = [];
         foreach ($this->getOptions() as $option) {
-            /** Element $option */
             if ($option->isSelected()) {
                 $options[] = $option;
             }
         }
+
         return $options;
     }
 }
diff --git a/dev/tests/functional/lib/Mtf/Client/Driver/Selenium/Element/MultiselectlistElement.php b/dev/tests/functional/lib/Magento/Mtf/Client/Element/MultiselectlistElement.php
similarity index 75%
rename from dev/tests/functional/lib/Mtf/Client/Driver/Selenium/Element/MultiselectlistElement.php
rename to dev/tests/functional/lib/Magento/Mtf/Client/Element/MultiselectlistElement.php
index df89e94d040387c4246671d87fb5e271081ded40..d5d4539e1b4e0c022f7d89d495118da02b31cf42 100644
--- a/dev/tests/functional/lib/Mtf/Client/Driver/Selenium/Element/MultiselectlistElement.php
+++ b/dev/tests/functional/lib/Magento/Mtf/Client/Element/MultiselectlistElement.php
@@ -4,10 +4,9 @@
  * See COPYING.txt for license details.
  */
 
-namespace Mtf\Client\Driver\Selenium\Element;
+namespace Magento\Mtf\Client\Element;
 
-use Mtf\Client\Driver\Selenium\Element;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Typified element class for  Multiple Select List elements
@@ -28,21 +27,6 @@ class MultiselectlistElement extends MultiselectElement
      */
     protected $optionCheckedElement = './/*[contains(@class, "mselect-checked")]/following-sibling::span';
 
-    /**
-     * Return Wrapped Element.
-     * If element was not created before:
-     * 1. Context is defined. If context was not passed to constructor - test case (all page) is taken as context
-     * 2. Attempt to get selenium element is performed in loop
-     * that is terminated if element is found or after timeout set in configuration
-     *
-     * @param bool $waitForElementPresent
-     * @return \PHPUnit_Extensions_Selenium2TestCase_Element|\PHPUnit_Extensions_Selenium2TestCase_Element_Select
-     */
-    protected function _getWrappedElement($waitForElementPresent = true)
-    {
-        return Element::_getWrappedElement($waitForElementPresent);
-    }
-
     /**
      * Select options by values in multiple select list
      *
@@ -55,7 +39,7 @@ class MultiselectlistElement extends MultiselectElement
         $values = is_array($values) ? $values : [$values];
 
         foreach ($options as $option) {
-            /** @var Element $option */
+            /** @var \Magento\Mtf\Client\ElementInterface $option */
             $optionText = $option->getText();
             $isChecked = $option->find($this->optionCheckedElement, Locator::SELECTOR_XPATH)->isVisible();
             $inArray = in_array($optionText, $values);
@@ -76,7 +60,7 @@ class MultiselectlistElement extends MultiselectElement
         $options = $this->getOptions();
 
         foreach ($options as $option) {
-            /** @var Element $option */
+            /** @var \Magento\Mtf\Client\ElementInterface $option */
             $checkedOption = $option->find($this->optionCheckedElement, Locator::SELECTOR_XPATH);
             if ($checkedOption->isVisible()) {
                 $checkedOptions[] = $checkedOption->getText();
@@ -117,7 +101,7 @@ class MultiselectlistElement extends MultiselectElement
         $options = $this->getOptions();
 
         foreach ($options as $option) {
-            /** @var Element $option */
+            /** @var \Magento\Mtf\Client\ElementInterface $option */
             $optionsValue[] = $option->getText();
         }
 
diff --git a/dev/tests/functional/lib/Mtf/Client/Driver/Selenium/Element/MultisuggestElement.php b/dev/tests/functional/lib/Magento/Mtf/Client/Element/MultisuggestElement.php
similarity index 65%
rename from dev/tests/functional/lib/Mtf/Client/Driver/Selenium/Element/MultisuggestElement.php
rename to dev/tests/functional/lib/Magento/Mtf/Client/Element/MultisuggestElement.php
index d9a752f89798af8f76c9e24fb23e77c3f7ec9262..a2644d92930c429ef3aa16241e86a8f64fd0a7a8 100644
--- a/dev/tests/functional/lib/Mtf/Client/Driver/Selenium/Element/MultisuggestElement.php
+++ b/dev/tests/functional/lib/Magento/Mtf/Client/Element/MultisuggestElement.php
@@ -4,10 +4,9 @@
  * See COPYING.txt for license details.
  */
 
-namespace Mtf\Client\Driver\Selenium\Element;
+namespace Magento\Mtf\Client\Element;
 
-use Mtf\Client\Driver\Selenium\Element;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Typified element class for multi suggest element.
@@ -15,74 +14,73 @@ use Mtf\Client\Element\Locator;
 class MultisuggestElement extends SuggestElement
 {
     /**
-     * Selector list choice.
+     * Selector list choice
      *
      * @var string
      */
     protected $listChoice = './/ul[contains(@class,"mage-suggest-choices")]';
 
     /**
-     * Selector choice item.
+     * Selector choice item
      *
      * @var string
      */
     protected $choice = './/li/div[text()="%s"]/..';
 
     /**
-     * Selector choice value.
+     * Selector choice value
      *
      * @var string
      */
     protected $choiceValue = './/li[contains(@class,"mage-suggest-choice")]/div';
 
     /**
-     * Selector remove choice item.
+     * Selector remove choice item
      *
      * @var string
      */
     protected $choiceClose = '.mage-suggest-choice-close';
 
     /**
-     * Set value.
+     * Set value
      *
      * @param array|string $values
      * @return void
      */
     public function setValue($values)
     {
-        $this->_eventManager->dispatchEvent(['set_value'], [__METHOD__, $this->getAbsoluteSelector()]);
+        $this->eventManager->dispatchEvent(['set_value'], [__METHOD__, $this->getAbsoluteSelector()]);
 
         $this->clear();
         foreach ((array)$values as $value) {
             if (!$this->isChoice($value)) {
-                $this->selectWindow();
                 parent::setValue($value);
             }
         }
     }
 
     /**
-     * Get value.
+     * Get value
      *
      * @return array
      */
     public function getValue()
     {
-        $this->_eventManager->dispatchEvent(['get_value'], [(string) $this->_locator]);
+        $this->eventManager->dispatchEvent(['get_value'], [(string) $this->getAbsoluteSelector()]);
 
         $listChoice = $this->find($this->listChoice, Locator::SELECTOR_XPATH);
-        $choices = $listChoice->find($this->choiceValue, Locator::SELECTOR_XPATH)->getElements();
+        $choices = $listChoice->getElements($this->choiceValue, Locator::SELECTOR_XPATH);
         $values = [];
 
         foreach ($choices as $choice) {
-            /** @var Element $choice */
+            /** @var \Magento\Mtf\Client\ElementInterface $choice */
             $values[] = $choice->getText();
         }
         return $values;
     }
 
     /**
-     * Check exist selected item.
+     * Check exist selected item
      *
      * @param string $value
      * @return bool
@@ -93,7 +91,7 @@ class MultisuggestElement extends SuggestElement
     }
 
     /**
-     * Clear element.
+     * Clear element
      *
      * @return void
      */
@@ -105,15 +103,4 @@ class MultisuggestElement extends SuggestElement
             $choiceClose = $this->find($this->choiceClose);
         }
     }
-
-    /**
-     * Select to last window.
-     *
-     * @return void
-     */
-    protected function selectWindow()
-    {
-        $windowHandles = $this->_driver->windowHandles();
-        $this->_driver->window(end($windowHandles));
-    }
 }
diff --git a/dev/tests/functional/lib/Magento/Mtf/Client/Element/OptgroupselectElement.php b/dev/tests/functional/lib/Magento/Mtf/Client/Element/OptgroupselectElement.php
new file mode 100644
index 0000000000000000000000000000000000000000..a8398f49316853599b3fd68b8a011f0b0e26efe7
--- /dev/null
+++ b/dev/tests/functional/lib/Magento/Mtf/Client/Element/OptgroupselectElement.php
@@ -0,0 +1,51 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+
+namespace Magento\Mtf\Client\Element;
+
+use Magento\Mtf\Client\Locator;
+
+/**
+ * Class OptgroupselectElement
+ * Typified element class for option group selectors
+ */
+class OptgroupselectElement extends SelectElement
+{
+    /**
+     * Option group selector
+     *
+     * @var string
+     */
+    protected $optGroup = 'optgroup[option[contains(.,"%s")]]';
+
+    /**
+     * Get the value of form element
+     *
+     * @return string
+     */
+    public function getValue()
+    {
+        $this->eventManager->dispatchEvent(['get_value'], [(string)$this->getAbsoluteSelector()]);
+        $selectedLabel = trim(parent::getValue());
+        $element = $this->find(sprintf($this->optGroup, $selectedLabel), Locator::SELECTOR_XPATH);
+        $value = trim($element->getAttribute('label'), chr(0xC2) . chr(0xA0));
+        $value .= '/' . $selectedLabel;
+        return $value;
+    }
+
+    /**
+     * Select value in dropdown which has option groups
+     *
+     * @param string $value
+     * @return void
+     */
+    public function setValue($value)
+    {
+        $this->eventManager->dispatchEvent(['set_value'], [__METHOD__, $this->getAbsoluteSelector()]);
+        list($group, $option) = explode('/', $value);
+        parent::setOptionGroupValue($group, $option);
+    }
+}
diff --git a/dev/tests/functional/lib/Magento/Mtf/Client/Element/SelectstoreElement.php b/dev/tests/functional/lib/Magento/Mtf/Client/Element/SelectstoreElement.php
new file mode 100644
index 0000000000000000000000000000000000000000..32d1b11119a75fb1252240d97a4c0d98056f739f
--- /dev/null
+++ b/dev/tests/functional/lib/Magento/Mtf/Client/Element/SelectstoreElement.php
@@ -0,0 +1,72 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+
+namespace Magento\Mtf\Client\Element;
+
+use Magento\Mtf\Client\Locator;
+
+/**
+ * Typified element class for option group selectors.
+ */
+class SelectstoreElement extends SelectElement
+{
+    /**
+     * Store option group selector.
+     *
+     * @var string
+     */
+    protected $storeGroup = 'optgroup[option[contains(.,"%s")]]';
+
+    /**
+     * Website option group selector.
+     *
+     * @var string
+     */
+    protected $website = 'optgroup[following-sibling::optgroup[option[contains(.,"%s")]]]';
+
+    /**
+     * Get the value of form element.
+     *
+     * @return string
+     */
+    public function getValue()
+    {
+        $selectedLabel = trim(parent::getValue());
+        $element = $this->find(sprintf($this->website, $selectedLabel), Locator::SELECTOR_XPATH);
+        $value = trim($element->getAttribute('label'));
+        $element = $this->find(sprintf($this->storeGroup, $selectedLabel), Locator::SELECTOR_XPATH);
+        $value .= '/' . trim($element->getAttribute('label'), chr(0xC2) . chr(0xA0));
+        $value .= '/' . $selectedLabel;
+        return $value;
+    }
+
+    /**
+     * Select value in dropdown which has option groups.
+     *
+     * @param string $value
+     * @throws \Exception
+     * @return void
+     */
+    public function setValue($value)
+    {
+        $pieces = explode('/', $value);
+
+        if (1 == count($pieces)) {
+            $optionLocator = './/option[contains(text(),"' . $pieces[0] . '")]';
+        } else {
+            $optionLocator = './/optgroup[contains(@label,"'
+                . $pieces[0] . '")]/following-sibling::optgroup[contains(@label,"'
+                . $pieces[1] . '")]/option[contains(text(), "'
+                . $pieces[2] . '")]';
+        }
+
+        $option = $this->context->find($optionLocator, Locator::SELECTOR_XPATH);
+        if (!$option->isVisible()) {
+            throw new \Exception('[' . implode('/', $pieces) . '] option is not visible in store switcher.');
+        }
+        $option->click();
+    }
+}
diff --git a/dev/tests/functional/lib/Mtf/Client/Driver/Selenium/Element/SuggestElement.php b/dev/tests/functional/lib/Magento/Mtf/Client/Element/SuggestElement.php
old mode 100755
new mode 100644
similarity index 65%
rename from dev/tests/functional/lib/Mtf/Client/Driver/Selenium/Element/SuggestElement.php
rename to dev/tests/functional/lib/Magento/Mtf/Client/Element/SuggestElement.php
index ae401e748be1260c382eb237cc102bbd812cc4b1..a44151e5a9829d8f32829b611e60188c0facbf2c
--- a/dev/tests/functional/lib/Mtf/Client/Driver/Selenium/Element/SuggestElement.php
+++ b/dev/tests/functional/lib/Magento/Mtf/Client/Element/SuggestElement.php
@@ -4,16 +4,15 @@
  * See COPYING.txt for license details.
  */
 
-namespace Mtf\Client\Driver\Selenium\Element;
+namespace Magento\Mtf\Client\Element;
 
-use Mtf\Client\Driver\Selenium\Element;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class SuggestElement
  * General class for suggest elements.
  */
-class SuggestElement extends Element
+class SuggestElement extends SimpleElement
 {
     /**
      * "Backspace" key code.
@@ -41,6 +40,13 @@ class SuggestElement extends Element
      */
     protected $resultItem = './/ul/li/a[text()="%s"]';
 
+    /**
+     * Suggest state loader
+     *
+     * @var string
+     */
+    protected $suggestStateLoader = '.mage-suggest-state-loading';
+
     /**
      * Set value
      *
@@ -49,12 +55,20 @@ class SuggestElement extends Element
      */
     public function setValue($value)
     {
-        $this->_eventManager->dispatchEvent(['set_value'], [__METHOD__, $this->getAbsoluteSelector()]);
+        $this->eventManager->dispatchEvent(['set_value'], [__METHOD__, $this->getAbsoluteSelector()]);
 
         $this->clear();
-        $this->find($this->suggest)->_getWrappedElement()->value($value);
-        $this->waitResult();
-        $this->find(sprintf($this->resultItem, $value), Locator::SELECTOR_XPATH)->click();
+        foreach (str_split($value) as $symbol) {
+            $input = $this->find($this->suggest);
+            $input->click();
+            $input->keys([$symbol]);
+            $this->waitResult();
+            $searchedItem = $this->find(sprintf($this->resultItem, $value), Locator::SELECTOR_XPATH);
+            if ($searchedItem->isVisible()) {
+                $searchedItem->click();
+                break;
+            }
+        }
     }
 
     /**
@@ -78,10 +92,11 @@ class SuggestElement extends Element
     public function waitResult()
     {
         $browser = $this;
-        $selector = $this->searchResult;
+        $selector = $this->suggestStateLoader;
         $browser->waitUntil(
             function () use ($browser, $selector) {
-                return $browser->find($selector)->isVisible() ? true : null;
+                $element = $browser->find($selector);
+                return $element->isVisible() == false ? true : null;
             }
         );
     }
@@ -93,7 +108,7 @@ class SuggestElement extends Element
      */
     public function getValue()
     {
-        $this->_eventManager->dispatchEvent(['get_value'], [(string)$this->_locator]);
+        $this->eventManager->dispatchEvent(['get_value'], [__METHOD__, $this->getAbsoluteSelector()]);
 
         return $this->find($this->suggest)->getValue();
     }
@@ -113,6 +128,7 @@ class SuggestElement extends Element
         if (!$searchResult->isVisible()) {
             return false;
         }
+
         return $searchResult->find(sprintf($this->resultItem, $value), Locator::SELECTOR_XPATH)->isVisible();
     }
 }
diff --git a/dev/tests/functional/lib/Mtf/Client/Driver/Selenium/Element/Tree.php b/dev/tests/functional/lib/Magento/Mtf/Client/Element/Tree.php
similarity index 80%
rename from dev/tests/functional/lib/Mtf/Client/Driver/Selenium/Element/Tree.php
rename to dev/tests/functional/lib/Magento/Mtf/Client/Element/Tree.php
index d017dd2efd165d76f3fced6f056471d3a0832bfc..00c3d41ffe2bca015596392b0b6a30616fc1da9a 100644
--- a/dev/tests/functional/lib/Mtf/Client/Driver/Selenium/Element/Tree.php
+++ b/dev/tests/functional/lib/Magento/Mtf/Client/Element/Tree.php
@@ -4,18 +4,15 @@
  * See COPYING.txt for license details.
  */
 
-namespace Mtf\Client\Driver\Selenium\Element;
+namespace Magento\Mtf\Client\Element;
 
-use Mtf\Client\Driver\Selenium\Element;
-use Mtf\Client\Element as ElementInterface;
+use Magento\Mtf\Client\ElementInterface;
 
 /**
  * Class Tree
  * General class for tree elements. Holds general implementation of methods, which overrides in child classes.
- *
- * @package Mtf\Client\Driver\Selenium\Element
  */
-abstract class Tree extends Element
+abstract class Tree extends SimpleElement
 {
     /**
      * Css class for finding tree nodes
@@ -44,27 +41,26 @@ abstract class Tree extends Element
     abstract public function getStructure();
 
     /**
-     * Drag'n'drop method is not accessible in this class.
-     * Throws exception if used.
+     * Drag and drop element to(between) another element(s)
      *
      * @param ElementInterface $target
-     * @throws \BadMethodCallException
+     * @throws \Exception
      * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function dragAndDrop(ElementInterface $target)
     {
-        throw new \BadMethodCallException('Not applicable for this class of elements (TreeElement)');
+        throw new \Exception('Not applicable for this class of elements (TreeElement)');
     }
 
     /**
      * getValue method is not accessible in this class.
      * Throws exception if used.
      *
-     * @throws \BadMethodCallException
+     * @throws \Exception
      */
     public function getValue()
     {
-        throw new \BadMethodCallException('Not applicable for this class of elements (TreeElement)');
+        throw new \Exception('Not applicable for this class of elements (TreeElement)');
     }
 
     /**
@@ -72,12 +68,12 @@ abstract class Tree extends Element
      * Throws exception if used.
      *
      * @param array $keys
-     * @throws \BadMethodCallException
+     * @throws \Exception
      * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function keys(array $keys)
     {
-        throw new \BadMethodCallException('Not applicable for this class of elements (TreeElement)');
+        throw new \Exception('Not applicable for this class of elements (TreeElement)');
     }
 
     /**
@@ -99,6 +95,7 @@ abstract class Tree extends Element
             ++$pathChunkCounter;
         }
         if ($structureChunk) {
+            /** @var ElementInterface $needleElement */
             $needleElement = $structureChunk->find($this->nodeName);
             $needleElement->click();
         } else {
@@ -112,7 +109,7 @@ abstract class Tree extends Element
      *
      * @param string $pathChunk
      * @param array $structureChunk
-     * @return array|Element||false
+     * @return array|ElementInterface|false
      */
     protected function deep($pathChunk, $structureChunk)
     {
@@ -124,17 +121,18 @@ abstract class Tree extends Element
                 }
             }
         }
+
         return false;
     }
 
     /**
      *  Recursive walks tree
      *
-     * @param Element $node
+     * @param ElementInterface $node
      * @param string $parentCssClass
      * @return array
      */
-    protected function _getNodeContent($node, $parentCssClass)
+    protected function _getNodeContent(ElementInterface $node, $parentCssClass)
     {
         $nodeArray = [];
         $nodeList = [];
@@ -148,7 +146,7 @@ abstract class Tree extends Element
         }
         //Write to array values of current node
         foreach ($nodeList as $currentNode) {
-            /** @var Element $currentNode */
+            /** @var ElementInterface $currentNode */
             $nodesNames = $currentNode->find($this->nodeName);
             $nodesContents = $currentNode->find($this->nodeCssClass);
             $text = ltrim($nodesNames->getText());
@@ -156,9 +154,10 @@ abstract class Tree extends Element
                 'name' => $text,
                 'element' => $currentNode,
                 'subnodes' => $nodesContents->isVisible() ?
-                        $this->_getNodeContent($nodesContents, $this->nodeCssClass) : null,
+                    $this->_getNodeContent($nodesContents, $this->nodeCssClass) : null,
             ];
         }
+
         return $nodeArray;
     }
 }
diff --git a/dev/tests/functional/lib/Mtf/Client/Driver/Selenium/Element/TreeElement.php b/dev/tests/functional/lib/Magento/Mtf/Client/Element/TreeElement.php
similarity index 94%
rename from dev/tests/functional/lib/Mtf/Client/Driver/Selenium/Element/TreeElement.php
rename to dev/tests/functional/lib/Magento/Mtf/Client/Element/TreeElement.php
index d373a6de315daeff05eb5e093104a11ed375985a..09995686b04c96c3dd4378b3ec3bb93eb2d23780 100644
--- a/dev/tests/functional/lib/Mtf/Client/Driver/Selenium/Element/TreeElement.php
+++ b/dev/tests/functional/lib/Magento/Mtf/Client/Element/TreeElement.php
@@ -4,12 +4,11 @@
  * See COPYING.txt for license details.
  */
 
-namespace Mtf\Client\Driver\Selenium\Element;
+namespace Magento\Mtf\Client\Element;
 
 /**
  * Class TreeElement
  * Typified element class for Tree elements
- *
  */
 class TreeElement extends Tree
 {
diff --git a/dev/tests/functional/lib/Mtf/Constraint/AbstractAssertForm.php b/dev/tests/functional/lib/Magento/Mtf/Constraint/AbstractAssertForm.php
old mode 100755
new mode 100644
similarity index 99%
rename from dev/tests/functional/lib/Mtf/Constraint/AbstractAssertForm.php
rename to dev/tests/functional/lib/Magento/Mtf/Constraint/AbstractAssertForm.php
index e6b0d60d131644719acaab483e79171625cb2dc2..a26ff55f584f007b927d78636cc12d1f171c7bcb
--- a/dev/tests/functional/lib/Mtf/Constraint/AbstractAssertForm.php
+++ b/dev/tests/functional/lib/Magento/Mtf/Constraint/AbstractAssertForm.php
@@ -4,7 +4,7 @@
  * See COPYING.txt for license details.
  */
 
-namespace Mtf\Constraint;
+namespace Magento\Mtf\Constraint;
 
 /**
  * Class AssertForm
diff --git a/dev/tests/functional/lib/Mtf/EntryPoint/EntryPoint.php b/dev/tests/functional/lib/Magento/Mtf/EntryPoint/EntryPoint.php
similarity index 91%
rename from dev/tests/functional/lib/Mtf/EntryPoint/EntryPoint.php
rename to dev/tests/functional/lib/Magento/Mtf/EntryPoint/EntryPoint.php
index f991ae7b6b159533ac5206e1af9956f5dfb8c207..701897c456230df2b680c45b78491657e6531d27 100644
--- a/dev/tests/functional/lib/Mtf/EntryPoint/EntryPoint.php
+++ b/dev/tests/functional/lib/Magento/Mtf/EntryPoint/EntryPoint.php
@@ -4,9 +4,9 @@
  * See COPYING.txt for license details.
  */
 
-namespace Mtf\EntryPoint;
+namespace Magento\Mtf\EntryPoint;
 
-use Mtf\ObjectManager;
+use Magento\Mtf\ObjectManager;
 
 /**
  * Class EntryPoint
@@ -60,7 +60,7 @@ class EntryPoint
     {
         try {
             if (!$this->_locator) {
-                $locatorFactory = new \Mtf\ObjectManagerFactory();
+                $locatorFactory = new \Magento\Mtf\ObjectManagerFactory();
                 $this->_locator = $locatorFactory->create();
             }
             return $this->_locator->create($applicationName, $arguments)->launch();
diff --git a/dev/tests/functional/lib/Mtf/ObjectManagerFactory.php b/dev/tests/functional/lib/Magento/Mtf/ObjectManagerFactory.php
similarity index 54%
rename from dev/tests/functional/lib/Mtf/ObjectManagerFactory.php
rename to dev/tests/functional/lib/Magento/Mtf/ObjectManagerFactory.php
index f54535f9278a3e811aa837becb2f80e9390f4b0e..9811a2e9f844b0f99839fca83713f7fd3c5043e8 100644
--- a/dev/tests/functional/lib/Mtf/ObjectManagerFactory.php
+++ b/dev/tests/functional/lib/Magento/Mtf/ObjectManagerFactory.php
@@ -4,13 +4,11 @@
  * See COPYING.txt for license details.
  */
 
-namespace Mtf;
+namespace Magento\Mtf;
 
-use Magento\Framework\App\Filesystem\DirectoryList;
-use Magento\Framework\ObjectManagerInterface as MagentoObjectManager;
-use Magento\Framework\Stdlib\BooleanUtils;
-use Mtf\ObjectManager\Factory;
-use Mtf\System\Config as SystemConfig;
+use Magento\Mtf\ObjectManagerInterface as MagentoObjectManager;
+use Magento\Mtf\Stdlib\BooleanUtils;
+use Magento\Mtf\ObjectManager\Factory;
 
 /**
  * Class ObjectManagerFactory
@@ -25,14 +23,14 @@ class ObjectManagerFactory
      *
      * @var string
      */
-    protected $locatorClassName = '\Mtf\ObjectManager';
+    protected $locatorClassName = '\Magento\Mtf\ObjectManager';
 
     /**
      * DI Config class name
      *
      * @var string
      */
-    protected $configClassName = '\Mtf\ObjectManager\Config';
+    protected $configClassName = '\Magento\Mtf\ObjectManager\Config';
 
     /**
      * Create Object Manager
@@ -42,26 +40,19 @@ class ObjectManagerFactory
      */
     public function create(array $sharedInstances = [])
     {
-        if (!defined('MTF_BP')) {
-            $basePath = str_replace('\\', '/', dirname(dirname(__DIR__)));
-            define('MTF_BP', $basePath);
-        }
         if (!defined('MTF_TESTS_PATH')) {
             define('MTF_TESTS_PATH', MTF_BP . '/tests/app/');
         }
         if (!defined('MTF_STATES_PATH')) {
-            define('MTF_STATES_PATH', MTF_BP . '/lib/Mtf/App/State/');
+            define('MTF_STATES_PATH', MTF_BP . '/lib/Magento/Mtf/App/State/');
         }
 
         $diConfig = new $this->configClassName();
-        $systemConfig = new SystemConfig();
-        $configuration = $systemConfig->getConfigParam();
-        $diConfig->extend($configuration);
         $factory = new Factory($diConfig);
         $argInterpreter = $this->createArgumentInterpreter(new BooleanUtils());
-        $argumentMapper = new \Magento\Framework\ObjectManager\Config\Mapper\Dom($argInterpreter);
+        $argumentMapper = new \Magento\Mtf\ObjectManager\Config\Mapper\Dom($argInterpreter);
 
-        $sharedInstances['Magento\Framework\ObjectManager\Config\Mapper\Dom'] = $argumentMapper;
+        $sharedInstances['Magento\Mtf\ObjectManager\Config\Mapper\Dom'] = $argumentMapper;
         $objectManager = new $this->locatorClassName($factory, $diConfig, $sharedInstances);
 
         $factory->setObjectManager($objectManager);
@@ -83,38 +74,39 @@ class ObjectManagerFactory
         \Magento\Framework\App\Filesystem\DirectoryList $directoryList,
         array $arguments
     ) {
+        $data = isset($arguments[\Magento\Framework\App\Arguments\Loader::PARAM_CUSTOM_FILE])
+            ? $arguments[\Magento\Framework\App\Arguments\Loader::PARAM_CUSTOM_FILE]
+            : null;
         return new \Magento\Framework\App\DeploymentConfig(
             new \Magento\Framework\App\DeploymentConfig\Reader($directoryList),
-            isset($arguments[\Magento\Framework\App\Arguments\Loader::PARAM_CUSTOM_FILE])
-            ? $arguments[\Magento\Framework\App\Arguments\Loader::PARAM_CUSTOM_FILE]
-            : null
+            $data
         );
     }
 
     /**
      * Return newly created instance on an argument interpreter, suitable for processing DI arguments
      *
-     * @param \Magento\Framework\Stdlib\BooleanUtils $booleanUtils
-     * @return \Magento\Framework\Data\Argument\InterpreterInterface
+     * @param \Magento\Mtf\Stdlib\BooleanUtils $booleanUtils
+     * @return \Magento\Mtf\Data\Argument\InterpreterInterface
      */
     protected function createArgumentInterpreter(
-        \Magento\Framework\Stdlib\BooleanUtils $booleanUtils
+        \Magento\Mtf\Stdlib\BooleanUtils $booleanUtils
     ) {
-        $constInterpreter = new \Magento\Framework\Data\Argument\Interpreter\Constant();
-        $result = new \Magento\Framework\Data\Argument\Interpreter\Composite(
+        $constInterpreter = new \Magento\Mtf\Data\Argument\Interpreter\Constant();
+        $result = new \Magento\Mtf\Data\Argument\Interpreter\Composite(
             [
-                'boolean' => new \Magento\Framework\Data\Argument\Interpreter\Boolean($booleanUtils),
-                'string' => new \Magento\Framework\Data\Argument\Interpreter\String($booleanUtils),
-                'number' => new \Magento\Framework\Data\Argument\Interpreter\Number(),
-                'null' => new \Magento\Framework\Data\Argument\Interpreter\NullType(),
+                'boolean' => new \Magento\Mtf\Data\Argument\Interpreter\Boolean($booleanUtils),
+                'string' => new \Magento\Mtf\Data\Argument\Interpreter\String($booleanUtils),
+                'number' => new \Magento\Mtf\Data\Argument\Interpreter\Number(),
+                'null' => new \Magento\Mtf\Data\Argument\Interpreter\NullType(),
                 'const' => $constInterpreter,
-                'object' => new \Magento\Framework\Data\Argument\Interpreter\Object($booleanUtils),
-                'init_parameter' => new \Magento\Framework\App\Arguments\ArgumentInterpreter($constInterpreter),
+                'object' => new \Magento\Mtf\Data\Argument\Interpreter\Object($booleanUtils),
+                'init_parameter' => new \Magento\Mtf\Data\Argument\Interpreter\Argument($constInterpreter),
             ],
-            \Magento\Framework\ObjectManager\Config\Reader\Dom::TYPE_ATTRIBUTE
+            \Magento\Mtf\ObjectManager\Config\Reader\Dom::TYPE_ATTRIBUTE
         );
         // Add interpreters that reference the composite
-        $result->addInterpreter('array', new \Magento\Framework\Data\Argument\Interpreter\ArrayType($result));
+        $result->addInterpreter('array', new \Magento\Mtf\Data\Argument\Interpreter\ArrayType($result));
         return $result;
     }
 
@@ -142,19 +134,19 @@ class ObjectManagerFactory
     public static function configure(MagentoObjectManager $objectManager)
     {
         $objectManager->configure(
-            $objectManager->get('Mtf\ObjectManager\ConfigLoader\Primary')->load()
+            $objectManager->get('Magento\Mtf\ObjectManager\ConfigLoader\Primary')->load()
         );
 
         $objectManager->configure(
-            $objectManager->get('Mtf\ObjectManager\ConfigLoader\Module')->load()
+            $objectManager->get('Magento\Mtf\ObjectManager\ConfigLoader\Module')->load()
         );
 
         $objectManager->configure(
-            $objectManager->get('Mtf\ObjectManager\ConfigLoader\Module')->load('etc/ui')
+            $objectManager->get('Magento\Mtf\ObjectManager\ConfigLoader\Module')->load('etc/ui')
         );
 
         $objectManager->configure(
-            $objectManager->get('Mtf\ObjectManager\ConfigLoader\Module')->load('etc/curl')
+            $objectManager->get('Magento\Mtf\ObjectManager\ConfigLoader\Module')->load('etc/curl')
         );
     }
 }
diff --git a/dev/tests/functional/lib/Mtf/Page/BackendPage.php b/dev/tests/functional/lib/Magento/Mtf/Page/BackendPage.php
similarity index 91%
rename from dev/tests/functional/lib/Mtf/Page/BackendPage.php
rename to dev/tests/functional/lib/Magento/Mtf/Page/BackendPage.php
index 47999dd68527526e15df5a99b241f686a8de8d2b..e5b6c09f905383cb25fd2875245fc6100fd9f87d 100644
--- a/dev/tests/functional/lib/Mtf/Page/BackendPage.php
+++ b/dev/tests/functional/lib/Magento/Mtf/Page/BackendPage.php
@@ -3,9 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Mtf\Page;
+namespace Magento\Mtf\Page;
 
-use Mtf\Factory\Factory;
+use Magento\Mtf\Factory\Factory;
 
 /**
  * Class BackendPage
diff --git a/dev/tests/functional/lib/Mtf/Util/Generate/Factory.php b/dev/tests/functional/lib/Magento/Mtf/Util/Generate/Factory.php
similarity index 97%
rename from dev/tests/functional/lib/Mtf/Util/Generate/Factory.php
rename to dev/tests/functional/lib/Magento/Mtf/Util/Generate/Factory.php
index 5f87958798dadf6b3cc7ebdbb35972e38f869918..6083b509f9a72918d0be626a24997dcc22b8b663 100644
--- a/dev/tests/functional/lib/Mtf/Util/Generate/Factory.php
+++ b/dev/tests/functional/lib/Magento/Mtf/Util/Generate/Factory.php
@@ -4,7 +4,7 @@
  * See COPYING.txt for license details.
  */
 
-namespace Mtf\Util\Generate;
+namespace Magento\Mtf\Util\Generate;
 
 use Magento\Framework\App;
 use Magento\Framework\ObjectManagerInterface;
diff --git a/dev/tests/functional/lib/Mtf/Util/Generate/Factory/AbstractFactory.php b/dev/tests/functional/lib/Magento/Mtf/Util/Generate/Factory/AbstractFactory.php
similarity index 94%
rename from dev/tests/functional/lib/Mtf/Util/Generate/Factory/AbstractFactory.php
rename to dev/tests/functional/lib/Magento/Mtf/Util/Generate/Factory/AbstractFactory.php
index 5239975f965d3dc63d61b8595f90d867b02f54b4..df7b6c873c5397623e97c7067041c0ac0222b347 100644
--- a/dev/tests/functional/lib/Mtf/Util/Generate/Factory/AbstractFactory.php
+++ b/dev/tests/functional/lib/Magento/Mtf/Util/Generate/Factory/AbstractFactory.php
@@ -5,7 +5,7 @@
  * See COPYING.txt for license details.
  */
 
-namespace Mtf\Util\Generate\Factory;
+namespace Magento\Mtf\Util\Generate\Factory;
 
 /**
  * Class AbstractFactory
@@ -37,7 +37,7 @@ abstract class AbstractFactory
 
         $this->endFactory($this->type);
 
-        \Mtf\Util\Generate\GenerateResult::addResult($this->type, $this->cnt);
+        \Magento\Mtf\Util\Generate\GenerateResult::addResult($this->type, $this->cnt);
     }
 
     abstract protected function generateContent();
@@ -50,15 +50,15 @@ abstract class AbstractFactory
     protected function startFactory($type)
     {
         $this->factoryContent = "<?php\n\n";
-        $this->factoryContent .= "namespace Mtf\\{$type}; \n\n";
-        $this->factoryContent .= "use Mtf\\Fixture\\FixtureInterface; \n\n";
+        $this->factoryContent .= "namespace Magento\Mtf\\{$type}; \n\n";
+        $this->factoryContent .= "use Magento\Mtf\\Fixture\\FixtureInterface; \n\n";
         $this->factoryContent .= "class {$type}FactoryDeprecated\n";
         $this->factoryContent .= "{\n";
 
         $this->factoryContent .= "    /**
      * Object Manager
      *
-     * @var \\Mtf\\ObjectManager
+     * @var \\Magento\Mtf\\ObjectManager
      */
     protected \$objectManager;
 
@@ -68,7 +68,7 @@ abstract class AbstractFactory
      */
     public function __construct()
     {
-        \$this->objectManager = \\Mtf\\ObjectManager::getInstance();
+        \$this->objectManager = \\Magento\Mtf\\ObjectManager::getInstance();
     }\n";
     }
 
@@ -85,11 +85,11 @@ abstract class AbstractFactory
             return $this;
         }
 
-        $this->checkAndCreateFolder(MTF_BP . "/generated/Mtf/{$type}");
+        $this->checkAndCreateFolder(MTF_BP . "/generated/Magento/Mtf/{$type}");
 
         $this->factoryContent .= "}\n";
 
-        $file = MTF_BP . "/generated/Mtf/{$type}/{$type}FactoryDeprecated.php";
+        $file = MTF_BP . "/generated/Magento/Mtf/{$type}/{$type}FactoryDeprecated.php";
         if (false === file_put_contents($file, $this->factoryContent)) {
             throw new \RuntimeException("Can't write content to {$file} file");
         }
diff --git a/dev/tests/functional/lib/Mtf/Util/Generate/Factory/Block.php b/dev/tests/functional/lib/Magento/Mtf/Util/Generate/Factory/Block.php
similarity index 97%
rename from dev/tests/functional/lib/Mtf/Util/Generate/Factory/Block.php
rename to dev/tests/functional/lib/Magento/Mtf/Util/Generate/Factory/Block.php
index 24bdbf29f8a28b3bf2618cc5d79cfe82f360aca8..b564d6aca69dc246797e28702771ad643b6c90ab 100644
--- a/dev/tests/functional/lib/Mtf/Util/Generate/Factory/Block.php
+++ b/dev/tests/functional/lib/Magento/Mtf/Util/Generate/Factory/Block.php
@@ -5,7 +5,7 @@
  * See COPYING.txt for license details.
  */
 
-namespace Mtf\Util\Generate\Factory;
+namespace Magento\Mtf\Util\Generate\Factory;
 
 /**
  * Class Block
diff --git a/dev/tests/functional/lib/Mtf/Util/Generate/Factory/Fixture.php b/dev/tests/functional/lib/Magento/Mtf/Util/Generate/Factory/Fixture.php
similarity index 97%
rename from dev/tests/functional/lib/Mtf/Util/Generate/Factory/Fixture.php
rename to dev/tests/functional/lib/Magento/Mtf/Util/Generate/Factory/Fixture.php
index 1d9425f68e16d5f4c8ac31e4bc9ae170bbc438a7..174a17a271875b41f30c9527f2c459859977f016 100644
--- a/dev/tests/functional/lib/Mtf/Util/Generate/Factory/Fixture.php
+++ b/dev/tests/functional/lib/Magento/Mtf/Util/Generate/Factory/Fixture.php
@@ -5,7 +5,7 @@
  * See COPYING.txt for license details.
  */
 
-namespace Mtf\Util\Generate\Factory;
+namespace Magento\Mtf\Util\Generate\Factory;
 
 /**
  * Class Fixture
diff --git a/dev/tests/functional/lib/Mtf/Util/Generate/Factory/Handler.php b/dev/tests/functional/lib/Magento/Mtf/Util/Generate/Factory/Handler.php
similarity index 98%
rename from dev/tests/functional/lib/Mtf/Util/Generate/Factory/Handler.php
rename to dev/tests/functional/lib/Magento/Mtf/Util/Generate/Factory/Handler.php
index c8c0b42a3e530c91a704992e4a46011ab65b65db..2dbced547a606e1fe6d77b2c64b35e44cc5bacd7 100644
--- a/dev/tests/functional/lib/Mtf/Util/Generate/Factory/Handler.php
+++ b/dev/tests/functional/lib/Magento/Mtf/Util/Generate/Factory/Handler.php
@@ -5,7 +5,7 @@
  * See COPYING.txt for license details.
  */
 
-namespace Mtf\Util\Generate\Factory;
+namespace Magento\Mtf\Util\Generate\Factory;
 
 /**
  * Class Handler
diff --git a/dev/tests/functional/lib/Mtf/Util/Generate/Factory/Page.php b/dev/tests/functional/lib/Magento/Mtf/Util/Generate/Factory/Page.php
similarity index 97%
rename from dev/tests/functional/lib/Mtf/Util/Generate/Factory/Page.php
rename to dev/tests/functional/lib/Magento/Mtf/Util/Generate/Factory/Page.php
index b557cb15d2e8c8b28c4b1cef1880f2bb08a8b611..c1cb6f22762be2cd5da35ed33c425a71fe2e9aab 100644
--- a/dev/tests/functional/lib/Mtf/Util/Generate/Factory/Page.php
+++ b/dev/tests/functional/lib/Magento/Mtf/Util/Generate/Factory/Page.php
@@ -5,7 +5,7 @@
  * See COPYING.txt for license details.
  */
 
-namespace Mtf\Util\Generate\Factory;
+namespace Magento\Mtf\Util\Generate\Factory;
 
 /**
  * Class Page
diff --git a/dev/tests/functional/lib/Mtf/Util/Generate/Factory/Repository.php b/dev/tests/functional/lib/Magento/Mtf/Util/Generate/Factory/Repository.php
similarity index 97%
rename from dev/tests/functional/lib/Mtf/Util/Generate/Factory/Repository.php
rename to dev/tests/functional/lib/Magento/Mtf/Util/Generate/Factory/Repository.php
index ea6f30c9c8a5ba8037898d4f658797ada85e2c2c..79facfdcb13f3c839f394f3ddd6dd1a244de7d04 100644
--- a/dev/tests/functional/lib/Mtf/Util/Generate/Factory/Repository.php
+++ b/dev/tests/functional/lib/Magento/Mtf/Util/Generate/Factory/Repository.php
@@ -5,7 +5,7 @@
  * See COPYING.txt for license details.
  */
 
-namespace Mtf\Util\Generate\Factory;
+namespace Magento\Mtf\Util\Generate\Factory;
 
 /**
  * Class Repository
diff --git a/dev/tests/functional/lib/Mtf/Util/Generate/Fixture/FieldsProvider.php b/dev/tests/functional/lib/Magento/Mtf/Util/Generate/Fixture/FieldsProvider.php
similarity index 98%
rename from dev/tests/functional/lib/Mtf/Util/Generate/Fixture/FieldsProvider.php
rename to dev/tests/functional/lib/Magento/Mtf/Util/Generate/Fixture/FieldsProvider.php
index b0ae3b9eade06d0a31dd31c4e5925e917c8f3343..fa8923f4ba0158403f86ebe4b5672e623471b259 100644
--- a/dev/tests/functional/lib/Mtf/Util/Generate/Fixture/FieldsProvider.php
+++ b/dev/tests/functional/lib/Magento/Mtf/Util/Generate/Fixture/FieldsProvider.php
@@ -4,7 +4,7 @@
  * See COPYING.txt for license details.
  */
 
-namespace Mtf\Util\Generate\Fixture;
+namespace Magento\Mtf\Util\Generate\Fixture;
 
 use Magento\Framework\App\Resource;
 use Magento\Framework\ObjectManagerInterface;
diff --git a/dev/tests/functional/lib/Mtf/Util/Generate/Repository/CollectionProvider.php b/dev/tests/functional/lib/Magento/Mtf/Util/Generate/Repository/CollectionProvider.php
similarity index 95%
rename from dev/tests/functional/lib/Mtf/Util/Generate/Repository/CollectionProvider.php
rename to dev/tests/functional/lib/Magento/Mtf/Util/Generate/Repository/CollectionProvider.php
index 5088d06530b63b90faa8fc6937756a88ecb7d339..a02df91cb8a3d07f41f7f214f8a5541b65d9579c 100644
--- a/dev/tests/functional/lib/Mtf/Util/Generate/Repository/CollectionProvider.php
+++ b/dev/tests/functional/lib/Magento/Mtf/Util/Generate/Repository/CollectionProvider.php
@@ -4,7 +4,7 @@
  * See COPYING.txt for license details.
  */
 
-namespace Mtf\Util\Generate\Repository;
+namespace Magento\Mtf\Util\Generate\Repository;
 
 use Magento\Framework\ObjectManagerInterface;
 
@@ -69,7 +69,7 @@ class CollectionProvider implements CollectionProviderInterface
     {
         $collection = $fixture['collection'];
         $collection = $this->objectManager->create($collection, ['fixture' => $fixture]);
-        /** @var $collection \Mtf\Util\Generate\Repository\TableCollection */
+        /** @var $collection \Magento\Mtf\Util\Generate\Repository\TableCollection */
         return $collection->getItems();
     }
 
diff --git a/dev/tests/functional/lib/Mtf/Util/Generate/Repository/Resource.php b/dev/tests/functional/lib/Magento/Mtf/Util/Generate/Repository/Resource.php
similarity index 95%
rename from dev/tests/functional/lib/Mtf/Util/Generate/Repository/Resource.php
rename to dev/tests/functional/lib/Magento/Mtf/Util/Generate/Repository/Resource.php
index 3df60fd5bc9abac7c2299a9d0010c8d882035510..f366bbc74009cee589f3ba1043a4846dbd054994 100644
--- a/dev/tests/functional/lib/Mtf/Util/Generate/Repository/Resource.php
+++ b/dev/tests/functional/lib/Magento/Mtf/Util/Generate/Repository/Resource.php
@@ -4,7 +4,7 @@
  * See COPYING.txt for license details.
  */
 
-namespace Mtf\Util\Generate\Repository;
+namespace Magento\Mtf\Util\Generate\Repository;
 
 /**
  * Class Resource
diff --git a/dev/tests/functional/lib/Mtf/Util/Generate/Repository/TableCollection.php b/dev/tests/functional/lib/Magento/Mtf/Util/Generate/Repository/TableCollection.php
similarity index 89%
rename from dev/tests/functional/lib/Mtf/Util/Generate/Repository/TableCollection.php
rename to dev/tests/functional/lib/Magento/Mtf/Util/Generate/Repository/TableCollection.php
index 35d36c1a0510682b9586cfc4a69f298c9c3a633f..9c4ed81e91f72451e9be3ed67a824181b0f4c1b4 100644
--- a/dev/tests/functional/lib/Mtf/Util/Generate/Repository/TableCollection.php
+++ b/dev/tests/functional/lib/Magento/Mtf/Util/Generate/Repository/TableCollection.php
@@ -4,7 +4,7 @@
  * See COPYING.txt for license details.
  */
 
-namespace Mtf\Util\Generate\Repository;
+namespace Magento\Mtf\Util\Generate\Repository;
 
 use Magento\Framework\Model\Resource\Db\Collection\AbstractCollection;
 
@@ -39,7 +39,7 @@ class TableCollection extends AbstractCollection
         array $fixture = []
     ) {
         $this->setModel('Magento\Framework\Object');
-        $this->setResourceModel('Mtf\Util\Generate\Repository\Resource');
+        $this->setResourceModel('Magento\Mtf\Util\Generate\Repository\Resource');
 
         $resource = $this->getResource();
         $resource->setFixture($fixture);
@@ -50,7 +50,7 @@ class TableCollection extends AbstractCollection
     /**
      * Get resource instance
      *
-     * @return \Mtf\Util\Generate\Repository\Resource
+     * @return \Magento\Mtf\Util\Generate\Repository\Resource
      */
     public function getResource()
     {
diff --git a/dev/tests/functional/lib/Mtf/Util/Protocol/CurlInterface.php b/dev/tests/functional/lib/Magento/Mtf/Util/Protocol/CurlInterface.php
similarity index 96%
rename from dev/tests/functional/lib/Mtf/Util/Protocol/CurlInterface.php
rename to dev/tests/functional/lib/Magento/Mtf/Util/Protocol/CurlInterface.php
index f3233d88817ad930fc19cbc068e5776558589e4b..63a53a84e1ca877e2a4d5017a6a8d5890eafc76a 100644
--- a/dev/tests/functional/lib/Mtf/Util/Protocol/CurlInterface.php
+++ b/dev/tests/functional/lib/Magento/Mtf/Util/Protocol/CurlInterface.php
@@ -5,7 +5,7 @@
  * See COPYING.txt for license details.
  */
 
-namespace Mtf\Util\Protocol;
+namespace Magento\Mtf\Util\Protocol;
 
 /**
  * Class CurlInterface
diff --git a/dev/tests/functional/lib/Mtf/Util/Protocol/CurlTransport.php b/dev/tests/functional/lib/Magento/Mtf/Util/Protocol/CurlTransport.php
similarity index 99%
rename from dev/tests/functional/lib/Mtf/Util/Protocol/CurlTransport.php
rename to dev/tests/functional/lib/Magento/Mtf/Util/Protocol/CurlTransport.php
index 9d1ccb866174851fa358ca68e8cf2379043c5da2..30c20908ed75cba5c20ac4a440f78d9f21c3ed80 100644
--- a/dev/tests/functional/lib/Mtf/Util/Protocol/CurlTransport.php
+++ b/dev/tests/functional/lib/Magento/Mtf/Util/Protocol/CurlTransport.php
@@ -5,7 +5,7 @@
  * See COPYING.txt for license details.
  */
 
-namespace Mtf\Util\Protocol;
+namespace Magento\Mtf\Util\Protocol;
 
 /**
  * HTTP CURL Adapter
diff --git a/dev/tests/functional/lib/Mtf/Util/Protocol/CurlTransport/BackendDecorator.php b/dev/tests/functional/lib/Magento/Mtf/Util/Protocol/CurlTransport/BackendDecorator.php
similarity index 95%
rename from dev/tests/functional/lib/Mtf/Util/Protocol/CurlTransport/BackendDecorator.php
rename to dev/tests/functional/lib/Magento/Mtf/Util/Protocol/CurlTransport/BackendDecorator.php
index a255547319ac928ca72cf44b6d349fba161d2aa5..5705d52766dc96dccb6c4e2ecd75dd727365bcb6 100644
--- a/dev/tests/functional/lib/Mtf/Util/Protocol/CurlTransport/BackendDecorator.php
+++ b/dev/tests/functional/lib/Magento/Mtf/Util/Protocol/CurlTransport/BackendDecorator.php
@@ -4,11 +4,11 @@
  * See COPYING.txt for license details.
  */
 
-namespace Mtf\Util\Protocol\CurlTransport;
+namespace Magento\Mtf\Util\Protocol\CurlTransport;
 
-use Mtf\System\Config;
-use Mtf\Util\Protocol\CurlInterface;
-use Mtf\Util\Protocol\CurlTransport;
+use Magento\Mtf\System\Config;
+use Magento\Mtf\Util\Protocol\CurlInterface;
+use Magento\Mtf\Util\Protocol\CurlTransport;
 
 /**
  * Class BackendDecorator
diff --git a/dev/tests/functional/lib/Mtf/Util/Protocol/CurlTransport/FrontendDecorator.php b/dev/tests/functional/lib/Magento/Mtf/Util/Protocol/CurlTransport/FrontendDecorator.php
similarity index 96%
rename from dev/tests/functional/lib/Mtf/Util/Protocol/CurlTransport/FrontendDecorator.php
rename to dev/tests/functional/lib/Magento/Mtf/Util/Protocol/CurlTransport/FrontendDecorator.php
index fbd0aa152d17535a33c47efc188115e4008fda86..97b29483cbac799935092aee03786fc8d92c8e3f 100644
--- a/dev/tests/functional/lib/Mtf/Util/Protocol/CurlTransport/FrontendDecorator.php
+++ b/dev/tests/functional/lib/Magento/Mtf/Util/Protocol/CurlTransport/FrontendDecorator.php
@@ -4,11 +4,11 @@
  * See COPYING.txt for license details.
  */
 
-namespace Mtf\Util\Protocol\CurlTransport;
+namespace Magento\Mtf\Util\Protocol\CurlTransport;
 
 use Magento\Customer\Test\Fixture\CustomerInjectable;
-use Mtf\Util\Protocol\CurlInterface;
-use Mtf\Util\Protocol\CurlTransport;
+use Magento\Mtf\Util\Protocol\CurlInterface;
+use Magento\Mtf\Util\Protocol\CurlTransport;
 
 /**
  * Class FrontendDecorator
diff --git a/dev/tests/functional/lib/Mtf/Util/Protocol/SoapTransport.php b/dev/tests/functional/lib/Magento/Mtf/Util/Protocol/SoapTransport.php
similarity index 97%
rename from dev/tests/functional/lib/Mtf/Util/Protocol/SoapTransport.php
rename to dev/tests/functional/lib/Magento/Mtf/Util/Protocol/SoapTransport.php
index 943a45b9801f62ef4d68cb1627200c1d164ce9f6..8ddeb74e4cd4dcad29b7a9ac9ad39e3a8d0a3e46 100644
--- a/dev/tests/functional/lib/Mtf/Util/Protocol/SoapTransport.php
+++ b/dev/tests/functional/lib/Magento/Mtf/Util/Protocol/SoapTransport.php
@@ -5,7 +5,7 @@
  * See COPYING.txt for license details.
  */
 
-namespace Mtf\Util\Protocol;
+namespace Magento\Mtf\Util\Protocol;
 
 class SoapTransport
 {
diff --git a/dev/tests/functional/lib/Mtf/Client/Driver/Selenium/Element/OptgroupselectElement.php b/dev/tests/functional/lib/Mtf/Client/Driver/Selenium/Element/OptgroupselectElement.php
deleted file mode 100644
index 76a9091ad17a936582bdeb38161a700a163c70b7..0000000000000000000000000000000000000000
--- a/dev/tests/functional/lib/Mtf/Client/Driver/Selenium/Element/OptgroupselectElement.php
+++ /dev/null
@@ -1,56 +0,0 @@
-<?php
-/**
- * Copyright © 2015 Magento. All rights reserved.
- * See COPYING.txt for license details.
- */
-
-namespace Mtf\Client\Driver\Selenium\Element;
-
-use Mtf\Client\Driver\Selenium\Element;
-
-/**
- * Class OptgroupselectElement
- * Typified element class for option group selectors
- */
-class OptgroupselectElement extends SelectElement
-{
-    /**
-     * Option group selector
-     *
-     * @var string
-     */
-    protected $optGroup = 'optgroup[option[contains(.,"%s")]]';
-
-    /**
-     * Get the value of form element
-     *
-     * @return string
-     */
-    public function getValue()
-    {
-        $this->_eventManager->dispatchEvent(['get_value'], [(string)$this->_locator]);
-        $selectedLabel = trim($this->_getWrappedElement()->selectedLabel());
-        $value = trim(
-            $this->_getWrappedElement()->byXPath(sprintf($this->optGroup, $selectedLabel))->attribute('label'),
-            chr(0xC2) . chr(0xA0)
-        );
-        $value .= '/' . $selectedLabel;
-        return $value;
-    }
-
-    /**
-     * Select value in dropdown which has option groups
-     *
-     * @param string $value
-     * @return void
-     */
-    public function setValue($value)
-    {
-        $this->_eventManager->dispatchEvent(['set_value'], [__METHOD__, $this->getAbsoluteSelector()]);
-        list($group, $option) = explode('/', $value);
-        $optionLocator = ".//optgroup[@label='$group']/option[contains(text(), '$option')]";
-        $criteria = new \PHPUnit_Extensions_Selenium2TestCase_ElementCriteria('xpath');
-        $criteria->value($optionLocator);
-        $this->_getWrappedElement(true)->selectOptionByCriteria($criteria);
-    }
-}
diff --git a/dev/tests/functional/lib/Mtf/Client/Driver/Selenium/Element/SelectstoreElement.php b/dev/tests/functional/lib/Mtf/Client/Driver/Selenium/Element/SelectstoreElement.php
deleted file mode 100644
index 11ef727f77a1997d94c678aee8b0b6bdc4b08d35..0000000000000000000000000000000000000000
--- a/dev/tests/functional/lib/Mtf/Client/Driver/Selenium/Element/SelectstoreElement.php
+++ /dev/null
@@ -1,71 +0,0 @@
-<?php
-/**
- * Copyright © 2015 Magento. All rights reserved.
- * See COPYING.txt for license details.
- */
-
-namespace Mtf\Client\Driver\Selenium\Element;
-
-use Mtf\Client\Driver\Selenium\Element;
-use Mtf\Client\Element\Locator;
-
-/**
- * Class SelectstoreElement
- * Typified element class for option group selectors
- */
-class SelectstoreElement extends SelectElement
-{
-    /**
-     * Store option group selector
-     *
-     * @var string
-     */
-    protected $storeGroup = 'optgroup[option[contains(.,"%s")]]';
-
-    /**
-     * Website option group selector
-     *
-     * @var string
-     */
-    protected $website = 'optgroup[following-sibling::optgroup[option[contains(.,"%s")]]]';
-
-    /**
-     * Get the value of form element
-     *
-     * @return string
-     */
-    public function getValue()
-    {
-        $selectedLabel = trim($this->_getWrappedElement()->selectedLabel());
-        $value = trim(
-            $this->_getWrappedElement()->byXPath(sprintf($this->website, $selectedLabel))->attribute('label')
-        );
-        $value .= '/' . trim(
-            $this->_getWrappedElement()->byXPath(sprintf($this->storeGroup, $selectedLabel))->attribute('label'),
-            chr(0xC2) . chr(0xA0)
-        );
-        $value .= '/' . $selectedLabel;
-        return $value;
-    }
-
-    /**
-     * Select value in dropdown which has option groups
-     *
-     * @param string $value
-     * @throws \Exception
-     * @return void
-     */
-    public function setValue($value)
-    {
-        $group = explode('/', $value);
-        $optionLocator = './/optgroup[contains(@label,"'
-            . $group[0] . '")]/following-sibling::optgroup[contains(@label,"'
-            . $group[1] . '")]/option[contains(text(), "'
-            . $group[2] . '")]';
-        $option = $this->_context->find($optionLocator, Locator::SELECTOR_XPATH);
-        if (!$option->isVisible()) {
-            throw new \Exception('[' . implode('/', $value) . '] option is not visible in store switcher.');
-        }
-        $option->click();
-    }
-}
diff --git a/dev/tests/functional/phpunit.xml.dist b/dev/tests/functional/phpunit.xml.dist
index 8ad3f8fbcc1f86758773a1039aff4ce7ee2e39b2..1bc47ba8998a80e915e08c384657b5aa9280ab34 100755
--- a/dev/tests/functional/phpunit.xml.dist
+++ b/dev/tests/functional/phpunit.xml.dist
@@ -19,14 +19,14 @@
     </testsuites>
 
     <listeners>
-        <listener class="Mtf\System\Browser\Listener" />
-        <listener class="Mtf\System\Isolation\Listener">
+        <listener class="Magento\Mtf\System\Browser\Listener" />
+        <listener class="Magento\Mtf\System\Isolation\Listener">
             <arguments>
-                <object class="Mtf\System\Isolation\Driver\Base" />
+                <object class="Magento\Mtf\System\Isolation\Driver\Base" />
             </arguments>
         </listener>
-        <listener class="Mtf\System\Event\StateListener" />
-        <listener class="Mtf\System\JUnit"/>
+        <listener class="Magento\Mtf\System\Event\StateListener" />
+        <listener class="Magento\Mtf\System\JUnit"/>
     </listeners>
 
     <php>
@@ -36,7 +36,9 @@
         <env name="server_config_path" value="config/server.yml.dist" />
         <env name="isolation_config_path" value="config/isolation.yml.dist" />
         <env name="handlers_config_path" value="config/handler.yml.dist" />
-        <env name="configuration:Mtf/TestSuite/InjectableTests" value="basic" />
+        <env name="install_config_path" value="config/install_data.yml.dist" />
+        <env name="testsuite_rule" value="basic" />
+        <env name="testsuite_rule_path" value="Mtf/TestSuite/InjectableTests" />
         <env name="log_directory" value="var/log" />
         <env name="events_preset" value="base" />
         <env name="module_whitelist" value="Magento_Install" />
diff --git a/dev/tests/functional/tests/app/Magento/Backend/Test/Block/Admin/Login.php b/dev/tests/functional/tests/app/Magento/Backend/Test/Block/Admin/Login.php
index 3ba5eb506099636c07abb9de216797a11a844ad9..54f750ceeec48e8fd45c0ae8682793d0e9d8ad6e 100644
--- a/dev/tests/functional/tests/app/Magento/Backend/Test/Block/Admin/Login.php
+++ b/dev/tests/functional/tests/app/Magento/Backend/Test/Block/Admin/Login.php
@@ -6,8 +6,8 @@
 
 namespace Magento\Backend\Test\Block\Admin;
 
-use Mtf\Block\Form;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Form;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class Login
diff --git a/dev/tests/functional/tests/app/Magento/Backend/Test/Block/Cache.php b/dev/tests/functional/tests/app/Magento/Backend/Test/Block/Cache.php
index 6918b92ae9c6738f491555fe221c2415f1083761..c25eac6454d23fcb9ef9b754ce91b03a5a185219 100644
--- a/dev/tests/functional/tests/app/Magento/Backend/Test/Block/Cache.php
+++ b/dev/tests/functional/tests/app/Magento/Backend/Test/Block/Cache.php
@@ -6,9 +6,9 @@
 
 namespace Magento\Backend\Test\Block;
 
-use Mtf\Block\Block;
-use Mtf\Client\Element\Locator;
-use Mtf\Factory\Factory;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Factory\Factory;
 
 /**
  * Class Actions
@@ -62,7 +62,7 @@ class Cache extends Block
     public function flushCacheStorage()
     {
         $this->_rootElement->find($this->flushCacheStorageButton)->click();
-        $this->_rootElement->acceptAlert();
+        $this->browser->acceptAlert();
     }
 
     /**
diff --git a/dev/tests/functional/tests/app/Magento/Backend/Test/Block/Denied.php b/dev/tests/functional/tests/app/Magento/Backend/Test/Block/Denied.php
index 551202c18d02bad4fc413ab37aac9dc86813bbc6..c74b042f76f692054a37e72643d22bc243a12388 100644
--- a/dev/tests/functional/tests/app/Magento/Backend/Test/Block/Denied.php
+++ b/dev/tests/functional/tests/app/Magento/Backend/Test/Block/Denied.php
@@ -6,8 +6,8 @@
 
 namespace Magento\Backend\Test\Block;
 
-use Mtf\Block\Block;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class Denied
diff --git a/dev/tests/functional/tests/app/Magento/Backend/Test/Block/FormPageActions.php b/dev/tests/functional/tests/app/Magento/Backend/Test/Block/FormPageActions.php
index 4d8abcfd1fa582a2621f93caca4d05315b8bc3fe..246c3113a8d176f05a2b226aab70d056f2effe50 100644
--- a/dev/tests/functional/tests/app/Magento/Backend/Test/Block/FormPageActions.php
+++ b/dev/tests/functional/tests/app/Magento/Backend/Test/Block/FormPageActions.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Backend\Test\Block;
 
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class FormPageActions
@@ -110,7 +110,7 @@ class FormPageActions extends PageActions
     public function delete()
     {
         $this->_rootElement->find($this->deleteButton)->click();
-        $this->_rootElement->acceptAlert();
+        $this->browser->acceptAlert();
     }
 
     /**
@@ -131,6 +131,7 @@ class FormPageActions extends PageActions
      */
     protected function waitBeforeClick()
     {
+        time_nanosleep(0, 600000000);
         usleep(500000);
     }
 }
diff --git a/dev/tests/functional/tests/app/Magento/Backend/Test/Block/Menu.php b/dev/tests/functional/tests/app/Magento/Backend/Test/Block/Menu.php
index 4f3aee6105530b2b531064be9b94e631c3d2a97b..23cd977b4c224ee95bb258281367bed61673c8a6 100644
--- a/dev/tests/functional/tests/app/Magento/Backend/Test/Block/Menu.php
+++ b/dev/tests/functional/tests/app/Magento/Backend/Test/Block/Menu.php
@@ -6,7 +6,7 @@
  */
 namespace Magento\Backend\Test\Block;
 
-use Mtf\Block\Block;
+use Magento\Mtf\Block\Block;
 
 /**
  * Class Menu
diff --git a/dev/tests/functional/tests/app/Magento/Backend/Test/Block/Page/Header.php b/dev/tests/functional/tests/app/Magento/Backend/Test/Block/Page/Header.php
index b9732c73c2adb69c30b44ff3952c206dd1717ab6..94b36cc6a95ea6c8e46707c102c7fa3ac70aa0d5 100644
--- a/dev/tests/functional/tests/app/Magento/Backend/Test/Block/Page/Header.php
+++ b/dev/tests/functional/tests/app/Magento/Backend/Test/Block/Page/Header.php
@@ -6,9 +6,9 @@
 
 namespace Magento\Backend\Test\Block\Page;
 
-use Mtf\Block\Block;
-use Mtf\Client\Driver\Selenium\Element\GlobalsearchElement;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Client\Element\GlobalsearchElement;
 
 /**
  * Header block.
diff --git a/dev/tests/functional/tests/app/Magento/Backend/Test/Block/Page/Main.php b/dev/tests/functional/tests/app/Magento/Backend/Test/Block/Page/Main.php
index da9b8ec3376c12b242d4a95d2e3516093d88ac2a..9de2cdc43498326ae52a79eb41ebbf373ec6b4f6 100644
--- a/dev/tests/functional/tests/app/Magento/Backend/Test/Block/Page/Main.php
+++ b/dev/tests/functional/tests/app/Magento/Backend/Test/Block/Page/Main.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Backend\Test\Block\Page;
 
-use Mtf\Block\Block;
+use Magento\Mtf\Block\Block;
 
 /**
  * Main block.
diff --git a/dev/tests/functional/tests/app/Magento/Backend/Test/Block/PageActions.php b/dev/tests/functional/tests/app/Magento/Backend/Test/Block/PageActions.php
index 1f55b62de5327649731b80eaab6911eaa1ea2ed2..58e1d53e0cead0329d456c6b78f48a4092ee44d7 100644
--- a/dev/tests/functional/tests/app/Magento/Backend/Test/Block/PageActions.php
+++ b/dev/tests/functional/tests/app/Magento/Backend/Test/Block/PageActions.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Backend\Test\Block;
 
-use Mtf\Block\Block;
+use Magento\Mtf\Block\Block;
 
 /**
  * Class PageActions
diff --git a/dev/tests/functional/tests/app/Magento/Backend/Test/Block/System/Config/Form.php b/dev/tests/functional/tests/app/Magento/Backend/Test/Block/System/Config/Form.php
index 99ad6c7620eb68c716b9b515b0624a6ae40291a9..86ae1d8d66a067591d0fae2bed7b35c58f068663 100644
--- a/dev/tests/functional/tests/app/Magento/Backend/Test/Block/System/Config/Form.php
+++ b/dev/tests/functional/tests/app/Magento/Backend/Test/Block/System/Config/Form.php
@@ -7,9 +7,9 @@
  */
 namespace Magento\Backend\Test\Block\System\Config;
 
-use Mtf\Block\Block;
-use Mtf\Factory\Factory;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Factory\Factory;
+use Magento\Mtf\Client\Locator;
 
 class Form extends Block
 {
diff --git a/dev/tests/functional/tests/app/Magento/Backend/Test/Block/System/Config/Form/Group.php b/dev/tests/functional/tests/app/Magento/Backend/Test/Block/System/Config/Form/Group.php
index e168ce41053af7fd19ce5ff9b166801a12ac430b..0d3244802c70260eedce3ed996df9856c77a3057 100644
--- a/dev/tests/functional/tests/app/Magento/Backend/Test/Block/System/Config/Form/Group.php
+++ b/dev/tests/functional/tests/app/Magento/Backend/Test/Block/System/Config/Form/Group.php
@@ -8,9 +8,12 @@
 
 namespace Magento\Backend\Test\Block\System\Config\Form;
 
+use Magento\Mtf\Client\Locator;
 use Magento\Backend\Test\Block\Widget\Form;
-use Mtf\Client\Element;
 
+/**
+ * Class Group
+ */
 class Group extends Form
 {
     /**
@@ -67,14 +70,14 @@ class Group extends Form
 
         $element = $this->_rootElement->find(
             sprintf($this->element, $field),
-            Element\Locator::SELECTOR_XPATH,
+            Locator::SELECTOR_XPATH,
             $input
         );
 
         if ($element->isDisabled()) {
             $checkbox = $this->_rootElement->find(
                 sprintf($this->defaultCheckbox, $field),
-                Element\Locator::SELECTOR_XPATH,
+                Locator::SELECTOR_XPATH,
                 'checkbox'
             );
             $checkbox->setValue('No');
diff --git a/dev/tests/functional/tests/app/Magento/Backend/Test/Block/System/Config/PageActions.php b/dev/tests/functional/tests/app/Magento/Backend/Test/Block/System/Config/PageActions.php
index d416864fe1542bd886a42a96c3e8d3c29761e1cf..8ed2b6a7bfb7acdadf0b2fd106939052fb7de5d2 100644
--- a/dev/tests/functional/tests/app/Magento/Backend/Test/Block/System/Config/PageActions.php
+++ b/dev/tests/functional/tests/app/Magento/Backend/Test/Block/System/Config/PageActions.php
@@ -10,7 +10,7 @@ namespace Magento\Backend\Test\Block\System\Config;
 
 use Magento\Backend\Test\Block\FormPageActions as AbstractPageActions;
 use Magento\Store\Test\Fixture\Store;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class PageActions
@@ -35,7 +35,7 @@ class PageActions extends AbstractPageActions
     {
         $this->_rootElement->find($this->scopeSelector, Locator::SELECTOR_CSS, 'liselectstore')
             ->setValue($websiteScope);
-        $this->_rootElement->acceptAlert();
+        $this->browser->acceptAlert();
 
         return $this;
     }
diff --git a/dev/tests/functional/tests/app/Magento/Backend/Test/Block/System/Store/Delete/Form.php b/dev/tests/functional/tests/app/Magento/Backend/Test/Block/System/Store/Delete/Form.php
index cde30ce25ebddbf4d0dc6bc90150b256e7097254..ac3cce607228743746f8cec0237d349ed617b143 100644
--- a/dev/tests/functional/tests/app/Magento/Backend/Test/Block/System/Store/Delete/Form.php
+++ b/dev/tests/functional/tests/app/Magento/Backend/Test/Block/System/Store/Delete/Form.php
@@ -6,8 +6,8 @@
 
 namespace Magento\Backend\Test\Block\System\Store\Delete;
 
-use Mtf\Block\Form as AbstractForm;
-use Mtf\Client\Element;
+use Magento\Mtf\Client\Element\SimpleElement;
+use Magento\Mtf\Block\Form as AbstractForm;
 
 /**
  * Class Form
@@ -19,10 +19,10 @@ class Form extends AbstractForm
      * Fill Backup Option in delete
      *
      * @param array $data
-     * @param Element $element
+     * @param SimpleElement $element
      * @return void
      */
-    public function fillForm(array $data, Element $element = null)
+    public function fillForm(array $data, SimpleElement $element = null)
     {
         $mapping = $this->dataMapping($data);
         $this->_fill($mapping, $element);
diff --git a/dev/tests/functional/tests/app/Magento/Backend/Test/Block/System/Store/Edit/Form/GroupForm.php b/dev/tests/functional/tests/app/Magento/Backend/Test/Block/System/Store/Edit/Form/GroupForm.php
index a703a31bc2b576a79fe2b9c6ccb440b1ec6b1a6b..819e075dbe9ab87b9d92914cb6d2c9122d93a019 100644
--- a/dev/tests/functional/tests/app/Magento/Backend/Test/Block/System/Store/Edit/Form/GroupForm.php
+++ b/dev/tests/functional/tests/app/Magento/Backend/Test/Block/System/Store/Edit/Form/GroupForm.php
@@ -6,8 +6,8 @@
 
 namespace Magento\Backend\Test\Block\System\Store\Edit\Form;
 
-use Mtf\Block\Form;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Form;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class GroupForm
diff --git a/dev/tests/functional/tests/app/Magento/Backend/Test/Block/System/Store/Edit/Form/StoreForm.php b/dev/tests/functional/tests/app/Magento/Backend/Test/Block/System/Store/Edit/Form/StoreForm.php
index 2c7f54f9f6800badc784ea7d675359d892f60ef6..0d9824e284fb8b7c1326c7dbb0b985521bdd045a 100644
--- a/dev/tests/functional/tests/app/Magento/Backend/Test/Block/System/Store/Edit/Form/StoreForm.php
+++ b/dev/tests/functional/tests/app/Magento/Backend/Test/Block/System/Store/Edit/Form/StoreForm.php
@@ -6,8 +6,8 @@
 
 namespace Magento\Backend\Test\Block\System\Store\Edit\Form;
 
-use Mtf\Block\Form;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Form;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class StoreForm
diff --git a/dev/tests/functional/tests/app/Magento/Backend/Test/Block/System/Store/Edit/Form/WebsiteForm.php b/dev/tests/functional/tests/app/Magento/Backend/Test/Block/System/Store/Edit/Form/WebsiteForm.php
index 28a29b48688c50e85eadfca07094ec2c42cf3c27..cfbfa524c77c55fdebee79a250f7a30666e33688 100644
--- a/dev/tests/functional/tests/app/Magento/Backend/Test/Block/System/Store/Edit/Form/WebsiteForm.php
+++ b/dev/tests/functional/tests/app/Magento/Backend/Test/Block/System/Store/Edit/Form/WebsiteForm.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Backend\Test\Block\System\Store\Edit\Form;
 
-use Mtf\Block\Form;
+use Magento\Mtf\Block\Form;
 
 /**
  * Class WebsiteForm
diff --git a/dev/tests/functional/tests/app/Magento/Backend/Test/Block/System/Store/StoreGrid.php b/dev/tests/functional/tests/app/Magento/Backend/Test/Block/System/Store/StoreGrid.php
index b6c7817121d118b1777fc3d273c566dd30f05a90..f559e6130eca347c24b9db4dcd961d1f778a1c09 100644
--- a/dev/tests/functional/tests/app/Magento/Backend/Test/Block/System/Store/StoreGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Backend/Test/Block/System/Store/StoreGrid.php
@@ -10,7 +10,7 @@ use Magento\Backend\Test\Block\Widget\Grid as GridInterface;
 use Magento\Store\Test\Fixture\Store;
 use Magento\Store\Test\Fixture\StoreGroup;
 use Magento\Store\Test\Fixture\Website;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class StoreGrid
diff --git a/dev/tests/functional/tests/app/Magento/Backend/Test/Block/System/Variable/Edit/VariableForm.php b/dev/tests/functional/tests/app/Magento/Backend/Test/Block/System/Variable/Edit/VariableForm.php
index 0c3ad11e969ee626174b652671a6eafdc9677bc4..2b0c596f1f1e5e8541e5f8895f08b2fb1b6369e0 100644
--- a/dev/tests/functional/tests/app/Magento/Backend/Test/Block/System/Variable/Edit/VariableForm.php
+++ b/dev/tests/functional/tests/app/Magento/Backend/Test/Block/System/Variable/Edit/VariableForm.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Backend\Test\Block\System\Variable\Edit;
 
-use Mtf\Block\Form;
+use Magento\Mtf\Block\Form;
 
 /**
  * Class Form
diff --git a/dev/tests/functional/tests/app/Magento/Backend/Test/Block/Template.php b/dev/tests/functional/tests/app/Magento/Backend/Test/Block/Template.php
index 31b67b6b87330dde3e62f347f087a02328458293..5170a9b72ee00aeb4896c8e5dd4aa5e4361cd7c1 100644
--- a/dev/tests/functional/tests/app/Magento/Backend/Test/Block/Template.php
+++ b/dev/tests/functional/tests/app/Magento/Backend/Test/Block/Template.php
@@ -7,7 +7,7 @@
 
 namespace Magento\Backend\Test\Block;
 
-use Mtf\Block\Block;
+use Magento\Mtf\Block\Block;
 
 /**
  * Class Template
diff --git a/dev/tests/functional/tests/app/Magento/Backend/Test/Block/Widget/Form.php b/dev/tests/functional/tests/app/Magento/Backend/Test/Block/Widget/Form.php
index fe0aad5c9cdc69057d9f43e92826a5d67af7d80c..d57bd1aa4d78f8f9829b08857a27611793b1d462 100644
--- a/dev/tests/functional/tests/app/Magento/Backend/Test/Block/Widget/Form.php
+++ b/dev/tests/functional/tests/app/Magento/Backend/Test/Block/Widget/Form.php
@@ -7,10 +7,10 @@
 
 namespace Magento\Backend\Test\Block\Widget;
 
-use Mtf\Block\Form as FormInstance;
-use Mtf\Client\Element\Locator;
-use Mtf\Factory\Factory;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Block\Form as FormInstance;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Factory\Factory;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class Form
diff --git a/dev/tests/functional/tests/app/Magento/Backend/Test/Block/Widget/FormTabs.php b/dev/tests/functional/tests/app/Magento/Backend/Test/Block/Widget/FormTabs.php
index edf9d9de7e3b4325741121bef2939b85ef7f9d37..ad1e586f8b6e9a1686c14d00a5177c83e3e60ee5 100755
--- a/dev/tests/functional/tests/app/Magento/Backend/Test/Block/Widget/FormTabs.php
+++ b/dev/tests/functional/tests/app/Magento/Backend/Test/Block/Widget/FormTabs.php
@@ -6,15 +6,15 @@
 
 namespace Magento\Backend\Test\Block\Widget;
 
-use Mtf\Block\BlockFactory;
-use Mtf\Block\Mapper;
-use Mtf\Client\Driver\Selenium\Browser;
-use Mtf\Client\Element;
-use Mtf\Client\Element\Locator;
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Fixture\InjectableFixture;
-use Mtf\Util\Iterator\File;
-use Mtf\Util\XmlConverter;
+use Magento\Mtf\Block\BlockFactory;
+use Magento\Mtf\Block\Mapper;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Client\Element\SimpleElement;
+use Magento\Mtf\Util\Iterator\File;
+use Magento\Mtf\Util\XmlConverter;
 
 /**
  * Class FormTabs
@@ -44,18 +44,18 @@ class FormTabs extends Form
 
     /**
      * @constructor
-     * @param Element $element
+     * @param SimpleElement $element
      * @param Mapper $mapper
      * @param BlockFactory $blockFactory
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @param XmlConverter $xmlConverter
      * @param array $config
      */
     public function __construct(
-        Element $element,
+        SimpleElement $element,
         Mapper $mapper,
         BlockFactory $blockFactory,
-        Browser $browser,
+        BrowserInterface $browser,
         XmlConverter $xmlConverter,
         array $config = []
     ) {
@@ -102,10 +102,10 @@ class FormTabs extends Form
      * Fill form with tabs
      *
      * @param FixtureInterface $fixture
-     * @param Element|null $element
+     * @param SimpleElement|null $element
      * @return FormTabs
      */
-    public function fill(FixtureInterface $fixture, Element $element = null)
+    public function fill(FixtureInterface $fixture, SimpleElement $element = null)
     {
         $tabs = $this->getFieldsByTabs($fixture);
         return $this->fillTabs($tabs, $element);
@@ -115,10 +115,10 @@ class FormTabs extends Form
      * Fill specified form with tabs
      *
      * @param array $tabs
-     * @param Element|null $element
+     * @param SimpleElement|null $element
      * @return FormTabs
      */
-    protected function fillTabs(array $tabs, Element $element = null)
+    protected function fillTabs(array $tabs, SimpleElement $element = null)
     {
         $context = ($element === null) ? $this->_rootElement : $element;
         foreach ($tabs as $tabName => $tabFields) {
@@ -179,13 +179,13 @@ class FormTabs extends Form
      * Get data of the tabs
      *
      * @param FixtureInterface|null $fixture
-     * @param Element|null $element
+     * @param SimpleElement|null $element
      * @return array
      *
      * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
-    public function getData(FixtureInterface $fixture = null, Element $element = null)
+    public function getData(FixtureInterface $fixture = null, SimpleElement $element = null)
     {
         $data = [];
 
diff --git a/dev/tests/functional/tests/app/Magento/Backend/Test/Block/Widget/Grid.php b/dev/tests/functional/tests/app/Magento/Backend/Test/Block/Widget/Grid.php
index d4677523c25c1d31b80fab4e676b65d368fffb3d..3843da95b7b0a4e8cc43bb15ce5b0bd8db7db83a 100644
--- a/dev/tests/functional/tests/app/Magento/Backend/Test/Block/Widget/Grid.php
+++ b/dev/tests/functional/tests/app/Magento/Backend/Test/Block/Widget/Grid.php
@@ -6,10 +6,10 @@
 
 namespace Magento\Backend\Test\Block\Widget;
 
-use Mtf\Block\Block;
-use Mtf\Client\Element;
-use Mtf\Client\Element\Locator;
-use Mtf\Factory\Factory;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Client\Element\SimpleElement;
+use Magento\Mtf\Factory\Factory;
 
 /**
  * Abstract class Grid
@@ -243,7 +243,6 @@ abstract class Grid extends Block
         $this->prepareForSearch($filter);
         $this->_rootElement->find($this->searchButton, Locator::SELECTOR_CSS)->click();
         $this->waitLoader();
-        $this->reinitRootElement();
     }
 
     /**
@@ -323,7 +322,6 @@ abstract class Grid extends Block
         $this->openFilterBlock();
         $this->_rootElement->find($this->resetButton, Locator::SELECTOR_CSS)->click();
         $this->waitLoader();
-        $this->reinitRootElement();
     }
 
     /**
@@ -365,7 +363,7 @@ abstract class Grid extends Block
     {
         $this->_rootElement->find($this->massactionSubmit, Locator::SELECTOR_CSS)->click();
         if ($acceptAlert) {
-            $this->_rootElement->acceptAlert();
+            $this->browser->acceptAlert();
         }
     }
 
@@ -375,7 +373,7 @@ abstract class Grid extends Block
      * @param array $filter
      * @param bool $isSearchable
      * @param bool $isStrict
-     * @return Element
+     * @return SimpleElement
      */
     protected function getRow(array $filter, $isSearchable = true, $isStrict = true)
     {
@@ -406,7 +404,7 @@ abstract class Grid extends Block
     {
         $data = [];
         do {
-            $rows = $this->_rootElement->find($this->rowItem)->getElements();
+            $rows = $this->_rootElement->getElements($this->rowItem);
             foreach ($rows as $row) {
                 $rowData = [];
                 foreach ($columns as $columnName) {
@@ -448,7 +446,6 @@ abstract class Grid extends Block
             $sortBlock->click();
             $this->waitLoader();
         }
-        $this->reinitRootElement();
     }
 
     /**
diff --git a/dev/tests/functional/tests/app/Magento/Backend/Test/Block/Widget/Tab.php b/dev/tests/functional/tests/app/Magento/Backend/Test/Block/Widget/Tab.php
index 88bb906a8f582df3d960f1f69aa9bbe76d0f2e9f..a4f434313fc12b49c2088d85d8b7e9b33fe1b54a 100644
--- a/dev/tests/functional/tests/app/Magento/Backend/Test/Block/Widget/Tab.php
+++ b/dev/tests/functional/tests/app/Magento/Backend/Test/Block/Widget/Tab.php
@@ -6,9 +6,9 @@
 
 namespace Magento\Backend\Test\Block\Widget;
 
-use Mtf\Block\Form as AbstractForm;
-use Mtf\Client\Element;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Form as AbstractForm;
+use Magento\Mtf\Client\Element\SimpleElement;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class Tab
@@ -43,10 +43,10 @@ class Tab extends AbstractForm
      * Fill data to fields on tab
      *
      * @param array $fields
-     * @param Element|null $element
+     * @param SimpleElement|null $element
      * @return $this
      */
-    public function fillFormTab(array $fields, Element $element = null)
+    public function fillFormTab(array $fields, SimpleElement $element = null)
     {
         $data = $this->dataMapping($fields);
         $this->_fill($data, $element);
@@ -58,10 +58,10 @@ class Tab extends AbstractForm
      * Get data of tab
      *
      * @param array|null $fields
-     * @param Element|null $element
+     * @param SimpleElement|null $element
      * @return array
      */
-    public function getDataFormTab($fields = null, Element $element = null)
+    public function getDataFormTab($fields = null, SimpleElement $element = null)
     {
         $data = $this->dataMapping($fields);
         return $this->_getData($data, $element);
@@ -71,9 +71,9 @@ class Tab extends AbstractForm
      * Update data to fields on tab
      *
      * @param array $fields
-     * @param Element|null $element
+     * @param SimpleElement|null $element
      */
-    public function updateFormTab(array $fields, Element $element = null)
+    public function updateFormTab(array $fields, SimpleElement $element = null)
     {
         $this->fillFormTab($fields, $element);
     }
@@ -86,7 +86,7 @@ class Tab extends AbstractForm
     public function getJsErrors()
     {
         $data = [];
-        $elements = $this->_rootElement->find($this->mageErrorField, Locator::SELECTOR_XPATH)->getElements();
+        $elements = $this->_rootElement->getElements($this->mageErrorField, Locator::SELECTOR_XPATH);
         foreach ($elements as $element) {
             $error = $element->find($this->mageErrorText, Locator::SELECTOR_XPATH);
             if ($error->isVisible()) {
diff --git a/dev/tests/functional/tests/app/Magento/Backend/Test/Constraint/AssertGlobalSearchCustomerName.php b/dev/tests/functional/tests/app/Magento/Backend/Test/Constraint/AssertGlobalSearchCustomerName.php
index 999eb88ce4ef0b6cc5c33f36443c7dd2edfdd9ea..70e2cf29fb4ee0739026c568646626b704572741 100644
--- a/dev/tests/functional/tests/app/Magento/Backend/Test/Constraint/AssertGlobalSearchCustomerName.php
+++ b/dev/tests/functional/tests/app/Magento/Backend/Test/Constraint/AssertGlobalSearchCustomerName.php
@@ -8,7 +8,7 @@ namespace Magento\Backend\Test\Constraint;
 
 use Magento\Backend\Test\Fixture\GlobalSearch;
 use Magento\Backend\Test\Page\Adminhtml\Dashboard;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertGlobalSearchCustomerName
diff --git a/dev/tests/functional/tests/app/Magento/Backend/Test/Constraint/AssertGlobalSearchNoRecordsFound.php b/dev/tests/functional/tests/app/Magento/Backend/Test/Constraint/AssertGlobalSearchNoRecordsFound.php
index 8b14b75af7cfd924ad3f90e70ba0c622b876abf1..69a2652ce24c741b34e4f87311a4b0e951cadc5b 100644
--- a/dev/tests/functional/tests/app/Magento/Backend/Test/Constraint/AssertGlobalSearchNoRecordsFound.php
+++ b/dev/tests/functional/tests/app/Magento/Backend/Test/Constraint/AssertGlobalSearchNoRecordsFound.php
@@ -7,7 +7,7 @@
 namespace Magento\Backend\Test\Constraint;
 
 use Magento\Backend\Test\Page\Adminhtml\Dashboard;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertGlobalSearchNoRecordsFound
diff --git a/dev/tests/functional/tests/app/Magento/Backend/Test/Constraint/AssertGlobalSearchOrderId.php b/dev/tests/functional/tests/app/Magento/Backend/Test/Constraint/AssertGlobalSearchOrderId.php
index cc0af65d02874a206a7c6ff4ffb39173e2ce8ded..4f78438f27c5fee03415b598dd6c8315228a0805 100644
--- a/dev/tests/functional/tests/app/Magento/Backend/Test/Constraint/AssertGlobalSearchOrderId.php
+++ b/dev/tests/functional/tests/app/Magento/Backend/Test/Constraint/AssertGlobalSearchOrderId.php
@@ -8,7 +8,7 @@ namespace Magento\Backend\Test\Constraint;
 
 use Magento\Backend\Test\Fixture\GlobalSearch;
 use Magento\Backend\Test\Page\Adminhtml\Dashboard;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertGlobalSearchOrderId
diff --git a/dev/tests/functional/tests/app/Magento/Backend/Test/Constraint/AssertGlobalSearchProductName.php b/dev/tests/functional/tests/app/Magento/Backend/Test/Constraint/AssertGlobalSearchProductName.php
index 5c32c84fb1f9edb2c4d2d508325b7d682327a02f..4e477ff193cf26098a7d6168ea36ad443dac6dd5 100644
--- a/dev/tests/functional/tests/app/Magento/Backend/Test/Constraint/AssertGlobalSearchProductName.php
+++ b/dev/tests/functional/tests/app/Magento/Backend/Test/Constraint/AssertGlobalSearchProductName.php
@@ -9,7 +9,7 @@ namespace Magento\Backend\Test\Constraint;
 use Magento\Backend\Test\Fixture\GlobalSearch;
 use Magento\Backend\Test\Page\Adminhtml\Dashboard;
 use Magento\Sales\Test\Fixture\OrderInjectable;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertGlobalSearchProductName
diff --git a/dev/tests/functional/tests/app/Magento/Backend/Test/Fixture/Admin/SuperAdmin.php b/dev/tests/functional/tests/app/Magento/Backend/Test/Fixture/Admin/SuperAdmin.php
index 017da4d2aca591ca036dbbe37dac316cd60c64cd..2a519151087272f37a464675af3a59aa5a948539 100644
--- a/dev/tests/functional/tests/app/Magento/Backend/Test/Fixture/Admin/SuperAdmin.php
+++ b/dev/tests/functional/tests/app/Magento/Backend/Test/Fixture/Admin/SuperAdmin.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Backend\Test\Fixture\Admin;
 
-use Mtf\Fixture\DataFixture;
+use Magento\Mtf\Fixture\DataFixture;
 
 /**
  * Class SuperAdmin
diff --git a/dev/tests/functional/tests/app/Magento/Backend/Test/Fixture/Date.php b/dev/tests/functional/tests/app/Magento/Backend/Test/Fixture/Date.php
index e9f9c69db999dcb44c2f2d25b435d870ab8b1457..12c06f560e703348ad9aa6d13f3dac781d7dc53d 100644
--- a/dev/tests/functional/tests/app/Magento/Backend/Test/Fixture/Date.php
+++ b/dev/tests/functional/tests/app/Magento/Backend/Test/Fixture/Date.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Backend\Test\Fixture;
 
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class Date
diff --git a/dev/tests/functional/tests/app/Magento/Backend/Test/Fixture/GlobalSearch.php b/dev/tests/functional/tests/app/Magento/Backend/Test/Fixture/GlobalSearch.php
index a32966711b5094325fc654d72e730fde5159a134..d4f4890694a21961d660cf68c0677bfb48cb748f 100644
--- a/dev/tests/functional/tests/app/Magento/Backend/Test/Fixture/GlobalSearch.php
+++ b/dev/tests/functional/tests/app/Magento/Backend/Test/Fixture/GlobalSearch.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Backend\Test\Fixture;
 
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Class GlobalSearch
diff --git a/dev/tests/functional/tests/app/Magento/Backend/Test/Fixture/GlobalSearch/Query.php b/dev/tests/functional/tests/app/Magento/Backend/Test/Fixture/GlobalSearch/Query.php
index 2c7de34543506265378e076a1df0242a86af6f6a..3f14768fb4511a5233a1e4038d693bed751acd32 100644
--- a/dev/tests/functional/tests/app/Magento/Backend/Test/Fixture/GlobalSearch/Query.php
+++ b/dev/tests/functional/tests/app/Magento/Backend/Test/Fixture/GlobalSearch/Query.php
@@ -6,9 +6,9 @@
 
 namespace Magento\Backend\Test\Fixture\GlobalSearch;
 
-use Mtf\Fixture\FixtureFactory;
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Class Query
diff --git a/dev/tests/functional/tests/app/Magento/Backend/Test/Handler/Conditions.php b/dev/tests/functional/tests/app/Magento/Backend/Test/Handler/Conditions.php
index 527fa524e21bdd7c7cb1a2fd4d9fb96ef9b27d9f..ce80fa82d407470fe142e0fbc193579172363ba4 100644
--- a/dev/tests/functional/tests/app/Magento/Backend/Test/Handler/Conditions.php
+++ b/dev/tests/functional/tests/app/Magento/Backend/Test/Handler/Conditions.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Backend\Test\Handler;
 
-use Mtf\Handler\Curl;
+use Magento\Mtf\Handler\Curl;
 
 /**
  * Class Conditions
diff --git a/dev/tests/functional/tests/app/Magento/Backend/Test/Handler/Extractor.php b/dev/tests/functional/tests/app/Magento/Backend/Test/Handler/Extractor.php
index 9346e1203a5c83fa25dc320c190c65e1c08d150f..6e980ea374c9f49f781ee631dc51b2a45015c43a 100755
--- a/dev/tests/functional/tests/app/Magento/Backend/Test/Handler/Extractor.php
+++ b/dev/tests/functional/tests/app/Magento/Backend/Test/Handler/Extractor.php
@@ -7,10 +7,10 @@
 
 namespace Magento\Backend\Test\Handler;
 
-use Mtf\System\Config;
-use Mtf\Util\Protocol\CurlInterface;
-use Mtf\Util\Protocol\CurlTransport;
-use Mtf\Util\Protocol\CurlTransport\BackendDecorator;
+use Magento\Mtf\System\Config;
+use Magento\Mtf\Util\Protocol\CurlInterface;
+use Magento\Mtf\Util\Protocol\CurlTransport;
+use Magento\Mtf\Util\Protocol\CurlTransport\BackendDecorator;
 
 /**
  * Class Extractor
diff --git a/dev/tests/functional/tests/app/Magento/Backend/Test/Handler/Ui/LoginUser.php b/dev/tests/functional/tests/app/Magento/Backend/Test/Handler/Ui/LoginUser.php
index 7589e2bddd681c6babe4e4c10b42eca282ae5956..51cc5e3ab6f2fcfefb51b469432d86d5f4078c25 100644
--- a/dev/tests/functional/tests/app/Magento/Backend/Test/Handler/Ui/LoginUser.php
+++ b/dev/tests/functional/tests/app/Magento/Backend/Test/Handler/Ui/LoginUser.php
@@ -6,9 +6,9 @@
 
 namespace Magento\Backend\Test\Handler\Ui;
 
-use Mtf\Factory\Factory;
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Handler\Ui;
+use Magento\Mtf\Factory\Factory;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Handler\Ui;
 
 /**
  * Class LoginUser
diff --git a/dev/tests/functional/tests/app/Magento/Backend/Test/Handler/Ui/LogoutUser.php b/dev/tests/functional/tests/app/Magento/Backend/Test/Handler/Ui/LogoutUser.php
index e774b6dc7fd3882299a0da727a23dc6f721d4773..9ffe8a5665bf9dc7eaef69aefe1e43282dd85d98 100644
--- a/dev/tests/functional/tests/app/Magento/Backend/Test/Handler/Ui/LogoutUser.php
+++ b/dev/tests/functional/tests/app/Magento/Backend/Test/Handler/Ui/LogoutUser.php
@@ -7,9 +7,9 @@
 
 namespace Magento\Backend\Test\Handler\Ui;
 
-use Mtf\Factory\Factory;
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Handler\Ui;
+use Magento\Mtf\Factory\Factory;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Handler\Ui;
 
 /**
  * Class LogoutUser
diff --git a/dev/tests/functional/tests/app/Magento/Backend/Test/Page/AdminAuthLogin.php b/dev/tests/functional/tests/app/Magento/Backend/Test/Page/AdminAuthLogin.php
index 3215460fa6055d5c775b815cc29e0568d01625cb..c53ef25e6dc0a4a7dc930ed96849953f74d038a5 100644
--- a/dev/tests/functional/tests/app/Magento/Backend/Test/Page/AdminAuthLogin.php
+++ b/dev/tests/functional/tests/app/Magento/Backend/Test/Page/AdminAuthLogin.php
@@ -5,9 +5,9 @@
  */
 namespace Magento\Backend\Test\Page;
 
-use Mtf\Client\Element\Locator;
-use Mtf\Factory\Factory;
-use Mtf\Page\Page;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Factory\Factory;
+use Magento\Mtf\Page\Page;
 
 /**
  * Class AdminAuthLogin
diff --git a/dev/tests/functional/tests/app/Magento/Backup/Test/Constraint/AssertBackupInGrid.php b/dev/tests/functional/tests/app/Magento/Backup/Test/Constraint/AssertBackupInGrid.php
index 073ce6fcde77f96ab6ba484fc6dba5c15399754b..71c85156978498e81dbfdde4dc7124debef1ae4a 100644
--- a/dev/tests/functional/tests/app/Magento/Backup/Test/Constraint/AssertBackupInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Backup/Test/Constraint/AssertBackupInGrid.php
@@ -7,7 +7,7 @@
 namespace Magento\Backup\Test\Constraint;
 
 use Magento\Backup\Test\Page\Adminhtml\BackupIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertBackupInGrid
diff --git a/dev/tests/functional/tests/app/Magento/Bundle/Test/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle.php b/dev/tests/functional/tests/app/Magento/Bundle/Test/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle.php
index fb31b7e0db1528bda7449d96069aa6a398dd6014..12d9fc7f39ea1e69f119a213a66e1e9b94a03fd4 100644
--- a/dev/tests/functional/tests/app/Magento/Bundle/Test/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle.php
+++ b/dev/tests/functional/tests/app/Magento/Bundle/Test/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle.php
@@ -7,8 +7,9 @@
 namespace Magento\Bundle\Test\Block\Adminhtml\Catalog\Product\Edit\Tab;
 
 use Magento\Backend\Test\Block\Widget\Tab;
+use Magento\Mtf\Client\Element\SimpleElement;
 use Magento\Bundle\Test\Block\Adminhtml\Catalog\Product\Edit\Tab\Bundle\Option;
-use Mtf\Client\Element;
+use Magento\Mtf\Client\Element;
 
 /**
  * Class Bundle
@@ -55,10 +56,10 @@ class Bundle extends Tab
      * Fill bundle options
      *
      * @param array $fields
-     * @param Element|null $element
+     * @param SimpleElement|null $element
      * @return $this
      */
-    public function fillFormTab(array $fields, Element $element = null)
+    public function fillFormTab(array $fields, SimpleElement $element = null)
     {
         if (!isset($fields['bundle_selections'])) {
             return $this;
@@ -80,10 +81,10 @@ class Bundle extends Tab
      * Get data to fields on downloadable tab
      *
      * @param array|null $fields
-     * @param Element|null $element
+     * @param SimpleElement|null $element
      * @return array
      */
-    public function getDataFormTab($fields = null, Element $element = null)
+    public function getDataFormTab($fields = null, SimpleElement $element = null)
     {
         $newFields = [];
         if (!isset($fields['bundle_selections'])) {
diff --git a/dev/tests/functional/tests/app/Magento/Bundle/Test/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle/Option.php b/dev/tests/functional/tests/app/Magento/Bundle/Test/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle/Option.php
index 4aa699e98b36ad19e6c896402de869f8f450da26..b3286de48a5bd3a1fc50838887eb313e8d8408ed 100644
--- a/dev/tests/functional/tests/app/Magento/Bundle/Test/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle/Option.php
+++ b/dev/tests/functional/tests/app/Magento/Bundle/Test/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle/Option.php
@@ -8,9 +8,8 @@ namespace Magento\Bundle\Test\Block\Adminhtml\Catalog\Product\Edit\Tab\Bundle;
 
 use Magento\Bundle\Test\Block\Adminhtml\Catalog\Product\Edit\Tab\Bundle\Option\Search\Grid;
 use Magento\Bundle\Test\Block\Adminhtml\Catalog\Product\Edit\Tab\Bundle\Option\Selection;
-use Mtf\Block\Form;
-use Mtf\Client\Element;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Form;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class Option
@@ -92,9 +91,9 @@ class Option extends Form
     {
         $mapping = $this->dataMapping($fields);
         $this->_fill($mapping);
-        $selections = $this->_rootElement->find($this->removeSelection)->getElements();
+        $selections = $this->_rootElement->getElements($this->removeSelection);
         if (count($selections)) {
-            foreach ($selections as $itemSelection) {
+            foreach (array_reverse($selections) as $itemSelection) {
                 $itemSelection->click();
             }
         }
diff --git a/dev/tests/functional/tests/app/Magento/Bundle/Test/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle/Option/Selection.php b/dev/tests/functional/tests/app/Magento/Bundle/Test/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle/Option/Selection.php
index f7e96753e9e7eb2c05738860af221b0e47dbd0c8..5d213baa8b4b5707b0cdaa4d13b31ce32757363e 100644
--- a/dev/tests/functional/tests/app/Magento/Bundle/Test/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle/Option/Selection.php
+++ b/dev/tests/functional/tests/app/Magento/Bundle/Test/Block/Adminhtml/Catalog/Product/Edit/Tab/Bundle/Option/Selection.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Bundle\Test\Block\Adminhtml\Catalog\Product\Edit\Tab\Bundle\Option;
 
-use Mtf\Block\Form;
+use Magento\Mtf\Block\Form;
 
 /**
  * Class Selection
diff --git a/dev/tests/functional/tests/app/Magento/Bundle/Test/Block/Adminhtml/Product/Composite/Configure.php b/dev/tests/functional/tests/app/Magento/Bundle/Test/Block/Adminhtml/Product/Composite/Configure.php
index f34696966fd96f7ed0133603b3192249091995f6..af5173612c1aad9118fc66b92a2e924691a43674 100644
--- a/dev/tests/functional/tests/app/Magento/Bundle/Test/Block/Adminhtml/Product/Composite/Configure.php
+++ b/dev/tests/functional/tests/app/Magento/Bundle/Test/Block/Adminhtml/Product/Composite/Configure.php
@@ -7,7 +7,7 @@
 
 namespace Magento\Bundle\Test\Block\Adminhtml\Product\Composite;
 
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class Configure
diff --git a/dev/tests/functional/tests/app/Magento/Bundle/Test/Block/Adminhtml/Product/ProductForm.xml b/dev/tests/functional/tests/app/Magento/Bundle/Test/Block/Adminhtml/Product/ProductForm.xml
index 3da0b9ead0e0212d15b89e978c018936f73c2457..14d050f1be0f6f91710c859d445be184b11fc82a 100644
--- a/dev/tests/functional/tests/app/Magento/Bundle/Test/Block/Adminhtml/Product/ProductForm.xml
+++ b/dev/tests/functional/tests/app/Magento/Bundle/Test/Block/Adminhtml/Product/ProductForm.xml
@@ -7,7 +7,7 @@
 -->
 <tabs>
     <product-details>
-        <class>\Magento\Catalog\Test\Block\Adminhtml\Product\Edit\ProductTab</class>
+        <class>\Magento\Catalog\Test\Block\Adminhtml\Product\Edit\Tab\ProductDetails</class>
         <selector>#product_info_tabs_product-details</selector>
         <strategy>css selector</strategy>
         <wrapper>product</wrapper>
diff --git a/dev/tests/functional/tests/app/Magento/Bundle/Test/Block/Catalog/Product/View.php b/dev/tests/functional/tests/app/Magento/Bundle/Test/Block/Catalog/Product/View.php
index de4c47845b37033d56080fff5954a13812413e19..5f99ab3bce393aef59a3a5d46ad4e7ee77915d43 100644
--- a/dev/tests/functional/tests/app/Magento/Bundle/Test/Block/Catalog/Product/View.php
+++ b/dev/tests/functional/tests/app/Magento/Bundle/Test/Block/Catalog/Product/View.php
@@ -8,9 +8,9 @@ namespace Magento\Bundle\Test\Block\Catalog\Product;
 
 use Magento\Bundle\Test\Block\Catalog\Product\View\Type\Bundle;
 use Magento\Bundle\Test\Fixture\BundleProduct;
-use Mtf\Client\Element\Locator;
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Class View
@@ -70,7 +70,6 @@ class View extends \Magento\Catalog\Test\Block\Product\View
         $selector = $this->newsletterFormSelector;
         $this->browser->waitUntil(
             function () use ($browser, $selector) {
-                $this->reinitRootElement();
                 $element = $browser->find($selector);
                 return $element->isVisible() ? true : null;
             }
diff --git a/dev/tests/functional/tests/app/Magento/Bundle/Test/Block/Catalog/Product/View/Type/Bundle.php b/dev/tests/functional/tests/app/Magento/Bundle/Test/Block/Catalog/Product/View/Type/Bundle.php
index feb5b963ab896be79dfe1f413f5bee7f6a3b23eb..137eadb438b48f4addcdb229ca72df4c53e5fbd5 100644
--- a/dev/tests/functional/tests/app/Magento/Bundle/Test/Block/Catalog/Product/View/Type/Bundle.php
+++ b/dev/tests/functional/tests/app/Magento/Bundle/Test/Block/Catalog/Product/View/Type/Bundle.php
@@ -9,11 +9,12 @@ namespace Magento\Bundle\Test\Block\Catalog\Product\View\Type;
 use Magento\Bundle\Test\Fixture\Bundle as BundleDataFixture;
 use Magento\Bundle\Test\Fixture\BundleProduct;
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
-use Mtf\Block\Block;
-use Mtf\Client\Element;
-use Mtf\Client\Element\Locator;
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Fixture\InjectableFixture;
+use Magento\Bundle\Test\Block\Catalog\Product\View\Type\Option;
+use Magento\Mtf\Client\Element\SimpleElement;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Class Bundle
@@ -111,7 +112,7 @@ class Bundle extends Block
                 throw new \Exception("Can't find option: \"{$title}\"");
             }
 
-            /** @var Element $optionElement */
+            /** @var SimpleElement $optionElement */
             $optionElement = $listFormOptions[$title];
             $getTypeData = 'get' . $this->optionNameConvert($option['type']) . 'Data';
 
@@ -152,10 +153,10 @@ class Bundle extends Block
     /**
      * Get data of "Drop-down" option
      *
-     * @param Element $option
+     * @param SimpleElement $option
      * @return array
      */
-    protected function getDropdownData(Element $option)
+    protected function getDropdownData(SimpleElement $option)
     {
         $select = $option->find($this->selectOption, Locator::SELECTOR_XPATH, 'select');
         // Skip "Choose option ..."(option #1)
@@ -165,10 +166,10 @@ class Bundle extends Block
     /**
      * Get data of "Multiple select" option
      *
-     * @param Element $option
+     * @param SimpleElement $option
      * @return array
      */
-    protected function getMultipleselectData(Element $option)
+    protected function getMultipleselectData(SimpleElement $option)
     {
         $multiselect = $option->find($this->selectOption, Locator::SELECTOR_XPATH, 'multiselect');
         $data = $this->getSelectOptionsData($multiselect, 1);
@@ -184,13 +185,13 @@ class Bundle extends Block
     /**
      * Get data of "Radio buttons" option
      *
-     * @param Element $option
+     * @param SimpleElement $option
      * @return array
      */
-    protected function getRadiobuttonsData(Element $option)
+    protected function getRadiobuttonsData(SimpleElement $option)
     {
         $listOptions = [];
-        $optionLabels = $option->find($this->optionLabel, Locator::SELECTOR_XPATH)->getElements();
+        $optionLabels = $option->getElements($this->optionLabel, Locator::SELECTOR_XPATH);
 
         foreach ($optionLabels as $optionLabel) {
             if ($optionLabel->isVisible()) {
@@ -204,10 +205,10 @@ class Bundle extends Block
     /**
      * Get data of "Checkbox" option
      *
-     * @param Element $option
+     * @param SimpleElement $option
      * @return array
      */
-    protected function getCheckboxData(Element $option)
+    protected function getCheckboxData(SimpleElement $option)
     {
         $data =  $this->getRadiobuttonsData($option);
 
@@ -222,11 +223,11 @@ class Bundle extends Block
     /**
      * Get data from option of select and multiselect
      *
-     * @param Element $element
+     * @param SimpleElement $element
      * @param int $firstOption
      * @return array
      */
-    protected function getSelectOptionsData(Element $element, $firstOption = 1)
+    protected function getSelectOptionsData(SimpleElement $element, $firstOption = 1)
     {
         $listOptions = [];
 
diff --git a/dev/tests/functional/tests/app/Magento/Bundle/Test/Block/Catalog/Product/View/Type/Option.php b/dev/tests/functional/tests/app/Magento/Bundle/Test/Block/Catalog/Product/View/Type/Option.php
index 9a9427361df7b780f6f84c3632490d0ed8c089ae..1d3c35cceceef00da7e51acaf78edfa5be9832f3 100644
--- a/dev/tests/functional/tests/app/Magento/Bundle/Test/Block/Catalog/Product/View/Type/Option.php
+++ b/dev/tests/functional/tests/app/Magento/Bundle/Test/Block/Catalog/Product/View/Type/Option.php
@@ -9,7 +9,7 @@
 
 namespace Magento\Bundle\Test\Block\Catalog\Product\View\Type;
 
-use Mtf\Block\Form;
+use Magento\Mtf\Block\Form;
 
 /**
  * Class Option
diff --git a/dev/tests/functional/tests/app/Magento/Bundle/Test/Constraint/AssertBundleInCategory.php b/dev/tests/functional/tests/app/Magento/Bundle/Test/Constraint/AssertBundleInCategory.php
index 7e747ac22a5ff54de25775fc8bac387a8eef8b95..d05b7beb50e61ec1f8adcecee342e676a70e778d 100644
--- a/dev/tests/functional/tests/app/Magento/Bundle/Test/Constraint/AssertBundleInCategory.php
+++ b/dev/tests/functional/tests/app/Magento/Bundle/Test/Constraint/AssertBundleInCategory.php
@@ -7,13 +7,13 @@
 namespace Magento\Bundle\Test\Constraint;
 
 use Magento\Bundle\Test\Fixture\BundleProduct;
-use Magento\Catalog\Test\Fixture\CatalogCategory;
+use Magento\Catalog\Test\Fixture\Category;
 use Magento\Catalog\Test\Page\Category\CatalogCategoryView;
 use Magento\Cms\Test\Page\CmsIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
- * Class AssertProductInCategory
+ * Check bundle product on the category page.
  */
 class AssertBundleInCategory extends AbstractConstraint
 {
@@ -22,19 +22,19 @@ class AssertBundleInCategory extends AbstractConstraint
     /* end tags */
 
     /**
-     * Check bundle product on the category page
+     * Check bundle product on the category page.
      *
      * @param CatalogCategoryView $catalogCategoryView
      * @param CmsIndex $cmsIndex
      * @param BundleProduct $product
-     * @param CatalogCategory $category
+     * @param Category $category
      * @return void
      */
     public function processAssert(
         CatalogCategoryView $catalogCategoryView,
         CmsIndex $cmsIndex,
         BundleProduct $product,
-        CatalogCategory $category
+        Category $category
     ) {
         //Open category view page
         $cmsIndex->open();
@@ -45,7 +45,7 @@ class AssertBundleInCategory extends AbstractConstraint
     }
 
     /**
-     * Verify product price on category view page
+     * Verify product price on category view page.
      *
      * @param BundleProduct $bundle
      * @param CatalogCategoryView $catalogCategoryView
@@ -57,9 +57,13 @@ class AssertBundleInCategory extends AbstractConstraint
         //Price from/to verification
         $priceBlock = $catalogCategoryView->getListProductBlock()->getProductPriceBlock($bundle->getName());
 
-        $priceLow = ($bundle->getPriceView() == 'Price Range')
-            ? $priceBlock->getPriceFrom()
-            : $priceBlock->getRegularPrice();
+        if ($bundle->hasData('special_price') || $bundle->hasData('group_price')) {
+            $priceLow = $priceBlock->getFinalPrice();
+        } else {
+            $priceLow = ($bundle->getPriceView() == 'Price Range')
+                ? $priceBlock->getPriceFrom()
+                : $priceBlock->getRegularPrice();
+        }
 
         \PHPUnit_Framework_Assert::assertEquals(
             $priceData['price_from'],
@@ -76,7 +80,7 @@ class AssertBundleInCategory extends AbstractConstraint
     }
 
     /**
-     * Text of Visible in category assert
+     * Text of Visible in category assert.
      *
      * @return string
      */
diff --git a/dev/tests/functional/tests/app/Magento/Bundle/Test/Constraint/AssertBundleItemsOnProductPage.php b/dev/tests/functional/tests/app/Magento/Bundle/Test/Constraint/AssertBundleItemsOnProductPage.php
index 4c74bc353fcc744e026f967dc97ea3c2af6bb547..a7ceb39b65a592dbaa0558d637607a72a59a543d 100755
--- a/dev/tests/functional/tests/app/Magento/Bundle/Test/Constraint/AssertBundleItemsOnProductPage.php
+++ b/dev/tests/functional/tests/app/Magento/Bundle/Test/Constraint/AssertBundleItemsOnProductPage.php
@@ -8,8 +8,8 @@ namespace Magento\Bundle\Test\Constraint;
 
 use Magento\Bundle\Test\Fixture\BundleProduct;
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractAssertForm;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractAssertForm;
 
 /**
  * Class AssertBundleItemsOnProductPage
@@ -26,13 +26,13 @@ class AssertBundleItemsOnProductPage extends AbstractAssertForm
      *
      * @param CatalogProductView $catalogProductView
      * @param BundleProduct $product
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @return void
      */
     public function processAssert(
         CatalogProductView $catalogProductView,
         BundleProduct $product,
-        Browser $browser
+        BrowserInterface $browser
     ) {
         $browser->open($_ENV['app_frontend_url'] . $product->getUrlKey() . '.html');
 
diff --git a/dev/tests/functional/tests/app/Magento/Bundle/Test/Constraint/AssertBundlePriceType.php b/dev/tests/functional/tests/app/Magento/Bundle/Test/Constraint/AssertBundlePriceType.php
index 40fe60cf5379872fc295074d06414b0a7c34d9ad..22e4f9c693a3098d9a8e011628cf7ee6f5f09511 100755
--- a/dev/tests/functional/tests/app/Magento/Bundle/Test/Constraint/AssertBundlePriceType.php
+++ b/dev/tests/functional/tests/app/Magento/Bundle/Test/Constraint/AssertBundlePriceType.php
@@ -9,8 +9,8 @@ namespace Magento\Bundle\Test\Constraint;
 use Magento\Bundle\Test\Fixture\BundleProduct;
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
 use Magento\Checkout\Test\Page\CheckoutCart;
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertBundlePriceType
@@ -37,7 +37,7 @@ class AssertBundlePriceType extends AbstractConstraint
      * @param CatalogProductView $catalogProductView
      * @param BundleProduct $product
      * @param CheckoutCart $checkoutCartView
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @param BundleProduct $originalProduct [optional]
      * @return void
      */
@@ -45,7 +45,7 @@ class AssertBundlePriceType extends AbstractConstraint
         CatalogProductView $catalogProductView,
         BundleProduct $product,
         CheckoutCart $checkoutCartView,
-        Browser $browser,
+        BrowserInterface $browser,
         BundleProduct $originalProduct = null
     ) {
         $checkoutCartView->open()->getCartBlock()->clearShoppingCart();
diff --git a/dev/tests/functional/tests/app/Magento/Bundle/Test/Constraint/AssertBundlePriceView.php b/dev/tests/functional/tests/app/Magento/Bundle/Test/Constraint/AssertBundlePriceView.php
index ae2bef5dd62f9d012592fc617ab186cfada8987c..d4e8779a7786966ac464d6186ecff63ea04d326a 100644
--- a/dev/tests/functional/tests/app/Magento/Bundle/Test/Constraint/AssertBundlePriceView.php
+++ b/dev/tests/functional/tests/app/Magento/Bundle/Test/Constraint/AssertBundlePriceView.php
@@ -8,11 +8,11 @@ namespace Magento\Bundle\Test\Constraint;
 
 use Magento\Bundle\Test\Fixture\BundleProduct;
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
- * Class AssertBundlePriceView
+ * Check displayed price view for bundle product on product page.
  */
 class AssertBundlePriceView extends AbstractConstraint
 {
@@ -24,13 +24,13 @@ class AssertBundlePriceView extends AbstractConstraint
      * Assert that displayed price view for bundle product on product page equals passed from fixture.
      *
      * @param CatalogProductView $catalogProductView
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @param BundleProduct $product
      * @return void
      */
     public function processAssert(
         CatalogProductView $catalogProductView,
-        Browser $browser,
+        BrowserInterface $browser,
         BundleProduct $product
     ) {
         //Open product view page
@@ -41,7 +41,7 @@ class AssertBundlePriceView extends AbstractConstraint
     }
 
     /**
-     * Assert prices on the product view Page
+     * Assert prices on the product view Page.
      *
      * @param BundleProduct $product
      * @param CatalogProductView $catalogProductView
@@ -50,11 +50,14 @@ class AssertBundlePriceView extends AbstractConstraint
     protected function assertPrice(BundleProduct $product, CatalogProductView $catalogProductView)
     {
         $priceData = $product->getDataFieldConfig('price')['source']->getPreset();
+        $priceView = $product->getPriceView();
         $priceBlock = $catalogProductView->getViewBlock()->getPriceBlock();
 
-        $priceLow = ($product->getPriceView() == 'Price Range')
-            ? $priceBlock->getPriceFrom()
-            : $priceBlock->getRegularPrice();
+        if ($product->hasData('special_price') || $product->hasData('group_price')) {
+            $priceLow = $priceBlock->getFinalPrice();
+        } else {
+            $priceLow = ($priceView == 'Price Range') ? $priceBlock->getPriceFrom() : $priceBlock->getRegularPrice();
+        }
 
         \PHPUnit_Framework_Assert::assertEquals(
             $priceData['price_from'],
@@ -62,7 +65,7 @@ class AssertBundlePriceView extends AbstractConstraint
             'Bundle price From on product view page is not correct.'
         );
 
-        if ($product->getPriceView() == 'Price Range') {
+        if ($priceView == 'Price Range') {
             \PHPUnit_Framework_Assert::assertEquals(
                 $priceData['price_to'],
                 $priceBlock->getPriceTo(),
@@ -72,7 +75,7 @@ class AssertBundlePriceView extends AbstractConstraint
     }
 
     /**
-     * Returns a string representation of the object
+     * Returns a string representation of the object.
      *
      * @return string
      */
diff --git a/dev/tests/functional/tests/app/Magento/Bundle/Test/Constraint/AssertBundleProductInCustomerWishlistOnBackendGrid.php b/dev/tests/functional/tests/app/Magento/Bundle/Test/Constraint/AssertBundleProductInCustomerWishlistOnBackendGrid.php
index f512ad015560f280f3da66574586f7a122a033ff..868112dce9fb03bde9fad1cf6c9538688bca0c39 100644
--- a/dev/tests/functional/tests/app/Magento/Bundle/Test/Constraint/AssertBundleProductInCustomerWishlistOnBackendGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Bundle/Test/Constraint/AssertBundleProductInCustomerWishlistOnBackendGrid.php
@@ -8,7 +8,7 @@ namespace Magento\Bundle\Test\Constraint;
 
 use Magento\Bundle\Test\Fixture\BundleProduct;
 use Magento\Wishlist\Test\Constraint\AssertProductInCustomerWishlistOnBackendGrid;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class AssertBundleProductInCustomerWishlistOnBackendGrid
diff --git a/dev/tests/functional/tests/app/Magento/Bundle/Test/Constraint/AssertBundleProductPage.php b/dev/tests/functional/tests/app/Magento/Bundle/Test/Constraint/AssertBundleProductPage.php
index 9320d0f72b3ea3dfc509bf9efe3fb18aa5465569..4f17013b8b4c9dcddc0ba2f9bb6ac455c9fa163a 100644
--- a/dev/tests/functional/tests/app/Magento/Bundle/Test/Constraint/AssertBundleProductPage.php
+++ b/dev/tests/functional/tests/app/Magento/Bundle/Test/Constraint/AssertBundleProductPage.php
@@ -9,28 +9,35 @@ namespace Magento\Bundle\Test\Constraint;
 use Magento\Catalog\Test\Constraint\AssertProductPage;
 
 /**
- * Class AssertBundleProductPage
+ * Check displayed product price on product page(front-end).
  */
 class AssertBundleProductPage extends AssertProductPage
 {
     /**
-     * Verify displayed product price on product page(front-end) equals passed from fixture
+     * Verify displayed product price on product page(front-end) equals passed from fixture.
      *
      * @return string|null
+     *
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function verifyPrice()
     {
         $priceData = $this->product->getDataFieldConfig('price')['source']->getPreset();
+        $priceView = $this->product->getPriceView();
         $priceBlock = $this->productView->getPriceBlock();
-        $priceLow = ($this->product->getPriceView() == 'Price Range')
-            ? $priceBlock->getPriceFrom()
-            : $priceBlock->getRegularPrice();
+
+        if ($this->product->hasData('special_price') || $this->product->hasData('group_price')) {
+            $priceLow = $priceBlock->getFinalPrice();
+        } else {
+            $priceLow = ($priceView == 'Price Range') ? $priceBlock->getPriceFrom() : $priceBlock->getRegularPrice();
+        }
+
         $errors = [];
 
         if ($priceData['price_from'] != $priceLow) {
             $errors[] = 'Bundle price "From" on product view page is not correct.';
         }
-        if ($this->product->getPriceView() == 'Price Range' && $priceData['price_to'] != $priceBlock->getPriceTo()) {
+        if ($priceView == 'Price Range' && $priceData['price_to'] != $priceBlock->getPriceTo()) {
             $errors[] = 'Bundle price "To" on product view page is not correct.';
         }
 
diff --git a/dev/tests/functional/tests/app/Magento/Bundle/Test/Constraint/AssertGroupedPriceOnBundleProductPage.php b/dev/tests/functional/tests/app/Magento/Bundle/Test/Constraint/AssertGroupedPriceOnBundleProductPage.php
index 4f431b4a0c164de06c8f3ae0403aad04ea777ce4..da18ba61b486e1c9bfa31c6a1ec2464747626e77 100644
--- a/dev/tests/functional/tests/app/Magento/Bundle/Test/Constraint/AssertGroupedPriceOnBundleProductPage.php
+++ b/dev/tests/functional/tests/app/Magento/Bundle/Test/Constraint/AssertGroupedPriceOnBundleProductPage.php
@@ -8,7 +8,7 @@ namespace Magento\Bundle\Test\Constraint;
 
 use Magento\Catalog\Test\Block\Product\View;
 use Magento\Catalog\Test\Constraint\AssertProductGroupedPriceOnProductPage;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class AssertGroupedPriceOnBundleProductPage
diff --git a/dev/tests/functional/tests/app/Magento/Bundle/Test/Constraint/AssertTierPriceOnBundleProductPage.php b/dev/tests/functional/tests/app/Magento/Bundle/Test/Constraint/AssertTierPriceOnBundleProductPage.php
index 288f73b194192119d797d93a8f22b1b752c8c203..3c62ea1c4eac77055ad478c6b28de567657631cf 100644
--- a/dev/tests/functional/tests/app/Magento/Bundle/Test/Constraint/AssertTierPriceOnBundleProductPage.php
+++ b/dev/tests/functional/tests/app/Magento/Bundle/Test/Constraint/AssertTierPriceOnBundleProductPage.php
@@ -8,8 +8,8 @@ namespace Magento\Bundle\Test\Constraint;
 
 use Magento\Catalog\Test\Constraint\AssertProductTierPriceOnProductPage;
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
-use Mtf\Client\Browser;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class AssertTierPriceOnBundleProductPage
@@ -37,13 +37,16 @@ class AssertTierPriceOnBundleProductPage extends AssertProductTierPriceOnProduct
     /**
      * Assertion that tier prices are displayed correctly
      *
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @param CatalogProductView $catalogProductView
      * @param FixtureInterface $product
      * @return void
      */
-    public function processAssert(Browser $browser, CatalogProductView $catalogProductView, FixtureInterface $product)
-    {
+    public function processAssert(
+        BrowserInterface $browser,
+        CatalogProductView $catalogProductView,
+        FixtureInterface $product
+    ) {
         //Open product view page
         $browser->open($_ENV['app_frontend_url'] . $product->getUrlKey() . '.html');
         $viewBlock = $catalogProductView->getBundleViewBlock();
diff --git a/dev/tests/functional/tests/app/Magento/Bundle/Test/Fixture/Bundle.php b/dev/tests/functional/tests/app/Magento/Bundle/Test/Fixture/Bundle.php
index 092be30151c78bbaf6f27ce5aa5d3a18d6ea0208..082ce5fa3dbee08d0bc963fed6b9d449900935b7 100644
--- a/dev/tests/functional/tests/app/Magento/Bundle/Test/Fixture/Bundle.php
+++ b/dev/tests/functional/tests/app/Magento/Bundle/Test/Fixture/Bundle.php
@@ -7,8 +7,8 @@
 namespace Magento\Bundle\Test\Fixture;
 
 use Magento\Catalog\Test\Fixture\Product;
-use Mtf\Factory\Factory;
-use Mtf\System\Config;
+use Magento\Mtf\Factory\Factory;
+use Magento\Mtf\System\Config;
 
 /**
  * Class Bundle
diff --git a/dev/tests/functional/tests/app/Magento/Bundle/Test/Fixture/BundleDynamic.php b/dev/tests/functional/tests/app/Magento/Bundle/Test/Fixture/BundleDynamic.php
index 05619530cf7f8045cda8c1b61854c695b4e16465..18f692eeda8fe0f84c5c1013c2ebbbd952e376d6 100644
--- a/dev/tests/functional/tests/app/Magento/Bundle/Test/Fixture/BundleDynamic.php
+++ b/dev/tests/functional/tests/app/Magento/Bundle/Test/Fixture/BundleDynamic.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Bundle\Test\Fixture;
 
-use Mtf\Factory\Factory;
+use Magento\Mtf\Factory\Factory;
 
 /**
  * Class BundleDynamic
diff --git a/dev/tests/functional/tests/app/Magento/Bundle/Test/Fixture/BundleFixed.php b/dev/tests/functional/tests/app/Magento/Bundle/Test/Fixture/BundleFixed.php
index 903a8da05d00eb264cda5967fbdbddae1ce2d44f..3cebc6dfa36b2e22d3bb6c36e36a309c286c740b 100644
--- a/dev/tests/functional/tests/app/Magento/Bundle/Test/Fixture/BundleFixed.php
+++ b/dev/tests/functional/tests/app/Magento/Bundle/Test/Fixture/BundleFixed.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Bundle\Test\Fixture;
 
-use Mtf\Factory\Factory;
+use Magento\Mtf\Factory\Factory;
 
 /**
  * Class BundleFixed
diff --git a/dev/tests/functional/tests/app/Magento/Bundle/Test/Fixture/BundleProduct.php b/dev/tests/functional/tests/app/Magento/Bundle/Test/Fixture/BundleProduct.php
index 9745ac6b032f616e37203328310f43b4ee2af66c..399f0184150b4f71d3db05deb87e46e693428d9c 100644
--- a/dev/tests/functional/tests/app/Magento/Bundle/Test/Fixture/BundleProduct.php
+++ b/dev/tests/functional/tests/app/Magento/Bundle/Test/Fixture/BundleProduct.php
@@ -6,12 +6,12 @@
 
 namespace Magento\Bundle\Test\Fixture;
 
-use Mtf\Fixture\FixtureFactory;
-use Mtf\Fixture\InjectableFixture;
-use Mtf\Handler\HandlerFactory;
-use Mtf\Repository\RepositoryFactory;
-use Mtf\System\Config;
-use Mtf\System\Event\EventManagerInterface;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Handler\HandlerFactory;
+use Magento\Mtf\Repository\RepositoryFactory;
+use Magento\Mtf\System\Config;
+use Magento\Mtf\System\Event\EventManagerInterface;
 
 /**
  * Class BundleProduct
diff --git a/dev/tests/functional/tests/app/Magento/Bundle/Test/Fixture/BundleProduct/BundleSelections.php b/dev/tests/functional/tests/app/Magento/Bundle/Test/Fixture/BundleProduct/BundleSelections.php
index 02d987d9eb3be30324a5c1781017151a45540997..b3d46087acd1b1d44e534d0c3be3451dd157510a 100644
--- a/dev/tests/functional/tests/app/Magento/Bundle/Test/Fixture/BundleProduct/BundleSelections.php
+++ b/dev/tests/functional/tests/app/Magento/Bundle/Test/Fixture/BundleProduct/BundleSelections.php
@@ -6,8 +6,8 @@
 
 namespace Magento\Bundle\Test\Fixture\BundleProduct;
 
-use Mtf\Fixture\FixtureFactory;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class BundleSelections
diff --git a/dev/tests/functional/tests/app/Magento/Bundle/Test/Fixture/BundleProduct/Price.php b/dev/tests/functional/tests/app/Magento/Bundle/Test/Fixture/BundleProduct/Price.php
index d155c6236f702405766ac4ad3acf956f01725fa8..33965ee8bdfedb2d4eeff1a461e43ced0ac4cfce 100644
--- a/dev/tests/functional/tests/app/Magento/Bundle/Test/Fixture/BundleProduct/Price.php
+++ b/dev/tests/functional/tests/app/Magento/Bundle/Test/Fixture/BundleProduct/Price.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Bundle\Test\Fixture\BundleProduct;
 
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class Price
diff --git a/dev/tests/functional/tests/app/Magento/Bundle/Test/Fixture/Cart/Item.php b/dev/tests/functional/tests/app/Magento/Bundle/Test/Fixture/Cart/Item.php
index 8ecfd8c910f0ae41716585b61b61dcd839123ccd..89bab0c1b7e8a5e30e95020d9426b4bd116475db 100644
--- a/dev/tests/functional/tests/app/Magento/Bundle/Test/Fixture/Cart/Item.php
+++ b/dev/tests/functional/tests/app/Magento/Bundle/Test/Fixture/Cart/Item.php
@@ -7,7 +7,7 @@
 namespace Magento\Bundle\Test\Fixture\Cart;
 
 use Magento\Bundle\Test\Fixture\BundleProduct;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class Item
diff --git a/dev/tests/functional/tests/app/Magento/Bundle/Test/Handler/BundleProduct/BundleProductInterface.php b/dev/tests/functional/tests/app/Magento/Bundle/Test/Handler/BundleProduct/BundleProductInterface.php
index c1f62b99914238fb405487f62f3e8218d848d7f6..d53e765d8c0e6c83291d096ff07c1dbda6645028 100644
--- a/dev/tests/functional/tests/app/Magento/Bundle/Test/Handler/BundleProduct/BundleProductInterface.php
+++ b/dev/tests/functional/tests/app/Magento/Bundle/Test/Handler/BundleProduct/BundleProductInterface.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Bundle\Test\Handler\BundleProduct;
 
-use Mtf\Handler\HandlerInterface;
+use Magento\Mtf\Handler\HandlerInterface;
 
 /**
  * Interface BundleProductInterface
diff --git a/dev/tests/functional/tests/app/Magento/Bundle/Test/Handler/BundleProduct/Curl.php b/dev/tests/functional/tests/app/Magento/Bundle/Test/Handler/BundleProduct/Curl.php
index e5f194127e99a628babc233fa398bd10f3f9ac04..c7746327b728b8bdae8d5c050339db83e80a99a9 100644
--- a/dev/tests/functional/tests/app/Magento/Bundle/Test/Handler/BundleProduct/Curl.php
+++ b/dev/tests/functional/tests/app/Magento/Bundle/Test/Handler/BundleProduct/Curl.php
@@ -8,8 +8,8 @@ namespace Magento\Bundle\Test\Handler\BundleProduct;
 
 use Magento\Bundle\Test\Fixture\BundleProduct;
 use Magento\Catalog\Test\Handler\CatalogProductSimple\Curl as ProductCurl;
-use Mtf\Fixture\FixtureInterface;
-use Mtf\System\Config;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\System\Config;
 
 /**
  * Create new bundle product via curl.
diff --git a/dev/tests/functional/tests/app/Magento/Bundle/Test/Handler/Curl/CreateBundle.php b/dev/tests/functional/tests/app/Magento/Bundle/Test/Handler/Curl/CreateBundle.php
index 2b93aaf4b9585fa3fa86f6e43fb1eb54b7c9e7c7..31abf5c15478c01defa5914deeeb1052e4eed9b5 100644
--- a/dev/tests/functional/tests/app/Magento/Bundle/Test/Handler/Curl/CreateBundle.php
+++ b/dev/tests/functional/tests/app/Magento/Bundle/Test/Handler/Curl/CreateBundle.php
@@ -7,12 +7,12 @@
 
 namespace Magento\Bundle\Test\Handler\Curl;
 
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Handler\Curl;
-use Mtf\System\Config;
-use Mtf\Util\Protocol\CurlInterface;
-use Mtf\Util\Protocol\CurlTransport;
-use Mtf\Util\Protocol\CurlTransport\BackendDecorator;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Handler\Curl;
+use Magento\Mtf\System\Config;
+use Magento\Mtf\Util\Protocol\CurlInterface;
+use Magento\Mtf\Util\Protocol\CurlTransport;
+use Magento\Mtf\Util\Protocol\CurlTransport\BackendDecorator;
 
 /**
  * Class CreateBundle
diff --git a/dev/tests/functional/tests/app/Magento/Bundle/Test/Repository/BundleProduct.php b/dev/tests/functional/tests/app/Magento/Bundle/Test/Repository/BundleProduct.php
index 7f91b0f2ae95fc68dd8c9dc6741f55c550a3c948..7e3ea715cca10bd1da1ade7b4567a0a8e820da69 100644
--- a/dev/tests/functional/tests/app/Magento/Bundle/Test/Repository/BundleProduct.php
+++ b/dev/tests/functional/tests/app/Magento/Bundle/Test/Repository/BundleProduct.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Bundle\Test\Repository;
 
-use Mtf\Repository\AbstractRepository;
+use Magento\Mtf\Repository\AbstractRepository;
 
 /**
  * Class BundleProduct
diff --git a/dev/tests/functional/tests/app/Magento/Bundle/Test/TestCase/BundleDynamicTest.php b/dev/tests/functional/tests/app/Magento/Bundle/Test/TestCase/BundleDynamicTest.php
index f3803ccc64589cad840f78b8e693e0324782fb6b..fcdff4b9407d0f26811c9522b8bd50e774fc03b7 100755
--- a/dev/tests/functional/tests/app/Magento/Bundle/Test/TestCase/BundleDynamicTest.php
+++ b/dev/tests/functional/tests/app/Magento/Bundle/Test/TestCase/BundleDynamicTest.php
@@ -7,8 +7,8 @@
 namespace Magento\Bundle\Test\TestCase;
 
 use Magento\Bundle\Test\Fixture\Bundle;
-use Mtf\Factory\Factory;
-use Mtf\TestCase\Functional;
+use Magento\Mtf\Factory\Factory;
+use Magento\Mtf\TestCase\Functional;
 
 /**
  * Class BundleDynamicTest
@@ -16,6 +16,10 @@ use Mtf\TestCase\Functional;
  */
 class BundleDynamicTest extends Functional
 {
+    /* tags */
+    const TEST_TYPE = 'acceptance_test';
+    /* end tags */
+
     /**
      * Login into backend area before test
      *
diff --git a/dev/tests/functional/tests/app/Magento/Bundle/Test/TestCase/BundleFixedTest.php b/dev/tests/functional/tests/app/Magento/Bundle/Test/TestCase/BundleFixedTest.php
index 6ccb573139293b0b33a2e57f9804277fab246fc8..ba309fcd6ed5f5670ac651dba9a80085e3925cc6 100755
--- a/dev/tests/functional/tests/app/Magento/Bundle/Test/TestCase/BundleFixedTest.php
+++ b/dev/tests/functional/tests/app/Magento/Bundle/Test/TestCase/BundleFixedTest.php
@@ -7,8 +7,8 @@
 namespace Magento\Bundle\Test\TestCase;
 
 use Magento\Bundle\Test\Fixture\Bundle;
-use Mtf\Factory\Factory;
-use Mtf\TestCase\Functional;
+use Magento\Mtf\Factory\Factory;
+use Magento\Mtf\TestCase\Functional;
 
 /**
  * Class BundleFixedTest
@@ -16,6 +16,10 @@ use Mtf\TestCase\Functional;
  */
 class BundleFixedTest extends Functional
 {
+    /* tags */
+    const TEST_TYPE = 'acceptance_test';
+    /* end tags */
+
     /**
      * Login into backend area before test
      *
diff --git a/dev/tests/functional/tests/app/Magento/Bundle/Test/TestCase/CreateBundleProductEntityTest.php b/dev/tests/functional/tests/app/Magento/Bundle/Test/TestCase/CreateBundleProductEntityTest.php
index 43b3f82410da9fb88faa056a42e024000c14e048..3dc5fec8c7a2dde69fed367bd24e4bac365f9e6f 100755
--- a/dev/tests/functional/tests/app/Magento/Bundle/Test/TestCase/CreateBundleProductEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Bundle/Test/TestCase/CreateBundleProductEntityTest.php
@@ -7,10 +7,10 @@
 namespace Magento\Bundle\Test\TestCase;
 
 use Magento\Bundle\Test\Fixture\BundleProduct;
-use Magento\Catalog\Test\Fixture\CatalogCategory;
+use Magento\Catalog\Test\Fixture\Category;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductIndex;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductNew;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for CreateBundleProductEntity
@@ -28,6 +28,11 @@ use Mtf\TestCase\Injectable;
  */
 class CreateBundleProductEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * Page product on backend
      *
@@ -45,10 +50,10 @@ class CreateBundleProductEntityTest extends Injectable
     /**
      * Persist category
      *
-     * @param CatalogCategory $category
+     * @param Category $category
      * @return array
      */
-    public function __prepare(CatalogCategory $category)
+    public function __prepare(Category $category)
     {
         $category->persist();
 
@@ -76,10 +81,10 @@ class CreateBundleProductEntityTest extends Injectable
      * Test create bundle product
      *
      * @param BundleProduct $product
-     * @param CatalogCategory $category
+     * @param Category $category
      * @return void
      */
-    public function test(BundleProduct $product, CatalogCategory $category)
+    public function test(BundleProduct $product, Category $category)
     {
         $this->catalogProductIndex->open();
         $this->catalogProductIndex->getGridPageActionBlock()->addProduct('bundle');
diff --git a/dev/tests/functional/tests/app/Magento/Bundle/Test/TestCase/EditBundleTest.php b/dev/tests/functional/tests/app/Magento/Bundle/Test/TestCase/EditBundleTest.php
index 6e466a1f8095c16b48ee306fd01cddc756bcb925..f4592e21ddab9c526025f74e3d2b04718d78f88b 100755
--- a/dev/tests/functional/tests/app/Magento/Bundle/Test/TestCase/EditBundleTest.php
+++ b/dev/tests/functional/tests/app/Magento/Bundle/Test/TestCase/EditBundleTest.php
@@ -7,8 +7,8 @@
 namespace Magento\Bundle\Test\TestCase;
 
 use Magento\Bundle\Test\Fixture\Bundle;
-use Mtf\Factory\Factory;
-use Mtf\TestCase\Functional;
+use Magento\Mtf\Factory\Factory;
+use Magento\Mtf\TestCase\Functional;
 
 /**
  * Class EditBundleTest
diff --git a/dev/tests/functional/tests/app/Magento/Bundle/Test/TestCase/UpdateBundleProductEntityTest.php b/dev/tests/functional/tests/app/Magento/Bundle/Test/TestCase/UpdateBundleProductEntityTest.php
index be2f5680521d05eeb615a223e2a82c4403ed1dbd..e2ab1af866a86204cd72578d2c80d8495e13252d 100644
--- a/dev/tests/functional/tests/app/Magento/Bundle/Test/TestCase/UpdateBundleProductEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Bundle/Test/TestCase/UpdateBundleProductEntityTest.php
@@ -9,7 +9,7 @@ namespace Magento\Bundle\Test\TestCase;
 use Magento\Bundle\Test\Fixture\BundleProduct;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductEdit;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductIndex;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for Update BundleProductEntity
@@ -34,6 +34,11 @@ use Mtf\TestCase\Injectable;
  */
 class UpdateBundleProductEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * Page product on backend
      *
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/AbstractConfigureBlock.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/AbstractConfigureBlock.php
index e291635c52ff3b4717350a3dedd5495c30bdd12a..148e06c61fa1efcec312e79863e5bfb72b67e6d6 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/AbstractConfigureBlock.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/AbstractConfigureBlock.php
@@ -8,9 +8,9 @@ namespace Magento\Catalog\Test\Block;
 
 use Magento\Catalog\Test\Block\Product\View\CustomOptions;
 use Magento\Catalog\Test\Fixture\CatalogProductSimple;
-use Mtf\Block\Form;
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Block\Form;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Class AbstractConfigureBlock
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Category/Edit/CategoryForm.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Category/Edit/CategoryForm.php
index 27aac4a235edcedc3577f52c54a0d0355574a154..4a1ba08b8565e73dd84123bdd8f363c5b5cd794f 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Category/Edit/CategoryForm.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Category/Edit/CategoryForm.php
@@ -7,7 +7,7 @@
 namespace Magento\Catalog\Test\Block\Adminhtml\Category\Edit;
 
 use Magento\Backend\Test\Block\Widget\FormTabs;
-use Mtf\Factory\Factory;
+use Magento\Mtf\Factory\Factory;
 
 /**
  * Class CategoryForm
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Category/Edit/CategoryForm.xml b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Category/Edit/CategoryForm.xml
index cabfb2fd5b1ecd4844dd49204fd6ea66c13d94d6..61f3ef6aad6aa8fdc90ea426ac48dbbb42ec2c32 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Category/Edit/CategoryForm.xml
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Category/Edit/CategoryForm.xml
@@ -17,7 +17,7 @@
             </is_active>
             <description />
             <include_in_menu>
-                <input>checkbox</input>
+                <input>select</input>
             </include_in_menu>
         </fields>
     </general_information>
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Category/Edit/Tab/Product.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Category/Edit/Tab/Product.php
index 88edcfbe76a9e3d65979bdfcf2b8e32581efcb50..3f29be8ab7f41ab9d9be179571a7c06ee4a6f39b 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Category/Edit/Tab/Product.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Category/Edit/Tab/Product.php
@@ -7,37 +7,36 @@
 namespace Magento\Catalog\Test\Block\Adminhtml\Category\Edit\Tab;
 
 use Magento\Backend\Test\Block\Widget\Tab;
+use Magento\Mtf\Client\Element\SimpleElement;
 use Magento\Catalog\Test\Block\Adminhtml\Category\Tab\ProductGrid;
-use Mtf\Client\Element;
 
 /**
- * Class Product
- * Products grid of Category Products tab
+ * Products grid of Category Products tab.
  */
 class Product extends Tab
 {
     /**
-     * An element locator which allows to select entities in grid
+     * An element locator which allows to select entities in grid.
      *
      * @var string
      */
     protected $selectItem = 'tbody tr .col-in_category';
 
     /**
-     * Product grid locator
+     * Product grid locator.
      *
      * @var string
      */
     protected $productGrid = '#catalog_category_products';
 
     /**
-     * Fill category products
+     * Fill category products.
      *
      * @param array $fields
-     * @param Element|null $element
+     * @param SimpleElement|null $element
      * @return void
      */
-    public function fillFormTab(array $fields, Element $element = null)
+    public function fillFormTab(array $fields, SimpleElement $element = null)
     {
         if (!isset($fields['category_products'])) {
             return;
@@ -48,7 +47,31 @@ class Product extends Tab
     }
 
     /**
-     * Returns role grid
+     * Get data of tab.
+     *
+     * @param array|null $fields
+     * @param SimpleElement|null $element
+     * @return array
+     */
+    public function getDataFormTab($fields = null, SimpleElement $element = null)
+    {
+        $data = $this->dataMapping($fields);
+        $result = [];
+
+        if (isset($data['category_products'])) {
+            $this->getProductGrid()->search(['in_category' => 'Yes']);
+            $rows = $this->getProductGrid()->getRowsData(['name']);
+
+            foreach ($rows as $row) {
+                $result['category_products'][] = $row['name'];
+            }
+        }
+
+        return $result;
+    }
+
+    /**
+     * Returns role grid.
      *
      * @return ProductGrid
      */
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Category/Tab/ProductGrid.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Category/Tab/ProductGrid.php
index 07036726339e47f832dd5943af8d6ed7d5fd07d8..ea36db83c473525ca31c4f5a5a378159fc5d06b6 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Category/Tab/ProductGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Category/Tab/ProductGrid.php
@@ -9,17 +9,20 @@ namespace Magento\Catalog\Test\Block\Adminhtml\Category\Tab;
 use Magento\Backend\Test\Block\Widget\Grid;
 
 /**
- * Class ProductGrid
- * Products' grid of Category Products tab
+ * Products' grid of Category Products tab.
  */
 class ProductGrid extends Grid
 {
     /**
-     * Filters array mapping
+     * Filters array mapping.
      *
      * @var array
      */
     protected $filters = [
+        'in_category' => [
+            'selector' => '#catalog_category_products_filter_in_category',
+            'input' => 'select'
+        ],
         'sku' => [
             'selector' => '#catalog_category_products_filter_sku',
         ],
@@ -29,7 +32,7 @@ class ProductGrid extends Grid
     ];
 
     /**
-     * An element locator which allows to select entities in grid
+     * An element locator which allows to select entities in grid.
      *
      * @var string
      */
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Category/Tree.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Category/Tree.php
index e22452982b41a15dac843dfd81ba23b1456ab992..15a87f2de91c0097db842d621b8b8d41d697f5ac 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Category/Tree.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Category/Tree.php
@@ -7,11 +7,12 @@
 
 namespace Magento\Catalog\Test\Block\Adminhtml\Category;
 
-use Magento\Catalog\Test\Fixture\CatalogCategory;
-use Mtf\Block\Block;
-use Mtf\Client\Element\Locator;
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Fixture\InjectableFixture;
+use Magento\Catalog\Test\Fixture\Category;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Client\Element\TreeElement;
 
 /**
  * Class Tree
@@ -98,15 +99,11 @@ class Tree extends Block
      */
     public function selectCategory(FixtureInterface $category, $fullPath = true)
     {
-        if ($category instanceof InjectableFixture) {
-            $parentPath = $this->prepareFullCategoryPath($category);
-            if (!$fullPath) {
-                array_pop($parentPath);
-            }
-            $path = implode('/', $parentPath);
-        } else {
-            $path = $category->getCategoryPath();
+        $parentPath = $this->prepareFullCategoryPath($category);
+        if (!$fullPath) {
+            array_pop($parentPath);
         }
+        $path = implode('/', $parentPath);
 
         $this->expandAllCategories();
         $this->_rootElement->find($this->treeElement, Locator::SELECTOR_CSS, 'tree')->setValue($path);
@@ -116,10 +113,10 @@ class Tree extends Block
     /**
      * Prepare category path
      *
-     * @param CatalogCategory $category
+     * @param Category $category
      * @return array
      */
-    protected function prepareFullCategoryPath(CatalogCategory $category)
+    protected function prepareFullCategoryPath(Category $category)
     {
         $path = [];
         $parentCategory = $category->hasData('parent_id')
@@ -156,13 +153,15 @@ class Tree extends Block
     /**
      * Check category in category tree
      *
-     * @param CatalogCategory $category
+     * @param Category $category
      * @return bool
      */
-    public function isCategoryVisible(CatalogCategory $category)
+    public function isCategoryVisible(Category $category)
     {
         $categoryPath = $this->prepareFullCategoryPath($category);
-        $structure = $this->_rootElement->find($this->treeElement, Locator::SELECTOR_CSS, 'tree')->getStructure();
+        /** @var TreeElement $treeElement */
+        $treeElement = $this->_rootElement->find($this->treeElement, Locator::SELECTOR_CSS, 'tree');
+        $structure = $treeElement->getStructure();
         $result = false;
         $element = array_shift($categoryPath);
         foreach ($structure as $item) {
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Category/Widget/Chooser.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Category/Widget/Chooser.php
index 2ac3d3251c5baf19f6d177d5ea974a0327e695b1..160116b75181321f160bd0f7db82289a0f79caf0 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Category/Widget/Chooser.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Category/Widget/Chooser.php
@@ -6,8 +6,8 @@
 
 namespace Magento\Catalog\Test\Block\Adminhtml\Category\Widget;
 
-use Mtf\Block\Block;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class CategoryChooser
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Attribute/AttributeForm.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Attribute/AttributeForm.php
index 1161c7a95ea38482dd181224587faef8968b05a4..75a6c1b1c8958f6fd8c09d109302826a6b948bc5 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Attribute/AttributeForm.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Attribute/AttributeForm.php
@@ -6,11 +6,12 @@
 
 namespace Magento\Catalog\Test\Block\Adminhtml\Product\Attribute;
 
-use Magento\Backend\Test\Block\Widget\FormTabs;
 use Magento\Backend\Test\Block\Widget\Tab;
-use Mtf\Client\Element;
-use Mtf\Client\Element\Locator;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Backend\Test\Block\Widget\FormTabs;
+use Magento\Mtf\Client\Element\SimpleElement;
+use Magento\Mtf\Client\Element;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Edit attribute form on catalog product edit page.
@@ -35,10 +36,10 @@ class AttributeForm extends FormTabs
      * Fill the attribute form.
      *
      * @param FixtureInterface $fixture
-     * @param Element|null $element
+     * @param SimpleElement|null $element
      * @return $this
      */
-    public function fill(FixtureInterface $fixture, Element $element = null)
+    public function fill(FixtureInterface $fixture, SimpleElement $element = null)
     {
         $this->browser->switchToFrame(new Locator($this->iFrame));
         $browser = $this->browser;
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Attribute/CustomAttribute.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Attribute/CustomAttribute.php
index b721484e4738b2dd65cf76353c45bfec241738a7..4dfc6d203b3f945c520bc8fadfff384600d1b20d 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Attribute/CustomAttribute.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Attribute/CustomAttribute.php
@@ -6,13 +6,13 @@
 
 namespace Magento\Catalog\Test\Block\Adminhtml\Product\Attribute;
 
-use Mtf\Client\Driver\Selenium\Element;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Client\Element\SimpleElement;
 
 /**
  * Catalog product custom attribute element.
  */
-class CustomAttribute extends Element
+class CustomAttribute extends SimpleElement
 {
     /**
      * Attribute input selector;
@@ -42,7 +42,7 @@ class CustomAttribute extends Element
      */
     public function setValue($data)
     {
-        $this->_eventManager->dispatchEvent(['set_value'], [__METHOD__, $this->getAbsoluteSelector()]);
+        $this->eventManager->dispatchEvent(['set_value'], [__METHOD__, $this->getAbsoluteSelector()]);
         $element = $this->getElementByClass($this->getElementClass());
         $value = is_array($data) ? $data['value'] : $data;
         $this->find($this->inputSelector, Locator::SELECTOR_CSS, $element)->setValue($value);
@@ -55,7 +55,7 @@ class CustomAttribute extends Element
      */
     public function getValue()
     {
-        $this->_eventManager->dispatchEvent(['get_value'], [__METHOD__, $this->getAbsoluteSelector()]);
+        $this->eventManager->dispatchEvent(['get_value'], [__METHOD__, $this->getAbsoluteSelector()]);
         $inputType = $this->getElementByClass($this->getElementClass());
         return $this->find($this->inputSelector, Locator::SELECTOR_CSS, $inputType)->getValue();
     }
@@ -84,9 +84,6 @@ class CustomAttribute extends Element
      */
     protected function getElementClass()
     {
-        $criteria = new \PHPUnit_Extensions_Selenium2TestCase_ElementCriteria('css selector');
-        $criteria->value($this->inputSelector);
-        $input = $this->_getWrappedElement()->element($criteria);
-        return $input->attribute('class');
+        return $this->find($this->inputSelector, Locator::SELECTOR_CSS)->getAttribute('class');
     }
 }
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Attribute/Edit/AttributeForm.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Attribute/Edit/AttributeForm.php
index b3ee1ca8e5313b9f60bde17db50fa6387e5f9d20..0a3a1b52f4a50f8018e6b593767b67307e3dd719 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Attribute/Edit/AttributeForm.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Attribute/Edit/AttributeForm.php
@@ -6,12 +6,13 @@
 
 namespace Magento\Catalog\Test\Block\Adminhtml\Product\Attribute\Edit;
 
-use Magento\Backend\Test\Block\Widget\FormTabs;
 use Magento\Backend\Test\Block\Widget\Tab;
-use Mtf\Client\Element;
-use Mtf\Client\Element\Locator;
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Fixture\InjectableFixture;
+use Magento\Backend\Test\Block\Widget\FormTabs;
+use Magento\Mtf\Client\Element\SimpleElement;
+use Magento\Mtf\Client\Element;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Catalog Product Attribute form.
@@ -36,14 +37,14 @@ class AttributeForm extends FormTabs
      * Get data of the tabs.
      *
      * @param FixtureInterface $fixture
-     * @param Element $element
+     * @param SimpleElement $element
      * @return array
      * @throws \Exception
      *
      * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
-    public function getData(FixtureInterface $fixture = null, Element $element = null)
+    public function getData(FixtureInterface $fixture = null, SimpleElement $element = null)
     {
         $this->waitForElementVisible($this->propertiesTab);
         $data = [];
@@ -79,7 +80,7 @@ class AttributeForm extends FormTabs
      */
     protected function expandAllToggles()
     {
-        $closedToggles = $this->_rootElement->find($this->closedToggle, Locator::SELECTOR_XPATH)->getElements();
+        $closedToggles = $this->_rootElement->getElements($this->closedToggle, Locator::SELECTOR_XPATH);
         foreach ($closedToggles as $toggle) {
             $toggle->click();
         }
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Attribute/Edit/Options.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Attribute/Edit/Options.php
index 231c6b08f9a63f7968476cf9403121682cc9de6c..3e5a6fd3355b4c3caac80329b35b5c8a3d309b83 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Attribute/Edit/Options.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Attribute/Edit/Options.php
@@ -6,14 +6,14 @@
 
 namespace Magento\Catalog\Test\Block\Adminhtml\Product\Attribute\Edit;
 
+use Magento\Mtf\ObjectManager;
+use Magento\Mtf\Client\Element\SimpleElement;
 use Magento\Catalog\Test\Block\Adminhtml\Product\Attribute\Edit\Tab\Options\Option;
-use Mtf\Client\Driver\Selenium\Element;
-use Mtf\ObjectManager;
 
 /**
  * Options element.
  */
-class Options extends Element
+class Options extends SimpleElement
 {
     /**
      * 'Add Option' button.
@@ -52,7 +52,7 @@ class Options extends Element
     public function getValue()
     {
         $data = [];
-        $options = $this->find($this->option)->getElements();
+        $options = $this->getElements($this->option);
         foreach ($options as $option) {
             $data[] = $this->getFormInstance($option)->getData();
         }
@@ -62,10 +62,10 @@ class Options extends Element
     /**
      * Get options form.
      *
-     * @param Element|null $element
+     * @param SimpleElement|null $element
      * @return Option
      */
-    protected function getFormInstance(Element $element = null)
+    protected function getFormInstance(SimpleElement $element = null)
     {
         return ObjectManager::getInstance()->create(
             'Magento\Catalog\Test\Block\Adminhtml\Product\Attribute\Edit\Tab\Options\Option',
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Attribute/Edit/Tab/Advanced.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Attribute/Edit/Tab/Advanced.php
index ae4eb3a3987c63af5a3097bbed41e7f79a9ac55c..b1091273427d381a749fb588bb47b4dd7883cac8 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Attribute/Edit/Tab/Advanced.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Attribute/Edit/Tab/Advanced.php
@@ -7,7 +7,8 @@
 namespace Magento\Catalog\Test\Block\Adminhtml\Product\Attribute\Edit\Tab;
 
 use Magento\Backend\Test\Block\Widget\Tab;
-use Mtf\Client\Element;
+use Magento\Mtf\Client\Element\SimpleElement;
+use Magento\Mtf\Client\Element;
 
 /**
  * Class AdvancedPropertiesTab
@@ -33,10 +34,10 @@ class Advanced extends Tab
      * Fill 'Advanced Attribute Properties' tab
      *
      * @param array $fields
-     * @param Element|null $element
+     * @param SimpleElement|null $element
      * @return $this
      */
-    public function fillFormTab(array $fields, Element $element = null)
+    public function fillFormTab(array $fields, SimpleElement $element = null)
     {
         if (!$this->_rootElement->find($this->propertiesTabActive)->isVisible()) {
             $this->_rootElement->find($this->propertiesTab)->click();
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Attribute/Edit/Tab/Options.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Attribute/Edit/Tab/Options.php
index 861b320f6e23bd25e445d84b3d47567622b3f06e..37bf323fa12f4cc22f0262b576e4e489b1f17703 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Attribute/Edit/Tab/Options.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Attribute/Edit/Tab/Options.php
@@ -7,7 +7,8 @@
 namespace Magento\Catalog\Test\Block\Adminhtml\Product\Attribute\Edit\Tab;
 
 use Magento\Backend\Test\Block\Widget\Tab;
-use Mtf\Client\Element;
+use Magento\Mtf\Client\Element\SimpleElement;
+use Magento\Mtf\Client\Element;
 
 /**
  * Class Options
@@ -26,10 +27,10 @@ class Options extends Tab
      * Fill 'Options' tab
      *
      * @param array $fields
-     * @param Element|null $element
+     * @param SimpleElement|null $element
      * @return $this
      */
-    public function fillFormTab(array $fields, Element $element = null)
+    public function fillFormTab(array $fields, SimpleElement $element = null)
     {
         foreach ($fields['options']['value'] as $field) {
             $this->_rootElement->find($this->addOption)->click();
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Attribute/Edit/Tab/Options/Option.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Attribute/Edit/Tab/Options/Option.php
index 6918f41b76766607fb2691c137cc971ef0f564db..062ac3c4a3562300724acecdc7c65aa5edcf6be1 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Attribute/Edit/Tab/Options/Option.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Attribute/Edit/Tab/Options/Option.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Catalog\Test\Block\Adminhtml\Product\Attribute\Edit\Tab\Options;
 
-use Mtf\Block\Form;
+use Magento\Mtf\Block\Form;
 
 /**
  * Class Option
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Attribute/Set/Main.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Attribute/Set/Main.php
index e819d78acfd3856404caff7b7b6ebc1654429d25..47a2e261ba15fd602141d4e20f9cc5d73b7bf695 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Attribute/Set/Main.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Attribute/Set/Main.php
@@ -6,8 +6,8 @@
 
 namespace Magento\Catalog\Test\Block\Adminhtml\Product\Attribute\Set;
 
-use Mtf\Block\Block;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class Main
@@ -123,7 +123,7 @@ class Main extends Block
     public function addAttributeSetGroup($groupName)
     {
         $this->_rootElement->find($this->addGroupButton)->click();
-        $this->_rootElement->setAlertText($groupName);
-        $this->_rootElement->acceptAlert();
+        $this->browser->setAlertText($groupName);
+        $this->browser->acceptAlert();
     }
 }
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Attribute/Set/Main/AttributeSetForm.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Attribute/Set/Main/AttributeSetForm.php
index 4d034090adf44803e7a309c84424cb0583916f8d..ef673d484b78d723f62eb95e8ffad9e11ea2ec10 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Attribute/Set/Main/AttributeSetForm.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Attribute/Set/Main/AttributeSetForm.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Catalog\Test\Block\Adminhtml\Product\Attribute\Set\Main;
 
-use Mtf\Block\Form as AbstractForm;
+use Magento\Mtf\Block\Form as AbstractForm;
 
 /**
  * Class Form
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Attribute/Set/Main/EditForm.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Attribute/Set/Main/EditForm.php
index 6f9dc7e7be315643ab9559afb01d8a7abb9db921..9dcc851e7f9e1f4c5a700026ee3c3f459f579cc1 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Attribute/Set/Main/EditForm.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Attribute/Set/Main/EditForm.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Catalog\Test\Block\Adminhtml\Product\Attribute\Set\Main;
 
-use Mtf\Block\Form as AbstractForm;
+use Magento\Mtf\Block\Form as AbstractForm;
 
 /**
  * Class EditForm
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Composite/Configure.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Composite/Configure.php
index b5b29452bb7c298c5e67eb5db87ad127202f6e52..bd6988a5afe234354f0b3148c6e93b277dc201d3 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Composite/Configure.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Composite/Configure.php
@@ -7,12 +7,11 @@
 
 namespace Magento\Catalog\Test\Block\Adminhtml\Product\Composite;
 
-use Magento\Backend\Test\Block\Template;
-use Magento\Catalog\Test\Block\AbstractConfigureBlock;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\InjectableFixture;
 use Magento\Catalog\Test\Fixture\CatalogProductSimple;
-use Mtf\Client\Element\Locator;
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Fixture\InjectableFixture;
+use Magento\Catalog\Test\Block\AbstractConfigureBlock;
 
 /**
  * Class Configure
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Action/Attribute.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Action/Attribute.php
index dc054d3f4fb803562a19bbb47514b7ff9eb4661b..d6943bf14db79c61c29156987c56e370ba945271 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Action/Attribute.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Action/Attribute.php
@@ -7,7 +7,7 @@
 namespace Magento\Catalog\Test\Block\Adminhtml\Product\Edit\Action;
 
 use Magento\Backend\Test\Block\Widget\Form;
-use Mtf\Client\Element;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Product attribute massaction edit page.
@@ -37,7 +37,7 @@ class Attribute extends Form
     {
         $this->_rootElement->find(
             $this->priceFieldEnablerSelector,
-            Element\Locator::SELECTOR_XPATH,
+            Locator::SELECTOR_XPATH,
             'checkbox'
         )->setValue('Yes');
     }
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/AdvancedPricingTab.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/AdvancedPricingTab.php
index 761c1c5de7500b0146a326a74a94e24899255c31..269e53dfcba0d2fda6391f9bd8c80aca4f27c676 100755
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/AdvancedPricingTab.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/AdvancedPricingTab.php
@@ -6,8 +6,7 @@
 
 namespace Magento\Catalog\Test\Block\Adminhtml\Product\Edit;
 
-use Magento\Backend\Test\Block\Widget\Tab;
-use Mtf\Client\Element;
+use Magento\Mtf\Client\Element\SimpleElement;
 
 /**
  * Class AdvancedPricingTab
@@ -29,10 +28,10 @@ class AdvancedPricingTab extends ProductTab
      * Fill 'Advanced price' product form on tab
      *
      * @param array $fields
-     * @param Element|null $element
+     * @param SimpleElement|null $element
      * @return $this
      */
-    public function fillFormTab(array $fields, Element $element = null)
+    public function fillFormTab(array $fields, SimpleElement $element = null)
     {
         $context = $element ? $element : $this->_rootElement;
         foreach ($fields as $fieldName => $field) {
@@ -66,10 +65,10 @@ class AdvancedPricingTab extends ProductTab
      * Get data of tab
      *
      * @param array|null $fields
-     * @param Element|null $element
+     * @param SimpleElement|null $element
      * @return array
      */
-    public function getDataFormTab($fields = null, Element $element = null)
+    public function getDataFormTab($fields = null, SimpleElement $element = null)
     {
         $formData = [];
         foreach ($fields as $fieldName => $field) {
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/AdvancedPricingTab/OptionGroup.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/AdvancedPricingTab/OptionGroup.php
index 3cd38b1cb63a1fffe914bde54ddd16c875635508..36ea46aaff06384131663ff5e6557a5b928f25b3 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/AdvancedPricingTab/OptionGroup.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/AdvancedPricingTab/OptionGroup.php
@@ -7,7 +7,7 @@
 namespace Magento\Catalog\Test\Block\Adminhtml\Product\Edit\AdvancedPricingTab;
 
 use Magento\Catalog\Test\Block\Adminhtml\Product\Edit\Tab\Options\AbstractOptions;
-use Mtf\Client\Element;
+use Magento\Mtf\Client\Element\SimpleElement;
 
 /**
  * Class OptionField
@@ -26,10 +26,10 @@ class OptionGroup extends AbstractOptions
      * Fill the form 'Extended price'
      *
      * @param array $fields
-     * @param Element $element
+     * @param SimpleElement $element
      * @return $this
      */
-    public function fillOptions(array $fields, Element $element = null)
+    public function fillOptions(array $fields, SimpleElement $element = null)
     {
         $this->_rootElement->find($this->buttonFormLocator)->click();
         return parent::fillOptions($fields, $element);
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/AdvancedPricingTab/OptionTier.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/AdvancedPricingTab/OptionTier.php
index 79eb22af2fda245b686a65655aa0f79942118b7d..7dc90c88899bb8f1318dd7141c257c1aafc6eef8 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/AdvancedPricingTab/OptionTier.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/AdvancedPricingTab/OptionTier.php
@@ -7,7 +7,7 @@
 namespace Magento\Catalog\Test\Block\Adminhtml\Product\Edit\AdvancedPricingTab;
 
 use Magento\Catalog\Test\Block\Adminhtml\Product\Edit\Tab\Options\AbstractOptions;
-use Mtf\Client\Element;
+use Magento\Mtf\Client\Element\SimpleElement;
 
 /**
  * Class OptionTier
@@ -26,10 +26,10 @@ class OptionTier extends AbstractOptions
      * Fill product form 'Tier price'
      *
      * @param array $fields
-     * @param Element $element
+     * @param SimpleElement $element
      * @return $this
      */
-    public function fillOptions(array $fields, Element $element = null)
+    public function fillOptions(array $fields, SimpleElement $element = null)
     {
         $this->_rootElement->find($this->buttonFormLocator)->click();
         return parent::fillOptions($fields, $element);
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/ProductTab.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/ProductTab.php
index 08f7f5a71e648674a810207448fcf9a6b9824424..c7c48a1847c784ab2dc885b98fe3c3640c73549d 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/ProductTab.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/ProductTab.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Catalog\Test\Block\Adminhtml\Product\Edit;
 
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Client\Locator;
 use Magento\Backend\Test\Block\Widget\Tab;
 use Magento\Catalog\Test\Block\Adminhtml\Product\Attribute\Edit;
 use Magento\Catalog\Test\Fixture\CatalogProductAttribute;
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Tab/AbstractRelated.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Tab/AbstractRelated.php
index 33bd8e681b1cc819af446c4a18f89e2d79dff957..e23a8abf1adee5b88ad250c42ca60ff432c5a014 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Tab/AbstractRelated.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Tab/AbstractRelated.php
@@ -6,9 +6,9 @@
 
 namespace Magento\Catalog\Test\Block\Adminhtml\Product\Edit\Tab;
 
-use Magento\Backend\Test\Block\Widget\Grid;
 use Magento\Backend\Test\Block\Widget\Tab;
-use Mtf\Client\Element;
+use Magento\Backend\Test\Block\Widget\Grid;
+use Magento\Mtf\Client\Element\SimpleElement;
 
 /**
  * Class AbstractRelated
@@ -27,10 +27,10 @@ abstract class AbstractRelated extends Tab
      * Select related products
      *
      * @param array $data
-     * @param Element|null $element
+     * @param SimpleElement|null $element
      * @return $this
      */
-    public function fillFormTab(array $data, Element $element = null)
+    public function fillFormTab(array $data, SimpleElement $element = null)
     {
         if (isset($data[$this->relatedType]['value'])) {
             $context = $element ? $element : $this->_rootElement;
@@ -48,10 +48,10 @@ abstract class AbstractRelated extends Tab
      * Get data of tab
      *
      * @param array|null $fields
-     * @param Element|null $element
+     * @param SimpleElement|null $element
      * @return array
      */
-    public function getDataFormTab($fields = null, Element $element = null)
+    public function getDataFormTab($fields = null, SimpleElement $element = null)
     {
         $relatedBlock = $this->getRelatedGrid($element);
         $columns = [
@@ -67,8 +67,8 @@ abstract class AbstractRelated extends Tab
     /**
      * Return related products grid
      *
-     * @param Element $element
+     * @param SimpleElement $element
      * @return Grid
      */
-    abstract protected function getRelatedGrid(Element $element = null);
+    abstract protected function getRelatedGrid(SimpleElement $element = null);
 }
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Tab/Attributes/Search.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Tab/Attributes/Search.php
index 4a4374d1bed5b1e311c40582ad00808ac1030462..fac0fe3f9fb44bf1fbd89011621b72ab44530555 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Tab/Attributes/Search.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Tab/Attributes/Search.php
@@ -6,8 +6,8 @@
 
 namespace Magento\Catalog\Test\Block\Adminhtml\Product\Edit\Tab\Attributes;
 
+use Magento\Mtf\Client\Element\SuggestElement;
 use Magento\Catalog\Test\Fixture\CatalogProductAttribute;
-use Mtf\Client\Driver\Selenium\Element\SuggestElement;
 
 /**
  * Class FormAttributeSearch
@@ -72,6 +72,7 @@ class Search extends SuggestElement
         if ($this->find($this->searchResult)->getText() == $productAttribute->getFrontendLabel()) {
             return true;
         }
+
         return false;
     }
 }
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Tab/Crosssell.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Tab/Crosssell.php
index 552e58154ed5a112fa19b3e0083a17b676a48820..ea40e9576f8256f124eee3cd248ca9fc4285b766 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Tab/Crosssell.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Tab/Crosssell.php
@@ -8,7 +8,7 @@
 namespace Magento\Catalog\Test\Block\Adminhtml\Product\Edit\Tab;
 
 use Magento\Catalog\Test\Block\Adminhtml\Product\Edit\Tab\Crosssell\Grid as CrosssellGrid;
-use Mtf\Client\Element;
+use Magento\Mtf\Client\Element\SimpleElement;
 
 /**
  * Class Crosssell
@@ -33,10 +33,10 @@ class Crosssell extends AbstractRelated
     /**
      * Return cross sell products grid
      *
-     * @param Element|null $element [optional]
+     * @param SimpleElement|null $element [optional]
      * @return CrosssellGrid
      */
-    protected function getRelatedGrid(Element $element = null)
+    protected function getRelatedGrid(SimpleElement $element = null)
     {
         $element = $element ? $element : $this->_rootElement;
         return $this->blockFactory->create(
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Tab/Options.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Tab/Options.php
index e3c653e1cd3395bed4d9c4f7c9adaf35523e3123..e1782ef6ca1f6f2cb603e31f627a0c99c1096d8a 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Tab/Options.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Tab/Options.php
@@ -7,9 +7,10 @@
 namespace Magento\Catalog\Test\Block\Adminhtml\Product\Edit\Tab;
 
 use Magento\Backend\Test\Block\Widget\Tab;
+use Magento\Mtf\Client\Element\SimpleElement;
 use Magento\Catalog\Test\Block\Adminhtml\Product\Edit\Tab\Options\Search\Grid;
-use Mtf\Client\Element;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\ObjectManager;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class Options
@@ -56,10 +57,10 @@ class Options extends Tab
      * Fill custom options form on tab
      *
      * @param array $fields
-     * @param Element|null $element
+     * @param SimpleElement|null $element
      * @return $this
      */
-    public function fillFormTab(array $fields, Element $element = null)
+    public function fillFormTab(array $fields, SimpleElement $element = null)
     {
         $fields = reset($fields);
         if (empty($fields['value']) || !is_array($fields['value'])) {
@@ -136,10 +137,10 @@ class Options extends Tab
      * Get data of tab
      *
      * @param array|null $fields
-     * @param Element|null $element
+     * @param SimpleElement|null $element
      * @return array
      */
-    public function getDataFormTab($fields = null, Element $element = null)
+    public function getDataFormTab($fields = null, SimpleElement $element = null)
     {
         $fields = reset($fields);
         $formData = [];
@@ -196,6 +197,7 @@ class Options extends Tab
         $importOptions = $options['import']['options'];
         $options = array_merge($options, $importOptions);
         unset($options['import']);
+
         return $options;
     }
 
@@ -211,6 +213,7 @@ class Options extends Tab
         if ($end = strpos($str, '-')) {
             $str = substr($str, 0, $end) . ucfirst(substr($str, ($end + 1)));
         }
+
         return $str;
     }
 }
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Tab/Options/AbstractOptions.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Tab/Options/AbstractOptions.php
index a503837d1199c87956098006acf8e1ba49bc711c..55af1526e62097c49f674318e3ee8f5872998e6b 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Tab/Options/AbstractOptions.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Tab/Options/AbstractOptions.php
@@ -6,8 +6,8 @@
 
 namespace Magento\Catalog\Test\Block\Adminhtml\Product\Edit\Tab\Options;
 
+use Magento\Mtf\Client\Element\SimpleElement;
 use Magento\Backend\Test\Block\Widget\Tab;
-use Mtf\Client\Element;
 
 /**
  * Abstract class AbstractOptions
@@ -19,14 +19,15 @@ abstract class AbstractOptions extends Tab
      * Fills in the form of an array of input data
      *
      * @param array $fields
-     * @param Element $element
+     * @param SimpleElement $element
      * @return $this
      */
-    public function fillOptions(array $fields, Element $element = null)
+    public function fillOptions(array $fields, SimpleElement $element = null)
     {
         $element = $element === null ? $this->_rootElement : $element;
         $mapping = $this->dataMapping($fields);
         $this->_fill($mapping, $element);
+
         return $this;
     }
 
@@ -34,13 +35,14 @@ abstract class AbstractOptions extends Tab
      * Getting options data form on the product form
      *
      * @param array $fields
-     * @param Element $element
+     * @param SimpleElement $element
      * @return $this
      */
-    public function getDataOptions(array $fields = null, Element $element = null)
+    public function getDataOptions(array $fields = null, SimpleElement $element = null)
     {
         $element = $element === null ? $this->_rootElement : $element;
         $mapping = $this->dataMapping($fields);
+
         return $this->_getData($mapping, $element);
     }
 }
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Tab/Options/Type/DropDown.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Tab/Options/Type/DropDown.php
index 637636979a89ec82885b3548efb84bb2416196bd..bf958e52b0adddc21e48a03be9a69ba826d100ad 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Tab/Options/Type/DropDown.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Tab/Options/Type/DropDown.php
@@ -7,7 +7,7 @@
 namespace Magento\Catalog\Test\Block\Adminhtml\Product\Edit\Tab\Options\Type;
 
 use Magento\Catalog\Test\Block\Adminhtml\Product\Edit\Tab\Options\AbstractOptions;
-use Mtf\Client\Element;
+use Magento\Mtf\Client\Element\SimpleElement;
 
 /**
  * Form "Option dropdown" on tab product "Custom options".
@@ -32,13 +32,14 @@ class DropDown extends AbstractOptions
      * Fill the form.
      *
      * @param array $fields
-     * @param Element $element
+     * @param SimpleElement $element
      * @return $this
      */
-    public function fillOptions(array $fields, Element $element = null)
+    public function fillOptions(array $fields, SimpleElement $element = null)
     {
         $this->_rootElement->find($this->optionTitle)->click();
         $this->_rootElement->find($this->buttonAddLocator)->click();
+
         return parent::fillOptions($fields, $element);
     }
 }
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Tab/ProductDetails.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Tab/ProductDetails.php
new file mode 100644
index 0000000000000000000000000000000000000000..546719a20d45924939f41db8bad0bbd905687219
--- /dev/null
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Tab/ProductDetails.php
@@ -0,0 +1,63 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+
+namespace Magento\Catalog\Test\Block\Adminhtml\Product\Edit\Tab;
+
+use Magento\Mtf\Client\Element\SimpleElement;
+use Magento\Mtf\Client\Locator;
+
+/**
+ * Product details tab.
+ */
+class ProductDetails extends \Magento\Catalog\Test\Block\Adminhtml\Product\Edit\ProductTab
+{
+    /**
+     * Locator for preceding sibling of category element.
+     *
+     * @var string
+     */
+    protected $categoryPrecedingSibling = '//*[@id="attribute-category_ids-container"]/preceding-sibling::div[%d]';
+
+    /**
+     * Locator for following sibling of category element.
+     *
+     * @var string
+     */
+    protected $categoryFollowingSibling = '//*[@id="attribute-category_ids-container"]/following-sibling::div[%d]';
+
+    /**
+     * Fill data to fields on tab.
+     *
+     * @param array $fields
+     * @param SimpleElement|null $element
+     * @return $this
+     */
+    public function fillFormTab(array $fields, SimpleElement $element = null)
+    {
+        $data = $this->dataMapping($fields);
+
+        if (isset($data['category_ids'])) {
+            /* Fix browser behavior for click by hidden list result of suggest(category) element */
+            $this->scrollToCategory();
+            $this->_fill([$data['category_ids']], $element);
+            unset($data['category_ids']);
+        }
+        $this->_fill($data, $element);
+
+        return $this;
+    }
+
+    /**
+     * Scroll page to "Categories" field.
+     *
+     * @return void
+     */
+    protected function scrollToCategory()
+    {
+        $this->_rootElement->find(sprintf($this->categoryFollowingSibling, 1), Locator::SELECTOR_XPATH)->click();
+        $this->_rootElement->find(sprintf($this->categoryPrecedingSibling, 2), Locator::SELECTOR_XPATH)->click();
+    }
+}
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Tab/ProductDetails/AttributeSet.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Tab/ProductDetails/AttributeSet.php
index 651739618a84d8ddaa3611b5719d539f5642e244..56d6b46ed629a7a40590f3b57171d3e496ee9fc4 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Tab/ProductDetails/AttributeSet.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Tab/ProductDetails/AttributeSet.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Catalog\Test\Block\Adminhtml\Product\Edit\Tab\ProductDetails;
 
-use Mtf\Client\Driver\Selenium\Element\SuggestElement;
+use Magento\Mtf\Client\Element\SuggestElement;
 
 /**
  * Class AttributeSet
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Tab/ProductDetails/CategoryIds.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Tab/ProductDetails/CategoryIds.php
index 946a5cc42658c19d07632621fae7383d6eb9015b..0e45e4c6cdd835a113375903f9199f56ad20d089 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Tab/ProductDetails/CategoryIds.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Tab/ProductDetails/CategoryIds.php
@@ -6,8 +6,8 @@
 
 namespace Magento\Catalog\Test\Block\Adminhtml\Product\Edit\Tab\ProductDetails;
 
-use Mtf\Client\Driver\Selenium\Element\MultisuggestElement;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Client\Element\MultisuggestElement;
 
 /**
  * Typified element class for category element.
@@ -35,13 +35,6 @@ class CategoryIds extends MultisuggestElement
      */
     protected $resultItem = './/li/a/span[@class="category-label"][text()="%s"]';
 
-    /**
-     * Selector for click on top page.
-     *
-     * @var string
-     */
-    protected $top = './ancestor::body//*[@class="page-main-actions"]';
-
     /**
      * Set value.
      *
@@ -50,7 +43,6 @@ class CategoryIds extends MultisuggestElement
      */
     public function setValue($values)
     {
-        $this->find($this->top, Locator::SELECTOR_XPATH)->click();
         $this->waitInitElement();
         parent::setValue($values);
     }
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Tab/ProductDetails/ProductOnlineSwitcher.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Tab/ProductDetails/ProductOnlineSwitcher.php
index 60b84be3c1245442ba952d4ef97a0c45a2cad13b..55f800b3f67b7f2b0ffc2c1bf73c999ddfb85009 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Tab/ProductDetails/ProductOnlineSwitcher.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Tab/ProductDetails/ProductOnlineSwitcher.php
@@ -6,14 +6,14 @@
 
 namespace Magento\Catalog\Test\Block\Adminhtml\Product\Edit\Tab\ProductDetails;
 
-use Mtf\Client\Driver\Selenium\Element;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Client\Element\SimpleElement;
 
 /**
  * Class ProductOnlineSwitcher
  * Typified element class for product status element
  */
-class ProductOnlineSwitcher extends Element
+class ProductOnlineSwitcher extends SimpleElement
 {
     /**
      * CSS locator button status of the product
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Tab/Related.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Tab/Related.php
index 93fb6f594f2fdaa159c91ab4c86084592078fde2..78298efb56abf89f5d919398e1b22afcad7aceb8 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Tab/Related.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Tab/Related.php
@@ -8,7 +8,7 @@
 namespace Magento\Catalog\Test\Block\Adminhtml\Product\Edit\Tab;
 
 use Magento\Catalog\Test\Block\Adminhtml\Product\Edit\Tab\Related\Grid as RelatedGrid;
-use Mtf\Client\Element;
+use Magento\Mtf\Client\Element\SimpleElement;
 
 /**
  * Class Related
@@ -33,12 +33,13 @@ class Related extends AbstractRelated
     /**
      * Return related products grid
      *
-     * @param Element|null $element [optional]
+     * @param SimpleElement|null $element [optional]
      * @return RelatedGrid
      */
-    protected function getRelatedGrid(Element $element = null)
+    protected function getRelatedGrid(SimpleElement $element = null)
     {
         $element = $element ? $element : $this->_rootElement;
+
         return $this->blockFactory->create(
             '\Magento\Catalog\Test\Block\Adminhtml\Product\Edit\Tab\Related\Grid',
             ['element' => $element->find($this->relatedGrid)]
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Tab/Upsell.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Tab/Upsell.php
index 010c5bd3020c1cfde77a242f263c07525a813e53..f3d4ff8f8bc97232d85a14d58afb29a3e2ffd568 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Tab/Upsell.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Tab/Upsell.php
@@ -8,7 +8,7 @@
 namespace Magento\Catalog\Test\Block\Adminhtml\Product\Edit\Tab;
 
 use Magento\Catalog\Test\Block\Adminhtml\Product\Edit\Tab\Upsell\Grid as UpsellGrid;
-use Mtf\Client\Element;
+use Magento\Mtf\Client\Element\SimpleElement;
 
 /**
  * Class Upsell
@@ -33,12 +33,13 @@ class Upsell extends AbstractRelated
     /**
      * Return related products grid
      *
-     * @param Element|null $element [optional]
+     * @param SimpleElement|null $element [optional]
      * @return UpsellGrid
      */
-    protected function getRelatedGrid(Element $element = null)
+    protected function getRelatedGrid(SimpleElement $element = null)
     {
         $element = $element ? $element : $this->_rootElement;
+
         return $this->blockFactory->create(
             '\Magento\Catalog\Test\Block\Adminhtml\Product\Edit\Tab\Upsell\Grid',
             ['element' => $element->find($this->crossSellGrid)]
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Tab/Websites/StoreTree.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Tab/Websites/StoreTree.php
index cf1ddaee1ee32016c41d31edfabe96b28304bcb4..f9b1f1a92be20b77040dc52b07c872a23f1bb045 100755
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Tab/Websites/StoreTree.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/Edit/Tab/Websites/StoreTree.php
@@ -6,14 +6,14 @@
 
 namespace Magento\Catalog\Test\Block\Adminhtml\Product\Edit\Tab\Websites;
 
-use Mtf\Client\Driver\Selenium\Element;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Client\Element\SimpleElement;
 
 /**
  * Class StoreTree
  * Typified element class for store tree element
  */
-class StoreTree extends Element
+class StoreTree extends SimpleElement
 {
     /**
      * Selector for website checkbox
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/FormPageActions.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/FormPageActions.php
index fd99b998c340f4282f55e6b586dbf98ade4c09f9..9778f9a4b34a57e9725ae66b6516f0e1385889d3 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/FormPageActions.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/FormPageActions.php
@@ -7,8 +7,8 @@
 namespace Magento\Catalog\Test\Block\Adminhtml\Product;
 
 use Magento\Backend\Test\Block\FormPageActions as ParentFormPageActions;
-use Mtf\Client\Element\Locator;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class FormAction
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/GridPageAction.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/GridPageAction.php
index 47526b696ca0bfb289a964cc0976b04b0b193aad..bafda38e5f53d11d5af355b7878e512e3f2a01dc 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/GridPageAction.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/GridPageAction.php
@@ -7,7 +7,7 @@
 namespace Magento\Catalog\Test\Block\Adminhtml\Product;
 
 use Magento\Backend\Test\Block\GridPageActions as ParentGridPageActions;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class GridPageAction
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/ProductForm.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/ProductForm.php
index 813a3d40cd0f649e73debc47ce03f0cc2e0824b6..51df922610d9164ae09c3f6faa155096b886d99d 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/ProductForm.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/ProductForm.php
@@ -10,14 +10,15 @@ use Magento\Backend\Test\Block\Widget\FormTabs;
 use Magento\Backend\Test\Block\Widget\Tab;
 use Magento\Catalog\Test\Block\Adminhtml\Product\Attribute\AttributeForm;
 use Magento\Catalog\Test\Block\Adminhtml\Product\Attribute\CustomAttribute;
-use Magento\Catalog\Test\Block\Adminhtml\Product\Edit\ProductTab;
 use Magento\Catalog\Test\Fixture\CatalogProductAttribute;
+use Magento\Mtf\Client\Element\SimpleElement;
+use Magento\Catalog\Test\Block\Adminhtml\Product\Edit\ProductTab;
 use Magento\Catalog\Test\Fixture\Product;
-use Mtf\Client\Element;
-use Mtf\Client\Element\Locator;
-use Mtf\Fixture\DataFixture;
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Client\Element;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Fixture\DataFixture;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Product form on backend product page.
@@ -126,13 +127,13 @@ class ProductForm extends FormTabs
      * Fill the product form.
      *
      * @param FixtureInterface $product
-     * @param Element|null $element [optional]
+     * @param SimpleElement|null $element [optional]
      * @param FixtureInterface|null $category [optional]
      * @return FormTabs
      *
      * @SuppressWarnings(PHPMD.NPathComplexity)
      */
-    public function fill(FixtureInterface $product, Element $element = null, FixtureInterface $category = null)
+    public function fill(FixtureInterface $product, SimpleElement $element = null, FixtureInterface $category = null)
     {
         $dataConfig = $product->getDataConfig();
         $typeId = isset($dataConfig['type_id']) ? $dataConfig['type_id'] : null;
@@ -152,9 +153,7 @@ class ProductForm extends FormTabs
                 $category = reset($categories);
             }
             if ($category) {
-                $tabs['product-details']['category_ids']['value'] = ($category instanceof InjectableFixture)
-                    ? $category->getName()
-                    : $category->getCategoryName();
+                $tabs['product-details']['category_ids']['value'] = $category->getName();
             }
 
             $this->showAdvancedSettings();
@@ -180,11 +179,10 @@ class ProductForm extends FormTabs
         $attribute = $product->getDataFieldConfig('custom_attribute')['source']->getAttribute();
         $this->openTab('product-details');
         if (!$this->checkAttributeLabel($attribute)) {
-            /** @var \Magento\Catalog\Test\Block\Adminhtml\Product\Edit\ProductTab $tab */
+            /** @var \Magento\Catalog\Test\Block\Adminhtml\Product\Edit\Tab\ProductDetails $tab */
             $tab = $this->openTab($tabName);
             $tab->addNewAttribute($tabName);
             $this->fillAttributeForm($attribute);
-            $this->reinitRootElement();
         }
     }
 
@@ -192,12 +190,13 @@ class ProductForm extends FormTabs
      * Get data of the tabs.
      *
      * @param FixtureInterface|null $fixture
-     * @param Element|null $element
+     * @param SimpleElement|null $element
      * @return array
      */
-    public function getData(FixtureInterface $fixture = null, Element $element = null)
+    public function getData(FixtureInterface $fixture = null, SimpleElement $element = null)
     {
         $this->showAdvancedSettings();
+
         return parent::getData($fixture, $element);
     }
 
@@ -330,6 +329,7 @@ class ProductForm extends FormTabs
         $tabName = strtolower($tabName);
         $selector = sprintf($this->customTab, $tabName);
         $this->waitForElementVisible($selector, Locator::SELECTOR_XPATH);
+
         return $this->_rootElement->find($selector, Locator::SELECTOR_XPATH)->isVisible();
     }
 
@@ -365,6 +365,7 @@ class ProductForm extends FormTabs
                 $data[$tabName] = $errors;
             }
         }
+
         return $data;
     }
 
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/ProductForm.xml b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/ProductForm.xml
index 1a26481342be17b55cc905c596a30fa3b915e46f..10a1e931748eabea57b67f8fa852b720d0a4140e 100755
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/ProductForm.xml
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Adminhtml/Product/ProductForm.xml
@@ -7,7 +7,7 @@
 -->
 <tabs>
     <product-details>
-        <class>\Magento\Catalog\Test\Block\Adminhtml\Product\Edit\ProductTab</class>
+        <class>\Magento\Catalog\Test\Block\Adminhtml\Product\Edit\Tab\ProductDetails</class>
         <selector>#product_info_tabs_product-details</selector>
         <strategy>css selector</strategy>
         <wrapper>product</wrapper>
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Category/ProductPagination.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Category/ProductPagination.php
index ae9a508fb562a22cffa7674f11d494b26da80f86..7051e8d5372ead5dab04b364e523d1be32e12655 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Category/ProductPagination.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Category/ProductPagination.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Catalog\Test\Block\Category;
 
-use Mtf\Block\Block;
+use Magento\Mtf\Block\Block;
 
 /**
  * Class ProductPagination
@@ -26,7 +26,7 @@ class ProductPagination extends Block
     /**
      * Getting the active element to go to the next page
      *
-     * @return \Mtf\Client\Element|null
+     * @return \Magento\Mtf\Client\Element|null
      */
     public function getNextPage()
     {
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Category/View.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Category/View.php
index e49e273cb7302b9749cf591aa24244ac1f07a6bb..b8c85e290dd14f129545de8f05f50bd98352f79d 100755
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Category/View.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Category/View.php
@@ -7,8 +7,8 @@
 namespace Magento\Catalog\Test\Block\Category;
 
 use Magento\Widget\Test\Fixture\Widget;
-use Mtf\Block\Block;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class View
@@ -66,8 +66,7 @@ class View extends Block
     {
         $products = [];
         $this->waitForElementVisible($this->recentlyViewedProducts, Locator::SELECTOR_XPATH);
-        $productNames = $this->_rootElement->find($this->recentlyViewedProducts, Locator::SELECTOR_XPATH)
-            ->getElements();
+        $productNames = $this->_rootElement->getElements($this->recentlyViewedProducts, Locator::SELECTOR_XPATH);
         foreach ($productNames as $productName) {
             $products[] = $productName->getText();
         }
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/Additional.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/Additional.php
index 7cdcada069665e9aa94daeaaaf9ee83d9e87ac3e..fdfbc654c12bbc94ebfd21df16c4b71c332fbf9d 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/Additional.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/Additional.php
@@ -6,10 +6,11 @@
 
 namespace Magento\Catalog\Test\Block\Product;
 
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
 use Magento\Catalog\Test\Fixture\CatalogProductAttribute;
-use Mtf\Block\Block;
-use Mtf\Client\Element;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Client\Element\SimpleElement;
+use Magento\Mtf\Client\Element;
 
 /**
  * Product additional information block on the product page.
@@ -33,18 +34,19 @@ class Additional extends Block
     /**
      * Get product attributes.
      *
-     * @return Element[]
+     * @return SimpleElement[]
      */
     protected function getProductAttributes()
     {
         $data = [];
-        $elements = $this->_rootElement->find($this->attributeSelector, Locator::SELECTOR_XPATH)->getElements();
+        $elements = $this->_rootElement->getElements($this->attributeSelector, Locator::SELECTOR_XPATH);
         foreach ($elements as $element) {
             $data[$element->getText()] = $this->_rootElement->find(
                 $this->attributeSelector . $this->attributeValueSelector,
                 Locator::SELECTOR_XPATH
             );
         }
+
         return $data;
     }
 
@@ -67,11 +69,11 @@ class Additional extends Block
     /**
      * Find <tag1><tag2><tagN> ... </tagN></tag2></tag1> tag structure in element.
      *
-     * @param Element $element
+     * @param SimpleElement $element
      * @param string $selector
-     * @return Element
+     * @return SimpleElement
      */
-    protected function checkHtmlTagStructure(Element $element, $selector)
+    protected function checkHtmlTagStructure(SimpleElement $element, $selector)
     {
         return $element->find($selector);
     }
@@ -105,6 +107,7 @@ class Additional extends Block
         for ($index = 0; $index < $middleElement; $index++) {
             $selector .= $htmlData[$index]['tag'] . " ";
         }
+
         return trim($selector);
     }
 }
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/Compare/ListCompare.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/Compare/ListCompare.php
index 768edce417884a0dd1ec159f019b0cb66c85457c..22c7b8213d29da77df1d519a31ef2cf599554d05 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/Compare/ListCompare.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/Compare/ListCompare.php
@@ -6,9 +6,10 @@
 
 namespace Magento\Catalog\Test\Block\Product\Compare;
 
-use Mtf\Block\Block;
-use Mtf\Client\Element;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
+use Magento\Catalog\Test\Fixture\CatalogProductAttribute;
+use Magento\Mtf\Client\Element\SimpleElement;
 
 /**
  * Compare list product block.
@@ -116,7 +117,7 @@ class ListCompare extends Block
      * Get item compare product info.
      *
      * @param int $index
-     * @return Element
+     * @return SimpleElement
      */
     protected function getCompareProductInfo($index)
     {
@@ -139,7 +140,7 @@ class ListCompare extends Block
         );
 
         $data = [];
-        $attributes = $this->_rootElement->find($this->attribute)->getElements();
+        $attributes = $this->_rootElement->getElements($this->attribute);
         foreach ($attributes as $attribute) {
             $data[] = $attribute->getText();
         }
@@ -150,7 +151,7 @@ class ListCompare extends Block
      * Get item compare product attribute.
      *
      * @param string $key
-     * @return Element
+     * @return SimpleElement
      */
     public function getCompareProductAttribute($key)
     {
@@ -207,7 +208,6 @@ class ListCompare extends Block
         while ($this->isProductVisible()) {
             $this->removeProduct();
             $messageBlock->waitSuccessMessage();
-            $this->reinitRootElement();
         }
     }
 
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/Compare/Sidebar.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/Compare/Sidebar.php
index 6c6cc28808b42838de04a81ada3d6df2c89e6046..89d6ffe88b1ca4965507e43312608fc161f1c524 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/Compare/Sidebar.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/Compare/Sidebar.php
@@ -6,8 +6,6 @@
 
 namespace Magento\Catalog\Test\Block\Product\Compare;
 
-use Mtf\Client\Element;
-
 /**
  * Compare product block on cms page.
  */
@@ -51,7 +49,7 @@ class Sidebar extends ListCompare
                     return $rootElement->find($selector)->isVisible() ? true : null;
                 }
             );
-            $elements = $this->_rootElement->find($this->productName)->getElements();
+            $elements = $this->_rootElement->getElements($this->productName);
             foreach ($elements as $element) {
                 $result[] = $element->getText();
             }
@@ -74,6 +72,6 @@ class Sidebar extends ListCompare
     public function clickClearAll()
     {
         $this->_rootElement->find($this->clearAll)->click();
-        $this->_rootElement->acceptAlert();
+        $this->browser->acceptAlert();
     }
 }
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/Grouped/AssociatedProducts.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/Grouped/AssociatedProducts.php
index 4ac1574f4ef2df7ab256d03d0b68c6b4c4d065b2..59f48c60913a61f1803a35c706cead61b7272668 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/Grouped/AssociatedProducts.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/Grouped/AssociatedProducts.php
@@ -7,9 +7,10 @@
 namespace Magento\Catalog\Test\Block\Product\Grouped;
 
 use Magento\Backend\Test\Block\Widget\Tab;
-use Mtf\Client\Element;
-use Mtf\Client\Element\Locator;
-use Mtf\Factory\Factory;
+use Magento\Mtf\Client\Element\SimpleElement;
+use Magento\Mtf\Client\Element;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Factory\Factory;
 
 /**
  * Class AssociatedProducts
@@ -20,7 +21,7 @@ class AssociatedProducts extends Tab
     /**
      * 'Create New Option' button
      *
-     * @var Element
+     * @var SimpleElement
      */
     protected $addNewOption = '#grouped-product-container>button';
 
@@ -53,10 +54,10 @@ class AssociatedProducts extends Tab
     /**
      * Get associated products list block
      *
-     * @param Element $context
+     * @param SimpleElement $context
      * @return \Magento\Catalog\Test\Block\Product\Grouped\AssociatedProducts\ListAssociatedProducts
      */
-    protected function getListAssociatedProductsBlock(Element $context = null)
+    protected function getListAssociatedProductsBlock(SimpleElement $context = null)
     {
         $element = $context ?: $this->_rootElement;
 
@@ -69,10 +70,10 @@ class AssociatedProducts extends Tab
      * Fill data to fields on tab
      *
      * @param array $fields
-     * @param Element|null $element
+     * @param SimpleElement|null $element
      * @return $this
      */
-    public function fillFormTab(array $fields, Element $element = null)
+    public function fillFormTab(array $fields, SimpleElement $element = null)
     {
         if (isset($fields['grouped_products'])) {
             foreach ($fields['grouped_products']['value'] as $groupedProduct) {
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/Grouped/AssociatedProducts/ListAssociatedProducts.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/Grouped/AssociatedProducts/ListAssociatedProducts.php
index c99c9348ce3e2968ff4536b977337b32f6c487af..51fba6b4440a121a27ba5281175a4d52c99fb689 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/Grouped/AssociatedProducts/ListAssociatedProducts.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/Grouped/AssociatedProducts/ListAssociatedProducts.php
@@ -6,10 +6,10 @@
 
 namespace Magento\Catalog\Test\Block\Product\Grouped\AssociatedProducts;
 
-use Mtf\Block\Block;
-use Mtf\Client\Element;
-use Mtf\Client\Element\Locator;
-use Mtf\Factory\Factory;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Client\Element\SimpleElement;
+use Magento\Mtf\Factory\Factory;
 
 /**
  * Class ListAssociatedProducts
@@ -21,10 +21,10 @@ class ListAssociatedProducts extends Block
      * Getting block products
      *
      * @param string $productId
-     * @param Element $context
+     * @param SimpleElement $context
      * @return ListAssociatedProducts\Product
      */
-    private function getProductBlock($productId, Element $context = null)
+    private function getProductBlock($productId, SimpleElement $context = null)
     {
         $element = $context ?: $this->_rootElement;
         return Factory::getBlockFactory()
@@ -40,9 +40,9 @@ class ListAssociatedProducts extends Block
      * Filling options products
      *
      * @param array $data
-     * @param Element $element
+     * @param SimpleElement $element
      */
-    public function fillProductOptions(array $data, Element $element = null)
+    public function fillProductOptions(array $data, SimpleElement $element = null)
     {
         $productBlock = $this->getProductBlock($data['product_id']['value'], $element);
         $productBlock->fillQty($data['selection_qty']['value']);
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/Grouped/AssociatedProducts/ListAssociatedProducts/Product.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/Grouped/AssociatedProducts/ListAssociatedProducts/Product.php
index 7b1fadb9301234b426eeeba68d0a548a37340cef..80f0b1d6b8bd94d816c9d0cf676a96421a4ea339 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/Grouped/AssociatedProducts/ListAssociatedProducts/Product.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/Grouped/AssociatedProducts/ListAssociatedProducts/Product.php
@@ -6,8 +6,11 @@
 
 namespace Magento\Catalog\Test\Block\Product\Grouped\AssociatedProducts\ListAssociatedProducts;
 
-use Mtf\Block\Block;
+use Magento\Mtf\Block\Block;
 
+/**
+ * Class Product
+ */
 class Product extends Block
 {
     /**
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/Grouped/AssociatedProducts/Search/Grid.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/Grouped/AssociatedProducts/Search/Grid.php
index f04e5fefeb8c1ddcb89779c784846111e978dbf7..e8dc06003db01756a30cd7a4be1c7565e0be7557 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/Grouped/AssociatedProducts/Search/Grid.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/Grouped/AssociatedProducts/Search/Grid.php
@@ -10,7 +10,6 @@ use Magento\Backend\Test\Block\Widget\Grid as GridInterface;
 
 /**
  * Class Grid
- *
  */
 class Grid extends GridInterface
 {
@@ -37,6 +36,8 @@ class Grid extends GridInterface
 
     /**
      * Initialize block elements
+     * 
+     * @return void
      */
     protected function _init()
     {
@@ -46,6 +47,8 @@ class Grid extends GridInterface
 
     /**
      * Press 'Add Selected Products' button
+     * 
+     * @return void
      */
     public function addProducts()
     {
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/ListProduct.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/ListProduct.php
index d027c9ae4294ce7cf02b78cf24fb858a8098d2d0..4415fec2ac069e006b5cf47e8e3f4b27bc2a4319 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/ListProduct.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/ListProduct.php
@@ -6,10 +6,10 @@
 
 namespace Magento\Catalog\Test\Block\Product;
 
-use Mtf\Block\Block;
-use Mtf\Client\Element;
-use Mtf\Client\Element\Locator;
-use Mtf\Factory\Factory;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Client\Element\SimpleElement;
+use Magento\Mtf\Factory\Factory;
 
 /**
  * Product list.
@@ -135,7 +135,7 @@ class ListProduct extends Block
      * This method returns the element representing the product details for the named product.
      *
      * @param string $productName String containing the name of the product
-     * @return Element
+     * @return SimpleElement
      */
     protected function getProductDetailsElement($productName)
     {
@@ -149,7 +149,7 @@ class ListProduct extends Block
      * This method returns the element on the page associated with the product name.
      *
      * @param string $productName String containing the name of the product
-     * @return Element
+     * @return SimpleElement
      */
     protected function getProductNameElement($productName)
     {
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/Price.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/Price.php
index 51d590c9d8c4d9fca190c4dc59f963771dee95ef..52d04a0e4e82a7417462061c32c4793d58e146d8 100755
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/Price.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/Price.php
@@ -5,9 +5,9 @@
  */
 namespace Magento\Catalog\Test\Block\Product;
 
-use Mtf\Block\Block;
-use Mtf\Client\Element;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Client\Element\SimpleElement;
 
 /**
  * Class Price
@@ -267,7 +267,7 @@ class Price extends Block
      * Get specify type price element
      *
      * @param string $type
-     * @return Element
+     * @return SimpleElement
      */
     protected function getTypePriceElement($type)
     {
@@ -294,21 +294,23 @@ class Price extends Block
      * Get price excluding tax
      *
      * @param string $currency
-     * @return string
+     * @return string|null
      */
     public function getPriceExcludingTax($currency = '$')
     {
-        return trim($this->_rootElement->find($this->priceExcludingTax)->getText(), $currency);
+        $priceElement = $this->_rootElement->find($this->priceExcludingTax);
+        return $priceElement->isVisible() ? trim($priceElement->getText(), $currency) : null;
     }
 
     /**
      * Get price including tax
      *
      * @param string $currency
-     * @return string
+     * @return string|null
      */
     public function getPriceIncludingTax($currency = '$')
     {
-        return trim($this->_rootElement->find($this->priceIncludingTax)->getText(), $currency);
+        $priceElement = $this->_rootElement->find($this->priceIncludingTax);
+        return $priceElement->isVisible() ? trim($priceElement->getText(), $currency) : null;
     }
 }
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/ProductList/BottomToolbar.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/ProductList/BottomToolbar.php
index e5866a521d3356714806fd22fc39a443488829bd..7bbe9c2d7613cc7dd708a84262dad9f058a8fc64 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/ProductList/BottomToolbar.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/ProductList/BottomToolbar.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Catalog\Test\Block\Product\ProductList;
 
-use Mtf\Block\Block;
+use Magento\Mtf\Block\Block;
 
 /**
  * Class BottomToolbar
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/ProductList/Crosssell.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/ProductList/Crosssell.php
index 6c4bf4c8f62043485b138876159870983a64c31d..9b5d42d49b9130569596ad016c0d2eb7b754c469 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/ProductList/Crosssell.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/ProductList/Crosssell.php
@@ -6,11 +6,11 @@
 
 namespace Magento\Catalog\Test\Block\Product\ProductList;
 
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Client\Element\SimpleElement;
 use Magento\Catalog\Test\Fixture\Product;
-use Mtf\Block\Block;
-use Mtf\Client\Element;
-use Mtf\Client\Element\Locator;
-use Mtf\Fixture\FixtureInterface;
 
 /**
  * Class Crosssell
@@ -41,7 +41,7 @@ class Crosssell extends Block
      * Click on cross-sell product link
      *
      * @param Product $product
-     * @return Element
+     * @return SimpleElement
      */
     public function clickLink($product)
     {
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/ProductList/Related.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/ProductList/Related.php
index 6d36de4de97a02a41a281c174f2de7c8b1f33fa9..dd65782e9f253ada489329075282f5ce4f76d7a2 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/ProductList/Related.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/ProductList/Related.php
@@ -6,9 +6,9 @@
 
 namespace Magento\Catalog\Test\Block\Product\ProductList;
 
-use Mtf\Block\Block;
-use Mtf\Client\Element;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Client\Element\SimpleElement;
 
 /**
  * Class Related
@@ -73,7 +73,7 @@ class Related extends Block
      * Get related product element
      *
      * @param string $productName
-     * @return Element
+     * @return SimpleElement
      */
     private function getProductElement($productName)
     {
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/ProductList/TopToolbar.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/ProductList/TopToolbar.php
index 4090f15dc3637c48c75d7489f3734eb8f1509bbe..7f53f190bd41710fa6988f628f35227df4c760b6 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/ProductList/TopToolbar.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/ProductList/TopToolbar.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Catalog\Test\Block\Product\ProductList;
 
-use Mtf\Block\Block;
+use Magento\Mtf\Block\Block;
 
 /**
  * Class TopToolbar
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/ProductList/Upsell.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/ProductList/Upsell.php
index e789535fa0428b2551a299ff77913faa2ea9a86e..ce1ee095156a918fd8fbd2d0e077045fc254aba9 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/ProductList/Upsell.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/ProductList/Upsell.php
@@ -6,9 +6,9 @@
 
 namespace Magento\Catalog\Test\Block\Product\ProductList;
 
-use Mtf\Block\Block;
-use Mtf\Client\Element;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Client\Element\SimpleElement;
 
 /**
  * Class Upsell
@@ -48,7 +48,7 @@ class Upsell extends Block
      * Get a the product
      *
      * @param string $productName
-     * @return Element
+     * @return SimpleElement
      */
     private function getProductElement($productName)
     {
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/View.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/View.php
index 20da95313d9949902d58e7e176d3c75f2856a623..b658bb823cdfd53903156b7a9aa8580d49ece99e 100755
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/View.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/View.php
@@ -8,9 +8,9 @@ namespace Magento\Catalog\Test\Block\Product;
 
 use Magento\Catalog\Test\Block\AbstractConfigureBlock;
 use Magento\Catalog\Test\Fixture\CatalogProductSimple;
-use Mtf\Client\Element\Locator;
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Product view block on the product page.
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/View/CustomOptions.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/View/CustomOptions.php
index 67b43503f752ae135f800c96e215197a039ffb6f..ea07ff104aafa1ea93f96eb3a7b1e0b79f84b35b 100755
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/View/CustomOptions.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Product/View/CustomOptions.php
@@ -6,11 +6,11 @@
 
 namespace Magento\Catalog\Test\Block\Product\View;
 
-use Mtf\Block\Form;
-use Mtf\Client\Element;
-use Mtf\Client\Element\Locator;
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Block\Form;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Client\Element\SimpleElement;
 
 /**
  * Class CustomOptions
@@ -136,7 +136,7 @@ class CustomOptions extends Form
                 throw new \Exception("Can't find option: \"{$title}\"");
             }
 
-            /** @var Element $optionElement */
+            /** @var SimpleElement $optionElement */
             $optionElement = $listCustomOptions[$title];
             $typeMethod = preg_replace('/[^a-zA-Z]/', '', $option['type']);
             $getTypeData = 'get' . ucfirst(strtolower($typeMethod)) . 'Data';
@@ -178,10 +178,10 @@ class CustomOptions extends Form
     /**
      * Get data of "Field" custom option
      *
-     * @param Element $option
+     * @param SimpleElement $option
      * @return array
      */
-    protected function getFieldData(Element $option)
+    protected function getFieldData(SimpleElement $option)
     {
         $price = $this->getOptionPriceNotice($option);
         $maxCharacters = $option->find($this->maxCharacters, Locator::SELECTOR_XPATH);
@@ -199,10 +199,10 @@ class CustomOptions extends Form
     /**
      * Get data of "Area" custom option
      *
-     * @param Element $option
+     * @param SimpleElement $option
      * @return array
      */
-    protected function getAreaData(Element $option)
+    protected function getAreaData(SimpleElement $option)
     {
         return $this->getFieldData($option);
     }
@@ -210,10 +210,10 @@ class CustomOptions extends Form
     /**
      * Get data of "File" custom option
      *
-     * @param Element $option
+     * @param SimpleElement $option
      * @return array
      */
-    protected function getFileData(Element $option)
+    protected function getFileData(SimpleElement $option)
     {
         $price = $this->getOptionPriceNotice($option);
 
@@ -232,10 +232,10 @@ class CustomOptions extends Form
     /**
      * Get data of "Drop-down" custom option
      *
-     * @param Element $option
+     * @param SimpleElement $option
      * @return array
      */
-    protected function getDropdownData(Element $option)
+    protected function getDropdownData(SimpleElement $option)
     {
         $select = $option->find($this->selectOption, Locator::SELECTOR_XPATH, 'select');
         // Skip "Choose option ..."(option #1)
@@ -245,10 +245,10 @@ class CustomOptions extends Form
     /**
      * Get data of "Multiple Select" custom option
      *
-     * @param Element $option
+     * @param SimpleElement $option
      * @return array
      */
-    protected function getMultipleSelectData(Element $option)
+    protected function getMultipleSelectData(SimpleElement $option)
     {
         $multiselect = $option->find($this->selectOption, Locator::SELECTOR_XPATH, 'multiselect');
         return $this->getSelectOptionsData($multiselect, 1);
@@ -257,14 +257,15 @@ class CustomOptions extends Form
     /**
      * Get data of "Radio Buttons" custom option
      *
-     * @param Element $option
+     * @param SimpleElement $option
      * @return array
      */
-    protected function getRadioButtonsData(Element $option)
+    protected function getRadioButtonsData(SimpleElement $option)
     {
         $listOptions = [];
 
         $count = 1;
+        /** @var SimpleElement $option */
         $option = $option->find(sprintf($this->optionLabel, $count), Locator::SELECTOR_XPATH);
         while ($option->isVisible()) {
             $listOptions[] = $this->parseOptionText($option->getText());
@@ -280,10 +281,10 @@ class CustomOptions extends Form
     /**
      * Get data of "Checkbox" custom option
      *
-     * @param Element $option
+     * @param SimpleElement $option
      * @return array
      */
-    protected function getCheckboxData(Element $option)
+    protected function getCheckboxData(SimpleElement $option)
     {
         return $this->getRadioButtonsData($option);
     }
@@ -291,10 +292,10 @@ class CustomOptions extends Form
     /**
      * Get data of "Date" custom option
      *
-     * @param Element $option
+     * @param SimpleElement $option
      * @return array
      */
-    protected function getDateData(Element $option)
+    protected function getDateData(SimpleElement $option)
     {
         $price = $this->getOptionPriceNotice($option);
 
@@ -310,10 +311,10 @@ class CustomOptions extends Form
     /**
      * Get data of "Date & Time" custom option
      *
-     * @param Element $option
+     * @param SimpleElement $option
      * @return array
      */
-    protected function getDateTimeData(Element $option)
+    protected function getDateTimeData(SimpleElement $option)
     {
         return $this->getDateData($option);
     }
@@ -321,10 +322,10 @@ class CustomOptions extends Form
     /**
      * Get data of "Time" custom option
      *
-     * @param Element $option
+     * @param SimpleElement $option
      * @return array
      */
-    protected function getTimeData(Element $option)
+    protected function getTimeData(SimpleElement $option)
     {
         return $this->getDateData($option);
     }
@@ -332,11 +333,11 @@ class CustomOptions extends Form
     /**
      * Get data from option of select and multiselect
      *
-     * @param Element $element
+     * @param SimpleElement $element
      * @param int $firstOption
      * @return array
      */
-    protected function getSelectOptionsData(Element $element, $firstOption = 1)
+    protected function getSelectOptionsData(SimpleElement $element, $firstOption = 1)
     {
         $listOptions = [];
 
@@ -356,10 +357,10 @@ class CustomOptions extends Form
     /**
      * Get price from price-notice of custom option
      *
-     * @param Element $option
+     * @param SimpleElement $option
      * @return array
      */
-    protected function getOptionPriceNotice(Element $option)
+    protected function getOptionPriceNotice(SimpleElement $option)
     {
         $priceNotice = $option->find($this->priceNotice, Locator::SELECTOR_XPATH);
         if (!$priceNotice->isVisible()) {
@@ -371,11 +372,11 @@ class CustomOptions extends Form
     /**
      * Get notice of option by number
      *
-     * @param Element $option
+     * @param SimpleElement $option
      * @param int $number
      * @return mixed
      */
-    protected function getOptionNotice(Element $option, $number)
+    protected function getOptionNotice(SimpleElement $option, $number)
     {
         $note = $option->find(sprintf($this->noteByNumber, $number), Locator::SELECTOR_XPATH);
         return $note->isVisible() ? $note->getText() : null;
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Search.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Search.php
index c66390c667a0aea80c3f0db60d7a36a9f0391008..2257512b72f9ea91dba1592cd19a6248fc37801e 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Search.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Block/Search.php
@@ -6,8 +6,8 @@
 
 namespace Magento\Catalog\Test\Block;
 
-use Mtf\Block\Block;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class Search
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertAbsenceDeleteAttributeButton.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertAbsenceDeleteAttributeButton.php
index 4174cb6d23eec32def16c6c84debca60990744a4..3c017e29dabb46fdcf629f3279483a9c49fd1bd2 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertAbsenceDeleteAttributeButton.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertAbsenceDeleteAttributeButton.php
@@ -7,7 +7,7 @@
 namespace Magento\Catalog\Test\Constraint;
 
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductAttributeNew;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertAbsenceDeleteAttributeButton
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertAddToCartButtonAbsent.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertAddToCartButtonAbsent.php
index 71992451111a951d9d1d62e70788a74e996ac217..4aad21571bd7d4b45d3e40c4b4bffc1fa2cf0b5c 100755
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertAddToCartButtonAbsent.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertAddToCartButtonAbsent.php
@@ -10,7 +10,7 @@ use Magento\Catalog\Test\Fixture\CatalogProductSimple;
 use Magento\Catalog\Test\Page\Category\CatalogCategoryView;
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
 use Magento\Cms\Test\Page\CmsIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertAddToCartButtonAbsent
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertAddToCartButtonPresent.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertAddToCartButtonPresent.php
index 470580cddbf0d69429fd9aec40fe11190eacc76d..b779f7a8eaaee717b523a6e35f19e2546f7cf881 100755
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertAddToCartButtonPresent.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertAddToCartButtonPresent.php
@@ -10,7 +10,7 @@ use Magento\Catalog\Test\Fixture\CatalogProductSimple;
 use Magento\Catalog\Test\Page\Category\CatalogCategoryView;
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
 use Magento\Cms\Test\Page\CmsIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertAddToCartButtonPresent
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertAddedProductAttributeOnProductForm.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertAddedProductAttributeOnProductForm.php
index bede746efbbdef74006e1678780dbc5ca1cd0f1a..a5ffd6438ac26a03e795ad3881931b492f8d435f 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertAddedProductAttributeOnProductForm.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertAddedProductAttributeOnProductForm.php
@@ -8,12 +8,12 @@ namespace Magento\Catalog\Test\Constraint;
 
 use Magento\Catalog\Test\Fixture\CatalogAttributeSet;
 use Magento\Catalog\Test\Fixture\CatalogProductSimple;
-use Mtf\Fixture\InjectableFixture;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Constraint\AbstractConstraint;
 use Magento\Catalog\Test\Fixture\CatalogProductAttribute;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductEdit;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductIndex;
-use Mtf\ObjectManager;
+use Magento\Mtf\ObjectManager;
 
 /**
  * Check attribute on product form.
@@ -62,16 +62,6 @@ class AssertAddedProductAttributeOnProductForm extends AbstractConstraint
         );
     }
 
-    /**
-     * Text of Product Attribute is present on the Product form.
-     *
-     * @return string
-     */
-    public function toString()
-    {
-        return 'Product Attribute is present on Product form.';
-    }
-
     /**
      * Create Product With AttributeSet.
      *
@@ -87,7 +77,16 @@ class AssertAddedProductAttributeOnProductForm extends AbstractConstraint
             'Magento\Catalog\Test\TestStep\AddAttributeToProductTemplateStep',
             ['attribute' => $attribute, 'productTemplate' => $productTemplate]
         )->run();
-        ObjectManager::getInstance()->create('Magento\Catalog\Test\TestStep\SaveProductTemplateStep')->run();
         return $product['product'];
     }
+
+    /**
+     * Text of Product Attribute is present on the Product form.
+     *
+     * @return string
+     */
+    public function toString()
+    {
+        return 'Product Attribute is present on Product form.';
+    }
 }
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertAttributeForm.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertAttributeForm.php
index f6bf41059077ce17bb33c89318cd9238d0da5bfa..d559f1386cdeb188c49f502c482c8e6e50828d7a 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertAttributeForm.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertAttributeForm.php
@@ -9,7 +9,7 @@ namespace Magento\Catalog\Test\Constraint;
 use Magento\Catalog\Test\Fixture\CatalogProductAttribute;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductAttributeIndex;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductAttributeNew;
-use Mtf\Constraint\AbstractAssertForm;
+use Magento\Mtf\Constraint\AbstractAssertForm;
 
 /**
  * Assert that displayed attribute data on edit page equals passed from fixture.
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertAttributeOptionsOnProductForm.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertAttributeOptionsOnProductForm.php
index 7ce9ed37e4622fb772f0d0508e1df21679e26dbf..5d8898934c1a2738ada381c0baa9f6478993b17b 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertAttributeOptionsOnProductForm.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertAttributeOptionsOnProductForm.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Catalog\Test\Constraint;
 
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertAttributeOptionsOnProductForm
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertAttributeSearchableByLabel.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertAttributeSearchableByLabel.php
index 0497a34073664f5fd56877701dcd60945e50d8b9..f79f14a6689162ce1aa3b36d50ffa1b5ac0eb200 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertAttributeSearchableByLabel.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertAttributeSearchableByLabel.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Catalog\Test\Constraint;
 
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertAttributeSearchableByLabel
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertCategoryAbsenceOnBackend.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertCategoryAbsenceOnBackend.php
index 27fc2e71702c2d63435b098e5ef4d13942f236db..16be1cbf6e00c53f64ec2c4708ea64dde2c2bbbe 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertCategoryAbsenceOnBackend.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertCategoryAbsenceOnBackend.php
@@ -6,9 +6,9 @@
 
 namespace Magento\Catalog\Test\Constraint;
 
-use Magento\Catalog\Test\Fixture\CatalogCategory;
+use Magento\Catalog\Test\Fixture\Category;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogCategoryIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertCategoryAbsenceOnBackend
@@ -24,10 +24,10 @@ class AssertCategoryAbsenceOnBackend extends AbstractConstraint
      * Assert that not displayed category in backend catalog category tree
      *
      * @param CatalogCategoryIndex $catalogCategoryIndex
-     * @param CatalogCategory $category
+     * @param Category $category
      * @return void
      */
-    public function processAssert(CatalogCategoryIndex $catalogCategoryIndex, CatalogCategory $category)
+    public function processAssert(CatalogCategoryIndex $catalogCategoryIndex, Category $category)
     {
         $catalogCategoryIndex->open();
         \PHPUnit_Framework_Assert::assertFalse(
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertCategoryAbsenceOnFrontend.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertCategoryAbsenceOnFrontend.php
index fc2d40986fc8c71433650b1e451047f971f58417..f4c2b6530a788f6bbed326bdf08b199f0ebb1847 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertCategoryAbsenceOnFrontend.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertCategoryAbsenceOnFrontend.php
@@ -6,10 +6,10 @@
 
 namespace Magento\Catalog\Test\Constraint;
 
-use Magento\Catalog\Test\Fixture\CatalogCategory;
+use Magento\Catalog\Test\Fixture\Category;
 use Magento\Catalog\Test\Page\Category\CatalogCategoryView;
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertCategoryAbsenceOnFrontend
@@ -29,13 +29,16 @@ class AssertCategoryAbsenceOnFrontend extends AbstractConstraint
     /**
      * Assert that not displayed category in frontend main menu
      *
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @param CatalogCategoryView $categoryView
-     * @param CatalogCategory $category
+     * @param Category $category
      * @return void
      */
-    public function processAssert(Browser $browser, CatalogCategoryView $categoryView, CatalogCategory $category)
-    {
+    public function processAssert(
+        BrowserInterface $browser,
+        CatalogCategoryView $categoryView,
+        Category $category
+    ) {
         $browser->open($_ENV['app_frontend_url'] . $category->getUrlKey() . '.html');
         \PHPUnit_Framework_Assert::assertEquals(
             self::NOT_FOUND_MESSAGE,
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertCategoryForAssignedProducts.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertCategoryForAssignedProducts.php
index 730912bd5750b8e6f7e3791d198f225a6b84a5a3..f81d4b389d29c8b3134c06bd14d05a11e5e53064 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertCategoryForAssignedProducts.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertCategoryForAssignedProducts.php
@@ -6,10 +6,10 @@
 
 namespace Magento\Catalog\Test\Constraint;
 
-use Magento\Catalog\Test\Fixture\CatalogCategory;
+use Magento\Catalog\Test\Fixture\Category;
 use Magento\Catalog\Test\Page\Category\CatalogCategoryView;
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertCategoryForAssignedProducts
@@ -24,15 +24,23 @@ class AssertCategoryForAssignedProducts extends AbstractConstraint
     /**
      * Assert that displayed assigned products on category page equals passed from fixture
      *
-     * @param CatalogCategory $category
+     * @param Category $category
      * @param CatalogCategoryView $categoryView
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @return void
      */
-    public function processAssert(CatalogCategory $category, CatalogCategoryView $categoryView, Browser $browser)
-    {
-        $browser->open($_ENV['app_frontend_url'] . strtolower($category->getUrlKey()) . '.html');
+    public function processAssert(
+        Category $category,
+        CatalogCategoryView $categoryView,
+        BrowserInterface $browser
+    ) {
+        $categoryUrlKey = $category->hasData('url_key')
+            ? strtolower($category->getUrlKey())
+            : trim(strtolower(preg_replace('#[^0-9a-z%]+#i', '-', $category->getName())), '-');
+        
         $products = $category->getDataFieldConfig('category_products')['source']->getProducts();
+
+        $browser->open($_ENV['app_frontend_url'] . $categoryUrlKey . '.html');
         foreach ($products as $productFixture) {
             \PHPUnit_Framework_Assert::assertTrue(
                 $categoryView->getListProductBlock()->isProductVisible($productFixture->getName()),
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertCategoryForm.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertCategoryForm.php
index 0884d52832113cc36e86172ef0bee2bff2d38a11..06d7ce4fe0af9a7e130f0b0678d150d059657ae4 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertCategoryForm.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertCategoryForm.php
@@ -6,30 +6,97 @@
 
 namespace Magento\Catalog\Test\Constraint;
 
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Catalog\Test\Fixture\Category;
+use Magento\Catalog\Test\Page\Adminhtml\CatalogCategoryEdit;
+use Magento\Catalog\Test\Page\Adminhtml\CatalogCategoryIndex;
+use Magento\Mtf\Constraint\AbstractAssertForm;
 
 /**
- * Class AssertCategoryForm
+ * Assert that displayed category data on edit page equals passed from fixture.
  */
-class AssertCategoryForm extends AbstractConstraint
+class AssertCategoryForm extends AbstractAssertForm
 {
     /* tags */
     const SEVERITY = 'low';
     /* end tags */
 
     /**
+     * List skipped fixture fields in verify.
+     *
+     * @var array
+     */
+    protected $skippedFixtureFields = [
+        'parent_id'
+    ];
+
+    /**
+     * Assert that displayed category data on edit page equals passed from fixture.
+     *
+     * @param CatalogCategoryIndex $catalogCategoryIndex
+     * @param CatalogCategoryEdit $catalogCategoryEdit
+     * @param Category $category
      * @return void
      */
-    public function processAssert()
+    public function processAssert(
+        CatalogCategoryIndex $catalogCategoryIndex,
+        CatalogCategoryEdit $catalogCategoryEdit,
+        Category $category
+    ) {
+        $catalogCategoryIndex->open();
+        $catalogCategoryIndex->getTreeCategories()->selectCategory($category, true);
+
+        $fixtureData = $this->prepareFixtureData($category->getData());
+        $formData = $catalogCategoryEdit->getEditForm()->getData($category);
+        $error = $this->verifyData($this->sortData($fixtureData), $this->sortData($formData));
+        \PHPUnit_Framework_Assert::assertEmpty($error);
+    }
+
+    /**
+     * Prepares fixture data for comparison.
+     *
+     * @param array $data
+     * @return array
+     */
+    protected function prepareFixtureData(array $data)
     {
-        //
+        if (!isset($data['parent_id'])) {
+            $this->skippedFixtureFields[] = 'url_key';
+        }
+
+        if (isset($data['url_key'])) {
+            $data['url_key'] = strtolower($data['url_key']);
+        }
+
+        return array_diff_key($data, array_flip($this->skippedFixtureFields));
+    }
+
+    /**
+     * Sort data for comparison.
+     *
+     * @param array $data
+     * @return array
+     */
+    protected function sortData(array $data)
+    {
+        if (isset($data['available_sort_by'])) {
+            $data['available_sort_by'] = array_values($data['available_sort_by']);
+            sort($data['available_sort_by']);
+        }
+
+        if (isset($data['category_products'])) {
+            sort($data['category_products']);
+        }
+
+        return $data;
     }
 
     /**
+     * Returns a string representation of the object.
+     *
      * @return string
      */
     public function toString()
     {
-        //
+        return 'Category data on edit page equals to passed from fixture.';
     }
 }
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertCategoryIsNotActive.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertCategoryIsNotActive.php
index 6e964083f3e43028f7cf0393f4f3ec3b87d4aea2..b83d2fd8599096f58a466fbd350e67eae246d20f 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertCategoryIsNotActive.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertCategoryIsNotActive.php
@@ -6,10 +6,10 @@
 
 namespace Magento\Catalog\Test\Constraint;
 
-use Magento\Catalog\Test\Fixture\CatalogCategory;
+use Magento\Catalog\Test\Fixture\Category;
 use Magento\Cms\Test\Page\CmsIndex;
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertCategoryIsNotActive
@@ -27,11 +27,11 @@ class AssertCategoryIsNotActive extends AbstractConstraint
      * Assert that the category cannot be accessed from the navigation bar in the frontend
      *
      * @param CmsIndex $cmsIndex
-     * @param CatalogCategory $category
-     * @param Browser $browser
+     * @param Category $category
+     * @param BrowserInterface $browser
      * @return void
      */
-    public function processAssert(CmsIndex $cmsIndex, CatalogCategory $category, Browser $browser)
+    public function processAssert(CmsIndex $cmsIndex, Category $category, BrowserInterface $browser)
     {
         $cmsIndex->open();
         \PHPUnit_Framework_Assert::assertFalse(
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertCategoryIsNotIncludeInMenu.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertCategoryIsNotIncludeInMenu.php
index 39d65e51678325a34a39c81ac483aaccd4370317..07b23794984b7c3851b2c1d10fcb5cfb97085a6f 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertCategoryIsNotIncludeInMenu.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertCategoryIsNotIncludeInMenu.php
@@ -6,11 +6,11 @@
 
 namespace Magento\Catalog\Test\Constraint;
 
-use Magento\Catalog\Test\Fixture\CatalogCategory;
+use Magento\Catalog\Test\Fixture\Category;
 use Magento\Catalog\Test\Page\Category\CatalogCategoryView;
 use Magento\Cms\Test\Page\CmsIndex;
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertCategoryIsNotIncludeInMenu
@@ -26,15 +26,15 @@ class AssertCategoryIsNotIncludeInMenu extends AbstractConstraint
      * Assert that the category is no longer available on the top menu bar
      *
      * @param CmsIndex $cmsIndex
-     * @param CatalogCategory $category
-     * @param Browser $browser
+     * @param Category $category
+     * @param BrowserInterface $browser
      * @param CatalogCategoryView $categoryView
      * @return void
      */
     public function processAssert(
         CmsIndex $cmsIndex,
-        CatalogCategory $category,
-        Browser $browser,
+        Category $category,
+        BrowserInterface $browser,
         CatalogCategoryView $categoryView
     ) {
         $cmsIndex->open();
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertCategoryPage.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertCategoryPage.php
index 33d01de0a35b75b736feb7e6adaadd917ec8b7b9..3197b59c3d55c54550f2dbfaa8dd952db5938ec4 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertCategoryPage.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertCategoryPage.php
@@ -6,15 +6,15 @@
 
 namespace Magento\Catalog\Test\Constraint;
 
-use Magento\Catalog\Test\Fixture\CatalogCategory;
+use Magento\Catalog\Test\Fixture\Category;
+use Magento\Catalog\Test\Fixture\Category\LandingPage;
 use Magento\Catalog\Test\Page\Category\CatalogCategoryView;
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\FixtureFactory;
 
 /**
- * Class AssertCategoryPage
- * Assert that displayed category data on category page equals to passed from fixture
+ * Assert that displayed category data on category page equals to passed from fixture.
  */
 class AssertCategoryPage extends AbstractConstraint
 {
@@ -23,22 +23,62 @@ class AssertCategoryPage extends AbstractConstraint
     /* end tags */
 
     /**
-     * Assert that displayed category data on category page equals to passed from fixture
+     * CMS Block display mode
      *
-     * @param CatalogCategory $category
-     * @param CatalogCategory $initialCategory
+     * @var array
+     */
+    protected $visibleCmsBlockMode = [
+        'Static block only',
+        'Static block and products'
+    ];
+
+    /**
+     * Category view page
+     *
+     * @var CatalogCategoryView
+     */
+    protected $categoryViewPage;
+
+    /**
+     * Browser instance
+     *
+     * @var Browser
+     */
+    protected $browser;
+
+    /**
+     * Assert that displayed category data on category page equals to passed from fixture.
+     *
+     * @param Category $category
+     * @param Category $initialCategory
      * @param FixtureFactory $fixtureFactory
      * @param CatalogCategoryView $categoryView
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @return void
      */
     public function processAssert(
-        CatalogCategory $category,
-        CatalogCategory $initialCategory,
+        Category $category,
+        Category $initialCategory,
         FixtureFactory $fixtureFactory,
         CatalogCategoryView $categoryView,
-        Browser $browser
+        BrowserInterface $browser
     ) {
+        $this->browser = $browser;
+        $this->categoryViewPage = $categoryView;
+        $categoryData = $this->prepareData($fixtureFactory, $category, $initialCategory);
+        $this->browser->open($this->getCategoryUrl($category));
+        $this->assertGeneralInformation($category, $categoryData);
+        $this->assertDisplaySetting($category, $categoryData);
+    }
+
+    /**
+     * @param FixtureFactory $fixtureFactory
+     * @param Category $category
+     * @param Category $initialCategory
+     * @return array
+     */
+    protected function prepareData(FixtureFactory $fixtureFactory, Category $category, Category $initialCategory)
+    {
         $product = $fixtureFactory->createByCode(
             'catalogProductSimple',
             [
@@ -50,20 +90,45 @@ class AssertCategoryPage extends AbstractConstraint
                 ]
             ]
         );
-        $categoryData = array_merge($initialCategory->getData(), $category->getData());
         $product->persist();
-        $url = $_ENV['app_frontend_url'] . strtolower($category->getUrlKey()) . '.html';
-        $browser->open($url);
+
+        return array_merge($initialCategory->getData(), $category->getData());
+    }
+
+    /**
+     * Get category url to open
+     *
+     * @param Category $category
+     * @return string
+     */
+    protected function getCategoryUrl(Category $category)
+    {
+        $categoryUrlKey = $category->hasData('url_key')
+            ? strtolower($category->getUrlKey())
+            : trim(strtolower(preg_replace('#[^0-9a-z%]+#i', '-', $category->getName())), '-');
+        return $_ENV['app_frontend_url'] . $categoryUrlKey . '.html';
+    }
+
+    /**
+     * Assert category general information
+     *
+     * @param Category $category
+     * @param array $categoryData
+     * @return void
+     */
+    protected function assertGeneralInformation(Category $category, array $categoryData)
+    {
+        $categoryUrl = $this->getCategoryUrl($category);
         \PHPUnit_Framework_Assert::assertEquals(
-            $url,
-            $browser->getUrl(),
+            $categoryUrl,
+            $this->browser->getUrl(),
             'Wrong page URL.'
-            . "\nExpected: " . $url
-            . "\nActual: " . $browser->getUrl()
+            . "\nExpected: " . $categoryUrl
+            . "\nActual: " . $this->browser->getUrl()
         );
 
         if (isset($categoryData['name'])) {
-            $title = $categoryView->getTitleBlock()->getTitle();
+            $title = $this->categoryViewPage->getTitleBlock()->getTitle();
             \PHPUnit_Framework_Assert::assertEquals(
                 $categoryData['name'],
                 $title,
@@ -74,7 +139,7 @@ class AssertCategoryPage extends AbstractConstraint
         }
 
         if (isset($categoryData['description'])) {
-            $description = $categoryView->getViewBlock()->getDescription();
+            $description = $this->categoryViewPage->getViewBlock()->getDescription();
             \PHPUnit_Framework_Assert::assertEquals(
                 $categoryData['description'],
                 $description,
@@ -83,10 +148,38 @@ class AssertCategoryPage extends AbstractConstraint
                 . "\nActual: " . $description
             );
         }
+    }
+
+    /**
+     * Assert category display settings
+     *
+     * @param Category $category
+     * @param array $categoryData
+     * @return void
+     */
+    protected function assertDisplaySetting(Category $category, array $categoryData)
+    {
+        if (
+            isset($categoryData['landing_page'])
+            && isset($categoryData['display_mode'])
+            && in_array($categoryData['display_mode'], $this->visibleCmsBlockMode)
+        ) {
+            /** @var LandingPage $sourceLandingPage */
+            $sourceLandingPage = $category->getDataFieldConfig('landing_page')['source'];
+            $fixtureContent = $sourceLandingPage->getCmsBlock()->getContent();
+            $pageContent = $this->categoryViewPage->getViewBlock()->getContent();
 
+            \PHPUnit_Framework_Assert::assertEquals(
+                $fixtureContent,
+                $pageContent,
+                'Wrong category landing page content.'
+                . "\nExpected: " . $fixtureContent
+                . "\nActual: " . $pageContent
+            );
+        }
         if (isset($categoryData['default_sort_by'])) {
             $sortBy = strtolower($categoryData['default_sort_by']);
-            $sortType = $categoryView->getTopToolbar()->getSelectSortType();
+            $sortType = $this->categoryViewPage->getTopToolbar()->getSelectSortType();
             \PHPUnit_Framework_Assert::assertEquals(
                 $sortBy,
                 $sortType,
@@ -105,7 +198,7 @@ class AssertCategoryPage extends AbstractConstraint
             );
             if ($availableSortType) {
                 $availableSortType = array_values($availableSortType);
-                $availableSortTypeOnPage = $categoryView->getTopToolbar()->getSortType();
+                $availableSortTypeOnPage = $this->categoryViewPage->getTopToolbar()->getSortType();
                 \PHPUnit_Framework_Assert::assertEquals(
                     $availableSortType,
                     $availableSortTypeOnPage,
@@ -118,7 +211,7 @@ class AssertCategoryPage extends AbstractConstraint
     }
 
     /**
-     * Returns a string representation of the object
+     * Returns a string representation of the object.
      *
      * @return string
      */
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertCategoryRedirect.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertCategoryRedirect.php
index e1f1d159b80016c4005e6c9af1430a827b46bf10..3c72fa66599ca92c9a28fc8be1c38dd80a07dadb 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertCategoryRedirect.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertCategoryRedirect.php
@@ -6,9 +6,9 @@
 
 namespace Magento\Catalog\Test\Constraint;
 
-use Magento\Catalog\Test\Fixture\CatalogCategory;
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Catalog\Test\Fixture\Category;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertCategoryRedirect
@@ -23,13 +23,16 @@ class AssertCategoryRedirect extends AbstractConstraint
     /**
      * Assert that old Category URL lead to appropriate Category in frontend
      *
-     * @param CatalogCategory $category
-     * @param Browser $browser
-     * @param CatalogCategory $initialCategory
+     * @param Category $category
+     * @param BrowserInterface $browser
+     * @param Category $initialCategory
      * @return void
      */
-    public function processAssert(CatalogCategory $category, Browser $browser, CatalogCategory $initialCategory)
-    {
+    public function processAssert(
+        Category $category,
+        BrowserInterface $browser,
+        Category $initialCategory
+    ) {
         $browser->open($_ENV['app_frontend_url'] . $initialCategory->getUrlKey() . '.html');
 
         \PHPUnit_Framework_Assert::assertEquals(
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertCategorySaveMessage.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertCategorySaveMessage.php
index 37150e69985c4c98a3c07238c12d45911a9d36b1..95552645afe7e149e7ba2f9c366e1f558c961db3 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertCategorySaveMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertCategorySaveMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Catalog\Test\Constraint;
 
 use Magento\Catalog\Test\Page\Adminhtml\CatalogCategoryEdit;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertCategorySaveMessage
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertCategorySuccessDeleteMessage.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertCategorySuccessDeleteMessage.php
index 898a92ea6d2b0c0f70b6d87dd065b9085d19c241..2f0348ef51d09b87ea04220c51ac93dda48fe21f 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertCategorySuccessDeleteMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertCategorySuccessDeleteMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Catalog\Test\Constraint;
 
 use Magento\Catalog\Test\Page\Adminhtml\CatalogCategoryEdit;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertCategorySuccessDeleteMessage
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertCrossSellsProductsSection.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertCrossSellsProductsSection.php
index 7f785f4e19a22337783d39ac25f4e08c8b01a6ab..b6a8c8c559ffa911229abef13587bd3fe72e5b6f 100755
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertCrossSellsProductsSection.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertCrossSellsProductsSection.php
@@ -9,9 +9,9 @@ namespace Magento\Catalog\Test\Constraint;
 use Magento\Catalog\Test\Fixture\CatalogProductSimple;
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
 use Magento\Checkout\Test\Page\CheckoutCart;
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Class AssertCrossSellsProductsSection
@@ -26,7 +26,7 @@ class AssertCrossSellsProductsSection extends AbstractConstraint
     /**
      * Assert that product is displayed in cross-sell section
      *
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @param CheckoutCart $checkoutCart
      * @param CatalogProductSimple $product
      * @param CatalogProductView $catalogProductView
@@ -34,7 +34,7 @@ class AssertCrossSellsProductsSection extends AbstractConstraint
      * @return void
      */
     public function processAssert(
-        Browser $browser,
+        BrowserInterface $browser,
         CheckoutCart $checkoutCart,
         CatalogProductSimple $product,
         CatalogProductView $catalogProductView,
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertNoCrossSellsProductsSection.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertNoCrossSellsProductsSection.php
index 794fe66e908c6a9ce9c83903bb89e28e579c54a7..9ba318c3a3f9fb95519fa954e0116ef48507dc5e 100755
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertNoCrossSellsProductsSection.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertNoCrossSellsProductsSection.php
@@ -9,9 +9,9 @@ namespace Magento\Catalog\Test\Constraint;
 use Magento\Catalog\Test\Fixture\CatalogProductSimple;
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
 use Magento\Checkout\Test\Page\CheckoutCart;
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Class AssertNoCrossSellsProductsSection
@@ -26,7 +26,7 @@ class AssertNoCrossSellsProductsSection extends AbstractConstraint
     /**
      * Assert that product is not displayed in cross-sell section
      *
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @param CatalogProductSimple $product
      * @param InjectableFixture[] $relatedProducts
      * @param CatalogProductView $catalogProductView
@@ -34,7 +34,7 @@ class AssertNoCrossSellsProductsSection extends AbstractConstraint
      * @return void
      */
     public function processAssert(
-        Browser $browser,
+        BrowserInterface $browser,
         CatalogProductSimple $product,
         array $relatedProducts,
         CatalogProductView $catalogProductView,
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertNoRelatedProductsSection.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertNoRelatedProductsSection.php
index d2edb61f6427fc75f2a15587a0fda7d81c8701dd..77dafc88946df4d8b4f4ac7f264c142faa8abdb5 100755
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertNoRelatedProductsSection.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertNoRelatedProductsSection.php
@@ -8,9 +8,9 @@ namespace Magento\Catalog\Test\Constraint;
 
 use Magento\Catalog\Test\Fixture\CatalogProductSimple;
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Class AssertNoRelatedProductsSection
@@ -25,14 +25,14 @@ class AssertNoRelatedProductsSection extends AbstractConstraint
     /**
      * Assert that product is not displayed in related products section
      *
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @param CatalogProductSimple $product
      * @param InjectableFixture[] $relatedProducts
      * @param CatalogProductView $catalogProductView
      * @return void
      */
     public function processAssert(
-        Browser $browser,
+        BrowserInterface $browser,
         CatalogProductSimple $product,
         array $relatedProducts,
         CatalogProductView $catalogProductView
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertNoUpSellsProductsSection.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertNoUpSellsProductsSection.php
index e31e2eada172c616c92344f7b2f9517769f097f8..e2ec0224da538306a117d2b13f72d2a58e7daa8a 100755
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertNoUpSellsProductsSection.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertNoUpSellsProductsSection.php
@@ -8,9 +8,9 @@ namespace Magento\Catalog\Test\Constraint;
 
 use Magento\Catalog\Test\Fixture\CatalogProductSimple;
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Class AssertNoUpSellsProductsSection
@@ -25,14 +25,14 @@ class AssertNoUpSellsProductsSection extends AbstractConstraint
     /**
      * Assert that product is not displayed in up-sell section
      *
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @param CatalogProductSimple $product
      * @param InjectableFixture[] $relatedProducts
      * @param CatalogProductView $catalogProductView
      * @return void
      */
     public function processAssert(
-        Browser $browser,
+        BrowserInterface $browser,
         CatalogProductSimple $product,
         array $relatedProducts,
         CatalogProductView $catalogProductView
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertPriceOnProductPageInterface.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertPriceOnProductPageInterface.php
index 391b2394ceb1cea61b568cebd94fed2791a49e86..e26cb9d0dfe20fc0bf7c37014a9d9379122a5fff 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertPriceOnProductPageInterface.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertPriceOnProductPageInterface.php
@@ -7,7 +7,7 @@
 namespace Magento\Catalog\Test\Constraint;
 
 use Magento\Catalog\Test\Block\Product\View;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Interface AssertPriceOnProductPageInterface
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeAbsenceInGrid.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeAbsenceInGrid.php
index f7d97ff7c1b7d3a03f1d2bd6eea404c2c1447f88..1091df6e8b2096bfd80258f64baff2395a2a650c 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeAbsenceInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeAbsenceInGrid.php
@@ -8,7 +8,7 @@ namespace Magento\Catalog\Test\Constraint;
 
 use Magento\Catalog\Test\Fixture\CatalogProductAttribute;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductAttributeIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertAbsenceProductAttributeInGrid
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeAbsenceInSearchOnProductForm.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeAbsenceInSearchOnProductForm.php
index a0eb096a1b059c7f737a4926ead8c8a4fefc12ba..3cf4328573e0dcaafdda280c0ac4cc1ac4820391 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeAbsenceInSearchOnProductForm.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeAbsenceInSearchOnProductForm.php
@@ -9,7 +9,7 @@ namespace Magento\Catalog\Test\Constraint;
 use Magento\Catalog\Test\Fixture\CatalogProductAttribute;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductIndex;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductNew;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertAbsenceInAddAttributeSearch
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeAbsenceInTemplateGroups.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeAbsenceInTemplateGroups.php
index 7393939c7e7cbf1f8056acee99f6445f22ce2326..178bdd4078027dee27ca51c3a48d7d804e4172d1 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeAbsenceInTemplateGroups.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeAbsenceInTemplateGroups.php
@@ -9,7 +9,7 @@ namespace Magento\Catalog\Test\Constraint;
 use Magento\Catalog\Test\Fixture\CatalogAttributeSet;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductSetEdit;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductSetIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertProductAttributeAbsenceInTemplateGroups
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeAbsenceInUnassignedAttributes.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeAbsenceInUnassignedAttributes.php
index 517a00547faeb67f6dc9670751e3e8d8f00baa7f..7131b704c9ca6cb9c6c1b2a104c7ddecf2e3301b 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeAbsenceInUnassignedAttributes.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeAbsenceInUnassignedAttributes.php
@@ -9,7 +9,7 @@ namespace Magento\Catalog\Test\Constraint;
 use Magento\Catalog\Test\Fixture\CatalogAttributeSet;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductSetEdit;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductSetIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertProductAttributeAbsenceInUnassignedAttributes
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeDisplayingOnFrontend.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeDisplayingOnFrontend.php
index 36f8fe1199d478139399d967dc121999bfd87a3e..a7f562305a04d26c50319014eb0b7a0964be8def 100755
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeDisplayingOnFrontend.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeDisplayingOnFrontend.php
@@ -8,9 +8,9 @@ namespace Magento\Catalog\Test\Constraint;
 
 use Magento\Catalog\Test\Fixture\CatalogProductAttribute;
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
-use Mtf\Client\Driver\Selenium\Browser;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Check whether the attribute is visible on the frontend.
@@ -27,14 +27,14 @@ class AssertProductAttributeDisplayingOnFrontend extends AbstractConstraint
      * @param InjectableFixture $product
      * @param CatalogProductAttribute $attribute
      * @param CatalogProductView $catalogProductView
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @return void
      */
     public function processAssert(
         InjectableFixture $product,
         CatalogProductAttribute $attribute,
         CatalogProductView $catalogProductView,
-        Browser $browser
+        BrowserInterface $browser
     ) {
         $browser->open($_ENV['app_frontend_url'] . $product->getUrlKey() . '.html');
 
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeDisplayingOnSearchForm.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeDisplayingOnSearchForm.php
index 4c1b3d5a125e43e772778ac6ce5ab1886ed57313..1d9a0a73cf089f38aa586a29cf051acee08cd8ce 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeDisplayingOnSearchForm.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeDisplayingOnSearchForm.php
@@ -8,7 +8,7 @@ namespace Magento\Catalog\Test\Constraint;
 
 use Magento\Catalog\Test\Fixture\CatalogProductAttribute;
 use Magento\CatalogSearch\Test\Page\AdvancedSearch;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Check whether attribute is displayed in the advanced search form on the frontend.
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeInGrid.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeInGrid.php
index 5247acf20d0101a6ccaa5cededa7d6c415531b4b..4f76dc4d50d48565cc23d5c890e52037806c7e03 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeInGrid.php
@@ -8,7 +8,7 @@ namespace Magento\Catalog\Test\Constraint;
 
 use Magento\Catalog\Test\Fixture\CatalogProductAttribute;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductAttributeIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertProductAttributeInGrid
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeIsComparable.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeIsComparable.php
index df9e49d9972b55afbf1614c0839b20d87d6a03c1..bc4a1c23c9e123193633f8e97da8fb5064fb12e1 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeIsComparable.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeIsComparable.php
@@ -9,9 +9,9 @@ namespace Magento\Catalog\Test\Constraint;
 use Magento\Catalog\Test\Fixture\CatalogProductAttribute;
 use Magento\Catalog\Test\Page\Product\CatalogProductCompare;
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
-use Mtf\Client\Driver\Selenium\Browser;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Check whether there is an opportunity to compare products using given attribute.
@@ -27,14 +27,14 @@ class AssertProductAttributeIsComparable extends AbstractConstraint
      *
      * @param InjectableFixture $product
      * @param CatalogProductAttribute $attribute
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @param CatalogProductView $catalogProductView
      * @param CatalogProductCompare $catalogProductCompare
      */
     public function processAssert(
         InjectableFixture $product,
         CatalogProductAttribute $attribute,
-        Browser $browser,
+        BrowserInterface $browser,
         CatalogProductView $catalogProductView,
         CatalogProductCompare $catalogProductCompare
     ) {
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeIsFilterable.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeIsFilterable.php
index 343dce13148e149a3546a53ed27dad7544a18738..bd3c2262147d1fd81f51b1a457cc789a7c90b5e4 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeIsFilterable.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeIsFilterable.php
@@ -6,10 +6,10 @@
 
 namespace Magento\Catalog\Test\Constraint;
 
-use Mtf\Fixture\FixtureFactory;
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Fixture\InjectableFixture;
 use Magento\Cms\Test\Page\CmsIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 use Magento\Catalog\Test\Fixture\CatalogProductAttribute;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductEdit;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductIndex;
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeIsFilterableInSearch.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeIsFilterableInSearch.php
index fd0e4173327a4da0404cbf5978c3e96d180f3693..d43006c06f668986c2d7a6ea53c853794efff3db 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeIsFilterableInSearch.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeIsFilterableInSearch.php
@@ -9,8 +9,8 @@ namespace Magento\Catalog\Test\Constraint;
 use Magento\Catalog\Test\Fixture\CatalogProductAttribute;
 use Magento\Catalog\Test\Page\Category\CatalogCategoryView;
 use Magento\Cms\Test\Page\CmsIndex;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Check out if the attribute in the navigation bar on the search results page in Layered navigation.
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeIsGlobal.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeIsGlobal.php
index 7db85843f974d7259a6273e28ea9cfd6904fafe9..486497d81c9c435426439b70eb302a5fe1b4adec 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeIsGlobal.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeIsGlobal.php
@@ -8,7 +8,7 @@ namespace Magento\Catalog\Test\Constraint;
 
 use Magento\Catalog\Test\Fixture\CatalogProductAttribute;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductAttributeIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Look on the scope of product attribute in the grid.
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeIsHtmlAllowed.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeIsHtmlAllowed.php
index 1b9ab866988fbfa012f43c239fe2ccd17339759d..33b93ac4f1effdfcbd18d99729eb92e1daefd7bb 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeIsHtmlAllowed.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeIsHtmlAllowed.php
@@ -8,9 +8,9 @@ namespace Magento\Catalog\Test\Constraint;
 
 use Magento\Catalog\Test\Fixture\CatalogProductAttribute;
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
-use Mtf\Client\Driver\Selenium\Browser;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Check whether html tags are using in an attribute value.
@@ -28,7 +28,7 @@ class AssertProductAttributeIsHtmlAllowed extends AbstractConstraint
      * @param InjectableFixture $product
      * @param CatalogProductAttribute $attribute
      * @param CatalogProductView $catalogProductView
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @throws \Exception
      * @return void
      */
@@ -36,7 +36,7 @@ class AssertProductAttributeIsHtmlAllowed extends AbstractConstraint
         InjectableFixture $product,
         CatalogProductAttribute $attribute,
         CatalogProductView $catalogProductView,
-        Browser $browser
+        BrowserInterface $browser
     ) {
         $browser->open($_ENV['app_frontend_url'] . $product->getUrlKey() . '.html');
 
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeIsRequired.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeIsRequired.php
index fcd98a85b6d3ee2ebbefc5086819b6f20d6d8366..d563b8966aa1c3fd1d41bca3f86ff3fea7764141 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeIsRequired.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeIsRequired.php
@@ -9,8 +9,8 @@ namespace Magento\Catalog\Test\Constraint;
 use Magento\Catalog\Test\Fixture\CatalogProductAttribute;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductEdit;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductIndex;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Check whether the attribute is mandatory.
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeIsUnique.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeIsUnique.php
index 9d33cbdf8f9992605a401e2b2c0a065674090ac5..ca35c959794d9775f823ca133adcea15e930da1b 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeIsUnique.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeIsUnique.php
@@ -10,8 +10,8 @@ use Magento\Catalog\Test\Fixture\CatalogProductAttribute;
 use Magento\Catalog\Test\Fixture\CatalogProductSimple;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductEdit;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductIndex;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\FixtureFactory;
 
 /**
  * Check whether the attribute is unique.
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeIsUsedInSortOnFrontend.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeIsUsedInSortOnFrontend.php
index 4af9bd95be936601c61fdea7c8f1da2384126083..73d9c93fdf2dc336c9509a6ef56c59aa164e4cde 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeIsUsedInSortOnFrontend.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeIsUsedInSortOnFrontend.php
@@ -9,8 +9,8 @@ namespace Magento\Catalog\Test\Constraint;
 use Magento\Catalog\Test\Fixture\CatalogProductAttribute;
 use Magento\CatalogSearch\Test\Page\CatalogsearchResult;
 use Magento\Cms\Test\Page\CmsIndex;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Assert that attribute present in sort dropdown on search results page on frontend.
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeIsUsedPromoRules.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeIsUsedPromoRules.php
index 3dca6021de3704a36dd7efeb103179aaa2e05452..cda2dbe885ccf547520a745fb38c9f9fefc78e61 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeIsUsedPromoRules.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeIsUsedPromoRules.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Catalog\Test\Constraint;
 
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertProductAttributeIsUsedPromoRules
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeSaveMessage.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeSaveMessage.php
index b6c11594ab6f798ffe90839e71b1c34df52851ae..f58f02ad1f4fe848237c37f4286a277123dabfbf 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeSaveMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeSaveMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Catalog\Test\Constraint;
 
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductAttributeIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertProductAttributeSaveMessage
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeSuccessDeleteMessage.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeSuccessDeleteMessage.php
index ea2adf5025f7ae88df5f3060204b9464f8330306..60b68f622cb549aec8a3ecbb0f9772cc0e9a11d1 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeSuccessDeleteMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductAttributeSuccessDeleteMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Catalog\Test\Constraint;
 
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductAttributeIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertSuccessDeletedAttribute
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductCompareBlockOnCmsPage.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductCompareBlockOnCmsPage.php
index e7362c6e7255c84de480154e90983bb650df739c..5388bf823b46bbb61151164646e6c4238452483a 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductCompareBlockOnCmsPage.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductCompareBlockOnCmsPage.php
@@ -7,9 +7,9 @@
 namespace Magento\Catalog\Test\Constraint;
 
 use Magento\Cms\Test\Page\CmsIndex;
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\FixtureFactory;
 
 /**
  * Class AssertProductCompareBlockOnCmsPage
@@ -27,11 +27,15 @@ class AssertProductCompareBlockOnCmsPage extends AbstractConstraint
      * @param array $products
      * @param CmsIndex $cmsIndex
      * @param FixtureFactory $fixtureFactory
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @return void
      */
-    public function processAssert(array $products, CmsIndex $cmsIndex, FixtureFactory $fixtureFactory, Browser $browser)
-    {
+    public function processAssert(
+        array $products,
+        CmsIndex $cmsIndex,
+        FixtureFactory $fixtureFactory,
+        BrowserInterface $browser
+    ) {
         $newCmsPage = $fixtureFactory->createByCode('cmsPage', ['dataSet' => '3_column_template']);
         $newCmsPage->persist();
         $browser->open($_ENV['app_frontend_url'] . $newCmsPage->getIdentifier());
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductCompareItemsLink.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductCompareItemsLink.php
index d54776b16eea3263982c488efe7c8ef76579f83d..716bb8c00933c195aae9ce93ddc0568181d7f75a 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductCompareItemsLink.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductCompareItemsLink.php
@@ -7,7 +7,7 @@
 namespace Magento\Catalog\Test\Constraint;
 
 use Magento\Cms\Test\Page\CmsIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertProductCompareItemsLink
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductCompareItemsLinkIsAbsent.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductCompareItemsLinkIsAbsent.php
index 1deb79c236d7dbf0498a37772c0fdeae6acce5b8..3455b8dad453c53d35e9bad044a4b78728f8c783 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductCompareItemsLinkIsAbsent.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductCompareItemsLinkIsAbsent.php
@@ -7,7 +7,7 @@
 namespace Magento\Catalog\Test\Constraint;
 
 use Magento\Cms\Test\Page\CmsIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertProductCompareItemsLinkIsAbsent
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductComparePage.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductComparePage.php
index bd023344378c8d8a1f9e66e0dd44adb87a318ad4..c08c1850494e96d27341e2e5eddfbfbc1efee0ef 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductComparePage.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductComparePage.php
@@ -8,7 +8,7 @@ namespace Magento\Catalog\Test\Constraint;
 
 use Magento\Catalog\Test\Page\Product\CatalogProductCompare;
 use Magento\Cms\Test\Page\CmsIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertProductComparePage
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductCompareRemoveLastProductMessage.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductCompareRemoveLastProductMessage.php
index 3a6fb000b077eeb347569eafd4806bf4c8f9392b..0ede4a57e7b3638ccb496a372113fb21328db7b7 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductCompareRemoveLastProductMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductCompareRemoveLastProductMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Catalog\Test\Constraint;
 
 use Magento\Catalog\Test\Page\Product\CatalogProductCompare;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertProductCompareRemoveLastProductMessage
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductCompareSuccessAddMessage.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductCompareSuccessAddMessage.php
index 38875701b974ff83173ce4e872d1e84abc30dfc0..733c8b726597606c1a79be502085fb1eebafe0d7 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductCompareSuccessAddMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductCompareSuccessAddMessage.php
@@ -7,8 +7,8 @@
 namespace Magento\Catalog\Test\Constraint;
 
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class AssertProductCompareSuccessAddMessage
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductCompareSuccessRemoveAllProductsMessage.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductCompareSuccessRemoveAllProductsMessage.php
index 5f0f8266ff3d0d3a86c532d13b87162ca123ce04..4c878871b76740d909d4d3b8d46ab6bb3512cf8f 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductCompareSuccessRemoveAllProductsMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductCompareSuccessRemoveAllProductsMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Catalog\Test\Constraint;
 
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertProductCompareSuccessRemoveAllProductsMessage
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductCompareSuccessRemoveMessage.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductCompareSuccessRemoveMessage.php
index f78b2770a0425659eb21d826e060e43c23ca1b75..434daafcee86ed1944cf6147dd9a45f8e4b9aa00 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductCompareSuccessRemoveMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductCompareSuccessRemoveMessage.php
@@ -7,8 +7,8 @@
 namespace Magento\Catalog\Test\Constraint;
 
 use Magento\Catalog\Test\Page\Product\CatalogProductCompare;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class AssertProductCompareSuccessRemoveMessage
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductCustomOptionsOnProductPage.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductCustomOptionsOnProductPage.php
index 44303d263e78a3404bed6fc00aa6216a28bb3df3..7150626d7dcb9b47535fa5180916358774d67ea4 100755
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductCustomOptionsOnProductPage.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductCustomOptionsOnProductPage.php
@@ -7,9 +7,9 @@
 namespace Magento\Catalog\Test\Constraint;
 
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractAssertForm;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractAssertForm;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class AssertProductCustomOptionsOnProductPage
@@ -80,11 +80,14 @@ class AssertProductCustomOptionsOnProductPage extends AbstractAssertForm
      *
      * @param CatalogProductView $catalogProductView
      * @param FixtureInterface $product
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @return void
      */
-    public function processAssert(CatalogProductView $catalogProductView, FixtureInterface $product, Browser $browser)
-    {
+    public function processAssert(
+        CatalogProductView $catalogProductView,
+        FixtureInterface $product,
+        BrowserInterface $browser
+    ) {
         $browser->open($_ENV['app_frontend_url'] . $product->getUrlKey() . '.html');
 
         $actualPrice = null;
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductDuplicateForm.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductDuplicateForm.php
index a26e9b5d4f3767f6e764940f5f40a83046b4d6a8..51da2a9c5d3f12877db54ed03600829c8acbcb74 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductDuplicateForm.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductDuplicateForm.php
@@ -8,7 +8,7 @@ namespace Magento\Catalog\Test\Constraint;
 
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductEdit;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductIndex;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Assert form data equals fixture data.
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductDuplicateIsNotDisplayingOnFrontend.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductDuplicateIsNotDisplayingOnFrontend.php
index c27dcb389304c160e3989dc2e20178f0a2d29abe..89f7eaae399374329847ad25565a30ebc1547f01 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductDuplicateIsNotDisplayingOnFrontend.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductDuplicateIsNotDisplayingOnFrontend.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Catalog\Test\Constraint;
 
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertProductDuplicateIsNotDisplayingOnFrontend
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductDuplicateMessage.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductDuplicateMessage.php
index 3abcce7a6003df88406a448d2d5acb1e6b32bf68..837fb1ebdb26c10845171557630eadeba81fa681 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductDuplicateMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductDuplicateMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Catalog\Test\Constraint;
 
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductEdit;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertProductDuplicateMessage
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductDuplicatedInGrid.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductDuplicatedInGrid.php
index 278786c42b5ed624f06fdfc369673f75ae85da51..4adca9c9b7bb9de7e1c8192461919b863d09ee20 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductDuplicatedInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductDuplicatedInGrid.php
@@ -7,8 +7,8 @@
 namespace Magento\Catalog\Test\Constraint;
 
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductIndex;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class AssertProductDuplicatedInGrid
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductForm.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductForm.php
index efbdc1f4aa15298431915760038bb9ceca6860b6..e10767e1eb658b9a46686ab2de613957bb39853f 100755
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductForm.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductForm.php
@@ -8,8 +8,8 @@ namespace Magento\Catalog\Test\Constraint;
 
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductEdit;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductIndex;
-use Mtf\Constraint\AbstractAssertForm;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Constraint\AbstractAssertForm;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class AssertProductForm
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductGroupedPriceOnProductPage.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductGroupedPriceOnProductPage.php
index 05e86b8e8dedc4f972a8533f3cf392d77335bd18..bfd4ea2306d84640cb05b1492ea750eb11887adf 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductGroupedPriceOnProductPage.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductGroupedPriceOnProductPage.php
@@ -8,9 +8,9 @@ namespace Magento\Catalog\Test\Constraint;
 
 use Magento\Catalog\Test\Block\Product\View;
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class AssertProductGroupedPriceOnProductPage
@@ -40,11 +40,14 @@ class AssertProductGroupedPriceOnProductPage extends AbstractConstraint implemen
      *
      * @param CatalogProductView $catalogProductView
      * @param FixtureInterface $product
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @return void
      */
-    public function processAssert(CatalogProductView $catalogProductView, FixtureInterface $product, Browser $browser)
-    {
+    public function processAssert(
+        CatalogProductView $catalogProductView,
+        FixtureInterface $product,
+        BrowserInterface $browser
+    ) {
         $browser->open($_ENV['app_frontend_url'] . $product->getUrlKey() . '.html');
 
         //Process assertions
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductInCart.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductInCart.php
index 6750c8cc4c5cd49f96834313f7ec2d8bd998bf98..c231814db8b4dd819aa71921a7fe72d12b470199 100755
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductInCart.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductInCart.php
@@ -9,9 +9,9 @@ namespace Magento\Catalog\Test\Constraint;
 use Magento\Catalog\Test\Fixture\CatalogProductSimple;
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
 use Magento\Checkout\Test\Page\CheckoutCart;
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class AssertProductInCart
@@ -28,14 +28,14 @@ class AssertProductInCart extends AbstractConstraint
      *
      * @param CatalogProductView $catalogProductView
      * @param FixtureInterface $product
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @param CheckoutCart $checkoutCart
      * @return void
      */
     public function processAssert(
         CatalogProductView $catalogProductView,
         FixtureInterface $product,
-        Browser $browser,
+        BrowserInterface $browser,
         CheckoutCart $checkoutCart
     ) {
         // Add product to cart
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductInCategory.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductInCategory.php
index 8d7563b7ff9f3560f9a541e39420ee31d961a289..ea20ef12903b25b6d5de16197fde477032f69ec8 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductInCategory.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductInCategory.php
@@ -6,11 +6,11 @@
 
 namespace Magento\Catalog\Test\Constraint;
 
-use Magento\Catalog\Test\Fixture\CatalogCategory;
+use Magento\Catalog\Test\Fixture\Category;
 use Magento\Catalog\Test\Page\Category\CatalogCategoryView;
 use Magento\Cms\Test\Page\CmsIndex;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class AssertProductInCategory
@@ -27,14 +27,14 @@ class AssertProductInCategory extends AbstractConstraint
      * @param CatalogCategoryView $catalogCategoryView
      * @param CmsIndex $cmsIndex
      * @param FixtureInterface $product
-     * @param CatalogCategory $category
+     * @param Category $category
      * @return void
      */
     public function processAssert(
         CatalogCategoryView $catalogCategoryView,
         CmsIndex $cmsIndex,
         FixtureInterface $product,
-        CatalogCategory $category
+        Category $category
     ) {
         // Open category view page and check visible product
         $categoryName = $category->getName();
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductInGrid.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductInGrid.php
index 7f12ecab2f3a47f9cee00651f02890334230c382..b2a87f0ee3e5e9a28ddbc1aafbf8e499a07a4824 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductInGrid.php
@@ -7,8 +7,8 @@
 namespace Magento\Catalog\Test\Constraint;
 
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductIndex;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class AssertProductInGrid
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductInStock.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductInStock.php
index 15dec662a9a774d18c788925d882a1f912ee8bcf..b00dc4d171301fb86fbeab9358acee18a5eaded2 100755
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductInStock.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductInStock.php
@@ -7,9 +7,9 @@
 namespace Magento\Catalog\Test\Constraint;
 
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class AssertProductInStock
@@ -29,12 +29,15 @@ class AssertProductInStock extends AbstractConstraint
      * Assert that In Stock status is displayed on product page
      *
      * @param CatalogProductView $catalogProductView
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @param FixtureInterface $product
      * @return void
      */
-    public function processAssert(CatalogProductView $catalogProductView, Browser $browser, FixtureInterface $product)
-    {
+    public function processAssert(
+        CatalogProductView $catalogProductView,
+        BrowserInterface $browser,
+        FixtureInterface $product
+    ) {
         // TODO fix initialization url for frontend page
         $browser->open($_ENV['app_frontend_url'] . $product->getUrlKey() . '.html');
         \PHPUnit_Framework_Assert::assertEquals(
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductIsNotDisplayingOnFrontend.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductIsNotDisplayingOnFrontend.php
index 803a08035dad1903d4d689c0c1941305b97b4b68..f53f723ebc2ee2229904eb6a0d0e893b9cf61b87 100755
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductIsNotDisplayingOnFrontend.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductIsNotDisplayingOnFrontend.php
@@ -6,14 +6,14 @@
 
 namespace Magento\Catalog\Test\Constraint;
 
-use Magento\Catalog\Test\Fixture\CatalogCategory;
+use Magento\Catalog\Test\Fixture\Category;
 use Magento\Catalog\Test\Page\Category\CatalogCategoryView;
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
 use Magento\CatalogSearch\Test\Page\CatalogsearchResult;
 use Magento\Cms\Test\Page\CmsIndex;
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class AssertProductIsNotDisplayingOnFrontend
@@ -60,14 +60,14 @@ class AssertProductIsNotDisplayingOnFrontend extends AbstractConstraint
     /**
      * Browser
      *
-     * @var Browser
+     * @var BrowserInterface
      */
     protected $browser;
 
     /**
      * Fixture category
      *
-     * @var CatalogCategory
+     * @var Category
      */
     protected $category;
 
@@ -79,8 +79,8 @@ class AssertProductIsNotDisplayingOnFrontend extends AbstractConstraint
      * @param CatalogCategoryView $catalogCategoryView
      * @param CmsIndex $cmsIndex
      * @param FixtureInterface|FixtureInterface[] $product
-     * @param Browser $browser
-     * @param CatalogCategory|null $category
+     * @param BrowserInterface $browser
+     * @param Category|null $category
      */
     public function processAssert(
         CatalogProductView $catalogProductView,
@@ -88,8 +88,8 @@ class AssertProductIsNotDisplayingOnFrontend extends AbstractConstraint
         CatalogCategoryView $catalogCategoryView,
         CmsIndex $cmsIndex,
         $product,
-        Browser $browser,
-        CatalogCategory $category = null
+        BrowserInterface $browser,
+        Category $category = null
     ) {
         $this->browser = $browser;
         $this->catalogProductView = $catalogProductView;
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductIsNotVisibleInCompareBlock.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductIsNotVisibleInCompareBlock.php
index 8785c154add925f67d746eab74790bf6350f2fe1..e0cd14a071e484fbc72f31415b39b55f9461aa7e 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductIsNotVisibleInCompareBlock.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductIsNotVisibleInCompareBlock.php
@@ -8,8 +8,8 @@ namespace Magento\Catalog\Test\Constraint;
 
 use Magento\Cms\Test\Page\CmsIndex;
 use Magento\Customer\Test\Page\CustomerAccountIndex;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class AssertProductIsNotVisibleInCompareBlock
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductIsNotVisibleInComparePage.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductIsNotVisibleInComparePage.php
index ddbba15320bfd5b720c40fec6fe119e4376c12ee..65205e252f79be15d59bd1578b7f4f56f91eac24 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductIsNotVisibleInComparePage.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductIsNotVisibleInComparePage.php
@@ -7,8 +7,8 @@
 namespace Magento\Catalog\Test\Constraint;
 
 use Magento\Catalog\Test\Page\Product\CatalogProductCompare;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class AssertProductIsNotVisibleInComparePage
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductNotInGrid.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductNotInGrid.php
index 342c61139676287ff077f3b20d165e0b0b0377b5..d973f1ae0bcddd641baa51d35306df2ae401bbbb 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductNotInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductNotInGrid.php
@@ -7,8 +7,8 @@
 namespace Magento\Catalog\Test\Constraint;
 
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductIndex;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class AssertProductNotInGrid
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductNotSearchableBySku.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductNotSearchableBySku.php
index e3963b136f130a1f243a0d788fa0d42846d543c2..bf5fe7db22701082126475a724ce582755e756f8 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductNotSearchableBySku.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductNotSearchableBySku.php
@@ -8,8 +8,8 @@ namespace Magento\Catalog\Test\Constraint;
 
 use Magento\CatalogSearch\Test\Page\CatalogsearchResult;
 use Magento\Cms\Test\Page\CmsIndex;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class AssertProductNotSearchableBySku
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductNotVisibleInCategory.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductNotVisibleInCategory.php
index 03a37a694425d48f5a27c75f1b5d9df18e2b9fe8..cb885fcee6f3d46b47a64979e0fcae0f06147fd1 100755
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductNotVisibleInCategory.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductNotVisibleInCategory.php
@@ -6,11 +6,11 @@
 
 namespace Magento\Catalog\Test\Constraint;
 
-use Magento\Catalog\Test\Fixture\CatalogCategory;
+use Magento\Catalog\Test\Fixture\Category;
 use Magento\Catalog\Test\Page\Category\CatalogCategoryView;
 use Magento\Cms\Test\Page\CmsIndex;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class AssertProductNotVisibleInCategory
@@ -27,14 +27,14 @@ class AssertProductNotVisibleInCategory extends AbstractConstraint
      * @param CatalogCategoryView $catalogCategoryView
      * @param CmsIndex $cmsIndex
      * @param FixtureInterface $product
-     * @param CatalogCategory|null $category
+     * @param Category|null $category
      * @return void
      */
     public function processAssert(
         CatalogCategoryView $catalogCategoryView,
         CmsIndex $cmsIndex,
         FixtureInterface $product,
-        CatalogCategory $category = null
+        Category $category = null
     ) {
         $categoryName = $category
             ? $category->getName()
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductOutOfStock.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductOutOfStock.php
index 3e978d962f43293bfb5ac76d98d2757583d495bc..9aeec7495e10bb1f7a561e7e02c7570de336fb44 100755
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductOutOfStock.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductOutOfStock.php
@@ -7,9 +7,9 @@
 namespace Magento\Catalog\Test\Constraint;
 
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class AssertProductOutOfStock
@@ -29,12 +29,15 @@ class AssertProductOutOfStock extends AbstractConstraint
      * Assert that Out of Stock status is displayed on product page
      *
      * @param CatalogProductView $catalogProductView
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @param FixtureInterface $product
      * @return void
      */
-    public function processAssert(CatalogProductView $catalogProductView, Browser $browser, FixtureInterface $product)
-    {
+    public function processAssert(
+        CatalogProductView $catalogProductView,
+        BrowserInterface $browser,
+        FixtureInterface $product
+    ) {
         $browser->open($_ENV['app_frontend_url'] . $product->getUrlKey() . '.html');
         \PHPUnit_Framework_Assert::assertEquals(
             self::STOCK_AVAILABILITY,
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductPage.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductPage.php
index dd9c77a6a8ac612d314db49b7cd48cbf0c3278e0..23e31de68caf9b5bf0ea3263bd82a8fa5c006cbc 100755
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductPage.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductPage.php
@@ -8,9 +8,9 @@ namespace Magento\Catalog\Test\Constraint;
 
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
 use Magento\ConfigurableProduct\Test\Fixture\ConfigurableProductInjectable;
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractAssertForm;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractAssertForm;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class AssertProductPage
@@ -45,13 +45,16 @@ class AssertProductPage extends AbstractAssertForm
      * 5. Description
      * 6. Short Description
      *
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @param CatalogProductView $catalogProductView
      * @param FixtureInterface $product
      * @return void
      */
-    public function processAssert(Browser $browser, CatalogProductView $catalogProductView, FixtureInterface $product)
-    {
+    public function processAssert(
+        BrowserInterface $browser,
+        CatalogProductView $catalogProductView,
+        FixtureInterface $product
+    ) {
         $browser->open($_ENV['app_frontend_url'] . $product->getUrlKey() . '.html');
 
         $this->product = $product;
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductSaveMessage.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductSaveMessage.php
index 2d2e0ff69f5b4841dc9a168fea6fcd10902717b2..7f972607e954b858c40973d39df825d9dce5a667 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductSaveMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductSaveMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Catalog\Test\Constraint;
 
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductEdit;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertProductSaveMessage
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductSearchableBySku.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductSearchableBySku.php
index 118a0aedf71c71723c5a685d850858093d751a28..337aec58a57aad4aeebd121d61fa05e405ff6f3c 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductSearchableBySku.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductSearchableBySku.php
@@ -8,8 +8,8 @@ namespace Magento\Catalog\Test\Constraint;
 
 use Magento\CatalogSearch\Test\Page\CatalogsearchResult;
 use Magento\Cms\Test\Page\CmsIndex;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class AssertProductSearchableBySku
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductSkuAutoGenerated.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductSkuAutoGenerated.php
index 985b0e30d2307066b7eef90c50cfba96643e1836..cfeed99f470d0fec53e7271e857a47330a306e9d 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductSkuAutoGenerated.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductSkuAutoGenerated.php
@@ -7,8 +7,8 @@
 namespace Magento\Catalog\Test\Constraint;
 
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductIndex;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class AssertProductSkuAutoGenerated
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductSpecialPriceOnProductPage.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductSpecialPriceOnProductPage.php
index 5425ac797955931d890952a6b4ce4b965b9fad2c..4a4df8f12a0c51a0889ebd3a7c0fde0a268a72be 100755
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductSpecialPriceOnProductPage.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductSpecialPriceOnProductPage.php
@@ -8,9 +8,9 @@ namespace Magento\Catalog\Test\Constraint;
 
 use Magento\Catalog\Test\Block\Product\View;
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Assert that displayed special price on product page equals passed from fixture.
@@ -32,12 +32,15 @@ class AssertProductSpecialPriceOnProductPage extends AbstractConstraint implemen
      * Assert that displayed special price on product page equals passed from fixture
      *
      * @param CatalogProductView $catalogProductView
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @param FixtureInterface $product
      * @return void
      */
-    public function processAssert(CatalogProductView $catalogProductView, Browser $browser, FixtureInterface $product)
-    {
+    public function processAssert(
+        CatalogProductView $catalogProductView,
+        BrowserInterface $browser,
+        FixtureInterface $product
+    ) {
         $browser->open($_ENV['app_frontend_url'] . $product->getUrlKey() . '.html');
 
         //Process assertions
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductSuccessDeleteMessage.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductSuccessDeleteMessage.php
index 408d2aea57d7d6fe6936535e9b178311f3b5658d..0be5aaf2f66e79736bd95bc8946d854d0c4193ab 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductSuccessDeleteMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductSuccessDeleteMessage.php
@@ -7,8 +7,8 @@
 namespace Magento\Catalog\Test\Constraint;
 
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductIndex;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class AssertProductSuccessDeleteMessage
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductTemplateForm.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductTemplateForm.php
index d5d4beaf5bad44e4238e7c1b7bf47e2b8b847efd..af751de70b60cc696534344711d1ef293b4feb49 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductTemplateForm.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductTemplateForm.php
@@ -10,7 +10,7 @@ use Magento\Catalog\Test\Fixture\CatalogAttributeSet;
 use Magento\Catalog\Test\Fixture\CatalogProductAttribute;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductSetEdit;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductSetIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertProductTemplateForm
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductTemplateGroupOnProductForm.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductTemplateGroupOnProductForm.php
index 87d0c9105986e40c4a98906b4d5bd8ce82efbc9f..d207b3b1a3517253dc2e055ab2b92016316869be 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductTemplateGroupOnProductForm.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductTemplateGroupOnProductForm.php
@@ -6,9 +6,9 @@
 
 namespace Magento\Catalog\Test\Constraint;
 
-use Mtf\ObjectManager;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\ObjectManager;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Constraint\AbstractConstraint;
 use Magento\Catalog\Test\Fixture\CatalogAttributeSet;
 use Magento\Catalog\Test\Fixture\CatalogProductSimple;
 use Magento\Catalog\Test\Fixture\CatalogProductAttribute;
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductTemplateInGrid.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductTemplateInGrid.php
index 1a616f41bc693b5b57b1085b4ef6a5f0da05b0e5..6c5f5a361f89e9f94b12de20aaa217511c81280e 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductTemplateInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductTemplateInGrid.php
@@ -8,7 +8,7 @@ namespace Magento\Catalog\Test\Constraint;
 
 use Magento\Catalog\Test\Fixture\CatalogAttributeSet;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductSetIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertProductTemplateInGrid
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductTemplateNotInGrid.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductTemplateNotInGrid.php
index 870fa371f979d95dc20351d31a80a85881240ef3..6169fe31598de123aae474096bae79fa584ccfab 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductTemplateNotInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductTemplateNotInGrid.php
@@ -8,7 +8,7 @@ namespace Magento\Catalog\Test\Constraint;
 
 use Magento\Catalog\Test\Fixture\CatalogAttributeSet;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductSetIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertProductTemplateNotInGrid
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductTemplateOnProductForm.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductTemplateOnProductForm.php
index 378370a452436425f33cc2f27a1b927d195cae61..34dbf3c2914794a494276eb630b21b79acdc253b 100755
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductTemplateOnProductForm.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductTemplateOnProductForm.php
@@ -12,8 +12,8 @@ use Magento\Catalog\Test\Fixture\CatalogProductSimple;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductEdit;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductIndex;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductNew;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\FixtureFactory;
 
 /**
  * Class AssertProductTemplateOnProductForm
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductTemplateSuccessDeleteMessage.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductTemplateSuccessDeleteMessage.php
index 1308b188bc02227a2e2cb1003deffc15935b09f2..8fe292c2423163f67a8067940a96320ea35a55bb 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductTemplateSuccessDeleteMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductTemplateSuccessDeleteMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Catalog\Test\Constraint;
 
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductSetIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertProductTemplateSuccessDeleteMessage
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductTemplateSuccessSaveMessage.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductTemplateSuccessSaveMessage.php
index cc06f1cce7c3d51a5dae2bb9919cf893a66319a3..e19ff6274563410a4ab1f83e9a9deb419e02675b 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductTemplateSuccessSaveMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductTemplateSuccessSaveMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Catalog\Test\Constraint;
 
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductSetIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertProductTemplateSuccessSaveMessage
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductTierPriceOnProductPage.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductTierPriceOnProductPage.php
index d4acd06cab22213e3835917b69d727b89209b619..94702a94536d06599378ecdc9eb852cb52c26957 100755
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductTierPriceOnProductPage.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductTierPriceOnProductPage.php
@@ -8,9 +8,9 @@ namespace Magento\Catalog\Test\Constraint;
 
 use Magento\Catalog\Test\Block\Product\View;
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Assert that displayed tier price on product page equals passed from fixture.
@@ -38,13 +38,13 @@ class AssertProductTierPriceOnProductPage extends AbstractConstraint implements
     /**
      * Assertion that tier prices are displayed correctly
      *
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @param CatalogProductView $catalogProductView
      * @param FixtureInterface $product
      * @return void
      */
     public function processAssert(
-        Browser $browser,
+        BrowserInterface $browser,
         CatalogProductView $catalogProductView,
         FixtureInterface $product
     ) {
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductView.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductView.php
index 64ec170af0c26b2e2f722bd6d07a56a1e8564eec..52bfc9299be638851b14775a7fe7556a50ab346f 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductView.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductView.php
@@ -8,13 +8,11 @@ namespace Magento\Catalog\Test\Constraint;
 
 use Magento\Catalog\Test\Fixture\CatalogProductSimple;
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertProductView
- *
- * @package Magento\Catalog\Test\Constraint
  */
 class AssertProductView extends AbstractConstraint
 {
@@ -24,13 +22,13 @@ class AssertProductView extends AbstractConstraint
 
     /**
      * @param CatalogProductView $catalogProductView
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @param CatalogProductSimple $product
      * @return void
      */
     public function processAssert(
         CatalogProductView $catalogProductView,
-        Browser $browser,
+        BrowserInterface $browser,
         CatalogProductSimple $product
     ) {
         //Open product view page
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductVisibleInCategory.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductVisibleInCategory.php
index 987d673d1488b0d6194b56a859a69a1ac1fb3fd6..c8167af1480bf44bf031425fcb6c43aab7224f45 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductVisibleInCategory.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertProductVisibleInCategory.php
@@ -6,11 +6,11 @@
 
 namespace Magento\Catalog\Test\Constraint;
 
-use Magento\Catalog\Test\Fixture\CatalogCategory;
+use Magento\Catalog\Test\Fixture\Category;
 use Magento\Catalog\Test\Page\Category\CatalogCategoryView;
 use Magento\Cms\Test\Page\CmsIndex;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class AssertProductVisibleInCategory
@@ -41,7 +41,7 @@ class AssertProductVisibleInCategory extends AbstractConstraint
      * @param CatalogCategoryView $catalogCategoryView
      * @param CmsIndex $cmsIndex
      * @param FixtureInterface $product
-     * @param CatalogCategory|null $category
+     * @param Category|null $category
      * @return void
      *
      * @SuppressWarnings(PHPMD.NPathComplexity)
@@ -50,7 +50,7 @@ class AssertProductVisibleInCategory extends AbstractConstraint
         CatalogCategoryView $catalogCategoryView,
         CmsIndex $cmsIndex,
         FixtureInterface $product,
-        CatalogCategory $category = null
+        Category $category = null
     ) {
         $categoryName = $product->hasData('category_ids') ? $product->getCategoryIds()[0] : $category->getName();
         $cmsIndex->open();
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertRelatedProductsSection.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertRelatedProductsSection.php
index c6070ec805612c46c0fdd86ec6175b0ddc2a2827..c2279cf6a7325723e29fa2a3a1b9eb401b5f22cc 100755
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertRelatedProductsSection.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertRelatedProductsSection.php
@@ -8,9 +8,9 @@ namespace Magento\Catalog\Test\Constraint;
 
 use Magento\Catalog\Test\Fixture\CatalogProductSimple;
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Class AssertRelatedProductsSection
@@ -25,14 +25,14 @@ class AssertRelatedProductsSection extends AbstractConstraint
     /**
      * Assert that product is displayed in related products section
      *
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @param CatalogProductSimple $product
      * @param InjectableFixture[] $relatedProducts
      * @param CatalogProductView $catalogProductView
      * @return void
      */
     public function processAssert(
-        Browser $browser,
+        BrowserInterface $browser,
         CatalogProductSimple $product,
         array $relatedProducts,
         CatalogProductView $catalogProductView
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertUpSellsProductsSection.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertUpSellsProductsSection.php
index ffb916a70b0513439dcb0b53fcedc9f95ed29391..0dae93dd6d207f8182c8fdb110ddaab03cffd567 100755
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertUpSellsProductsSection.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertUpSellsProductsSection.php
@@ -7,10 +7,10 @@
 namespace Magento\Catalog\Test\Constraint;
 
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Class AssertUpSellsProductsSection
@@ -25,14 +25,14 @@ class AssertUpSellsProductsSection extends AbstractConstraint
     /**
      * Assert that product is displayed in up-sell section
      *
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @param FixtureInterface $product
      * @param InjectableFixture[] $relatedProducts,
      * @param CatalogProductView $catalogProductView
      * @return void
      */
     public function processAssert(
-        Browser $browser,
+        BrowserInterface $browser,
         FixtureInterface $product,
         array $relatedProducts,
         CatalogProductView $catalogProductView
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertUsedSuperAttributeImpossibleDeleteMessages.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertUsedSuperAttributeImpossibleDeleteMessages.php
index 133d2e28910ae183d985365515281a73347c7181..8bb9e4122149bc2d464237ad9ec24bdfeaf5c001 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertUsedSuperAttributeImpossibleDeleteMessages.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Constraint/AssertUsedSuperAttributeImpossibleDeleteMessages.php
@@ -7,7 +7,7 @@
 namespace Magento\Catalog\Test\Constraint;
 
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductAttributeNew;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertUsedSuperAttributeImpossibilityDeleteMessages
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/AssignProducts.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/AssignProducts.php
index e1c04547aa337be2d35ab960b1bc9d24302ef3c4..47ba4a555e512c028ca969c15967671604081e12 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/AssignProducts.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/AssignProducts.php
@@ -6,8 +6,8 @@
 
 namespace Magento\Catalog\Test\Fixture;
 
-use Mtf\Factory\Factory;
-use Mtf\System\Config;
+use Magento\Mtf\Factory\Factory;
+use Magento\Mtf\System\Config;
 
 class AssignProducts extends Product
 {
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/Cart/Item.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/Cart/Item.php
index 1d977962b2e6a9b57b4389ef01e4f4c23f9a8fbc..9e8d1996b13a22dda3e97df67182435f16caaf66 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/Cart/Item.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/Cart/Item.php
@@ -7,7 +7,7 @@
 namespace Magento\Catalog\Test\Fixture\Cart;
 
 use Magento\Catalog\Test\Fixture\CatalogProductSimple;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class Item
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogAttributeSet.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogAttributeSet.php
index 4a3c8f5da9ce7d55913e29ee6c1b69fa5e835c9c..21cf68bc8a85d21f6ffdf6f6812a1127cb20cc69 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogAttributeSet.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogAttributeSet.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Catalog\Test\Fixture;
 
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Class CatalogAttributeSet
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogAttributeSet/AssignedAttributes.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogAttributeSet/AssignedAttributes.php
index fe38371d7ab0e4a86f37b154fe4d2ff5e72868fc..3cab12364140258fe29475db5ca95c8c651c8109 100755
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogAttributeSet/AssignedAttributes.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogAttributeSet/AssignedAttributes.php
@@ -7,8 +7,8 @@
 namespace Magento\Catalog\Test\Fixture\CatalogAttributeSet;
 
 use Magento\Catalog\Test\Fixture\CatalogProductAttribute;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class AssignedAttributes
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogAttributeSet/SkeletonSet.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogAttributeSet/SkeletonSet.php
index 4d70dd528ea8e9fceee1f73b1a25e70320923748..27f86800767f536908ea62c0a07b6d158469d4ee 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogAttributeSet/SkeletonSet.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogAttributeSet/SkeletonSet.php
@@ -7,8 +7,8 @@
 namespace Magento\Catalog\Test\Fixture\CatalogAttributeSet;
 
 use Magento\Catalog\Test\Fixture\CatalogAttributeSet;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class SkeletonSet
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogCategory.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogCategory.php
deleted file mode 100644
index 630ee50d0eda596a48c1f146c6693adb1fc9ff43..0000000000000000000000000000000000000000
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogCategory.php
+++ /dev/null
@@ -1,359 +0,0 @@
-<?php
-/**
- * Copyright © 2015 Magento. All rights reserved.
- * See COPYING.txt for license details.
- */
-
-namespace Magento\Catalog\Test\Fixture;
-
-use Mtf\Fixture\InjectableFixture;
-
-/**
- * Class CatalogCategory
- * Category fixture
- *
- * @SuppressWarnings(PHPMD.TooManyFields)
- */
-class CatalogCategory extends InjectableFixture
-{
-    /**
-     * @var string
-     */
-    protected $repositoryClass = 'Magento\Catalog\Test\Repository\CatalogCategory';
-
-    /**
-     * @var string
-     */
-    protected $handlerInterface = 'Magento\Catalog\Test\Handler\CatalogCategory\CatalogCategoryInterface';
-
-    protected $defaultDataSet = [
-        'name' => 'Category%isolation%',
-        'path' => 'Default Category',
-        'url_key' => 'category%isolation%',
-        'is_active' => 'Yes',
-        'include_in_menu' => 'Yes',
-        'parent_id' => 2,
-    ];
-
-    protected $entity_id = [
-        'attribute_code' => 'entity_id',
-        'backend_type' => 'int',
-        'is_required' => '1',
-        'default_value' => '',
-        'input' => '',
-    ];
-
-    protected $entity_type_id = [
-        'attribute_code' => 'entity_type_id',
-        'backend_type' => 'smallint',
-        'is_required' => '',
-        'default_value' => '0',
-        'input' => '',
-    ];
-
-    protected $attribute_set_id = [
-        'attribute_code' => 'attribute_set_id',
-        'backend_type' => 'smallint',
-        'is_required' => '',
-        'default_value' => '0',
-        'input' => '',
-    ];
-
-    protected $description = [
-        'attribute_code' => 'description',
-        'backend_type' => 'text',
-        'is_required' => '0',
-        'default_value' => '',
-        'input' => 'textarea',
-    ];
-
-    protected $parent_id = [
-        'attribute_code' => 'parent_id',
-        'backend_type' => 'int',
-        'is_required' => '',
-        'default_value' => '0',
-        'input' => '',
-        'group' => null,
-        'source' => 'Magento\Catalog\Test\Fixture\CatalogCategory\ParentId',
-    ];
-
-    protected $created_at = [
-        'attribute_code' => 'created_at',
-        'backend_type' => 'timestamp',
-        'is_required' => '',
-        'default_value' => '',
-        'input' => '',
-    ];
-
-    protected $updated_at = [
-        'attribute_code' => 'updated_at',
-        'backend_type' => 'timestamp',
-        'is_required' => '',
-        'default_value' => '',
-        'input' => '',
-    ];
-
-    protected $path = [
-        'attribute_code' => 'path',
-        'backend_type' => 'varchar',
-        'is_required' => '',
-        'default_value' => '',
-        'group' => null,
-        'input' => '',
-    ];
-
-    protected $position = [
-        'attribute_code' => 'position',
-        'backend_type' => 'int',
-        'is_required' => '',
-        'default_value' => '',
-        'input' => '',
-    ];
-
-    protected $level = [
-        'attribute_code' => 'level',
-        'backend_type' => 'int',
-        'is_required' => '',
-        'default_value' => '0',
-        'input' => '',
-    ];
-
-    protected $children_count = [
-        'attribute_code' => 'children_count',
-        'backend_type' => 'int',
-        'is_required' => '',
-        'default_value' => '',
-        'input' => '',
-    ];
-
-    protected $available_product_listing_config = [
-        'attribute_code' => 'available_product_listing_config',
-        'backend_type' => 'int',
-        'is_required' => '',
-        'default_value' => '',
-        'group' => 'display_setting',
-        'input' => 'checkbox',
-    ];
-
-    protected $available_sort_by = [
-        'attribute_code' => 'available_sort_by',
-        'backend_type' => 'varchar',
-        'is_required' => '0',
-        'default_value' => '',
-        'group' => 'display_setting',
-        'input' => 'multiselect',
-    ];
-
-    protected $default_product_listing_config = [
-        'attribute_code' => 'default_product_listing_config',
-        'backend_type' => 'varchar',
-        'is_required' => '0',
-        'default_value' => '',
-        'group' => 'display_setting',
-        'input' => 'checkbox',
-    ];
-
-    protected $default_sort_by = [
-        'attribute_code' => 'default_sort_by',
-        'backend_type' => 'varchar',
-        'is_required' => '0',
-        'default_value' => '',
-        'group' => 'display_setting',
-        'input' => 'select',
-    ];
-
-    protected $meta_title = [
-        'attribute_code' => 'meta_title',
-        'backend_type' => 'text',
-        'is_required' => '',
-        'default_value' => '',
-        'input' => '',
-    ];
-
-    protected $id = [
-        'attribute_code' => 'id',
-        'backend_type' => 'virtual',
-        'group' => null,
-    ];
-
-    protected $name = [
-        'attribute_code' => 'name',
-        'backend_type' => 'virtual',
-        'group' => 'general_information',
-    ];
-
-    protected $is_active = [
-        'attribute_code' => 'is_active',
-        'backend_type' => 'virtual',
-        'group' => 'general_information',
-    ];
-
-    protected $is_anchor = [
-        'attribute_code' => 'is_anchor',
-        'backend_type' => 'virtual',
-        'group' => 'general_information',
-    ];
-
-    protected $url_key = [
-        'attribute_code' => 'url_key',
-        'backend_type' => 'virtual',
-        'group' => 'general_information',
-    ];
-
-    protected $include_in_menu = [
-        'attribute_code' => 'include_in_menu',
-        'backend_type' => 'virtual',
-        'group' => 'general_information',
-    ];
-
-    protected $landing_page = [
-        'attribute_code' => 'landing_page',
-        'backend_type' => 'virtual',
-        'input' => 'select',
-        'group' => 'display_setting',
-    ];
-
-    protected $display_mode = [
-        'attribute_code' => 'display_mode',
-        'backend_type' => 'virtual',
-        'input' => 'select',
-        'group' => 'display_setting',
-    ];
-
-    protected $category_products = [
-        'attribute_code' => 'category_products',
-        'backend_type' => 'virtual',
-        'group' => 'category_products',
-        'source' => 'Magento\Catalog\Test\Fixture\CatalogCategory\CategoryProducts',
-    ];
-
-    public function getEntityId()
-    {
-        return $this->getData('entity_id');
-    }
-
-    public function getEntityTypeId()
-    {
-        return $this->getData('entity_type_id');
-    }
-
-    public function getAttributeSetId()
-    {
-        return $this->getData('attribute_set_id');
-    }
-
-    public function getDescription()
-    {
-        return $this->getData('description');
-    }
-
-    public function getParentId()
-    {
-        return $this->getData('parent_id');
-    }
-
-    public function getCreatedAt()
-    {
-        return $this->getData('created_at');
-    }
-
-    public function getUpdatedAt()
-    {
-        return $this->getData('updated_at');
-    }
-
-    public function getPath()
-    {
-        return $this->getData('path');
-    }
-
-    public function getPosition()
-    {
-        return $this->getData('position');
-    }
-
-    public function getLevel()
-    {
-        return $this->getData('level');
-    }
-
-    public function getChildrenCount()
-    {
-        return $this->getData('children_count');
-    }
-
-    public function getAvailableProductListingConfig()
-    {
-        return $this->getData('available_product_listing_config');
-    }
-
-    public function getAvailableSortBy()
-    {
-        return $this->getData('available_sort_by');
-    }
-
-    public function getDefaultProductListingConfig()
-    {
-        return $this->getData('default_product_listing_config');
-    }
-
-    public function getDefaultSortBy()
-    {
-        return $this->getData('default_sort_by');
-    }
-
-    public function getMetaTitle()
-    {
-        return $this->getData('meta_title');
-    }
-
-    public function getId()
-    {
-        return $this->getData('id');
-    }
-
-    public function getName()
-    {
-        return $this->getData('name');
-    }
-
-    public function getIsActive()
-    {
-        return $this->getData('is_active');
-    }
-
-    public function getIsAnchor()
-    {
-        return $this->getData('is_anchor');
-    }
-
-    public function getUrlKey()
-    {
-        return $this->getData('url_key');
-    }
-
-    public function getIncludeInMenu()
-    {
-        return $this->getData('include_in_menu');
-    }
-
-    public function getLandingPage()
-    {
-        return $this->getData('landing_page');
-    }
-
-    public function getDisplayMode()
-    {
-        return $this->getData('display_mode');
-    }
-
-    public function getCategoryProducts()
-    {
-        return $this->getData('category_products');
-    }
-
-    public function getBlockId()
-    {
-        return $this->getData('block_id');
-    }
-}
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductAttribute.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductAttribute.php
index db403b73608038373b39c85e28d59825efb9cca9..4d645477ec25da207433607e6ea83a4017955735 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductAttribute.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductAttribute.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Catalog\Test\Fixture;
 
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Class CatalogAttributeEntity
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductAttribute/Options.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductAttribute/Options.php
index fce3250d3d7c793705984cc56c578fcdce7b1582..f05c63c30d733d50222ec830df0c9a2d788f090c 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductAttribute/Options.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductAttribute/Options.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Catalog\Test\Fixture\CatalogProductAttribute;
 
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class Options
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductSimple.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductSimple.php
index 4c988324e04effde4da42dec520734cc4309212e..ffaa24098d39f1baa35d523eea93af8aa0c3a74a 100755
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductSimple.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductSimple.php
@@ -6,12 +6,12 @@
 
 namespace Magento\Catalog\Test\Fixture;
 
-use Mtf\System\Config;
-use Mtf\Handler\HandlerFactory;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\Fixture\InjectableFixture;
-use Mtf\Repository\RepositoryFactory;
-use Mtf\System\Event\EventManagerInterface;
+use Magento\Mtf\System\Config;
+use Magento\Mtf\Handler\HandlerFactory;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Repository\RepositoryFactory;
+use Magento\Mtf\System\Event\EventManagerInterface;
 
 /**
  * Class CatalogProductSimple
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductSimple/AbstractRelatedProducts.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductSimple/AbstractRelatedProducts.php
index 7d041eb90f1bbca29d0d78c4c4154ec65f55e768..b1ffd0322195e019c3efd2a08546a4a0d172ca30 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductSimple/AbstractRelatedProducts.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductSimple/AbstractRelatedProducts.php
@@ -7,8 +7,8 @@
 namespace Magento\Catalog\Test\Fixture\CatalogProductSimple;
 
 use Magento\Catalog\Test\Fixture\CatalogProductSimple;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class AbstractRelatedProducts
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductSimple/AttributeSetId.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductSimple/AttributeSetId.php
index 17faa3b5b062b9b828f2385a894c1033c48c6dbd..28b6e17750ad223d7af61835de5aa7faf8a4b58c 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductSimple/AttributeSetId.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductSimple/AttributeSetId.php
@@ -7,8 +7,8 @@
 namespace Magento\Catalog\Test\Fixture\CatalogProductSimple;
 
 use Magento\Catalog\Test\Fixture\CatalogAttributeSet;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class AttributeSetId
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductSimple/CategoryIds.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductSimple/CategoryIds.php
index 020a9f41afe8f0dec2c8d607f1456296e6e6a897..cf59c0bc7a19ceebdfe5f5467105e3db465f588a 100755
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductSimple/CategoryIds.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductSimple/CategoryIds.php
@@ -6,9 +6,9 @@
 
 namespace Magento\Catalog\Test\Fixture\CatalogProductSimple;
 
-use Magento\Catalog\Test\Fixture\CatalogCategory;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Catalog\Test\Fixture\Category;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class CategoryIds
@@ -45,9 +45,9 @@ class CategoryIds implements FixtureInterface
 
         if (!empty($data['category'])
             && empty($data['presets'])
-            && $data['category'] instanceof CatalogCategory
+            && $data['category'] instanceof Category
         ) {
-            /** @var CatalogCategory $category */
+            /** @var Category $category */
             $category = $data['category'];
             if (!$category->hasData('id')) {
                 $category->persist();
@@ -57,10 +57,10 @@ class CategoryIds implements FixtureInterface
         } elseif (isset($data['presets'])) {
             $presets = explode(',', $data['presets']);
             foreach ($presets as $preset) {
-                $category = $fixtureFactory->createByCode('catalogCategory', ['dataSet' => $preset]);
+                $category = $fixtureFactory->createByCode('category', ['dataSet' => $preset]);
                 $category->persist();
 
-                /** @var CatalogCategory $category */
+                /** @var Category $category */
                 $this->data[] = $category->getName();
                 $this->categories[] = $category;
             }
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductSimple/CheckoutData.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductSimple/CheckoutData.php
index ac5d179809542ee24f5d4ea4e6fd03e9a4ab2cb1..6cabd44b50ec6e5609ccf12d09f1fa4eb0056ae6 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductSimple/CheckoutData.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductSimple/CheckoutData.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Catalog\Test\Fixture\CatalogProductSimple;
 
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class CheckoutData
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductSimple/CustomAttribute.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductSimple/CustomAttribute.php
index 49d6a01d0c0c4c1d066679fb22557995c043a3f6..024e8bc7680694502a7f39ae8763803cafc34843 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductSimple/CustomAttribute.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductSimple/CustomAttribute.php
@@ -7,8 +7,8 @@
 namespace Magento\Catalog\Test\Fixture\CatalogProductSimple;
 
 use Magento\Catalog\Test\Fixture\CatalogProductAttribute;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Source for attribute field.
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductSimple/CustomOptions.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductSimple/CustomOptions.php
index 733a611b3cb224ca2d9a9e267881812e73625b7d..82d498b27c0346dc6cbce7ba70361a1a8ee81ddc 100755
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductSimple/CustomOptions.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductSimple/CustomOptions.php
@@ -6,8 +6,8 @@
 
 namespace Magento\Catalog\Test\Fixture\CatalogProductSimple;
 
-use Mtf\Fixture\FixtureFactory;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class CustomOptions
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductSimple/Fpt.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductSimple/Fpt.php
index 5e84f8822e591a5c45515feca5a7f6002e774d11..8d29bd7bd8bf13d7e76cd74e233d633f356c74c9 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductSimple/Fpt.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductSimple/Fpt.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Catalog\Test\Fixture\CatalogProductSimple;
 
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class Fpt
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductSimple/GroupPriceOptions.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductSimple/GroupPriceOptions.php
index 256bb41cb82cbf41e1c53067f5e3ce420dff02c3..ae26f43149b3066bdf054197fe2c08626be6b4cc 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductSimple/GroupPriceOptions.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductSimple/GroupPriceOptions.php
@@ -6,8 +6,8 @@
 
 namespace Magento\Catalog\Test\Fixture\CatalogProductSimple;
 
-use Mtf\Fixture\FixtureFactory;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class GroupPriceOptions
@@ -19,7 +19,7 @@ use Mtf\Fixture\FixtureInterface;
 class GroupPriceOptions implements FixtureInterface
 {
     /**
-     * @var \Mtf\Fixture\FixtureFactory
+     * @var \Magento\Mtf\Fixture\FixtureFactory
      */
     protected $fixtureFactory;
 
@@ -69,6 +69,8 @@ class GroupPriceOptions implements FixtureInterface
     }
 
     /**
+     * Get preset array
+     *
      * @param string $name
      * @return mixed|null
      */
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductSimple/Price.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductSimple/Price.php
index 9c68b4060f26d33f2ee43fefa0008c427c8beed4..470558b5d4d0ba8c8f8e26f410b894fea1ed6696 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductSimple/Price.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductSimple/Price.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Catalog\Test\Fixture\CatalogProductSimple;
 
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class Price
@@ -33,7 +33,7 @@ class Price implements FixtureInterface
     protected $params;
 
     /**
-     * @var \Mtf\Fixture\FixtureFactory
+     * @var \Magento\Mtf\Fixture\FixtureFactory
      */
     protected $fixtureFactory;
 
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductSimple/TaxClass.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductSimple/TaxClass.php
index 0d5b1c9981aa1c22f54a59580b0f5271cf209778..bfec8539bb6b38b69a254a992b46bc5a9761d424 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductSimple/TaxClass.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductSimple/TaxClass.php
@@ -7,12 +7,12 @@
 namespace Magento\Catalog\Test\Fixture\CatalogProductSimple;
 
 use Magento\Tax\Test\Fixture\TaxClass as FixtureTaxClass;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\Fixture\FixtureInterface;
-use Mtf\System\Config;
-use Mtf\Util\Protocol\CurlInterface;
-use Mtf\Util\Protocol\CurlTransport;
-use Mtf\Util\Protocol\CurlTransport\BackendDecorator;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\System\Config;
+use Magento\Mtf\Util\Protocol\CurlInterface;
+use Magento\Mtf\Util\Protocol\CurlTransport;
+use Magento\Mtf\Util\Protocol\CurlTransport\BackendDecorator;
 
 /**
  * Class TaxClass
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductSimple/TierPriceOptions.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductSimple/TierPriceOptions.php
index 4dbc4be608dfbd41421b035708b4230bd94940c6..1d2c292ec6e6392fa304cf14697b10598df989a7 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductSimple/TierPriceOptions.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductSimple/TierPriceOptions.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Catalog\Test\Fixture\CatalogProductSimple;
 
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class TierPriceOptions
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductVirtual.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductVirtual.php
index 997b81fbbda03dbc7f6816c438afde366def8d2d..c7102655fe9b4a61018c2cc1f135a61455305295 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductVirtual.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogProductVirtual.php
@@ -6,12 +6,12 @@
 
 namespace Magento\Catalog\Test\Fixture;
 
-use Mtf\Fixture\FixtureFactory;
-use Mtf\Fixture\InjectableFixture;
-use Mtf\Handler\HandlerFactory;
-use Mtf\Repository\RepositoryFactory;
-use Mtf\System\Config;
-use Mtf\System\Event\EventManagerInterface;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Handler\HandlerFactory;
+use Magento\Mtf\Repository\RepositoryFactory;
+use Magento\Mtf\System\Config;
+use Magento\Mtf\System\Event\EventManagerInterface;
 
 /**
  * Class CatalogProductVirtual
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/Category.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/Category.php
index c5690a023d4845ad7154b46bc6022f3497f292f8..c159bb8f7398187223e6456a3eb7645250eec54e 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/Category.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/Category.php
@@ -6,157 +6,357 @@
 
 namespace Magento\Catalog\Test\Fixture;
 
-use Mtf\Factory\Factory;
-use Mtf\Fixture\DataFixture;
-use Mtf\System\Config;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
- * Class Category
+ * Class CatalogCategory
+ * Category fixture
  *
+ * @SuppressWarnings(PHPMD.TooManyFields)
  */
-class Category extends DataFixture
+class Category extends InjectableFixture
 {
     /**
-     * Attribute set for mapping data into ui tabs
+     * @var string
      */
-    const GROUP_GENERAL_INFORMATION = 'general_information';
-    const GROUP_DISPLAY_SETTINGS = 'display_setting';
+    protected $repositoryClass = 'Magento\Catalog\Test\Repository\Category';
 
     /**
-     * Contains categories that are needed to create next category
-     *
-     * @var array
+     * @var string
      */
-    protected $_categories;
+    protected $handlerInterface = 'Magento\Catalog\Test\Handler\Category\CategoryInterface';
 
-    /**
-     * Custom constructor to create category with custom parent category
-     *
-     * @param Config $configuration
-     * @param array $placeholders
-     */
-    public function __construct(Config $configuration, $placeholders = [])
+    protected $defaultDataSet = [
+        'name' => 'Category%isolation%',
+        'path' => 'Default Category',
+        'url_key' => 'category%isolation%',
+        'is_active' => 'Yes',
+        'include_in_menu' => 'Yes',
+        'parent_id' => 2,
+    ];
+
+    protected $entity_id = [
+        'attribute_code' => 'entity_id',
+        'backend_type' => 'int',
+        'is_required' => '1',
+        'default_value' => '',
+        'input' => '',
+    ];
+
+    protected $entity_type_id = [
+        'attribute_code' => 'entity_type_id',
+        'backend_type' => 'smallint',
+        'is_required' => '',
+        'default_value' => '0',
+        'input' => '',
+    ];
+
+    protected $attribute_set_id = [
+        'attribute_code' => 'attribute_set_id',
+        'backend_type' => 'smallint',
+        'is_required' => '',
+        'default_value' => '0',
+        'input' => '',
+    ];
+
+    protected $description = [
+        'attribute_code' => 'description',
+        'backend_type' => 'text',
+        'is_required' => '0',
+        'default_value' => '',
+        'input' => 'textarea',
+        'group' => 'general_information',
+    ];
+
+    protected $parent_id = [
+        'attribute_code' => 'parent_id',
+        'backend_type' => 'int',
+        'is_required' => '',
+        'default_value' => '0',
+        'input' => '',
+        'group' => null,
+        'source' => 'Magento\Catalog\Test\Fixture\Category\ParentId',
+    ];
+
+    protected $created_at = [
+        'attribute_code' => 'created_at',
+        'backend_type' => 'timestamp',
+        'is_required' => '',
+        'default_value' => '',
+        'input' => '',
+    ];
+
+    protected $updated_at = [
+        'attribute_code' => 'updated_at',
+        'backend_type' => 'timestamp',
+        'is_required' => '',
+        'default_value' => '',
+        'input' => '',
+    ];
+
+    protected $path = [
+        'attribute_code' => 'path',
+        'backend_type' => 'varchar',
+        'is_required' => '',
+        'default_value' => '',
+        'group' => null,
+        'input' => '',
+    ];
+
+    protected $position = [
+        'attribute_code' => 'position',
+        'backend_type' => 'int',
+        'is_required' => '',
+        'default_value' => '',
+        'input' => '',
+    ];
+
+    protected $level = [
+        'attribute_code' => 'level',
+        'backend_type' => 'int',
+        'is_required' => '',
+        'default_value' => '0',
+        'input' => '',
+    ];
+
+    protected $children_count = [
+        'attribute_code' => 'children_count',
+        'backend_type' => 'int',
+        'is_required' => '',
+        'default_value' => '',
+        'input' => '',
+    ];
+
+    protected $available_product_listing_config = [
+        'attribute_code' => 'available_product_listing_config',
+        'backend_type' => 'int',
+        'is_required' => '',
+        'default_value' => '',
+        'group' => 'display_setting',
+        'input' => 'checkbox',
+    ];
+
+    protected $available_sort_by = [
+        'attribute_code' => 'available_sort_by',
+        'backend_type' => 'varchar',
+        'is_required' => '0',
+        'default_value' => '',
+        'group' => 'display_setting',
+        'input' => 'multiselect',
+    ];
+
+    protected $default_product_listing_config = [
+        'attribute_code' => 'default_product_listing_config',
+        'backend_type' => 'varchar',
+        'is_required' => '0',
+        'default_value' => '',
+        'group' => 'display_setting',
+        'input' => 'checkbox',
+    ];
+
+    protected $default_sort_by = [
+        'attribute_code' => 'default_sort_by',
+        'backend_type' => 'varchar',
+        'is_required' => '0',
+        'default_value' => '',
+        'group' => 'display_setting',
+        'input' => 'select',
+    ];
+
+    protected $meta_title = [
+        'attribute_code' => 'meta_title',
+        'backend_type' => 'text',
+        'is_required' => '',
+        'default_value' => '',
+        'input' => '',
+        'group' => 'general_information',
+    ];
+
+    protected $id = [
+        'attribute_code' => 'id',
+        'backend_type' => 'virtual',
+        'group' => null,
+    ];
+
+    protected $name = [
+        'attribute_code' => 'name',
+        'backend_type' => 'virtual',
+        'group' => 'general_information',
+    ];
+
+    protected $is_active = [
+        'attribute_code' => 'is_active',
+        'backend_type' => 'virtual',
+        'group' => 'general_information',
+    ];
+
+    protected $is_anchor = [
+        'attribute_code' => 'is_anchor',
+        'backend_type' => 'virtual',
+        'group' => 'display_setting',
+    ];
+
+    protected $url_key = [
+        'attribute_code' => 'url_key',
+        'backend_type' => 'virtual',
+        'group' => 'general_information',
+    ];
+
+    protected $include_in_menu = [
+        'attribute_code' => 'include_in_menu',
+        'backend_type' => 'virtual',
+        'group' => 'general_information',
+    ];
+
+    protected $landing_page = [
+        'attribute_code' => 'landing_page',
+        'backend_type' => 'virtual',
+        'input' => 'select',
+        'group' => 'display_setting',
+        'source' => '\Magento\Catalog\Test\Fixture\Category\LandingPage'
+    ];
+
+    protected $display_mode = [
+        'attribute_code' => 'display_mode',
+        'backend_type' => 'virtual',
+        'input' => 'select',
+        'group' => 'display_setting',
+    ];
+
+    protected $category_products = [
+        'attribute_code' => 'category_products',
+        'backend_type' => 'virtual',
+        'group' => 'category_products',
+        'source' => 'Magento\Catalog\Test\Fixture\Category\CategoryProducts',
+    ];
+
+    public function getEntityId()
     {
-        parent::__construct($configuration, $placeholders);
+        return $this->getData('entity_id');
+    }
 
-        $this->_placeholders['men::getCategoryName'] = [$this, '_categoryProvider'];
-        $this->_placeholders['men::getCategoryId'] = [$this, '_categoryProvider'];
+    public function getEntityTypeId()
+    {
+        return $this->getData('entity_type_id');
     }
 
-    /**
-     * Create category needed for placeholders in data and call method for placeholder
-     *
-     * @param string $placeholder
-     * @return string
-     */
-    protected function _categoryProvider($placeholder)
+    public function getAttributeSetId()
     {
-        list($key, $method) = explode('::', $placeholder);
-        if (!isset($this->_categories[$key])) {
-            $category = Factory::getFixtureFactory()->getMagentoCatalogCategory();
-            $category->switchData($key);
-            $category->persist();
-            $this->_categories[$key] = $category;
-        }
+        return $this->getData('attribute_set_id');
+    }
 
-        return is_callable([$this->_categories[$key], $method]) ? $this->_categories[$key]->$method() : '';
+    public function getDescription()
+    {
+        return $this->getData('description');
     }
 
-    /**
-     * Get product name
-     *
-     * @return string
-     */
-    public function getCategoryName()
+    public function getParentId()
     {
-        return $this->getData('fields/name/value');
+        return $this->getData('parent_id');
     }
 
-    /**
-     * Get product name
-     *
-     * @return string
-     */
-    public function getCategoryId()
+    public function getCreatedAt()
     {
-        return $this->getData('fields/category_id/value');
+        return $this->getData('created_at');
     }
 
-    /**
-     * Create category
-     *
-     * @return Category
-     */
-    public function persist()
+    public function getUpdatedAt()
     {
-        $id = Factory::getApp()->magentoCatalogCreateCategory($this);
-        $this->_data['fields']['category_id']['value'] = $id;
-        return $this;
+        return $this->getData('updated_at');
     }
 
-    /**
-     * {inheritdoc}
-     */
-    protected function _initData()
-    {
-        $this->_dataConfig = [
-            'constraint' => 'Success',
-            'request_params' => [
-                'store' => '0',
-            ],
-            'input_prefix' => 'general',
-        ];
-
-        $this->_data = [
-            'fields' => [
-                'name' => [
-                    'value' => 'Subcategory %isolation%',
-                    'group' => static::GROUP_GENERAL_INFORMATION,
-                ],
-                'is_active' => [
-                    'value' => 'Yes',
-                    'input_value' => '1',
-                    'group' => static::GROUP_GENERAL_INFORMATION,
-                    'input' => 'select',
-                ],
-                'include_in_menu' => [
-                    'value' => 'Yes',
-                    'input_value' => '1',
-                    'group' => static::GROUP_GENERAL_INFORMATION,
-                    'input' => 'select',
-                ],
-                'use_config_group_5available_sort_by' => [
-                    'value' => '',
-                    'input_name' => 'use_config[0]',
-                    'input_value' => 'available_sort_by',
-                    'group' => static::GROUP_DISPLAY_SETTINGS,
-                    'input' => 'checkbox',
-                ],
-                'use_config_group_5default_sort_by' => [
-                    'value' => '',
-                    'input_name' => 'use_config[1]',
-                    'input_value' => 'default_sort_by',
-                    'group' => static::GROUP_DISPLAY_SETTINGS,
-                    'input' => 'checkbox',
-                ],
-            ],
-            'category_path' =>  [
-                'value' => 'Default Category',
-                'input_value' => '2',
-            ],
-        ];
-
-        $this->_repository = Factory::getRepositoryFactory()
-            ->getMagentoCatalogCategory($this->_dataConfig, $this->_data);
+    public function getPath()
+    {
+        return $this->getData('path');
     }
 
-    /**
-     * Get path where to create new category
-     *
-     * @return string
-     */
-    public function getCategoryPath()
+    public function getPosition()
+    {
+        return $this->getData('position');
+    }
+
+    public function getLevel()
+    {
+        return $this->getData('level');
+    }
+
+    public function getChildrenCount()
+    {
+        return $this->getData('children_count');
+    }
+
+    public function getAvailableProductListingConfig()
+    {
+        return $this->getData('available_product_listing_config');
+    }
+
+    public function getAvailableSortBy()
+    {
+        return $this->getData('available_sort_by');
+    }
+
+    public function getDefaultProductListingConfig()
+    {
+        return $this->getData('default_product_listing_config');
+    }
+
+    public function getDefaultSortBy()
+    {
+        return $this->getData('default_sort_by');
+    }
+
+    public function getMetaTitle()
+    {
+        return $this->getData('meta_title');
+    }
+
+    public function getId()
+    {
+        return $this->getData('id');
+    }
+
+    public function getName()
+    {
+        return $this->getData('name');
+    }
+
+    public function getIsActive()
+    {
+        return $this->getData('is_active');
+    }
+
+    public function getIsAnchor()
+    {
+        return $this->getData('is_anchor');
+    }
+
+    public function getUrlKey()
+    {
+        return $this->getData('url_key');
+    }
+
+    public function getIncludeInMenu()
+    {
+        return $this->getData('include_in_menu');
+    }
+
+    public function getLandingPage()
+    {
+        return $this->getData('landing_page');
+    }
+
+    public function getDisplayMode()
+    {
+        return $this->getData('display_mode');
+    }
+
+    public function getCategoryProducts()
+    {
+        return $this->getData('category_products');
+    }
+
+    public function getBlockId()
     {
-        return $this->getData('category_path/value');
+        return $this->getData('block_id');
     }
 }
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogCategory.xml b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/Category.xml
similarity index 91%
rename from dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogCategory.xml
rename to dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/Category.xml
index 3533af189610fb8712c123037cbca31bab898649..31e03a3b2d2593922168d165734d8ee12d83400e 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogCategory.xml
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/Category.xml
@@ -5,7 +5,7 @@
  * See COPYING.txt for license details.
  */
 -->
-<fixture class="Magento\Catalog\Test\Fixture\CatalogCategory">
+<fixture class="Magento\Catalog\Test\Fixture\Category">
     <module>Magento_Catalog</module>
     <type>eav</type>
     <entity_type>catalog_category_entity</entity_type>
@@ -38,13 +38,14 @@
             <is_required>0</is_required>
             <default_value></default_value>
             <input>textarea</input>
+            <group>general_information</group>
         </description>
         <parent_id>
             <attribute_code>parent_id</attribute_code>
             <backend_type>int</backend_type>
             <is_required></is_required>
             <default_value>0</default_value>
-            <source>Magento\Catalog\Test\Fixture\CatalogCategory\ParentId</source>
+            <source>Magento\Catalog\Test\Fixture\Category\ParentId</source>
             <input></input>
         </parent_id>
         <created_at>
@@ -123,6 +124,7 @@
             <is_required></is_required>
             <default_value></default_value>
             <input></input>
+            <group>general_information</group>
         </meta_title>
         <id>
             <attribute_code>id</attribute_code>
@@ -141,7 +143,7 @@
         <is_anchor>
             <attribute_code>is_anchor</attribute_code>
             <backend_type>virtual</backend_type>
-            <group>general_information</group>
+            <group>display_setting</group>
         </is_anchor>
         <url_key>
             <attribute_code>url_key</attribute_code>
@@ -158,6 +160,7 @@
             <backend_type>virtual</backend_type>
             <input>select</input>
             <group>display_setting</group>
+            <source>\Magento\Catalog\Test\Fixture\Category\LandingPage</source>
         </landing_page>
         <display_mode>
             <attribute_code>display_mode</attribute_code>
@@ -168,9 +171,9 @@
         <category_products>
             <attribute_code>category_products</attribute_code>
             <backend_type>virtual</backend_type>
-            <source>Magento\Catalog\Test\Fixture\CatalogCategory\CategoryProducts</source>
+            <source>Magento\Catalog\Test\Fixture\Category\CategoryProducts</source>
         </category_products>
     </fields>
-    <repository_class>Magento\Catalog\Test\Repository\CatalogCategory</repository_class>
-    <handler_interface>Magento\Catalog\Test\Handler\CatalogCategory\CatalogCategoryInterface</handler_interface>
+    <repository_class>Magento\Catalog\Test\Repository\Category</repository_class>
+    <handler_interface>Magento\Catalog\Test\Handler\Category\CategoryInterface</handler_interface>
 </fixture>
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogCategory/CategoryProducts.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/Category/CategoryProducts.php
similarity index 90%
rename from dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogCategory/CategoryProducts.php
rename to dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/Category/CategoryProducts.php
index c352a87e2311b747c48f05ccd9e0bcede3188600..1230c6c96549b1afe27bd09808dbed64eec56270 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogCategory/CategoryProducts.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/Category/CategoryProducts.php
@@ -4,10 +4,10 @@
  * See COPYING.txt for license details.
  */
 
-namespace Magento\Catalog\Test\Fixture\CatalogCategory;
+namespace Magento\Catalog\Test\Fixture\Category;
 
-use Mtf\Fixture\FixtureFactory;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class CategoryProducts
@@ -46,7 +46,7 @@ class CategoryProducts implements FixtureInterface
     {
         $this->params = $params;
         if (!empty($data['dataSet']) && $data['dataSet'] !== '-') {
-            $dataSet = explode(',', $data['dataSet']);
+            $dataSet = array_map('trim', explode(',', $data['dataSet']));
             foreach ($dataSet as $value) {
                 $explodeValue = explode('::', $value);
                 $product = $fixtureFactory->createByCode($explodeValue[0], ['dataSet' => $explodeValue[1]]);
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/Category/LandingPage.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/Category/LandingPage.php
new file mode 100644
index 0000000000000000000000000000000000000000..add0a7c40e1bcae69191eeeab91173c2d8e497f2
--- /dev/null
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/Category/LandingPage.php
@@ -0,0 +1,103 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+
+namespace Magento\Catalog\Test\Fixture\Category;
+
+use Magento\Cms\Test\Fixture\CmsBlock;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Fixture\FixtureInterface;
+
+/**
+ * Prepare landing page.
+ */
+class LandingPage implements FixtureInterface
+{
+    /**
+     * Prepared dataSet data.
+     *
+     * @var string
+     */
+    protected $data;
+
+    /**
+     * Source Cms Block.
+     *
+     * @var CmsBlock
+     */
+    protected $cmsBlock = null;
+
+    /**
+     * Fixture params.
+     *
+     * @var array
+     */
+    protected $params;
+
+    /**
+     * @constructor
+     * @param FixtureFactory $fixtureFactory
+     * @param array $params
+     * @param array $data [optional]
+     */
+    public function __construct(FixtureFactory $fixtureFactory, array $params, $data = [])
+    {
+        $this->params = $params;
+
+        if (isset($data['preset'])) {
+            /** @var CmsBlock $cmsBlock */
+            $cmsBlock = $fixtureFactory->createByCode('cmsBlock', ['dataSet' => $data['preset']]);
+            if (!$cmsBlock->getBlockId()) {
+                $cmsBlock->persist();
+            }
+
+            $this->data = $cmsBlock->getTitle();
+            $this->cmsBlock = $cmsBlock;
+        }
+    }
+
+    /**
+     * Persist source.
+     *
+     * @return void
+     */
+    public function persist()
+    {
+        //
+    }
+
+    /**
+     * Return prepared data set.
+     *
+     * @param string|null $key [optional]
+     * @return array|null
+     *
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
+     */
+    public function getData($key = null)
+    {
+        return $this->data;
+    }
+
+    /**
+     * Return data set configuration settings.
+     *
+     * @return array
+     */
+    public function getDataConfig()
+    {
+        return $this->params;
+    }
+
+    /**
+     * Return Cms Block.
+     *
+     * @return CmsBlock
+     */
+    public function getCmsBlock()
+    {
+        return $this->cmsBlock;
+    }
+}
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogCategory/ParentId.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/Category/ParentId.php
similarity index 85%
rename from dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogCategory/ParentId.php
rename to dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/Category/ParentId.php
index 13680f3d1a5fe69a5e4cb9c8444bf87c9e520542..7075706983b99a89b14a29a36617d980df17ec62 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CatalogCategory/ParentId.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/Category/ParentId.php
@@ -4,11 +4,11 @@
  * See COPYING.txt for license details.
  */
 
-namespace Magento\Catalog\Test\Fixture\CatalogCategory;
+namespace Magento\Catalog\Test\Fixture\Category;
 
-use Magento\Catalog\Test\Fixture\CatalogCategory;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Catalog\Test\Fixture\Category;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class ParentId
@@ -19,7 +19,7 @@ class ParentId implements FixtureInterface
     /**
      * Return category
      *
-     * @var CatalogCategory
+     * @var Category
      */
     protected $parentCategory = null;
 
@@ -40,7 +40,7 @@ class ParentId implements FixtureInterface
     {
         $this->params = $params;
         if (isset($data['dataSet']) && $data['dataSet'] !== '-') {
-            $this->parentCategory = $fixtureFactory->createByCode('catalogCategory', ['dataSet' => $data['dataSet']]);
+            $this->parentCategory = $fixtureFactory->createByCode('category', ['dataSet' => $data['dataSet']]);
             if (!$this->parentCategory->hasData('id')) {
                 $this->parentCategory->persist();
             }
@@ -86,7 +86,7 @@ class ParentId implements FixtureInterface
     /**
      * Return entity
      *
-     * @return CatalogCategory
+     * @return Category
      */
     public function getParentCategory()
     {
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CrosssellProducts.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CrosssellProducts.php
index 9f8bfc8925444bfcdca7059601035281a116aed3..6314c21b52cf8f48e2fe4d1bbecefd1207a27b29 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CrosssellProducts.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/CrosssellProducts.php
@@ -7,7 +7,7 @@
 namespace Magento\Catalog\Test\Fixture;
 
 use Magento\Catalog\Test\Block\Adminhtml\Product\Edit\Tab\Crosssell;
-use Mtf\Factory\Factory;
+use Magento\Mtf\Factory\Factory;
 
 class CrosssellProducts extends AssignProducts
 {
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/Product.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/Product.php
index 242d772124f3ffc87e1ba750976e3db90359b3db..ca49dbcb8743d913ae7bd93a6b60fafe3c26dd17 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/Product.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/Product.php
@@ -5,9 +5,10 @@
  */
 namespace Magento\Catalog\Test\Fixture;
 
-use Mtf\Factory\Factory;
-use Mtf\Fixture\DataFixture;
-use Mtf\System\Config;
+use Magento\Mtf\Factory\Factory;
+use Magento\Mtf\Fixture\DataFixture;
+use Magento\Mtf\ObjectManager;
+use Magento\Mtf\System\Config;
 
 class Product extends DataFixture
 {
@@ -58,8 +59,8 @@ class Product extends DataFixture
         if (isset($placeholders['categories'])) {
             $this->categories = $placeholders['categories'];
         } else {
-            $this->_placeholders['category::getCategoryName'] = [$this, 'categoryProvider'];
-            $this->_placeholders['category::getCategoryId'] = [$this, 'categoryProvider'];
+            $this->_placeholders['category::getName'] = [$this, 'categoryProvider'];
+            $this->_placeholders['category::getId'] = [$this, 'categoryProvider'];
         }
     }
 
@@ -179,8 +180,10 @@ class Product extends DataFixture
     protected function getCategory($key)
     {
         if (!isset($this->categories[$key])) {
-            $category = Factory::getFixtureFactory()->getMagentoCatalogCategory();
-            $category->switchData('subcategory');
+            $category = ObjectManager::getInstance()->create(
+                '\Magento\Catalog\Test\Fixture\Category',
+                ['dataSet' => 'default_subcategory']
+            );
             $category->persist();
             $this->categories[$key] = $category;
         }
@@ -207,7 +210,7 @@ class Product extends DataFixture
         $categoryIds = [];
         /** @var Category $category */
         foreach ($this->categories as $category) {
-            $categoryIds[] = $category->getCategoryId();
+            $categoryIds[] = $category->getId();
         }
         return $categoryIds;
     }
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/ProductAttribute.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/ProductAttribute.php
index c69da4e83af86d7726472a1adfac1d33a09567cc..e0bcf99fe4058771c685d3a6ab15fb8170124f9f 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/ProductAttribute.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/ProductAttribute.php
@@ -6,9 +6,9 @@
 
 namespace Magento\Catalog\Test\Fixture;
 
-use Mtf\Client\Element\Locator;
-use Mtf\Factory\Factory;
-use Mtf\Fixture\DataFixture;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Factory\Factory;
+use Magento\Mtf\Fixture\DataFixture;
 
 /**
  * Class Attribute
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/SimpleProduct.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/SimpleProduct.php
index 43a32cb5864c130917db8ab868a84627406cd6c1..29ce1edf9252fba739e1da8d624f89a3a884d688 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/SimpleProduct.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/SimpleProduct.php
@@ -5,8 +5,8 @@
  */
 namespace Magento\Catalog\Test\Fixture;
 
-use Mtf\Factory\Factory;
-use Mtf\System\Config;
+use Magento\Mtf\Factory\Factory;
+use Magento\Mtf\System\Config;
 
 /**
  * Class SimpleProduct
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/VirtualProduct.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/VirtualProduct.php
index 35057a1f722657128f6a19cede105a1824634357..be101be7e2874fc3598eca60db9900adc834075f 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/VirtualProduct.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Fixture/VirtualProduct.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Catalog\Test\Fixture;
 
-use Mtf\Factory\Factory;
+use Magento\Mtf\Factory\Factory;
 
 class VirtualProduct extends Product
 {
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/CatalogAttributeSet/CatalogAttributeSetInterface.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/CatalogAttributeSet/CatalogAttributeSetInterface.php
index fb00c52d4d9b4be4e4fee613daf8067ba1caabb9..da04410ef232c0fc24e9a4050662c71d5876c010 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/CatalogAttributeSet/CatalogAttributeSetInterface.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/CatalogAttributeSet/CatalogAttributeSetInterface.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Catalog\Test\Handler\CatalogAttributeSet;
 
-use Mtf\Handler\HandlerInterface;
+use Magento\Mtf\Handler\HandlerInterface;
 
 /**
  * Interface CatalogCategoryEntityInterface
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/CatalogAttributeSet/Curl.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/CatalogAttributeSet/Curl.php
index 6e33e1ee8ac5de4114683eca784d47b267f59d18..869c7507cda01de635b16f22a3e646086d30b037 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/CatalogAttributeSet/Curl.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/CatalogAttributeSet/Curl.php
@@ -7,12 +7,12 @@
 namespace Magento\Catalog\Test\Handler\CatalogAttributeSet;
 
 use Magento\Catalog\Test\Fixture\CatalogAttributeSet;
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Handler\Curl as AbstractCurl;
-use Mtf\System\Config;
-use Mtf\Util\Protocol\CurlInterface;
-use Mtf\Util\Protocol\CurlTransport;
-use Mtf\Util\Protocol\CurlTransport\BackendDecorator;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Handler\Curl as AbstractCurl;
+use Magento\Mtf\System\Config;
+use Magento\Mtf\Util\Protocol\CurlInterface;
+use Magento\Mtf\Util\Protocol\CurlTransport;
+use Magento\Mtf\Util\Protocol\CurlTransport\BackendDecorator;
 
 /**
  * Class Curl
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/CatalogCategory/CatalogCategoryInterface.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/CatalogCategory/CatalogCategoryInterface.php
deleted file mode 100644
index 184318bb4144d94c75d9cfe1abe06daa0a1a511d..0000000000000000000000000000000000000000
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/CatalogCategory/CatalogCategoryInterface.php
+++ /dev/null
@@ -1,17 +0,0 @@
-<?php
-/**
- * Copyright © 2015 Magento. All rights reserved.
- * See COPYING.txt for license details.
- */
-
-namespace Magento\Catalog\Test\Handler\CatalogCategory;
-
-use Mtf\Handler\HandlerInterface;
-
-/**
- * Interface CatalogCategoryInterface
- */
-interface CatalogCategoryInterface extends HandlerInterface
-{
-    //
-}
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/CatalogProductAttribute/CatalogProductAttributeInterface.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/CatalogProductAttribute/CatalogProductAttributeInterface.php
index 1a5221e0501e857d59e0deef9a23a3ab79e5206d..de29b27f9458c6fa6e8836f8fd2204085cac071c 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/CatalogProductAttribute/CatalogProductAttributeInterface.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/CatalogProductAttribute/CatalogProductAttributeInterface.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Catalog\Test\Handler\CatalogProductAttribute;
 
-use Mtf\Handler\HandlerInterface;
+use Magento\Mtf\Handler\HandlerInterface;
 
 /**
  * Interface CatalogCategoryEntityInterface
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/CatalogProductAttribute/Curl.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/CatalogProductAttribute/Curl.php
index 9d3652fe978811fc7089f5ab37fa1975778e85e1..fb0e7437711b58072d333f864432e446f0f0653d 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/CatalogProductAttribute/Curl.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/CatalogProductAttribute/Curl.php
@@ -6,12 +6,12 @@
 
 namespace Magento\Catalog\Test\Handler\CatalogProductAttribute;
 
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Handler\Curl as AbstractCurl;
-use Mtf\System\Config;
-use Mtf\Util\Protocol\CurlInterface;
-use Mtf\Util\Protocol\CurlTransport;
-use Mtf\Util\Protocol\CurlTransport\BackendDecorator;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Handler\Curl as AbstractCurl;
+use Magento\Mtf\System\Config;
+use Magento\Mtf\Util\Protocol\CurlInterface;
+use Magento\Mtf\Util\Protocol\CurlTransport;
+use Magento\Mtf\Util\Protocol\CurlTransport\BackendDecorator;
 
 /**
  * Class Curl
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/CatalogProductSimple/CatalogProductSimpleInterface.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/CatalogProductSimple/CatalogProductSimpleInterface.php
index f4df1f9289680083d46d5655a31a8263f1351ff8..f705cfd88f2542c631147ae73ad638d21ea77ebf 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/CatalogProductSimple/CatalogProductSimpleInterface.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/CatalogProductSimple/CatalogProductSimpleInterface.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Catalog\Test\Handler\CatalogProductSimple;
 
-use Mtf\Handler\HandlerInterface;
+use Magento\Mtf\Handler\HandlerInterface;
 
 /**
  * Interface CatalogProductSimpleInterface
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/CatalogProductSimple/Curl.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/CatalogProductSimple/Curl.php
index 0f7a8b1dd6b25ea64caf6f69879dd2671795bcb3..c6ee44d2d0c533b3bd462e1a95da6ec93a8e6560 100755
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/CatalogProductSimple/Curl.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/CatalogProductSimple/Curl.php
@@ -6,12 +6,12 @@
 
 namespace Magento\Catalog\Test\Handler\CatalogProductSimple;
 
-use Mtf\System\Config;
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Util\Protocol\CurlInterface;
-use Mtf\Util\Protocol\CurlTransport;
-use Mtf\Handler\Curl as AbstractCurl;
-use Mtf\Util\Protocol\CurlTransport\BackendDecorator;
+use Magento\Mtf\System\Config;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Util\Protocol\CurlInterface;
+use Magento\Mtf\Util\Protocol\CurlTransport;
+use Magento\Mtf\Handler\Curl as AbstractCurl;
+use Magento\Mtf\Util\Protocol\CurlTransport\BackendDecorator;
 
 /**
  * Create new simple product via curl.
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/CatalogProductSimple/Ui.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/CatalogProductSimple/Ui.php
index e3b8421cc3ed15d1208877be2f1d92b5509cb483..1e3631bc057ca280944ccd063e34d39419a06296 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/CatalogProductSimple/Ui.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/CatalogProductSimple/Ui.php
@@ -6,9 +6,9 @@
 
 namespace Magento\Catalog\Test\Handler\CatalogProductSimple;
 
-use Mtf\Factory\Factory;
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Handler\Ui as AbstractUi;
+use Magento\Mtf\Factory\Factory;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Handler\Ui as AbstractUi;
 
 /**
  * Class CreateProduct
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/CatalogProductVirtual/CatalogProductVirtualInterface.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/CatalogProductVirtual/CatalogProductVirtualInterface.php
index 67a4bf6cfff78baf34d88e620ac344a0d7aa2da6..d9cc8dff4dfd99e19f6a9ac9868579e6faad503c 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/CatalogProductVirtual/CatalogProductVirtualInterface.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/CatalogProductVirtual/CatalogProductVirtualInterface.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Catalog\Test\Handler\CatalogProductVirtual;
 
-use Mtf\Handler\HandlerInterface;
+use Magento\Mtf\Handler\HandlerInterface;
 
 /**
  * Interface CatalogProductVirtualInterface
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/Category/CategoryInterface.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/Category/CategoryInterface.php
new file mode 100644
index 0000000000000000000000000000000000000000..d63688100a2f6024e9c3bb9abc461a44f81b4010
--- /dev/null
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/Category/CategoryInterface.php
@@ -0,0 +1,17 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+
+namespace Magento\Catalog\Test\Handler\Category;
+
+use Magento\Mtf\Handler\HandlerInterface;
+
+/**
+ * Interface CategoryInterface
+ */
+interface CategoryInterface extends HandlerInterface
+{
+    //
+}
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/CatalogCategory/Curl.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/Category/Curl.php
old mode 100755
new mode 100644
similarity index 87%
rename from dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/CatalogCategory/Curl.php
rename to dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/Category/Curl.php
index c6e2a419decb37af3f80b6de021f47cf0ab57699..0e8c6e7fd420731794c380ba4bbc9f141827ae89
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/CatalogCategory/Curl.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/Category/Curl.php
@@ -4,20 +4,20 @@
  * See COPYING.txt for license details.
  */
 
-namespace Magento\Catalog\Test\Handler\CatalogCategory;
+namespace Magento\Catalog\Test\Handler\Category;
 
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Handler\Curl as AbstractCurl;
-use Mtf\System\Config;
-use Mtf\Util\Protocol\CurlInterface;
-use Mtf\Util\Protocol\CurlTransport;
-use Mtf\Util\Protocol\CurlTransport\BackendDecorator;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Handler\Curl as AbstractCurl;
+use Magento\Mtf\System\Config;
+use Magento\Mtf\Util\Protocol\CurlInterface;
+use Magento\Mtf\Util\Protocol\CurlTransport;
+use Magento\Mtf\Util\Protocol\CurlTransport\BackendDecorator;
 
 /**
  * Class Curl
  * Create new category via curl
  */
-class Curl extends AbstractCurl implements CatalogCategoryInterface
+class Curl extends AbstractCurl implements CategoryInterface
 {
     /**
      * Data use config for category
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/Curl/CreateCategory.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/Curl/CreateCategory.php
deleted file mode 100644
index 25db8d207bf965d88afc23e5236badc3088cc6d0..0000000000000000000000000000000000000000
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/Curl/CreateCategory.php
+++ /dev/null
@@ -1,106 +0,0 @@
-<?php
-/**
- * @spi
- * Copyright © 2015 Magento. All rights reserved.
- * See COPYING.txt for license details.
- */
-
-namespace Magento\Catalog\Test\Handler\Curl;
-
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Handler\Curl;
-use Mtf\System\Config;
-use Mtf\Util\Protocol\CurlInterface;
-use Mtf\Util\Protocol\CurlTransport;
-use Mtf\Util\Protocol\CurlTransport\BackendDecorator;
-
-/**
- * Class CreateCategory.
- * Curl handler for creating category.
- *
- */
-class CreateCategory extends Curl
-{
-    /**
-     * Prepare POST data for creating category request
-     *
-     * @param array $fields
-     * @param string|null $prefix
-     * @return array
-     */
-    protected function _prepareData(array $fields, $prefix = null)
-    {
-        $data = [];
-        foreach ($fields as $key => $values) {
-            $value = $this->_getValue($values);
-            //do not add this data if value does not exist
-            if (null === $value) {
-                continue;
-            }
-            if (isset($values['input_name'])) {
-                $data[$values['input_name']] = $value;
-            } elseif ($prefix) {
-                $data[$prefix][$key] = $value;
-            } else {
-                $data[$key] = $value;
-            }
-        }
-        return $data;
-    }
-
-    /**
-     * Retrieve field value or return null if value does not exist
-     *
-     * @param array $values
-     * @return null|mixed
-     */
-    protected function _getValue($values)
-    {
-        if (!isset($values['value'])) {
-            return null;
-        }
-        return isset($values['input_value']) ? $values['input_value'] : $values['value'];
-    }
-
-    /**
-     * Retrieve URL for request with all necessary parameters
-     *
-     * @param array $config
-     * @param string|null $parentCategory
-     * @return string
-     */
-    protected function _getUrl(array $config, $parentCategory)
-    {
-        $requestParams = isset($config['request_params']) ? $config['request_params'] : [];
-        $params = '';
-        foreach ($requestParams as $key => $value) {
-            $params .= $key . '/' . $value . '/';
-        }
-        $params .= 'parent/' . (int)$parentCategory . '/';
-        return $_ENV['app_backend_url'] . 'catalog/category/save/' . $params;
-    }
-
-    /**
-     * Create category
-     *
-     * @param FixtureInterface $fixture [optional]
-     * @return int|null
-     */
-    public function persist(FixtureInterface $fixture = null)
-    {
-        $config = $fixture->getDataConfig();
-        $parentCategory = $fixture->getData('category_path/input_value');
-        $url = $this->_getUrl($config, $parentCategory);
-
-        $prefix = isset($config['input_prefix']) ? $config['input_prefix'] : null;
-        $params = $this->_prepareData($fixture->getData('fields'), $prefix);
-
-        $curl = new BackendDecorator(new CurlTransport(), new Config());
-        $curl->write(CurlInterface::POST, $url, '1.0', [], $params);
-        $response = $curl->read();
-        $curl->close();
-
-        preg_match("~.+\/id\/(\d+)\/.+~", $response, $matches);
-        return isset($matches[1]) ? $matches[1] : null;
-    }
-}
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/Curl/CreateProduct.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/Curl/CreateProduct.php
index 6f3040413d8b2828a14ba6b59bbede44ace2758f..1205d69fa11a7dcb6717de0dc14256aa62b8c8b4 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/Curl/CreateProduct.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/Curl/CreateProduct.php
@@ -7,13 +7,13 @@
 
 namespace Magento\Catalog\Test\Handler\Curl;
 
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Fixture\InjectableFixture;
-use Mtf\Handler\Curl;
-use Mtf\System\Config;
-use Mtf\Util\Protocol\CurlInterface;
-use Mtf\Util\Protocol\CurlTransport;
-use Mtf\Util\Protocol\CurlTransport\BackendDecorator;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Handler\Curl;
+use Magento\Mtf\System\Config;
+use Magento\Mtf\Util\Protocol\CurlInterface;
+use Magento\Mtf\Util\Protocol\CurlTransport;
+use Magento\Mtf\Util\Protocol\CurlTransport\BackendDecorator;
 
 /**
  * Class CreateProduct
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/Curl/CreateProductAttribute.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/Curl/CreateProductAttribute.php
index f2873e71543a4324bcfc5dd814f5bfa3bbda963b..18a8f3598f0dc6e51c80d7a03a32620833e9a317 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/Curl/CreateProductAttribute.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/Curl/CreateProductAttribute.php
@@ -8,12 +8,12 @@
 namespace Magento\Catalog\Test\Handler\Curl;
 
 use Magento\Catalog\Test\Fixture\ProductAttribute;
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Handler\Curl;
-use Mtf\System\Config;
-use Mtf\Util\Protocol\CurlInterface;
-use Mtf\Util\Protocol\CurlTransport;
-use Mtf\Util\Protocol\CurlTransport\BackendDecorator;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Handler\Curl;
+use Magento\Mtf\System\Config;
+use Magento\Mtf\Util\Protocol\CurlInterface;
+use Magento\Mtf\Util\Protocol\CurlTransport;
+use Magento\Mtf\Util\Protocol\CurlTransport\BackendDecorator;
 
 /**
  * Class CreateProductAttribute
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/Ui/CreateProduct.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/Ui/CreateProduct.php
index 1533bae18f6a5ba3d3a3731bc34b91e13df0a4c6..acabe4b5e64f481a8621d91187b3598e0e769b7f 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/Ui/CreateProduct.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Handler/Ui/CreateProduct.php
@@ -6,9 +6,9 @@
 
 namespace Magento\Catalog\Test\Handler\Ui;
 
-use Mtf\Factory\Factory;
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Handler\Ui;
+use Magento\Mtf\Factory\Factory;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Handler\Ui;
 
 /**
  * Class CreateProduct
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Page/Category/CatalogCategory.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Page/Category/CatalogCategory.php
index 85b7c74d02e426948ef12dd8f4b99ca90fafcc48..43666299a1ab36c41ed8a986498c032cb0de8859 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Page/Category/CatalogCategory.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Page/Category/CatalogCategory.php
@@ -6,9 +6,9 @@
 
 namespace Magento\Catalog\Test\Page\Category;
 
-use Mtf\Client\Element\Locator;
-use Mtf\Factory\Factory;
-use Mtf\Page\Page;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Factory\Factory;
+use Magento\Mtf\Page\Page;
 
 /**
  * Class CatalogCategory
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Page/Category/CatalogCategoryEdit.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Page/Category/CatalogCategoryEdit.php
index a8ee76b6665eefa6e64cc7185cad62019dbc7915..f7bcf562cd9a529a41ec6dece9afaa3732654f76 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Page/Category/CatalogCategoryEdit.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Page/Category/CatalogCategoryEdit.php
@@ -7,9 +7,9 @@
 namespace Magento\Catalog\Test\Page\Category;
 
 use Magento\Backend\Test\Block\FormPageActions;
-use Mtf\Client\Element\Locator;
-use Mtf\Factory\Factory;
-use Mtf\Page\Page;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Factory\Factory;
+use Magento\Mtf\Page\Page;
 
 /**
  * Class CatalogCategoryEdit
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Page/Product/CatalogProductActionAttributeEdit.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Page/Product/CatalogProductActionAttributeEdit.php
index dc40f0d8e28c4c050bc7071b152fdba24862b487..96ffb35c54577179c009d9efe371eb6368fd6700 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Page/Product/CatalogProductActionAttributeEdit.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Page/Product/CatalogProductActionAttributeEdit.php
@@ -6,9 +6,9 @@
 
 namespace Magento\Catalog\Test\Page\Product;
 
-use Mtf\Client\Element\Locator;
-use Mtf\Factory\Factory;
-use Mtf\Page\Page;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Factory\Factory;
+use Magento\Mtf\Page\Page;
 
 /**
  * Class CatalogProductActionAttributeEdit
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Repository/AssignProducts.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Repository/AssignProducts.php
index cfe500f811cb3bbac30ca0fb4e1b6a4dc0e203e4..9d31fe311d9f3921cd904b4221fdf1c77450606c 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Repository/AssignProducts.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Repository/AssignProducts.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Catalog\Test\Repository;
 
-use Mtf\Repository\AbstractRepository;
+use Magento\Mtf\Repository\AbstractRepository;
 
 /**
  * Class Product Repository
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Repository/CatalogAttributeSet.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Repository/CatalogAttributeSet.php
index 87da5eb4b6f4b6bbda088e34eddf89a3a0c0ff26..1bba2984d00560d84daa61fcf4c9d548d13eae6b 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Repository/CatalogAttributeSet.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Repository/CatalogAttributeSet.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Catalog\Test\Repository;
 
-use Mtf\Repository\AbstractRepository;
+use Magento\Mtf\Repository\AbstractRepository;
 
 /**
  * Class CatalogProductTemplate
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Repository/CatalogCategory.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Repository/CatalogCategory.php
deleted file mode 100644
index 8a6a3981df4fcd00066a0ad0c889f4b13ae1ac87..0000000000000000000000000000000000000000
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Repository/CatalogCategory.php
+++ /dev/null
@@ -1,66 +0,0 @@
-<?php
-/**
- * Copyright © 2015 Magento. All rights reserved.
- * See COPYING.txt for license details.
- */
-
-namespace Magento\Catalog\Test\Repository;
-
-use Mtf\Repository\AbstractRepository;
-
-/**
- * Class CatalogCategory
- * Data for creation Category
- */
-class CatalogCategory extends AbstractRepository
-{
-    /**
-     * @constructor
-     * @param array $defaultConfig
-     * @param array $defaultData
-     *
-     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
-     */
-    public function __construct(array $defaultConfig = [], array $defaultData = [])
-    {
-        $this->_data['default_category'] = [
-            'name' => 'Default Category',
-            'parent_id' => 1,
-            'is_active' => 'Yes',
-            'id' => 2,
-        ];
-
-        $this->_data['default_subcategory'] = [
-            'name' => 'DefaultSubcategory%isolation%',
-            'url_key' => 'default-subcategory-%isolation%',
-            'parent_id' => ['dataSet' => 'default_category'],
-            'is_active' => 'Yes',
-            'include_in_menu' => 'Yes',
-        ];
-
-        $this->_data['default_anchor_subcategory'] = [
-            'name' => 'DefaultSubcategory%isolation%',
-            'url_key' => 'default-subcategory-%isolation%',
-            'parent_id' => ['dataSet' => 'default_category'],
-            'is_active' => 'Yes',
-            'is_anchor' => 'Yes',
-            'include_in_menu' => 'Yes',
-        ];
-
-        $this->_data['root_category'] = [
-            'name' => 'RootCategory%isolation%',
-            'url_key' => 'root-category-%isolation%',
-            'parent_id' => 1,
-            'is_active' => 'Yes',
-            'include_in_menu' => 'Yes',
-        ];
-
-        $this->_data['root_subcategory'] = [
-            'name' => 'RootSubCategory%isolation%',
-            'url_key' => 'root-sub-category-%isolation%',
-            'parent_id' => ['dataSet' => 'root_category'],
-            'is_active' => 'Yes',
-            'include_in_menu' => 'Yes',
-        ];
-    }
-}
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Repository/CatalogProductAttribute.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Repository/CatalogProductAttribute.php
index fc5aacdd8e4f3703ae7808336be7a9ce36f6dba0..0c2747857573b4d4703f21345cad1e4fa5d00bf5 100755
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Repository/CatalogProductAttribute.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Repository/CatalogProductAttribute.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Catalog\Test\Repository;
 
-use Mtf\Repository\AbstractRepository;
+use Magento\Mtf\Repository\AbstractRepository;
 
 /**
  * Class CatalogProductAttribute
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Repository/CatalogProductSimple.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Repository/CatalogProductSimple.php
index 43ee2aadb8f46eb0e2e764da540f0d8da4018e57..de287058e44a5b1d3d7889dc07624aa787eb3464 100755
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Repository/CatalogProductSimple.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Repository/CatalogProductSimple.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Catalog\Test\Repository;
 
-use Mtf\Repository\AbstractRepository;
+use Magento\Mtf\Repository\AbstractRepository;
 
 /**
  * Data for creation Catalog Product Simple.
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Repository/CatalogProductVirtual.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Repository/CatalogProductVirtual.php
index fd43d3c3aa3c8a0a24bb36e94d47bf4289560c7e..d62d7b3ddb5aa433dcfb2b39dfe3dcefad1be7de 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Repository/CatalogProductVirtual.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Repository/CatalogProductVirtual.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Catalog\Test\Repository;
 
-use Mtf\Repository\AbstractRepository;
+use Magento\Mtf\Repository\AbstractRepository;
 
 /**
  * Class CatalogProductVirtual
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Repository/Category.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Repository/Category.php
index 7817cc9c41607f7abc83f1c6b2ad71ec6ce84c6f..61b458e067e50467545ee51b64a9f2c9945cc32a 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Repository/Category.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Repository/Category.php
@@ -6,51 +6,61 @@
 
 namespace Magento\Catalog\Test\Repository;
 
-use Mtf\Repository\AbstractRepository;
+use Magento\Mtf\Repository\AbstractRepository;
 
 /**
- * Class Category Repository
- *
+ * Class CatalogCategory
+ * Data for creation Category
  */
 class Category extends AbstractRepository
 {
     /**
-     * Attribute set for mapping data into ui tabs
-     */
-    const GROUP_GENERAL_INFORMATION = 'general_information';
-    const GROUP_DISPLAY_SETTINGS = 'display_setting';
-
-    /**
-     * {inheritdoc}
+     * @constructor
+     * @param array $defaultConfig
+     * @param array $defaultData
+     *
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function __construct(array $defaultConfig = [], array $defaultData = [])
     {
-        $this->_data['default'] = [
-            'config' => $defaultConfig,
-            'data' => $defaultData,
+        $this->_data['default_category'] = [
+            'name' => 'Default Category',
+            'parent_id' => 1,
+            'is_active' => 'Yes',
+            'id' => 2,
         ];
-        $this->_data['anchor_category'] = $this->_getAnchorCategory();
-    }
 
-    /**
-     * Enable anchor category
-     *
-     * @return array
-     */
-    protected function _getAnchorCategory()
-    {
-        $anchor = [
-            'data' => [
-                'fields' => [
-                    'is_anchor' => [
-                        'value' => 'Yes',
-                        'input_value' => '1',
-                        'group' => static::GROUP_DISPLAY_SETTINGS,
-                        'input' => 'select',
-                    ],
-                ],
-            ],
+        $this->_data['default_subcategory'] = [
+            'name' => 'DefaultSubcategory%isolation%',
+            'url_key' => 'default-subcategory-%isolation%',
+            'parent_id' => ['dataSet' => 'default_category'],
+            'is_active' => 'Yes',
+            'include_in_menu' => 'Yes',
+        ];
+
+        $this->_data['default_anchor_subcategory'] = [
+            'name' => 'DefaultSubcategory%isolation%',
+            'url_key' => 'default-subcategory-%isolation%',
+            'parent_id' => ['dataSet' => 'default_category'],
+            'is_active' => 'Yes',
+            'is_anchor' => 'Yes',
+            'include_in_menu' => 'Yes',
+        ];
+
+        $this->_data['root_category'] = [
+            'name' => 'RootCategory%isolation%',
+            'url_key' => 'root-category-%isolation%',
+            'parent_id' => 1,
+            'is_active' => 'Yes',
+            'include_in_menu' => 'Yes',
+        ];
+
+        $this->_data['root_subcategory'] = [
+            'name' => 'RootSubCategory%isolation%',
+            'url_key' => 'root-sub-category-%isolation%',
+            'parent_id' => ['dataSet' => 'root_category'],
+            'is_active' => 'Yes',
+            'include_in_menu' => 'Yes',
         ];
-        return array_replace_recursive($this->_data['default'], $anchor);
     }
 }
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Repository/Product.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Repository/Product.php
index 9cff685b6a52ddc18dd1afbdbc389c4fe2175a0e..4c9b8591ac0165fc4fb650583516c6d02405ffe6 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Repository/Product.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Repository/Product.php
@@ -7,7 +7,7 @@
 namespace Magento\Catalog\Test\Repository;
 
 use Magento\Catalog\Test\Fixture;
-use Mtf\Repository\AbstractRepository;
+use Magento\Mtf\Repository\AbstractRepository;
 
 /**
  * Class Product Repository
@@ -27,8 +27,8 @@ class Product extends AbstractRepository
         $type = str_replace('product', '', strtolower(substr(get_class($this), strrpos(get_class($this), '\\') + 1)));
         $this->_data[$type . '_required'] = $this->_data['default'];
         $this->_data[$type] = $this->_data['default'];
-        $this->_data[$type]['data']['category_name'] = '%category::getCategoryName%';
-        $this->_data[$type]['data']['category_id'] = '%category::getCategoryId%';
+        $this->_data[$type]['data']['category_name'] = '%category::getName%';
+        $this->_data[$type]['data']['category_id'] = '%category::getId%';
         $this->_data[$type . '_edit_required_fields'] = $this->resetRequiredFields($type);
         $this->_data['price_massaction'] = $this->_getMassActionPrice();
     }
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Repository/ProductAttribute.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Repository/ProductAttribute.php
index 500c30275b08effd58294ac79e6d1bf6ff41532d..607a80eea4e09c3a8585952309f7264d1aa0ab63 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Repository/ProductAttribute.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Repository/ProductAttribute.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Catalog\Test\Repository;
 
-use Mtf\Repository\AbstractRepository;
+use Magento\Mtf\Repository\AbstractRepository;
 
 /**
  * Class Product Attribute Repository
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Repository/SimpleProduct.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/Repository/SimpleProduct.php
index 2fe6d88a5c2f9bd828633e233e780947e9214681..6bd64ae93df29b3e729b16cc14023dbb7940dd12 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Repository/SimpleProduct.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Repository/SimpleProduct.php
@@ -58,8 +58,8 @@ class SimpleProduct extends Product
                 'category_name' => ['value' => 'New category %isolation%'],
                 'parent_category' => ['value' => 'Default'],
             ],
-            'category_name' => '%category::getCategoryName%',
-            'category_id' => '%category::getCategoryId%',
+            'category_name' => '%category::getName%',
+            'category_id' => '%category::getId%',
             'fields' => array_intersect_key(
                 $defaultData['fields'],
                 array_flip(['name', 'sku', 'price', 'weight', 'product_website_1'])
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Category/AssignProductTest.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Category/AssignProductTest.php
deleted file mode 100644
index a4464aa2e548385498f7b080045afdae46ca2348..0000000000000000000000000000000000000000
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Category/AssignProductTest.php
+++ /dev/null
@@ -1,90 +0,0 @@
-<?php
-/**
- * Copyright © 2015 Magento. All rights reserved.
- * See COPYING.txt for license details.
- */
-namespace Magento\Catalog\Test\TestCase\Category;
-
-use Magento\Catalog\Test\Fixture\CatalogCategory;
-use Magento\Catalog\Test\Fixture\Product;
-use Mtf\Factory\Factory;
-use Mtf\TestCase\Functional;
-
-/**
- * Class AssignProducts
- */
-class AssignProductTest extends Functional
-{
-    /**
-     * Creating a subcategory and assign products to the category
-     *
-     * @ZephyrId MAGETWO-16351
-     */
-    public function testAssignProducts()
-    {
-        //Data
-        $simple = Factory::getFixtureFactory()->getMagentoCatalogSimpleProduct();
-        $simple->switchData('simple_required');
-        $simple->persist();
-        $configurable = Factory::getFixtureFactory()->getMagentoConfigurableProductConfigurableProduct();
-        $configurable->switchData('configurable_required');
-        $configurable->persist();
-        $bundle = Factory::getFixtureFactory()->getMagentoBundleBundleFixed();
-        $bundle->switchData('bundle_fixed_required');
-        $bundle->persist();
-        $category = Factory::getFixtureFactory()->getMagentoCatalogCatalogCategory();
-        $category->persist();
-        //Pages & Blocks
-        $catalogCategoryPage = Factory::getPageFactory()->getCatalogCategory();
-        $catalogCategoryEditPage = Factory::getPageFactory()->getCatalogCategoryEditId();
-        $treeBlock = $catalogCategoryPage->getTreeBlock();
-        $formBlock = $catalogCategoryPage->getFormBlock();
-        $messagesBlock = $catalogCategoryPage->getMessagesBlock();
-        $actionsBlock = $catalogCategoryEditPage->getPageActionsBlock();
-        //Steps
-        Factory::getApp()->magentoBackendLoginUser();
-        $catalogCategoryPage->open();
-        $treeBlock->selectCategory($category);
-        $formBlock->openTab('category_products');
-        $categoryProductsGrid = $formBlock->getCategoryProductsGrid();
-        $products = [$simple, $configurable, $bundle];
-        /** @var Product $product */
-        foreach ($products as $product) {
-            $categoryProductsGrid->searchAndSelect(['sku' => $product->getSku()]);
-        }
-        $actionsBlock->save();
-        $messagesBlock->waitSuccessMessage();
-        //Clean Cache
-        $cachePage = Factory::getPageFactory()->getAdminCache();
-        $cachePage->open();
-        $cachePage->getActionsBlock()->flushMagentoCache();
-        $cachePage->getMessagesBlock()->waitSuccessMessage();
-        //Verifying
-        $this->assertProductsOnCategory($category, $products);
-    }
-
-    /**
-     * Verifying that category present in Frontend with products
-     *
-     * @param CatalogCategory $category
-     * @param array $products
-     */
-    protected function assertProductsOnCategory(CatalogCategory $category, array $products)
-    {
-        //Open created category on frontend
-        $frontendHomePage = Factory::getPageFactory()->getCmsIndexIndex();
-        $categoryPage = Factory::getPageFactory()->getCatalogCategoryView();
-        $frontendHomePage->open();
-        $navigationMenu = $frontendHomePage->getTopmenu();
-        $navigationMenu->selectCategoryByName($category->getName());
-        $this->assertEquals($category->getName(), $frontendHomePage->getTitleBlock()->getTitle());
-        $productListBlock = $categoryPage->getListProductBlock();
-        /** @var Product $product */
-        foreach ($products as $product) {
-            $this->assertTrue(
-                $productListBlock->isProductVisible($product->getName()),
-                'Product is absent on category page.'
-            );
-        }
-    }
-}
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Category/CreateCategoryEntityTest.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Category/CreateCategoryEntityTest.php
index 4edac0e970c5f47e93d08fcf6b298183c641c653..ed8172c2fe9aec8101f659fc9b62255c7beb4c57 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Category/CreateCategoryEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Category/CreateCategoryEntityTest.php
@@ -6,10 +6,10 @@
 
 namespace Magento\Catalog\Test\TestCase\Category;
 
-use Magento\Catalog\Test\Fixture\CatalogCategory;
+use Magento\Catalog\Test\Fixture\Category;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogCategoryEdit;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogCategoryIndex;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for CreateCategoryEntity
@@ -27,6 +27,12 @@ use Mtf\TestCase\Injectable;
  */
 class CreateCategoryEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'MX';
+    const TEST_TYPE = 'acceptance_test';
+    /* end tags */
+
     /**
      * Catalog category index page
      *
@@ -57,11 +63,11 @@ class CreateCategoryEntityTest extends Injectable
     /**
      * Create category
      *
-     * @param CatalogCategory $category
+     * @param Category $category
      * @param string $addCategory
      * @return void
      */
-    public function test(CatalogCategory $category, $addCategory)
+    public function test(Category $category, $addCategory)
     {
         $this->catalogCategoryIndex->open();
         $this->catalogCategoryIndex->getTreeCategories()->selectCategory($category, false);
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Category/CreateCategoryEntityTest/test.csv b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Category/CreateCategoryEntityTest/test.csv
index f3e9d14a6db51510344e73b3d79516ab33165a1f..c878fef54a6948563ca113da9a6411ada4aec1f7 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Category/CreateCategoryEntityTest/test.csv
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Category/CreateCategoryEntityTest/test.csv
@@ -1,8 +1,10 @@
-"addCategory";"category/data/parent_id/dataSet";"category/data/name";"category/data/url_key";"category/data/is_active";"category/data/description";"category/data/meta_title";"category/data/include_in_menu";"category/data/display_mode";"category/data/landing_page";"category/data/is_anchor";"category/data/available_product_listing_config";"category/data/available_sort_by/sort_0";"category/data/available_sort_by/sort_1";"category/data/available_sort_by/sort_2";"category/data/default_product_listing_config";"category/data/default_sort_by";"category/data/use_config_price_range";"category/data/layered_navigation_price_step";"category/data/category_products_data/preset";"category/data/category_products/dataSet";"constraint"
-"addRootCategory";"-";"RootCategory%isolation%";"RootCategory%isolation%";"Yes";"RootCategory Required ";"-";"-";"-";"-";"-";"No";"Position";"Name";"Price";"-";"-";"-";"-";"-";"-";"assertCategorySaveMessage, assertCategoryForm"
-"addRootCategory";"-";"RootCategory%isolation%";"RootCategory%isolation%";"Yes";"RootCategory All Fields ";"RootCategory Page Title";"Yes";"Static block and products";"Catalog Events Lister";"Yes";"No";"Position";"Name";"Price";"No";"Name";"No";"50";"-";"-";"assertCategorySaveMessage, assertCategoryForm"
-"addSubcategory";"default_category";"Subcategory%isolation%";"Subcategory%isolation%";"Yes";"Subcategory Required";"-";"-";"-";"-";"-";"Yes";"-";"-";"-";"-";"-";"-";"-";"-";"-";"assertCategorySaveMessage, assertCategoryForm, assertCategoryPage"
-"addSubcategory";"default_category";"Subcategory%isolation%";"Subcategory%isolation%";"Yes";"Subcategory For Anchor Subcategory";"-";"Yes";"-";"-";"No";"Yes";"-";"-";"-";"Yes";"-";"Yes";"-";"default";"catalogProductSimple::default,catalogProductSimple::default";"assertCategorySaveMessage, assertCategoryForm, assertCategoryPage, assertCategoryForAssignedProducts"
-"addSubcategory";"default_category";"Subcategory%isolation%";"Subcategory%isolation%";"Yes";"Anchor Subcategory All Fields";"Subcategory Page Title";"Yes";"Products only";"Catalog Events Lister";"Yes";"No";"Position";"Name";"Price";"No";"Price";"No";"50";"default";"catalogProductSimple::default,catalogProductSimple::default";"assertCategorySaveMessage, assertCategoryForm, assertCategoryPage, assertCategoryForAssignedProducts"
-"addSubcategory";"default_category";"Subcategory%isolation%";"Subcategory%isolation%";"Yes";"Not active category";"-";"Yes";"-";"-";"-";"Yes";"-";"-";"-";"Yes";"-";"Yes";"-";"-";"-";"assertCategorySaveMessage, assertCategoryForm"
-"addSubcategory";"default_category";"Subcategory%isolation%";"Subcategory%isolation%";"Yes";"Not included in menu";"-";"No";"-";"-";"-";"-";"-";"-";"-";"-";"-";"-";"-";"-";"-";"assertCategorySaveMessage, assertCategoryForm"
+"description";"addCategory";"category/data/parent_id/dataSet";"category/data/name";"category/data/url_key";"category/data/is_active";"category/data/description";"category/data/meta_title";"category/data/include_in_menu";"category/data/display_mode";"category/data/landing_page";"category/data/is_anchor";"category/data/available_product_listing_config";"category/data/available_sort_by/sort_0";"category/data/available_sort_by/sort_1";"category/data/available_sort_by/sort_2";"category/data/default_product_listing_config";"category/data/default_sort_by";"category/data/use_config_price_range";"category/data/layered_navigation_price_step";"category/data/category_products_data/preset";"category/data/category_products/dataSet";"constraint";"tag"
+"Create root category with required fields";"addRootCategory";"-";"RootCategory%isolation%";"RootCategory%isolation%";"Yes";"RootCategory Required ";"-";"-";"-";"-";"-";"No";"Position";"Name";"Price";"-";"-";"-";"-";"-";"-";"assertCategorySaveMessage, assertCategoryForm";""
+"Create root category with all fields";"addRootCategory";"-";"RootCategory%isolation%";"RootCategory%isolation%";"Yes";"RootCategory All Fields ";"RootCategory Page Title";"Yes";"Static block and products";"-";"Yes";"No";"Position";"Name";"Price";"No";"Name";"No";"50";"-";"-";"assertCategorySaveMessage, assertCategoryForm";""
+"Create subcategory with required fields";"addSubcategory";"default_category";"Subcategory%isolation%";"Subcategory%isolation%";"Yes";"Subcategory Required";"-";"-";"-";"-";"-";"Yes";"-";"-";"-";"-";"-";"-";"-";"-";"-";"assertCategorySaveMessage, assertCategoryForm, assertCategoryPage";""
+"Create not anchor subcategory with required fields";"addSubcategory";"default_category";"Subcategory%isolation%";"Subcategory%isolation%";"Yes";"Subcategory For Anchor Subcategory";"-";"Yes";"-";"-";"No";"Yes";"-";"-";"-";"Yes";"-";"Yes";"-";"default";"catalogProductSimple::default,catalogProductSimple::default";"assertCategorySaveMessage, assertCategoryForm, assertCategoryPage, assertCategoryForAssignedProducts";""
+"Create anchor subcategory with all fields";"addSubcategory";"default_category";"Subcategory%isolation%";"Subcategory%isolation%";"Yes";"Anchor Subcategory All Fields";"Subcategory Page Title";"Yes";"Static block and products";"default";"Yes";"No";"Position";"Name";"Price";"No";"Price";"No";"50";"default";"catalogProductSimple::default,catalogProductSimple::default";"assertCategorySaveMessage, assertCategoryForm, assertCategoryPage, assertCategoryForAssignedProducts";""
+"Create not active subcategory";"addSubcategory";"default_category";"Subcategory%isolation%";"Subcategory%isolation%";"Yes";"Not active category";"-";"Yes";"-";"-";"-";"Yes";"-";"-";"-";"Yes";"-";"Yes";"-";"-";"-";"assertCategorySaveMessage, assertCategoryForm";""
+"Create not included in menu subcategory";"addSubcategory";"default_category";"Subcategory%isolation%";"Subcategory%isolation%";"Yes";"Not included in menu";"-";"No";"-";"-";"-";"-";"-";"-";"-";"-";"-";"-";"-";"-";"-";"assertCategorySaveMessage, assertCategoryForm";""
+"MAGETWO-12513: Create Category from Category page with Required Fields Only";"addSubcategory";"default_category";"Subcategory%isolation%";"-";"Yes";"-";"-";"Yes";"-";"-";"-";"-";"-";"-";"-";"-";"-";"-";"-";"-";"-";"assertCategorySaveMessage, assertCategoryForm, assertCategoryPage";"bamboo_plan:BAT,test_type:acceptance_test"
+"MAGETWO-16351: Assign Products at the Category Level";"addSubcategory";"default_category";"Subcategory%isolation%";"-";"Yes";"-";"-";"Yes";"-";"-";"-";"-";"-";"-";"-";"-";"-";"-";"-";"-";"catalogProductSimple::default, configurableProductInjectable::default, bundleProduct::bundle_fixed_product";"assertCategorySaveMessage, assertCategoryForAssignedProducts";"bamboo_plan:end_to_end,test_type:acceptance_test"
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Category/CreateTest.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Category/CreateTest.php
deleted file mode 100644
index ef310e1a1c3ab76975ca370133f0ea06f3bf063d..0000000000000000000000000000000000000000
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Category/CreateTest.php
+++ /dev/null
@@ -1,69 +0,0 @@
-<?php
-/**
- * Copyright © 2015 Magento. All rights reserved.
- * See COPYING.txt for license details.
- */
-
-namespace Magento\Catalog\Test\TestCase\Category;
-
-use Magento\Catalog\Test\Fixture\Category;
-use Mtf\Factory\Factory;
-use Mtf\TestCase\Functional;
-
-/**
- * Class CreateTest
- * Create category test
- */
-class CreateTest extends Functional
-{
-    /**
-     * Creating Category from Category page with required fields only
-     *
-     * @ZephyrId MAGETWO-12513
-     */
-    public function testWithRequiredFields()
-    {
-        //Data
-        /** @var Category $category */
-        $category = Factory::getFixtureFactory()->getMagentoCatalogCategory();
-        //Pages & Blocks
-        $catalogCategoryPage = Factory::getPageFactory()->getCatalogCategory();
-        $treeBlock = $catalogCategoryPage->getTreeBlock();
-        $catalogCategoryEditPage = Factory::getPageFactory()->getCatalogCategoryEditId();
-        $treeBlockEdit = $catalogCategoryEditPage->getTreeBlock();
-        $formBlock = $catalogCategoryEditPage->getFormBlock();
-        $actionsBlock = $catalogCategoryEditPage->getPageActionsBlock();
-        $messagesBlock = $catalogCategoryEditPage->getMessagesBlock();
-        //Steps
-        Factory::getApp()->magentoBackendLoginUser();
-        $catalogCategoryPage->open();
-        $treeBlock->selectCategory($category);
-        $treeBlockEdit->addSubcategory();
-        $formBlock->fill($category);
-        $actionsBlock->save();
-        //Verifying
-        $messagesBlock->waitSuccessMessage();
-        //Flush cache
-        $cachePage = Factory::getPageFactory()->getAdminCache();
-        $cachePage->open();
-        $cachePage->getActionsBlock()->flushMagentoCache();
-        $cachePage->getMessagesBlock()->waitSuccessMessage();
-        //Verifying
-        $this->assertCategoryOnFrontend($category);
-    }
-
-    /**
-     * Verify category on the frontend
-     *
-     * @param Category $category
-     */
-    protected function assertCategoryOnFrontend(Category $category)
-    {
-        //Open created category on frontend
-        $frontendHomePage = Factory::getPageFactory()->getCmsIndexIndex();
-        $frontendHomePage->open();
-        $navigationMenu = $frontendHomePage->getTopmenu();
-        $navigationMenu->selectCategoryByName($category->getCategoryName());
-        $this->assertEquals($category->getCategoryName(), $frontendHomePage->getTitleBlock()->getTitle());
-    }
-}
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Category/DeleteCategoryEntityTest.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Category/DeleteCategoryEntityTest.php
index dc3a7f9381cfea35b9362562680519ddd866fa7d..85496befeb3a330d1f42756ff6ab4faa830acdef 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Category/DeleteCategoryEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Category/DeleteCategoryEntityTest.php
@@ -6,10 +6,10 @@
 
 namespace Magento\Catalog\Test\TestCase\Category;
 
-use Magento\Catalog\Test\Fixture\CatalogCategory;
+use Magento\Catalog\Test\Fixture\Category;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogCategoryEdit;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogCategoryIndex;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for DeleteCategoryEntity
@@ -30,6 +30,11 @@ use Mtf\TestCase\Injectable;
  */
 class DeleteCategoryEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * Catalog category index page
      *
@@ -60,10 +65,10 @@ class DeleteCategoryEntityTest extends Injectable
     /**
      * Delete category
      *
-     * @param CatalogCategory $category
+     * @param Category $category
      * @return void
      */
-    public function test(CatalogCategory $category)
+    public function test(Category $category)
     {
         $this->markTestIncomplete('MAGETWO-31723');
         $category->persist();
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Category/UpdateCategoryEntityTest.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Category/UpdateCategoryEntityTest.php
index 9aed565b642b3373bfbbe5ff4d746387e6c5ce39..7b43b0189048d7e4a46ea540b10f0cd111809d72 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Category/UpdateCategoryEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Category/UpdateCategoryEntityTest.php
@@ -6,10 +6,10 @@
 
 namespace Magento\Catalog\Test\TestCase\Category;
 
-use Magento\Catalog\Test\Fixture\CatalogCategory;
+use Magento\Catalog\Test\Fixture\Category;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogCategoryEdit;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogCategoryIndex;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for UpdateCategoryEntity
@@ -31,6 +31,11 @@ use Mtf\TestCase\Injectable;
  */
 class UpdateCategoryEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * Catalog category index page
      *
@@ -48,13 +53,13 @@ class UpdateCategoryEntityTest extends Injectable
     /**
      * Inject page end prepare default category
      *
-     * @param CatalogCategory $initialCategory
+     * @param Category $initialCategory
      * @param CatalogCategoryIndex $catalogCategoryIndex
      * @param CatalogCategoryEdit $catalogCategoryEdit
      * @return array
      */
     public function __inject(
-        CatalogCategory $initialCategory,
+        Category $initialCategory,
         CatalogCategoryIndex $catalogCategoryIndex,
         CatalogCategoryEdit $catalogCategoryEdit
     ) {
@@ -67,11 +72,11 @@ class UpdateCategoryEntityTest extends Injectable
     /**
      * Test for update category
      *
-     * @param CatalogCategory $category
-     * @param CatalogCategory $initialCategory
+     * @param Category $category
+     * @param Category $initialCategory
      * @return void
      */
-    public function test(CatalogCategory $category, CatalogCategory $initialCategory)
+    public function test(Category $category, Category $initialCategory)
     {
         $this->catalogCategoryIndex->open();
         $this->catalogCategoryIndex->getTreeCategories()->selectCategory($initialCategory);
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/AbstractAddRelatedProductsEntityTest.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/AbstractAddRelatedProductsEntityTest.php
index 6865d2fad806209ac27e876932a44484fd0550e5..c0200a2ccb2a6773d15e45d75116b0316bd8e412 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/AbstractAddRelatedProductsEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/AbstractAddRelatedProductsEntityTest.php
@@ -8,9 +8,9 @@ namespace Magento\Catalog\Test\TestCase\Product;
 
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductIndex;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductNew;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\Fixture\FixtureInterface;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Class AbstractAddRelatedProductsEntityTest
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/AbstractCompareProductsTest.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/AbstractCompareProductsTest.php
index 4fc5578dc456e7a3c583c76e575285d87e6367b0..b8bcce9c6c744a0e7981e26493ace658e3dd72a9 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/AbstractCompareProductsTest.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/AbstractCompareProductsTest.php
@@ -11,11 +11,11 @@ use Magento\Catalog\Test\Page\Product\CatalogProductView;
 use Magento\Cms\Test\Page\CmsIndex;
 use Magento\Customer\Test\Fixture\CustomerInjectable;
 use Magento\Customer\Test\Page\CustomerAccountLogin;
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\Fixture\InjectableFixture;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Abstract class for compare products class.
@@ -41,7 +41,7 @@ abstract class AbstractCompareProductsTest extends Injectable
     /**
      * Browser.
      *
-     * @var Browser
+     * @var BrowserInterface
      */
     protected $browser;
 
@@ -99,14 +99,14 @@ abstract class AbstractCompareProductsTest extends Injectable
      *
      * @param CmsIndex $cmsIndex
      * @param CatalogProductView $catalogProductView
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @param CustomerAccountLogin $customerAccountLogin
      * @return void
      */
     public function __inject(
         CmsIndex $cmsIndex,
         CatalogProductView $catalogProductView,
-        Browser $browser,
+        BrowserInterface $browser,
         CustomerAccountLogin $customerAccountLogin
     ) {
         $this->cmsIndex = $cmsIndex;
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/AddCrossSellEntityTest.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/AddCrossSellEntityTest.php
index 1643d384d527b4f9560bf97a8d1f39de193572a8..e7e2680a05dcd3abf5a150f8e9127aee77fbc111 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/AddCrossSellEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/AddCrossSellEntityTest.php
@@ -29,6 +29,11 @@ use Magento\Catalog\Test\Fixture\CatalogProductSimple\CrossSellProducts;
  */
 class AddCrossSellEntityTest extends AbstractAddRelatedProductsEntityTest
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * Run test add cross sell products entity
      *
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/AddRelatedProductsEntityTest.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/AddRelatedProductsEntityTest.php
index 3cf2c3a8d8859a9d77482d94fc468961e36ee1e4..a04b26309f3f7c1396f5e4e8c86398fdf019cd56 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/AddRelatedProductsEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/AddRelatedProductsEntityTest.php
@@ -30,6 +30,11 @@ use Magento\Catalog\Test\Fixture\CatalogProductSimple\RelatedProducts;
  */
 class AddRelatedProductsEntityTest extends AbstractAddRelatedProductsEntityTest
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * Run test add related products entity
      *
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/AddUpSellEntityTest.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/AddUpSellEntityTest.php
index be2090f3ad336a9a5036253def4bd97b10d280d3..7b3f526055af6ded610a9f2c8df6f1f470388b24 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/AddUpSellEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/AddUpSellEntityTest.php
@@ -28,6 +28,11 @@ use Magento\Catalog\Test\Fixture\CatalogProductSimple\UpSellProducts;
  */
 class AddUpSellEntityTest extends AbstractAddRelatedProductsEntityTest
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * Run test add up sell products entity
      *
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/CreateProductTest.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/CreateProductTest.php
index f5ee42943ca271c4193f49332ce8d8e20e775490..251ff8c60d3c5c455c8b6a7de51b649f6cc62ff6 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/CreateProductTest.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/CreateProductTest.php
@@ -7,8 +7,8 @@
 namespace Magento\Catalog\Test\TestCase\Product;
 
 use Magento\Catalog\Test\Fixture\SimpleProduct;
-use Mtf\Factory\Factory;
-use Mtf\TestCase\Functional;
+use Magento\Mtf\Factory\Factory;
+use Magento\Mtf\TestCase\Functional;
 
 /**
  * Class CreateProductTest
@@ -16,6 +16,10 @@ use Mtf\TestCase\Functional;
  */
 class CreateProductTest extends Functional
 {
+    /* tags */
+    const TEST_TYPE = 'acceptance_test';
+    /* end tags */
+
     /**
      * Login into backend area before test
      *
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/CreateSimpleProductEntityTest.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/CreateSimpleProductEntityTest.php
index f6bdcb41d301e52b88a3d7087ff8995acaaeb60e..02044246737b11def87d8f48b06884e10a9b530d 100755
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/CreateSimpleProductEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/CreateSimpleProductEntityTest.php
@@ -6,11 +6,11 @@
 
 namespace Magento\Catalog\Test\TestCase\Product;
 
-use Magento\Catalog\Test\Fixture\CatalogCategory;
+use Magento\Catalog\Test\Fixture\Category;
 use Magento\Catalog\Test\Fixture\CatalogProductSimple;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductIndex;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductNew;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for CreateSimpleProductEntity
@@ -28,10 +28,15 @@ use Mtf\TestCase\Injectable;
  */
 class CreateSimpleProductEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * Category fixture
      *
-     * @var CatalogCategory
+     * @var Category
      */
     protected $category;
 
@@ -52,10 +57,10 @@ class CreateSimpleProductEntityTest extends Injectable
     /**
      * Prepare data
      *
-     * @param CatalogCategory $category
+     * @param Category $category
      * @return array
      */
-    public function __prepare(CatalogCategory $category)
+    public function __prepare(Category $category)
     {
         $category->persist();
 
@@ -67,13 +72,13 @@ class CreateSimpleProductEntityTest extends Injectable
     /**
      * Injection data
      *
-     * @param CatalogCategory $category
+     * @param Category $category
      * @param CatalogProductIndex $productGrid
      * @param CatalogProductNew $newProductPage
      * @return void
      */
     public function __inject(
-        CatalogCategory $category,
+        Category $category,
         CatalogProductIndex $productGrid,
         CatalogProductNew $newProductPage
     ) {
@@ -86,10 +91,10 @@ class CreateSimpleProductEntityTest extends Injectable
      * Run create product simple entity test
      *
      * @param CatalogProductSimple $product
-     * @param CatalogCategory $category
+     * @param Category $category
      * @return void
      */
-    public function testCreate(CatalogProductSimple $product, CatalogCategory $category)
+    public function testCreate(CatalogProductSimple $product, Category $category)
     {
         // Steps
         $this->productGrid->open();
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/CreateSimpleWithCategoryTest.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/CreateSimpleWithCategoryTest.php
index bef726b3adb837e566ad44bdad1d4b29c1a20a86..01f3fecddcaa5c606a7309b25ebf200c27f7dc36 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/CreateSimpleWithCategoryTest.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/CreateSimpleWithCategoryTest.php
@@ -7,8 +7,8 @@
 namespace Magento\Catalog\Test\TestCase\Product;
 
 use Magento\Catalog\Test\Fixture\SimpleProduct;
-use Mtf\Factory\Factory;
-use Mtf\TestCase\Functional;
+use Magento\Mtf\Factory\Factory;
+use Magento\Mtf\TestCase\Functional;
 
 /**
  * Class CreateSimpleWithCategoryTest
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/CreateSimpleWithCustomOptionsAndCategoryTest.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/CreateSimpleWithCustomOptionsAndCategoryTest.php
index 0a0efcc24ac2979d02661c208c04cb8bf3359c01..1f6c1e41b6ffb48ec3f605e4065a4cab3ad00855 100755
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/CreateSimpleWithCustomOptionsAndCategoryTest.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/CreateSimpleWithCustomOptionsAndCategoryTest.php
@@ -7,8 +7,8 @@
 namespace Magento\Catalog\Test\TestCase\Product;
 
 use Magento\Catalog\Test\Fixture\Product;
-use Mtf\Factory\Factory;
-use Mtf\TestCase\Functional;
+use Magento\Mtf\Factory\Factory;
+use Magento\Mtf\TestCase\Functional;
 
 /**
  * Class CreateSimpleWithCustomOptionsAndCategoryTest
@@ -16,6 +16,10 @@ use Mtf\TestCase\Functional;
  */
 class CreateSimpleWithCustomOptionsAndCategoryTest extends Functional
 {
+    /* tags */
+    const TEST_TYPE = 'acceptance_test';
+    /* end tags */
+
     /**
      * Login into backend area before test
      *
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/CreateTest.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/CreateTest.php
index 5eba66335092deb81db91270c38903f89267a628..b168b568d242026fc0b4ae7d1ccc39cc72fa899c 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/CreateTest.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/CreateTest.php
@@ -7,8 +7,8 @@
 namespace Magento\Catalog\Test\TestCase\Product;
 
 use Magento\Catalog\Test\Fixture\SimpleProduct;
-use Mtf\Factory\Factory;
-use Mtf\TestCase\Functional;
+use Magento\Mtf\Factory\Factory;
+use Magento\Mtf\TestCase\Functional;
 
 /**
  * Class CreateTest
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/CreateVirtualProductEntityTest.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/CreateVirtualProductEntityTest.php
index 994a284cb00716206a786b3d8e43da808007a18f..b7e1955b146b5c24e9352f18b09f542078e14b58 100755
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/CreateVirtualProductEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/CreateVirtualProductEntityTest.php
@@ -6,11 +6,11 @@
 
 namespace Magento\Catalog\Test\TestCase\Product;
 
-use Magento\Catalog\Test\Fixture\CatalogCategory;
+use Magento\Catalog\Test\Fixture\Category;
 use Magento\Catalog\Test\Fixture\CatalogProductVirtual;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductIndex;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductNew;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for CreateVirtualProductEntity
@@ -28,10 +28,15 @@ use Mtf\TestCase\Injectable;
  */
 class CreateVirtualProductEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'no';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * Category fixture
      *
-     * @var CatalogCategory
+     * @var Category
      */
     protected $category;
 
@@ -52,10 +57,10 @@ class CreateVirtualProductEntityTest extends Injectable
     /**
      * Prepare data
      *
-     * @param CatalogCategory $category
+     * @param Category $category
      * @return array
      */
-    public function __prepare(CatalogCategory $category)
+    public function __prepare(Category $category)
     {
         $category->persist();
         return [
@@ -80,10 +85,10 @@ class CreateVirtualProductEntityTest extends Injectable
      * Run create product virtual entity test
      *
      * @param CatalogProductVirtual $product
-     * @param CatalogCategory $category
+     * @param Category $category
      * @return void
      */
-    public function testCreate(CatalogProductVirtual $product, CatalogCategory $category)
+    public function testCreate(CatalogProductVirtual $product, Category $category)
     {
         // Steps
         $this->productGrid->open();
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/CreateVirtualTest.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/CreateVirtualTest.php
index a632e329d1cfad02c6cea4e3fe0a125f5aec174e..7e966ab4371dd040ad09d17b12a1a7c1c31d6af6 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/CreateVirtualTest.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/CreateVirtualTest.php
@@ -7,8 +7,8 @@
 namespace Magento\Catalog\Test\TestCase\Product;
 
 use Magento\Catalog\Test\Fixture\VirtualProduct;
-use Mtf\Factory\Factory;
-use Mtf\TestCase\Functional;
+use Magento\Mtf\Factory\Factory;
+use Magento\Mtf\TestCase\Functional;
 
 /**
  * Class CreateTest
@@ -16,6 +16,10 @@ use Mtf\TestCase\Functional;
  */
 class CreateVirtualTest extends Functional
 {
+    /* tags */
+    const TEST_TYPE = 'acceptance_test';
+    /* end tags */
+
     /**
      * Login into backend area before test
      *
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/CrosssellTest.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/CrosssellTest.php
index d8f0f8efa2d6ca8a32c6da9ddb4d2710a6d2391c..2f71f814a2ac3147f8e3036edeff71f42cbf0540 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/CrosssellTest.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/CrosssellTest.php
@@ -7,8 +7,8 @@
 namespace Magento\Catalog\Test\TestCase\Product;
 
 use Magento\Catalog\Test\Fixture\Product;
-use Mtf\Factory\Factory;
-use Mtf\TestCase\Functional;
+use Magento\Mtf\Factory\Factory;
+use Magento\Mtf\TestCase\Functional;
 
 /**
  * Class CrosssellTest
@@ -16,6 +16,10 @@ use Mtf\TestCase\Functional;
  */
 class CrosssellTest extends Functional
 {
+    /* tags */
+    const TEST_TYPE = 'acceptance_test';
+    /* end tags */
+
     /**
      * Login into backend area before test
      *
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/EditSimpleProductTest.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/EditSimpleProductTest.php
index b03a0cf4e53bd729a48e66079961fd7cdcfd6aac..75898fccf9a975810410b55fbab83354f9e426a6 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/EditSimpleProductTest.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/EditSimpleProductTest.php
@@ -7,8 +7,8 @@
 namespace Magento\Catalog\Test\TestCase\Product;
 
 use Magento\Catalog\Test\Fixture\SimpleProduct;
-use Mtf\Factory\Factory;
-use Mtf\TestCase\Functional;
+use Magento\Mtf\Factory\Factory;
+use Magento\Mtf\TestCase\Functional;
 
 /**
  * Edit products
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/ProductTypeSwitchingOnCreationTest.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/ProductTypeSwitchingOnCreationTest.php
index af2999c2dd6fcd2e6fc49ad92ac88bbe5c42891d..1cdff9dbf0ed156e55ea0d5bbc657f7628f7e02d 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/ProductTypeSwitchingOnCreationTest.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/ProductTypeSwitchingOnCreationTest.php
@@ -8,8 +8,8 @@ namespace Magento\Catalog\Test\TestCase\Product;
 
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductIndex;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductNew;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for ProductTypeSwitchingOnCreation
@@ -27,6 +27,11 @@ use Mtf\TestCase\Injectable;
  */
 class ProductTypeSwitchingOnCreationTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * Product page with a grid
      *
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/ProductTypeSwitchingOnUpdateTest.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/ProductTypeSwitchingOnUpdateTest.php
index 4769da1f56a36705fa6b4fd4f9d29066dec848bb..7448eb5eb32818475cdf0dad72b76306af6a9048 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/ProductTypeSwitchingOnUpdateTest.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/ProductTypeSwitchingOnUpdateTest.php
@@ -10,8 +10,8 @@ use Magento\Catalog\Test\Page\Adminhtml\CatalogProductEdit;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductIndex;
 use Magento\ConfigurableProduct\Test\Block\Adminhtml\Product\Edit\Tab\Super\Config;
 use Magento\Downloadable\Test\Block\Adminhtml\Catalog\Product\Edit\Tab\Downloadable;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for ProductTypeSwitchingOnUpdating
@@ -35,6 +35,11 @@ use Mtf\TestCase\Injectable;
  */
 class ProductTypeSwitchingOnUpdateTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * Product page with a grid.
      *
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/RelatedProductTest.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/RelatedProductTest.php
index c130d1a53486c2071f2999e98bfc04bdca8ab0e3..2dce365a7bcfa61fc268ede139217b4f90b677f5 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/RelatedProductTest.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/RelatedProductTest.php
@@ -8,8 +8,8 @@ namespace Magento\Catalog\Test\TestCase\Product;
 
 use Magento\Catalog\Test\Block\Adminhtml\Product\Edit\Tab\Related;
 use Magento\Catalog\Test\Fixture\Product;
-use Mtf\Factory\Factory;
-use Mtf\TestCase\Functional;
+use Magento\Mtf\Factory\Factory;
+use Magento\Mtf\TestCase\Functional;
 
 /**
  * Class RelatedProductTest
@@ -17,6 +17,10 @@ use Mtf\TestCase\Functional;
  */
 class RelatedProductTest extends Functional
 {
+    /* tags */
+    const TEST_TYPE = 'acceptance_test';
+    /* end tags */
+
     /**
      * Login into backend area before test
      *
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/UnassignCategoryTest.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/UnassignCategoryTest.php
index a3dcbd2c8baa0e94d20d55d2df30e554ac0052b7..bf024a2a2a4b9c649e127c7c0498b9542a8503c8 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/UnassignCategoryTest.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/UnassignCategoryTest.php
@@ -7,8 +7,8 @@
 namespace Magento\Catalog\Test\TestCase\Product;
 
 use Magento\Catalog\Test\Fixture\Product;
-use Mtf\Factory\Factory;
-use Mtf\TestCase\Functional;
+use Magento\Mtf\Factory\Factory;
+use Magento\Mtf\TestCase\Functional;
 
 /**
  * Class UnassignCategoryTest
@@ -16,6 +16,10 @@ use Mtf\TestCase\Functional;
  */
 class UnassignCategoryTest extends Functional
 {
+    /* tags */
+    const TEST_TYPE = 'acceptance_test';
+    /* end tags */
+
     /**
      * Login into backend area before test
      *
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/UpdateSimpleProductEntityTest.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/UpdateSimpleProductEntityTest.php
index a51ae03d4957473ef69090ac9c33bd639e32f320..33125f9bdffa3d735b8180e65108966a996380e0 100755
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/UpdateSimpleProductEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/UpdateSimpleProductEntityTest.php
@@ -6,12 +6,12 @@
 
 namespace Magento\Catalog\Test\TestCase\Product;
 
-use Magento\Catalog\Test\Fixture\CatalogCategory;
+use Magento\Catalog\Test\Fixture\Category;
 use Magento\Catalog\Test\Fixture\CatalogProductSimple;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductEdit;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductIndex;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for UpdateProductSimpleEntity
@@ -30,11 +30,16 @@ use Mtf\TestCase\Injectable;
  * 5. Click "Save".
  * 6. Perform asserts.
  *
- * @group Products_(CS)
+ * @group Products_(MX)
  * @ZephyrId MAGETWO-23544
  */
 class UpdateSimpleProductEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * Simple product fixture
      *
@@ -59,10 +64,10 @@ class UpdateSimpleProductEntityTest extends Injectable
     /**
      * Prepare data
      *
-     * @param CatalogCategory $category
+     * @param Category $category
      * @return array
      */
-    public function __prepare(CatalogCategory $category)
+    public function __prepare(Category $category)
     {
         $category->persist();
         return [
@@ -75,14 +80,14 @@ class UpdateSimpleProductEntityTest extends Injectable
      *
      * @param CatalogProductIndex $productGrid
      * @param CatalogProductEdit $editProductPage
-     * @param CatalogCategory $category
+     * @param Category $category
      * @param FixtureFactory $fixtureFactory
      * @return void
      */
     public function __inject(
         CatalogProductIndex $productGrid,
         CatalogProductEdit $editProductPage,
-        CatalogCategory $category,
+        Category $category,
         FixtureFactory $fixtureFactory
     ) {
         $this->initialProduct = $fixtureFactory->createByCode(
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/UpdateVirtualProductEntityTest.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/UpdateVirtualProductEntityTest.php
index d5d9c66c946ba146f9dda1eff3dae6de994a56e1..0868765d7b590ed722dcbf6cb943b594df8ce68a 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/UpdateVirtualProductEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/UpdateVirtualProductEntityTest.php
@@ -6,12 +6,12 @@
 
 namespace Magento\Catalog\Test\TestCase\Product;
 
-use Magento\Catalog\Test\Fixture\CatalogCategory;
+use Magento\Catalog\Test\Fixture\Category;
 use Magento\Catalog\Test\Fixture\CatalogProductVirtual;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductEdit;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductIndex;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for UpdateVirtualProductEntity
@@ -30,11 +30,16 @@ use Mtf\TestCase\Injectable;
  * 5. Click "Save".
  * 6. Perform asserts.
  *
- * @group Products_(CS)
+ * @group Products_(MX)
  * @ZephyrId MAGETWO-26204
  */
 class UpdateVirtualProductEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'no';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * Virtual product fixture
      *
@@ -59,10 +64,10 @@ class UpdateVirtualProductEntityTest extends Injectable
     /**
      * Prepare data
      *
-     * @param CatalogCategory $category
+     * @param Category $category
      * @return array
      */
-    public function __prepare(CatalogCategory $category)
+    public function __prepare(Category $category)
     {
         $category->persist();
         return [
@@ -75,14 +80,14 @@ class UpdateVirtualProductEntityTest extends Injectable
      *
      * @param CatalogProductIndex $productGrid
      * @param CatalogProductEdit $editProductPage
-     * @param CatalogCategory $category
+     * @param Category $category
      * @param FixtureFactory $fixtureFactory
      * @return void
      */
     public function __inject(
         CatalogProductIndex $productGrid,
         CatalogProductEdit $editProductPage,
-        CatalogCategory $category,
+        Category $category,
         FixtureFactory $fixtureFactory
     ) {
         $this->product = $fixtureFactory->createByCode(
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/UpsellTest.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/UpsellTest.php
index 7ba962c33c25ca0435cc8be7d1b5dca576152bf6..23d3a2a581361685e00e55dc66d45ae2bc33fdc3 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/UpsellTest.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/Product/UpsellTest.php
@@ -8,8 +8,8 @@ namespace Magento\Catalog\Test\TestCase\Product;
 
 use Magento\Catalog\Test\Block\Adminhtml\Product\Edit\Tab\Upsell;
 use Magento\Catalog\Test\Fixture\Product;
-use Mtf\Factory\Factory;
-use Mtf\TestCase\Functional;
+use Magento\Mtf\Factory\Factory;
+use Magento\Mtf\TestCase\Functional;
 
 /**
  * Class UpsellTest
@@ -17,6 +17,10 @@ use Mtf\TestCase\Functional;
  */
 class UpsellTest extends Functional
 {
+    /* tags */
+    const TEST_TYPE = 'acceptance_test';
+    /* end tags */
+
     /**
      * Login into backend area before test
      *
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/ProductAttribute/CreateAttributeSetEntityTest.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/ProductAttribute/CreateAttributeSetEntityTest.php
index 5adbf2c9294c73ef523e323d90ff1eb3ecb60db4..7ddb966ed99a38aed91201c7cb802a182f26d2b3 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/ProductAttribute/CreateAttributeSetEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/ProductAttribute/CreateAttributeSetEntityTest.php
@@ -11,7 +11,7 @@ use Magento\Catalog\Test\Fixture\CatalogProductAttribute;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductSetAdd;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductSetEdit;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductSetIndex;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for CreateAttributeSetEntity
@@ -25,11 +25,16 @@ use Mtf\TestCase\Injectable;
  * 6. Save new Product Template.
  * 7. Verify created Product Template.
  *
- * @group Product_Attributes_(CS)
+ * @group Product_Attributes_(MX)
  * @ZephyrId MAGETWO-25104
  */
 class CreateAttributeSetEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * Catalog Product Set page
      *
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/ProductAttribute/CreateProductAttributeEntityFromProductPageTest.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/ProductAttribute/CreateProductAttributeEntityFromProductPageTest.php
index e17391a173d37fcd541d78ad8890fc4b65ee751c..d17441b09b1fce6815ac4fa4f70771fa8918b335 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/ProductAttribute/CreateProductAttributeEntityFromProductPageTest.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/ProductAttribute/CreateProductAttributeEntityFromProductPageTest.php
@@ -8,9 +8,9 @@ namespace Magento\Catalog\Test\TestCase\ProductAttribute;
 
 use Magento\Catalog\Test\Fixture\CatalogProductAttribute;
 use Magento\Catalog\Test\Fixture\CatalogProductSimple;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\ObjectManager;
-use Mtf\TestCase\Scenario;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\ObjectManager;
+use Magento\Mtf\TestCase\Scenario;
 
 /**
  * Test Flow:
@@ -34,6 +34,11 @@ use Mtf\TestCase\Scenario;
  */
 class CreateProductAttributeEntityFromProductPageTest extends Scenario
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * CatalogProductAttribute fixture.
      *
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/ProductAttribute/CreateProductAttributeEntityTest.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/ProductAttribute/CreateProductAttributeEntityTest.php
index c5e121ef2e82aa665d38afeb243b85364e1428f9..aa04e94af83eb8ef90a1c381fec6231479fe15ce 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/ProductAttribute/CreateProductAttributeEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/ProductAttribute/CreateProductAttributeEntityTest.php
@@ -7,8 +7,8 @@
 namespace Magento\Catalog\Test\TestCase\ProductAttribute;
 
 use Magento\Catalog\Test\Fixture\CatalogProductAttribute;
-use Mtf\ObjectManager;
-use Mtf\TestCase\Scenario;
+use Magento\Mtf\ObjectManager;
+use Magento\Mtf\TestCase\Scenario;
 
 /**
  * Test Creation for CreateProductAttributeEntity
@@ -21,11 +21,16 @@ use Mtf\TestCase\Scenario;
  * 5. Save Product Attribute.
  * 6. Perform appropriate assertions.
  *
- * @group Product_Attributes_(CS)
+ * @group Product_Attributes_(MX)
  * @ZephyrId MAGETWO-24767
  */
 class CreateProductAttributeEntityTest extends Scenario
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * CatalogProductAttribute object.
      *
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/ProductAttribute/DeleteAssignedToTemplateProductAttributeTest.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/ProductAttribute/DeleteAssignedToTemplateProductAttributeTest.php
index 091bf7fcf6bcc87c84fd053eabdc347a35dbcab1..5a717e86f09e5b88e9d815fcf1376a11d6d18914 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/ProductAttribute/DeleteAssignedToTemplateProductAttributeTest.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/ProductAttribute/DeleteAssignedToTemplateProductAttributeTest.php
@@ -9,7 +9,7 @@ namespace Magento\Catalog\Test\TestCase\ProductAttribute;
 use Magento\Catalog\Test\Fixture\CatalogAttributeSet;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductAttributeIndex;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductAttributeNew;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for Delete Attribute Set (Product Template)
@@ -31,6 +31,11 @@ use Mtf\TestCase\Injectable;
  */
 class DeleteAssignedToTemplateProductAttributeTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * Catalog Product Attribute index page
      *
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/ProductAttribute/DeleteAttributeSetTest.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/ProductAttribute/DeleteAttributeSetTest.php
index 333d484708cfe98139d026b9fa37cd483abbf02c..5e88db04c3ca11e84164274eddcee87cd8d0e789 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/ProductAttribute/DeleteAttributeSetTest.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/ProductAttribute/DeleteAttributeSetTest.php
@@ -9,8 +9,8 @@ namespace Magento\Catalog\Test\TestCase\ProductAttribute;
 use Magento\Catalog\Test\Fixture\CatalogAttributeSet;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductSetEdit;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductSetIndex;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for Delete Attribute Set (Product Template)
@@ -32,6 +32,11 @@ use Mtf\TestCase\Injectable;
  */
 class DeleteAttributeSetTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * Catalog Product Set index page
      *
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/ProductAttribute/DeleteProductAttributeEntityTest.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/ProductAttribute/DeleteProductAttributeEntityTest.php
index fa368644d82e4fb5d30ce3076cd4f660a4b18ace..7303aaf305c9708988254098508e4eba3ebc58a0 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/ProductAttribute/DeleteProductAttributeEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/ProductAttribute/DeleteProductAttributeEntityTest.php
@@ -9,7 +9,7 @@ namespace Magento\Catalog\Test\TestCase\ProductAttribute;
 use Magento\Catalog\Test\Fixture\CatalogProductAttribute;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductAttributeIndex;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductAttributeNew;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for UpdateProductAttributeEntity
@@ -29,6 +29,11 @@ use Mtf\TestCase\Injectable;
  */
 class DeleteProductAttributeEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * Run DeleteProductAttributeEntity test
      *
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/ProductAttribute/DeleteSystemProductAttributeTest.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/ProductAttribute/DeleteSystemProductAttributeTest.php
index 4bd107543c95fb1d008c1732fac36488e5610648..5bf2a74ee1e93d2db12999e18d9e8743c6dabe5f 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/ProductAttribute/DeleteSystemProductAttributeTest.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/ProductAttribute/DeleteSystemProductAttributeTest.php
@@ -8,7 +8,7 @@ namespace Magento\Catalog\Test\TestCase\ProductAttribute;
 
 use Magento\Catalog\Test\Fixture\CatalogProductAttribute;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductAttributeIndex;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Cover DeleteSystemProductAttribute with functional tests designed for automation
@@ -25,6 +25,11 @@ use Mtf\TestCase\Injectable;
  */
 class DeleteSystemProductAttributeTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * Run delete system product attribute test
      *
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/ProductAttribute/DeleteUsedInConfigurableProductAttributeTest.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/ProductAttribute/DeleteUsedInConfigurableProductAttributeTest.php
index 8a2da27b062825ae3904f17d868a8ba0f346f9c6..9485ebe8e0841755111898351c5b0d8fb3fb8f93 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/ProductAttribute/DeleteUsedInConfigurableProductAttributeTest.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/ProductAttribute/DeleteUsedInConfigurableProductAttributeTest.php
@@ -10,7 +10,7 @@ use Magento\Catalog\Test\Fixture\CatalogProductAttribute;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductAttributeIndex;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductAttributeNew;
 use Magento\ConfigurableProduct\Test\Fixture\ConfigurableProductInjectable;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for Delete Used in Configurable ProductAttribute
@@ -33,6 +33,11 @@ use Mtf\TestCase\Injectable;
  */
 class DeleteUsedInConfigurableProductAttributeTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * Catalog product attribute index page
      *
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/ProductAttribute/UpdateAttributeSetTest.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/ProductAttribute/UpdateAttributeSetTest.php
index 5f4c962f50a5a7cb47914ce3bd49a2a2391ab344..0939c76aadbe4c131169f2cbb7bed5ffc2d95a65 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/ProductAttribute/UpdateAttributeSetTest.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/ProductAttribute/UpdateAttributeSetTest.php
@@ -10,7 +10,7 @@ use Magento\Catalog\Test\Fixture\CatalogAttributeSet;
 use Magento\Catalog\Test\Fixture\CatalogProductAttribute;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductSetEdit;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductSetIndex;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for UpdateAttributeSetTest
@@ -29,11 +29,16 @@ use Mtf\TestCase\Injectable;
  * 7. Save Product Template.
  * 8. Preform all assertions.
  *
- * @group Product_Attributes_(CS)
+ * @group Product_Attributes_(MX)
  * @ZephyrId MAGETWO-26251
  */
 class UpdateAttributeSetTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * Catalog Product Set page
      *
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/ProductAttribute/UpdateProductAttributeEntityTest.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/ProductAttribute/UpdateProductAttributeEntityTest.php
index be5b239065f8f315b76f1699231f20c7aa8c74dc..b9e8ed962b3f0f1fd0e3e94ebe5d3b44d8f8726c 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/ProductAttribute/UpdateProductAttributeEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestCase/ProductAttribute/UpdateProductAttributeEntityTest.php
@@ -10,7 +10,7 @@ use Magento\Catalog\Test\Fixture\CatalogAttributeSet;
 use Magento\Catalog\Test\Fixture\CatalogProductAttribute;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductAttributeIndex;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductAttributeNew;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for UpdateProductAttributeEntity
@@ -33,6 +33,11 @@ use Mtf\TestCase\Injectable;
  */
 class UpdateProductAttributeEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * Run UpdateProductAttributeEntity test
      *
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/AddAttributeToProductTemplateStep.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/AddAttributeToProductTemplateStep.php
index 2224e63068c1cfe785d57c443c79b85a791fdbd1..ef52d2a94f01577856eab8de4218e28c68bb6520 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/AddAttributeToProductTemplateStep.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/AddAttributeToProductTemplateStep.php
@@ -10,8 +10,8 @@ use Magento\Catalog\Test\Fixture\CatalogAttributeSet;
 use Magento\Catalog\Test\Fixture\CatalogProductAttribute;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductSetEdit;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductSetIndex;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\TestStep\TestStepInterface;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\TestStep\TestStepInterface;
 
 /**
  * Move attribute To attribute set.
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/AddNewAttributeFromProductPageStep.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/AddNewAttributeFromProductPageStep.php
index 5c220ce185db9719130bc497942a8314d454e32e..58d29f12e4d67eedbaf2ebfc01549fd8b2a2a95d 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/AddNewAttributeFromProductPageStep.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/AddNewAttributeFromProductPageStep.php
@@ -7,7 +7,7 @@
 namespace Magento\Catalog\Test\TestStep;
 
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductEdit;
-use Mtf\TestStep\TestStepInterface;
+use Magento\Mtf\TestStep\TestStepInterface;
 
 /**
  * Add custom attribute to product from product page.
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/AddNewAttributeStep.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/AddNewAttributeStep.php
index 84d3f05f7adec5cc2697e0b536fbf129e21eddd0..4b446c35fabfa27b399bf7ceda19e67d0e7f59b7 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/AddNewAttributeStep.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/AddNewAttributeStep.php
@@ -7,7 +7,7 @@
 namespace Magento\Catalog\Test\TestStep;
 
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductAttributeIndex;
-use Mtf\TestStep\TestStepInterface;
+use Magento\Mtf\TestStep\TestStepInterface;
 
 /**
  * Add New Attribute from Attribute index page.
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/CreateProductStep.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/CreateProductStep.php
index 299dc6d37bf276cf3ddce9a8999994ec7709d22d..28bc0fc4eb20698a7b8f0a4f90209be03f9cea48 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/CreateProductStep.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/CreateProductStep.php
@@ -6,9 +6,9 @@
 
 namespace Magento\Catalog\Test\TestStep;
 
-use Mtf\Fixture\FixtureFactory;
-use Mtf\Fixture\FixtureInterface;
-use Mtf\TestStep\TestStepInterface;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\TestStep\TestStepInterface;
 
 /**
  * Create product using handler.
@@ -55,7 +55,6 @@ class CreateProductStep implements TestStepInterface
         if ($product->hasData('id') === false) {
             $product->persist();
         }
-
-        return ['product' => $product];
+         return ['product' => $product];
     }
 }
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/CreateProductTemplateStep.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/CreateProductTemplateStep.php
index 7464f5c1d19b9218370833e91055ffa89586fc5b..e8b106042af164484fbc0f73c6ad92deba48eafc 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/CreateProductTemplateStep.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/CreateProductTemplateStep.php
@@ -7,7 +7,7 @@
 namespace Magento\Catalog\Test\TestStep;
 
 use Magento\Catalog\Test\Fixture\CatalogAttributeSet;
-use Mtf\TestStep\TestStepInterface;
+use Magento\Mtf\TestStep\TestStepInterface;
 
 /**
  * Create product attribute template using handler.
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/CreateProductsStep.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/CreateProductsStep.php
index 914c92bd68d082288e22ea28523fef7f1244664c..74adfb27e1075d828970ffbc81df67f9dffe087e 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/CreateProductsStep.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/CreateProductsStep.php
@@ -6,9 +6,9 @@
 
 namespace Magento\Catalog\Test\TestStep;
 
-use Mtf\Fixture\FixtureFactory;
-use Mtf\Fixture\FixtureInterface;
-use Mtf\TestStep\TestStepInterface;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\TestStep\TestStepInterface;
 
 /**
  * Class CreateProductsStep
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/DeleteAttributeStep.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/DeleteAttributeStep.php
index b485cf5956b5936b91127cdc1caa2e6e1cd338f0..0c028ca6a4802f79f8efc2d5eb2c7cd040086758 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/DeleteAttributeStep.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/DeleteAttributeStep.php
@@ -9,7 +9,7 @@ namespace Magento\Catalog\Test\TestStep;
 use Magento\Catalog\Test\Fixture\CatalogProductAttribute;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductAttributeIndex;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductAttributeNew;
-use Mtf\TestStep\TestStepInterface;
+use Magento\Mtf\TestStep\TestStepInterface;
 
 /**
  * Delete product attribute.
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/FillAttributeFormOnProductPageStep.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/FillAttributeFormOnProductPageStep.php
index 63b6c188f1a9677427c6afdef9ac2f110b9882a2..2d867c8aaa5d114d958081f59ec7e5808dd7ad73 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/FillAttributeFormOnProductPageStep.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/FillAttributeFormOnProductPageStep.php
@@ -8,7 +8,7 @@ namespace Magento\Catalog\Test\TestStep;
 
 use Magento\Catalog\Test\Fixture\CatalogProductAttribute;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductEdit;
-use Mtf\TestStep\TestStepInterface;
+use Magento\Mtf\TestStep\TestStepInterface;
 
 /**
  * Fill custom attribute form on product page.
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/FillAttributeFormStep.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/FillAttributeFormStep.php
index b00e58a291fb366adeb93894f057302b202a9440..265871d80b6dc1cc52d25a2306778988fe06c2a1 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/FillAttributeFormStep.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/FillAttributeFormStep.php
@@ -8,7 +8,7 @@ namespace Magento\Catalog\Test\TestStep;
 
 use Magento\Catalog\Test\Fixture\CatalogProductAttribute;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductAttributeNew;
-use Mtf\TestStep\TestStepInterface;
+use Magento\Mtf\TestStep\TestStepInterface;
 
 /**
  * Fill attribute form on attribute page.
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/OpenProductAttributesPageStep.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/OpenProductAttributesPageStep.php
index a357b802340b2a68281654a6803f25b09c3e7624..39f35eef6a528ddf8c0b8fb5a95a24a0b4d89f4b 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/OpenProductAttributesPageStep.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/OpenProductAttributesPageStep.php
@@ -7,7 +7,7 @@
 namespace Magento\Catalog\Test\TestStep;
 
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductAttributeIndex;
-use Mtf\TestStep\TestStepInterface;
+use Magento\Mtf\TestStep\TestStepInterface;
 
 /**
  * Open Product Attribute Index Page.
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/OpenProductOnBackendStep.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/OpenProductOnBackendStep.php
index 99cacb3269eeed8da9637bb8191c1f25e1821327..d6f6f73cd5b5bf924223a1f7bdabdd550e371b3f 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/OpenProductOnBackendStep.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/OpenProductOnBackendStep.php
@@ -7,8 +7,8 @@
 namespace Magento\Catalog\Test\TestStep;
 
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductIndex;
-use Mtf\Fixture\InjectableFixture;
-use Mtf\TestStep\TestStepInterface;
+use Magento\Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\TestStep\TestStepInterface;
 
 /**
  * Open product on backend.
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/OpenProductsOnFrontendStep.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/OpenProductsOnFrontendStep.php
index 8be5acf25e0492728e2c867fb8c7f8cb80a67be6..cae7f71355dac55e11b51f7a4b842d38829853bc 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/OpenProductsOnFrontendStep.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/OpenProductsOnFrontendStep.php
@@ -6,8 +6,8 @@
 
 namespace Magento\Catalog\Test\TestStep;
 
-use Mtf\Client\Browser;
-use Mtf\TestStep\TestStepInterface;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\TestStep\TestStepInterface;
 
 /**
  * Open products on frontend via url.
@@ -24,7 +24,7 @@ class OpenProductsOnFrontendStep implements TestStepInterface
     /**
      * Browser.
      *
-     * @var Browser
+     * @var BrowserInterface
      */
     protected $browser;
 
@@ -33,9 +33,9 @@ class OpenProductsOnFrontendStep implements TestStepInterface
      *
      * @constructor
      * @param array $products
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      */
-    public function __construct(array $products, Browser $browser)
+    public function __construct(array $products, BrowserInterface $browser)
     {
         $this->products = $products;
         $this->browser = $browser;
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/SaveAttributeOnProductPageStep.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/SaveAttributeOnProductPageStep.php
index 5cccb4c6a340cb8e6b5b84855ebb47adccded100..38d6ebdf1b59da446da19ab4b4ac4d083e3f6aa9 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/SaveAttributeOnProductPageStep.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/SaveAttributeOnProductPageStep.php
@@ -7,7 +7,7 @@
 namespace Magento\Catalog\Test\TestStep;
 
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductEdit;
-use Mtf\TestStep\TestStepInterface;
+use Magento\Mtf\TestStep\TestStepInterface;
 
 /**
  * Click "Save" button on attribute form on product page.
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/SaveAttributeStep.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/SaveAttributeStep.php
index 60b9acf32ac9d4e7122a0ccee11b50f016b95940..0651b72bc377fa796d0bf16a66e806237f45c105 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/SaveAttributeStep.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/SaveAttributeStep.php
@@ -7,7 +7,7 @@
 namespace Magento\Catalog\Test\TestStep;
 
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductAttributeNew;
-use Mtf\TestStep\TestStepInterface;
+use Magento\Mtf\TestStep\TestStepInterface;
 
 /**
  * Save attribute on attribute page.
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/SaveProductStep.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/SaveProductStep.php
index d592470490cd7380c930eef9d73636b04bc59cd1..9d1e5d899686bb23387b1f0cbf08f9156582ff48 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/SaveProductStep.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/SaveProductStep.php
@@ -7,8 +7,8 @@
 namespace Magento\Catalog\Test\TestStep;
 
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductEdit;
-use Mtf\Fixture\InjectableFixture;
-use Mtf\TestStep\TestStepInterface;
+use Magento\Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\TestStep\TestStepInterface;
 
 /**
  * Save product step.
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/SaveProductTemplateStep.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/SaveProductTemplateStep.php
index 09f466651040e94623c518b356431378758f0737..759f036f3f818a5e024b9ae80253c4d0895737eb 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/SaveProductTemplateStep.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/SaveProductTemplateStep.php
@@ -7,7 +7,7 @@
 namespace Magento\Catalog\Test\TestStep;
 
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductSetEdit;
-use Mtf\TestStep\TestStepInterface;
+use Magento\Mtf\TestStep\TestStepInterface;
 
 /**
  * Save attributeSet on attribute set page.
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/SetDefaultAttributeValueStep.php b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/SetDefaultAttributeValueStep.php
index 1f1c6a2b71bcb0ad5914a3b0ce6d1f7fd865ebaa..7ab1e215e9c16093e06160a2e1532763120de18a 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/SetDefaultAttributeValueStep.php
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/TestStep/SetDefaultAttributeValueStep.php
@@ -8,8 +8,8 @@ namespace Magento\Catalog\Test\TestStep;
 
 use Magento\Catalog\Test\Fixture\CatalogProductAttribute;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductEdit;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\TestStep\TestStepInterface;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\TestStep\TestStepInterface;
 
 /**
  * Set default attribute value.
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/etc/constraint.xml b/dev/tests/functional/tests/app/Magento/Catalog/Test/etc/constraint.xml
index 19bc47cf331c87c9e3fcafff336145ce32b93fe8..9ad414f26cb118f39e76886717e9c656a9767a81 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/etc/constraint.xml
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/etc/constraint.xml
@@ -10,7 +10,7 @@
         <severity>high</severity>
         <require>
             <productGrid class="Magento\Catalog\Test\Page\Adminhtml\CatalogProductIndex" />
-            <product class="Mtf\Fixture\FixtureInterface" />
+            <product class="Magento\Mtf\Fixture\FixtureInterface" />
         </require>
     </assertProductInGrid>
     <assertProductSaveMessage module="Magento_Catalog">
@@ -23,14 +23,14 @@
         <severity>low</severity>
         <require>
             <catalogProductView class="Magento\Catalog\Test\Page\Product\CatalogProductView" />
-            <product class="Mtf\Fixture\FixtureInterface" />
+            <product class="Magento\Mtf\Fixture\FixtureInterface" />
         </require>
     </assertProductOutOfStock>
     <assertProductInStock module="Magento_Catalog">
         <severity>low</severity>
         <require>
             <catalogProductView class="Magento\Catalog\Test\Page\Product\CatalogProductView" />
-            <product class="Mtf\Fixture\FixtureInterface" />
+            <product class="Magento\Mtf\Fixture\FixtureInterface" />
         </require>
     </assertProductInStock>
     <assertProductVisibleInCategory module="Magento_Catalog">
@@ -38,8 +38,8 @@
         <require>
             <catalogCategoryView class="Magento\Catalog\Test\Page\Category\CatalogCategoryView" />
             <cmsIndex class="Magento\Cms\Test\Page\CmsIndex" />
-            <category class="Magento\Catalog\Test\Fixture\CatalogCategory" />
-            <product class="Mtf\Fixture\FixtureInterface" />
+            <category class="Magento\Catalog\Test\Fixture\Category" />
+            <product class="Magento\Mtf\Fixture\FixtureInterface" />
         </require>
     </assertProductVisibleInCategory>
     <assertProductNotVisibleInCategory module="Magento_Catalog">
@@ -47,8 +47,8 @@
         <require>
             <catalogCategoryView class="Magento\Catalog\Test\Page\Category\CatalogCategoryView" />
             <cmsIndex class="Magento\Cms\Test\Page\CmsIndex" />
-            <category class="Magento\Catalog\Test\Fixture\CatalogCategory" />
-            <product class="Mtf\Fixture\FixtureInterface" />
+            <category class="Magento\Catalog\Test\Fixture\Category" />
+            <product class="Magento\Mtf\Fixture\FixtureInterface" />
         </require>
     </assertProductNotVisibleInCategory>
     <assertProductSearchableBySku module="Magento_Catalog">
@@ -56,7 +56,7 @@
         <require>
             <catalogSearchResult class="Magento\CatalogSearch\Test\Page\CatalogsearchResult" />
             <cmsIndex class="Magento\Cms\Test\Page\CmsIndex" />
-            <product class="Mtf\Fixture\FixtureInterface" />
+            <product class="Magento\Mtf\Fixture\FixtureInterface" />
         </require>
     </assertProductSearchableBySku>
     <assertProductInCategory module="Magento_Catalog">
@@ -64,15 +64,15 @@
         <require>
             <catalogCategoryView class="Magento\Catalog\Test\Page\Category\CatalogCategoryView" />
             <cmsIndex class="Magento\Cms\Test\Page\CmsIndex" />
-            <product class="Mtf\Fixture\FixtureInterface" />
-            <category class="Magento\Catalog\Test\Fixture\CatalogCategory" />
+            <product class="Magento\Mtf\Fixture\FixtureInterface" />
+            <category class="Magento\Catalog\Test\Fixture\Category" />
         </require>
     </assertProductInCategory>
     <assertProductInCart module="Magento_Catalog">
         <severity>low</severity>
         <require>
             <catalogProductView class="Magento\Catalog\Test\Page\Product\CatalogProductView" />
-            <product class="Mtf\Fixture\FixtureInterface" />
+            <product class="Magento\Mtf\Fixture\FixtureInterface" />
             <checkoutCart class="Magento\Checkout\Test\Page\CheckoutCart" />
         </require>
     </assertProductInCart>
@@ -80,42 +80,42 @@
         <severity>middle</severity>
         <require>
             <catalogProductView class="Magento\Catalog\Test\Page\Product\CatalogProductView" />
-            <product class="Mtf\Fixture\FixtureInterface" />
+            <product class="Magento\Mtf\Fixture\FixtureInterface" />
         </require>
     </assertProductPage>
     <assertProductGroupedPriceOnProductPage module="Magento_Catalog">
         <severity>low</severity>
         <require>
             <catalogProductView class="Magento\Catalog\Test\Page\Product\CatalogProductView" />
-            <product class="Mtf\Fixture\FixtureInterface" />
+            <product class="Magento\Mtf\Fixture\FixtureInterface" />
         </require>
     </assertProductGroupedPriceOnProductPage>
     <assertProductSpecialPriceOnProductPage module="Magento_Catalog">
         <severity>low</severity>
         <require>
             <catalogProductView class="Magento\Catalog\Test\Page\Product\CatalogProductView" />
-            <product class="Mtf\Fixture\FixtureInterface" />
+            <product class="Magento\Mtf\Fixture\FixtureInterface" />
         </require>
     </assertProductSpecialPriceOnProductPage>
     <assertProductTierPriceOnProductPage module="Magento_Catalog">
         <severity>low</severity>
         <require>
             <catalogProductView class="Magento\Catalog\Test\Page\Product\CatalogProductView" />
-            <product class="Mtf\Fixture\FixtureInterface" />
+            <product class="Magento\Mtf\Fixture\FixtureInterface" />
         </require>
     </assertProductTierPriceOnProductPage>
     <assertProductCustomOptionsOnProductPage module="Magento_Catalog">
         <severity>low</severity>
         <require>
             <catalogProductView class="Magento\Catalog\Test\Page\Product\CatalogProductView" />
-            <product class="Mtf\Fixture\FixtureInterface" />
+            <product class="Magento\Mtf\Fixture\FixtureInterface" />
         </require>
     </assertProductCustomOptionsOnProductPage>
     <assertProductForm module="Magento_Catalog">
         <severity>low</severity>
         <require>
             <catalogProductView class="Magento\Catalog\Test\Page\Product\CatalogProductView" />
-            <product class="Mtf\Fixture\FixtureInterface" />
+            <product class="Magento\Mtf\Fixture\FixtureInterface" />
         </require>
     </assertProductForm>
     <assertAddToCartButtonAbsent module="Magento_Catalog">
@@ -129,8 +129,8 @@
         <require>
             <catalogCategoryView class="Magento\Catalog\Test\Page\Category\CatalogCategoryView" />
             <cmsIndex class="Magento\Cms\Test\Page\CmsIndex" />
-            <product class="Mtf\Fixture\FixtureInterface" />
-            <category class="Magento\Catalog\Test\Fixture\CatalogCategory" />
+            <product class="Magento\Mtf\Fixture\FixtureInterface" />
+            <category class="Magento\Catalog\Test\Fixture\Category" />
             <catalogProductView class="Magento\Catalog\Test\Page\Product\CatalogProductView" />
             <catalogSearchResult class="Magento\CatalogSearch\Test\Page\CatalogsearchResult" />
         </require>
@@ -139,14 +139,14 @@
         <severity>low</severity>
         <require>
             <productGrid class="Magento\Catalog\Test\Page\Adminhtml\CatalogProductIndex" />
-            <product class="Mtf\Fixture\FixtureInterface" />
+            <product class="Magento\Mtf\Fixture\FixtureInterface" />
         </require>
     </assertProductSkuAutoGenerated>
     <assertProductGroupedPriceOnProductPage module="Magento_Catalog">
         <severity>low</severity>
         <require>
             <catalogProductView class="Magento\Catalog\Test\Page\Product\CatalogProductView"  />
-            <product class="Mtf\Fixture\FixtureInterface" />
+            <product class="Magento\Mtf\Fixture\FixtureInterface" />
         </require>
     </assertProductGroupedPriceOnProductPage>
     <assertProductAttributeSaveMessage module="Magento_Catalog">
@@ -171,7 +171,7 @@
             <productGrid class="Magento\Catalog\Test\Page\Adminhtml\CatalogProductIndex" />
             <productSetEdit class="Magento\Catalog\Test\Page\Adminhtml\CatalogProductSetEdit" />
             <productSet class="Magento\Catalog\Test\Page\Adminhtml\CatalogProductSetIndex" />
-            <fixtureFactory class="Mtf\Fixture\FixtureFactory" />
+            <fixtureFactory class="Magento\Mtf\Fixture\FixtureFactory" />
         </require>
     </assertAddedProductAttributeOnProductForm>
     <assertProductAttributeIsRequired module="Magento_Catalog">
@@ -289,15 +289,15 @@
     <assertCategoryAbsenceOnFrontend module="Magento_Catalog">
         <severity>low</severity>
         <require>
-            <browser class="Mtf\Client\Browser" />
+            <browser class="Magento\Mtf\Client\Browser" />
             <categoryView class="Magento\Catalog\Test\Page\Category\CatalogCategoryView" />
-            <category class="Magento\Catalog\Test\Fixture\CatalogCategory" />
+            <category class="Magento\Catalog\Test\Fixture\Category" />
         </require>
     </assertCategoryAbsenceOnFrontend>
     <assertCategoryAbsenceOnBackend module="Magento_Catalog">
         <severity>low</severity>
         <require>
-            <category class="Magento\Catalog\Test\Fixture\CatalogCategory" />
+            <category class="Magento\Catalog\Test\Fixture\Category" />
             <catalogCategoryIndex class="Magento\Catalog\Test\Page\Adminhtml\CatalogCategoryIndex" />
         </require>
     </assertCategoryAbsenceOnBackend>
@@ -326,7 +326,7 @@
     <assertProductTemplateOnProductForm module="Magento_Catalog">
         <severity>high</severity>
         <require>
-            <fixtureFactory class="Mtf\Fixture\FixtureFactory" />
+            <fixtureFactory class="Magento\Mtf\Fixture\FixtureFactory" />
             <attributeSet class="Magento\Catalog\Test\Fixture\CatalogAttributeSet" />
             <productEdit class="Magento\Catalog\Test\Page\Adminhtml\CatalogProductEdit" />
             <productGrid class="Magento\Catalog\Test\Page\Adminhtml\CatalogProductIndex" />
@@ -394,7 +394,7 @@
     <assertProductDuplicatedInGrid module="Magento_Catalog">
         <severity>low</severity>
         <require>
-            <product class="Mtf\Fixture\FixtureInterface" />
+            <product class="Magento\Mtf\Fixture\FixtureInterface" />
             <productGrid class="Magento\Catalog\Test\Page\Adminhtml\CatalogProductIndex" />
         </require>
     </assertProductDuplicatedInGrid>
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/etc/curl/di.xml b/dev/tests/functional/tests/app/Magento/Catalog/Test/etc/curl/di.xml
index 8190592e63baf2f63b571ede28e26fc84cb66680..d8489abb27011af32e334f82e0240c0f64d357a3 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/etc/curl/di.xml
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/etc/curl/di.xml
@@ -9,6 +9,6 @@
     <preference for="Magento\Catalog\Test\Handler\CatalogProductSimple\CatalogProductSimpleInterface" type="\Magento\Catalog\Test\Handler\CatalogProductSimple\Curl" />
     <preference for="Magento\Catalog\Test\Handler\CatalogProductAttribute\CatalogProductAttributeInterface" type="\Magento\Catalog\Test\Handler\CatalogProductAttribute\Curl" />
     <preference for="Magento\Catalog\Test\Handler\CatalogAttributeSet\CatalogAttributeSetInterface" type="\Magento\Catalog\Test\Handler\CatalogAttributeSet\Curl" />
-    <preference for="Magento\Catalog\Test\Handler\CatalogCategory\CatalogCategoryInterface" type="\Magento\Catalog\Test\Handler\CatalogCategory\Curl" />
+    <preference for="Magento\Catalog\Test\Handler\Category\CategoryInterface" type="\Magento\Catalog\Test\Handler\Category\Curl" />
     <preference for="Magento\Catalog\Test\Handler\CatalogProductVirtual\CatalogProductVirtualInterface" type="\Magento\Catalog\Test\Handler\CatalogProductVirtual\Curl" />
 </config>
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/etc/fixture.xml b/dev/tests/functional/tests/app/Magento/Catalog/Test/etc/fixture.xml
index 1dfe1614e1e78edbfb58e4c71b48e1f3ec0e62b0..42e974ccae6f3d854714c052b171bf90d17ca1fe 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/etc/fixture.xml
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/etc/fixture.xml
@@ -76,11 +76,11 @@
             <input_prefix>product</input_prefix>
         </data_config>
     </catalogProductVirtual>
-    <catalogCategory module="Magento_Catalog">
+    <category module="Magento_Catalog">
         <type>flat</type>
         <entity_type>catalog_category_entity</entity_type>
         <collection>Magento\Catalog\Model\Resource\Category\Collection</collection>
-    </catalogCategory>
+    </category>
     <catalogProductVirtual module="Magento_Catalog">
         <type>eav</type>
         <entity_type>catalog_product</entity_type>
diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/etc/scenario.xml b/dev/tests/functional/tests/app/Magento/Catalog/Test/etc/scenario.xml
index 34945296329446a75a68357b60f381cbd8514909..fadb2635416f42381372ceccab06118447115b80 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/etc/scenario.xml
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/etc/scenario.xml
@@ -5,7 +5,7 @@
  * See COPYING.txt for license details.
  */
 -->
-<scenarios xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../vendor/magento/mtf/Mtf/Config/etc/scenario.xsd">
+<scenarios xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../vendor/magento/mtf/Magento/Mtf/Config/etc/scenario.xsd">
     <scenario name="CreateProductAttributeEntityFromProductPageTest" module="Magento_Catalog">
         <methods>
             <method name="test">
diff --git a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Block/Adminhtml/Promo/Catalog.php b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Block/Adminhtml/Promo/Catalog.php
index 8c8c18e6039b4e169076cd68a83c02023ab40b70..e667956e1f8867e4f94faad6e9962feb634c7b7a 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Block/Adminhtml/Promo/Catalog.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Block/Adminhtml/Promo/Catalog.php
@@ -6,9 +6,9 @@
 
 namespace Magento\CatalogRule\Test\Block\Adminhtml\Promo;
 
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Client\Element\SimpleElement;
 use Magento\Backend\Test\Block\Widget\Grid;
-use Mtf\Client\Element;
-use Mtf\Client\Element\Locator;
 
 /**
  * Backend catalog price rule grid.
@@ -61,7 +61,7 @@ class Catalog extends Grid
      * Return row with given catalog price rule name.
      *
      * @param string $ruleName
-     * @return Element
+     * @return SimpleElement
      */
     public function getGridRow($ruleName)
     {
diff --git a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Block/Adminhtml/Promo/Catalog/Edit/PromoForm.php b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Block/Adminhtml/Promo/Catalog/Edit/PromoForm.php
index 143227ba2c967a00c959b381f010ce4c338480bc..ed6797e5656997827bc7dda19f5dcd1af66874cd 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Block/Adminhtml/Promo/Catalog/Edit/PromoForm.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Block/Adminhtml/Promo/Catalog/Edit/PromoForm.php
@@ -7,8 +7,9 @@
 namespace Magento\CatalogRule\Test\Block\Adminhtml\Promo\Catalog\Edit;
 
 use Magento\Backend\Test\Block\Widget\FormTabs;
-use Mtf\Client\Element;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Client\Element\SimpleElement;
+use Magento\Mtf\Client\Element;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class PromoForm
@@ -20,11 +21,11 @@ class PromoForm extends FormTabs
      * Fill form with tabs
      *
      * @param FixtureInterface $fixture
-     * @param Element $element
+     * @param SimpleElement $element
      * @param array $replace
      * @return $this|FormTabs
      */
-    public function fill(FixtureInterface $fixture, Element $element = null, array $replace = null)
+    public function fill(FixtureInterface $fixture, SimpleElement $element = null, array $replace = null)
     {
         $tabs = $this->getFieldsByTabs($fixture);
         if ($replace) {
diff --git a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Block/Adminhtml/Promo/Catalog/Edit/Tab/Conditions.php b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Block/Adminhtml/Promo/Catalog/Edit/Tab/Conditions.php
index 3d4cc6d56726cdc26730562d91e5f6d1aa6ae402..2ad3ea93baad5a58d2bac8b5abe954c3e26c6046 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Block/Adminhtml/Promo/Catalog/Edit/Tab/Conditions.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Block/Adminhtml/Promo/Catalog/Edit/Tab/Conditions.php
@@ -6,9 +6,9 @@
 
 namespace Magento\CatalogRule\Test\Block\Adminhtml\Promo\Catalog\Edit\Tab;
 
+use Magento\Mtf\Factory\Factory;
 use Magento\Backend\Test\Block\Widget\Tab;
-use Mtf\Client\Element;
-use Mtf\Factory\Factory;
+use Magento\Mtf\Client\Element\SimpleElement;
 
 /**
  * Class Conditions
@@ -28,10 +28,10 @@ class Conditions extends Tab
      * Fill condition options
      *
      * @param array $fields
-     * @param Element|null $element
+     * @param SimpleElement|null $element
      * @return void
      */
-    public function fillFormTab(array $fields, Element $element = null)
+    public function fillFormTab(array $fields, SimpleElement $element = null)
     {
         $data = $this->dataMapping($fields);
 
diff --git a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Block/Conditions.php b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Block/Conditions.php
index 6bc6032c2c407400f53cb2d497e1865977a6986f..a66e4e04959b60d95b2da5156842a7fe3fbd9b36 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Block/Conditions.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Block/Conditions.php
@@ -5,8 +5,8 @@
  */
 namespace Magento\CatalogRule\Test\Block;
 
-use Mtf\Block\Block;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class Conditions
diff --git a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Constraint/AssertCatalogPriceRuleAppliedCatalogPage.php b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Constraint/AssertCatalogPriceRuleAppliedCatalogPage.php
index 7de205897b22e31782387ef60837455959b23902..7b5c27f818e076576269bc132900d85e30849baa 100755
--- a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Constraint/AssertCatalogPriceRuleAppliedCatalogPage.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Constraint/AssertCatalogPriceRuleAppliedCatalogPage.php
@@ -9,7 +9,7 @@ namespace Magento\CatalogRule\Test\Constraint;
 use Magento\Catalog\Test\Fixture\CatalogProductSimple;
 use Magento\Catalog\Test\Page\Category\CatalogCategoryView;
 use Magento\Cms\Test\Page\CmsIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertCatalogPriceRuleAppliedCatalogPage
diff --git a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Constraint/AssertCatalogPriceRuleAppliedProductPage.php b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Constraint/AssertCatalogPriceRuleAppliedProductPage.php
index f5cf729f3b3836fb9458f2165ebaefd86a3ed92b..fb49621cc044cc1fbdcdc978cb5b20430ac5ab90 100755
--- a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Constraint/AssertCatalogPriceRuleAppliedProductPage.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Constraint/AssertCatalogPriceRuleAppliedProductPage.php
@@ -10,7 +10,7 @@ use Magento\Catalog\Test\Fixture\CatalogProductSimple;
 use Magento\Catalog\Test\Page\Category\CatalogCategoryView;
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
 use Magento\Cms\Test\Page\CmsIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertCatalogPriceRuleAppliedProductPage
diff --git a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Constraint/AssertCatalogPriceRuleAppliedShoppingCart.php b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Constraint/AssertCatalogPriceRuleAppliedShoppingCart.php
index 3ff64a39e77bb871a70b694b8459565788c21d22..e1a3b8bccf34d058010bb54f1633164b42403de1 100755
--- a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Constraint/AssertCatalogPriceRuleAppliedShoppingCart.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Constraint/AssertCatalogPriceRuleAppliedShoppingCart.php
@@ -11,7 +11,7 @@ use Magento\Catalog\Test\Page\Category\CatalogCategoryView;
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
 use Magento\Checkout\Test\Page\CheckoutCart;
 use Magento\Cms\Test\Page\CmsIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertCatalogPriceRuleAppliedShoppingCart
diff --git a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Constraint/AssertCatalogPriceRuleForm.php b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Constraint/AssertCatalogPriceRuleForm.php
index 1247ca4e175bb0b79aab785f52a236eeff209b79..5fc6a6d7bb73487dc826bfb80cb0a21cdb89e18f 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Constraint/AssertCatalogPriceRuleForm.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Constraint/AssertCatalogPriceRuleForm.php
@@ -9,7 +9,7 @@ namespace Magento\CatalogRule\Test\Constraint;
 use Magento\CatalogRule\Test\Fixture\CatalogRule;
 use Magento\CatalogRule\Test\Page\Adminhtml\CatalogRuleIndex;
 use Magento\CatalogRule\Test\Page\Adminhtml\CatalogRuleNew;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertCatalogPriceRuleForm
diff --git a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Constraint/AssertCatalogPriceRuleInGrid.php b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Constraint/AssertCatalogPriceRuleInGrid.php
index bf157e0a4bc6f9109a132ccbc17dd464e39a0747..88ffb1308f2b4aa8c7e5aea4d2240c6391b1c188 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Constraint/AssertCatalogPriceRuleInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Constraint/AssertCatalogPriceRuleInGrid.php
@@ -8,7 +8,7 @@ namespace Magento\CatalogRule\Test\Constraint;
 
 use Magento\CatalogRule\Test\Fixture\CatalogRule;
 use Magento\CatalogRule\Test\Page\Adminhtml\CatalogRuleIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertCatalogPriceRuleInGrid
diff --git a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Constraint/AssertCatalogPriceRuleNotInGrid.php b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Constraint/AssertCatalogPriceRuleNotInGrid.php
index 0a8c3522d38792fbdc447d72fe06a60c5aec85f6..c38cab63849357632c624c3a6d0ac7336c2f0629 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Constraint/AssertCatalogPriceRuleNotInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Constraint/AssertCatalogPriceRuleNotInGrid.php
@@ -8,7 +8,7 @@ namespace Magento\CatalogRule\Test\Constraint;
 
 use Magento\CatalogRule\Test\Fixture\CatalogRule;
 use Magento\CatalogRule\Test\Page\Adminhtml\CatalogRuleIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertCatalogPriceRuleNotInGrid
diff --git a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Constraint/AssertCatalogPriceRuleNoticeMessage.php b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Constraint/AssertCatalogPriceRuleNoticeMessage.php
index 0c1e8c41d7ed7444d268babb22b4a1a490880a78..8106e0062b1edef06a431bbc0ee66186d58af4bb 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Constraint/AssertCatalogPriceRuleNoticeMessage.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Constraint/AssertCatalogPriceRuleNoticeMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\CatalogRule\Test\Constraint;
 
 use Magento\CatalogRule\Test\Page\Adminhtml\CatalogRuleIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertCatalogPriceRuleNoticeMessage
diff --git a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Constraint/AssertCatalogPriceRuleSuccessDeleteMessage.php b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Constraint/AssertCatalogPriceRuleSuccessDeleteMessage.php
index da703e0b1e6f15935aba738054043493d07aa94f..30729236399d7e4781cd101599a894dc4251c9a6 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Constraint/AssertCatalogPriceRuleSuccessDeleteMessage.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Constraint/AssertCatalogPriceRuleSuccessDeleteMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\CatalogRule\Test\Constraint;
 
 use Magento\CatalogRule\Test\Page\Adminhtml\CatalogRuleIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertCatalogPriceRuleSuccessDeleteMessage
diff --git a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Constraint/AssertCatalogPriceRuleSuccessSaveMessage.php b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Constraint/AssertCatalogPriceRuleSuccessSaveMessage.php
index 46fa4556486e017db7cb6278764ea8c26d4bde8b..95e32ec3bd7e04a2c219f715bbc803c11c7dbd1a 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Constraint/AssertCatalogPriceRuleSuccessSaveMessage.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Constraint/AssertCatalogPriceRuleSuccessSaveMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\CatalogRule\Test\Constraint;
 
 use Magento\CatalogRule\Test\Page\Adminhtml\CatalogRuleIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertCatalogPriceRuleSuccessSaveMessage
diff --git a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Fixture/CatalogPriceRule.php b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Fixture/CatalogPriceRule.php
index d14ef23b1bfd00f81aeee848c75386f07575bd77..ff33ac103f3b04906254cafb8c32cc7ba888897d 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Fixture/CatalogPriceRule.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Fixture/CatalogPriceRule.php
@@ -7,8 +7,8 @@
 namespace Magento\CatalogRule\Test\Fixture;
 
 use Magento\CatalogRule\Test\Repository\CatalogPriceRule as Repository;
-use Mtf\Factory\Factory;
-use Mtf\Fixture\DataFixture;
+use Magento\Mtf\Factory\Factory;
+use Magento\Mtf\Fixture\DataFixture;
 
 /**
  * Class CatalogPriceRule
diff --git a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Fixture/CatalogRule.php b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Fixture/CatalogRule.php
index 910c5a91f0bedc0a8108eb4e1dc49f276efe2647..087f07330c5c8f64492e3882035e83e353617275 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Fixture/CatalogRule.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Fixture/CatalogRule.php
@@ -6,7 +6,7 @@
 
 namespace Magento\CatalogRule\Test\Fixture;
 
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Class CatalogRule
diff --git a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Fixture/CatalogRule/Conditions.php b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Fixture/CatalogRule/Conditions.php
index 714f7069486cb9a3d919975c95b98ab99d6b2aac..548477e346f9a2c75ac305ce9a912ef7c8409cd5 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Fixture/CatalogRule/Conditions.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Fixture/CatalogRule/Conditions.php
@@ -6,8 +6,8 @@
 
 namespace Magento\CatalogRule\Test\Fixture\CatalogRule;
 
-use Mtf\Fixture\FixtureFactory;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class Conditions
@@ -23,7 +23,7 @@ class Conditions implements FixtureInterface
     protected $data = [];
 
     /**
-     * @var \Mtf\Fixture\FixtureFactory
+     * @var \Magento\Mtf\Fixture\FixtureFactory
      */
     protected $fixtureFactory;
 
diff --git a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Fixture/Conditions.php b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Fixture/Conditions.php
index 9b66a1bdd3be052aa1c3d5156cf815e23c772d12..10b7388a42aaf1e2badf0f77d18ca735fd31a304 100755
--- a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Fixture/Conditions.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Fixture/Conditions.php
@@ -8,8 +8,8 @@ namespace Magento\CatalogRule\Test\Fixture;
 
 use Magento\Catalog\Test\Fixture\CatalogProductSimple;
 use Magento\Catalog\Test\Fixture\CatalogProductSimple\CategoryIds;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class Conditions
diff --git a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Fixture/Product/Category.php b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Fixture/Product/Category.php
index c92ec7fe231f97c0fb6748a1b411d8e72a1f7e79..ed8f775509728edac53ffaf3b3fd68fbea7a0c01 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Fixture/Product/Category.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Fixture/Product/Category.php
@@ -6,8 +6,8 @@
 
 namespace Magento\CatalogRule\Test\Fixture\Product;
 
-use Mtf\Fixture\FixtureFactory;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class Category
@@ -18,7 +18,7 @@ use Mtf\Fixture\FixtureInterface;
 class Category implements FixtureInterface
 {
     /**
-     * @var \Mtf\Fixture\FixtureFactory
+     * @var \Magento\Mtf\Fixture\FixtureFactory
      */
     protected $fixtureFactory;
 
diff --git a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Handler/CatalogRule/CatalogRuleInterface.php b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Handler/CatalogRule/CatalogRuleInterface.php
index 7e94d6c9874c35bfca976f6d10b8d429a3950d62..5ea223b692be3f162461c482298b3e1e13b2d3a0 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Handler/CatalogRule/CatalogRuleInterface.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Handler/CatalogRule/CatalogRuleInterface.php
@@ -5,7 +5,7 @@
  */
 namespace Magento\CatalogRule\Test\Handler\CatalogRule;
 
-use Mtf\Handler\HandlerInterface;
+use Magento\Mtf\Handler\HandlerInterface;
 
 /**
  * Interface CatalogRuleInterface
diff --git a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Handler/CatalogRule/Curl.php b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Handler/CatalogRule/Curl.php
index 8225dc55dcb4851a31546629b51c49e574a36a0a..d1b01f2b89aa9294251b7519383697c0ade5ca0d 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Handler/CatalogRule/Curl.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Handler/CatalogRule/Curl.php
@@ -8,11 +8,11 @@ namespace Magento\CatalogRule\Test\Handler\CatalogRule;
 
 use Magento\Backend\Test\Handler\Conditions;
 use Magento\CatalogRule\Test\Handler\CatalogRule;
-use Mtf\Fixture\FixtureInterface;
-use Mtf\System\Config;
-use Mtf\Util\Protocol\CurlInterface;
-use Mtf\Util\Protocol\CurlTransport;
-use Mtf\Util\Protocol\CurlTransport\BackendDecorator;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\System\Config;
+use Magento\Mtf\Util\Protocol\CurlInterface;
+use Magento\Mtf\Util\Protocol\CurlTransport;
+use Magento\Mtf\Util\Protocol\CurlTransport\BackendDecorator;
 
 /**
  * Class Curl
diff --git a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Repository/CatalogPriceRule.php b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Repository/CatalogPriceRule.php
index 3aad355402c9f601609b2ce8001a51ceac403a76..1a9b4268b9ffb8271c56725944d648ff7894a5c6 100755
--- a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Repository/CatalogPriceRule.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Repository/CatalogPriceRule.php
@@ -6,7 +6,7 @@
 
 namespace Magento\CatalogRule\Test\Repository;
 
-use Mtf\Repository\AbstractRepository;
+use Magento\Mtf\Repository\AbstractRepository;
 
 /**
  * Class CatalogPriceRule Repository
diff --git a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Repository/CatalogRule.php b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Repository/CatalogRule.php
index a2d1254e13cff783ed6580f618c5ddc0ac7b246a..5e67cddc6eb11062f4bd52a18f11f607d40f6e75 100755
--- a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Repository/CatalogRule.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Repository/CatalogRule.php
@@ -6,7 +6,7 @@
 
 namespace Magento\CatalogRule\Test\Repository;
 
-use Mtf\Repository\AbstractRepository;
+use Magento\Mtf\Repository\AbstractRepository;
 
 /**
  * Class CatalogRule
@@ -88,5 +88,16 @@ class CatalogRule extends AbstractRepository
             'simple_action' => 'By Fixed Amount',
             'discount_amount' => '10',
         ];
+
+        $this->_data['catalog_price_rule_all_groups'] = [
+            'name' => 'catalog_price_rule_all_groups_%isolation%',
+            'description' => '-50% of price, Priority = 0',
+            'is_active' => 'Active',
+            'website_ids' => ['Main Website'],
+            'customer_group_ids' => ['NOT LOGGED IN', 'General', 'Wholesale', 'Retailer'],
+            'sort_order' => '0',
+            'simple_action' => 'By Percentage of the Original Price',
+            'discount_amount' => '50',
+        ];
     }
 }
diff --git a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/TestCase/AbstractCatalogRuleEntityTest.php b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/TestCase/AbstractCatalogRuleEntityTest.php
index 83535be670a8e0c9cb62b9c6624fac3655b11cd2..5602c65632c81c6728e499ad361aaddc3d86e382 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/TestCase/AbstractCatalogRuleEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/TestCase/AbstractCatalogRuleEntityTest.php
@@ -10,8 +10,8 @@ use Magento\Backend\Test\Page\Adminhtml\AdminCache;
 use Magento\CatalogRule\Test\Fixture\CatalogRule;
 use Magento\CatalogRule\Test\Page\Adminhtml\CatalogRuleIndex;
 use Magento\CatalogRule\Test\Page\Adminhtml\CatalogRuleNew;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Parent class for CatalogRule tests
diff --git a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/TestCase/ApplySeveralCatalogPriceRuleEntityTest.php b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/TestCase/ApplySeveralCatalogPriceRuleEntityTest.php
index b61ceb4a53c83de08cce834db0ee71839b955af0..c9e412c975af762365d454996adadaab76908b22 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/TestCase/ApplySeveralCatalogPriceRuleEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/TestCase/ApplySeveralCatalogPriceRuleEntityTest.php
@@ -26,6 +26,11 @@ use Magento\Catalog\Test\Fixture\CatalogProductSimple;
  */
 class ApplySeveralCatalogPriceRuleEntityTest extends AbstractCatalogRuleEntityTest
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * Apply several catalog price rules
      *
diff --git a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/TestCase/CreateCatalogPriceRuleEntityTest.php b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/TestCase/CreateCatalogPriceRuleEntityTest.php
index f7e15cfc46dac04e26b806bc90f5e1a58796d519..20ddb3397e1a54e507e8dd9893b587a79caea588 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/TestCase/CreateCatalogPriceRuleEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/TestCase/CreateCatalogPriceRuleEntityTest.php
@@ -24,6 +24,11 @@ use Magento\CatalogRule\Test\Fixture\CatalogRule;
  */
 class CreateCatalogPriceRuleEntityTest extends AbstractCatalogRuleEntityTest
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * Create Catalog Price Rule
      *
diff --git a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/TestCase/CreateCatalogRuleTest.php b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/TestCase/CreateCatalogRuleTest.php
index 44b10f6596ce57d1280d8c6ad3772da6add45572..b16659bb3aa2d8243e52552d72e8d61f7b086193 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/TestCase/CreateCatalogRuleTest.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/TestCase/CreateCatalogRuleTest.php
@@ -27,6 +27,11 @@ use Magento\CatalogRule\Test\Fixture\CatalogRule;
  */
 class CreateCatalogRuleTest extends AbstractCatalogRuleEntityTest
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * Create Catalog Price Rule
      *
diff --git a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/TestCase/DeleteCatalogPriceRuleEntityTest.php b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/TestCase/DeleteCatalogPriceRuleEntityTest.php
index 82d75dd21e0b8b1e296892de704e70bb9178c46c..959edfcf46434fe1522a305970123c5c28509582 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/TestCase/DeleteCatalogPriceRuleEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/TestCase/DeleteCatalogPriceRuleEntityTest.php
@@ -9,7 +9,7 @@ namespace Magento\CatalogRule\Test\TestCase;
 use Magento\CatalogRule\Test\Fixture\CatalogRule;
 use Magento\CatalogRule\Test\Page\Adminhtml\CatalogRuleIndex;
 use Magento\CatalogRule\Test\Page\Adminhtml\CatalogRuleNew;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for Delete CatalogPriceRuleEntity
@@ -29,6 +29,11 @@ use Mtf\TestCase\Injectable;
  */
 class DeleteCatalogPriceRuleEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * Page CatalogRuleIndex
      *
diff --git a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/TestCase/UpdateCatalogPriceRuleEntityTest.php b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/TestCase/UpdateCatalogPriceRuleEntityTest.php
index 34a900a21e6273b986de1072ff38620a742965c0..189ebcaaca3f02d532258f236cbe7c0a34fe7fe4 100755
--- a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/TestCase/UpdateCatalogPriceRuleEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/TestCase/UpdateCatalogPriceRuleEntityTest.php
@@ -30,6 +30,11 @@ use Magento\CatalogRule\Test\Fixture\CatalogRule;
  */
 class UpdateCatalogPriceRuleEntityTest extends AbstractCatalogRuleEntityTest
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * Update catalog price rule
      *
diff --git a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/TestStep/CreateCatalogRuleStep.php b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/TestStep/CreateCatalogRuleStep.php
new file mode 100644
index 0000000000000000000000000000000000000000..f17c6b396216012c6824e9f216131643944a1eeb
--- /dev/null
+++ b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/TestStep/CreateCatalogRuleStep.php
@@ -0,0 +1,62 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+
+namespace Magento\CatalogRule\Test\TestStep;
+
+use Mtf\Fixture\FixtureFactory;
+use Mtf\TestStep\TestStepInterface;
+
+/**
+ * Creating catalog rule
+ */
+class CreateCatalogRuleStep implements TestStepInterface
+{
+    /**
+     * Catalog Rule dataset name
+     *
+     * @var string
+     */
+    protected $catalogRule;
+
+    /**
+     * Factory for Fixture
+     *
+     * @var FixtureFactory
+     */
+    protected $fixtureFactory;
+
+    /**
+     * Preparing step properties
+     *
+     * @constructor
+     * @param FixtureFactory $fixtureFactory
+     * @param string $catalogRule
+     */
+    public function __construct(FixtureFactory $fixtureFactory, $catalogRule)
+    {
+        $this->fixtureFactory = $fixtureFactory;
+        $this->catalogRule = $catalogRule;
+    }
+
+    /**
+     * Create catalog rule
+     *
+     * @return array
+     */
+    public function run()
+    {
+        $result['catalogRule'] = null;
+        if ($this->catalogRule != '-') {
+            $catalogRule = $this->fixtureFactory->createByCode(
+                'catalogRule',
+                ['dataSet' => $this->catalogRule]
+            );
+            $catalogRule->persist();
+            $result['catalogRule'] = $catalogRule;
+        }
+        return $result;
+    }
+}
diff --git a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/TestStep/DeleteAllCatalogRulesStep.php b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/TestStep/DeleteAllCatalogRulesStep.php
index 9bffed37d4ee1a69abef9631df5fae450b6cf1d4..fd52826d9bc8181412dd2979f4147ffd91ececed 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/TestStep/DeleteAllCatalogRulesStep.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/TestStep/DeleteAllCatalogRulesStep.php
@@ -8,7 +8,7 @@ namespace Magento\CatalogRule\Test\TestStep;
 
 use Magento\CatalogRule\Test\Page\Adminhtml\CatalogRuleIndex;
 use Magento\CatalogRule\Test\Page\Adminhtml\CatalogRuleNew;
-use Mtf\TestStep\TestStepInterface;
+use Magento\Mtf\TestStep\TestStepInterface;
 
 /**
  * Class DeleteAllCatalogRulesStep
diff --git a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Block/Advanced/Form.php b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Block/Advanced/Form.php
index e632e6c1e0856aa0329c75df7bf36000f76b60d9..c98608a606314a018beb1b4baeb7c173dfd4e5d1 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Block/Advanced/Form.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Block/Advanced/Form.php
@@ -6,10 +6,11 @@
 
 namespace Magento\CatalogSearch\Test\Block\Advanced;
 
-use Mtf\Block\Form as ParentForm;
-use Mtf\Client\Element;
-use Mtf\Client\Element\Locator;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Block\Form as ParentForm;
+use Magento\Mtf\Client\Element;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Client\Element\SimpleElement;
 
 /**
  * Advanced search form.
@@ -58,10 +59,10 @@ class Form extends ParentForm
      * Fill the root form.
      *
      * @param FixtureInterface $fixture
-     * @param Element|null $element
+     * @param SimpleElement|null $element
      * @return $this
      */
-    public function fill(FixtureInterface $fixture, Element $element = null)
+    public function fill(FixtureInterface $fixture, SimpleElement $element = null)
     {
         // Prepare price data
         $data = $fixture->getData();
@@ -83,9 +84,9 @@ class Form extends ParentForm
      *
      * @param FixtureInterface $fixture
      * @param array $fields
-     * @param Element $element
+     * @param SimpleElement $element
      */
-    public function fillCustom(FixtureInterface $fixture, array $fields, Element $element = null)
+    public function fillCustom(FixtureInterface $fixture, array $fields, SimpleElement $element = null)
     {
         $data = $fixture->getData('fields');
         $dataForMapping = array_intersect_key($data, array_flip($fields));
@@ -101,7 +102,7 @@ class Form extends ParentForm
     public function getFormLabels()
     {
         $labels = [];
-        $elements = $this->_rootElement->find($this->fieldSelector, Locator::SELECTOR_XPATH)->getElements();
+        $elements = $this->_rootElement->getElements($this->fieldSelector, Locator::SELECTOR_XPATH);
         foreach ($elements as $element) {
             $labels[] = $element->find($this->labelSelector)->getText();
         }
diff --git a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Block/Advanced/Result.php b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Block/Advanced/Result.php
index ad9cbccc73aa182db94f93928636792ab8449e59..f62cc2ddfb1801dd39fa2b704fcb65574db6f4c1 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Block/Advanced/Result.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Block/Advanced/Result.php
@@ -6,8 +6,8 @@
 
 namespace Magento\CatalogSearch\Test\Block\Advanced;
 
-use Mtf\Block\Block;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class Result
diff --git a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertAdvancedSearchProductsResult.php b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertAdvancedSearchProductsResult.php
index 93246a5256eb577ed31f046305993fb5c0ccd9e0..3eb7492a8f74683ea7146473d2aeab0fc1892cc3 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertAdvancedSearchProductsResult.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertAdvancedSearchProductsResult.php
@@ -8,7 +8,7 @@ namespace Magento\CatalogSearch\Test\Constraint;
 
 use Magento\Catalog\Test\Fixture\CatalogProductSimple;
 use Magento\CatalogSearch\Test\Page\AdvancedResult;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertAdvancedSearchProductsResult
diff --git a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertCatalogSearchResult.php b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertCatalogSearchResult.php
index df52f62ce4f5d9f34597e12d7d40b86e825d06c9..410a7134bae6ef66ba0a2e60acb2b7ae677e6aa0 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertCatalogSearchResult.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertCatalogSearchResult.php
@@ -8,7 +8,7 @@ namespace Magento\CatalogSearch\Test\Constraint;
 
 use Magento\CatalogSearch\Test\Fixture\CatalogSearchQuery;
 use Magento\CatalogSearch\Test\Page\AdvancedResult;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Assert search results.
diff --git a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertProductCanBeOpenedFromSearchResult.php b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertProductCanBeOpenedFromSearchResult.php
index 444b6ffba31091fd53eeb736ce08b61936faec29..337398e208c1697da9ec5a19a631c7b1f82c8cce 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertProductCanBeOpenedFromSearchResult.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertProductCanBeOpenedFromSearchResult.php
@@ -6,7 +6,7 @@
 
 namespace Magento\CatalogSearch\Test\Constraint;
 
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 use Magento\CatalogSearch\Test\Page\AdvancedResult;
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
 use Magento\CatalogSearch\Test\Fixture\CatalogSearchQuery;
diff --git a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSearchSynonymMassActionNotOnFrontend.php b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSearchSynonymMassActionNotOnFrontend.php
index 928e62035bc77f2fb08505ab7a198521e89bab2f..1f1eeb86e3d69f3bc2371f42a45658c3c5693c4f 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSearchSynonymMassActionNotOnFrontend.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSearchSynonymMassActionNotOnFrontend.php
@@ -7,8 +7,8 @@
 namespace Magento\CatalogSearch\Test\Constraint;
 
 use Magento\Cms\Test\Page\CmsIndex;
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertSearchSynonymMassActionNotOnFrontend
@@ -25,14 +25,14 @@ class AssertSearchSynonymMassActionNotOnFrontend extends AbstractConstraint
      *
      * @param array $searchTerms
      * @param CmsIndex $cmsIndex
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @param AssertSearchSynonymNotOnFrontend $assertSearchSynonymNotOnFrontend
      * @return void
      */
     public function processAssert(
         array $searchTerms,
         CmsIndex $cmsIndex,
-        Browser $browser,
+        BrowserInterface $browser,
         AssertSearchSynonymNotOnFrontend $assertSearchSynonymNotOnFrontend
     ) {
         foreach ($searchTerms as $term) {
diff --git a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSearchSynonymNotOnFrontend.php b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSearchSynonymNotOnFrontend.php
index b345274b34b46e16a3ea52848f5546b61906f4b8..63d60cf7c53f8f168ccbb2049fec3d0e8c9de2da 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSearchSynonymNotOnFrontend.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSearchSynonymNotOnFrontend.php
@@ -8,8 +8,8 @@ namespace Magento\CatalogSearch\Test\Constraint;
 
 use Magento\CatalogSearch\Test\Fixture\CatalogSearchQuery;
 use Magento\Cms\Test\Page\CmsIndex;
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertSearchSynonymNotOnFrontend
@@ -26,10 +26,10 @@ class AssertSearchSynonymNotOnFrontend extends AbstractConstraint
      *
      * @param CmsIndex $cmsIndex
      * @param CatalogSearchQuery $searchTerm
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @return void
      */
-    public function processAssert(CmsIndex $cmsIndex, Browser $browser, CatalogSearchQuery $searchTerm)
+    public function processAssert(CmsIndex $cmsIndex, BrowserInterface $browser, CatalogSearchQuery $searchTerm)
     {
         $cmsIndex->open()->getSearchBlock()->search($searchTerm->getSynonymFor());
         \PHPUnit_Framework_Assert::assertNotEquals(
diff --git a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSearchTermForm.php b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSearchTermForm.php
index bdde33a21d92dcc7079a18fc5c17b3b6586b60bb..1a9dd4b4b7ea742635fa99b4a3061998970e8783 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSearchTermForm.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSearchTermForm.php
@@ -9,7 +9,7 @@ namespace Magento\CatalogSearch\Test\Constraint;
 use Magento\CatalogSearch\Test\Fixture\CatalogSearchQuery;
 use Magento\CatalogSearch\Test\Page\Adminhtml\CatalogSearchEdit;
 use Magento\CatalogSearch\Test\Page\Adminhtml\CatalogSearchIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertSearchTermForm
diff --git a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSearchTermInGrid.php b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSearchTermInGrid.php
index bb03c1a485b19ff5ae6815436db6ec022e01e94a..9307dfff97a03b7dbd389b841707ae1bc5a367e0 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSearchTermInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSearchTermInGrid.php
@@ -8,7 +8,7 @@ namespace Magento\CatalogSearch\Test\Constraint;
 
 use Magento\CatalogSearch\Test\Fixture\CatalogSearchQuery;
 use Magento\CatalogSearch\Test\Page\Adminhtml\CatalogSearchIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertSearchTermInGrid
diff --git a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSearchTermMassActionNotOnFrontend.php b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSearchTermMassActionNotOnFrontend.php
index e21a404fff85d855dacaa3a947347931ce2e8a8d..9e6fc9299631fce7694178636dd6dba658e27d9b 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSearchTermMassActionNotOnFrontend.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSearchTermMassActionNotOnFrontend.php
@@ -8,8 +8,8 @@ namespace Magento\CatalogSearch\Test\Constraint;
 
 use Magento\CatalogSearch\Test\Fixture\CatalogSearchQuery;
 use Magento\Cms\Test\Page\CmsIndex;
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertSearchTermMassActionNotOnFrontend
@@ -26,14 +26,14 @@ class AssertSearchTermMassActionNotOnFrontend extends AbstractConstraint
      *
      * @param array $searchTerms
      * @param CmsIndex $cmsIndex
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @param AssertSearchTermNotOnFrontend $assertSearchTermNotOnFrontend
      * @return void
      */
     public function processAssert(
         array $searchTerms,
         CmsIndex $cmsIndex,
-        Browser $browser,
+        BrowserInterface $browser,
         AssertSearchTermNotOnFrontend $assertSearchTermNotOnFrontend
     ) {
         foreach ($searchTerms as $term) {
diff --git a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSearchTermMassActionsNotInGrid.php b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSearchTermMassActionsNotInGrid.php
index ba31e19ee048fff234109c732f7eeb0c4c43b544..4480b8795a9c61dd44378d9d0d316bb86dc7e796 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSearchTermMassActionsNotInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSearchTermMassActionsNotInGrid.php
@@ -8,7 +8,7 @@ namespace Magento\CatalogSearch\Test\Constraint;
 
 use Magento\CatalogSearch\Test\Fixture\CatalogSearchQuery;
 use Magento\CatalogSearch\Test\Page\Adminhtml\CatalogSearchIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertSearchTermMassActionsNotInGrid
diff --git a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSearchTermNotInGrid.php b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSearchTermNotInGrid.php
index 986c39c669cfd83fff8038adf0d1de074218dfbc..e1ddef02322fb71986944af0cec68bf125489efc 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSearchTermNotInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSearchTermNotInGrid.php
@@ -8,7 +8,7 @@ namespace Magento\CatalogSearch\Test\Constraint;
 
 use Magento\CatalogSearch\Test\Fixture\CatalogSearchQuery;
 use Magento\CatalogSearch\Test\Page\Adminhtml\CatalogSearchIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertSearchTermNotInGrid
diff --git a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSearchTermNotOnFrontend.php b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSearchTermNotOnFrontend.php
index 5c5fa68b5ffc83dd10001563831e3f7d35dff47d..07016ce22975c193fe65cb4681554255fa395eb3 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSearchTermNotOnFrontend.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSearchTermNotOnFrontend.php
@@ -8,8 +8,8 @@ namespace Magento\CatalogSearch\Test\Constraint;
 
 use Magento\CatalogSearch\Test\Fixture\CatalogSearchQuery;
 use Magento\Cms\Test\Page\CmsIndex;
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertSearchTermNotOnFrontend
@@ -26,10 +26,10 @@ class AssertSearchTermNotOnFrontend extends AbstractConstraint
      *
      * @param CmsIndex $cmsIndex
      * @param CatalogSearchQuery $searchTerm
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @return void
      */
-    public function processAssert(CmsIndex $cmsIndex, Browser $browser, CatalogSearchQuery $searchTerm)
+    public function processAssert(CmsIndex $cmsIndex, BrowserInterface $browser, CatalogSearchQuery $searchTerm)
     {
         $queryText = $searchTerm->getQueryText();
         $cmsIndex->open()->getSearchBlock()->search($queryText);
diff --git a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSearchTermOnFrontend.php b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSearchTermOnFrontend.php
index 04f2f3f35ec29913bc6c83ffbdc043b058cc2fa1..58e1aa3ab135aeb39bc4608bcc5eb170ae9fa129 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSearchTermOnFrontend.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSearchTermOnFrontend.php
@@ -9,8 +9,8 @@ namespace Magento\CatalogSearch\Test\Constraint;
 use Magento\Catalog\Test\Block\Search;
 use Magento\CatalogSearch\Test\Fixture\CatalogSearchQuery;
 use Magento\Cms\Test\Page\CmsIndex;
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertSearchTermOnFrontend
@@ -38,10 +38,10 @@ class AssertSearchTermOnFrontend extends AbstractConstraint
      *
      * @param CmsIndex $cmsIndex
      * @param CatalogSearchQuery $searchTerm
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @return void
      */
-    public function processAssert(CmsIndex $cmsIndex, CatalogSearchQuery $searchTerm, Browser $browser)
+    public function processAssert(CmsIndex $cmsIndex, CatalogSearchQuery $searchTerm, BrowserInterface $browser)
     {
         $errors = [];
         $this->searchBlock = $cmsIndex->open()->getSearchBlock();
diff --git a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSearchTermSuccessDeleteMessage.php b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSearchTermSuccessDeleteMessage.php
index 16ff4f13f1c1a2c5dd56d531221e7171bd14ce42..0177e5d8860f9307eb70b795272d727d3ec36c6b 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSearchTermSuccessDeleteMessage.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSearchTermSuccessDeleteMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\CatalogSearch\Test\Constraint;
 
 use Magento\CatalogSearch\Test\Page\Adminhtml\CatalogSearchIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertSearchTermSuccessDeleteMessage
diff --git a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSearchTermSuccessMassDeleteMessage.php b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSearchTermSuccessMassDeleteMessage.php
index c71093f642e4a4cb0d6b7e9819977f4f8caf7762..f05a61e2d0fa8ed9c104d56dc257bc1d9d33c6b5 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSearchTermSuccessMassDeleteMessage.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSearchTermSuccessMassDeleteMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\CatalogSearch\Test\Constraint;
 
 use Magento\CatalogSearch\Test\Page\Adminhtml\CatalogSearchIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertSearchTermSuccessMassDeleteMessage
diff --git a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSearchTermSuccessSaveMessage.php b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSearchTermSuccessSaveMessage.php
index 8eb589cc1332f412ee257f51a6da1bf80648dd7e..96d9df392e9537c40e7696f7e4b6434c8a863f1d 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSearchTermSuccessSaveMessage.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSearchTermSuccessSaveMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\CatalogSearch\Test\Constraint;
 
 use Magento\CatalogSearch\Test\Page\Adminhtml\CatalogSearchIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertSearchTermSuccessSaveMessage
diff --git a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSearchTermSynonymOnFrontend.php b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSearchTermSynonymOnFrontend.php
index cb1cc34b772220ed14432cfca639530b835131ed..01379f373a4c3029c7807e72e29d6401039eff30 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSearchTermSynonymOnFrontend.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSearchTermSynonymOnFrontend.php
@@ -8,8 +8,8 @@ namespace Magento\CatalogSearch\Test\Constraint;
 
 use Magento\CatalogSearch\Test\Fixture\CatalogSearchQuery;
 use Magento\Cms\Test\Page\CmsIndex;
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertSearchTermSynonymOnFrontend
@@ -25,11 +25,11 @@ class AssertSearchTermSynonymOnFrontend extends AbstractConstraint
      * Assert that you will be redirected to url from dataset
      *
      * @param CmsIndex $cmsIndex
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @param CatalogSearchQuery $searchTerm
      * @return void
      */
-    public function processAssert(CmsIndex $cmsIndex, Browser $browser, CatalogSearchQuery $searchTerm)
+    public function processAssert(CmsIndex $cmsIndex, BrowserInterface $browser, CatalogSearchQuery $searchTerm)
     {
         $cmsIndex->open()->getSearchBlock()->search($searchTerm->getSynonymFor());
         $windowUrl = $browser->getUrl();
diff --git a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSuggestSearchingResult.php b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSuggestSearchingResult.php
index ff6bc79e1a8bc475046c5f5677b432a45ce20da0..388806e1f3a8e18d55da75712f113d5e50154b30 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSuggestSearchingResult.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Constraint/AssertSuggestSearchingResult.php
@@ -8,7 +8,7 @@ namespace Magento\CatalogSearch\Test\Constraint;
 
 use Magento\CatalogSearch\Test\Fixture\CatalogSearchQuery;
 use Magento\Cms\Test\Page\CmsIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertSuggestSearchingResult
diff --git a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Fixture/CatalogSearchQuery.php b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Fixture/CatalogSearchQuery.php
index ce372d1c8ad58440887924b4d6cf8b335196f2b1..82858efa74fbeb2dd6c27328ec38e482de457c75 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Fixture/CatalogSearchQuery.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Fixture/CatalogSearchQuery.php
@@ -6,7 +6,7 @@
 
 namespace Magento\CatalogSearch\Test\Fixture;
 
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Class CatalogSearchQuery
diff --git a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Fixture/CatalogSearchQuery/QueryText.php b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Fixture/CatalogSearchQuery/QueryText.php
index 172d79054d9b981d252f6752c9d5eeed7b894d8b..b2bf945cc675cb44e701f778786c6743b1757306 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Fixture/CatalogSearchQuery/QueryText.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Fixture/CatalogSearchQuery/QueryText.php
@@ -6,9 +6,9 @@
 
 namespace Magento\CatalogSearch\Test\Fixture\CatalogSearchQuery;
 
-use Mtf\Fixture\FixtureFactory;
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Data to search for.
diff --git a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Handler/CatalogSearchQuery/CatalogSearchQueryInterface.php b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Handler/CatalogSearchQuery/CatalogSearchQueryInterface.php
index 431ad8860dd8b03192ed00d5f4f099e403948a2a..cc6f02816f129edf45d7b02546bbffccbeb11ef1 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Handler/CatalogSearchQuery/CatalogSearchQueryInterface.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Handler/CatalogSearchQuery/CatalogSearchQueryInterface.php
@@ -6,7 +6,7 @@
 
 namespace Magento\CatalogSearch\Test\Handler\CatalogSearchQuery;
 
-use Mtf\Handler\HandlerInterface;
+use Magento\Mtf\Handler\HandlerInterface;
 
 /**
  * Interface CatalogSearchQueryInterface
diff --git a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Handler/CatalogSearchQuery/Curl.php b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Handler/CatalogSearchQuery/Curl.php
index ac1f7447596479e2d1cd55c870709ab972c45ddf..d570d3653db7c94a61c94010c2e409e543e1e792 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Handler/CatalogSearchQuery/Curl.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Handler/CatalogSearchQuery/Curl.php
@@ -6,12 +6,12 @@
 
 namespace Magento\CatalogSearch\Test\Handler\CatalogSearchQuery;
 
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Handler\Curl as AbstractCurl;
-use Mtf\System\Config;
-use Mtf\Util\Protocol\CurlInterface;
-use Mtf\Util\Protocol\CurlTransport;
-use Mtf\Util\Protocol\CurlTransport\BackendDecorator;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Handler\Curl as AbstractCurl;
+use Magento\Mtf\System\Config;
+use Magento\Mtf\Util\Protocol\CurlInterface;
+use Magento\Mtf\Util\Protocol\CurlTransport;
+use Magento\Mtf\Util\Protocol\CurlTransport\BackendDecorator;
 
 /**
  * Create new search term via curl.
diff --git a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Repository/CatalogSearchQuery.php b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Repository/CatalogSearchQuery.php
index 789e3312ad1972cb2c613a7681fa47cb30acb664..60eea1265c76ac2463eaf411294dde8c149900d4 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Repository/CatalogSearchQuery.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/Repository/CatalogSearchQuery.php
@@ -6,7 +6,7 @@
 
 namespace Magento\CatalogSearch\Test\Repository;
 
-use Mtf\Repository\AbstractRepository;
+use Magento\Mtf\Repository\AbstractRepository;
 
 /**
  * Class CatalogSearchQuery
diff --git a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/TestCase/AdvancedSearchEntityTest.php b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/TestCase/AdvancedSearchEntityTest.php
index 494f3a338f068818bac06918e985733331c20871..2bd73f161a8028441ef459a631e1bfa211d9df97 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/TestCase/AdvancedSearchEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/TestCase/AdvancedSearchEntityTest.php
@@ -9,8 +9,8 @@ namespace Magento\CatalogSearch\Test\TestCase;
 use Magento\Catalog\Test\Fixture\CatalogProductSimple;
 use Magento\CatalogSearch\Test\Page\AdvancedSearch;
 use Magento\Cms\Test\Page\CmsIndex;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Preconditions:
@@ -28,6 +28,12 @@ use Mtf\TestCase\Injectable;
  */
 class AdvancedSearchEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'MX';
+    const TEST_TYPE = 'acceptance_test';
+    /* end tags */
+
     /**
      * Prepare data.
      *
diff --git a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/TestCase/AdvancedSearchEntityTest/test.csv b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/TestCase/AdvancedSearchEntityTest/test.csv
index 76eb2b4ead571fac5a047371e29598bc85b9240e..8a814121950bd4a0d18b864291443a02e42bc396 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/TestCase/AdvancedSearchEntityTest/test.csv
+++ b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/TestCase/AdvancedSearchEntityTest/test.csv
@@ -1,5 +1,5 @@
 "description";"products/simple_1";"products/simple_2";"productSearch/data/name";"productSearch/data/sku";"productSearch/data/description";"productSearch/data/short_description";"productSearch/data/price/value/price_from";"productSearch/data/price/value/price_to";"constraint";"tag"
-"MAGETWO-12421: Use Advanced Search to Find the Product";"Yes";"-";"abc_dfj";"abc_dfj";"-";"-";"-";"-";"assertAdvancedSearchProductsResult";"bamboo_plan:end_to_end"
+"MAGETWO-12421: Use Advanced Search to Find the Product";"Yes";"-";"abc_dfj";"abc_dfj";"-";"-";"-";"-";"assertAdvancedSearchProductsResult";"bamboo_plan:end_to_end,test_type:acceptance_test"
 "Search product in advanced search by name";"-";"Yes";"adc_123";"-";"-";"-";"-";"-";"assertAdvancedSearchProductsResult";""
 "Search product in advanced search by partial name";"Yes";"-";"abc";"-";"-";"-";"-";"-";"assertAdvancedSearchProductsResult";""
 "Search product in advanced search by sku";"Yes";"-";"-";"abc_dfj";"-";"-";"-";"-";"assertAdvancedSearchProductsResult";""
diff --git a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/TestCase/CreateSearchTermEntityTest.php b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/TestCase/CreateSearchTermEntityTest.php
index ecf344d5f56fe7102bedbf2acb4f2b47dc37dc11..106070b62ec4e474126a1966f8461f0cd96a80b0 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/TestCase/CreateSearchTermEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/TestCase/CreateSearchTermEntityTest.php
@@ -9,7 +9,7 @@ namespace Magento\CatalogSearch\Test\TestCase;
 use Magento\CatalogSearch\Test\Fixture\CatalogSearchQuery;
 use Magento\CatalogSearch\Test\Page\Adminhtml\CatalogSearchEdit;
 use Magento\CatalogSearch\Test\Page\Adminhtml\CatalogSearchIndex;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for CreateSearchTermEntity
@@ -32,6 +32,11 @@ use Mtf\TestCase\Injectable;
  */
 class CreateSearchTermEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * Search term page
      *
diff --git a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/TestCase/DeleteSearchTermEntityTest.php b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/TestCase/DeleteSearchTermEntityTest.php
index 2180fe20f5725cf555261c89fbeccab9a2fb4360..b8400504d031aeda63c0d132b266d69aa55e7c46 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/TestCase/DeleteSearchTermEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/TestCase/DeleteSearchTermEntityTest.php
@@ -9,7 +9,7 @@ namespace Magento\CatalogSearch\Test\TestCase;
 use Magento\CatalogSearch\Test\Fixture\CatalogSearchQuery;
 use Magento\CatalogSearch\Test\Page\Adminhtml\CatalogSearchEdit;
 use Magento\CatalogSearch\Test\Page\Adminhtml\CatalogSearchIndex;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for DeleteSearchTermEntity
@@ -31,6 +31,11 @@ use Mtf\TestCase\Injectable;
  */
 class DeleteSearchTermEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * Search term page
      *
diff --git a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/TestCase/EditSearchTermEntityTest.php b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/TestCase/EditSearchTermEntityTest.php
index b9294ddfd33e202039d0d87ce2068f6abb341697..a2b143d4786f03bd5e0b64f381c0c01231d5ae3b 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/TestCase/EditSearchTermEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/TestCase/EditSearchTermEntityTest.php
@@ -10,7 +10,7 @@ use Magento\CatalogSearch\Test\Fixture\CatalogSearchQuery;
 use Magento\CatalogSearch\Test\Page\Adminhtml\CatalogSearchEdit;
 use Magento\CatalogSearch\Test\Page\Adminhtml\CatalogSearchIndex;
 use Magento\Cms\Test\Page\CmsIndex;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for EditSearchTermEntity
@@ -35,6 +35,11 @@ use Mtf\TestCase\Injectable;
  */
 class EditSearchTermEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * CMS index page
      *
diff --git a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/TestCase/MassDeleteSearchTermEntityTest.php b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/TestCase/MassDeleteSearchTermEntityTest.php
index 8c9fb85366a3b3332479a321575a1dff8f54f107..4f35edd4150c5e5d8daa234e290eb5318465bf0d 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/TestCase/MassDeleteSearchTermEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/TestCase/MassDeleteSearchTermEntityTest.php
@@ -8,8 +8,8 @@ namespace Magento\CatalogSearch\Test\TestCase;
 
 use Magento\CatalogSearch\Test\Fixture\CatalogSearchQuery;
 use Magento\CatalogSearch\Test\Page\Adminhtml\CatalogSearchIndex;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for MassDeleteSearchTermEntity
@@ -32,6 +32,11 @@ use Mtf\TestCase\Injectable;
  */
 class MassDeleteSearchTermEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * Search term page
      *
diff --git a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/TestCase/SearchEntityResultsTest.php b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/TestCase/SearchEntityResultsTest.php
index 6078c51d460ad5cb3ca7e1d2b58008c239f0f894..30a54eda01b5b919ec9770e6a601c3f4678d3f2f 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/TestCase/SearchEntityResultsTest.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/TestCase/SearchEntityResultsTest.php
@@ -8,7 +8,7 @@ namespace Magento\CatalogSearch\Test\TestCase;
 
 use Magento\CatalogSearch\Test\Fixture\CatalogSearchQuery;
 use Magento\Cms\Test\Page\CmsIndex;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Preconditions:
@@ -24,6 +24,12 @@ use Mtf\TestCase\Injectable;
  */
 class SearchEntityResultsTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'MX';
+    const TEST_TYPE = 'acceptance_test';
+    /* end tags */
+
     /**
      * CMS index page.
      *
diff --git a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/TestCase/SearchEntityResultsTest/test.csv b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/TestCase/SearchEntityResultsTest/test.csv
index f6082080c2e9390765b784f9c8a79b38d93702ec..90b795c9df0fb12a35afc4e480ad6b2624f874fc 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/TestCase/SearchEntityResultsTest/test.csv
+++ b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/TestCase/SearchEntityResultsTest/test.csv
@@ -1,5 +1,5 @@
 "description";"catalogSearch/data/query_text/value";"constraint";"tag"
-"MAGETWO-12420: Use Quick Search to Find the Product";"catalogProductSimple::default::sku";"assertProductCanBeOpenedFromSearchResult";"bamboo_plan:BAT"
+"MAGETWO-12420: Use Quick Search to Find the Product";"catalogProductSimple::default::sku";"assertProductCanBeOpenedFromSearchResult";"bamboo_plan:BAT,test_type:acceptance_test"
 "Search simple product";"catalogProductSimple::default::simple";"assertCatalogSearchResult";""
 "Search virtual product";"catalogProductVirtual::default::virtual";"assertCatalogSearchResult";""
 "Search configurable product";"configurableProductInjectable::default::configurable";"assertCatalogSearchResult";""
diff --git a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/TestCase/SuggestSearchingResultEntityTest.php b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/TestCase/SuggestSearchingResultEntityTest.php
index a86590bfda9463168016662f277f0a20fb07ca5e..d4ce912e61386c4a79a50b99f4c6c64b24510f45 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/TestCase/SuggestSearchingResultEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/TestCase/SuggestSearchingResultEntityTest.php
@@ -8,7 +8,7 @@ namespace Magento\CatalogSearch\Test\TestCase;
 
 use Magento\CatalogSearch\Test\Fixture\CatalogSearchQuery;
 use Magento\Cms\Test\Page\CmsIndex;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Cover Suggest Searching Result (SearchEntity)
@@ -30,6 +30,11 @@ use Mtf\TestCase\Injectable;
  */
 class SuggestSearchingResultEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * Run suggest searching result test
      *
diff --git a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/etc/constraint.xml b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/etc/constraint.xml
index 7a061c80ad16bc44cbc6ec1b7261f4649571dd72..9a215cf30c095aead61ef10a573a6bf52e92f1cb 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/etc/constraint.xml
+++ b/dev/tests/functional/tests/app/Magento/CatalogSearch/Test/etc/constraint.xml
@@ -48,7 +48,7 @@
         <require>
             <searchTerm class="Magento\CatalogSearch\Test\Fixture\CatalogSearchQuery" />
             <cmsIndex class="Magento\Cms\Test\Page\CmsIndex" />
-            <browser class="Mtf\Client\Browser" />
+            <browser class="Magento\Mtf\Client\Browser" />
         </require>
     </assertSearchTermOnFrontend>
     <assertSearchTermSuccessSaveMessage  module="Magento_CatalogSearch">
@@ -62,7 +62,7 @@
         <require>
             <searchTerm class="Magento\CatalogSearch\Test\Fixture\CatalogSearchQuery" />
             <cmsIndex class="Magento\Cms\Test\Page\CmsIndex" />
-            <browser class="Mtf\Client\Browser" />
+            <browser class="Magento\Mtf\Client\Browser" />
         </require>
     </assertSearchTermSynonymOnFrontend>
     <assertSearchTermSuccessDeleteMessage module="Magento_CatalogSearch">
@@ -83,7 +83,7 @@
         <require>
             <searchTerm class="Magento\CatalogSearch\Test\Fixture\CatalogSearchQuery" />
             <cmsIndex class="Magento\Cms\Test\Page\CmsIndex" />
-            <browser class="Mtf\Client\Browser" />
+            <browser class="Magento\Mtf\Client\Browser" />
         </require>
     </assertSearchTermNotOnFrontend>
     <assertSearchSynonymNotOnFrontend module="Magento_CatalogSearch">
@@ -91,7 +91,7 @@
         <require>
             <searchTerm class="Magento\CatalogSearch\Test\Fixture\CatalogSearchQuery" />
             <cmsIndex class="Magento\Cms\Test\Page\CmsIndex" />
-            <browser class="Mtf\Client\Browser" />
+            <browser class="Magento\Mtf\Client\Browser" />
         </require>
     </assertSearchSynonymNotOnFrontend>
     <assertSearchTermSuccessMassDeleteMessage module="Magento_CatalogSearch">
@@ -110,14 +110,14 @@
         <severity>high</severity>
         <require>
             <cmsIndex class="Magento\Cms\Test\Page\CmsIndex" />
-            <browser class="Mtf\Client\Browser" />
+            <browser class="Magento\Mtf\Client\Browser" />
         </require>
     </assertSearchTermMassActionNotOnFrontend>
     <assertSearchSynonymMassActionNotOnFrontend module="Magento_CatalogSearch">
         <severity>high</severity>
         <require>
             <cmsIndex class="Magento\Cms\Test\Page\CmsIndex" />
-            <browser class="Mtf\Client\Browser" />
+            <browser class="Magento\Mtf\Client\Browser" />
         </require>
     </assertSearchSynonymMassActionNotOnFrontend>
     <assertProductCanBeOpenedFromSearchResult module="Magento_CatalogSearch">
diff --git a/dev/tests/functional/tests/app/Magento/Checkout/Test/Block/Cart.php b/dev/tests/functional/tests/app/Magento/Checkout/Test/Block/Cart.php
index 0ab77e4f68f5d1c611e9f319c9e4b85c197c6d76..2802929c1069c518f00fbb12bee0d8715daa0a96 100644
--- a/dev/tests/functional/tests/app/Magento/Checkout/Test/Block/Cart.php
+++ b/dev/tests/functional/tests/app/Magento/Checkout/Test/Block/Cart.php
@@ -9,10 +9,10 @@ namespace Magento\Checkout\Test\Block;
 use Exception;
 use Magento\Checkout\Test\Block\Cart\CartItem;
 use Magento\Checkout\Test\Block\Onepage\Link;
-use Mtf\Block\Block;
-use Mtf\Client\Element\Locator;
-use Mtf\Factory\Factory;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Factory\Factory;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class Cart
diff --git a/dev/tests/functional/tests/app/Magento/Checkout/Test/Block/Cart/AbstractCartItem.php b/dev/tests/functional/tests/app/Magento/Checkout/Test/Block/Cart/AbstractCartItem.php
index 3ed36e6c2a1c71dfbc3bf70394afc71937a2ed75..c2c64fd6903d8b877c8cf18dc0fc922e2970c98f 100644
--- a/dev/tests/functional/tests/app/Magento/Checkout/Test/Block/Cart/AbstractCartItem.php
+++ b/dev/tests/functional/tests/app/Magento/Checkout/Test/Block/Cart/AbstractCartItem.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Checkout\Test\Block\Cart;
 
-use Mtf\Block\Block;
+use Magento\Mtf\Block\Block;
 
 /**
  * Class AbstractCartItem
@@ -26,7 +26,7 @@ class AbstractCartItem extends Block
      *
      * @var string
      */
-    protected $price = './/td[@class="col price"]/*[@class="price-excluding-tax"]/span';
+    protected $price = './/td[@class="col price"]//span[@class="price"]';
 
     /**
      * Selector for unit price including tax
@@ -55,7 +55,7 @@ class AbstractCartItem extends Block
      *
      * @var string
      */
-    protected $subTotalPriceInclTax = '//td[@class="col subtotal"]//*[@class="price-including-tax"]//span[@class="price"]';
+    protected $subTotalPriceInclTax = '//td[@class="col subtotal"]//span[@class="price"]';
     // @codingStandardsIgnoreEnd
 
     /**
diff --git a/dev/tests/functional/tests/app/Magento/Checkout/Test/Block/Cart/CartEmpty.php b/dev/tests/functional/tests/app/Magento/Checkout/Test/Block/Cart/CartEmpty.php
index c3a24adb6cde7d3f02901f156896e20adbb362b4..0df5fe46b9e4afff7d3e4281c3a0c3e150ae512d 100644
--- a/dev/tests/functional/tests/app/Magento/Checkout/Test/Block/Cart/CartEmpty.php
+++ b/dev/tests/functional/tests/app/Magento/Checkout/Test/Block/Cart/CartEmpty.php
@@ -6,8 +6,8 @@
 
 namespace Magento\Checkout\Test\Block\Cart;
 
-use Mtf\Block\Block;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class CartEmpty
diff --git a/dev/tests/functional/tests/app/Magento/Checkout/Test/Block/Cart/CartItem.php b/dev/tests/functional/tests/app/Magento/Checkout/Test/Block/Cart/CartItem.php
index 622542c132b6391dd52e2244577fe310f5cae293..44de73078781de9aefbe259e80523cd9f2d1379c 100755
--- a/dev/tests/functional/tests/app/Magento/Checkout/Test/Block/Cart/CartItem.php
+++ b/dev/tests/functional/tests/app/Magento/Checkout/Test/Block/Cart/CartItem.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Checkout\Test\Block\Cart;
 
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class CartItem
@@ -69,23 +69,27 @@ class CartItem extends AbstractCartItem
     /**
      * Get product price
      *
-     * @return string
+     * @return string|null
      */
     public function getPrice()
     {
-        $cartProductPrice = $this->_rootElement->find($this->price, Locator::SELECTOR_XPATH)->getText();
-        return str_replace(',', '', $this->escapeCurrency($cartProductPrice));
+        $cartProductPrice = $this->_rootElement->find($this->price, Locator::SELECTOR_XPATH);
+        return $cartProductPrice->isVisible()
+            ? str_replace(',', '', $this->escapeCurrency($cartProductPrice->getText()))
+            : null;
     }
 
     /**
      * Get product price including tax
      *
-     * @return string
+     * @return string|null
      */
     public function getPriceInclTax()
     {
-        $cartProductPrice = $this->_rootElement->find($this->priceInclTax, Locator::SELECTOR_XPATH)->getText();
-        return str_replace(',', '', $this->escapeCurrency($cartProductPrice));
+        $cartProductPrice = $this->_rootElement->find($this->priceInclTax, Locator::SELECTOR_XPATH);
+        return $cartProductPrice->isVisible()
+            ? str_replace(',', '', $this->escapeCurrency($cartProductPrice->getText()))
+            : null;
     }
 
     /**
@@ -112,29 +116,33 @@ class CartItem extends AbstractCartItem
     /**
      * Get sub-total for the specified item in the cart
      *
-     * @return string
+     * @return string|null
      */
     public function getSubtotalPrice()
     {
-        $price = $this->_rootElement->find($this->subtotalPrice, Locator::SELECTOR_XPATH)->getText();
-        return str_replace(',', '', $this->escapeCurrency($price));
+        $cartProductPrice = $this->_rootElement->find($this->subtotalPrice, Locator::SELECTOR_XPATH);
+        return $cartProductPrice->isVisible()
+            ? str_replace(',', '', $this->escapeCurrency($cartProductPrice->getText()))
+            : null;
     }
 
     /**
      * Get sub-total including tax for the specified item in the cart
      *
-     * @return string
+     * @return string|null
      */
     public function getSubtotalPriceInclTax()
     {
-        $price = $this->_rootElement->find($this->subTotalPriceInclTax, Locator::SELECTOR_XPATH)->getText();
-        return str_replace(',', '', $this->escapeCurrency($price));
+        $cartProductPrice = $this->_rootElement->find($this->subTotalPriceInclTax, Locator::SELECTOR_XPATH);
+        return $cartProductPrice->isVisible()
+            ? str_replace(',', '', $this->escapeCurrency($cartProductPrice->getText()))
+            : null;
     }
 
     /**
      * Get product options in the cart
      *
-     * @return string
+     * @return array
      */
     public function getOptions()
     {
@@ -142,8 +150,8 @@ class CartItem extends AbstractCartItem
         $options = [];
 
         if ($optionsBlock->isVisible()) {
-            $titles = $optionsBlock->find('./dt', Locator::SELECTOR_XPATH)->getElements();
-            $values = $optionsBlock->find('./dd', Locator::SELECTOR_XPATH)->getElements();
+            $titles = $optionsBlock->getElements('./dt', Locator::SELECTOR_XPATH);
+            $values = $optionsBlock->getElements('./dd', Locator::SELECTOR_XPATH);
 
             foreach ($titles as $key => $title) {
                 $value = $values[$key]->getText();
diff --git a/dev/tests/functional/tests/app/Magento/Checkout/Test/Block/Cart/DiscountCodes.php b/dev/tests/functional/tests/app/Magento/Checkout/Test/Block/Cart/DiscountCodes.php
index a5faa27be3a174eb6da4936622b4ea612ef722ea..58637651153864cfb996da1bf05ce9260c1f73c9 100644
--- a/dev/tests/functional/tests/app/Magento/Checkout/Test/Block/Cart/DiscountCodes.php
+++ b/dev/tests/functional/tests/app/Magento/Checkout/Test/Block/Cart/DiscountCodes.php
@@ -6,8 +6,8 @@
 
 namespace Magento\Checkout\Test\Block\Cart;
 
-use Mtf\Block\Form;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Form;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class DiscountCodes
diff --git a/dev/tests/functional/tests/app/Magento/Checkout/Test/Block/Cart/Shipping.php b/dev/tests/functional/tests/app/Magento/Checkout/Test/Block/Cart/Shipping.php
index 2388dbee076c19f4dacaef84ddba2e6b368edbbf..b6fde4920b1d0c5d27b215117356ad172626e96e 100644
--- a/dev/tests/functional/tests/app/Magento/Checkout/Test/Block/Cart/Shipping.php
+++ b/dev/tests/functional/tests/app/Magento/Checkout/Test/Block/Cart/Shipping.php
@@ -7,8 +7,8 @@
 namespace Magento\Checkout\Test\Block\Cart;
 
 use Magento\Customer\Test\Fixture\AddressInjectable;
-use Mtf\Block\Form;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Form;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class Shipping
@@ -125,6 +125,7 @@ class Shipping extends Form
             }
         );
         $selector = sprintf($this->shippingMethod, $carrier, $method);
+
         return $this->_rootElement->find($selector, Locator::SELECTOR_XPATH)->isVisible();
     }
 }
diff --git a/dev/tests/functional/tests/app/Magento/Checkout/Test/Block/Cart/Sidebar.php b/dev/tests/functional/tests/app/Magento/Checkout/Test/Block/Cart/Sidebar.php
index b7df995b3c9695c921d89246eeb50761fc21f06c..f909e97086b5a2f2bf5dc3a84e15994d526d55d3 100644
--- a/dev/tests/functional/tests/app/Magento/Checkout/Test/Block/Cart/Sidebar.php
+++ b/dev/tests/functional/tests/app/Magento/Checkout/Test/Block/Cart/Sidebar.php
@@ -6,9 +6,9 @@
 namespace Magento\Checkout\Test\Block\Cart;
 
 use Magento\Checkout\Test\Block\Cart\Sidebar\Item;
-use Mtf\Block\Block;
-use Mtf\Client\Element\Locator;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class Sidebar
diff --git a/dev/tests/functional/tests/app/Magento/Checkout/Test/Block/Cart/Sidebar/Item.php b/dev/tests/functional/tests/app/Magento/Checkout/Test/Block/Cart/Sidebar/Item.php
index 43e9110ecda721e861cbc430428b6ed57b20c9cc..7d0966f153598dcdd97c018ecf89f3cf5b0ae4d1 100644
--- a/dev/tests/functional/tests/app/Magento/Checkout/Test/Block/Cart/Sidebar/Item.php
+++ b/dev/tests/functional/tests/app/Magento/Checkout/Test/Block/Cart/Sidebar/Item.php
@@ -36,7 +36,7 @@ class Item extends Sidebar
     public function removeItemFromMiniCart()
     {
         $this->_rootElement->find($this->removeItem)->click();
-        $this->_rootElement->acceptAlert();
+        $this->browser->acceptAlert();
     }
 
     /**
diff --git a/dev/tests/functional/tests/app/Magento/Checkout/Test/Block/Cart/Totals.php b/dev/tests/functional/tests/app/Magento/Checkout/Test/Block/Cart/Totals.php
index 78921b17470923e785d5f2ec898875aa147acacf..fb47e4560253e2ec8d7d1e8e245f6853940b0f4f 100644
--- a/dev/tests/functional/tests/app/Magento/Checkout/Test/Block/Cart/Totals.php
+++ b/dev/tests/functional/tests/app/Magento/Checkout/Test/Block/Cart/Totals.php
@@ -6,8 +6,8 @@
 
 namespace Magento\Checkout\Test\Block\Cart;
 
-use Mtf\Block\Block;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class Totals
@@ -76,7 +76,7 @@ class Totals extends Block
      *
      * @var string
      */
-    protected $discount = '//tr[normalize-space(th)="Discount"]//span';
+    protected $discount = '[class=totals] .amount .price';
 
     /**
      * Get shipping price including tax selector
@@ -95,45 +95,45 @@ class Totals extends Block
     /**
      * Get Grand Total Text
      *
-     * @return array|string
+     * @return string
      */
     public function getGrandTotal()
     {
-        $grandTotal = $this->_rootElement->find($this->grandTotal)->getText();
+        $grandTotal = $this->_rootElement->find($this->grandTotal, Locator::SELECTOR_CSS)->getText();
         return $this->escapeCurrency($grandTotal);
     }
 
     /**
      * Get Grand Total Text
      *
-     * @return string
+     * @return string|null
      */
     public function getGrandTotalIncludingTax()
     {
-        $grandTotal = $this->_rootElement->find($this->grandTotalInclTax, Locator::SELECTOR_CSS)->getText();
-        return $this->escapeCurrency($grandTotal);
+        $priceElement = $this->_rootElement->find($this->grandTotalInclTax, Locator::SELECTOR_CSS);
+        return $priceElement->isVisible() ? $this->escapeCurrency($priceElement->getText()) : null;
     }
 
     /**
      * Get Grand Total Text
      *
-     * @return string
+     * @return string|null
      */
     public function getGrandTotalExcludingTax()
     {
-        $grandTotal = $this->_rootElement->find($this->grandTotalExclTax, Locator::SELECTOR_CSS)->getText();
-        return $this->escapeCurrency($grandTotal);
+        $priceElement = $this->_rootElement->find($this->grandTotalExclTax, Locator::SELECTOR_CSS);
+        return $priceElement->isVisible() ? $this->escapeCurrency($priceElement->getText()) : null;
     }
 
     /**
      * Get Tax text from Order Totals
      *
-     * @return array|string
+     * @return string|null
      */
     public function getTax()
     {
-        $taxPrice = $this->_rootElement->find($this->tax, Locator::SELECTOR_CSS)->getText();
-        return $this->escapeCurrency($taxPrice);
+        $priceElement = $this->_rootElement->find($this->tax, Locator::SELECTOR_CSS);
+        return $priceElement->isVisible() ? $this->escapeCurrency($priceElement->getText()) : null;
     }
 
     /**
@@ -153,37 +153,37 @@ class Totals extends Block
      */
     public function getSubtotal()
     {
-        $subTotal = $this->_rootElement->find($this->subtotal)->getText();
+        $subTotal = $this->_rootElement->find($this->subtotal, Locator::SELECTOR_CSS)->getText();
         return $this->escapeCurrency($subTotal);
     }
 
     /**
      * Get Subtotal text
      *
-     * @return string
+     * @return string|null
      */
     public function getSubtotalIncludingTax()
     {
-        $subTotal = $this->_rootElement->find($this->subtotalInclTax, Locator::SELECTOR_CSS)->getText();
-        return $this->escapeCurrency($subTotal);
+        $priceElement = $this->_rootElement->find($this->subtotalInclTax, Locator::SELECTOR_CSS);
+        return $priceElement->isVisible() ? $this->escapeCurrency($priceElement->getText()) : null;
     }
 
     /**
      * Get Subtotal text
      *
-     * @return string
+     * @return string|null
      */
     public function getSubtotalExcludingTax()
     {
-        $subTotal = $this->_rootElement->find($this->subtotalExclTax, Locator::SELECTOR_CSS)->getText();
-        return $this->escapeCurrency($subTotal);
+        $priceElement = $this->_rootElement->find($this->subtotalExclTax, Locator::SELECTOR_CSS);
+        return $priceElement->isVisible() ? $this->escapeCurrency($priceElement->getText()) : null;
     }
 
     /**
      * Method that escapes currency symbols
      *
      * @param string $price
-     * @return string
+     * @return string|null
      */
     protected function escapeCurrency($price)
     {
@@ -194,35 +194,34 @@ class Totals extends Block
     /**
      * Get discount
      *
-     * @return string
+     * @return string|null
      */
     public function getDiscount()
     {
-        $discount = $this->_rootElement->find($this->discount, Locator::SELECTOR_XPATH)->getText();
-        return $this->escapeCurrency($discount);
+        $priceElement = $this->_rootElement->find($this->discount, Locator::SELECTOR_CSS);
+        return $priceElement->isVisible() ? $this->escapeCurrency($priceElement->getText()) : null;
     }
 
     /**
      * Get shipping price
      *
-     * @return string
+     * @return string|null
      */
     public function getShippingPrice()
     {
-        $shippingPrice = $this->_rootElement->find($this->shippingPriceSelector, Locator::SELECTOR_CSS)->getText();
-        return $this->escapeCurrency($shippingPrice);
+        $priceElement = $this->_rootElement->find($this->shippingPriceSelector, Locator::SELECTOR_CSS);
+        return $priceElement->isVisible() ? $this->escapeCurrency($priceElement->getText()) : null;
     }
 
     /**
      * Get shipping price
      *
-     * @return string
+     * @return string|null
      */
     public function getShippingPriceInclTax()
     {
-        $shippingPrice = $this->_rootElement
-            ->find($this->shippingPriceInclTaxSelector, Locator::SELECTOR_CSS)->getText();
-        return $this->escapeCurrency($shippingPrice);
+        $priceElement = $this->_rootElement->find($this->shippingPriceInclTaxSelector, Locator::SELECTOR_CSS);
+        return $priceElement->isVisible() ? $this->escapeCurrency($priceElement->getText()) : null;
     }
 
     /**
diff --git a/dev/tests/functional/tests/app/Magento/Checkout/Test/Block/Onepage/Link.php b/dev/tests/functional/tests/app/Magento/Checkout/Test/Block/Onepage/Link.php
index db25444ba3b5ce8e7d8efa201b9c3c77d4d7a4ea..cd1310aa639968bfc0f5dd54977c37a947c7d39d 100644
--- a/dev/tests/functional/tests/app/Magento/Checkout/Test/Block/Onepage/Link.php
+++ b/dev/tests/functional/tests/app/Magento/Checkout/Test/Block/Onepage/Link.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Checkout\Test\Block\Onepage;
 
-use Mtf\Block\Block;
+use Magento\Mtf\Block\Block;
 
 /**
  * Class Link
diff --git a/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertAddedProductToCartSuccessMessage.php b/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertAddedProductToCartSuccessMessage.php
index fcfbe4fa3cfdf7758da3a16a8fe49aa697098e40..e45449de86fd3d5db18d779ead7d58574b36abaa 100644
--- a/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertAddedProductToCartSuccessMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertAddedProductToCartSuccessMessage.php
@@ -7,8 +7,8 @@
 namespace Magento\Checkout\Test\Constraint;
 
 use Magento\Checkout\Test\Page\CheckoutCart;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class AssertAddedProductToCartSuccessMessage
diff --git a/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertCartIsEmpty.php b/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertCartIsEmpty.php
index 5e9008fe85be9df695e842969b5129b2f5e0caab..884ade85b09646eb0fffead05613f3f585ab741c 100644
--- a/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertCartIsEmpty.php
+++ b/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertCartIsEmpty.php
@@ -8,8 +8,8 @@ namespace Magento\Checkout\Test\Constraint;
 
 use Magento\Checkout\Test\Fixture\Cart;
 use Magento\Checkout\Test\Page\CheckoutCart;
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertCartIsEmpty
@@ -31,10 +31,10 @@ class AssertCartIsEmpty extends AbstractConstraint
      * Click here to continue shopping." where 'here' is link that leads to index page
      *
      * @param CheckoutCart $checkoutCart
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @return void
      */
-    public function processAssert(CheckoutCart $checkoutCart, Browser $browser)
+    public function processAssert(CheckoutCart $checkoutCart, BrowserInterface $browser)
     {
         $checkoutCart->open();
         $cartEmptyBlock = $checkoutCart->getCartEmptyBlock();
diff --git a/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertCartItemsOptions.php b/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertCartItemsOptions.php
index 1daf7be9ffe79edd7585022eec2624d428addc3a..c2dc2534f436b3f8bc252f0cc1840fd3229a742b 100644
--- a/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertCartItemsOptions.php
+++ b/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertCartItemsOptions.php
@@ -10,8 +10,8 @@ use Magento\Catalog\Test\Fixture\CatalogProductSimple;
 use Magento\Checkout\Test\Fixture\Cart;
 use Magento\Checkout\Test\Fixture\Cart\Items;
 use Magento\Checkout\Test\Page\CheckoutCart;
-use Mtf\Constraint\AbstractAssertForm;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Constraint\AbstractAssertForm;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Assert that cart item options for product(s) display with correct information block.
diff --git a/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertGrandTotalInShoppingCart.php b/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertGrandTotalInShoppingCart.php
index cc6b3b6d8c0c986cab60b714c56db5c3c1cb603c..ae6092c120fba3391d9cba2473d5add9e3c8d632 100644
--- a/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertGrandTotalInShoppingCart.php
+++ b/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertGrandTotalInShoppingCart.php
@@ -8,7 +8,7 @@ namespace Magento\Checkout\Test\Constraint;
 
 use Magento\Checkout\Test\Fixture\Cart;
 use Magento\Checkout\Test\Page\CheckoutCart;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertGrandTotalInShoppingCart
diff --git a/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertOrderSuccessPlacedMessage.php b/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertOrderSuccessPlacedMessage.php
index cb4befc85d13c11d21012f6aa55ee743ae6605a9..752aaf9c871abeb1850d3a18c9d9a6a8130bf4e9 100644
--- a/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertOrderSuccessPlacedMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertOrderSuccessPlacedMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Checkout\Test\Constraint;
 
 use Magento\Checkout\Test\Page\CheckoutOnepageSuccess;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertOrderSuccessPlacedMessage
diff --git a/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertOrderTotalOnReviewPage.php b/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertOrderTotalOnReviewPage.php
index 5639da766adf1b41e8d0aa72d6b96085972657f4..aefa6c7410fc279379592157ba91c170649fca72 100644
--- a/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertOrderTotalOnReviewPage.php
+++ b/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertOrderTotalOnReviewPage.php
@@ -7,7 +7,7 @@
 namespace Magento\Checkout\Test\Constraint;
 
 use Magento\Checkout\Test\Page\CheckoutOnepage;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertOrderTotalOnReviewPage
diff --git a/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertPriceInShoppingCart.php b/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertPriceInShoppingCart.php
index b010de8e5dc8d2862a8d8e886590dd3adde43c89..3e45f83a879685dad3eda958b1a9c8dd3010cd0b 100755
--- a/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertPriceInShoppingCart.php
+++ b/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertPriceInShoppingCart.php
@@ -10,8 +10,8 @@ use Magento\Catalog\Test\Fixture\CatalogProductSimple;
 use Magento\Checkout\Test\Fixture\Cart;
 use Magento\Checkout\Test\Fixture\Cart\Items;
 use Magento\Checkout\Test\Page\CheckoutCart;
-use Mtf\Constraint\AbstractAssertForm;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Constraint\AbstractAssertForm;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class AssertPriceInShoppingCart
diff --git a/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertProductAbsentInMiniShoppingCart.php b/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertProductAbsentInMiniShoppingCart.php
index 64ee8bb3a267f199d15f0dc7c0f767df5679ea47..db61bb670866a1632beeebbb3f6ce2505a76a625 100644
--- a/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertProductAbsentInMiniShoppingCart.php
+++ b/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertProductAbsentInMiniShoppingCart.php
@@ -7,8 +7,8 @@
 namespace Magento\Checkout\Test\Constraint;
 
 use Magento\Cms\Test\Page\CmsIndex;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class AssertProductAbsentInMiniShoppingCart
diff --git a/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertProductIsNotEditable.php b/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertProductIsNotEditable.php
index cfce160ea5990d871cbcea2651100d36a15a00fd..b371ec3fc3a4a0dc4703f54a92a2fe3161693d51 100644
--- a/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertProductIsNotEditable.php
+++ b/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertProductIsNotEditable.php
@@ -7,7 +7,7 @@
 namespace Magento\Checkout\Test\Constraint;
 
 use Magento\Checkout\Test\Page\CheckoutCart;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertProductIsNotEditable
diff --git a/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertProductPresentInMiniShoppingCart.php b/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertProductPresentInMiniShoppingCart.php
index 75c3ce9bf039746043c2ee8e0679fe9d6eeb81e6..4a64e5610c29e1db497e7e862ac8a7eacd57ed4b 100644
--- a/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertProductPresentInMiniShoppingCart.php
+++ b/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertProductPresentInMiniShoppingCart.php
@@ -7,7 +7,7 @@
 namespace Magento\Checkout\Test\Constraint;
 
 use Magento\Cms\Test\Page\CmsIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertProductPresentInMiniShoppingCart
diff --git a/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertProductPresentInShoppingCart.php b/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertProductPresentInShoppingCart.php
index 1fd9499bdba0678799de0604293fc60d808d54f0..f01fb902ebdfa31c09a975b1959feef186f62d3a 100644
--- a/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertProductPresentInShoppingCart.php
+++ b/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertProductPresentInShoppingCart.php
@@ -7,7 +7,7 @@
 namespace Magento\Checkout\Test\Constraint;
 
 use Magento\Checkout\Test\Page\CheckoutCart;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertProductPresentInShoppingCart
diff --git a/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertProductQtyInMiniShoppingCart.php b/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertProductQtyInMiniShoppingCart.php
index 23e4a1662f856f432ab299a4ea7089f41cb665ae..8a0dd741d1859c01524b596356c7c5f2f7e02df4 100644
--- a/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertProductQtyInMiniShoppingCart.php
+++ b/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertProductQtyInMiniShoppingCart.php
@@ -10,8 +10,8 @@ use Magento\Catalog\Test\Fixture\CatalogProductSimple;
 use Magento\Checkout\Test\Fixture\Cart;
 use Magento\Checkout\Test\Fixture\Cart\Items;
 use Magento\Cms\Test\Page\CmsIndex;
-use Mtf\Constraint\AbstractAssertForm;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Constraint\AbstractAssertForm;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class AssertProductQtyInMiniShoppingCart
diff --git a/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertProductQtyInShoppingCart.php b/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertProductQtyInShoppingCart.php
index c104a7172dafe11e7d5d7e53a4225fa6422feb9c..b8c353c3f316f418bf40f6ade30b60130b4b6cc3 100755
--- a/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertProductQtyInShoppingCart.php
+++ b/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertProductQtyInShoppingCart.php
@@ -10,8 +10,8 @@ use Magento\Catalog\Test\Fixture\CatalogProductSimple;
 use Magento\Checkout\Test\Fixture\Cart;
 use Magento\Checkout\Test\Fixture\Cart\Items;
 use Magento\Checkout\Test\Page\CheckoutCart;
-use Mtf\Constraint\AbstractAssertForm;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Constraint\AbstractAssertForm;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class AssertProductQtyInShoppingCart
diff --git a/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertProductsAbsentInShoppingCart.php b/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertProductsAbsentInShoppingCart.php
index 1486d72d50c903a071297719549d49e290455617..515b7433ede70aec87a9c0ddb6003aaadd09f54c 100644
--- a/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertProductsAbsentInShoppingCart.php
+++ b/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertProductsAbsentInShoppingCart.php
@@ -7,7 +7,7 @@
 namespace Magento\Checkout\Test\Constraint;
 
 use Magento\Checkout\Test\Page\CheckoutCart;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Assert that products are absent in shopping cart.
diff --git a/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertSubtotalInShoppingCart.php b/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertSubtotalInShoppingCart.php
index 81d8c95bef265a443a0394c244eef4f6a4e878da..770595ed2bd3bac943902bbbdc15075301a0eace 100755
--- a/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertSubtotalInShoppingCart.php
+++ b/dev/tests/functional/tests/app/Magento/Checkout/Test/Constraint/AssertSubtotalInShoppingCart.php
@@ -10,8 +10,8 @@ use Magento\Catalog\Test\Fixture\CatalogProductSimple;
 use Magento\Checkout\Test\Fixture\Cart;
 use Magento\Checkout\Test\Fixture\Cart\Items;
 use Magento\Checkout\Test\Page\CheckoutCart;
-use Mtf\Constraint\AbstractAssertForm;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Constraint\AbstractAssertForm;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class AssertSubtotalInShoppingCart
diff --git a/dev/tests/functional/tests/app/Magento/Checkout/Test/Fixture/Cart.php b/dev/tests/functional/tests/app/Magento/Checkout/Test/Fixture/Cart.php
index 4a2db34cc9c1301044ce55c8c095e1d901b28d32..aab39fa9e4e6d47ddb5c91854a98be4d97e590b5 100644
--- a/dev/tests/functional/tests/app/Magento/Checkout/Test/Fixture/Cart.php
+++ b/dev/tests/functional/tests/app/Magento/Checkout/Test/Fixture/Cart.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Checkout\Test\Fixture;
 
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Class Cart
diff --git a/dev/tests/functional/tests/app/Magento/Checkout/Test/Fixture/Cart.xml b/dev/tests/functional/tests/app/Magento/Checkout/Test/Fixture/Cart.xml
index 9649854deef359a75063e20d9baafc30057e9a18..140e99c6b1b5441a4f2dba7da92173b4f960e8a5 100644
--- a/dev/tests/functional/tests/app/Magento/Checkout/Test/Fixture/Cart.xml
+++ b/dev/tests/functional/tests/app/Magento/Checkout/Test/Fixture/Cart.xml
@@ -8,7 +8,7 @@
 <fixture class="Magento\Checkout\Test\Fixture\Cart">
     <module>Magento_Checkout</module>
     <type>flat</type>
-    <entity_type>sales_quote</entity_type>
+    <entity_type>quote</entity_type>
     <collection>Magento\Checkout\Model\Resource\Cart</collection>
     <fields>
         <entity_id>
diff --git a/dev/tests/functional/tests/app/Magento/Checkout/Test/Fixture/Cart/Items.php b/dev/tests/functional/tests/app/Magento/Checkout/Test/Fixture/Cart/Items.php
index de23b4c2811bdc8f8d1605e0a97eca67c5bf1881..6ca6c12cc218cfbbb0d6a65ecef8e99c40b8dfd2 100644
--- a/dev/tests/functional/tests/app/Magento/Checkout/Test/Fixture/Cart/Items.php
+++ b/dev/tests/functional/tests/app/Magento/Checkout/Test/Fixture/Cart/Items.php
@@ -6,8 +6,8 @@
 
 namespace Magento\Checkout\Test\Fixture\Cart;
 
-use Mtf\Fixture\FixtureInterface;
-use Mtf\ObjectManager;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\ObjectManager;
 
 /**
  * Class Item
diff --git a/dev/tests/functional/tests/app/Magento/Checkout/Test/TestCase/AddProductsToShoppingCartEntityTest.php b/dev/tests/functional/tests/app/Magento/Checkout/Test/TestCase/AddProductsToShoppingCartEntityTest.php
index 37ccbf1815872c5ebfa1a780d24b2f454c60d028..8bfa4789d0ef329d869850606da31d13e302bb09 100644
--- a/dev/tests/functional/tests/app/Magento/Checkout/Test/TestCase/AddProductsToShoppingCartEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Checkout/Test/TestCase/AddProductsToShoppingCartEntityTest.php
@@ -8,10 +8,10 @@ namespace Magento\Checkout\Test\TestCase;
 
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
 use Magento\Checkout\Test\Page\CheckoutCart;
-use Mtf\Client\Browser;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\ObjectManager;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\ObjectManager;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for AddProductsToShoppingCartEntity
@@ -32,10 +32,15 @@ use Mtf\TestCase\Injectable;
  */
 class AddProductsToShoppingCartEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'CS';
+    /* end tags */
+
     /**
      * Browser interface
      *
-     * @var Browser
+     * @var BrowserInterface
      */
     protected $browser;
 
@@ -63,14 +68,14 @@ class AddProductsToShoppingCartEntityTest extends Injectable
     /**
      * Prepare test data
      *
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @param FixtureFactory $fixtureFactory
      * @param CatalogProductView $catalogProductView
      * @param CheckoutCart $cartPage
      * @return void
      */
     public function __prepare(
-        Browser $browser,
+        BrowserInterface $browser,
         FixtureFactory $fixtureFactory,
         CatalogProductView $catalogProductView,
         CheckoutCart $cartPage
diff --git a/dev/tests/functional/tests/app/Magento/Checkout/Test/TestCase/DeleteProductFromMiniShoppingCartTest.php b/dev/tests/functional/tests/app/Magento/Checkout/Test/TestCase/DeleteProductFromMiniShoppingCartTest.php
index 11ff4fdf26f993007f4cc845db15e13f6a5c769c..b3ae8fdbd934efe933c2ad70b9c945d2da272c02 100644
--- a/dev/tests/functional/tests/app/Magento/Checkout/Test/TestCase/DeleteProductFromMiniShoppingCartTest.php
+++ b/dev/tests/functional/tests/app/Magento/Checkout/Test/TestCase/DeleteProductFromMiniShoppingCartTest.php
@@ -8,10 +8,10 @@ namespace Magento\Checkout\Test\TestCase;
 
 use Magento\Checkout\Test\Page\CheckoutCart;
 use Magento\Cms\Test\Page\CmsIndex;
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Fixture\InjectableFixture;
-use Mtf\ObjectManager;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\ObjectManager;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Class DeleteProductFromMiniShoppingCartTest
@@ -33,6 +33,11 @@ use Mtf\TestCase\Injectable;
  */
 class DeleteProductFromMiniShoppingCartTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'CS';
+    /* end tags */
+
     /**
      * Cms index page
      *
diff --git a/dev/tests/functional/tests/app/Magento/Checkout/Test/TestCase/DeleteProductsFromShoppingCartTest.php b/dev/tests/functional/tests/app/Magento/Checkout/Test/TestCase/DeleteProductsFromShoppingCartTest.php
index 8dea8ca69561f5b6fb2c9bf34ae1129e3a605617..87b1cd5997332bd938d6a5bd7fe4c7a95863fb6d 100644
--- a/dev/tests/functional/tests/app/Magento/Checkout/Test/TestCase/DeleteProductsFromShoppingCartTest.php
+++ b/dev/tests/functional/tests/app/Magento/Checkout/Test/TestCase/DeleteProductsFromShoppingCartTest.php
@@ -8,11 +8,11 @@ namespace Magento\Checkout\Test\TestCase;
 
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
 use Magento\Checkout\Test\Page\CheckoutCart;
-use Mtf\Client\Browser;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\Fixture\InjectableFixture;
-use Mtf\ObjectManager;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\ObjectManager;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Class DeleteProductsFromShoppingCartTest
@@ -31,10 +31,15 @@ use Mtf\TestCase\Injectable;
  */
 class DeleteProductsFromShoppingCartTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'CS';
+    /* end tags */
+
     /**
      * Browser interface
      *
-     * @var Browser
+     * @var BrowserInterface
      */
     protected $browser;
 
@@ -62,14 +67,14 @@ class DeleteProductsFromShoppingCartTest extends Injectable
     /**
      * Prepare test data
      *
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @param FixtureFactory $fixtureFactory
      * @param CatalogProductView $catalogProductView
      * @param CheckoutCart $cartPage
      * @return void
      */
     public function __prepare(
-        Browser $browser,
+        BrowserInterface $browser,
         FixtureFactory $fixtureFactory,
         CatalogProductView $catalogProductView,
         CheckoutCart $cartPage
diff --git a/dev/tests/functional/tests/app/Magento/Checkout/Test/TestCase/UpdateProductFromMiniShoppingCartEntityTest.php b/dev/tests/functional/tests/app/Magento/Checkout/Test/TestCase/UpdateProductFromMiniShoppingCartEntityTest.php
index c0007df16c3081552dab00b91928ae0d1b342718..f5d30d2f9bdc2f376563ee8964537b6758553fb2 100644
--- a/dev/tests/functional/tests/app/Magento/Checkout/Test/TestCase/UpdateProductFromMiniShoppingCartEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Checkout/Test/TestCase/UpdateProductFromMiniShoppingCartEntityTest.php
@@ -8,9 +8,9 @@ namespace Magento\Checkout\Test\TestCase;
 
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
 use Magento\Cms\Test\Page\CmsIndex;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\Fixture\FixtureInterface;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Flow:
@@ -32,6 +32,11 @@ use Mtf\TestCase\Injectable;
  */
 class UpdateProductFromMiniShoppingCartEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'CS';
+    /* end tags */
+
     /**
      * Catalog product view page.
      *
diff --git a/dev/tests/functional/tests/app/Magento/Checkout/Test/TestCase/UpdateShoppingCartTest.php b/dev/tests/functional/tests/app/Magento/Checkout/Test/TestCase/UpdateShoppingCartTest.php
index ddabe228946dfd606e6f88e2b1d63c9068fef4cf..bd3f7381fb4ad87b90eb55fec967c9dccef684ee 100755
--- a/dev/tests/functional/tests/app/Magento/Checkout/Test/TestCase/UpdateShoppingCartTest.php
+++ b/dev/tests/functional/tests/app/Magento/Checkout/Test/TestCase/UpdateShoppingCartTest.php
@@ -10,9 +10,9 @@ use Magento\Catalog\Test\Fixture\CatalogProductSimple;
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
 use Magento\Checkout\Test\Fixture\Cart;
 use Magento\Checkout\Test\Page\CheckoutCart;
-use Mtf\Client\Browser;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for Update ShoppingCart
@@ -34,10 +34,15 @@ use Mtf\TestCase\Injectable;
  */
 class UpdateShoppingCartTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'CS';
+    /* end tags */
+
     /**
      * Browser interface
      *
-     * @var Browser
+     * @var BrowserInterface
      */
     protected $browser;
 
@@ -65,11 +70,11 @@ class UpdateShoppingCartTest extends Injectable
     /**
      * Prepare test data
      *
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @param FixtureFactory $fixtureFactory
      * @return void
      */
-    public function __prepare(Browser $browser, FixtureFactory $fixtureFactory)
+    public function __prepare(BrowserInterface $browser, FixtureFactory $fixtureFactory)
     {
         $this->browser = $browser;
         $this->fixtureFactory = $fixtureFactory;
diff --git a/dev/tests/functional/tests/app/Magento/Checkout/Test/TestStep/AddProductsToTheCartStep.php b/dev/tests/functional/tests/app/Magento/Checkout/Test/TestStep/AddProductsToTheCartStep.php
index 2b4528b8253221ba12939a105534ecf6ea94fd82..bc314698d1fe275333ca9843f2eb538f52e66f42 100644
--- a/dev/tests/functional/tests/app/Magento/Checkout/Test/TestStep/AddProductsToTheCartStep.php
+++ b/dev/tests/functional/tests/app/Magento/Checkout/Test/TestStep/AddProductsToTheCartStep.php
@@ -9,8 +9,8 @@ namespace Magento\Checkout\Test\TestStep;
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
 use Magento\Checkout\Test\Page\CheckoutCart;
 use Magento\Cms\Test\Page\CmsIndex;
-use Mtf\Client\Browser;
-use Mtf\TestStep\TestStepInterface;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\TestStep\TestStepInterface;
 
 /**
  * Class AddProductsToTheCartStep
@@ -49,7 +49,7 @@ class AddProductsToTheCartStep implements TestStepInterface
     /**
      * Interface Browser
      *
-     * @var Browser
+     * @var BrowserInterface
      */
     protected $browser;
 
@@ -58,14 +58,14 @@ class AddProductsToTheCartStep implements TestStepInterface
      * @param CatalogProductView $catalogProductView
      * @param CheckoutCart $checkoutCart
      * @param CmsIndex $cmsIndex
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @param array $products
      */
     public function __construct(
         CatalogProductView $catalogProductView,
         CheckoutCart $checkoutCart,
         CmsIndex $cmsIndex,
-        Browser $browser,
+        BrowserInterface $browser,
         array $products
     ) {
         $this->products = $products;
diff --git a/dev/tests/functional/tests/app/Magento/Checkout/Test/TestStep/FillBillingInformationStep.php b/dev/tests/functional/tests/app/Magento/Checkout/Test/TestStep/FillBillingInformationStep.php
index 40deeb5db847456359624cb6f6811f9390e1082f..1c0ce87c6880e0dd9b298e487d12973e63d2a338 100644
--- a/dev/tests/functional/tests/app/Magento/Checkout/Test/TestStep/FillBillingInformationStep.php
+++ b/dev/tests/functional/tests/app/Magento/Checkout/Test/TestStep/FillBillingInformationStep.php
@@ -9,7 +9,7 @@ namespace Magento\Checkout\Test\TestStep;
 use Magento\Checkout\Test\Page\CheckoutOnepage;
 use Magento\Customer\Test\Fixture\AddressInjectable;
 use Magento\Customer\Test\Fixture\CustomerInjectable;
-use Mtf\TestStep\TestStepInterface;
+use Magento\Mtf\TestStep\TestStepInterface;
 
 /**
  * Class FillBillingInformationStep
diff --git a/dev/tests/functional/tests/app/Magento/Checkout/Test/TestStep/FillShippingMethodStep.php b/dev/tests/functional/tests/app/Magento/Checkout/Test/TestStep/FillShippingMethodStep.php
index 0d051665e6efb4694123bc192b757166ed179029..df510f1e2e80cee8c1e4efd7f77f42089fc1486c 100644
--- a/dev/tests/functional/tests/app/Magento/Checkout/Test/TestStep/FillShippingMethodStep.php
+++ b/dev/tests/functional/tests/app/Magento/Checkout/Test/TestStep/FillShippingMethodStep.php
@@ -7,7 +7,7 @@
 namespace Magento\Checkout\Test\TestStep;
 
 use Magento\Checkout\Test\Page\CheckoutOnepage;
-use Mtf\TestStep\TestStepInterface;
+use Magento\Mtf\TestStep\TestStepInterface;
 
 /**
  * Class FillShippingMethodStep
diff --git a/dev/tests/functional/tests/app/Magento/Checkout/Test/TestStep/PlaceOrderStep.php b/dev/tests/functional/tests/app/Magento/Checkout/Test/TestStep/PlaceOrderStep.php
index 3b72746e08c1518a7d7696647dcf8c6279bb72e0..7adfc7fc1ac63ea36b5a5eb242356dc80690ac82 100644
--- a/dev/tests/functional/tests/app/Magento/Checkout/Test/TestStep/PlaceOrderStep.php
+++ b/dev/tests/functional/tests/app/Magento/Checkout/Test/TestStep/PlaceOrderStep.php
@@ -9,7 +9,7 @@ namespace Magento\Checkout\Test\TestStep;
 use Magento\Checkout\Test\Constraint\AssertOrderTotalOnReviewPage;
 use Magento\Checkout\Test\Page\CheckoutOnepage;
 use Magento\Checkout\Test\Page\CheckoutOnepageSuccess;
-use Mtf\TestStep\TestStepInterface;
+use Magento\Mtf\TestStep\TestStepInterface;
 
 /**
  * Class PlaceOrderStep
diff --git a/dev/tests/functional/tests/app/Magento/Checkout/Test/TestStep/ProceedToCheckoutStep.php b/dev/tests/functional/tests/app/Magento/Checkout/Test/TestStep/ProceedToCheckoutStep.php
index 2776d137891760976c25488190243c5840c839a8..6fdee3ab31755a96be9776bac991c2c1a40f4729 100644
--- a/dev/tests/functional/tests/app/Magento/Checkout/Test/TestStep/ProceedToCheckoutStep.php
+++ b/dev/tests/functional/tests/app/Magento/Checkout/Test/TestStep/ProceedToCheckoutStep.php
@@ -7,7 +7,7 @@
 namespace Magento\Checkout\Test\TestStep;
 
 use Magento\Checkout\Test\Page\CheckoutCart;
-use Mtf\TestStep\TestStepInterface;
+use Magento\Mtf\TestStep\TestStepInterface;
 
 /**
  * Class ProceedToCheckoutStep
diff --git a/dev/tests/functional/tests/app/Magento/Checkout/Test/TestStep/SelectCheckoutMethodStep.php b/dev/tests/functional/tests/app/Magento/Checkout/Test/TestStep/SelectCheckoutMethodStep.php
index 154ccf108102f1ca984f8ad41e9ca78e305a7707..3d37267a82e6213597df1323b717503bb205a011 100644
--- a/dev/tests/functional/tests/app/Magento/Checkout/Test/TestStep/SelectCheckoutMethodStep.php
+++ b/dev/tests/functional/tests/app/Magento/Checkout/Test/TestStep/SelectCheckoutMethodStep.php
@@ -8,7 +8,7 @@ namespace Magento\Checkout\Test\TestStep;
 
 use Magento\Checkout\Test\Page\CheckoutOnepage;
 use Magento\Customer\Test\Fixture\CustomerInjectable;
-use Mtf\TestStep\TestStepInterface;
+use Magento\Mtf\TestStep\TestStepInterface;
 
 /**
  * Class SelectCheckoutMethodStep
diff --git a/dev/tests/functional/tests/app/Magento/Checkout/Test/TestStep/SelectPaymentMethodStep.php b/dev/tests/functional/tests/app/Magento/Checkout/Test/TestStep/SelectPaymentMethodStep.php
index ba5eee6cc936ffd2317c14e07afd61d5d525ec36..f17bc063c16bf56c06b74c663f7620888b6720f1 100644
--- a/dev/tests/functional/tests/app/Magento/Checkout/Test/TestStep/SelectPaymentMethodStep.php
+++ b/dev/tests/functional/tests/app/Magento/Checkout/Test/TestStep/SelectPaymentMethodStep.php
@@ -7,7 +7,7 @@
 namespace Magento\Checkout\Test\TestStep;
 
 use Magento\Checkout\Test\Page\CheckoutOnepage;
-use Mtf\TestStep\TestStepInterface;
+use Magento\Mtf\TestStep\TestStepInterface;
 
 /**
  * Class SelectPaymentMethodStep
diff --git a/dev/tests/functional/tests/app/Magento/Checkout/Test/etc/fixture.xml b/dev/tests/functional/tests/app/Magento/Checkout/Test/etc/fixture.xml
index 55ae60269c9dc3d08f0c1211582de1ff8b903358..b5e91b59757e4aeb3e989bcc81a680dabedb614d 100644
--- a/dev/tests/functional/tests/app/Magento/Checkout/Test/etc/fixture.xml
+++ b/dev/tests/functional/tests/app/Magento/Checkout/Test/etc/fixture.xml
@@ -8,7 +8,7 @@
 <fixture>
     <cart module="Magento_Checkout">
         <type>flat</type>
-        <entity_type>sales_quote</entity_type>
+        <entity_type>quote</entity_type>
         <collection>Magento\Checkout\Model\Resource\Cart</collection>
     </cart>
 </fixture>
diff --git a/dev/tests/functional/tests/app/Magento/Checkout/Test/etc/scenario.xml b/dev/tests/functional/tests/app/Magento/Checkout/Test/etc/scenario.xml
index ab0fe4da4e6d0fa88e35671641be4ce4c2e8b5de..bef12be128cdf135313f5438de2a29774c26417e 100644
--- a/dev/tests/functional/tests/app/Magento/Checkout/Test/etc/scenario.xml
+++ b/dev/tests/functional/tests/app/Magento/Checkout/Test/etc/scenario.xml
@@ -5,7 +5,7 @@
  * See COPYING.txt for license details.
  */
 -->
-<scenarios xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../vendor/magento/mtf/Mtf/Config/etc/scenario.xsd">
+<scenarios xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../vendor/magento/mtf/Magento/Mtf/Config/etc/scenario.xsd">
     <scenario name="OnePageCheckoutTest" module="Magento_Checkout">
         <methods>
             <method name="test">
diff --git a/dev/tests/functional/tests/app/Magento/Cms/Test/Handler/CmsBlock/CmsBlockInterface.php b/dev/tests/functional/tests/app/Magento/Cms/Test/Handler/CmsBlock/CmsBlockInterface.php
index 128aee14bafe44dbef6870ebfb8ce7f086585ad7..20685db1cdedc533a0dc078f0aa6813d13304580 100644
--- a/dev/tests/functional/tests/app/Magento/Cms/Test/Handler/CmsBlock/CmsBlockInterface.php
+++ b/dev/tests/functional/tests/app/Magento/Cms/Test/Handler/CmsBlock/CmsBlockInterface.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Cms\Test\Handler\CmsBlock;
 
-use Mtf\Handler\HandlerInterface;
+use Magento\Mtf\Handler\HandlerInterface;
 
 /**
  * Interface CmsBlockInterface
diff --git a/dev/tests/functional/tests/app/Magento/Cms/Test/Handler/CmsBlock/Curl.php b/dev/tests/functional/tests/app/Magento/Cms/Test/Handler/CmsBlock/Curl.php
index 2c716b8c99374efb63363f65155096bc11a50529..49f62f95f8582fe9532503d2ed9fcb223f817a8a 100644
--- a/dev/tests/functional/tests/app/Magento/Cms/Test/Handler/CmsBlock/Curl.php
+++ b/dev/tests/functional/tests/app/Magento/Cms/Test/Handler/CmsBlock/Curl.php
@@ -6,12 +6,12 @@
 
 namespace Magento\Cms\Test\Handler\CmsBlock;
 
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Handler\Curl as AbstractCurl;
-use Mtf\System\Config;
-use Mtf\Util\Protocol\CurlInterface;
-use Mtf\Util\Protocol\CurlTransport;
-use Mtf\Util\Protocol\CurlTransport\BackendDecorator;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Handler\Curl as AbstractCurl;
+use Magento\Mtf\System\Config;
+use Magento\Mtf\Util\Protocol\CurlInterface;
+use Magento\Mtf\Util\Protocol\CurlTransport;
+use Magento\Mtf\Util\Protocol\CurlTransport\BackendDecorator;
 
 /**
  * Class Curl
diff --git a/dev/tests/functional/tests/app/Magento/Cms/Test/Handler/CmsPage/CmsPageInterface.php b/dev/tests/functional/tests/app/Magento/Cms/Test/Handler/CmsPage/CmsPageInterface.php
index 5c3ce1b3c1788801ae678a0eae8d71da0ac6e88f..35f8db75513c5c86dc503cad6080ff3d90a0bcd9 100644
--- a/dev/tests/functional/tests/app/Magento/Cms/Test/Handler/CmsPage/CmsPageInterface.php
+++ b/dev/tests/functional/tests/app/Magento/Cms/Test/Handler/CmsPage/CmsPageInterface.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Cms\Test\Handler\CmsPage;
 
-use Mtf\Handler\HandlerInterface;
+use Magento\Mtf\Handler\HandlerInterface;
 
 /**
  * Interface CmsPageInterface
diff --git a/dev/tests/functional/tests/app/Magento/Cms/Test/Handler/CmsPage/Curl.php b/dev/tests/functional/tests/app/Magento/Cms/Test/Handler/CmsPage/Curl.php
index 012448057df9a7e549100d7a5ce410c32d4e2db3..85e033bcf4a4d95331c4159e5103b330de770bfc 100644
--- a/dev/tests/functional/tests/app/Magento/Cms/Test/Handler/CmsPage/Curl.php
+++ b/dev/tests/functional/tests/app/Magento/Cms/Test/Handler/CmsPage/Curl.php
@@ -7,11 +7,11 @@
 namespace Magento\Cms\Test\Handler\CmsPage;
 
 use Magento\Backend\Test\Handler\Conditions;
-use Mtf\Fixture\FixtureInterface;
-use Mtf\System\Config;
-use Mtf\Util\Protocol\CurlInterface;
-use Mtf\Util\Protocol\CurlTransport;
-use Mtf\Util\Protocol\CurlTransport\BackendDecorator;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\System\Config;
+use Magento\Mtf\Util\Protocol\CurlInterface;
+use Magento\Mtf\Util\Protocol\CurlTransport;
+use Magento\Mtf\Util\Protocol\CurlTransport\BackendDecorator;
 
 /**
  * Class Curl
diff --git a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Block/Adminhtml/Product/AffectedAttributeSet.php b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Block/Adminhtml/Product/AffectedAttributeSet.php
index a2c0e6923bd39d474063b361e074e375bfabaa0b..1385164d592ac0608f057730e41b2897938ae55f 100755
--- a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Block/Adminhtml/Product/AffectedAttributeSet.php
+++ b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Block/Adminhtml/Product/AffectedAttributeSet.php
@@ -6,10 +6,11 @@
 
 namespace Magento\ConfigurableProduct\Test\Block\Adminhtml\Product;
 
+use Magento\Mtf\Client\Element;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Client\Element\SimpleElement;
 use Magento\Backend\Test\Block\Widget\Form as ParentForm;
-use Mtf\Client\Element;
-use Mtf\Client\Element\Locator;
-use Mtf\Fixture\FixtureInterface;
 
 /**
  * Class AffectedAttributeSet
@@ -35,10 +36,10 @@ class AffectedAttributeSet extends ParentForm
      * Fill popup form
      *
      * @param FixtureInterface $product
-     * @param Element|null $element [optional]
+     * @param SimpleElement|null $element [optional]
      * @return $this
      */
-    public function fill(FixtureInterface $product, Element $element = null)
+    public function fill(FixtureInterface $product, SimpleElement $element = null)
     {
         $affectedAttributeSet = $product->getData('affected_attribute_set');
 
diff --git a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Block/Adminhtml/Product/Composite/Configure.php b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Block/Adminhtml/Product/Composite/Configure.php
index fd89c189a2f5d167325618b19ae0a226d9ac4ee9..8470504b7f254583d16945c893389afc3a259fa8 100644
--- a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Block/Adminhtml/Product/Composite/Configure.php
+++ b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Block/Adminhtml/Product/Composite/Configure.php
@@ -7,7 +7,7 @@
 
 namespace Magento\ConfigurableProduct\Test\Block\Adminhtml\Product\Composite;
 
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class Configure
diff --git a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Block/Adminhtml/Product/Edit/Tab/Super/Config.php b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Block/Adminhtml/Product/Edit/Tab/Super/Config.php
index 60295a147a7ea83bcac921a8883ad8d43d114e79..c402668ebfe6925e27c7796150ab4beb5ca4efc7 100755
--- a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Block/Adminhtml/Product/Edit/Tab/Super/Config.php
+++ b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Block/Adminhtml/Product/Edit/Tab/Super/Config.php
@@ -8,8 +8,10 @@ namespace Magento\ConfigurableProduct\Test\Block\Adminhtml\Product\Edit\Tab\Supe
 
 use Magento\Backend\Test\Block\Template;
 use Magento\Backend\Test\Block\Widget\Tab;
-use Mtf\Client\Element;
-use Mtf\Client\Element\Locator;
+use Magento\Catalog\Test\Fixture\CatalogCategory;
+use Magento\Mtf\Client\Element\SimpleElement;
+use Magento\Mtf\Client\Element;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class Config
@@ -84,10 +86,10 @@ class Config extends Tab
      * Fill variations fieldset
      *
      * @param array $fields
-     * @param Element|null $element
+     * @param SimpleElement|null $element
      * @return $this
      */
-    public function fillFormTab(array $fields, Element $element = null)
+    public function fillFormTab(array $fields, SimpleElement $element = null)
     {
         $attributes = isset($fields['configurable_attributes_data']['value'])
             ? $fields['configurable_attributes_data']['value']
@@ -175,10 +177,10 @@ class Config extends Tab
      * Get data of tab
      *
      * @param array|null $fields
-     * @param Element|null $element
+     * @param SimpleElement|null $element
      * @return array
      */
-    public function getDataFormTab($fields = null, Element $element = null)
+    public function getDataFormTab($fields = null, SimpleElement $element = null)
     {
         $data = [];
 
@@ -196,9 +198,9 @@ class Config extends Tab
      */
     public function deleteAttributes()
     {
-        $attributeElements = $this->_rootElement->find($this->attributeElement)->getElements();
+        $attributeElements = $this->_rootElement->getElements($this->attributeElement);
         $this->_rootElement->find($this->variationsContent)->click();
-        foreach ($attributeElements as $element) {
+        foreach (array_reverse($attributeElements) as $element) {
             $element->find($this->deleteVariationButton)->click();
         }
     }
diff --git a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Block/Adminhtml/Product/Edit/Tab/Super/Config/Attribute.php b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Block/Adminhtml/Product/Edit/Tab/Super/Config/Attribute.php
index 4aa8b5f1803350cdd5d4a874d98e78b7c253fe8b..eecdf4f31ddbf1743f6db9cd71a4c49783810111 100755
--- a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Block/Adminhtml/Product/Edit/Tab/Super/Config/Attribute.php
+++ b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Block/Adminhtml/Product/Edit/Tab/Super/Config/Attribute.php
@@ -6,10 +6,10 @@
 
 namespace Magento\ConfigurableProduct\Test\Block\Adminhtml\Product\Edit\Tab\Super\Config;
 
+use Magento\Mtf\Client\Locator;
 use Magento\Backend\Test\Block\Widget\Form;
+use Magento\Mtf\Client\Element\SimpleElement;
 use Magento\ConfigurableProduct\Test\Block\Adminhtml\Product\Edit\Tab\Super\Config\Attribute\AttributeSelector;
-use Mtf\Client\Driver\Selenium\Element;
-use Mtf\Client\Element\Locator;
 
 /**
  * Attribute block in Variation section.
@@ -253,11 +253,11 @@ class Attribute extends Form
     /**
      * Check is visible option
      *
-     * @param Element $attributeBlock
+     * @param SimpleElement $attributeBlock
      * @param int $number
      * @return bool
      */
-    protected function isVisibleOption(Element $attributeBlock, $number)
+    protected function isVisibleOption(SimpleElement $attributeBlock, $number)
     {
         return $attributeBlock->find(
             sprintf($this->optionContainerByNumber, $number),
@@ -303,7 +303,7 @@ class Attribute extends Form
         $optionMapping = $this->dataMapping();
 
         $count = 1;
-        /** @var Element $attributeBlock */
+        /** @var SimpleElement $attributeBlock */
         $attributeBlock = $this->_rootElement->find(sprintf($this->attributeBlock, $count), Locator::SELECTOR_XPATH);
         while ($attributeBlock->isVisible()) {
             $this->showAttributeContent($attributeBlock);
@@ -312,9 +312,9 @@ class Attribute extends Form
                 'label' => $attributeBlock->find($this->attributeLabel)->getValue(),
                 'options' => [],
             ];
-            $options = $attributeBlock->find($this->optionContainer, Locator::SELECTOR_XPATH)->getElements();
+            $options = $attributeBlock->getElements($this->optionContainer, Locator::SELECTOR_XPATH);
             foreach ($options as $optionKey => $option) {
-                /** @var Element $option */
+                /** @var SimpleElement $option */
                 if ($option->isVisible()) {
                     $attribute['options'][$optionKey] = $this->_getData($optionMapping, $option);
                     $attribute['options'][$optionKey] += $this->getOptionalFields($option);
@@ -335,10 +335,10 @@ class Attribute extends Form
     /**
      * Show attribute content
      *
-     * @param Element $attribute
+     * @param SimpleElement $attribute
      * @return void
      */
-    protected function showAttributeContent(Element $attribute)
+    protected function showAttributeContent(SimpleElement $attribute)
     {
         if (!$attribute->find($this->attributeContent)->isVisible()) {
             $this->_rootElement->find($this->configContent)->click();
@@ -371,11 +371,11 @@ class Attribute extends Form
     /**
      * Get optional fields
      *
-     * @param Element $context
+     * @param SimpleElement $context
      * @param array $fields
      * @return array
      */
-    protected function getOptionalFields(Element $context, array $fields = [])
+    protected function getOptionalFields(SimpleElement $context, array $fields = [])
     {
         $data = [];
 
@@ -383,6 +383,7 @@ class Attribute extends Form
         foreach ($fields as $name => $params) {
             $data[$name] = $context->find($params['selector'], $params['strategy'])->getText();
         }
+
         return $data;
     }
 }
diff --git a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Block/Adminhtml/Product/Edit/Tab/Super/Config/Attribute/AttributeSelector.php b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Block/Adminhtml/Product/Edit/Tab/Super/Config/Attribute/AttributeSelector.php
index 650d09f119544c2be712c7005f113793357df901..7fac90081181236c028ba2a8af2c5c103a820fa9 100755
--- a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Block/Adminhtml/Product/Edit/Tab/Super/Config/Attribute/AttributeSelector.php
+++ b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Block/Adminhtml/Product/Edit/Tab/Super/Config/Attribute/AttributeSelector.php
@@ -6,8 +6,8 @@
 
 namespace Magento\ConfigurableProduct\Test\Block\Adminhtml\Product\Edit\Tab\Super\Config\Attribute;
 
+use Magento\Mtf\Client\Element\SuggestElement;
 use Magento\Catalog\Test\Fixture\CatalogProductAttribute;
-use Mtf\Client\Driver\Selenium\Element\SuggestElement;
 
 /**
  * Class AttributeSelector
diff --git a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Block/Adminhtml/Product/Edit/Tab/Super/Config/Attribute/ToggleDropdown.php b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Block/Adminhtml/Product/Edit/Tab/Super/Config/Attribute/ToggleDropdown.php
index 7c84a33b13dbe4925e41972323d48e71b00e07b2..fffb5b80c8e24be658218a67237811ef690bd942 100755
--- a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Block/Adminhtml/Product/Edit/Tab/Super/Config/Attribute/ToggleDropdown.php
+++ b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Block/Adminhtml/Product/Edit/Tab/Super/Config/Attribute/ToggleDropdown.php
@@ -6,14 +6,14 @@
 
 namespace Magento\ConfigurableProduct\Test\Block\Adminhtml\Product\Edit\Tab\Super\Config\Attribute;
 
-use Mtf\Client\Driver\Selenium\Element;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Client\Element\SimpleElement;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class ToggleDropdown
  * Class for toggle dropdown elements.
  */
-class ToggleDropdown extends Element
+class ToggleDropdown extends SimpleElement
 {
     /**
      * Selector for field value
@@ -44,7 +44,7 @@ class ToggleDropdown extends Element
      */
     public function setValue($value)
     {
-        $this->_eventManager->dispatchEvent(['set_value'], [__METHOD__, $this->getAbsoluteSelector()]);
+        $this->eventManager->dispatchEvent(['set_value'], [__METHOD__, $this->getAbsoluteSelector()]);
 
         if ($value != $this->getValue()) {
             $value = ('Yes' == $value) ? '%' : '$';
@@ -62,7 +62,7 @@ class ToggleDropdown extends Element
      */
     public function getValue()
     {
-        $this->_eventManager->dispatchEvent(['get_value'], [(string)$this->_locator]);
+        $this->eventManager->dispatchEvent(['get_value'], [__METHOD__, $this->getAbsoluteSelector()]);
 
         $value = $this->find($this->field, Locator::SELECTOR_XPATH)->getText();
         return ('%' == $value) ? 'Yes' : 'No';
diff --git a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Block/Adminhtml/Product/Edit/Tab/Super/Config/Matrix.php b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Block/Adminhtml/Product/Edit/Tab/Super/Config/Matrix.php
index e04457ba67c9a1095cb7067927ae1f5cc06e1376..11db5ed304636b2e2f25019e3c7b08bc5d8ac1f5 100755
--- a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Block/Adminhtml/Product/Edit/Tab/Super/Config/Matrix.php
+++ b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Block/Adminhtml/Product/Edit/Tab/Super/Config/Matrix.php
@@ -6,10 +6,10 @@
 
 namespace Magento\ConfigurableProduct\Test\Block\Adminhtml\Product\Edit\Tab\Super\Config;
 
+use Magento\Mtf\Client\Locator;
 use Magento\Backend\Test\Block\Template;
 use Magento\Backend\Test\Block\Widget\Form;
-use Mtf\Client\Driver\Selenium\Element;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Client\Element\SimpleElement;
 
 /**
  * Class Matrix
@@ -120,11 +120,11 @@ class Matrix extends Form
     /**
      * Assign product to variation matrix
      *
-     * @param Element $variationRow
+     * @param SimpleElement $variationRow
      * @param int $productId
      * @return void
      */
-    protected function assignProduct(Element $variationRow, $productId)
+    protected function assignProduct(SimpleElement $variationRow, $productId)
     {
         $variationRow->find($this->configurableAttribute)->click();
         $this->getTemplateBlock()->waitLoader();
@@ -142,10 +142,10 @@ class Matrix extends Form
     public function getVariationsData()
     {
         $data = [];
-        $variationRows = $this->_rootElement->find($this->variationRow, Locator::SELECTOR_XPATH)->getElements();
+        $variationRows = $this->_rootElement->getElements($this->variationRow, Locator::SELECTOR_XPATH);
 
         foreach ($variationRows as $key => $variationRow) {
-            /** @var Element $variationRow */
+            /** @var SimpleElement $variationRow */
             if ($variationRow->isVisible()) {
                 $data[$key] = $this->_getData($this->dataMapping(), $variationRow);
                 $data[$key] += $this->getOptionalFields($variationRow, $this->mappingGetFields);
@@ -158,11 +158,11 @@ class Matrix extends Form
     /**
      * Get optional fields
      *
-     * @param Element $context
+     * @param SimpleElement $context
      * @param array $fields
      * @return array
      */
-    protected function getOptionalFields(Element $context, array $fields)
+    protected function getOptionalFields(SimpleElement $context, array $fields)
     {
         $data = [];
 
diff --git a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Block/Adminhtml/Product/FormPageActions.php b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Block/Adminhtml/Product/FormPageActions.php
index e6793ccdc1bc04d1194034afdcd504a433ca78d8..b1822f54f0eb8d131c2cca45748f240a9b0c026e 100755
--- a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Block/Adminhtml/Product/FormPageActions.php
+++ b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Block/Adminhtml/Product/FormPageActions.php
@@ -6,8 +6,8 @@
 
 namespace Magento\ConfigurableProduct\Test\Block\Adminhtml\Product;
 
-use Mtf\Client\Element\Locator;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class FormPageActions
diff --git a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Block/Adminhtml/Product/ProductForm.php b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Block/Adminhtml/Product/ProductForm.php
index b3b9946ebf78e1c93c253d1922b2d641717adbf4..7a666e370751ac9aaa7e7fed02aecffefd86e524 100755
--- a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Block/Adminhtml/Product/ProductForm.php
+++ b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Block/Adminhtml/Product/ProductForm.php
@@ -6,11 +6,12 @@
 
 namespace Magento\ConfigurableProduct\Test\Block\Adminhtml\Product;
 
+use Magento\Mtf\Client\Element;
+use Magento\Mtf\Fixture\DataFixture;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\InjectableFixture;
 use Magento\Backend\Test\Block\Widget\FormTabs;
-use Mtf\Client\Element;
-use Mtf\Fixture\DataFixture;
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Client\Element\SimpleElement;
 
 /**
  * Class ProductForm
@@ -22,11 +23,11 @@ class ProductForm extends \Magento\Catalog\Test\Block\Adminhtml\Product\ProductF
      * Fill the product form
      *
      * @param FixtureInterface $product
-     * @param Element|null $element [optional]
+     * @param SimpleElement|null $element [optional]
      * @param FixtureInterface|null $category [optional]
      * @return FormTabs
      */
-    public function fill(FixtureInterface $product, Element $element = null, FixtureInterface $category = null)
+    public function fill(FixtureInterface $product, SimpleElement $element = null, FixtureInterface $category = null)
     {
         $tabs = $this->getFieldsByTabs($product);
         ksort($tabs);
@@ -101,6 +102,7 @@ class ProductForm extends \Magento\Catalog\Test\Block\Adminhtml\Product\ProductF
             ],
         ];
         unset($tabs['variations']['variations-matrix']);
+
         return $tabs;
     }
 }
diff --git a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Block/Product/View.php b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Block/Product/View.php
index 99d42204d7c3bd92d0a9e07c87e0c77aab8066f8..f7b417ba6583d09a0cbd058a5f36fb56a89d35d7 100644
--- a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Block/Product/View.php
+++ b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Block/Product/View.php
@@ -9,8 +9,8 @@ namespace Magento\ConfigurableProduct\Test\Block\Product;
 use Magento\ConfigurableProduct\Test\Block\Product\View\ConfigurableOptions;
 use Magento\ConfigurableProduct\Test\Fixture\ConfigurableProduct;
 use Magento\ConfigurableProduct\Test\Fixture\ConfigurableProductInjectable;
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Class View
diff --git a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Block/Product/View/ConfigurableOptions.php b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Block/Product/View/ConfigurableOptions.php
index 216e2a645230e67cfc01a40b7a42553e3321ad7e..c191f1397062d4c7f8c89dc009f821eb17b74eb9 100644
--- a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Block/Product/View/ConfigurableOptions.php
+++ b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Block/Product/View/ConfigurableOptions.php
@@ -9,10 +9,11 @@ namespace Magento\ConfigurableProduct\Test\Block\Product\View;
 use Magento\Catalog\Test\Block\Product\View\CustomOptions;
 use Magento\ConfigurableProduct\Test\Fixture\ConfigurableProduct;
 use Magento\ConfigurableProduct\Test\Fixture\ConfigurableProductInjectable;
-use Mtf\Client\Element;
-use Mtf\Client\Element\Locator;
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Client\Element;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Client\Element\SimpleElement;
 
 /**
  * Class ConfigurableOptions
@@ -61,7 +62,7 @@ class ConfigurableOptions extends CustomOptions
                 throw new \Exception("Can't find option: \"{$title}\"");
             }
 
-            /** @var Element $optionElement */
+            /** @var SimpleElement $optionElement */
             $optionElement = $listOptions[$title];
             $typeMethod = preg_replace('/[^a-zA-Z]/', '', $option['frontend_input']);
             $getTypeData = 'get' . ucfirst(strtolower($typeMethod)) . 'Data';
diff --git a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Constraint/AssertChildProductIsNotDisplayedSeparately.php b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Constraint/AssertChildProductIsNotDisplayedSeparately.php
index 6ba16adff2697032d2af502f6fe844aff65d1cba..49ed7543a012207c03a8cf3d336c52a984fa122e 100644
--- a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Constraint/AssertChildProductIsNotDisplayedSeparately.php
+++ b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Constraint/AssertChildProductIsNotDisplayedSeparately.php
@@ -9,7 +9,7 @@ namespace Magento\ConfigurableProduct\Test\Constraint;
 use Magento\CatalogSearch\Test\Page\CatalogsearchResult;
 use Magento\Cms\Test\Page\CmsIndex;
 use Magento\ConfigurableProduct\Test\Fixture\ConfigurableProductInjectable;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertChildProductIsNotDisplayedSeparately
diff --git a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Constraint/AssertChildProductsInGrid.php b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Constraint/AssertChildProductsInGrid.php
index 3cb601b648536e8e13fa70768d4bad9f35cb0f09..80446fef978798ea9f7d1b3ea7a9a3757124cabe 100755
--- a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Constraint/AssertChildProductsInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Constraint/AssertChildProductsInGrid.php
@@ -8,7 +8,7 @@ namespace Magento\ConfigurableProduct\Test\Constraint;
 
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductIndex;
 use Magento\ConfigurableProduct\Test\Fixture\ConfigurableProductInjectable;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertChildProductsInGrid
diff --git a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Constraint/AssertConfigurableAttributesAbsentOnProductPage.php b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Constraint/AssertConfigurableAttributesAbsentOnProductPage.php
index a2ba3b8d62c3236c78321a1b6ef73aed6f254afa..22695040b347c80306492fe414bfa939a0edd640 100644
--- a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Constraint/AssertConfigurableAttributesAbsentOnProductPage.php
+++ b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Constraint/AssertConfigurableAttributesAbsentOnProductPage.php
@@ -9,8 +9,8 @@ namespace Magento\ConfigurableProduct\Test\Constraint;
 use Magento\Catalog\Test\Fixture\CatalogProductAttribute;
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
 use Magento\ConfigurableProduct\Test\Fixture\ConfigurableProductInjectable;
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Assert that deleted configurable attributes are absent on product page on frontend.
@@ -25,14 +25,14 @@ class AssertConfigurableAttributesAbsentOnProductPage extends AbstractConstraint
      * Assert that deleted configurable attributes are absent on product page on frontend.
      *
      * @param CatalogProductAttribute[] $deletedProductAttributes
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @param CatalogProductView $catalogProductView
      * @param ConfigurableProductInjectable $product
      * @return void
      */
     public function processAssert(
         array $deletedProductAttributes,
-        Browser $browser,
+        BrowserInterface $browser,
         CatalogProductView $catalogProductView,
         ConfigurableProductInjectable $product
     ) {
diff --git a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Constraint/AssertConfigurableAttributesBlockIsAbsentOnProductPage.php b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Constraint/AssertConfigurableAttributesBlockIsAbsentOnProductPage.php
index 6844bf30090e91c143cbfc4351eb6c8d965fd474..e43779622b8f1b96ea1dd16881d2b9a849becf8a 100644
--- a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Constraint/AssertConfigurableAttributesBlockIsAbsentOnProductPage.php
+++ b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Constraint/AssertConfigurableAttributesBlockIsAbsentOnProductPage.php
@@ -8,8 +8,8 @@ namespace Magento\ConfigurableProduct\Test\Constraint;
 
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
 use Magento\ConfigurableProduct\Test\Fixture\ConfigurableProductInjectable;
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Assert that all configurable attributes is absent on product page on frontend.
@@ -23,13 +23,13 @@ class AssertConfigurableAttributesBlockIsAbsentOnProductPage extends AbstractCon
     /**
      * Assert that all configurable attributes is absent on product page on frontend.
      *
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @param CatalogProductView $catalogProductView
      * @param ConfigurableProductInjectable $product
      * @return void
      */
     public function processAssert(
-        Browser $browser,
+        BrowserInterface $browser,
         CatalogProductView $catalogProductView,
         ConfigurableProductInjectable $product
     ) {
diff --git a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Constraint/AssertConfigurableProductDuplicateForm.php b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Constraint/AssertConfigurableProductDuplicateForm.php
index 7e8a9bce0120ccd116b3b0b859d2beac33cbadb0..7bc07b5c9907c3cae720dea19f65fb6cdbe9e9c3 100644
--- a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Constraint/AssertConfigurableProductDuplicateForm.php
+++ b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Constraint/AssertConfigurableProductDuplicateForm.php
@@ -8,7 +8,7 @@ namespace Magento\ConfigurableProduct\Test\Constraint;
 
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductEdit;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductIndex;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Assert form data equals duplicate product configurable data.
diff --git a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Constraint/AssertConfigurableProductInCart.php b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Constraint/AssertConfigurableProductInCart.php
index bded697687312df48a1e1c679c33e6cc0f0fcc2d..0cf25ed3ed81e063db68b3078d000ce6ff3e1540 100755
--- a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Constraint/AssertConfigurableProductInCart.php
+++ b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Constraint/AssertConfigurableProductInCart.php
@@ -9,8 +9,8 @@ namespace Magento\ConfigurableProduct\Test\Constraint;
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
 use Magento\Checkout\Test\Page\CheckoutCart;
 use Magento\ConfigurableProduct\Test\Fixture\ConfigurableProductInjectable;
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertConfigurableProductInCart
@@ -21,14 +21,14 @@ class AssertConfigurableProductInCart extends AbstractConstraint
     /**
      * Assertion that the product is correctly displayed in cart
      *
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @param CatalogProductView $catalogProductView
      * @param CheckoutCart $checkoutCart
      * @param ConfigurableProductInjectable $product
      * @return void
      */
     public function processAssert(
-        Browser $browser,
+        BrowserInterface $browser,
         CatalogProductView $catalogProductView,
         CheckoutCart $checkoutCart,
         ConfigurableProductInjectable $product
diff --git a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Constraint/AssertConfigurableProductInCustomerWishlistOnBackendGrid.php b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Constraint/AssertConfigurableProductInCustomerWishlistOnBackendGrid.php
index d96b2f6eb8cccd4e658fd73b8cf09344ec07e0c4..2b27a259c1eb58a0b45ae59be382ce34646e8936 100644
--- a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Constraint/AssertConfigurableProductInCustomerWishlistOnBackendGrid.php
+++ b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Constraint/AssertConfigurableProductInCustomerWishlistOnBackendGrid.php
@@ -8,7 +8,7 @@ namespace Magento\ConfigurableProduct\Test\Constraint;
 
 use Magento\ConfigurableProduct\Test\Fixture\ConfigurableProductInjectable;
 use Magento\Wishlist\Test\Constraint\AssertProductInCustomerWishlistOnBackendGrid;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class AssertConfigurableProductInCustomerWishlistOnBackendGrid
diff --git a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Constraint/AssertConfigurableProductInItemsOrderedGrid.php b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Constraint/AssertConfigurableProductInItemsOrderedGrid.php
index 729f19f2a7655abb1a273c0e54eee74333094d3d..5b7a08c049a62b29896147eed4d8165639acf0cb 100644
--- a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Constraint/AssertConfigurableProductInItemsOrderedGrid.php
+++ b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Constraint/AssertConfigurableProductInItemsOrderedGrid.php
@@ -8,7 +8,7 @@ namespace Magento\ConfigurableProduct\Test\Constraint;
 
 use Magento\ConfigurableProduct\Test\Fixture\ConfigurableProductInjectable;
 use Magento\Sales\Test\Constraint\AssertProductInItemsOrderedGrid;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class AssertConfigurableProductInItemsOrderedGrid
diff --git a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Constraint/AssertProductAttributeAbsenceInVariationsSearch.php b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Constraint/AssertProductAttributeAbsenceInVariationsSearch.php
index 0b45b5dbed3c36b7e18e88ae352fbef849425838..5a3965dca39c254463b4929455a83091cdda9dde 100644
--- a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Constraint/AssertProductAttributeAbsenceInVariationsSearch.php
+++ b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Constraint/AssertProductAttributeAbsenceInVariationsSearch.php
@@ -11,7 +11,7 @@ use Magento\ConfigurableProduct\Test\Block\Adminhtml\Product\Edit\Tab\Super\Conf
 use Magento\Catalog\Test\Fixture\CatalogProductAttribute;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductIndex;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductNew;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertProductAttributeAbsenceInVariationsSearch
diff --git a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Constraint/AssertProductAttributeIsConfigurable.php b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Constraint/AssertProductAttributeIsConfigurable.php
index a8c49f6f1774506f8d070ae630575d8c64daa669..402b06c7ab2477c2bafa5be345e37f6b116ad302 100644
--- a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Constraint/AssertProductAttributeIsConfigurable.php
+++ b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Constraint/AssertProductAttributeIsConfigurable.php
@@ -10,7 +10,7 @@ use Magento\Catalog\Test\Fixture\CatalogProductAttribute;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductIndex;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductNew;
 use Magento\ConfigurableProduct\Test\Block\Adminhtml\Product\Edit\Tab\Super\Config as TabVariation;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Assert check whether the attribute is used to create a configurable products.
diff --git a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Fixture/Cart/Item.php b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Fixture/Cart/Item.php
index 29b62650fa427983e91c464c426c89e1702bff95..80aa5bd293b9fb53aff50688e9673e0502e1e474 100644
--- a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Fixture/Cart/Item.php
+++ b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Fixture/Cart/Item.php
@@ -7,7 +7,7 @@
 namespace Magento\ConfigurableProduct\Test\Fixture\Cart;
 
 use Magento\ConfigurableProduct\Test\Fixture\ConfigurableProductInjectable;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class Item
diff --git a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Fixture/ConfigurableProduct.php b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Fixture/ConfigurableProduct.php
index 1be0737898bb5d918f84c70ed2c363a60dd53d67..8dedc818972413912ac5370d92228d8b1b65113a 100644
--- a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Fixture/ConfigurableProduct.php
+++ b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Fixture/ConfigurableProduct.php
@@ -9,8 +9,8 @@ namespace Magento\ConfigurableProduct\Test\Fixture;
 use Magento\Catalog\Test\Fixture\Product;
 use Magento\Catalog\Test\Fixture\ProductAttribute;
 use Magento\ConfigurableProduct\Test\Repository\ConfigurableProduct as Repository;
-use Mtf\Factory\Factory;
-use Mtf\System\Config;
+use Magento\Mtf\Factory\Factory;
+use Magento\Mtf\System\Config;
 
 /**
  * Class ConfigurableProduct
diff --git a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Fixture/ConfigurableProductInjectable.php b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Fixture/ConfigurableProductInjectable.php
index b2db8a8a3d851da5fd1d4da69c9782d5c2e7c0e2..99f2309d0d8f327ff1cd770cdbf7f15dc6ff3ef6 100644
--- a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Fixture/ConfigurableProductInjectable.php
+++ b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Fixture/ConfigurableProductInjectable.php
@@ -6,12 +6,12 @@
 
 namespace Magento\ConfigurableProduct\Test\Fixture;
 
-use Mtf\Fixture\FixtureFactory;
-use Mtf\Fixture\InjectableFixture;
-use Mtf\Handler\HandlerFactory;
-use Mtf\Repository\RepositoryFactory;
-use Mtf\System\Config;
-use Mtf\System\Event\EventManagerInterface;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Handler\HandlerFactory;
+use Magento\Mtf\Repository\RepositoryFactory;
+use Magento\Mtf\System\Config;
+use Magento\Mtf\System\Event\EventManagerInterface;
 
 /**
  * Configurable product fixture.
diff --git a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Fixture/ConfigurableProductInjectable/ConfigurableAttributesData.php b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Fixture/ConfigurableProductInjectable/ConfigurableAttributesData.php
index 4a9959eaec9284fd96eadf22455c403819172b26..17e00b49ce77aee73143db957bcf2d738ef85f9d 100644
--- a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Fixture/ConfigurableProductInjectable/ConfigurableAttributesData.php
+++ b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Fixture/ConfigurableProductInjectable/ConfigurableAttributesData.php
@@ -8,9 +8,9 @@ namespace Magento\ConfigurableProduct\Test\Fixture\ConfigurableProductInjectable
 
 use Magento\Catalog\Test\Fixture\CatalogProductAttribute;
 use Magento\Catalog\Test\Fixture\CatalogProductSimple;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Class ConfigurableAttributesData
diff --git a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Handler/ConfigurableProductInjectable/ConfigurableProductInjectableInterface.php b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Handler/ConfigurableProductInjectable/ConfigurableProductInjectableInterface.php
index df17a44e65f01a34f28675342af76dee5140d21d..ac4eed63d169f6a81bbc01261cd9b0471f3a2d9e 100644
--- a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Handler/ConfigurableProductInjectable/ConfigurableProductInjectableInterface.php
+++ b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Handler/ConfigurableProductInjectable/ConfigurableProductInjectableInterface.php
@@ -6,7 +6,7 @@
 
 namespace Magento\ConfigurableProduct\Test\Handler\ConfigurableProductInjectable;
 
-use Mtf\Handler\HandlerInterface;
+use Magento\Mtf\Handler\HandlerInterface;
 
 /**
  * Interface ConfigurableProductInjectableInterface
diff --git a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Handler/ConfigurableProductInjectable/Curl.php b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Handler/ConfigurableProductInjectable/Curl.php
index 9532613a3425cd0f3e50a91ed7446aa55323b5d8..2a354d1e6d4ae9e06afa006bedea92886dec227a 100644
--- a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Handler/ConfigurableProductInjectable/Curl.php
+++ b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Handler/ConfigurableProductInjectable/Curl.php
@@ -9,8 +9,8 @@ namespace Magento\ConfigurableProduct\Test\Handler\ConfigurableProductInjectable
 use Magento\Catalog\Test\Fixture\CatalogProductAttribute;
 use Magento\Catalog\Test\Handler\CatalogProductSimple\Curl as ProductCurl;
 use Magento\ConfigurableProduct\Test\Fixture\ConfigurableProductInjectable\ConfigurableAttributesData;
-use Mtf\Fixture\FixtureInterface;
-use Mtf\System\Config;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\System\Config;
 
 /**
  * Class Curl
diff --git a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Handler/Curl/CreateConfigurable.php b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Handler/Curl/CreateConfigurable.php
index 4f96c8c35f7ce3700811456040f05b9f05a0cb4e..8b584d3b549605b51b9bf3569654436cfaac18cf 100644
--- a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Handler/Curl/CreateConfigurable.php
+++ b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Handler/Curl/CreateConfigurable.php
@@ -8,12 +8,12 @@
 namespace Magento\ConfigurableProduct\Test\Handler\Curl;
 
 use Magento\ConfigurableProduct\Test\Fixture\ConfigurableProduct;
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Handler\Curl;
-use Mtf\System\Config;
-use Mtf\Util\Protocol\CurlInterface;
-use Mtf\Util\Protocol\CurlTransport;
-use Mtf\Util\Protocol\CurlTransport\BackendDecorator;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Handler\Curl;
+use Magento\Mtf\System\Config;
+use Magento\Mtf\Util\Protocol\CurlInterface;
+use Magento\Mtf\Util\Protocol\CurlTransport;
+use Magento\Mtf\Util\Protocol\CurlTransport\BackendDecorator;
 
 /**
  * Class Create Configurable Product
diff --git a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Repository/ConfigurableProductInjectable.php b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Repository/ConfigurableProductInjectable.php
index 6de4962e9911a9f6da59bce1ef6e8bf5dfc9a312..aab0344ffb6dc28688290afcd20fd59f228624a7 100644
--- a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Repository/ConfigurableProductInjectable.php
+++ b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Repository/ConfigurableProductInjectable.php
@@ -6,7 +6,7 @@
 
 namespace Magento\ConfigurableProduct\Test\Repository;
 
-use Mtf\Repository\AbstractRepository;
+use Magento\Mtf\Repository\AbstractRepository;
 
 /**
  * Class ConfigurableProductInjectable
diff --git a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/TestCase/CreateConfigurableProductEntityTest.php b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/TestCase/CreateConfigurableProductEntityTest.php
index add320422f194d36bbcb222ece93f701bc32bf93..95a0ed331c176aceaa5f51c7c5eb21eee69e8f03 100644
--- a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/TestCase/CreateConfigurableProductEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/TestCase/CreateConfigurableProductEntityTest.php
@@ -9,7 +9,7 @@ namespace Magento\ConfigurableProduct\Test\TestCase;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductIndex;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductNew;
 use Magento\ConfigurableProduct\Test\Fixture\ConfigurableProductInjectable;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Coverage for CreateConfigurableProductEntity
@@ -38,6 +38,11 @@ use Mtf\TestCase\Injectable;
  */
 class CreateConfigurableProductEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * Product page with a grid
      *
diff --git a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/TestCase/CreateConfigurableTest.php b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/TestCase/CreateConfigurableTest.php
index 971ca6fc17d2c1672bae8764d54bba1393a98d71..d2b92908b86e7d2a7258a2be8af7c11fc8331dc1 100644
--- a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/TestCase/CreateConfigurableTest.php
+++ b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/TestCase/CreateConfigurableTest.php
@@ -7,8 +7,8 @@
 namespace Magento\ConfigurableProduct\Test\TestCase;
 
 use Magento\ConfigurableProduct\Test\Fixture\ConfigurableProduct;
-use Mtf\Factory\Factory;
-use Mtf\TestCase\Functional;
+use Magento\Mtf\Factory\Factory;
+use Magento\Mtf\TestCase\Functional;
 
 /**
  * Class CreateConfigurableTest
diff --git a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/TestCase/CreateWithAttributeTest.php b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/TestCase/CreateWithAttributeTest.php
index ad4befe0987157fb2871fd5d38de3e9acdaaaadf..6d3a0ebdd9db086512900404c3d9fd8e625964e5 100644
--- a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/TestCase/CreateWithAttributeTest.php
+++ b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/TestCase/CreateWithAttributeTest.php
@@ -9,8 +9,8 @@ namespace Magento\ConfigurableProduct\Test\TestCase;
 use Magento\Catalog\Test\Fixture\Product;
 use Magento\Catalog\Test\Fixture\ProductAttribute;
 use Magento\ConfigurableProduct\Test\Fixture\ConfigurableProduct;
-use Mtf\Factory\Factory;
-use Mtf\TestCase\Functional;
+use Magento\Mtf\Factory\Factory;
+use Magento\Mtf\TestCase\Functional;
 
 /**
  * Class CreateWithAttributeTest
@@ -18,6 +18,11 @@ use Mtf\TestCase\Functional;
  */
 class CreateWithAttributeTest extends Functional
 {
+    /* tags */
+    const TEST_TYPE = 'acceptance_test';
+    const STABLE = 'no';
+    /* end tags */
+
     /**
      * Creating configurable product with creating new category and new attribute (required fields only)
      *
diff --git a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/TestCase/EditConfigurableTest.php b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/TestCase/EditConfigurableTest.php
index 9cd5211caf64b7ac5cccc4251a3ec90f57db5ad1..568fce2a32a3a329018b95586c7f4e5b61378b0d 100644
--- a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/TestCase/EditConfigurableTest.php
+++ b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/TestCase/EditConfigurableTest.php
@@ -6,7 +6,7 @@
 
 namespace Magento\ConfigurableProduct\Test\TestCase;
 
-use Mtf\Factory\Factory;
+use Magento\Mtf\Factory\Factory;
 
 /**
  * Class EditConfigurableTest
@@ -14,6 +14,10 @@ use Mtf\Factory\Factory;
  */
 class EditConfigurableTest extends CreateConfigurableTest
 {
+    /* tags */
+    const TEST_TYPE = 'acceptance_test';
+    /* end tags */
+
     /**
      * Edit configurable product and add new options to attribute
      *
diff --git a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/TestCase/UpdateConfigurableProductEntityTest.php b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/TestCase/UpdateConfigurableProductEntityTest.php
index 1dcd24957d6fee8e42c8ee93eba9e9ed4584e3bd..e42c08cd992d2053585932d3020313b5a3f5048d 100644
--- a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/TestCase/UpdateConfigurableProductEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/TestCase/UpdateConfigurableProductEntityTest.php
@@ -6,7 +6,7 @@
 
 namespace Magento\ConfigurableProduct\Test\TestCase;
 
-use Mtf\TestCase\Scenario;
+use Magento\Mtf\TestCase\Scenario;
 
 /**
  * Test Flow:
@@ -30,6 +30,11 @@ use Mtf\TestCase\Scenario;
  */
 class UpdateConfigurableProductEntityTest extends Scenario
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * Update configurable product.
      *
diff --git a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/TestStep/UpdateConfigurableProductStep.php b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/TestStep/UpdateConfigurableProductStep.php
index 46edf7236034ec4cfb6ceb24e3e31a134c7c35aa..d750752c960473b18f70910b70ff29589bb505be 100644
--- a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/TestStep/UpdateConfigurableProductStep.php
+++ b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/TestStep/UpdateConfigurableProductStep.php
@@ -9,8 +9,8 @@ namespace Magento\ConfigurableProduct\Test\TestStep;
 use Magento\Catalog\Test\Fixture\CatalogProductAttribute;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductEdit;
 use Magento\ConfigurableProduct\Test\Fixture\ConfigurableProductInjectable;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\TestStep\TestStepInterface;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\TestStep\TestStepInterface;
 
 /**
  * Update configurable product step.
diff --git a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/etc/scenario.xml b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/etc/scenario.xml
index 5736b9ae666a14e74ad854a7a65e1a2d95aece0b..b53a78e864b816ff2689db034097a86c73975368 100644
--- a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/etc/scenario.xml
+++ b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/etc/scenario.xml
@@ -5,7 +5,7 @@
  * See COPYING.txt for license details.
  */
 -->
-<scenarios xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../vendor/magento/mtf/Mtf/Config/etc/scenario.xsd">
+<scenarios xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../vendor/magento/mtf/Magento/Mtf/Config/etc/scenario.xsd">
     <scenario name="UpdateConfigurableProductEntityTest" module="Magento_ConfigurableProduct">
         <methods>
             <method name="test">
diff --git a/dev/tests/functional/tests/app/Magento/Core/Test/Block/Adminhtml/System/Variable/FormPageActions.php b/dev/tests/functional/tests/app/Magento/Core/Test/Block/Adminhtml/System/Variable/FormPageActions.php
index 2a674959d152c954a32a56996c54b12415da4eb6..719bbdc16f03f16378ff08938e13ed34cd02de79 100644
--- a/dev/tests/functional/tests/app/Magento/Core/Test/Block/Adminhtml/System/Variable/FormPageActions.php
+++ b/dev/tests/functional/tests/app/Magento/Core/Test/Block/Adminhtml/System/Variable/FormPageActions.php
@@ -7,7 +7,7 @@
 namespace Magento\Core\Test\Block\Adminhtml\System\Variable;
 
 use Magento\Backend\Test\Block\FormPageActions as AbstractFormPageActions;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class FormPageActions
@@ -41,7 +41,7 @@ class FormPageActions extends AbstractFormPageActions
      *
      * @param string $storeName
      * @throws \Exception
-     * @return void|bool
+     * @return null|bool
      */
     public function selectStoreView($storeName)
     {
@@ -57,6 +57,8 @@ class FormPageActions extends AbstractFormPageActions
         } else {
             throw new \Exception('Store View with name \'' . $storeName . '\' is not visible!');
         }
-        $this->_rootElement->acceptAlert();
+        $this->browser->acceptAlert();
+
+        return null;
     }
 }
diff --git a/dev/tests/functional/tests/app/Magento/Core/Test/Block/Messages.php b/dev/tests/functional/tests/app/Magento/Core/Test/Block/Messages.php
index c92ef1060d8604452f5363faa8bf6be5c7385984..c90426413c9254fe321c1ef6adb43ce78cb6b946 100644
--- a/dev/tests/functional/tests/app/Magento/Core/Test/Block/Messages.php
+++ b/dev/tests/functional/tests/app/Magento/Core/Test/Block/Messages.php
@@ -6,8 +6,8 @@
 
 namespace Magento\Core\Test\Block;
 
-use Mtf\Block\Block;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Global messages block
@@ -68,7 +68,7 @@ class Messages extends Block
     public function getSuccessMessages()
     {
         $this->waitForElementVisible($this->successMessage);
-        $elements = $this->_rootElement->find($this->successMessage)->getElements();
+        $elements = $this->_rootElement->getElements($this->successMessage);
 
         $messages = [];
         foreach ($elements as $key => $element) {
diff --git a/dev/tests/functional/tests/app/Magento/Core/Test/Constraint/AssertCustomVariableForm.php b/dev/tests/functional/tests/app/Magento/Core/Test/Constraint/AssertCustomVariableForm.php
index b8fe842e0753b289ab1f252de99edb6a2e785f75..331d1d315840e294ee5bec85a8bc8b9a6ffd6700 100644
--- a/dev/tests/functional/tests/app/Magento/Core/Test/Constraint/AssertCustomVariableForm.php
+++ b/dev/tests/functional/tests/app/Magento/Core/Test/Constraint/AssertCustomVariableForm.php
@@ -10,7 +10,7 @@ use Magento\Core\Test\Fixture\SystemVariable;
 use Magento\Core\Test\Page\Adminhtml\SystemVariableIndex;
 use Magento\Core\Test\Page\Adminhtml\SystemVariableNew;
 use Magento\Store\Test\Fixture\Store;
-use Mtf\Constraint\AbstractAssertForm;
+use Magento\Mtf\Constraint\AbstractAssertForm;
 
 /**
  * Class AssertCustomVariableForm
diff --git a/dev/tests/functional/tests/app/Magento/Core/Test/Constraint/AssertCustomVariableInGrid.php b/dev/tests/functional/tests/app/Magento/Core/Test/Constraint/AssertCustomVariableInGrid.php
index 4a1ea3bf6f16549cf72c26e6c7b37e00c412ad2f..399d1cf657923db16ec3becb8a128ffbb2dfaf2a 100644
--- a/dev/tests/functional/tests/app/Magento/Core/Test/Constraint/AssertCustomVariableInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Core/Test/Constraint/AssertCustomVariableInGrid.php
@@ -8,7 +8,7 @@ namespace Magento\Core\Test\Constraint;
 
 use Magento\Core\Test\Fixture\SystemVariable;
 use Magento\Core\Test\Page\Adminhtml\SystemVariableIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertCustomVariableInGrid
diff --git a/dev/tests/functional/tests/app/Magento/Core/Test/Constraint/AssertCustomVariableInPage.php b/dev/tests/functional/tests/app/Magento/Core/Test/Constraint/AssertCustomVariableInPage.php
index 787d76fe15b2d6e2aa1868ca9f9bd76ef0605fa7..ea924d0c9bbb653a6a5ff736b2bb416d009e61f6 100644
--- a/dev/tests/functional/tests/app/Magento/Core/Test/Constraint/AssertCustomVariableInPage.php
+++ b/dev/tests/functional/tests/app/Magento/Core/Test/Constraint/AssertCustomVariableInPage.php
@@ -9,9 +9,9 @@ namespace Magento\Core\Test\Constraint;
 use Magento\Cms\Test\Page\CmsIndex;
 use Magento\Core\Test\Fixture\SystemVariable;
 use Magento\Store\Test\Fixture\Store;
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\FixtureFactory;
 
 /**
  * Class AssertCustomVariableInPage
@@ -30,7 +30,7 @@ class AssertCustomVariableInPage extends AbstractConstraint
      * @param CmsIndex $cmsIndex
      * @param SystemVariable $variable
      * @param FixtureFactory $fixtureFactory
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @param Store $storeOrigin
      * @param SystemVariable $customVariableOrigin
      * @return void
@@ -40,7 +40,7 @@ class AssertCustomVariableInPage extends AbstractConstraint
         CmsIndex $cmsIndex,
         SystemVariable $variable,
         FixtureFactory $fixtureFactory,
-        Browser $browser,
+        BrowserInterface $browser,
         Store $storeOrigin = null,
         SystemVariable $customVariableOrigin = null
     ) {
diff --git a/dev/tests/functional/tests/app/Magento/Core/Test/Constraint/AssertCustomVariableNotInCmsPageForm.php b/dev/tests/functional/tests/app/Magento/Core/Test/Constraint/AssertCustomVariableNotInCmsPageForm.php
index e3909d23062cbc465de2a8a8341dcfc580b78fac..ba47a15cbc34d81dc85837eb1ea3fe337aa6148d 100644
--- a/dev/tests/functional/tests/app/Magento/Core/Test/Constraint/AssertCustomVariableNotInCmsPageForm.php
+++ b/dev/tests/functional/tests/app/Magento/Core/Test/Constraint/AssertCustomVariableNotInCmsPageForm.php
@@ -8,7 +8,7 @@ namespace Magento\Core\Test\Constraint;
 
 use Magento\Cms\Test\Page\Adminhtml\CmsNew;
 use Magento\Core\Test\Fixture\SystemVariable;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertCustomVariableNotInCmsPageForm
diff --git a/dev/tests/functional/tests/app/Magento/Core/Test/Constraint/AssertCustomVariableNotInGrid.php b/dev/tests/functional/tests/app/Magento/Core/Test/Constraint/AssertCustomVariableNotInGrid.php
index ba1bf51c401e1f5e1d6b15394d550c6ecf886e6e..1f7b0a5f6e936f5cddc96bb1a589ab588e87a7aa 100644
--- a/dev/tests/functional/tests/app/Magento/Core/Test/Constraint/AssertCustomVariableNotInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Core/Test/Constraint/AssertCustomVariableNotInGrid.php
@@ -8,7 +8,7 @@ namespace Magento\Core\Test\Constraint;
 
 use Magento\Core\Test\Fixture\SystemVariable;
 use Magento\Core\Test\Page\Adminhtml\SystemVariableIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertCustomVariableNotInGrid
diff --git a/dev/tests/functional/tests/app/Magento/Core/Test/Constraint/AssertCustomVariableSuccessDeleteMessage.php b/dev/tests/functional/tests/app/Magento/Core/Test/Constraint/AssertCustomVariableSuccessDeleteMessage.php
index ea8310074348001ab0779f14b730da3b93c2740f..f25ff181eb14ab712a860775463ac6765aed7053 100644
--- a/dev/tests/functional/tests/app/Magento/Core/Test/Constraint/AssertCustomVariableSuccessDeleteMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Core/Test/Constraint/AssertCustomVariableSuccessDeleteMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Core\Test\Constraint;
 
 use Magento\Core\Test\Page\Adminhtml\SystemVariableIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertCustomVariableSuccessDeleteMessage
diff --git a/dev/tests/functional/tests/app/Magento/Core/Test/Constraint/AssertCustomVariableSuccessSaveMessage.php b/dev/tests/functional/tests/app/Magento/Core/Test/Constraint/AssertCustomVariableSuccessSaveMessage.php
index 56ca2bf06616c37dca694201266a5b753271f1e0..a6107f10dd3cb1b03b906cd0e9fb6470fea13ac2 100644
--- a/dev/tests/functional/tests/app/Magento/Core/Test/Constraint/AssertCustomVariableSuccessSaveMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Core/Test/Constraint/AssertCustomVariableSuccessSaveMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Core\Test\Constraint;
 
 use Magento\Core\Test\Page\Adminhtml\SystemVariableIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertCustomVariableSuccessSaveMessage
diff --git a/dev/tests/functional/tests/app/Magento/Core/Test/Fixture/ConfigData.php b/dev/tests/functional/tests/app/Magento/Core/Test/Fixture/ConfigData.php
index ef5afdf6641f29284d6c840d64f82a3dda540f59..0dd119e2d360536ac7e540ccb2f1d6822ebe9b11 100644
--- a/dev/tests/functional/tests/app/Magento/Core/Test/Fixture/ConfigData.php
+++ b/dev/tests/functional/tests/app/Magento/Core/Test/Fixture/ConfigData.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Core\Test\Fixture;
 
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Class ConfigData
diff --git a/dev/tests/functional/tests/app/Magento/Core/Test/Fixture/SystemVariable.php b/dev/tests/functional/tests/app/Magento/Core/Test/Fixture/SystemVariable.php
index 8671a384d5ff1cb011f7b9ec4838e68053545f2f..5dc92e19efbd6b0001e37691c8cbc4655337f256 100644
--- a/dev/tests/functional/tests/app/Magento/Core/Test/Fixture/SystemVariable.php
+++ b/dev/tests/functional/tests/app/Magento/Core/Test/Fixture/SystemVariable.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Core\Test\Fixture;
 
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Class SystemVariable
diff --git a/dev/tests/functional/tests/app/Magento/Core/Test/Handler/ConfigData/ConfigDataInterface.php b/dev/tests/functional/tests/app/Magento/Core/Test/Handler/ConfigData/ConfigDataInterface.php
index 46e280e3a7bfb8a4acaf6ca648b7d485e1f339ad..7189e812293c5c57bc88b57a542b68f4157ab533 100644
--- a/dev/tests/functional/tests/app/Magento/Core/Test/Handler/ConfigData/ConfigDataInterface.php
+++ b/dev/tests/functional/tests/app/Magento/Core/Test/Handler/ConfigData/ConfigDataInterface.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Core\Test\Handler\ConfigData;
 
-use Mtf\Handler\HandlerInterface;
+use Magento\Mtf\Handler\HandlerInterface;
 
 /**
  * Interface ConfigDataInterface
diff --git a/dev/tests/functional/tests/app/Magento/Core/Test/Handler/ConfigData/Curl.php b/dev/tests/functional/tests/app/Magento/Core/Test/Handler/ConfigData/Curl.php
index 3f17403f0c09bb7bf556bcca994c6f15aaef9dc6..f2168174fcc827aa57ea68c77f01ca1fe21d7444 100644
--- a/dev/tests/functional/tests/app/Magento/Core/Test/Handler/ConfigData/Curl.php
+++ b/dev/tests/functional/tests/app/Magento/Core/Test/Handler/ConfigData/Curl.php
@@ -6,12 +6,12 @@
 
 namespace Magento\Core\Test\Handler\ConfigData;
 
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Handler\Curl as AbstractCurl;
-use Mtf\System\Config;
-use Mtf\Util\Protocol\CurlInterface;
-use Mtf\Util\Protocol\CurlTransport;
-use Mtf\Util\Protocol\CurlTransport\BackendDecorator;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Handler\Curl as AbstractCurl;
+use Magento\Mtf\System\Config;
+use Magento\Mtf\Util\Protocol\CurlInterface;
+use Magento\Mtf\Util\Protocol\CurlTransport;
+use Magento\Mtf\Util\Protocol\CurlTransport\BackendDecorator;
 
 /**
  * Class Curl
diff --git a/dev/tests/functional/tests/app/Magento/Core/Test/Handler/SystemVariable/Curl.php b/dev/tests/functional/tests/app/Magento/Core/Test/Handler/SystemVariable/Curl.php
index 43eaa3b5902aec02954857135255e6d5fcbfe188..696d8aca6f0a0cef69d8df72e1de101f1436ed7c 100644
--- a/dev/tests/functional/tests/app/Magento/Core/Test/Handler/SystemVariable/Curl.php
+++ b/dev/tests/functional/tests/app/Magento/Core/Test/Handler/SystemVariable/Curl.php
@@ -6,12 +6,12 @@
 
 namespace Magento\Core\Test\Handler\SystemVariable;
 
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Handler\Curl as AbstractCurl;
-use Mtf\System\Config;
-use Mtf\Util\Protocol\CurlInterface;
-use Mtf\Util\Protocol\CurlTransport;
-use Mtf\Util\Protocol\CurlTransport\BackendDecorator;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Handler\Curl as AbstractCurl;
+use Magento\Mtf\System\Config;
+use Magento\Mtf\Util\Protocol\CurlInterface;
+use Magento\Mtf\Util\Protocol\CurlTransport;
+use Magento\Mtf\Util\Protocol\CurlTransport\BackendDecorator;
 
 /**
  * Class Curl
diff --git a/dev/tests/functional/tests/app/Magento/Core/Test/Handler/SystemVariable/SystemVariableInterface.php b/dev/tests/functional/tests/app/Magento/Core/Test/Handler/SystemVariable/SystemVariableInterface.php
index 03b49763dd3fdf79644101256726169f81a37ad4..342213d9c6141b6082aaf07bbc8f35101186b0ac 100644
--- a/dev/tests/functional/tests/app/Magento/Core/Test/Handler/SystemVariable/SystemVariableInterface.php
+++ b/dev/tests/functional/tests/app/Magento/Core/Test/Handler/SystemVariable/SystemVariableInterface.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Core\Test\Handler\SystemVariable;
 
-use Mtf\Handler\HandlerInterface;
+use Magento\Mtf\Handler\HandlerInterface;
 
 /**
  * Interface SystemVariableInterface
diff --git a/dev/tests/functional/tests/app/Magento/Core/Test/Repository/SystemVariable.php b/dev/tests/functional/tests/app/Magento/Core/Test/Repository/SystemVariable.php
index 330590dcb95a49a210cdb1eb81a8d936f3cb5112..4135d0431d54d8786026f075280b0fe88a69e653 100644
--- a/dev/tests/functional/tests/app/Magento/Core/Test/Repository/SystemVariable.php
+++ b/dev/tests/functional/tests/app/Magento/Core/Test/Repository/SystemVariable.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Core\Test\Repository;
 
-use Mtf\Repository\AbstractRepository;
+use Magento\Mtf\Repository\AbstractRepository;
 
 /**
  * Class SystemVariable
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Block/Account/AddressesAdditional.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Block/Account/AddressesAdditional.php
index 809b7ad1d5eef36221a27a6e822e0866d7514c5c..36c96877890735d281c7ecc87b8204ebdf628b76 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Block/Account/AddressesAdditional.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Block/Account/AddressesAdditional.php
@@ -7,8 +7,8 @@
 namespace Magento\Customer\Test\Block\Account;
 
 use Magento\Customer\Test\Fixture\AddressInjectable;
-use Mtf\Block\Block;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class AddressesAdditional
@@ -47,7 +47,7 @@ class AddressesAdditional extends Block
     {
         $this->_rootElement->find(sprintf($this->addressSelector, $address->getStreet()), Locator::SELECTOR_XPATH)
             ->find($this->deleteAddressLink)->click();
-        $this->_rootElement->acceptAlert();
+        $this->browser->acceptAlert();
     }
 
     /**
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Block/Account/AddressesDefault.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Block/Account/AddressesDefault.php
index 4329f44c941f8b5762f5176a58f39cdf2924ca75..61b9e79d94d1fe9bfc187083cfdc74f22a772f4a 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Block/Account/AddressesDefault.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Block/Account/AddressesDefault.php
@@ -6,8 +6,8 @@
  */
 namespace Magento\Customer\Test\Block\Account;
 
-use Mtf\Block\Block;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Addresses default block
@@ -20,7 +20,7 @@ class AddressesDefault extends Block
      *
      * @var string
      */
-    protected $changeBillingAddressSelector = '.box-address-billing a';
+    protected $changeBillingAddressSelector = '.box-billing-address a';
 
     /**
      * Click on address book menu item
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Block/Account/Dashboard/Address.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Block/Account/Dashboard/Address.php
index 8a765b05c4004025993e9ef8aafc55e86d802771..d9210fe4c9dd462cc702a58a3ed2920c0cf09a1b 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Block/Account/Dashboard/Address.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Block/Account/Dashboard/Address.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Customer\Test\Block\Account\Dashboard;
 
-use Mtf\Block\Block;
+use Magento\Mtf\Block\Block;
 
 /**
  * Class Address
@@ -26,14 +26,14 @@ class Address extends Block
      *
      * @var string
      */
-    protected $shippingAddressBlock = '.box-address-shipping';
+    protected $shippingAddressBlock = '.box-shipping-address';
 
     /**
      * Billing address block selector
      *
      * @var string
      */
-    protected $billingAddressBlock = '.box-address-billing';
+    protected $billingAddressBlock = '.box-billing-address';
 
     /**
      * Edit Default Billing Address
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Block/Account/Dashboard/Info.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Block/Account/Dashboard/Info.php
index 80775eacd6055e83cc3eebaa150423eed0450540..752cf03df70ab1684767459e1cfca477cf3fd6f8 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Block/Account/Dashboard/Info.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Block/Account/Dashboard/Info.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Customer\Test\Block\Account\Dashboard;
 
-use Mtf\Block\Block;
+use Magento\Mtf\Block\Block;
 
 /**
  * Class Info
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Block/Account/Links.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Block/Account/Links.php
index 3cd43f6a338e64b79516b86d2efce39dea26cace..2f3745944d452571bc1c8081623033d35c38bdd2 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Block/Account/Links.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Block/Account/Links.php
@@ -6,8 +6,8 @@
 
 namespace Magento\Customer\Test\Block\Account;
 
-use Mtf\Block\Block;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class Links
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Block/Address/Edit.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Block/Address/Edit.php
index 121323247c3544889c34d4d25f02b96d192b27c1..d5278db123f9a5d6306b4ed916e3446ff63162f4 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Block/Address/Edit.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Block/Address/Edit.php
@@ -7,8 +7,8 @@
 namespace Magento\Customer\Test\Block\Address;
 
 use Magento\Customer\Test\Fixture\Address;
-use Mtf\Block\Form;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Form;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class Edit
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Block/Adminhtml/Edit/CustomerForm.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Block/Adminhtml/Edit/CustomerForm.php
index 81c1c62cebfde10ee70d4007054adf8946dcf758..cdf70642bbd4a707fb358cd5ccb08de1ee8d2045 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Block/Adminhtml/Edit/CustomerForm.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Block/Adminhtml/Edit/CustomerForm.php
@@ -7,8 +7,8 @@
 namespace Magento\Customer\Test\Block\Adminhtml\Edit;
 
 use Magento\Backend\Test\Block\Widget\FormTabs;
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Class CustomerForm
@@ -16,6 +16,20 @@ use Mtf\Fixture\InjectableFixture;
  */
 class CustomerForm extends FormTabs
 {
+    /**
+     * Load spinner
+     *
+     * @var string
+     */
+    protected $spinner = '[data-role="spinner"]';
+
+    /**
+     * Customer form to load
+     *
+     * @var string
+     */
+    protected $activeFormTab = '.entry-edit.form-inline [data-bind="visible: active"]:not([style="display: none;"])';
+
     /**
      * Fill Customer forms on tabs by customer, addresses data
      *
@@ -26,7 +40,7 @@ class CustomerForm extends FormTabs
     public function fillCustomer(FixtureInterface $customer, $address = null)
     {
         $isHasData = ($customer instanceof InjectableFixture) ? $customer->hasData() : true;
-        $this->waitBeforeFill();
+        $this->waitForm();
         if ($isHasData) {
             parent::fill($customer);
         }
@@ -48,7 +62,7 @@ class CustomerForm extends FormTabs
     public function updateCustomer(FixtureInterface $customer, $address = null)
     {
         $isHasData = ($customer instanceof InjectableFixture) ? $customer->hasData() : true;
-        $this->waitBeforeFill();
+        $this->waitForm();
         if ($isHasData) {
             parent::fill($customer);
         }
@@ -69,6 +83,7 @@ class CustomerForm extends FormTabs
      */
     public function getDataCustomer(FixtureInterface $customer, $address = null)
     {
+        $this->waitForm();
         $data = ['customer' => $customer->hasData() ? parent::getData($customer) : parent::getData()];
 
         if (null !== $address) {
@@ -85,8 +100,9 @@ class CustomerForm extends FormTabs
      *
      * @return void
      */
-    protected function waitBeforeFill()
+    protected function waitForm()
     {
-        usleep(500000);
+        $this->waitForElementNotVisible($this->spinner);
+        $this->waitForElementVisible($this->activeFormTab);
     }
 }
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Block/Adminhtml/Edit/Tab/Addresses.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Block/Adminhtml/Edit/Tab/Addresses.php
index be673d63459615fabeb22b2b567b10faafdecd08..864fbb11f815d45dbb2247475908e2c6f466e254 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Block/Adminhtml/Edit/Tab/Addresses.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Block/Adminhtml/Edit/Tab/Addresses.php
@@ -8,9 +8,10 @@ namespace Magento\Customer\Test\Block\Adminhtml\Edit\Tab;
 
 use Magento\Backend\Test\Block\Widget\Tab;
 use Magento\Customer\Test\Fixture\AddressInjectable;
-use Mtf\Client\Element;
-use Mtf\Client\Element\Locator;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Client\Element\SimpleElement;
+use Magento\Mtf\Client\Element;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class Addresses
@@ -146,12 +147,12 @@ class Addresses extends Tab
      * Get data to fields on tab
      *
      * @param array|null $fields
-     * @param Element|null $element
+     * @param SimpleElement|null $element
      * @return array
      *
      * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
-    public function getDataFormTab($fields = null, Element $element = null)
+    public function getDataFormTab($fields = null, SimpleElement $element = null)
     {
         /* Skip get data for standard method. Use getDataAddresses. */
         return [];
@@ -196,6 +197,7 @@ class Addresses extends Tab
             sprintf($this->customerAddress, $addressNumber),
             Locator::SELECTOR_XPATH
         );
+
         return $addressTab->isVisible();
     }
 }
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Block/Form/CustomerForm.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Block/Form/CustomerForm.php
index eaadb4876f435aedd5baf0e0e2d372ddde8b7202..21b2410a61593fc8829bc3c81ffb77b331ba148f 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Block/Form/CustomerForm.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Block/Form/CustomerForm.php
@@ -6,7 +6,9 @@
 
 namespace Magento\Customer\Test\Block\Form;
 
-use Mtf\Block\Form;
+use Magento\Mtf\Block\Form;
+use Magento\Mtf\Client\Element\SimpleElement;
+use Magento\Mtf\Fixture\FixtureInterface;
 use Magento\Customer\Test\Fixture\CustomerInjectable;
 
 /**
@@ -45,6 +47,21 @@ class CustomerForm extends Form
         $this->_rootElement->find($this->saveButton)->click();
     }
 
+    /**
+     * Fill the customer data
+     *
+     * @param FixtureInterface $customer
+     * @param SimpleElement|null $element
+     * @return $this
+     */
+    public function fill(FixtureInterface $customer, SimpleElement $element = null)
+    {
+        /** @var CustomerInjectable $customer */
+        if ($customer->hasData()) {
+            return parent::fill($customer, $element);
+        }
+    }
+
     /**
      * Get all error validation messages for fields.
      *
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Block/Form/ForgotPassword.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Block/Form/ForgotPassword.php
index 3e871afd22a50a3755657a5e72546e29f5775979..b8a9dc7afbdaf6038c2dd52e534931b86db627c4 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Block/Form/ForgotPassword.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Block/Form/ForgotPassword.php
@@ -7,8 +7,8 @@
 namespace Magento\Customer\Test\Block\Form;
 
 use Magento\Customer\Test\Fixture\Customer;
-use Mtf\Block\Form;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Form;
+use Magento\Mtf\Client\Locator;
 
 /**
  */
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Block/Form/Login.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Block/Form/Login.php
index a2b5b5a6e357fb68c1cc2e3cc64a39d59aeef3ce..2b009be57196041cf519be1179ac42721123c99f 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Block/Form/Login.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Block/Form/Login.php
@@ -6,9 +6,9 @@
 
 namespace Magento\Customer\Test\Block\Form;
 
-use Mtf\Block\Form;
-use Mtf\Client\Element\Locator;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Block\Form;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class Login
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Block/Form/Register.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Block/Form/Register.php
index a3afdead31092538d9ca58478345fdffbb27eb1d..d5de5868dba76339fe1fc00741d348f9bf65c3d1 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Block/Form/Register.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Block/Form/Register.php
@@ -6,9 +6,9 @@
 
 namespace Magento\Customer\Test\Block\Form;
 
-use Mtf\Block\Form;
-use Mtf\Client\Element\Locator;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Block\Form;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class Register
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertAddressDeletedBackend.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertAddressDeletedBackend.php
index ab8cdd7a09d54667b8ba15358664a75fe60cdc5f..6259e116b41a252db5720f27971fa4287dcb241d 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertAddressDeletedBackend.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertAddressDeletedBackend.php
@@ -10,7 +10,7 @@ use Magento\Customer\Test\Fixture\AddressInjectable;
 use Magento\Customer\Test\Fixture\CustomerInjectable;
 use Magento\Sales\Test\Page\Adminhtml\OrderCreateIndex;
 use Magento\Sales\Test\Page\Adminhtml\OrderIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertAddressDeletedBackend
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertAddressDeletedFrontend.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertAddressDeletedFrontend.php
index 59d7c65a957b095ee012479b716feae80270597f..c6cbb07fb13f853d72adc88afe35ae7b53b60128 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertAddressDeletedFrontend.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertAddressDeletedFrontend.php
@@ -7,7 +7,7 @@
 namespace Magento\Customer\Test\Constraint;
 
 use Magento\Customer\Test\Page\CustomerAccountIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertAddressDeletedFrontend
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertChangePasswordFailMessage.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertChangePasswordFailMessage.php
index 78d026849c1c65e5248c77c9dd702438db6d5bf6..8c27d596f972de51eea470cfe2a896a674884ba8 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertChangePasswordFailMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertChangePasswordFailMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Customer\Test\Constraint;
 
 use Magento\Customer\Test\Page\CustomerAccountEdit;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertChangePasswordFailMessage
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerAddressSuccessSaveMessage.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerAddressSuccessSaveMessage.php
index 1c20d0279f4f6930ef7b59b7980e90070b9030eb..ab7ac43f7956c3ce63a90deb354fda0552e03f4d 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerAddressSuccessSaveMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerAddressSuccessSaveMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Customer\Test\Constraint;
 
 use Magento\Customer\Test\Page\CustomerAccountIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertCustomerAddressSuccessSaveMessage
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerDefaultAddresses.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerDefaultAddresses.php
index e930466443b6295c3144ddcc9515bbfa808c62a5..3fb0c59976d8e2fdb7d0f8faff7211b8c0dfa7a3 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerDefaultAddresses.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerDefaultAddresses.php
@@ -8,7 +8,7 @@ namespace Magento\Customer\Test\Constraint;
 
 use Magento\Customer\Test\Fixture\AddressInjectable;
 use Magento\Customer\Test\Page\CustomerAccountIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertCustomerDefaultAddresses
@@ -95,7 +95,9 @@ class AssertCustomerDefaultAddresses extends AbstractConstraint
         $pattern[] = $address->getCity() . ", " . $region . ", " . $address->getPostcode();
         $pattern[] = $address->getCountryId();
         $pattern[] = "T: " . $address->getTelephone();
-        $pattern[] = "F: " . $address->getFax();
+        if ($address->hasData('fax')) {
+            $pattern[] = "F: " . $address->getFax();
+        }
         return $pattern;
     }
 }
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerFailRegisterMessage.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerFailRegisterMessage.php
index c628151dc7688bdedfd97aaa3d6292a5f3b34fd8..36fe9c355c17b72fdf9fd69446753ab5987b9e39 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerFailRegisterMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerFailRegisterMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Customer\Test\Constraint;
 
 use Magento\Customer\Test\Page\CustomerAccountCreate;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertCustomerFailRegisterMessage
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerForm.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerForm.php
index de31e2f323f2db4386134c74c487c43b2c9c9d08..0c55f3cd04a0641c3a4e1df340a73ebc3b155fb4 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerForm.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerForm.php
@@ -10,7 +10,7 @@ use Magento\Customer\Test\Fixture\AddressInjectable;
 use Magento\Customer\Test\Fixture\CustomerInjectable;
 use Magento\Customer\Test\Page\Adminhtml\CustomerIndex;
 use Magento\Customer\Test\Page\Adminhtml\CustomerIndexEdit;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertCustomerForm
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerGroupAlreadyExists.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerGroupAlreadyExists.php
index 16c8aae67ba77c90f4ea313cca5755d89d580896..8307c220fe220799e7c5ec9286f6506fbef8a4c5 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerGroupAlreadyExists.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerGroupAlreadyExists.php
@@ -7,7 +7,7 @@
 namespace Magento\Customer\Test\Constraint;
 
 use Magento\Customer\Test\Page\Adminhtml\CustomerGroupNew;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertCustomerGroupAlreadyExists
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerGroupForm.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerGroupForm.php
index f868758d3ecb0da9408339dac49d486b25dd1d66..6cc186ea9e5e6782970f7839250e3fc148a0e0bd 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerGroupForm.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerGroupForm.php
@@ -9,7 +9,7 @@ namespace Magento\Customer\Test\Constraint;
 use Magento\Customer\Test\Fixture\CustomerGroupInjectable;
 use Magento\Customer\Test\Page\Adminhtml\CustomerGroupIndex;
 use Magento\Customer\Test\Page\Adminhtml\CustomerGroupNew;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertCustomerGroupForm
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerGroupInGrid.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerGroupInGrid.php
index 6d51e076e3805a8e307d11c2db20bb0bd5b38ead..1d938173f9ec89dd7a84cc69b8a42746721da49c 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerGroupInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerGroupInGrid.php
@@ -8,7 +8,7 @@ namespace Magento\Customer\Test\Constraint;
 
 use Magento\Customer\Test\Fixture\CustomerGroupInjectable;
 use Magento\Customer\Test\Page\Adminhtml\CustomerGroupIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertCustomerGroupInGrid
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerGroupNotInGrid.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerGroupNotInGrid.php
index 93e5357f6f90bfa204fe00b529d5d58fda1a83b1..cabf657058a48bbd89c09f448d23b086a48b7460 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerGroupNotInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerGroupNotInGrid.php
@@ -8,7 +8,7 @@ namespace Magento\Customer\Test\Constraint;
 
 use Magento\Customer\Test\Fixture\CustomerGroupInjectable;
 use Magento\Customer\Test\Page\Adminhtml\CustomerGroupIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertCustomerGroupNotInGrid
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerGroupOnCustomerForm.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerGroupOnCustomerForm.php
index 784167e2aeafa4d87f37ef7d507a1e7a895ec134..10d3c750d07e3d1d4093cadc8ffcc9c8232cbcf9 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerGroupOnCustomerForm.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerGroupOnCustomerForm.php
@@ -10,8 +10,8 @@ use Magento\Customer\Test\Fixture\CustomerGroupInjectable;
 use Magento\Customer\Test\Fixture\CustomerInjectable;
 use Magento\Customer\Test\Page\Adminhtml\CustomerIndex;
 use Magento\Customer\Test\Page\Adminhtml\CustomerIndexNew;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\FixtureFactory;
 
 /**
  * Class AssertCustomerGroupOnCustomerForm
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerGroupSuccessDeleteMessage.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerGroupSuccessDeleteMessage.php
index 469bb37c53fd159bf266e56e22b47a3dccb17fdc..311a8e0bafbc7cccaa36a0b8c5132d359cb59f7e 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerGroupSuccessDeleteMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerGroupSuccessDeleteMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Customer\Test\Constraint;
 
 use Magento\Customer\Test\Page\Adminhtml\CustomerGroupIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertCustomerGroupSuccessDeleteMessage
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerGroupSuccessSaveMessage.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerGroupSuccessSaveMessage.php
index 4876b0d1bd3285c64476a76f4f4a6de7d016c650..6c32ceb281dc2c2c16084ca2cce279066432bd78 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerGroupSuccessSaveMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerGroupSuccessSaveMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Customer\Test\Constraint;
 
 use Magento\Customer\Test\Page\Adminhtml\CustomerGroupIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertCustomerGroupSuccessSaveMessage
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerInGrid.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerInGrid.php
index 56c20f0a97eb2387ec8dcac5bd3397c915d992fa..569e949e9170a2b086008fb3a84053ba171ae7d0 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerInGrid.php
@@ -8,7 +8,7 @@ namespace Magento\Customer\Test\Constraint;
 
 use Magento\Customer\Test\Fixture\CustomerInjectable;
 use Magento\Customer\Test\Page\Adminhtml\CustomerIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertCustomerInGrid
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerInfoSuccessSavedMessage.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerInfoSuccessSavedMessage.php
index 068def78da9ff50bf2e0d6196aa76f6ae2e6cdc1..6f9d6d9c144ef294d321bbc1e42b06847710e4e6 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerInfoSuccessSavedMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerInfoSuccessSavedMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Customer\Test\Constraint;
 
 use Magento\Customer\Test\Page\CustomerAccountIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertCustomerInfoSuccessSavedMessage
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerInvalidEmail.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerInvalidEmail.php
index 83cc134fe2ab0eeae84d23576109871c319b4b6f..63c178507c63c7601f39fb59a995019acb6199be 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerInvalidEmail.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerInvalidEmail.php
@@ -8,7 +8,7 @@ namespace Magento\Customer\Test\Constraint;
 
 use Magento\Customer\Test\Fixture\CustomerInjectable;
 use Magento\Customer\Test\Page\Adminhtml\CustomerIndexNew;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertCustomerInvalidEmail
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerMassDeleteInGrid.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerMassDeleteInGrid.php
index 9e8c1e10099cf2f9cc57032978204ae69ee3f8be..f309e6ac9db5c67187fa266e7664253ec8dc3676 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerMassDeleteInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerMassDeleteInGrid.php
@@ -8,7 +8,7 @@ namespace Magento\Customer\Test\Constraint;
 
 use Magento\Customer\Test\Fixture\CustomerInjectable;
 use Magento\Customer\Test\Page\Adminhtml\CustomerIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertCustomerMassDeleteInGrid
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerMassDeleteNotInGrid.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerMassDeleteNotInGrid.php
index 163ffab9417b3828dc7d6126cf16ae72a7219985..c2bbd18879b42b3aa8003d93a4f0abff6821da00 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerMassDeleteNotInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerMassDeleteNotInGrid.php
@@ -8,7 +8,7 @@ namespace Magento\Customer\Test\Constraint;
 
 use Magento\Customer\Test\Fixture\CustomerInjectable;
 use Magento\Customer\Test\Page\Adminhtml\CustomerIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertCustomerMassDeleteNotInGrid
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerMassDeleteSuccessMessage.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerMassDeleteSuccessMessage.php
index 0ca2636625327a3832c0973f9001360936afbe3f..77e7ada00429e917fc98e2b59df09d123f154ed8 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerMassDeleteSuccessMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerMassDeleteSuccessMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Customer\Test\Constraint;
 
 use Magento\Customer\Test\Page\Adminhtml\CustomerIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertCustomerMassDeleteSuccessMessage
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerNotInGrid.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerNotInGrid.php
index 42ed108c63b9365c8a0427e0bc9d5965219ff9b1..69104a54536b321bcfe7cf0d284d88d8cbf28c46 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerNotInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerNotInGrid.php
@@ -8,7 +8,7 @@ namespace Magento\Customer\Test\Constraint;
 
 use Magento\Customer\Test\Fixture\CustomerInjectable;
 use Magento\Customer\Test\Page\Adminhtml\CustomerIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertCustomerNotInGrid
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerPasswordChanged.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerPasswordChanged.php
index 3312323a13ecb6144635641f22a8ef6979520f64..67e2021c36e6a69dc7657c28274d1dbeb5a1361c 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerPasswordChanged.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerPasswordChanged.php
@@ -6,11 +6,10 @@
 
 namespace Magento\Customer\Test\Constraint;
 
-use Magento\Cms\Test\Page\CmsIndex;
 use Magento\Customer\Test\Fixture\CustomerInjectable;
 use Magento\Customer\Test\Page\CustomerAccountIndex;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\FixtureFactory;
 
 /**
  * Check that login again to frontend with new password was success.
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerRedirectToDashboard.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerRedirectToDashboard.php
new file mode 100644
index 0000000000000000000000000000000000000000..80a41da9d27a05f19a04ff9736bdac0074f1afe6
--- /dev/null
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerRedirectToDashboard.php
@@ -0,0 +1,53 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+
+namespace Magento\Customer\Test\Constraint;
+
+use Magento\Customer\Test\Page\CustomerAccountIndex;
+use Magento\Mtf\Constraint\AbstractConstraint;
+
+/**
+ * Check that after clicking to "Create account" button customer redirected to Dashboard.
+ */
+class AssertCustomerRedirectToDashboard extends AbstractConstraint
+{
+    /**
+     * Dashboard Message on account index page.
+     */
+    const DASHBOARD_MESSAGE = 'My Dashboard';
+
+    /**
+     * Constraint severeness
+     *
+     * @var string
+     */
+    protected $severeness = 'low';
+
+    /**
+     * Assert that after clicking to "Create account" button customer redirected to Dashboard.
+     *
+     * @param CustomerAccountIndex $accountIndexPage
+     * @return void
+     */
+    public function processAssert(CustomerAccountIndex $accountIndexPage)
+    {
+        \PHPUnit_Framework_Assert::assertEquals(
+            self::DASHBOARD_MESSAGE,
+            $accountIndexPage->getTitleBlock()->getTitle(),
+            'Wrong dashboard title is displayed.'
+        );
+    }
+
+    /**
+     * Text success save message is displayed.
+     *
+     * @return string
+     */
+    public function toString()
+    {
+        return 'Customer is redirected to Dashboard after registration.';
+    }
+}
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerSuccessDeleteMessage.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerSuccessDeleteMessage.php
index 4bc212dc9c1f250250be60befad1d4b9db0df4a2..c18809771870908fcbfb48953945c42451cf6028 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerSuccessDeleteMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerSuccessDeleteMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Customer\Test\Constraint;
 
 use Magento\Customer\Test\Page\Adminhtml\CustomerIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertCustomerSuccessDeleteMessage
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerSuccessRegisterMessage.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerSuccessRegisterMessage.php
index 4f3646e6d4a34393b4c249a359abd19d07f3bcc9..3ad80d98d85ed5a89459b2868d2e045dae98576f 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerSuccessRegisterMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerSuccessRegisterMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Customer\Test\Constraint;
 
 use Magento\Customer\Test\Page\CustomerAccountCreate;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertCustomerSuccessRegisterMessage
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerSuccessSaveMessage.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerSuccessSaveMessage.php
index c6939cb4d1a6271ebaf685e10d41f2d1f2a1ec97..198d824e70570e78d35ec2f3effd849af10ce03d 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerSuccessSaveMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertCustomerSuccessSaveMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Customer\Test\Constraint;
 
 use Magento\Customer\Test\Page\Adminhtml\CustomerIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertCustomerSuccessSaveMessage
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertMassActionSuccessUpdateMessage.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertMassActionSuccessUpdateMessage.php
index 9ac88c66c5486f2821a65e4fe2c978da256dcd3b..cdd9c6c2cd2064fe13d79d6d24c99e3135533481 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertMassActionSuccessUpdateMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertMassActionSuccessUpdateMessage.php
@@ -8,7 +8,7 @@ namespace Magento\Customer\Test\Constraint;
 
 use Magento\Customer\Test\Fixture\CustomerInjectable;
 use Magento\Customer\Test\Page\Adminhtml\CustomerIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertMassActionSuccessUpdateMessage
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertWrongPassConfirmationMessage.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertWrongPassConfirmationMessage.php
index 3deee0d1f818774d3c574ff9c368da77f159a1b0..341c4befe32eb46bc877358129a3f1986ee81f4f 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertWrongPassConfirmationMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Constraint/AssertWrongPassConfirmationMessage.php
@@ -8,7 +8,7 @@ namespace Magento\Customer\Test\Constraint;
 
 use Magento\Customer\Test\Fixture\CustomerInjectable;
 use Magento\Customer\Test\Page\CustomerAccountEdit;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Check that conformation message is present.
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Fixture/Address.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Fixture/Address.php
index 4d141c5eb60ff9dbf3eb3e606fec5f90facbc88c..3419fc5b42e85dbc05a56747275d8533b9f2c261 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Fixture/Address.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Fixture/Address.php
@@ -6,9 +6,9 @@
 
 namespace Magento\Customer\Test\Fixture;
 
-use Mtf\Factory\Factory;
-use Mtf\Fixture\DataFixture;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Factory\Factory;
+use Magento\Mtf\Fixture\DataFixture;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class Address
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Fixture/AddressBook.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Fixture/AddressBook.php
index f1e15852d1ccb9583a21a277d0df1ed386a62b19..9ef1a4ea240bb4892f10c2bcab72d77d3c420d49 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Fixture/AddressBook.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Fixture/AddressBook.php
@@ -9,10 +9,10 @@ namespace Magento\Customer\Test\Fixture;
 /**
  * Address of registered customer
  */
-class AddressBook extends \Mtf\Fixture\DataFixture
+class AddressBook extends \Magento\Mtf\Fixture\DataFixture
 {
     /**
-     * @var \Mtf\Fixture\DataFixture
+     * @var \Magento\Mtf\Fixture\DataFixture
      */
     protected $_addressFixture;
 
@@ -26,9 +26,9 @@ class AddressBook extends \Mtf\Fixture\DataFixture
     /**
      * Set address fixture
      *
-     * @param \Mtf\Fixture\DataFixture $address
+     * @param \Magento\Mtf\Fixture\DataFixture $address
      */
-    public function setAddress(\Mtf\Fixture\DataFixture $address)
+    public function setAddress(\Magento\Mtf\Fixture\DataFixture $address)
     {
         $this->_addressFixture = $address;
     }
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Fixture/AddressInjectable.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Fixture/AddressInjectable.php
index c021f8acfa48fc8ba50cfa4325c9e2e7914c2cfc..be272903ddeae9dc588845121e7303e2e172c542 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Fixture/AddressInjectable.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Fixture/AddressInjectable.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Customer\Test\Fixture;
 
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Class AddressInjectable
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Fixture/Customer.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Fixture/Customer.php
index 01e4950e494ed91e13857db5d13643173187e836..52bd27ee085e32cbbf70fa3d2c3477920d0c504b 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Fixture/Customer.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Fixture/Customer.php
@@ -6,8 +6,8 @@
 
 namespace Magento\Customer\Test\Fixture;
 
-use Mtf\Factory\Factory;
-use Mtf\Fixture\DataFixture;
+use Magento\Mtf\Factory\Factory;
+use Magento\Mtf\Fixture\DataFixture;
 
 /**
  * Class Customer
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Fixture/CustomerBackend.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Fixture/CustomerBackend.php
index 1d51c93d08a4eff949b9e6adfd81827f81090c2a..274b3d8c81f96260826437580159a3917573d7a1 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Fixture/CustomerBackend.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Fixture/CustomerBackend.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Customer\Test\Fixture;
 
-use Mtf\Factory\Factory;
+use Magento\Mtf\Factory\Factory;
 
 /**
  * Customer in Backend
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Fixture/CustomerGroup.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Fixture/CustomerGroup.php
index 5b461b44136be2fb19049a7f3b2a9676f67d067a..f905b2dca67956e704059cbf9988fbeca84f70fd 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Fixture/CustomerGroup.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Fixture/CustomerGroup.php
@@ -6,8 +6,8 @@
 
 namespace Magento\Customer\Test\Fixture;
 
-use Mtf\Factory\Factory;
-use Mtf\Fixture\DataFixture;
+use Magento\Mtf\Factory\Factory;
+use Magento\Mtf\Fixture\DataFixture;
 
 /**
  * Class Customer Group Fixture
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Fixture/CustomerGroup/TaxClassIds.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Fixture/CustomerGroup/TaxClassIds.php
index 08b310d5c17476366927faf98ff8e24c5c80f028..db297d43bb3bbe9165cacff046042e5ea5489fa7 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Fixture/CustomerGroup/TaxClassIds.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Fixture/CustomerGroup/TaxClassIds.php
@@ -7,8 +7,8 @@
 namespace Magento\Customer\Test\Fixture\CustomerGroup;
 
 use Magento\Tax\Test\Fixture\TaxClass;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class TaxClassIds
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Fixture/CustomerGroupInjectable.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Fixture/CustomerGroupInjectable.php
index 8367374caf1c035219b8a99fbab6aac6ed8984e7..067628370b1dd00edae62668116500699128ae03 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Fixture/CustomerGroupInjectable.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Fixture/CustomerGroupInjectable.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Customer\Test\Fixture;
 
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Class CustomerGroupInjectable
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Fixture/CustomerInjectable.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Fixture/CustomerInjectable.php
index 6a662d177f22821f3ccbc12b7a86ba77461cc201..aa935e1a85c450d16e057eac136fe7eb854bbd02 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Fixture/CustomerInjectable.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Fixture/CustomerInjectable.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Customer\Test\Fixture;
 
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Class CustomerInjectable
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Fixture/CustomerInjectable/Address.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Fixture/CustomerInjectable/Address.php
index e1157be1a9fa051385ea910f3770c1e3bd6a029d..7a5d580c6b4b933c43fa867fa09ba8fce70975e3 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Fixture/CustomerInjectable/Address.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Fixture/CustomerInjectable/Address.php
@@ -7,8 +7,8 @@
 namespace Magento\Customer\Test\Fixture\CustomerInjectable;
 
 use Magento\Customer\Test\Fixture\AddressInjectable;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class Address
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Fixture/CustomerInjectable/GroupId.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Fixture/CustomerInjectable/GroupId.php
index 91b7c0bdb737d861556eee2d5cea83348f55b88b..1c728b16ec4240b04c7dbbe57e50411116d6f754 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Fixture/CustomerInjectable/GroupId.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Fixture/CustomerInjectable/GroupId.php
@@ -7,8 +7,8 @@
 namespace Magento\Customer\Test\Fixture\CustomerInjectable;
 
 use Magento\Customer\Test\Fixture\CustomerGroupInjectable;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class GroupId
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Handler/Curl/CreateCustomer.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Handler/Curl/CreateCustomer.php
index b51d232c2e63394096261d69cc2b0cc244dfbe56..03e09cebf8e4176843959e8a5b908cdeb3888c5c 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Handler/Curl/CreateCustomer.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Handler/Curl/CreateCustomer.php
@@ -7,10 +7,10 @@
 
 namespace Magento\Customer\Test\Handler\Curl;
 
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Handler\Curl;
-use Mtf\Util\Protocol\CurlInterface;
-use Mtf\Util\Protocol\CurlTransport;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Handler\Curl;
+use Magento\Mtf\Util\Protocol\CurlInterface;
+use Magento\Mtf\Util\Protocol\CurlTransport;
 
 /**
  * Class CreateCustomer.
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Handler/Curl/CreateCustomerBackend.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Handler/Curl/CreateCustomerBackend.php
index 8c9535e677a5ab5176a1c2d34cb1fc0ab0e3173e..f2ef96f3636633c2b0b8fdff2cfbc59fac76ed87 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Handler/Curl/CreateCustomerBackend.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Handler/Curl/CreateCustomerBackend.php
@@ -7,12 +7,12 @@
 
 namespace Magento\Customer\Test\Handler\Curl;
 
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Handler\Curl;
-use Mtf\System\Config;
-use Mtf\Util\Protocol\CurlInterface;
-use Mtf\Util\Protocol\CurlTransport;
-use Mtf\Util\Protocol\CurlTransport\BackendDecorator;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Handler\Curl;
+use Magento\Mtf\System\Config;
+use Magento\Mtf\Util\Protocol\CurlInterface;
+use Magento\Mtf\Util\Protocol\CurlTransport;
+use Magento\Mtf\Util\Protocol\CurlTransport\BackendDecorator;
 
 /**
  * Curl handler for creating customer in admin
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Handler/Curl/CreateCustomerGroup.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Handler/Curl/CreateCustomerGroup.php
index 02140bcc66178cfd2761ac18f873381bfa78e63e..4c14cc431138a0934ee3fa327ba8b4513d4b16a6 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Handler/Curl/CreateCustomerGroup.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Handler/Curl/CreateCustomerGroup.php
@@ -6,12 +6,12 @@
 
 namespace Magento\Customer\Test\Handler\Curl;
 
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Handler\Curl;
-use Mtf\System\Config;
-use Mtf\Util\Protocol\CurlInterface;
-use Mtf\Util\Protocol\CurlTransport;
-use Mtf\Util\Protocol\CurlTransport\BackendDecorator;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Handler\Curl;
+use Magento\Mtf\System\Config;
+use Magento\Mtf\Util\Protocol\CurlInterface;
+use Magento\Mtf\Util\Protocol\CurlTransport;
+use Magento\Mtf\Util\Protocol\CurlTransport\BackendDecorator;
 
 /**
  * Curl handler for creating customer group in admin
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Handler/Curl/SaveCustomerWithAddress.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Handler/Curl/SaveCustomerWithAddress.php
index 5e2662520ba4a5b0f19c4d6db882ff9d5aa36607..945abc71934629a461bffd58a534e925ca405305 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Handler/Curl/SaveCustomerWithAddress.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Handler/Curl/SaveCustomerWithAddress.php
@@ -6,10 +6,10 @@
 
 namespace Magento\Customer\Test\Handler\Curl;
 
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Handler\Curl;
-use Mtf\Util\Protocol\CurlInterface;
-use Mtf\Util\Protocol\CurlTransport;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Handler\Curl;
+use Magento\Mtf\Util\Protocol\CurlInterface;
+use Magento\Mtf\Util\Protocol\CurlTransport;
 
 /**
  * Curl handler for saving customer address in admin
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Handler/CustomerGroupInjectable/Curl.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Handler/CustomerGroupInjectable/Curl.php
index 83b7d6086ad21924e5e10f62bf5dd482e24562fa..bcc05fc52095ef748e54218399dd8b8a60bbcb34 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Handler/CustomerGroupInjectable/Curl.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Handler/CustomerGroupInjectable/Curl.php
@@ -7,12 +7,12 @@
 namespace Magento\Customer\Test\Handler\CustomerGroupInjectable;
 
 use Magento\Backend\Test\Handler\Extractor;
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Handler\Curl as AbstractCurl;
-use Mtf\System\Config;
-use Mtf\Util\Protocol\CurlInterface;
-use Mtf\Util\Protocol\CurlTransport;
-use Mtf\Util\Protocol\CurlTransport\BackendDecorator;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Handler\Curl as AbstractCurl;
+use Magento\Mtf\System\Config;
+use Magento\Mtf\Util\Protocol\CurlInterface;
+use Magento\Mtf\Util\Protocol\CurlTransport;
+use Magento\Mtf\Util\Protocol\CurlTransport\BackendDecorator;
 
 /**
  * Class Curl
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Handler/CustomerGroupInjectable/CustomerGroupInjectableInterface.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Handler/CustomerGroupInjectable/CustomerGroupInjectableInterface.php
index a21630e2009ab5730d4eff2da062f3ac88df3c3e..c9388a4daf98ca307b62ea8ec4030db1d52e2d03 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Handler/CustomerGroupInjectable/CustomerGroupInjectableInterface.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Handler/CustomerGroupInjectable/CustomerGroupInjectableInterface.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Customer\Test\Handler\CustomerGroupInjectable;
 
-use Mtf\Handler\HandlerInterface;
+use Magento\Mtf\Handler\HandlerInterface;
 
 /**
  * Interface CustomerGroupInjectableInterface
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Handler/CustomerInjectable/Curl.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Handler/CustomerInjectable/Curl.php
index c102f9aac7eedf6de39b497c7e8d848a311d53a8..52b1c48dfbf9eeb96f7a86c67e9a987bb48ee637 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Handler/CustomerInjectable/Curl.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Handler/CustomerInjectable/Curl.php
@@ -7,12 +7,12 @@
 namespace Magento\Customer\Test\Handler\CustomerInjectable;
 
 use Magento\Customer\Test\Fixture\CustomerInjectable;
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Handler\Curl as AbstractCurl;
-use Mtf\System\Config;
-use Mtf\Util\Protocol\CurlInterface;
-use Mtf\Util\Protocol\CurlTransport;
-use Mtf\Util\Protocol\CurlTransport\BackendDecorator;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Handler\Curl as AbstractCurl;
+use Magento\Mtf\System\Config;
+use Magento\Mtf\Util\Protocol\CurlInterface;
+use Magento\Mtf\Util\Protocol\CurlTransport;
+use Magento\Mtf\Util\Protocol\CurlTransport\BackendDecorator;
 
 /**
  * Class Curl
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Handler/CustomerInjectable/CustomerInjectableInterface.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Handler/CustomerInjectable/CustomerInjectableInterface.php
index 9c0215484c9c0006c89aacbdac7ba7dfe212679c..a97cbe97367ae6ff0d1d23c08d28507b7c36ae9f 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Handler/CustomerInjectable/CustomerInjectableInterface.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Handler/CustomerInjectable/CustomerInjectableInterface.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Customer\Test\Handler\CustomerInjectable;
 
-use Mtf\Handler\HandlerInterface;
+use Magento\Mtf\Handler\HandlerInterface;
 
 /**
  * Interface CustomerInjectableInterface
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Handler/Ui/CreateAddress.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Handler/Ui/CreateAddress.php
index 24a066b4d3ac079030934e5b7a323ff1004cbfff..adc3d2d273153cccee4431f945e09d1790811ee9 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Handler/Ui/CreateAddress.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Handler/Ui/CreateAddress.php
@@ -7,13 +7,13 @@
 
 namespace Magento\Customer\Test\Handler\Ui;
 
-use Mtf\Factory\Factory;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Factory\Factory;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * UI handler for creating customer address.
  */
-class CreateAddress extends \Mtf\Handler\Ui
+class CreateAddress extends \Magento\Mtf\Handler\Ui
 {
     /**
      * Execute handler
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Handler/Webapi/CreateCustomer.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Handler/Webapi/CreateCustomer.php
index 64444bdfa342b927502fa29e94250820a895a401..5d3e2251705e98469dedffe63a03bd5fceb5bdce 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Handler/Webapi/CreateCustomer.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Handler/Webapi/CreateCustomer.php
@@ -7,9 +7,9 @@
 
 namespace Magento\Customer\Test\Handler\Webapi;
 
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Handler\Webapi;
-use Mtf\Util\Protocol\SoapTransport;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Handler\Webapi;
+use Magento\Mtf\Util\Protocol\SoapTransport;
 
 /**
  * Class CreateCustomer
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Page/Address/DefaultAddress.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Page/Address/DefaultAddress.php
index 8159a48bba4babf0a0795903736cd027fc64d5a2..54b9775dbecbe8d35daf7fd4dae8be061df9d893 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Page/Address/DefaultAddress.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Page/Address/DefaultAddress.php
@@ -7,9 +7,9 @@
 
 namespace Magento\Customer\Test\Page\Address;
 
-use Mtf\Client\Element\Locator;
-use Mtf\Factory\Factory;
-use Mtf\Page\Page;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Factory\Factory;
+use Magento\Mtf\Page\Page;
 
 /**
  * Class DefaultAddress
@@ -27,7 +27,7 @@ class DefaultAddress extends Page
      *
      * @var string
      */
-    protected $defaultAddressesSelector = '.block-addresses-default .box-address-billing';
+    protected $defaultAddressesSelector = '.block-addresses-default .box-billing-address';
 
     /**
      * Get default addresses block
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Page/CustomerAccountForgotPassword.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Page/CustomerAccountForgotPassword.php
index a56696efc09dcd6629217ab86a64e4518f6d0c87..ff129b94eb17217dfd85f29dadac635191f7e87c 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Page/CustomerAccountForgotPassword.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Page/CustomerAccountForgotPassword.php
@@ -6,9 +6,9 @@
 
 namespace Magento\Customer\Test\Page;
 
-use Mtf\Client\Element\Locator;
-use Mtf\Factory\Factory;
-use Mtf\Page\Page;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Factory\Factory;
+use Magento\Mtf\Page\Page;
 
 /**
  */
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Page/CustomerAccountLogout.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Page/CustomerAccountLogout.php
index 0bf0bea1b74cb8bb19e0bde9d2442f5376493247..9c34d17af3cd8e4eddac3d3357118ded860902ab 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Page/CustomerAccountLogout.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Page/CustomerAccountLogout.php
@@ -7,7 +7,7 @@
 
 namespace Magento\Customer\Test\Page;
 
-use Mtf\Page\Page;
+use Magento\Mtf\Page\Page;
 
 /**
  * Class CustomerAccountLogout
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Page/CustomerAddressEdit.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Page/CustomerAddressEdit.php
index 096beeca4a7eb9149d04559408b6f564de0b9840..91fbd97193bbd96f61e384c6adc4f3b952601e6b 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Page/CustomerAddressEdit.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Page/CustomerAddressEdit.php
@@ -7,9 +7,9 @@
 
 namespace Magento\Customer\Test\Page;
 
-use Mtf\Client\Element\Locator;
-use Mtf\Factory\Factory;
-use Mtf\Page\Page;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Factory\Factory;
+use Magento\Mtf\Page\Page;
 
 /**
  * Customer Address Edit page.
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Repository/Address.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Repository/Address.php
index 17560e76c41c89a9171cae815e57fbaf53d550fc..6012db8cdd17d501e64154dfe8892b8c14dcc2f3 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Repository/Address.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Repository/Address.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Customer\Test\Repository;
 
-use Mtf\Repository\AbstractRepository;
+use Magento\Mtf\Repository\AbstractRepository;
 
 /**
  * Class Address Repository
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Repository/AddressInjectable.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Repository/AddressInjectable.php
index ea198cb5e265bd984bbf59efd74e61342cef807d..e980970452aeaec19f1f353dda59ebf15a449f20 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Repository/AddressInjectable.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Repository/AddressInjectable.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Customer\Test\Repository;
 
-use Mtf\Repository\AbstractRepository;
+use Magento\Mtf\Repository\AbstractRepository;
 
 /**
  * Class AddressInjectable
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Repository/Customer.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Repository/Customer.php
index a65111b1185dccc056101453bd2ee9cc43747406..c0d1a73894069fa223618bb90540662338706398 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Repository/Customer.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Repository/Customer.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Customer\Test\Repository;
 
-use Mtf\Repository\AbstractRepository;
+use Magento\Mtf\Repository\AbstractRepository;
 
 /**
  * Class Customer Repository
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Repository/CustomerGroup.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Repository/CustomerGroup.php
index 08199c67c04f49a8b53c9971a7c48affb62bba72..a54e62a838b7c31ab4cee723e1f1b39453bc931d 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Repository/CustomerGroup.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Repository/CustomerGroup.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Customer\Test\Repository;
 
-use Mtf\Repository\AbstractRepository;
+use Magento\Mtf\Repository\AbstractRepository;
 
 /**
  * Class Customer Group Repository
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Repository/CustomerGroupInjectable.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Repository/CustomerGroupInjectable.php
index 6b50700abd593b936616f11f1f51ca876f1661f7..f9ef35f9a952b9f81ecb75d87fad74dad223ffc3 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Repository/CustomerGroupInjectable.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Repository/CustomerGroupInjectable.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Customer\Test\Repository;
 
-use Mtf\Repository\AbstractRepository;
+use Magento\Mtf\Repository\AbstractRepository;
 
 /**
  * Class CustomerGroupInjectable
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/Repository/CustomerInjectable.php b/dev/tests/functional/tests/app/Magento/Customer/Test/Repository/CustomerInjectable.php
index 13fcff343ea83b6aa7371ea9b1843003a86b6d93..8154cf0f2186fa1755228078d7b1a21458e99e5e 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/Repository/CustomerInjectable.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/Repository/CustomerInjectable.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Customer\Test\Repository;
 
-use Mtf\Repository\AbstractRepository;
+use Magento\Mtf\Repository\AbstractRepository;
 
 /**
  * Class CustomerInjectable
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/BackendCustomerCreateTest.php b/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/BackendCustomerCreateTest.php
index 19283541d5eda9374a24bc44946f33c3ae932723..c979cd41c25bb5f14320658cf8b9b4d80958f914 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/BackendCustomerCreateTest.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/BackendCustomerCreateTest.php
@@ -6,11 +6,16 @@
 
 namespace Magento\Customer\Test\TestCase;
 
-use Mtf\Factory\Factory;
-use Mtf\TestCase\Functional;
+use Magento\Mtf\Factory\Factory;
+use Magento\Mtf\TestCase\Functional;
 
 class BackendCustomerCreateTest extends Functional
 {
+    /* tags */
+    const TEST_TYPE = 'acceptance_test';
+    const STABLE = 'no';
+    /* end tags */
+
     /**
      * Login into backend area before test
      */
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/CreateCustomerBackendEntityTest.php b/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/CreateCustomerBackendEntityTest.php
index 1c8ccb411ba805c334f8477a03db634dcc6964f6..ec75d23b1047effcd32d0281454ee96f88759c25 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/CreateCustomerBackendEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/CreateCustomerBackendEntityTest.php
@@ -10,7 +10,7 @@ use Magento\Customer\Test\Fixture\AddressInjectable;
 use Magento\Customer\Test\Fixture\CustomerInjectable;
 use Magento\Customer\Test\Page\Adminhtml\CustomerIndex;
 use Magento\Customer\Test\Page\Adminhtml\CustomerIndexNew;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Coverage for CreateCustomerBackendEntityTest
@@ -27,6 +27,11 @@ use Mtf\TestCase\Injectable;
  */
 class CreateCustomerBackendEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'CS';
+    /* end tags */
+
     /**
      * @var CustomerInjectable
      */
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/CreateCustomerFrontendEntityTest/testCreateCustomer.csv b/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/CreateCustomerFrontendEntityTest/testCreateCustomer.csv
deleted file mode 100644
index d00303ab9852d4ca32cb866d992be06a9e65a2d4..0000000000000000000000000000000000000000
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/CreateCustomerFrontendEntityTest/testCreateCustomer.csv
+++ /dev/null
@@ -1,3 +0,0 @@
-"customer/data/firstname";"customer/data/lastname";"customer/data/email";"customer/data/is_subscribed";"customer/data/password";"customer/data/password_confirmation";"constraint"
-"john";"doe";"johndoe%isolation%@example.com";"No";"123123q";"123123q";"assertCustomerSuccessRegisterMessage, assertCustomerInGrid"
-"john";"doe";"johndoe%isolation%@example.com";"Yes";"123123q";"123123q";"assertCustomerSuccessRegisterMessage, assertCustomerInGrid, assertCustomerForm, assertCustomerIsSubscribedToNewsletter"
\ No newline at end of file
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/CreateCustomerGroupEntityTest.php b/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/CreateCustomerGroupEntityTest.php
index 4821d72f301028c9329e1221041de67b4dcac632..8ba1a89d841e71f50afa76ee752b859dfe359f1a 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/CreateCustomerGroupEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/CreateCustomerGroupEntityTest.php
@@ -9,7 +9,7 @@ namespace Magento\Customer\Test\TestCase;
 use Magento\Customer\Test\Fixture\CustomerGroupInjectable;
 use Magento\Customer\Test\Page\Adminhtml\CustomerGroupIndex;
 use Magento\Customer\Test\Page\Adminhtml\CustomerGroupNew;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for CreateCustomerGroupEntity
@@ -22,11 +22,16 @@ use Mtf\TestCase\Injectable;
  * 5.Click "Save Customer Group" button.
  * 6.Perform all assertions.
  *
- * @group Customer_Groups_(MX)
+ * @group Customer_Groups_(CS)
  * @ZephyrId MAGETWO-23422
  */
 class CreateCustomerGroupEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'CS';
+    /* end tags */
+
     /**
      * Customer group index
      *
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/CreateExistingCustomerFrontendEntity.php b/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/CreateExistingCustomerFrontendEntity.php
index 71aff47002fd9e6fde97731f05dfc59c236a2062..6ab2dd30c72d30f936d730d848b497c9aafceb7d 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/CreateExistingCustomerFrontendEntity.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/CreateExistingCustomerFrontendEntity.php
@@ -10,7 +10,7 @@ use Magento\Cms\Test\Page\CmsIndex;
 use Magento\Customer\Test\Fixture\CustomerInjectable;
 use Magento\Customer\Test\Page\CustomerAccountCreate;
 use Magento\Customer\Test\Page\CustomerAccountLogout;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for CreateExistingCustomerFrontendEntity
@@ -30,6 +30,11 @@ use Mtf\TestCase\Injectable;
  */
 class CreateExistingCustomerFrontendEntity extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'CS';
+    /* end tags */
+
     /**
      * Page CustomerAccountCreate
      *
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/CreateOnFrontendTest.php b/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/CreateOnFrontendTest.php
deleted file mode 100644
index 99569424f41f4ed9a7e6793429b45b6c9e33b11d..0000000000000000000000000000000000000000
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/CreateOnFrontendTest.php
+++ /dev/null
@@ -1,87 +0,0 @@
-<?php
-/**
- * Copyright © 2015 Magento. All rights reserved.
- * See COPYING.txt for license details.
- */
-
-namespace Magento\Customer\Test\TestCase;
-
-use Magento\Customer\Test\Block\Address\Edit as AddressEditForm;
-use Magento\Customer\Test\Fixture\Address;
-use Mtf\Factory\Factory;
-use Mtf\TestCase\Functional;
-
-/**
- * Create Customer on frontend and set default billing address
- */
-class CreateOnFrontendTest extends Functional
-{
-    /**
-     * Create Customer account on frontend
-     *
-     * @ZephyrId MAGETWO-12394
-     */
-    public function testCreateCustomer()
-    {
-        //Data
-        $customer = Factory::getFixtureFactory()->getMagentoCustomerCustomer();
-        $customer->switchData('customer_US_1');
-        $customerAddress = $customer->getAddressData();
-
-        //Page
-        $homePage = Factory::getPageFactory()->getCmsIndexIndex();
-        $createPage = Factory::getPageFactory()->getCustomerAccountCreate();
-        $accountIndexPage = Factory::getPageFactory()->getCustomerAccountIndex();
-        $addressEditPage = Factory::getPageFactory()->getCustomerAddressEdit();
-
-        //Step 1 Create Account
-        $homePage->open();
-        $topLinks = $homePage->getLinksBlock();
-        $topLinks->openLink('Register');
-
-        $createPage->getRegisterForm()->registerCustomer($customer);
-
-        //Verifying
-        $this->assertContains('Thank you for registering', $accountIndexPage->getMessages()->getSuccessMessages());
-
-        //Check that customer redirected to Dashboard after registration
-        $this->assertContains('My Dashboard', $accountIndexPage->getTitleBlock()->getTitle());
-
-        //Step 2 Set Billing Address
-        $accountIndexPage->getDashboardAddress()->editBillingAddress();
-        $addressEditPage->getEditForm()->editCustomerAddress($customerAddress);
-
-        //Verifying
-        $accountIndexPage = Factory::getPageFactory()->getCustomerAccountIndex();
-        $this->assertContains('The address has been saved', $accountIndexPage->getMessages()->getSuccessMessages());
-
-        //Verify customer address against previously entered data
-        $accountIndexPage->open();
-        $accountIndexPage->getDashboardAddress()->editBillingAddress();
-        $addressEditPage = Factory::getPageFactory()->getCustomerAddressEdit();
-        $this->verifyCustomerAddress($customerAddress, $addressEditPage->getEditForm());
-    }
-
-    /**
-     * Verify that customer address is equals data on form
-     *
-     * @param Address $address
-     * @param AddressEditForm $form
-     * @return bool
-     */
-    protected function verifyCustomerAddress(Address $address, AddressEditForm $form)
-    {
-        $dataAddress = $address->getData();
-        $preparedDataAddress = [];
-
-        foreach ($dataAddress['fields'] as $key => $field) {
-            $preparedDataAddress[$key] = $field['value'];
-        }
-
-        $dataDiff = array_diff($preparedDataAddress, $form->getData($address));
-        $this->assertTrue(
-            empty($dataDiff),
-            'Customer addresses data on edit page(backend) not equals to passed from fixture.'
-        );
-    }
-}
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/DeleteCustomerAddressTest.php b/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/DeleteCustomerAddressTest.php
index b68d4677124f7d66055462bd1ca7d8c88ce72780..22d2be27760f60955b12b35e13e6a42224480f26 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/DeleteCustomerAddressTest.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/DeleteCustomerAddressTest.php
@@ -10,7 +10,7 @@ use Magento\Cms\Test\Page\CmsIndex;
 use Magento\Customer\Test\Fixture\CustomerInjectable;
 use Magento\Customer\Test\Page\CustomerAccountIndex;
 use Magento\Customer\Test\Page\CustomerAccountLogin;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for DeleteCustomerAddress
@@ -34,6 +34,11 @@ use Mtf\TestCase\Injectable;
  */
 class DeleteCustomerAddressTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'CS';
+    /* end tags */
+
     /**
      * Cms index page
      *
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/DeleteCustomerBackendEntityTest.php b/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/DeleteCustomerBackendEntityTest.php
index 8e724cbb41eee1d5188469d40bdc60b918da42d6..d6fe3981534da79cca3b0746a0378839a6235e92 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/DeleteCustomerBackendEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/DeleteCustomerBackendEntityTest.php
@@ -9,7 +9,7 @@ namespace Magento\Customer\Test\TestCase;
 use Magento\Customer\Test\Fixture\CustomerInjectable;
 use Magento\Customer\Test\Page\Adminhtml\CustomerIndex;
 use Magento\Customer\Test\Page\Adminhtml\CustomerIndexEdit;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test creation for DeleteCustomerBackendEntity
@@ -30,6 +30,11 @@ use Mtf\TestCase\Injectable;
  */
 class DeleteCustomerBackendEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'CS';
+    /* end tags */
+
     /**
      * @var CustomerIndex
      */
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/DeleteCustomerGroupEntityTest.php b/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/DeleteCustomerGroupEntityTest.php
index b4fe688657ec4b71e3c72e65348750a3865d5248..dda7cbc0c85ec1f6c29d57e8e8f1992e350a4efd 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/DeleteCustomerGroupEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/DeleteCustomerGroupEntityTest.php
@@ -9,7 +9,7 @@ namespace Magento\Customer\Test\TestCase;
 use Magento\Customer\Test\Fixture\CustomerGroupInjectable;
 use Magento\Customer\Test\Page\Adminhtml\CustomerGroupIndex;
 use Magento\Customer\Test\Page\Adminhtml\CustomerGroupNew;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for DeleteCustomerGroupEntity
@@ -30,6 +30,11 @@ use Mtf\TestCase\Injectable;
  */
 class DeleteCustomerGroupEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'CS';
+    /* end tags */
+
     /**
      * Page CustomerGroupIndex
      *
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/ForgotPasswordOnFrontendTest.php b/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/ForgotPasswordOnFrontendTest.php
index 9294155fe0b5c0c659c9768f65853a2cc4c4a2f3..b07f1dd1a0388ead172b762f8fb9fd3c3515d26d 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/ForgotPasswordOnFrontendTest.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/ForgotPasswordOnFrontendTest.php
@@ -6,8 +6,8 @@
 
 namespace Magento\Customer\Test\TestCase;
 
-use Mtf\Factory\Factory;
-use Mtf\TestCase\Functional;
+use Magento\Mtf\Factory\Factory;
+use Magento\Mtf\TestCase\Functional;
 
 /**
  * Reset password on frontend
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/MassAssignCustomerGroupTest.php b/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/MassAssignCustomerGroupTest.php
index 5bfdcd25f7e6dd25b9b349735474829d49679d67..fa1782e8a4dd8482386f6d0dcabb8e4e656e3b55 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/MassAssignCustomerGroupTest.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/MassAssignCustomerGroupTest.php
@@ -9,7 +9,7 @@ namespace Magento\Customer\Test\TestCase;
 use Magento\Customer\Test\Fixture\CustomerGroupInjectable;
 use Magento\Customer\Test\Fixture\CustomerInjectable;
 use Magento\Customer\Test\Page\Adminhtml\CustomerIndex;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test creation for MassAssignCustomerGroup
@@ -34,6 +34,11 @@ use Mtf\TestCase\Injectable;
  */
 class MassAssignCustomerGroupTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'CS';
+    /* end tags */
+
     /**
      * Customer index page
      *
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/MassDeleteCustomerBackendEntityTest.php b/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/MassDeleteCustomerBackendEntityTest.php
index b711b97741787a572850805733d6b6f0af4e1995..99efcb8300d9fcc46d855fa3adfae58f27062199 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/MassDeleteCustomerBackendEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/MassDeleteCustomerBackendEntityTest.php
@@ -9,8 +9,8 @@ namespace Magento\Customer\Test\TestCase;
 use Magento\Customer\Test\Fixture\CustomerInjectable;
 use Magento\Customer\Test\Page\Adminhtml\CustomerIndex;
 use Magento\Customer\Test\Page\Adminhtml\CustomerIndexEdit;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test creation for MassDeleteCustomerBackendEntityTest
@@ -32,6 +32,11 @@ use Mtf\TestCase\Injectable;
  */
 class MassDeleteCustomerBackendEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'CS';
+    /* end tags */
+
     /**
      * Customer Index page
      *
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/CreateCustomerFrontendEntityTest.php b/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/RegisterCustomerFrontendEntityTest.php
similarity index 86%
rename from dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/CreateCustomerFrontendEntityTest.php
rename to dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/RegisterCustomerFrontendEntityTest.php
index d3ca4c8bfa46f5f82a7633a0cbbd5b7b834ea860..586084a5fa7311d3e26bb68ed24b2c39ddf54981 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/CreateCustomerFrontendEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/RegisterCustomerFrontendEntityTest.php
@@ -6,15 +6,13 @@
 
 namespace Magento\Customer\Test\TestCase;
 
-use Magento\Cms\Test\Page\CmsIndex;
 use Magento\Customer\Test\Fixture\CustomerInjectable;
 use Magento\Customer\Test\Page\CustomerAccountCreate;
+use Magento\Cms\Test\Page\CmsIndex;
 use Magento\Customer\Test\Page\CustomerAccountLogout;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
- * Test Creation for CreateCustomerFrontendEntity
- *
  * Test Flow:
  * 1. Go to frontend.
  * 2. Click Register link.
@@ -25,8 +23,14 @@ use Mtf\TestCase\Injectable;
  * @group Customer_Account_(CS)
  * @ZephyrId MAGETWO-23546
  */
-class CreateCustomerFrontendEntityTest extends Injectable
+class RegisterCustomerFrontendEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'CS';
+    const TEST_TYPE = 'acceptance_test';
+    /* end tags */
+
     /**
      * @var CustomerAccountCreate
      */
@@ -62,7 +66,7 @@ class CreateCustomerFrontendEntityTest extends Injectable
      *
      * @param CustomerInjectable $customer
      */
-    public function testCreateCustomer(CustomerInjectable $customer)
+    public function test(CustomerInjectable $customer)
     {
         //Steps
         $this->cmsIndex->open();
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/RegisterCustomerFrontendEntityTest/test.csv b/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/RegisterCustomerFrontendEntityTest/test.csv
new file mode 100644
index 0000000000000000000000000000000000000000..8fbfecdc45c014da27522d617123792a2a25c197
--- /dev/null
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/RegisterCustomerFrontendEntityTest/test.csv
@@ -0,0 +1,4 @@
+"description";"customer/data/firstname";"customer/data/lastname";"customer/data/email";"customer/data/is_subscribed";"customer/data/password";"customer/data/password_confirmation";"constraint";"tag"
+"Register new customer";"john";"doe";"johndoe%isolation%@example.com";"No";"123123q";"123123q";"assertCustomerSuccessRegisterMessage, assertCustomerInGrid";""
+"Register new customer with subscribing";"john";"doe";"johndoe%isolation%@example.com";"Yes";"123123q";"123123q";"assertCustomerSuccessRegisterMessage, assertCustomerInGrid, assertCustomerForm, assertCustomerIsSubscribedToNewsletter";""
+"MAGETWO-12394: Register Customer";"john";"doe";"johndoe%isolation%@example.com";"No";"123123q";"123123q";"assertCustomerSuccessRegisterMessage, assertCustomerRedirectToDashboard";"bamboo_plan:end_to_end,test_type:acceptance_test"
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/UpdateCustomerBackendEntityTest.php b/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/UpdateCustomerBackendEntityTest.php
index d9b9221c0a66c0e13869af50d358520c5ca0f727..ed3e94fc950aa82507abe5220ab1d31f4147d44b 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/UpdateCustomerBackendEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/UpdateCustomerBackendEntityTest.php
@@ -10,7 +10,7 @@ use Magento\Customer\Test\Fixture\AddressInjectable;
 use Magento\Customer\Test\Fixture\CustomerInjectable;
 use Magento\Customer\Test\Page\Adminhtml\CustomerIndex;
 use Magento\Customer\Test\Page\Adminhtml\CustomerIndexEdit;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for UpdateCustomerBackendEntity
@@ -27,6 +27,11 @@ use Mtf\TestCase\Injectable;
  */
 class UpdateCustomerBackendEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'CS';
+    /* end tags */
+
     /**
      * @var CustomerIndex
      */
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/UpdateCustomerFrontendEntity/test.csv b/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/UpdateCustomerFrontendEntity/test.csv
deleted file mode 100644
index 739a564e68628dcdbfc136e38b3f4c9c89335c20..0000000000000000000000000000000000000000
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/UpdateCustomerFrontendEntity/test.csv
+++ /dev/null
@@ -1,3 +0,0 @@
-"customer/data/firstname";"customer/data/lastname";"customer/data/email";"address/data/firstname";"address/data/lastname";"address/data/company";"address/data/street";"address/data/city";"address/data/country_id";"address/data/region_id";"address/data/region";"address/data/telephone";"address/data/fax";"address/data/postcode";"constraint"
-"Jany %isolation%";"Doe %isolation%";"janydoe%isolation%@example.com";"Jany %isolation%";"Doe %isolation%";"Company %isolation%";"Some street %isolation%";"City %isolation%";"United States";"Colorado";"-";"555-888-111-999";"161-999-8888";"12345";"assertCustomerAddressSuccessSaveMessage, assertCustomerDefaultAddresses"
-"Jonny %isolation%";"Doe %isolation%";"jonny%isolation%@example.com";"John %isolation%";"Doe %isolation%";"Company %isolation%";"Some street %isolation%";"City %isolation%";"United Kingdom";"-";"Region %isolation%";"0123456789-02134567";"5555-874-99634";"12345";"assertCustomerAddressSuccessSaveMessage, assertCustomerDefaultAddresses"
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/UpdateCustomerFrontendEntity.php b/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/UpdateCustomerFrontendEntityTest.php
similarity index 94%
rename from dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/UpdateCustomerFrontendEntity.php
rename to dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/UpdateCustomerFrontendEntityTest.php
index b98753256e578b6b79042fc61482b6cfbf75c8bb..9c1822ed88b7c6e980d717983a4156fc08eff4d6 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/UpdateCustomerFrontendEntity.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/UpdateCustomerFrontendEntityTest.php
@@ -14,12 +14,10 @@ use Magento\Customer\Test\Page\CustomerAccountEdit;
 use Magento\Customer\Test\Page\CustomerAccountIndex;
 use Magento\Customer\Test\Page\CustomerAccountLogin;
 use Magento\Customer\Test\Page\CustomerAddressEdit;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
- * Test Creation for UpdateCustomerFrontendEntity
- *
  * Test Flow:
  * Preconditions:
  * 1. Default test customer is created
@@ -38,8 +36,14 @@ use Mtf\TestCase\Injectable;
  *
  * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
-class UpdateCustomerFrontendEntity extends Injectable
+class UpdateCustomerFrontendEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'CS';
+    const TEST_TYPE = 'acceptance_test';
+    /* end tags */
+
     /**
      * Factory for Fixtures
      *
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/UpdateCustomerFrontendEntityTest/test.csv b/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/UpdateCustomerFrontendEntityTest/test.csv
new file mode 100644
index 0000000000000000000000000000000000000000..cfc3bea41fc9d26ae285ee90aab6debac8241860
--- /dev/null
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/UpdateCustomerFrontendEntityTest/test.csv
@@ -0,0 +1,5 @@
+"description";"customer/data/firstname";"customer/data/lastname";"customer/data/email";"address/data/firstname";"address/data/lastname";"address/data/company";"address/data/street";"address/data/city";"address/data/country_id";"address/data/region_id";"address/data/region";"address/data/telephone";"address/data/fax";"address/data/postcode";"constraint";"tag"
+"Update customer information and add US address";"Jany %isolation%";"Doe %isolation%";"janydoe%isolation%@example.com";"Jany %isolation%";"Doe %isolation%";"Company %isolation%";"Some street %isolation%";"City %isolation%";"United States";"Colorado";"-";"555-888-111-999";"161-999-8888";"12345";"assertCustomerAddressSuccessSaveMessage, assertCustomerDefaultAddresses";""
+"Update customer information and add UK address";"Jonny %isolation%";"Doe %isolation%";"jonny%isolation%@example.com";"John %isolation%";"Doe %isolation%";"Company %isolation%";"Some street %isolation%";"City %isolation%";"United Kingdom";"-";"Region %isolation%";"0123456789-02134567";"5555-874-99634";"12345";"assertCustomerAddressSuccessSaveMessage, assertCustomerDefaultAddresses";""
+"Update customer information and add France address";"Jean %isolation%";"Reno %isolation%";"jean%isolation%@example.com";"Jean %isolation%";"Reno %isolation%";"Magento %isolation%";"18-20 Rue Maréchal Leclerc";"Quintin";"France";"Côtes-d'Armor";"-";"555-888-111-999";"161-999-8888";"12345";"assertCustomerAddressSuccessSaveMessage, assertCustomerDefaultAddresses";""
+"MAGETWO-12394: Register Customer. Update address";"-";"-";"-";"John";"Doe";"Magento %isolation%";"6161 West Centinela Avenue";"Culver City";"United States";"California";"-";"555-55-555-55";"-";"90230";"assertCustomerAddressSuccessSaveMessage, assertCustomerDefaultAddresses";"bamboo_plan:end_to_end,test_type:acceptance_test"
\ No newline at end of file
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/UpdateCustomerGroupEntityTest.php b/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/UpdateCustomerGroupEntityTest.php
index c36cf0be0ab9920211a182be5b9f8cbf2087bb93..1b544914dce25ec287a23798a134ebb4d29a8f40 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/UpdateCustomerGroupEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/TestCase/UpdateCustomerGroupEntityTest.php
@@ -9,7 +9,7 @@ namespace Magento\Customer\Test\TestCase;
 use Magento\Customer\Test\Fixture\CustomerGroupInjectable;
 use Magento\Customer\Test\Page\Adminhtml\CustomerGroupIndex;
 use Magento\Customer\Test\Page\Adminhtml\CustomerGroupNew;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for Update Customer Group Entity
@@ -30,6 +30,11 @@ use Mtf\TestCase\Injectable;
  */
 class UpdateCustomerGroupEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'CS';
+    /* end tags */
+
     /**
      * Page CustomerGroupIndex
      *
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/TestStep/CreateCustomerStep.php b/dev/tests/functional/tests/app/Magento/Customer/Test/TestStep/CreateCustomerStep.php
index 75564372ab8a1851187d35fcc83df1a4af9f9e4d..e3c28182eef964d949f248610151d533b9016fba 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/TestStep/CreateCustomerStep.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/TestStep/CreateCustomerStep.php
@@ -7,7 +7,7 @@
 namespace Magento\Customer\Test\TestStep;
 
 use Magento\Customer\Test\Fixture\CustomerInjectable;
-use Mtf\TestStep\TestStepInterface;
+use Magento\Mtf\TestStep\TestStepInterface;
 
 /**
  * Class CreateCustomerStep
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/TestStep/CreateOrderFromCustomerAccountStep.php b/dev/tests/functional/tests/app/Magento/Customer/Test/TestStep/CreateOrderFromCustomerAccountStep.php
index b226fbfbf71bd93f1f9ed88ed7601f55036a0c0f..21d3291f6498a53e1dcbd6ea645e7881cdddaba1 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/TestStep/CreateOrderFromCustomerAccountStep.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/TestStep/CreateOrderFromCustomerAccountStep.php
@@ -7,7 +7,7 @@
 namespace Magento\Customer\Test\TestStep;
 
 use Magento\Customer\Test\Page\Adminhtml\CustomerIndexEdit;
-use Mtf\TestStep\TestStepInterface;
+use Magento\Mtf\TestStep\TestStepInterface;
 
 /**
  * Class CreateOrderFromCustomerAccountStep
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/TestStep/LoginCustomerOnFrontendStep.php b/dev/tests/functional/tests/app/Magento/Customer/Test/TestStep/LoginCustomerOnFrontendStep.php
index 12902e16cf98db3d9b63449c4bd021e499811d69..4cc77cfa414dd1b3a7d8550c9938c707b692bb4e 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/TestStep/LoginCustomerOnFrontendStep.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/TestStep/LoginCustomerOnFrontendStep.php
@@ -9,7 +9,7 @@ namespace Magento\Customer\Test\TestStep;
 use Magento\Cms\Test\Page\CmsIndex;
 use Magento\Customer\Test\Fixture\CustomerInjectable;
 use Magento\Customer\Test\Page\CustomerAccountLogin;
-use Mtf\TestStep\TestStepInterface;
+use Magento\Mtf\TestStep\TestStepInterface;
 
 /**
  * Login customer on frontend.
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/TestStep/LogoutCustomerOnFrontendStep.php b/dev/tests/functional/tests/app/Magento/Customer/Test/TestStep/LogoutCustomerOnFrontendStep.php
index b49ea09db7bd665c196669f7687cec5eb9cb6b5d..57fb8c5d9527d6aef60e7d82d67b317bea811a58 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/TestStep/LogoutCustomerOnFrontendStep.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/TestStep/LogoutCustomerOnFrontendStep.php
@@ -7,7 +7,7 @@
 namespace Magento\Customer\Test\TestStep;
 
 use Magento\Cms\Test\Page\CmsIndex;
-use Mtf\TestStep\TestStepInterface;
+use Magento\Mtf\TestStep\TestStepInterface;
 
 /**
  * Class LogoutCustomerOnFrontendStep
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/TestStep/OpenCustomerOnBackendStep.php b/dev/tests/functional/tests/app/Magento/Customer/Test/TestStep/OpenCustomerOnBackendStep.php
index d63e0ba60d96acb7030a79e4d07d234ab67bf514..5182c34ee7cb1f96525f5d882ae21de178059763 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/TestStep/OpenCustomerOnBackendStep.php
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/TestStep/OpenCustomerOnBackendStep.php
@@ -8,7 +8,7 @@ namespace Magento\Customer\Test\TestStep;
 
 use Magento\Customer\Test\Fixture\CustomerInjectable;
 use Magento\Customer\Test\Page\Adminhtml\CustomerIndex;
-use Mtf\TestStep\TestStepInterface;
+use Magento\Mtf\TestStep\TestStepInterface;
 
 /**
  * Class OpenCustomerOnBackendStep
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/etc/constraint.xml b/dev/tests/functional/tests/app/Magento/Customer/Test/etc/constraint.xml
index d4eac88ce753b13aacf7d5616e286c6a3c5dcf97..8359c1d24c0c0e6c7b2ffddff4ac98c37fe8e199 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/etc/constraint.xml
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/etc/constraint.xml
@@ -130,4 +130,7 @@
     <assertWrongPassConfirmationMessage module="Magento_Customer">
         <severity>low</severity>
     </assertWrongPassConfirmationMessage>
+    <assertCustomerRedirectToDashboard  module="Magento_Customer">
+        <severeness>low</severeness>
+    </assertCustomerRedirectToDashboard>
 </constraint>
diff --git a/dev/tests/functional/tests/app/Magento/Customer/Test/etc/scenario.xml b/dev/tests/functional/tests/app/Magento/Customer/Test/etc/scenario.xml
index 1d0c77e04beea4b66604335a0367e990e2b365e9..1ffe25557c9650a4d7af52d4d1da65238208f844 100644
--- a/dev/tests/functional/tests/app/Magento/Customer/Test/etc/scenario.xml
+++ b/dev/tests/functional/tests/app/Magento/Customer/Test/etc/scenario.xml
@@ -5,7 +5,7 @@
  * See COPYING.txt for license details.
  */
 -->
-<scenarios xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../vendor/magento/mtf/Mtf/Config/etc/scenario.xsd">
+<scenarios xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../vendor/magento/mtf/Magento/Mtf/Config/etc/scenario.xsd">
     <scenario name="CreateOrderFromCustomerPageTest" module="Magento_Customer">
         <methods>
             <method name="test">
diff --git a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Block/Adminhtml/Catalog/Product/Edit/Tab/Downloadable.php b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Block/Adminhtml/Catalog/Product/Edit/Tab/Downloadable.php
index ae20f760c1fcaf3091766e008cad476a1df8ec48..9bb1f70601cd3e2330df8e9dd023e65cafed9713 100644
--- a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Block/Adminhtml/Catalog/Product/Edit/Tab/Downloadable.php
+++ b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Block/Adminhtml/Catalog/Product/Edit/Tab/Downloadable.php
@@ -6,9 +6,10 @@
 
 namespace Magento\Downloadable\Test\Block\Adminhtml\Catalog\Product\Edit\Tab;
 
+use Magento\Mtf\Client\Element;
+use Magento\Mtf\Client\Locator;
 use Magento\Backend\Test\Block\Widget\Tab;
-use Mtf\Client\Element;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Client\Element\SimpleElement;
 
 /**
  * Class Downloadable
@@ -35,11 +36,11 @@ class Downloadable extends Tab
      * Get Downloadable block
      *
      * @param string $type
-     * @param Element $element
+     * @param SimpleElement $element
      * @return \Magento\Downloadable\Test\Block\Adminhtml\Catalog\Product\Edit\Tab\Downloadable\Samples |
      *         \Magento\Downloadable\Test\Block\Adminhtml\Catalog\Product\Edit\Tab\Downloadable\Links
      */
-    public function getDownloadableBlock($type, Element $element = null)
+    public function getDownloadableBlock($type, SimpleElement $element = null)
     {
         $element = $element ?: $this->_rootElement;
         return $this->blockFactory->create(
@@ -52,10 +53,10 @@ class Downloadable extends Tab
      * Get data to fields on downloadable tab
      *
      * @param array|null $fields
-     * @param Element|null $element
+     * @param SimpleElement|null $element
      * @return array
      */
-    public function getDataFormTab($fields = null, Element $element = null)
+    public function getDataFormTab($fields = null, SimpleElement $element = null)
     {
         $newFields = [];
         if (isset($fields['downloadable_sample']['value'])) {
@@ -76,10 +77,10 @@ class Downloadable extends Tab
      * Fill downloadable information
      *
      * @param array $fields
-     * @param Element|null $element
+     * @param SimpleElement|null $element
      * @return $this
      */
-    public function fillFormTab(array $fields, Element $element = null)
+    public function fillFormTab(array $fields, SimpleElement $element = null)
     {
         if (isset($fields['downloadable_sample']['value'])) {
             $this->getDownloadableBlock('Samples')->fillSamples($fields['downloadable_sample']['value']);
diff --git a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Block/Adminhtml/Catalog/Product/Edit/Tab/Downloadable/LinkRow.php b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Block/Adminhtml/Catalog/Product/Edit/Tab/Downloadable/LinkRow.php
index aeae55fd0ecd4cff9b614a88c65c2bca20f10359..3cdd191ec083013eb612085cf0002bbd86fd71a1 100644
--- a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Block/Adminhtml/Catalog/Product/Edit/Tab/Downloadable/LinkRow.php
+++ b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Block/Adminhtml/Catalog/Product/Edit/Tab/Downloadable/LinkRow.php
@@ -5,7 +5,7 @@
  */
 namespace Magento\Downloadable\Test\Block\Adminhtml\Catalog\Product\Edit\Tab\Downloadable;
 
-use Mtf\Block\Form;
+use Magento\Mtf\Block\Form;
 
 /**
  * Class LinkRow
diff --git a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Block/Adminhtml/Catalog/Product/Edit/Tab/Downloadable/Links.php b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Block/Adminhtml/Catalog/Product/Edit/Tab/Downloadable/Links.php
index e6ae647e0ec2104157c532b8c6e85a3d9785a78c..cd799e849f69eb2f382ca4bf674bf588c845696d 100644
--- a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Block/Adminhtml/Catalog/Product/Edit/Tab/Downloadable/Links.php
+++ b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Block/Adminhtml/Catalog/Product/Edit/Tab/Downloadable/Links.php
@@ -5,9 +5,9 @@
  */
 namespace Magento\Downloadable\Test\Block\Adminhtml\Catalog\Product\Edit\Tab\Downloadable;
 
-use Mtf\Block\Form;
-use Mtf\Client\Element;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Form;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Client\Element\SimpleElement;
 
 /**
  * Class Links
@@ -55,10 +55,10 @@ class Links extends Form
      * Get Downloadable link item block
      *
      * @param int $index
-     * @param Element $element
+     * @param SimpleElement $element
      * @return LinkRow
      */
-    public function getRowBlock($index, Element $element = null)
+    public function getRowBlock($index, SimpleElement $element = null)
     {
         $element = $element ?: $this->_rootElement;
         return $this->blockFactory->create(
@@ -71,10 +71,10 @@ class Links extends Form
      * Fill links block
      *
      * @param array $fields
-     * @param Element $element
+     * @param SimpleElement $element
      * @return void
      */
-    public function fillLinks(array $fields, Element $element = null)
+    public function fillLinks(array $fields, SimpleElement $element = null)
     {
         $element = $element ?: $this->_rootElement;
         if (!$element->find($this->title, Locator::SELECTOR_XPATH)->isVisible()) {
@@ -98,10 +98,10 @@ class Links extends Form
      * Get data links block
      *
      * @param array|null $fields
-     * @param Element|null $element
+     * @param SimpleElement|null $element
      * @return array
      */
-    public function getDataLinks(array $fields = null, Element $element = null)
+    public function getDataLinks(array $fields = null, SimpleElement $element = null)
     {
         $element = $element ?: $this->_rootElement;
         if (!$element->find($this->title, Locator::SELECTOR_XPATH)->isVisible()) {
diff --git a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Block/Adminhtml/Catalog/Product/Edit/Tab/Downloadable/SampleRow.php b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Block/Adminhtml/Catalog/Product/Edit/Tab/Downloadable/SampleRow.php
index 6574b462fe22f582f8fa3b2d0e2fb70af539900e..32e504efe5a40ea22017bf9f1e204e8710873a4e 100644
--- a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Block/Adminhtml/Catalog/Product/Edit/Tab/Downloadable/SampleRow.php
+++ b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Block/Adminhtml/Catalog/Product/Edit/Tab/Downloadable/SampleRow.php
@@ -5,7 +5,7 @@
  */
 namespace Magento\Downloadable\Test\Block\Adminhtml\Catalog\Product\Edit\Tab\Downloadable;
 
-use Mtf\Block\Form;
+use Magento\Mtf\Block\Form;
 
 /**
  * Class SampleRow
diff --git a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Block/Adminhtml/Catalog/Product/Edit/Tab/Downloadable/Samples.php b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Block/Adminhtml/Catalog/Product/Edit/Tab/Downloadable/Samples.php
index 4a20cda2b606e11b233b66bba468bdaf0101d80e..5678ebd679fbbc179ba717b14214246c368e7730 100644
--- a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Block/Adminhtml/Catalog/Product/Edit/Tab/Downloadable/Samples.php
+++ b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Block/Adminhtml/Catalog/Product/Edit/Tab/Downloadable/Samples.php
@@ -5,9 +5,9 @@
  */
 namespace Magento\Downloadable\Test\Block\Adminhtml\Catalog\Product\Edit\Tab\Downloadable;
 
-use Mtf\Block\Form;
-use Mtf\Client\Element;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Form;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Client\Element\SimpleElement;
 
 /**
  * Class SampleRow
@@ -48,10 +48,10 @@ class Samples extends Form
      * Get Downloadable sample item block
      *
      * @param int $index
-     * @param Element $element
+     * @param SimpleElement $element
      * @return SampleRow
      */
-    public function getRowBlock($index, Element $element = null)
+    public function getRowBlock($index, SimpleElement $element = null)
     {
         $element = $element ?: $this->_rootElement;
         return $this->blockFactory->create(
@@ -64,10 +64,10 @@ class Samples extends Form
      * Fill samples block
      *
      * @param array|null $fields
-     * @param Element $element
+     * @param SimpleElement $element
      * @return void
      */
-    public function fillSamples(array $fields = null, Element $element = null)
+    public function fillSamples(array $fields = null, SimpleElement $element = null)
     {
         $element = $element ?: $this->_rootElement;
         if (!$element->find($this->samplesTitle, Locator::SELECTOR_XPATH)->isVisible()) {
@@ -85,10 +85,10 @@ class Samples extends Form
      * Get data samples block
      *
      * @param array|null $fields
-     * @param Element|null $element
+     * @param SimpleElement|null $element
      * @return array
      */
-    public function getDataSamples(array $fields = null, Element $element = null)
+    public function getDataSamples(array $fields = null, SimpleElement $element = null)
     {
         $element = $element ?: $this->_rootElement;
         if (!$element->find($this->samplesTitle, Locator::SELECTOR_XPATH)->isVisible()) {
diff --git a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Block/Adminhtml/Product/Composite/Configure.php b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Block/Adminhtml/Product/Composite/Configure.php
index ec98b6311bc4819d11a4bb27743928dfe09ac89f..db10ef66ce1de8bde5e3d07449c1e89421d559b6 100644
--- a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Block/Adminhtml/Product/Composite/Configure.php
+++ b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Block/Adminhtml/Product/Composite/Configure.php
@@ -7,7 +7,7 @@
 
 namespace Magento\Downloadable\Test\Block\Adminhtml\Product\Composite;
 
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class Configure
diff --git a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Block/Catalog/Product/View.php b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Block/Catalog/Product/View.php
index 9ca97192dd1a76aa3bd890408d1bd6fc8b6e0bbd..c15b0acc3ee5db6504a17bcf122b4006c72a8373 100644
--- a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Block/Catalog/Product/View.php
+++ b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Block/Catalog/Product/View.php
@@ -7,8 +7,8 @@
 namespace Magento\Downloadable\Test\Block\Catalog\Product;
 
 use Magento\Downloadable\Test\Fixture\DownloadableProductInjectable;
-use Mtf\Client\Element\Locator;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class View
diff --git a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Block/Catalog/Product/View/Links.php b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Block/Catalog/Product/View/Links.php
index 1526fce0ebe52f8a163810b4c7f27257c0d9f5b5..fdd0aee5c6c0030f98767b541ad188682d1d5b5a 100644
--- a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Block/Catalog/Product/View/Links.php
+++ b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Block/Catalog/Product/View/Links.php
@@ -6,8 +6,8 @@
 
 namespace Magento\Downloadable\Test\Block\Catalog\Product\View;
 
-use Mtf\Block\Block;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class Links
@@ -110,7 +110,7 @@ class Links extends Block
     {
         $linksData = [];
 
-        $choiceLinks = $this->_rootElement->find($this->choiceLink, Locator::SELECTOR_XPATH)->getElements();
+        $choiceLinks = $this->_rootElement->getElements($this->choiceLink, Locator::SELECTOR_XPATH);
         foreach ($choiceLinks as $choiceLink) {
             $link = $choiceLink->find($this->linkForChoice);
             $sample = $choiceLink->find($this->sampleLinkForChoice);
diff --git a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Block/Catalog/Product/View/Samples.php b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Block/Catalog/Product/View/Samples.php
index 8c73611925ee5c27bd4da353729d81430ea5f61d..2adfcbf438299ae42bc189a02473101cf004fe9a 100644
--- a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Block/Catalog/Product/View/Samples.php
+++ b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Block/Catalog/Product/View/Samples.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Downloadable\Test\Block\Catalog\Product\View;
 
-use Mtf\Block\Block;
+use Magento\Mtf\Block\Block;
 
 /**
  * Class Samples
@@ -46,7 +46,7 @@ class Samples extends Block
      */
     public function getLinks()
     {
-        $links = $this->_rootElement->find($this->linkTitle)->getElements();
+        $links = $this->_rootElement->getElements($this->linkTitle);
         $linksData = [];
 
         foreach ($links as $link) {
diff --git a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Block/Customer/Products/ListProducts.php b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Block/Customer/Products/ListProducts.php
index bc1222135b3d4a55a2184aac60a8560ff8507502..ae55ff3b18fbe3a65bb4013b22eaf06b4ebf0ccb 100644
--- a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Block/Customer/Products/ListProducts.php
+++ b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Block/Customer/Products/ListProducts.php
@@ -7,8 +7,8 @@
 
 namespace Magento\Downloadable\Test\Block\Customer\Products;
 
-use Mtf\Block\Block;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class ListProducts
diff --git a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Constraint/AbstractAssertTaxCalculationAfterCheckoutDownloadable.php b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Constraint/AbstractAssertTaxCalculationAfterCheckoutDownloadable.php
new file mode 100644
index 0000000000000000000000000000000000000000..f8bf3012cfa96847b662a9800f28357f909dc510
--- /dev/null
+++ b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Constraint/AbstractAssertTaxCalculationAfterCheckoutDownloadable.php
@@ -0,0 +1,74 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+
+namespace Magento\Downloadable\Test\Constraint;
+
+use Magento\Checkout\Test\Page\CheckoutCart;
+use Magento\Checkout\Test\Page\CheckoutOnepage;
+use Magento\Checkout\Test\Page\CheckoutOnepageSuccess;
+use Magento\Customer\Test\Fixture\CustomerInjectable;
+use Magento\Sales\Test\Page\OrderView;
+use Mtf\Fixture\InjectableFixture;
+use Magento\Tax\Test\Constraint\AbstractAssertTaxCalculationAfterCheckout;
+
+/**
+ * Checks that prices excl tax on order review and customer order pages are equal to specified in dataset.
+ */
+abstract class AbstractAssertTaxCalculationAfterCheckoutDownloadable extends AbstractAssertTaxCalculationAfterCheckout
+{
+    /**
+     * Constraint severeness
+     *
+     * @var string
+     */
+    protected $severeness = 'high';
+
+    /**
+     * Assert that prices on order review and customer order pages are equal to specified in dataset.
+     *
+     * @param array $prices
+     * @param InjectableFixture $product
+     * @param CheckoutCart $checkoutCart
+     * @param CheckoutOnepage $checkoutOnepage
+     * @param CheckoutOnepageSuccess $checkoutOnepageSuccess
+     * @param OrderView $orderView
+     * @return void
+     */
+    public function processAssert(
+        array $prices,
+        InjectableFixture $product,
+        CheckoutCart $checkoutCart,
+        CheckoutOnepage $checkoutOnepage,
+        CheckoutOnepageSuccess $checkoutOnepageSuccess,
+        OrderView $orderView
+    ) {
+        $this->checkoutOnepage = $checkoutOnepage;
+        $this->orderView = $orderView;
+
+        $checkoutCart->getProceedToCheckoutBlock()->proceedToCheckout();
+        $checkoutOnepage->getBillingBlock()->clickContinue();
+        $checkoutOnepage->getPaymentMethodsBlock()->selectPaymentMethod(['method' => 'check_money_order']);
+        $checkoutOnepage->getPaymentMethodsBlock()->clickContinue();
+        $actualPrices = [];
+        $actualPrices = $this->getReviewPrices($actualPrices, $product);
+        $actualPrices = $this->getReviewTotals($actualPrices);
+        $prices = $this->preparePrices($prices);
+        //Order review prices verification
+        $message = 'Prices on order review should be equal to defined in dataset.';
+        \PHPUnit_Framework_Assert::assertEquals($prices, $actualPrices, $message);
+
+        $checkoutOnepage->getReviewBlock()->placeOrder();
+        $checkoutOnepageSuccess->getSuccessBlock()->getGuestOrderId();
+        $checkoutOnepageSuccess->getSuccessBlock()->openOrder();
+        $actualPrices = [];
+        $actualPrices = $this->getOrderPrices($actualPrices, $product);
+        $actualPrices = $this->getOrderTotals($actualPrices);
+
+        //Frontend order prices verification
+        $message = 'Prices on order view page should be equal to defined in dataset.';
+        \PHPUnit_Framework_Assert::assertEquals($prices, $actualPrices, $message);
+    }
+}
diff --git a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Constraint/AbstractAssertTaxRuleIsAppliedToAllPricesDownloadable.php b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Constraint/AbstractAssertTaxRuleIsAppliedToAllPricesDownloadable.php
new file mode 100644
index 0000000000000000000000000000000000000000..bd74cdb32ae3b5fc98fccaf33b388ede9db87917
--- /dev/null
+++ b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Constraint/AbstractAssertTaxRuleIsAppliedToAllPricesDownloadable.php
@@ -0,0 +1,72 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+
+namespace Magento\Downloadable\Test\Constraint;
+
+use Magento\Cms\Test\Page\CmsIndex;
+use Magento\Catalog\Test\Page\Category\CatalogCategoryView;
+use Magento\Catalog\Test\Page\Product\CatalogProductView;
+use Magento\Checkout\Test\Page\CheckoutCart;
+use Magento\Tax\Test\Constraint\AbstractAssertTaxRuleIsAppliedToAllPrices;
+use Mtf\Fixture\FixtureFactory;
+use Mtf\Fixture\InjectableFixture;
+
+/**
+ * Checks that product prices excl tax on category, product and cart pages are equal to specified in dataset.
+ */
+abstract class AbstractAssertTaxRuleIsAppliedToAllPricesDownloadable extends AbstractAssertTaxRuleIsAppliedToAllPrices
+{
+    /**
+     * Constraint severeness.
+     *
+     * @var string
+     */
+    protected $severeness = 'high';
+
+    /**
+     * Assert that specified prices are actual on category, product and cart pages.
+     *
+     * @param InjectableFixture $product
+     * @param array $prices
+     * @param int $qty
+     * @param CmsIndex $cmsIndex
+     * @param CatalogCategoryView $catalogCategoryView
+     * @param CatalogProductView $catalogProductView
+     * @param CheckoutCart $checkoutCart
+     * @param FixtureFactory $fixtureFactory
+     * @return void
+     */
+    public function processAssert(
+        InjectableFixture $product,
+        array $prices,
+        $qty,
+        CmsIndex $cmsIndex,
+        CatalogCategoryView $catalogCategoryView,
+        CatalogProductView $catalogProductView,
+        CheckoutCart $checkoutCart,
+        FixtureFactory $fixtureFactory
+    ) {
+        $this->cmsIndex = $cmsIndex;
+        $this->catalogCategoryView = $catalogCategoryView;
+        $this->catalogProductView = $catalogProductView;
+        $this->checkoutCart = $checkoutCart;
+        $actualPrices = [];
+        //Assertion steps
+        $productName = $product->getName();
+        $productCategory = $product->getCategoryIds()[0];
+        $this->openCategory($productCategory);
+        $actualPrices = $this->getCategoryPrices($productName, $actualPrices);
+        $catalogCategoryView->getListProductBlock()->openProductViewPage($productName);
+        $catalogProductView->getViewBlock()->fillOptions($product);
+        $actualPrices = $this->getProductPagePrices($actualPrices);
+        $catalogProductView->getViewBlock()->clickAddToCart();
+        $actualPrices = $this->getCartPrices($product, $actualPrices);
+        $actualPrices = $this->getTotals($actualPrices);
+        //Prices verification
+        $message = 'Prices from dataset should be equal to prices on frontend';
+        \PHPUnit_Framework_Assert::assertEquals($prices, $actualPrices, $message);
+    }
+}
diff --git a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Constraint/AssertDownloadableDuplicateForm.php b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Constraint/AssertDownloadableDuplicateForm.php
index 75093a3f6a19df2fbebfe6129f85f486f7c949a8..4fc2eadf8a97259729a5fe8e051edcd6bbd84114 100644
--- a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Constraint/AssertDownloadableDuplicateForm.php
+++ b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Constraint/AssertDownloadableDuplicateForm.php
@@ -9,7 +9,7 @@ namespace Magento\Downloadable\Test\Constraint;
 use Magento\Catalog\Test\Constraint\AssertProductDuplicateForm;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductEdit;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductIndex;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class AssertDownloadableDuplicateForm
diff --git a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Constraint/AssertDownloadableLinksData.php b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Constraint/AssertDownloadableLinksData.php
index ac485a722142ed98b3c3b712535134eafa3ee6c6..376b7af496f5101ac670b59933ea0a57e6f84b8a 100644
--- a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Constraint/AssertDownloadableLinksData.php
+++ b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Constraint/AssertDownloadableLinksData.php
@@ -8,8 +8,8 @@ namespace Magento\Downloadable\Test\Constraint;
 
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
 use Magento\Downloadable\Test\Fixture\DownloadableProductInjectable;
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractAssertForm;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractAssertForm;
 
 /**
  * Class AssertDownloadableLinksData
@@ -48,13 +48,13 @@ class AssertDownloadableLinksData extends AbstractAssertForm
      *
      * @param CatalogProductView $catalogProductView
      * @param DownloadableProductInjectable $product
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @return void
      */
     public function processAssert(
         CatalogProductView $catalogProductView,
         DownloadableProductInjectable $product,
-        Browser $browser
+        BrowserInterface $browser
     ) {
         $browser->open($_ENV['app_frontend_url'] . $product->getUrlKey() . '.html');
 
diff --git a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Constraint/AssertDownloadableProductInCustomerWishlistOnBackendGrid.php b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Constraint/AssertDownloadableProductInCustomerWishlistOnBackendGrid.php
index 3b2d61a5554791d118a851645495ccbdd2a13c8d..e1be5aba24be859a48670d5c650a723c9a528f2c 100644
--- a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Constraint/AssertDownloadableProductInCustomerWishlistOnBackendGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Constraint/AssertDownloadableProductInCustomerWishlistOnBackendGrid.php
@@ -8,7 +8,7 @@ namespace Magento\Downloadable\Test\Constraint;
 
 use Magento\Downloadable\Test\Fixture\DownloadableProductInjectable;
 use Magento\Wishlist\Test\Constraint\AssertProductInCustomerWishlistOnBackendGrid;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class AssertDownloadableProductInCustomerWishlistOnBackendGrid
diff --git a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Constraint/AssertDownloadableSamplesData.php b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Constraint/AssertDownloadableSamplesData.php
index 42321469ce3f556fdc50e9ea8f0811152b20e280..17c1132ce710915a1cd3131ca2056f3184e2895d 100644
--- a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Constraint/AssertDownloadableSamplesData.php
+++ b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Constraint/AssertDownloadableSamplesData.php
@@ -8,8 +8,8 @@ namespace Magento\Downloadable\Test\Constraint;
 
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
 use Magento\Downloadable\Test\Fixture\DownloadableProductInjectable;
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractAssertForm;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractAssertForm;
 
 /**
  * Class AssertDownloadableSamplesData
@@ -46,13 +46,13 @@ class AssertDownloadableSamplesData extends AbstractAssertForm
      *
      * @param CatalogProductView $productView
      * @param DownloadableProductInjectable $product
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @return void
      */
     public function processAssert(
         CatalogProductView $productView,
         DownloadableProductInjectable $product,
-        Browser $browser
+        BrowserInterface $browser
     ) {
         $browser->open($_ENV['app_frontend_url'] . $product->getUrlKey() . '.html');
 
diff --git a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Constraint/AssertTaxCalculationAfterCheckoutDownloadableExcludingIncludingTax.php b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Constraint/AssertTaxCalculationAfterCheckoutDownloadableExcludingIncludingTax.php
new file mode 100644
index 0000000000000000000000000000000000000000..64896843ae68b3b461a90ccd060d8b9d42dc186d
--- /dev/null
+++ b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Constraint/AssertTaxCalculationAfterCheckoutDownloadableExcludingIncludingTax.php
@@ -0,0 +1,63 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+
+namespace Magento\Downloadable\Test\Constraint;
+
+/**
+ * Checks that prices excl and incl tax on order review and customer order pages are equal to specified in dataset.
+ */
+class AssertTaxCalculationAfterCheckoutDownloadableExcludingIncludingTax extends
+ AbstractAssertTaxCalculationAfterCheckoutDownloadable
+{
+    /**
+     * Constraint severeness
+     *
+     * @var string
+     */
+    protected $severeness = 'high';
+
+    /**
+     * Get review totals.
+     *
+     * @param $actualPrices
+     * @return array
+     */
+    public function getReviewTotals($actualPrices)
+    {
+        $reviewBlock = $this->checkoutOnepage->getReviewBlock();
+        $actualPrices['subtotal_excl_tax'] = $reviewBlock->getSubtotalExclTax();
+        $actualPrices['subtotal_incl_tax'] = $reviewBlock->getSubtotalInclTax();
+        $actualPrices['discount'] = $reviewBlock->getDiscount();
+        $actualPrices['shipping_excl_tax'] = $reviewBlock->getShippingExclTax();
+        $actualPrices['shipping_incl_tax'] = $reviewBlock->getShippingInclTax();
+        $actualPrices['tax'] = $reviewBlock->getTax();
+        $actualPrices['grand_total_excl_tax'] = $reviewBlock->getGrandTotalExclTax();
+        $actualPrices['grand_total_incl_tax'] = $reviewBlock->getGrandTotalInclTax();
+
+        return $actualPrices;
+    }
+
+    /**
+     * Get order totals.
+     *
+     * @param $actualPrices
+     * @return array
+     */
+    public function getOrderTotals($actualPrices)
+    {
+        $viewBlock = $this->orderView->getOrderViewBlock();
+        $actualPrices['subtotal_excl_tax'] = $viewBlock->getSubtotalExclTax();
+        $actualPrices['subtotal_incl_tax'] = $viewBlock->getSubtotalInclTax();
+        $actualPrices['discount'] = $viewBlock->getDiscount();
+        $actualPrices['shipping_excl_tax'] = $viewBlock->getShippingExclTax();
+        $actualPrices['shipping_incl_tax'] = $viewBlock->getShippingInclTax();
+        $actualPrices['tax'] = $viewBlock->getTax();
+        $actualPrices['grand_total_excl_tax'] = $viewBlock->getGrandTotal();
+        $actualPrices['grand_total_incl_tax'] = $viewBlock->getGrandTotalInclTax();
+
+        return $actualPrices;
+    }
+}
diff --git a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Constraint/AssertTaxCalculationAfterCheckoutDownloadableExcludingTax.php b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Constraint/AssertTaxCalculationAfterCheckoutDownloadableExcludingTax.php
new file mode 100644
index 0000000000000000000000000000000000000000..60a4e36293d08ae72d3b49153029ee4ff6fc8cb9
--- /dev/null
+++ b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Constraint/AssertTaxCalculationAfterCheckoutDownloadableExcludingTax.php
@@ -0,0 +1,66 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+
+namespace Magento\Downloadable\Test\Constraint;
+
+use Magento\Customer\Test\Fixture\CustomerInjectable;
+
+/**
+ * Checks that prices excl tax on order review and customer order pages are equal to specified in dataset.
+ */
+class AssertTaxCalculationAfterCheckoutDownloadableExcludingTax extends
+ AbstractAssertTaxCalculationAfterCheckoutDownloadable
+{
+    /**
+     * Constraint severeness
+     *
+     * @var string
+     */
+    protected $severeness = 'high';
+
+    /**
+     * Get review totals.
+     *
+     * @param $actualPrices
+     * @return array
+     */
+    public function getReviewTotals($actualPrices)
+    {
+        $reviewBlock = $this->checkoutOnepage->getReviewBlock();
+        $actualPrices['subtotal_excl_tax'] = $reviewBlock->getSubtotal();
+        $actualPrices['subtotal_incl_tax'] = null;
+        $actualPrices['discount'] = $reviewBlock->getDiscount();
+        $actualPrices['shipping_excl_tax'] = $reviewBlock->getShippingExclTax();
+        $actualPrices['shipping_incl_tax'] = $reviewBlock->getShippingInclTax();
+        $actualPrices['tax'] = $reviewBlock->getTax();
+        $actualPrices['grand_total_excl_tax'] = $reviewBlock->getGrandTotal();
+        $actualPrices['grand_total_incl_tax'] = null;
+
+        return $actualPrices;
+    }
+
+    /**
+     * Get order totals.
+     *
+     * @param $actualPrices
+     * @return array
+     */
+    public function getOrderTotals($actualPrices)
+    {
+        $viewBlock = $this->orderView->getOrderViewBlock();
+        $actualPrices['subtotal_excl_tax'] = $viewBlock->getSubtotal();
+        $actualPrices['subtotal_incl_tax'] = null;
+
+        $actualPrices['discount'] = $viewBlock->getDiscount();
+        $actualPrices['shipping_excl_tax'] = $viewBlock->getShippingExclTax();
+        $actualPrices['shipping_incl_tax'] = $viewBlock->getShippingInclTax();
+        $actualPrices['tax'] = $viewBlock->getTax();
+        $actualPrices['grand_total_excl_tax'] = $viewBlock->getGrandTotal();
+        $actualPrices['grand_total_incl_tax'] = null;
+
+        return $actualPrices;
+    }
+}
diff --git a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Constraint/AssertTaxCalculationAfterCheckoutDownloadableIncludingTax.php b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Constraint/AssertTaxCalculationAfterCheckoutDownloadableIncludingTax.php
new file mode 100644
index 0000000000000000000000000000000000000000..653b30217dbb1d9fc5c4652b93e1863e7aca336f
--- /dev/null
+++ b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Constraint/AssertTaxCalculationAfterCheckoutDownloadableIncludingTax.php
@@ -0,0 +1,63 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+
+namespace Magento\Downloadable\Test\Constraint;
+
+/**
+ * Checks that prices incl tax on order review and customer order pages are equal to specified in dataset.
+ */
+class AssertTaxCalculationAfterCheckoutDownloadableIncludingTax extends
+ AbstractAssertTaxCalculationAfterCheckoutDownloadable
+{
+    /**
+     * Constraint severeness.
+     *
+     * @var string
+     */
+    protected $severeness = 'high';
+
+    /**
+     * Get review totals.
+     *
+     * @param $actualPrices
+     * @return array
+     */
+    public function getReviewTotals($actualPrices)
+    {
+        $reviewBlock = $this->checkoutOnepage->getReviewBlock();
+        $actualPrices['subtotal_excl_tax'] = null;
+        $actualPrices['subtotal_incl_tax'] = $reviewBlock->getSubtotal();
+        $actualPrices['discount'] = $reviewBlock->getDiscount();
+        $actualPrices['shipping_excl_tax'] = $reviewBlock->getShippingExclTax();
+        $actualPrices['shipping_incl_tax'] = $reviewBlock->getShippingInclTax();
+        $actualPrices['tax'] = $reviewBlock->getTax();
+        $actualPrices['grand_total_excl_tax'] = $reviewBlock->getGrandTotalExclTax();
+        $actualPrices['grand_total_incl_tax'] = $reviewBlock->getGrandTotalInclTax();
+
+        return $actualPrices;
+    }
+
+    /**
+     * Get order totals.
+     *
+     * @param $actualPrices
+     * @return array
+     */
+    public function getOrderTotals($actualPrices)
+    {
+        $viewBlock = $this->orderView->getOrderViewBlock();
+        $actualPrices['subtotal_excl_tax'] = null;
+        $actualPrices['subtotal_incl_tax'] = $viewBlock->getSubtotal();
+        $actualPrices['discount'] = $viewBlock->getDiscount();
+        $actualPrices['shipping_excl_tax'] = $viewBlock->getShippingExclTax();
+        $actualPrices['shipping_incl_tax'] = $viewBlock->getShippingInclTax();
+        $actualPrices['tax'] = $viewBlock->getTax();
+        $actualPrices['grand_total_excl_tax'] = $viewBlock->getGrandTotal();
+        $actualPrices['grand_total_incl_tax'] = $viewBlock->getGrandTotalInclTax();
+
+        return $actualPrices;
+    }
+}
diff --git a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Constraint/AssertTaxRuleIsAppliedToAllPricesDownloadableExcludingIncludingTax.php b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Constraint/AssertTaxRuleIsAppliedToAllPricesDownloadableExcludingIncludingTax.php
new file mode 100644
index 0000000000000000000000000000000000000000..2ea9f0bc5bd24c4244a5a80e510bf907f67d3907
--- /dev/null
+++ b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Constraint/AssertTaxRuleIsAppliedToAllPricesDownloadableExcludingIncludingTax.php
@@ -0,0 +1,73 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+
+namespace Magento\Downloadable\Test\Constraint;
+
+/**
+ * Checks that prices excl tax on category, product and cart pages are equal to specified in dataset.
+ */
+class AssertTaxRuleIsAppliedToAllPricesDownloadableExcludingIncludingTax extends
+ AbstractAssertTaxRuleIsAppliedToAllPricesDownloadable
+{
+    /**
+     * Constraint severeness.
+     *
+     * @var string
+     */
+    protected $severeness = 'high';
+
+    /**
+     * Get prices on category page.
+     *
+     * @param $productName
+     * @param array $actualPrices
+     * @return array
+     */
+    public function getCategoryPrices($productName, $actualPrices)
+    {
+        $priceBlock = $this->catalogCategoryView->getListProductBlock()->getProductPriceBlock($productName);
+        $actualPrices['category_price_excl_tax'] = $priceBlock->getPriceExcludingTax();
+        $actualPrices['category_price_incl_tax'] = $priceBlock->getPriceIncludingTax();
+
+        return $actualPrices;
+    }
+
+    /**
+     * Get product view prices.
+     *
+     * @param array $actualPrices
+     * @return array
+     */
+    public function getProductPagePrices($actualPrices)
+    {
+        $viewBlock = $this->catalogProductView->getViewBlock();
+        $actualPrices['product_view_price_excl_tax'] = $viewBlock->getProductPriceExcludingTax();
+        $actualPrices['product_view_price_incl_tax'] = $viewBlock->getProductPriceIncludingTax();
+
+        return $actualPrices;
+    }
+
+    /**
+     * Get totals.
+     *
+     * @param $actualPrices
+     * @return array
+     */
+    public function getTotals($actualPrices)
+    {
+        $totalsBlock = $this->checkoutCart->getTotalsBlock();
+        $actualPrices['subtotal_excl_tax'] = $totalsBlock->getSubtotalExcludingTax();
+        $actualPrices['subtotal_incl_tax'] = $totalsBlock->getSubtotalIncludingTax();
+        $actualPrices['discount'] = $totalsBlock->getDiscount();
+        $actualPrices['shipping_excl_tax'] = $totalsBlock->getShippingPrice();
+        $actualPrices['shipping_incl_tax'] = $totalsBlock->getShippingPriceInclTax();
+        $actualPrices['tax'] = $totalsBlock->getTax();
+        $actualPrices['grand_total_excl_tax'] = $totalsBlock->getGrandTotalExcludingTax();
+        $actualPrices['grand_total_incl_tax'] = $totalsBlock->getGrandTotalIncludingTax();
+
+        return $actualPrices;
+    }
+}
diff --git a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Constraint/AssertTaxRuleIsAppliedToAllPricesDownloadableExcludingTax.php b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Constraint/AssertTaxRuleIsAppliedToAllPricesDownloadableExcludingTax.php
new file mode 100644
index 0000000000000000000000000000000000000000..eaa5d5e115f5908ac9449ee4ed5a05e14d30383a
--- /dev/null
+++ b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Constraint/AssertTaxRuleIsAppliedToAllPricesDownloadableExcludingTax.php
@@ -0,0 +1,74 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+
+namespace Magento\Downloadable\Test\Constraint;
+
+/**
+ * Checks that product prices excl tax on category, product and cart pages are equal to specified in dataset.
+ */
+class AssertTaxRuleIsAppliedToAllPricesDownloadableExcludingTax extends
+ AbstractAssertTaxRuleIsAppliedToAllPricesDownloadable
+{
+    /**
+     * Constraint severeness.
+     *
+     * @var string
+     */
+    protected $severeness = 'high';
+
+
+    /**
+     * Get prices on category page.
+     *
+     * @param $productName
+     * @param array $actualPrices
+     * @return array
+     */
+    public function getCategoryPrices($productName, $actualPrices)
+    {
+        $priceBlock = $this->catalogCategoryView->getListProductBlock()->getProductPriceBlock($productName);
+        $actualPrices['category_price_excl_tax'] = $priceBlock->getEffectivePrice();
+        $actualPrices['category_price_incl_tax'] = null;
+
+        return $actualPrices;
+    }
+
+    /**
+     * Get product view prices.
+     *
+     * @param array $actualPrices
+     * @return array
+     */
+    public function getProductPagePrices($actualPrices)
+    {
+        $viewBlock = $this->catalogProductView->getViewBlock();
+        $actualPrices['product_view_price_excl_tax'] = $viewBlock->getPriceBlock()->getEffectivePrice();
+        $actualPrices['product_view_price_incl_tax'] = null;
+
+        return $actualPrices;
+    }
+
+    /**
+     * Get totals.
+     *
+     * @param array $actualPrices
+     * @return array
+     */
+    public function getTotals($actualPrices)
+    {
+        $totalsBlock = $this->checkoutCart->getTotalsBlock();
+        $actualPrices['subtotal_excl_tax'] = $totalsBlock->getSubtotal();
+        $actualPrices['subtotal_incl_tax'] = null;
+        $actualPrices['discount'] = $totalsBlock->getDiscount();
+        $actualPrices['shipping_excl_tax'] = $totalsBlock->getShippingPrice();
+        $actualPrices['shipping_incl_tax'] = $totalsBlock->getShippingPriceInclTax();
+        $actualPrices['tax'] = $totalsBlock->getTax();
+        $actualPrices['grand_total_excl_tax'] = $totalsBlock->getGrandTotal();
+        $actualPrices['grand_total_incl_tax'] = null;
+
+        return $actualPrices;
+    }
+}
diff --git a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Constraint/AssertTaxRuleIsAppliedToAllPricesDownloadableIncludingTax.php b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Constraint/AssertTaxRuleIsAppliedToAllPricesDownloadableIncludingTax.php
new file mode 100644
index 0000000000000000000000000000000000000000..31fc3a1154b3d669e5e9e406251adda9953b3fd4
--- /dev/null
+++ b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Constraint/AssertTaxRuleIsAppliedToAllPricesDownloadableIncludingTax.php
@@ -0,0 +1,73 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+
+namespace Magento\Downloadable\Test\Constraint;
+
+/**
+ * Checks that prices incl tax on category, product and cart pages are equal to specified in dataset.
+ */
+class AssertTaxRuleIsAppliedToAllPricesDownloadableIncludingTax extends
+ AbstractAssertTaxRuleIsAppliedToAllPricesDownloadable
+{
+    /**
+     * Constraint severeness.
+     *
+     * @var string
+     */
+    protected $severeness = 'high';
+
+    /**
+     * Get prices on category page.
+     *
+     * @param string $productName
+     * @param array $actualPrices
+     * @return array
+     */
+    public function getCategoryPrices($productName, $actualPrices)
+    {
+        $priceBlock = $this->catalogCategoryView->getListProductBlock()->getProductPriceBlock($productName);
+        $actualPrices['category_price_excl_tax'] = null;
+        $actualPrices['category_price_incl_tax'] = $priceBlock->getEffectivePrice();
+
+        return $actualPrices;
+    }
+
+    /**
+     * Get product view prices.
+     *
+     * @param array $actualPrices
+     * @return array
+     */
+    public function getProductPagePrices($actualPrices)
+    {
+        $viewBlock = $this->catalogProductView->getViewBlock();
+        $actualPrices['product_view_price_excl_tax'] = null;
+        $actualPrices['product_view_price_incl_tax'] = $viewBlock->getPriceBlock()->getEffectivePrice();
+
+        return $actualPrices;
+    }
+
+    /**
+     * Get totals.
+     *
+     * @param $actualPrices
+     * @return array
+     */
+    public function getTotals($actualPrices)
+    {
+        $totalsBlock = $this->checkoutCart->getTotalsBlock();
+        $actualPrices['subtotal_excl_tax'] = null;
+        $actualPrices['subtotal_incl_tax'] = $totalsBlock->getSubtotal();
+        $actualPrices['discount'] = $totalsBlock->getDiscount();
+        $actualPrices['shipping_excl_tax'] = $totalsBlock->getShippingPrice();
+        $actualPrices['shipping_incl_tax'] = $totalsBlock->getShippingPriceInclTax();
+        $actualPrices['tax'] = $totalsBlock->getTax();
+        $actualPrices['grand_total_excl_tax'] = $totalsBlock->getGrandTotalExcludingTax();
+        $actualPrices['grand_total_incl_tax'] = $totalsBlock->getGrandTotalIncludingTax();
+
+        return $actualPrices;
+    }
+}
diff --git a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Fixture/Cart/Item.php b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Fixture/Cart/Item.php
index c33a55a4e2d45465da9bba4828ff358746f16ed6..6962509496d831b195563ef0c6d7b31dd68b6c1e 100644
--- a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Fixture/Cart/Item.php
+++ b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Fixture/Cart/Item.php
@@ -7,7 +7,7 @@
 namespace Magento\Downloadable\Test\Fixture\Cart;
 
 use Magento\Downloadable\Test\Fixture\DownloadableProductInjectable;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class Item
diff --git a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Fixture/DownloadableProduct.php b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Fixture/DownloadableProduct.php
index f4d380731114ad060640bb68bdaaa216b17af516..96407f349a198b4ad375ae801f34981ca95bd8b9 100644
--- a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Fixture/DownloadableProduct.php
+++ b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Fixture/DownloadableProduct.php
@@ -6,7 +6,7 @@
 namespace Magento\Downloadable\Test\Fixture;
 
 use Magento\Catalog\Test\Fixture\Product;
-use Mtf\Factory\Factory;
+use Magento\Mtf\Factory\Factory;
 
 /**
  * Class DownloadableProduct
diff --git a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Fixture/DownloadableProduct/LinksNotPurchasedSeparately.php b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Fixture/DownloadableProduct/LinksNotPurchasedSeparately.php
index c51edf7d793837221d5046c67c2027bdaaf45130..cc71d919ab80285dae4f793a59d493f6ab78d354 100644
--- a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Fixture/DownloadableProduct/LinksNotPurchasedSeparately.php
+++ b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Fixture/DownloadableProduct/LinksNotPurchasedSeparately.php
@@ -5,7 +5,7 @@
  */
 namespace Magento\Downloadable\Test\Fixture\DownloadableProduct;
 
-use Mtf\Factory\Factory;
+use Magento\Mtf\Factory\Factory;
 
 /**
  * Class LinksNotPurchasedSeparately
diff --git a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Fixture/DownloadableProduct/LinksPurchasedSeparately.php b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Fixture/DownloadableProduct/LinksPurchasedSeparately.php
index c9013f0375e3147e0ff45dd03b2511147b1525a8..0151c23348f831c92dd29d8d6c81e08f24e81d37 100644
--- a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Fixture/DownloadableProduct/LinksPurchasedSeparately.php
+++ b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Fixture/DownloadableProduct/LinksPurchasedSeparately.php
@@ -6,7 +6,7 @@
 namespace Magento\Downloadable\Test\Fixture\DownloadableProduct;
 
 use Magento\Downloadable\Test\Fixture\DownloadableProduct;
-use Mtf\Factory\Factory;
+use Magento\Mtf\Factory\Factory;
 
 /**
  * Class LinksPurchasedSeparately
diff --git a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Fixture/DownloadableProductInjectable.php b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Fixture/DownloadableProductInjectable.php
index ae72fdb25a22df5ec2f4d12ca3362c4f96c4277b..b7c127fee461f3c8ef3b68e2a69ec48448167515 100644
--- a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Fixture/DownloadableProductInjectable.php
+++ b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Fixture/DownloadableProductInjectable.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Downloadable\Test\Fixture;
 
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Class DownloadableProductInjectable
@@ -144,7 +144,7 @@ class DownloadableProductInjectable extends InjectableFixture
         'default_value' => '',
         'input' => 'text',
         'group' => 'advanced-pricing',
-        'source' => 'Magento\Catalog\Test\Fixture\CatalogProductSimple\GroupPriceOptions',
+        'source' => '\Magento\Downloadable\Test\Fixture\DownloadableProductInjectable\GroupPriceOptions'
     ];
 
     protected $has_options = [
diff --git a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Fixture/DownloadableProductInjectable/CheckoutData.php b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Fixture/DownloadableProductInjectable/CheckoutData.php
index 3607174b0c716bd3e070b285b329e8ecd8394680..6273955c5ba95a1b40d661c01e8192d4de22bcfe 100644
--- a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Fixture/DownloadableProductInjectable/CheckoutData.php
+++ b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Fixture/DownloadableProductInjectable/CheckoutData.php
@@ -80,6 +80,23 @@ class CheckoutData extends \Magento\Catalog\Test\Fixture\CatalogProductSimple\Ch
                     ],
                 ],
             ],
+
+            'one_custom_option_and_downloadable_link' => [
+                'options' => [
+                    'custom_options' => [
+                        [
+                            'title' => 'attribute_key_0',
+                            'value' => 'option_key_0'
+                        ],
+                    ],
+                    'links' => [
+                        [
+                            'label' => 'link_1',
+                            'value' => 'Yes'
+                        ]
+                    ],
+                ]
+            ],
         ];
         return isset($presets[$name]) ? $presets[$name] : [];
     }
diff --git a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Fixture/DownloadableProductInjectable/GroupPriceOptions.php b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Fixture/DownloadableProductInjectable/GroupPriceOptions.php
new file mode 100644
index 0000000000000000000000000000000000000000..2d0b2c8f339dfa6a6f6c3bc64fe96af88a37f836
--- /dev/null
+++ b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Fixture/DownloadableProductInjectable/GroupPriceOptions.php
@@ -0,0 +1,43 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+
+namespace Magento\Downloadable\Test\Fixture\DownloadableProductInjectable;
+
+/**
+ * Group price options fixture for downloadable product
+ */
+class GroupPriceOptions extends \Magento\Catalog\Test\Fixture\CatalogProductSimple\GroupPriceOptions
+{
+    /**
+     * Get preset array
+     *
+     * @param string $name
+     * @return mixed|null
+     */
+    protected function getPreset($name)
+    {
+        $presets = [
+            'default' => [
+                [
+                    'price' => 20,
+                    'website' => 'All Websites [USD]',
+                    'customer_group' => 'NOT LOGGED IN',
+                ],
+            ],
+            'downloadable_with_tax' => [
+                [
+                    'price' => 20.00,
+                    'website' => 'All Websites [USD]',
+                    'customer_group' => 'General',
+                ],
+            ],
+        ];
+        if (!isset($presets[$name])) {
+            return null;
+        }
+        return $presets[$name];
+    }
+}
diff --git a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Fixture/DownloadableProductInjectable/Links.php b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Fixture/DownloadableProductInjectable/Links.php
index 54db055d0c8f9bb66e80cc0e4984c44dc5bf4109..89189d993b23508e58b742bd4a369e5d5278fee0 100644
--- a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Fixture/DownloadableProductInjectable/Links.php
+++ b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Fixture/DownloadableProductInjectable/Links.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Downloadable\Test\Fixture\DownloadableProductInjectable;
 
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class Links
diff --git a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Fixture/DownloadableProductInjectable/Samples.php b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Fixture/DownloadableProductInjectable/Samples.php
index 31ace5f042906e2a03b188625b4dccde669714c7..e7e7a3a1bc878b48d2898f577a9364049f617e2e 100644
--- a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Fixture/DownloadableProductInjectable/Samples.php
+++ b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Fixture/DownloadableProductInjectable/Samples.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Downloadable\Test\Fixture\DownloadableProductInjectable;
 
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class Samples
diff --git a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Handler/Curl/CreateDownloadable.php b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Handler/Curl/CreateDownloadable.php
index 36c4d0570d1898b6c53411f4833ac0d06b272849..34466591d866524a628a65465b7cc584c83c8179 100644
--- a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Handler/Curl/CreateDownloadable.php
+++ b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Handler/Curl/CreateDownloadable.php
@@ -5,12 +5,12 @@
  */
 namespace Magento\Downloadable\Test\Handler\Curl;
 
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Handler\Curl;
-use Mtf\System\Config;
-use Mtf\Util\Protocol\CurlInterface;
-use Mtf\Util\Protocol\CurlTransport;
-use Mtf\Util\Protocol\CurlTransport\BackendDecorator;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Handler\Curl;
+use Magento\Mtf\System\Config;
+use Magento\Mtf\Util\Protocol\CurlInterface;
+use Magento\Mtf\Util\Protocol\CurlTransport;
+use Magento\Mtf\Util\Protocol\CurlTransport\BackendDecorator;
 
 class CreateDownloadable extends Curl
 {
diff --git a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Handler/DownloadableProductInjectable/Curl.php b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Handler/DownloadableProductInjectable/Curl.php
index 2c34a5381e8591295a1f866a933ca7f330ed87d3..fc45d141f131b0fb31aa272322b9d2f8341c90ef 100644
--- a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Handler/DownloadableProductInjectable/Curl.php
+++ b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Handler/DownloadableProductInjectable/Curl.php
@@ -7,11 +7,11 @@
 namespace Magento\Downloadable\Test\Handler\DownloadableProductInjectable;
 
 use Magento\Catalog\Test\Handler\CatalogProductSimple\Curl as ProductCurl;
-use Mtf\Fixture\FixtureInterface;
-use Mtf\System\Config;
-use Mtf\Util\Protocol\CurlInterface;
-use Mtf\Util\Protocol\CurlTransport;
-use Mtf\Util\Protocol\CurlTransport\BackendDecorator;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\System\Config;
+use Magento\Mtf\Util\Protocol\CurlInterface;
+use Magento\Mtf\Util\Protocol\CurlTransport;
+use Magento\Mtf\Util\Protocol\CurlTransport\BackendDecorator;
 
 /**
  * Class Curl
diff --git a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Handler/DownloadableProductInjectable/DownloadableProductInjectableInterface.php b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Handler/DownloadableProductInjectable/DownloadableProductInjectableInterface.php
index af455199b7d0ca9d145bb9320fa93506f4e83edd..04c50ffa5bed5602d181ab6e2b43f8a0964a6b79 100644
--- a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Handler/DownloadableProductInjectable/DownloadableProductInjectableInterface.php
+++ b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Handler/DownloadableProductInjectable/DownloadableProductInjectableInterface.php
@@ -5,7 +5,7 @@
  */
 namespace Magento\Downloadable\Test\Handler\DownloadableProductInjectable;
 
-use Mtf\Handler\HandlerInterface;
+use Magento\Mtf\Handler\HandlerInterface;
 
 /**
  * Interface DownloadableProductInjectableInterface
diff --git a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Repository/DownloadableProductInjectable.php b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Repository/DownloadableProductInjectable.php
index de7dda22fc1d3b40c3f2a9d1a3c0189ec1f40149..462ff906b32dc9c18db4c1540f7bc9a5357f3d92 100644
--- a/dev/tests/functional/tests/app/Magento/Downloadable/Test/Repository/DownloadableProductInjectable.php
+++ b/dev/tests/functional/tests/app/Magento/Downloadable/Test/Repository/DownloadableProductInjectable.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Downloadable\Test\Repository;
 
-use Mtf\Repository\AbstractRepository;
+use Magento\Mtf\Repository\AbstractRepository;
 
 /**
  * Class DownloadableProductInjectable
@@ -21,6 +21,7 @@ class DownloadableProductInjectable extends AbstractRepository
      * @param array $defaultData [optional]
      *
      * @SuppressWarnings(PHPMD.UnusedFormalParameter)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public function __construct(array $defaultConfig = [], array $defaultData = [])
     {
@@ -74,5 +75,65 @@ class DownloadableProductInjectable extends AbstractRepository
             'downloadable_links' => ['preset' => 'with_two_separately_links'],
             'checkout_data' => ['preset' => 'with_two_bought_links'],
         ];
+        $this->_data['with_two_separately_links_special_price_and_category'] = [
+            'name' => 'Downloadable product %isolation%',
+            'sku' => 'downloadable_product_%isolation%',
+            'type_id' => 'downloadable',
+            'url_key' => 'downloadable-product-%isolation%',
+            'price' => ['value' => '30'],
+            'special_price' => '20',
+            'tax_class_id' => ['dataSet' => 'Taxable Goods'],
+            'quantity_and_stock_status' => [
+                'qty' => 1111,
+                'is_in_stock' => 'In Stock'
+            ],
+            'status' => 'Product online',
+            'category_ids' => ['presets' => 'default'],
+            'visibility' => 'Catalog, Search',
+            'is_virtual' => 'Yes',
+            'website_ids' => ['Main Website'],
+            'downloadable_links' => ['preset' => 'with_two_separately_links'],
+            'checkout_data' => ['preset' => 'with_two_separately_links']
+        ];
+        $this->_data['with_two_separately_links_group_price_and_category'] = [
+            'name' => 'Downloadable product %isolation%',
+            'sku' => 'downloadable_product_%isolation%',
+            'type_id' => 'downloadable',
+            'url_key' => 'downloadable-product-%isolation%',
+            'price' => ['value' => '30'],
+            'group_price' => ['preset' => 'downloadable_with_tax'],
+            'tax_class_id' => ['dataSet' => 'Taxable Goods'],
+            'quantity_and_stock_status' => [
+                'qty' => 1111,
+                'is_in_stock' => 'In Stock'
+            ],
+            'status' => 'Product online',
+            'category_ids' => ['presets' => 'default'],
+            'visibility' => 'Catalog, Search',
+            'is_virtual' => 'Yes',
+            'website_ids' => ['Main Website'],
+            'downloadable_links' => ['preset' => 'with_two_separately_links'],
+            'checkout_data' => ['preset' => 'with_two_separately_links']
+        ];
+        $this->_data['with_two_separately_links_custom_options_and_category'] = [
+            'name' => 'Downloadable product %isolation%',
+            'sku' => 'downloadable_product_%isolation%',
+            'type_id' => 'downloadable',
+            'url_key' => 'downloadable-product-%isolation%',
+            'price' => ['value' => '20'],
+            'tax_class_id' => ['dataSet' => 'Taxable Goods'],
+            'quantity_and_stock_status' => [
+                'qty' => 1111,
+                'is_in_stock' => 'In Stock'
+            ],
+            'status' => 'Product online',
+            'category_ids' => ['presets' => 'default'],
+            'visibility' => 'Catalog, Search',
+            'is_virtual' => 'Yes',
+            'website_ids' => ['Main Website'],
+            'custom_options' => ['preset' => 'drop_down_with_one_option_percent_price'],
+            'downloadable_links' => ['preset' => 'with_two_separately_links'],
+            'checkout_data' => ['preset' => 'one_custom_option_and_downloadable_link']
+        ];
     }
 }
diff --git a/dev/tests/functional/tests/app/Magento/Downloadable/Test/TestCase/Create/LinksPurchasedSeparatelyTest.php b/dev/tests/functional/tests/app/Magento/Downloadable/Test/TestCase/Create/LinksPurchasedSeparatelyTest.php
index cd02d1fb569e907273e4538782908124d7bb41e5..3d92e2ab47b2bb8a98b4c34afaefb901250ba142 100755
--- a/dev/tests/functional/tests/app/Magento/Downloadable/Test/TestCase/Create/LinksPurchasedSeparatelyTest.php
+++ b/dev/tests/functional/tests/app/Magento/Downloadable/Test/TestCase/Create/LinksPurchasedSeparatelyTest.php
@@ -7,14 +7,18 @@
 namespace Magento\Downloadable\Test\TestCase\Create;
 
 use Magento\Downloadable\Test\Fixture\DownloadableProduct;
-use Mtf\Factory\Factory;
-use Mtf\TestCase\Functional;
+use Magento\Mtf\Factory\Factory;
+use Magento\Mtf\TestCase\Functional;
 
 /**
  * Class LinksPurchasedSeparatelyTest
  */
 class LinksPurchasedSeparatelyTest extends Functional
 {
+    /* tags */
+    const TEST_TYPE = 'acceptance_test';
+    /* end tags */
+
     /**
      * Product fixture
      *
diff --git a/dev/tests/functional/tests/app/Magento/Downloadable/Test/TestCase/CreateDownloadableProductEntityTest.php b/dev/tests/functional/tests/app/Magento/Downloadable/Test/TestCase/CreateDownloadableProductEntityTest.php
index fc4b07b7151d1fbf318c20eb090c7d0ff736a137..5256ad90ced946d63a7e1b951f3b40bdfb876a15 100644
--- a/dev/tests/functional/tests/app/Magento/Downloadable/Test/TestCase/CreateDownloadableProductEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Downloadable/Test/TestCase/CreateDownloadableProductEntityTest.php
@@ -6,11 +6,11 @@
 
 namespace Magento\Downloadable\Test\TestCase;
 
-use Magento\Catalog\Test\Fixture\CatalogCategory;
+use Magento\Catalog\Test\Fixture\Category;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductIndex;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductNew;
 use Magento\Downloadable\Test\Fixture\DownloadableProductInjectable;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for Create DownloadableProductEntity
@@ -24,15 +24,20 @@ use Mtf\TestCase\Injectable;
  * 6. Save product.
  * 7. Verify created product.
  *
- * @group Downloadable_Product_(CS)
+ * @group Downloadable_Product_(MX)
  * @ZephyrId MAGETWO-23425
  */
 class CreateDownloadableProductEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * Fixture category
      *
-     * @var CatalogCategory
+     * @var Category
      */
     protected $category;
 
@@ -53,10 +58,10 @@ class CreateDownloadableProductEntityTest extends Injectable
     /**
      * Persist category
      *
-     * @param CatalogCategory $category
+     * @param Category $category
      * @return array
      */
-    public function __prepare(CatalogCategory $category)
+    public function __prepare(Category $category)
     {
         $category->persist();
         return [
@@ -67,13 +72,13 @@ class CreateDownloadableProductEntityTest extends Injectable
     /**
      * Filling objects of the class
      *
-     * @param CatalogCategory $category
+     * @param Category $category
      * @param CatalogProductIndex $catalogProductIndexNewPage
      * @param CatalogProductNew $catalogProductNewPage
      * @return void
      */
     public function __inject(
-        CatalogCategory $category,
+        Category $category,
         CatalogProductIndex $catalogProductIndexNewPage,
         CatalogProductNew $catalogProductNewPage
     ) {
@@ -86,10 +91,10 @@ class CreateDownloadableProductEntityTest extends Injectable
      * Test create downloadable product
      *
      * @param DownloadableProductInjectable $product
-     * @param CatalogCategory $category
+     * @param Category $category
      * @return void
      */
-    public function test(DownloadableProductInjectable $product, CatalogCategory $category)
+    public function test(DownloadableProductInjectable $product, Category $category)
     {
         // Steps
         $this->catalogProductIndex->open();
diff --git a/dev/tests/functional/tests/app/Magento/Downloadable/Test/TestCase/UpdateDownloadableProductEntityTest.php b/dev/tests/functional/tests/app/Magento/Downloadable/Test/TestCase/UpdateDownloadableProductEntityTest.php
index db52a29fc762b0cf49f3a04cef8c922a6734aaa3..cdc9b9946008acf1930b2a8c296e885024dc36fa 100644
--- a/dev/tests/functional/tests/app/Magento/Downloadable/Test/TestCase/UpdateDownloadableProductEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Downloadable/Test/TestCase/UpdateDownloadableProductEntityTest.php
@@ -6,12 +6,12 @@
 
 namespace Magento\Downloadable\Test\TestCase;
 
-use Magento\Catalog\Test\Fixture\CatalogCategory;
+use Magento\Catalog\Test\Fixture\Category;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductEdit;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductIndex;
 use Magento\Downloadable\Test\Fixture\DownloadableProductInjectable;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for Update DownloadableProductEntity
@@ -35,6 +35,11 @@ use Mtf\TestCase\Injectable;
  */
 class UpdateDownloadableProductEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * Downloadable product fixture
      *
@@ -59,10 +64,10 @@ class UpdateDownloadableProductEntityTest extends Injectable
     /**
      * Persist category
      *
-     * @param CatalogCategory $category
+     * @param Category $category
      * @return array
      */
-    public function __prepare(CatalogCategory $category)
+    public function __prepare(Category $category)
     {
         $category->persist();
         return [
@@ -96,10 +101,10 @@ class UpdateDownloadableProductEntityTest extends Injectable
      * Test update downloadable product
      *
      * @param DownloadableProductInjectable $product
-     * @param CatalogCategory $category
+     * @param Category $category
      * @return void
      */
-    public function test(DownloadableProductInjectable $product, CatalogCategory $category)
+    public function test(DownloadableProductInjectable $product, Category $category)
     {
         // Steps
         $filter = ['sku' => $this->product->getSku()];
diff --git a/dev/tests/functional/tests/app/Magento/Downloadable/Test/etc/constraint.xml b/dev/tests/functional/tests/app/Magento/Downloadable/Test/etc/constraint.xml
index 61e5435814dbc77d02cc7553390f97ef10f2b0be..6ada223124d4b220e4447a899d99b036ea926ded 100644
--- a/dev/tests/functional/tests/app/Magento/Downloadable/Test/etc/constraint.xml
+++ b/dev/tests/functional/tests/app/Magento/Downloadable/Test/etc/constraint.xml
@@ -20,10 +20,37 @@
         <require>
             <productGrid class="Magento\Catalog\Test\Page\Adminhtml\CatalogProductIndex" />
             <productPage class="Magento\Catalog\Test\Page\Adminhtml\CatalogProductEdit" />
-            <product class="Mtf\Fixture\FixtureInterface" />
+            <product class="Magento\Mtf\Fixture\FixtureInterface" />
         </require>
     </assertDownloadableDuplicateForm>
     <assertDownloadableProductInCustomerWishlistOnBackendGrid module="Magento_Downloadable">
         <severity>low</severity>
     </assertDownloadableProductInCustomerWishlistOnBackendGrid>
+    <assertTaxRuleIsAppliedToAllPricesDownloadableExcludingTax module="Magento_Downloadable">
+        <severeness>high</severeness>
+    </assertTaxRuleIsAppliedToAllPricesDownloadableExcludingTax>
+    <assertTaxRuleIsAppliedToAllPricesDownloadableIncludingTax module="Magento_Downloadable">
+        <severeness>high</severeness>
+    </assertTaxRuleIsAppliedToAllPricesDownloadableIncludingTax>
+    <assertTaxRuleIsAppliedToAllPricesDownloadableExcludingIncludingTax module="Magento_Downloadable">
+        <severeness>high</severeness>
+    </assertTaxRuleIsAppliedToAllPricesDownloadableExcludingIncludingTax>
+    <assertTaxCalculationAfterCheckoutDownloadableExcludingTax module="Magento_Downloadable">
+        <severeness>high</severeness>
+    </assertTaxCalculationAfterCheckoutDownloadableExcludingTax>
+    <assertTaxCalculationAfterCheckoutDownloadableIncludingTax module="Magento_Downloadable">
+        <severeness>high</severeness>
+    </assertTaxCalculationAfterCheckoutDownloadableIncludingTax>
+    <assertTaxCalculationAfterCheckoutDownloadableExcludingIncludingTax module="Magento_Downloadable">
+        <severeness>high</severeness>
+    </assertTaxCalculationAfterCheckoutDownloadableExcludingIncludingTax>
+    <assertOrderTaxOnBackendDownloadableExcludingTax module="Magento_Downloadable">
+        <severeness>high</severeness>
+    </assertOrderTaxOnBackendDownloadableExcludingTax>
+    <assertOrderTaxOnBackendDownloadableIncludingTax module="Magento_Downloadable">
+        <severeness>high</severeness>
+    </assertOrderTaxOnBackendDownloadableIncludingTax>
+    <assertOrderTaxOnBackendDownloadableExcludingIncludingTax module="Magento_Downloadable">
+        <severeness>high</severeness>
+    </assertOrderTaxOnBackendDownloadableExcludingIncludingTax>
 </constraint>
diff --git a/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Block/Adminhtml/Order/Create/Form.php b/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Block/Adminhtml/Order/Create/Form.php
index 773ec98686742dee1211699c591dba7d3c7aa501..874fcf8b3aac0e930f0ea130f640eb1bcab53bdb 100644
--- a/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Block/Adminhtml/Order/Create/Form.php
+++ b/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Block/Adminhtml/Order/Create/Form.php
@@ -6,9 +6,9 @@
 
 namespace Magento\GiftMessage\Test\Block\Adminhtml\Order\Create;
 
-use Mtf\Block\Form as ParentForm;
-use Mtf\Client\Element;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Client\Element\SimpleElement;
+use Magento\Mtf\Block\Form as ParentForm;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class Form
@@ -27,10 +27,10 @@ class Form extends ParentForm
      * Fill backend GiftMessage item form.
      *
      * @param FixtureInterface $fixture
-     * @param Element|null $element
+     * @param SimpleElement|null $element
      * @return $this
      */
-    public function fill(FixtureInterface $fixture, Element $element = null)
+    public function fill(FixtureInterface $fixture, SimpleElement $element = null)
     {
         parent::fill($fixture, $element);
         $this->_rootElement->find($this->okButton)->click();
diff --git a/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Block/Adminhtml/Order/Create/GiftOptions.php b/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Block/Adminhtml/Order/Create/GiftOptions.php
index 18c8184ddcc0713f4e6842feec78deb04150001c..dc4cd18309225b15af820330550275f99bd0efb3 100644
--- a/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Block/Adminhtml/Order/Create/GiftOptions.php
+++ b/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Block/Adminhtml/Order/Create/GiftOptions.php
@@ -10,7 +10,7 @@ namespace Magento\GiftMessage\Test\Block\Adminhtml\Order\Create;
  * Class GiftOptions
  * Backend GiftMessage for order form.
  */
-class GiftOptions extends \Mtf\Block\Form
+class GiftOptions extends \Magento\Mtf\Block\Form
 {
     //
 }
diff --git a/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Block/Adminhtml/Order/Create/Items.php b/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Block/Adminhtml/Order/Create/Items.php
index f106ed84f56577b6fef24fba9f670e198d3ad400..8a607e2a3657aa55a4d71c939714fcc580f8575d 100644
--- a/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Block/Adminhtml/Order/Create/Items.php
+++ b/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Block/Adminhtml/Order/Create/Items.php
@@ -7,8 +7,8 @@
 namespace Magento\GiftMessage\Test\Block\Adminhtml\Order\Create;
 
 use Magento\GiftMessage\Test\Block\Adminhtml\Order\Create\Items\ItemProduct;
-use Mtf\Client\Element\Locator;
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Class Items
diff --git a/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Block/Adminhtml/Order/Create/Items/ItemProduct.php b/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Block/Adminhtml/Order/Create/Items/ItemProduct.php
index 4a68cb3ca9b903e2d5d92254b39ffe18731f523b..3627d161b35ab583e5f5c7ab4a1c919d473c2c6c 100644
--- a/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Block/Adminhtml/Order/Create/Items/ItemProduct.php
+++ b/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Block/Adminhtml/Order/Create/Items/ItemProduct.php
@@ -6,9 +6,8 @@
 
 namespace Magento\GiftMessage\Test\Block\Adminhtml\Order\Create\Items;
 
+use Magento\Mtf\Client\Locator;
 use Magento\GiftMessage\Test\Fixture\GiftMessage;
-use Mtf\Client\Element;
-use Mtf\Client\Element\Locator;
 
 /**
  * Item product block on backend create order page.
diff --git a/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Block/Adminhtml/Order/View/Form.php b/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Block/Adminhtml/Order/View/Form.php
index da81852927de79840cc83868d37cbd62c77bf643..48ce7e6ad176174e30a437bae186fb57b5ee46d1 100644
--- a/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Block/Adminhtml/Order/View/Form.php
+++ b/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Block/Adminhtml/Order/View/Form.php
@@ -6,7 +6,7 @@
 
 namespace Magento\GiftMessage\Test\Block\Adminhtml\Order\View;
 
-use Mtf\Block\Form as ParentForm;
+use Magento\Mtf\Block\Form as ParentForm;
 
 /**
  * Class Form
diff --git a/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Block/Adminhtml/Order/View/GiftOptions.php b/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Block/Adminhtml/Order/View/GiftOptions.php
index f2343fe5361c6db112b15ee252339df3c9cb2306..79e0184c7d51f992bfe181eb826111a9aee425a1 100644
--- a/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Block/Adminhtml/Order/View/GiftOptions.php
+++ b/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Block/Adminhtml/Order/View/GiftOptions.php
@@ -10,7 +10,7 @@ namespace Magento\GiftMessage\Test\Block\Adminhtml\Order\View;
  * Class GiftOptions
  * Backend GiftMessage for order from.
  */
-class GiftOptions extends \Mtf\Block\Form
+class GiftOptions extends \Magento\Mtf\Block\Form
 {
     //
 }
diff --git a/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Block/Adminhtml/Order/View/Items.php b/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Block/Adminhtml/Order/View/Items.php
index 6db86ef354ca9dd20c1a48c47e6d34c7ff41c4f8..f6df838ca03bfb52db0485a3ed49f826474adbee 100644
--- a/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Block/Adminhtml/Order/View/Items.php
+++ b/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Block/Adminhtml/Order/View/Items.php
@@ -7,8 +7,8 @@
 namespace Magento\GiftMessage\Test\Block\Adminhtml\Order\View;
 
 use Magento\GiftMessage\Test\Block\Adminhtml\Order\View\Items\ItemProduct;
-use Mtf\Client\Element\Locator;
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Class Items
diff --git a/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Block/Adminhtml/Order/View/Items/ItemProduct.php b/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Block/Adminhtml/Order/View/Items/ItemProduct.php
index 4495f3a04c98b137fa6f30178cf56e583d422a29..46440c49f3c407bfb6d0040af66457f01357d475 100644
--- a/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Block/Adminhtml/Order/View/Items/ItemProduct.php
+++ b/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Block/Adminhtml/Order/View/Items/ItemProduct.php
@@ -6,9 +6,8 @@
 
 namespace Magento\GiftMessage\Test\Block\Adminhtml\Order\View\Items;
 
+use Magento\Mtf\Client\Locator;
 use Magento\GiftMessage\Test\Fixture\GiftMessage;
-use Mtf\Client\Element;
-use Mtf\Client\Element\Locator;
 
 /**
  * Class ItemProduct
diff --git a/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Block/Message/Inline.php b/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Block/Message/Inline.php
index b067cfe9f51e595d9e165ed90e9b2fe209f62ce1..0c41872447b7796c0ee47861fa32e44403797dbf 100644
--- a/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Block/Message/Inline.php
+++ b/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Block/Message/Inline.php
@@ -7,8 +7,8 @@
 namespace Magento\GiftMessage\Test\Block\Message;
 
 use Magento\GiftMessage\Test\Fixture\GiftMessage;
-use Mtf\Block\Form;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Form;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class Inline
diff --git a/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Block/Message/Inline/GiftMessageForm.php b/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Block/Message/Inline/GiftMessageForm.php
index 704799a725d8df411530483daf640c9f9108b5fe..2c1a696e6929dc5c6bec4daa66abe309ccb4432a 100644
--- a/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Block/Message/Inline/GiftMessageForm.php
+++ b/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Block/Message/Inline/GiftMessageForm.php
@@ -6,7 +6,7 @@
 
 namespace Magento\GiftMessage\Test\Block\Message\Inline;
 
-use Mtf\Block\Form;
+use Magento\Mtf\Block\Form;
 
 /**
  * Class GiftMessageForm
diff --git a/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Block/Message/Order/Items/View.php b/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Block/Message/Order/Items/View.php
index cf13507fe464284c01c3cb20645bee3744dd6436..b3c29e2252085a4470eaeb586d78fe42b8d8109a 100644
--- a/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Block/Message/Order/Items/View.php
+++ b/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Block/Message/Order/Items/View.php
@@ -6,8 +6,8 @@
 
 namespace Magento\GiftMessage\Test\Block\Message\Order\Items;
 
-use Mtf\Block\Block;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Gift message block for order's items on order view page.
diff --git a/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Constraint/AssertGiftMessageInBackendOrder.php b/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Constraint/AssertGiftMessageInBackendOrder.php
index bd5d809d0af4df54c97ba7145dab0d67140933a9..fe543f8c3bdeb468ee24e25d1c1532c31f38d4a7 100644
--- a/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Constraint/AssertGiftMessageInBackendOrder.php
+++ b/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Constraint/AssertGiftMessageInBackendOrder.php
@@ -9,7 +9,7 @@ namespace Magento\GiftMessage\Test\Constraint;
 use Magento\GiftMessage\Test\Fixture\GiftMessage;
 use Magento\Sales\Test\Page\Adminhtml\OrderIndex;
 use Magento\Sales\Test\Page\Adminhtml\OrderView;
-use Mtf\Constraint\AbstractAssertForm;
+use Magento\Mtf\Constraint\AbstractAssertForm;
 
 /**
  * Class AssertGiftMessageInBackendOrder
diff --git a/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Constraint/AssertGiftMessageInFrontendOrder.php b/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Constraint/AssertGiftMessageInFrontendOrder.php
index 9e4204a5e4e304da90ca74d95c87f5780ad9ae9b..9a2946618d87a876f28cecf4326c2d5fe90e9dd1 100644
--- a/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Constraint/AssertGiftMessageInFrontendOrder.php
+++ b/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Constraint/AssertGiftMessageInFrontendOrder.php
@@ -11,7 +11,7 @@ use Magento\Customer\Test\Page\CustomerAccountLogout;
 use Magento\GiftMessage\Test\Fixture\GiftMessage;
 use Magento\Sales\Test\Page\OrderHistory;
 use Magento\Sales\Test\Page\OrderView;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertGiftMessageInFrontendOrder
diff --git a/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Constraint/AssertGiftMessageInFrontendOrderItems.php b/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Constraint/AssertGiftMessageInFrontendOrderItems.php
index 693e0fa892463ce2116532647b7d943a280fccc7..09c931ac7a31d4c762cd4f48924b4c242417e7a7 100644
--- a/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Constraint/AssertGiftMessageInFrontendOrderItems.php
+++ b/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Constraint/AssertGiftMessageInFrontendOrderItems.php
@@ -11,7 +11,7 @@ use Magento\Customer\Test\Page\CustomerAccountLogout;
 use Magento\GiftMessage\Test\Fixture\GiftMessage;
 use Magento\Sales\Test\Page\OrderHistory;
 use Magento\Sales\Test\Page\OrderView;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertGiftMessageInFrontendOrderItems
diff --git a/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Fixture/GiftMessage.php b/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Fixture/GiftMessage.php
index 6e65e3ae4fe7b058b00500d1695c1e9269ea02d7..d5857c0b99c216753009c80645559d79ee63fbc8 100644
--- a/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Fixture/GiftMessage.php
+++ b/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Fixture/GiftMessage.php
@@ -6,7 +6,7 @@
 
 namespace Magento\GiftMessage\Test\Fixture;
 
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Class GiftMessage
diff --git a/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Fixture/GiftMessage/Items.php b/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Fixture/GiftMessage/Items.php
index bff6852923d24f4bc0f2e22f49ff85265da751ef..d53cc71937440951f1334e325d5fb514b1c504ab 100644
--- a/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Fixture/GiftMessage/Items.php
+++ b/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Fixture/GiftMessage/Items.php
@@ -6,8 +6,8 @@
 
 namespace Magento\GiftMessage\Test\Fixture\GiftMessage;
 
-use Mtf\Fixture\FixtureFactory;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class Items
diff --git a/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Repository/GiftMessage.php b/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Repository/GiftMessage.php
index 436fee4c6bcd0817dddcb6c00379603573a1765a..c0aae33db525f0b1a690d436859bea25ffc476bd 100644
--- a/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Repository/GiftMessage.php
+++ b/dev/tests/functional/tests/app/Magento/GiftMessage/Test/Repository/GiftMessage.php
@@ -6,7 +6,7 @@
 
 namespace Magento\GiftMessage\Test\Repository;
 
-use Mtf\Repository\AbstractRepository;
+use Magento\Mtf\Repository\AbstractRepository;
 
 /**
  * Class GiftMessage
diff --git a/dev/tests/functional/tests/app/Magento/GiftMessage/Test/TestStep/AddGiftMessageBackendStep.php b/dev/tests/functional/tests/app/Magento/GiftMessage/Test/TestStep/AddGiftMessageBackendStep.php
index 793ac9f616e832f05d6446ff9ce64fc3ff9ebb8e..18848d9e75d2cb6c1974f15e874aec73599f12a6 100644
--- a/dev/tests/functional/tests/app/Magento/GiftMessage/Test/TestStep/AddGiftMessageBackendStep.php
+++ b/dev/tests/functional/tests/app/Magento/GiftMessage/Test/TestStep/AddGiftMessageBackendStep.php
@@ -8,7 +8,7 @@ namespace Magento\GiftMessage\Test\TestStep;
 
 use Magento\GiftMessage\Test\Fixture\GiftMessage;
 use Magento\Sales\Test\Page\Adminhtml\OrderCreateIndex;
-use Mtf\TestStep\TestStepInterface;
+use Magento\Mtf\TestStep\TestStepInterface;
 
 /**
  * Class AddGiftMessageBackendStep
diff --git a/dev/tests/functional/tests/app/Magento/GiftMessage/Test/TestStep/AddGiftMessageStep.php b/dev/tests/functional/tests/app/Magento/GiftMessage/Test/TestStep/AddGiftMessageStep.php
index 2e1cabbb6545067b901cc7f459c5a1c3eb138ee7..190de05c9eecdf1d89c29a6aeea3cc18416de37e 100644
--- a/dev/tests/functional/tests/app/Magento/GiftMessage/Test/TestStep/AddGiftMessageStep.php
+++ b/dev/tests/functional/tests/app/Magento/GiftMessage/Test/TestStep/AddGiftMessageStep.php
@@ -8,7 +8,7 @@ namespace Magento\GiftMessage\Test\TestStep;
 
 use Magento\Checkout\Test\Page\CheckoutOnepage;
 use Magento\GiftMessage\Test\Fixture\GiftMessage;
-use Mtf\TestStep\TestStepInterface;
+use Magento\Mtf\TestStep\TestStepInterface;
 
 /**
  * Class AddGiftMessageStep
diff --git a/dev/tests/functional/tests/app/Magento/GiftMessage/Test/etc/scenario.xml b/dev/tests/functional/tests/app/Magento/GiftMessage/Test/etc/scenario.xml
index 27b48d7e39f72cb612b8cf04ada12d0894bac281..71282278e78b01ffea89c26e43056ecb8d6bc1c5 100644
--- a/dev/tests/functional/tests/app/Magento/GiftMessage/Test/etc/scenario.xml
+++ b/dev/tests/functional/tests/app/Magento/GiftMessage/Test/etc/scenario.xml
@@ -5,7 +5,7 @@
  * See COPYING.txt for license details.
  */
 -->
-<scenarios xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../vendor/magento/mtf/Mtf/Config/etc/scenario.xsd">
+<scenarios xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../vendor/magento/mtf/Magento/Mtf/Config/etc/scenario.xsd">
     <scenario name="CheckoutWithGiftMessagesTest" module="Magento_GiftMessage">
         <methods>
             <method name="test">
diff --git a/dev/tests/functional/tests/app/Magento/GoogleShopping/Test/Block/Adminhtml/Types/Edit/GoogleShoppingForm.php b/dev/tests/functional/tests/app/Magento/GoogleShopping/Test/Block/Adminhtml/Types/Edit/GoogleShoppingForm.php
index fb13e2063d0ad701189597bbec4e5ac2cefca501..dcf5ad4f512e480c9a79567d526e05003a46d170 100644
--- a/dev/tests/functional/tests/app/Magento/GoogleShopping/Test/Block/Adminhtml/Types/Edit/GoogleShoppingForm.php
+++ b/dev/tests/functional/tests/app/Magento/GoogleShopping/Test/Block/Adminhtml/Types/Edit/GoogleShoppingForm.php
@@ -6,9 +6,9 @@
 
 namespace Magento\GoogleShopping\Test\Block\Adminhtml\Types\Edit;
 
-use Mtf\Block\Form;
-use Mtf\Client\Element;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Form;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Client\Element\SimpleElement;
 
 /**
  * Class GoogleShoppingForm
@@ -34,10 +34,10 @@ class GoogleShoppingForm extends Form
      * Fill specified form data
      *
      * @param array $fields
-     * @param Element $element
+     * @param SimpleElement $element
      * @return void
      */
-    protected function _fill(array $fields, Element $element = null)
+    protected function _fill(array $fields, SimpleElement $element = null)
     {
         $context = ($element === null) ? $this->_rootElement : $element;
         foreach ($fields as $field) {
@@ -87,7 +87,7 @@ class GoogleShoppingForm extends Form
      */
     protected function getOptions()
     {
-        $elements = $this->_rootElement->find($this->attributeOptions, Locator::SELECTOR_XPATH)->getElements();
+        $elements = $this->_rootElement->getElements($this->attributeOptions, Locator::SELECTOR_XPATH);
 
         $options = [];
         foreach ($elements as $key => $element) {
diff --git a/dev/tests/functional/tests/app/Magento/GoogleShopping/Test/Constraint/AssertProductAttributeAbsenceForAttributeMapping.php b/dev/tests/functional/tests/app/Magento/GoogleShopping/Test/Constraint/AssertProductAttributeAbsenceForAttributeMapping.php
index 37ce5a91a8c578d396ebec640460e9fba19fa174..7177cd74856af71e12a52bc5ac80992869a41e2f 100644
--- a/dev/tests/functional/tests/app/Magento/GoogleShopping/Test/Constraint/AssertProductAttributeAbsenceForAttributeMapping.php
+++ b/dev/tests/functional/tests/app/Magento/GoogleShopping/Test/Constraint/AssertProductAttributeAbsenceForAttributeMapping.php
@@ -9,8 +9,8 @@ namespace Magento\GoogleShopping\Test\Constraint;
 use Magento\Catalog\Test\Fixture\CatalogAttributeSet;
 use Magento\GoogleShopping\Test\Page\Adminhtml\GoogleShoppingTypesIndex;
 use Magento\GoogleShopping\Test\Page\Adminhtml\GoogleShoppingTypesNew;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\FixtureFactory;
 
 /**
  * Class AssertProductAttributeAbsenceForAttributeMapping
diff --git a/dev/tests/functional/tests/app/Magento/GoogleShopping/Test/Fixture/GoogleShoppingAttribute.php b/dev/tests/functional/tests/app/Magento/GoogleShopping/Test/Fixture/GoogleShoppingAttribute.php
index dcfa2ffe5ff364a5e25ea2a2fccc4439965e0dcf..88734fe6eb2ef2d48054e8b29e24fef7b77eb1c6 100644
--- a/dev/tests/functional/tests/app/Magento/GoogleShopping/Test/Fixture/GoogleShoppingAttribute.php
+++ b/dev/tests/functional/tests/app/Magento/GoogleShopping/Test/Fixture/GoogleShoppingAttribute.php
@@ -6,7 +6,7 @@
 
 namespace Magento\GoogleShopping\Test\Fixture;
 
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Class GoogleShoppingAttribute
diff --git a/dev/tests/functional/tests/app/Magento/GoogleShopping/Test/Fixture/GoogleShoppingAttribute/AttributeSetId.php b/dev/tests/functional/tests/app/Magento/GoogleShopping/Test/Fixture/GoogleShoppingAttribute/AttributeSetId.php
index 2cb95ff70ccd41f790b37eab92a6b1f294b9688e..cfaf1d46249e040ed7ce1632d72addfd245ee75c 100644
--- a/dev/tests/functional/tests/app/Magento/GoogleShopping/Test/Fixture/GoogleShoppingAttribute/AttributeSetId.php
+++ b/dev/tests/functional/tests/app/Magento/GoogleShopping/Test/Fixture/GoogleShoppingAttribute/AttributeSetId.php
@@ -7,8 +7,8 @@
 namespace Magento\GoogleShopping\Test\Fixture\GoogleShoppingAttribute;
 
 use Magento\Catalog\Test\Fixture\CatalogAttributeSet;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class AttributeSetId
diff --git a/dev/tests/functional/tests/app/Magento/GoogleShopping/Test/Repository/GoogleShoppingAttribute.php b/dev/tests/functional/tests/app/Magento/GoogleShopping/Test/Repository/GoogleShoppingAttribute.php
index a7977ac9b2c197bbd9e7e8ee193c3ebb24fd91be..cbf687a07409e6f3abe18bdff066d386796bdd30 100644
--- a/dev/tests/functional/tests/app/Magento/GoogleShopping/Test/Repository/GoogleShoppingAttribute.php
+++ b/dev/tests/functional/tests/app/Magento/GoogleShopping/Test/Repository/GoogleShoppingAttribute.php
@@ -6,7 +6,7 @@
 
 namespace Magento\GoogleShopping\Test\Repository;
 
-use Mtf\Repository\AbstractRepository;
+use Magento\Mtf\Repository\AbstractRepository;
 
 /**
  * Class GoogleShoppingAttribute
diff --git a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Block/Adminhtml/Product/Composite/Configure.php b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Block/Adminhtml/Product/Composite/Configure.php
index df8cf85c629de6dcfb03a38b5ca6f035a5b6997b..11da495aceed0a9a2b98bb4e9e0f1ecee6a68ef3 100644
--- a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Block/Adminhtml/Product/Composite/Configure.php
+++ b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Block/Adminhtml/Product/Composite/Configure.php
@@ -7,7 +7,7 @@
 
 namespace Magento\GroupedProduct\Test\Block\Adminhtml\Product\Composite;
 
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class Configure
diff --git a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Block/Adminhtml/Product/Grouped/AssociatedProducts.php b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Block/Adminhtml/Product/Grouped/AssociatedProducts.php
index 06f553e19358648bdbe5e4a99d97d2e1ef41eef1..037331074bd67e80d91100360b4381f7dfb3c200 100644
--- a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Block/Adminhtml/Product/Grouped/AssociatedProducts.php
+++ b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Block/Adminhtml/Product/Grouped/AssociatedProducts.php
@@ -7,8 +7,9 @@
 namespace Magento\GroupedProduct\Test\Block\Adminhtml\Product\Grouped;
 
 use Magento\Backend\Test\Block\Widget\Tab;
-use Mtf\Client\Element;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Client\Element\SimpleElement;
+use Magento\Mtf\Client\Element;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class AssociatedProducts
@@ -74,15 +75,15 @@ class AssociatedProducts extends Tab
      * Fill data to fields on tab
      *
      * @param array $fields
-     * @param Element|null $element
+     * @param SimpleElement|null $element
      * @return $this
      */
-    public function fillFormTab(array $fields, Element $element = null)
+    public function fillFormTab(array $fields, SimpleElement $element = null)
     {
         if (isset($fields['associated'])) {
-            $options = $this->_rootElement->find($this->deleteButton)->getElements();
+            $options = $this->_rootElement->getElements($this->deleteButton);
             if (count($options)) {
-                foreach ($options as $option) {
+                foreach (array_reverse($options) as $option) {
                     $option->click();
                 }
             }
@@ -101,10 +102,10 @@ class AssociatedProducts extends Tab
      * Get data to fields on group tab
      *
      * @param array|null $fields
-     * @param Element|null $element
+     * @param SimpleElement|null $element
      * @return array
      */
-    public function getDataFormTab($fields = null, Element $element = null)
+    public function getDataFormTab($fields = null, SimpleElement $element = null)
     {
         $newFields = [];
         if (isset($fields['associated'])) {
diff --git a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Block/Adminhtml/Product/Grouped/AssociatedProducts/ListAssociatedProducts.php b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Block/Adminhtml/Product/Grouped/AssociatedProducts/ListAssociatedProducts.php
index e5d4641eca230f9724a8385f366698f0d61855eb..1151e76c0324da4b3f05a6683a4f127b4a751893 100644
--- a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Block/Adminhtml/Product/Grouped/AssociatedProducts/ListAssociatedProducts.php
+++ b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Block/Adminhtml/Product/Grouped/AssociatedProducts/ListAssociatedProducts.php
@@ -6,9 +6,8 @@
 
 namespace Magento\GroupedProduct\Test\Block\Adminhtml\Product\Grouped\AssociatedProducts;
 
-use Mtf\Block\Form;
-use Mtf\Client\Element;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Form;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class ListAssociatedProducts
diff --git a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Block/Adminhtml/Product/Grouped/AssociatedProducts/ListAssociatedProducts/Product.php b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Block/Adminhtml/Product/Grouped/AssociatedProducts/ListAssociatedProducts/Product.php
index 34dd3ac6333e8907293f2c4327cd25f0d0b7efe0..f7a644f9d9386db21ecaadf47a222815a2b9ab96 100644
--- a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Block/Adminhtml/Product/Grouped/AssociatedProducts/ListAssociatedProducts/Product.php
+++ b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Block/Adminhtml/Product/Grouped/AssociatedProducts/ListAssociatedProducts/Product.php
@@ -6,7 +6,7 @@
 
 namespace Magento\GroupedProduct\Test\Block\Adminhtml\Product\Grouped\AssociatedProducts\ListAssociatedProducts;
 
-use Mtf\Block\Form;
+use Magento\Mtf\Block\Form;
 
 /**
  * Class Product
diff --git a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Block/Adminhtml/Product/Grouped/AssociatedProducts/Search/Grid.php b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Block/Adminhtml/Product/Grouped/AssociatedProducts/Search/Grid.php
index 86a0e3a5a0e2283d5fe89c5946a10644cd1479a0..f40ea0ad580ae254ceebc9423bddbaefe1c593a9 100644
--- a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Block/Adminhtml/Product/Grouped/AssociatedProducts/Search/Grid.php
+++ b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Block/Adminhtml/Product/Grouped/AssociatedProducts/Search/Grid.php
@@ -7,7 +7,6 @@
 namespace Magento\GroupedProduct\Test\Block\Adminhtml\Product\Grouped\AssociatedProducts\Search;
 
 use Magento\Backend\Test\Block\Widget\Grid as GridInterface;
-use Mtf\Client\Element;
 
 /**
  * Class Grid
diff --git a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Block/Catalog/Product/View.php b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Block/Catalog/Product/View.php
index 710eb38c9e7b3ea0209a3edd2f6b6bc8dcb5187f..fd8184a473a931c9b2504de28c5226000842ffd9 100755
--- a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Block/Catalog/Product/View.php
+++ b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Block/Catalog/Product/View.php
@@ -7,7 +7,7 @@
 namespace Magento\GroupedProduct\Test\Block\Catalog\Product;
 
 use Magento\Catalog\Test\Block\Product\View as ParentView;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class View
diff --git a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Block/Catalog/Product/View/Type/Grouped.php b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Block/Catalog/Product/View/Type/Grouped.php
index e32363960d5001b713f43cd5f8933ba58f0e58b2..0cacb9adcf16618694af9a0f559d7430c34943c8 100644
--- a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Block/Catalog/Product/View/Type/Grouped.php
+++ b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Block/Catalog/Product/View/Type/Grouped.php
@@ -9,10 +9,10 @@ namespace Magento\GroupedProduct\Test\Block\Catalog\Product\View\Type;
 use Magento\Catalog\Test\Fixture\CatalogProductSimple;
 use Magento\GroupedProduct\Test\Fixture\GroupedProduct;
 use Magento\GroupedProduct\Test\Fixture\GroupedProductInjectable;
-use Mtf\Block\Block;
-use Mtf\Client\Element\Locator;
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Class Grouped
diff --git a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Block/Checkout/Cart.php b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Block/Checkout/Cart.php
index 3a6e060af8075b5fec918493612d1e06553eea7b..3826d9a341e5d45c3c36545e8f5fd5450bee6aa9 100644
--- a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Block/Checkout/Cart.php
+++ b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Block/Checkout/Cart.php
@@ -7,7 +7,7 @@
 namespace Magento\GroupedProduct\Test\Block\Checkout;
 
 use Magento\GroupedProduct\Test\Fixture\GroupedProductInjectable;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class Cart
diff --git a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Block/Checkout/Cart/CartItem.php b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Block/Checkout/Cart/CartItem.php
index 010a45b9aaaa90aef81abc2058d67061fb09ec8d..72674513efd9ab4e5341f989d970d98ff306bdb5 100644
--- a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Block/Checkout/Cart/CartItem.php
+++ b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Block/Checkout/Cart/CartItem.php
@@ -116,7 +116,6 @@ class CartItem extends AbstractCartItem
     {
         foreach ($this->config['associated_cart_items'] as $cartItem) {
             /** @var CheckoutCartItem $cartItem */
-            $cartItem->reinitRootElement();
             $cartItem->removeItem();
         }
     }
diff --git a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Constraint/AbstractAssertPriceOnGroupedProductPage.php b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Constraint/AbstractAssertPriceOnGroupedProductPage.php
index eaa50598d87bb1bf40dd23f6634cc0775e90da99..5627b7785a3be4f37aa9c721a545d8403c10a35d 100644
--- a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Constraint/AbstractAssertPriceOnGroupedProductPage.php
+++ b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Constraint/AbstractAssertPriceOnGroupedProductPage.php
@@ -10,8 +10,8 @@ use Magento\Catalog\Test\Constraint\AssertPriceOnProductPageInterface;
 use Magento\Catalog\Test\Fixture\CatalogProductSimple;
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
 use Magento\GroupedProduct\Test\Fixture\GroupedProductInjectable;
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Assert that displayed grouped price on product page equals passed from fixture.
@@ -38,7 +38,7 @@ abstract class AbstractAssertPriceOnGroupedProductPage extends AbstractConstrain
      * @param GroupedProductInjectable $product
      * @param CatalogProductView $catalogProductView
      * @param AssertPriceOnProductPageInterface $object
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @param string $typePrice [optional]
      * @return bool|string
      */
@@ -46,7 +46,7 @@ abstract class AbstractAssertPriceOnGroupedProductPage extends AbstractConstrain
         GroupedProductInjectable $product,
         CatalogProductView $catalogProductView,
         AssertPriceOnProductPageInterface $object,
-        Browser $browser,
+        BrowserInterface $browser,
         $typePrice = ''
     ) {
         $browser->open($_ENV['app_frontend_url'] . $product->getUrlKey() . '.html');
diff --git a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Constraint/AssertGroupedPriceOnGroupedProductPage.php b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Constraint/AssertGroupedPriceOnGroupedProductPage.php
index 3e1072cf877414b1f7751475b926bf838570d065..d471c60f1eed2871a60357f153d3735fb685a9a2 100644
--- a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Constraint/AssertGroupedPriceOnGroupedProductPage.php
+++ b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Constraint/AssertGroupedPriceOnGroupedProductPage.php
@@ -9,7 +9,7 @@ namespace Magento\GroupedProduct\Test\Constraint;
 use Magento\Catalog\Test\Constraint\AssertProductGroupedPriceOnProductPage;
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
 use Magento\GroupedProduct\Test\Fixture\GroupedProductInjectable;
-use Mtf\Client\Browser;
+use Magento\Mtf\Client\BrowserInterface;
 
 /**
  * Class AssertGroupedPriceOnGroupedProductPage
@@ -41,14 +41,14 @@ class AssertGroupedPriceOnGroupedProductPage extends AbstractAssertPriceOnGroupe
      * @param CatalogProductView $catalogProductView
      * @param GroupedProductInjectable $product
      * @param AssertProductGroupedPriceOnProductPage $groupedPrice
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @return void
      */
     public function processAssert(
         CatalogProductView $catalogProductView,
         GroupedProductInjectable $product,
         AssertProductGroupedPriceOnProductPage $groupedPrice,
-        Browser $browser
+        BrowserInterface $browser
     ) {
         $this->processAssertPrice($product, $catalogProductView, $groupedPrice, $browser);
     }
diff --git a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Constraint/AssertGroupedProductForm.php b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Constraint/AssertGroupedProductForm.php
index 974ba950e37f1756063454c4827e2db360a627f0..fe78ef841ca38bac22f7c4897240da6b7b6a875a 100644
--- a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Constraint/AssertGroupedProductForm.php
+++ b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Constraint/AssertGroupedProductForm.php
@@ -9,7 +9,7 @@ namespace Magento\GroupedProduct\Test\Constraint;
 use Magento\Catalog\Test\Constraint\AssertProductForm;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductEdit;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductIndex;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class AssertGroupedProductForm
diff --git a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Constraint/AssertGroupedProductInCustomerWishlistOnBackendGrid.php b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Constraint/AssertGroupedProductInCustomerWishlistOnBackendGrid.php
index 44be1c0072b5bb12aa5fceaf703c72c02f2c959c..4128f39dede6b63814f80c4fff5fd57aee08ca52 100644
--- a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Constraint/AssertGroupedProductInCustomerWishlistOnBackendGrid.php
+++ b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Constraint/AssertGroupedProductInCustomerWishlistOnBackendGrid.php
@@ -8,7 +8,7 @@ namespace Magento\GroupedProduct\Test\Constraint;
 
 use Magento\GroupedProduct\Test\Fixture\GroupedProductInjectable;
 use Magento\Wishlist\Test\Constraint\AssertProductInCustomerWishlistOnBackendGrid;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class AssertGroupedProductInCustomerWishlistOnBackendGrid
diff --git a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Constraint/AssertGroupedProductInItemsOrderedGrid.php b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Constraint/AssertGroupedProductInItemsOrderedGrid.php
index 122ee4e04d1be2234df1540a5d051dc1d9d5ac0c..c91d1af7add20f758ed1867ecd5957c46c91a4d3 100644
--- a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Constraint/AssertGroupedProductInItemsOrderedGrid.php
+++ b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Constraint/AssertGroupedProductInItemsOrderedGrid.php
@@ -8,7 +8,7 @@ namespace Magento\GroupedProduct\Test\Constraint;
 
 use Magento\Sales\Test\Block\Adminhtml\Order\Create\Items;
 use Magento\Sales\Test\Page\Adminhtml\OrderCreateIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertGroupedProductInItemsOrderedGrid
diff --git a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Constraint/AssertGroupedProductsDefaultQty.php b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Constraint/AssertGroupedProductsDefaultQty.php
index 48e97bb209f6917fa39a08c3d18222e0292c7e63..0ec0c06eff5b80b56e0b9446f645dfa954651c15 100644
--- a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Constraint/AssertGroupedProductsDefaultQty.php
+++ b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Constraint/AssertGroupedProductsDefaultQty.php
@@ -8,8 +8,8 @@ namespace Magento\GroupedProduct\Test\Constraint;
 
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
 use Magento\GroupedProduct\Test\Fixture\GroupedProductInjectable;
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractAssertForm;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractAssertForm;
 
 /**
  * Class AssertGroupedProductsDefaultQty
@@ -26,13 +26,13 @@ class AssertGroupedProductsDefaultQty extends AbstractAssertForm
      *
      * @param CatalogProductView $groupedProductView
      * @param GroupedProductInjectable $product
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @return void
      */
     public function processAssert(
         CatalogProductView $groupedProductView,
         GroupedProductInjectable $product,
-        Browser $browser
+        BrowserInterface $browser
     ) {
         $browser->open($_ENV['app_frontend_url'] . $product->getUrlKey() . '.html');
         $associatedProducts = $product->getAssociated();
diff --git a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Constraint/AssertSpecialPriceOnGroupedProductPage.php b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Constraint/AssertSpecialPriceOnGroupedProductPage.php
index f68082aef3d42e5d9254a27c5714543bd26092da..0fd5cdd5b924ac567da439a7740e7745e022d853 100644
--- a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Constraint/AssertSpecialPriceOnGroupedProductPage.php
+++ b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Constraint/AssertSpecialPriceOnGroupedProductPage.php
@@ -9,7 +9,7 @@ namespace Magento\GroupedProduct\Test\Constraint;
 use Magento\Catalog\Test\Constraint\AssertProductSpecialPriceOnProductPage;
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
 use Magento\GroupedProduct\Test\Fixture\GroupedProductInjectable;
-use Mtf\Client\Browser;
+use Magento\Mtf\Client\BrowserInterface;
 
 /**
  * Class AssertSpecialPriceOnGroupedProductPage
@@ -40,14 +40,14 @@ class AssertSpecialPriceOnGroupedProductPage extends AbstractAssertPriceOnGroupe
      * @param CatalogProductView $catalogProductView
      * @param GroupedProductInjectable $product
      * @param AssertProductSpecialPriceOnProductPage $specialPrice
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @return void
      */
     public function processAssert(
         CatalogProductView $catalogProductView,
         GroupedProductInjectable $product,
         AssertProductSpecialPriceOnProductPage $specialPrice,
-        Browser $browser
+        BrowserInterface $browser
     ) {
         $this->processAssertPrice($product, $catalogProductView, $specialPrice, $browser);
     }
diff --git a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Constraint/AssertTierPriceOnGroupedProductPage.php b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Constraint/AssertTierPriceOnGroupedProductPage.php
index 86f1d5af2813213d96309ee1c10df690522d4f6e..c640d5b6aa25babf59f75d463715ea0851f499b5 100644
--- a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Constraint/AssertTierPriceOnGroupedProductPage.php
+++ b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Constraint/AssertTierPriceOnGroupedProductPage.php
@@ -9,7 +9,7 @@ namespace Magento\GroupedProduct\Test\Constraint;
 use Magento\Catalog\Test\Constraint\AssertProductTierPriceOnProductPage;
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
 use Magento\GroupedProduct\Test\Fixture\GroupedProductInjectable;
-use Mtf\Client\Browser;
+use Magento\Mtf\Client\BrowserInterface;
 
 /**
  * Class AssertTierPriceOnGroupedProductPage
@@ -41,14 +41,14 @@ class AssertTierPriceOnGroupedProductPage extends AbstractAssertPriceOnGroupedPr
      * @param CatalogProductView $catalogProductView
      * @param GroupedProductInjectable $product
      * @param AssertProductTierPriceOnProductPage $tierPrice
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @return void
      */
     public function processAssert(
         CatalogProductView $catalogProductView,
         GroupedProductInjectable $product,
         AssertProductTierPriceOnProductPage $tierPrice,
-        Browser $browser
+        BrowserInterface $browser
     ) {
         $this->processAssertPrice($product, $catalogProductView, $tierPrice, $browser, 'Tier');
     }
diff --git a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Fixture/Cart/Item.php b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Fixture/Cart/Item.php
index 5b6988cfa0efd11c53842e4cf38334a035186d99..3e91ccb257870bb4a156f51c5094df152599c373 100644
--- a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Fixture/Cart/Item.php
+++ b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Fixture/Cart/Item.php
@@ -7,7 +7,7 @@
 namespace Magento\GroupedProduct\Test\Fixture\Cart;
 
 use Magento\GroupedProduct\Test\Fixture\GroupedProductInjectable;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class Item
diff --git a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Fixture/GroupedProduct.php b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Fixture/GroupedProduct.php
index e53b8efd41061261cb786e6160c82fdd90b07e69..1a9779e60448d82d05da3b17bf4a21bbf38cc6e7 100644
--- a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Fixture/GroupedProduct.php
+++ b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Fixture/GroupedProduct.php
@@ -7,8 +7,8 @@
 namespace Magento\GroupedProduct\Test\Fixture;
 
 use Magento\Catalog\Test\Fixture\Product;
-use Mtf\Factory\Factory;
-use Mtf\System\Config;
+use Magento\Mtf\Factory\Factory;
+use Magento\Mtf\System\Config;
 
 /**
  * Class GroupedProduct
diff --git a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Fixture/GroupedProductInjectable.php b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Fixture/GroupedProductInjectable.php
index 8cdbacd0153c4fe686185709b1b006ce6afa1256..3f1d1d5f4dc73d984ce79814c023ca5fd1d60c83 100644
--- a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Fixture/GroupedProductInjectable.php
+++ b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Fixture/GroupedProductInjectable.php
@@ -6,12 +6,12 @@
 
 namespace Magento\GroupedProduct\Test\Fixture;
 
-use Mtf\Fixture\FixtureFactory;
-use Mtf\Fixture\InjectableFixture;
-use Mtf\Handler\HandlerFactory;
-use Mtf\Repository\RepositoryFactory;
-use Mtf\System\Config;
-use Mtf\System\Event\EventManagerInterface;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Handler\HandlerFactory;
+use Magento\Mtf\Repository\RepositoryFactory;
+use Magento\Mtf\System\Config;
+use Magento\Mtf\System\Event\EventManagerInterface;
 
 /**
  * Class GroupedProductInjectable
diff --git a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Fixture/GroupedProductInjectable/Associated.php b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Fixture/GroupedProductInjectable/Associated.php
index 416c89c7287aa26fa366ac99354a3b622f2fcfe5..4065bfa0221ab4455b515fe7eee31efd33891a00 100644
--- a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Fixture/GroupedProductInjectable/Associated.php
+++ b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Fixture/GroupedProductInjectable/Associated.php
@@ -6,9 +6,9 @@
 
 namespace Magento\GroupedProduct\Test\Fixture\GroupedProductInjectable;
 
-use Mtf\Fixture\FixtureFactory;
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Class Associated
diff --git a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Fixture/GroupedProductInjectable/Price.php b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Fixture/GroupedProductInjectable/Price.php
index 017b60e5a8d04bb41c60c45dcabc332fb142e658..b6811384f498b87a05949632188875636d57d284 100644
--- a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Fixture/GroupedProductInjectable/Price.php
+++ b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Fixture/GroupedProductInjectable/Price.php
@@ -7,7 +7,7 @@
 namespace Magento\GroupedProduct\Test\Fixture\GroupedProductInjectable;
 
 use Magento\Catalog\Test\Fixture\CatalogProductSimple\Price as ParentPrice;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class Price
diff --git a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Handler/GroupedProductInjectable/Curl.php b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Handler/GroupedProductInjectable/Curl.php
index fe470516ed1ce6c10cbffec3054fb832ef6b128c..1880721ab7e36c20818cfb94ace4f403634bceeb 100644
--- a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Handler/GroupedProductInjectable/Curl.php
+++ b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Handler/GroupedProductInjectable/Curl.php
@@ -7,7 +7,7 @@
 namespace Magento\GroupedProduct\Test\Handler\GroupedProductInjectable;
 
 use Magento\Catalog\Test\Handler\CatalogProductSimple\Curl as AbstractCurl;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class Curl
diff --git a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Handler/GroupedProductInjectable/GroupedProductInjectableInterface.php b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Handler/GroupedProductInjectable/GroupedProductInjectableInterface.php
index a3fdc3388de8f20ab5fc756954f399c4f41ca96f..59a19e47ffd54a00dd67f5d670f8ccf0607c93f4 100644
--- a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Handler/GroupedProductInjectable/GroupedProductInjectableInterface.php
+++ b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Handler/GroupedProductInjectable/GroupedProductInjectableInterface.php
@@ -6,7 +6,7 @@
 
 namespace Magento\GroupedProduct\Test\Handler\GroupedProductInjectable;
 
-use Mtf\Handler\HandlerInterface;
+use Magento\Mtf\Handler\HandlerInterface;
 
 /**
  * Interface GroupedProductInjectableInterface
diff --git a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Repository/GroupedProductInjectable.php b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Repository/GroupedProductInjectable.php
index 4d70d99c53e2bd58171d51d5348b51838d09311f..54f00cd5e1f89875ba671e043ec7ac6d9f26211e 100644
--- a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Repository/GroupedProductInjectable.php
+++ b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/Repository/GroupedProductInjectable.php
@@ -6,7 +6,7 @@
 
 namespace Magento\GroupedProduct\Test\Repository;
 
-use Mtf\Repository\AbstractRepository;
+use Magento\Mtf\Repository\AbstractRepository;
 
 /**
  * Class GroupedProductInjectable
diff --git a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/TestCase/CreateGroupedProductEntityTest.php b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/TestCase/CreateGroupedProductEntityTest.php
index 67e4783a7e8314f1551ed1eb877ac06a3485e9c4..722034257409954a952dac5d5dae17214608a5aa 100755
--- a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/TestCase/CreateGroupedProductEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/TestCase/CreateGroupedProductEntityTest.php
@@ -6,11 +6,11 @@
 
 namespace Magento\GroupedProduct\Test\TestCase;
 
-use Magento\Catalog\Test\Fixture\CatalogCategory;
+use Magento\Catalog\Test\Fixture\Category;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductIndex;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductNew;
 use Magento\GroupedProduct\Test\Fixture\GroupedProductInjectable;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for CreateGroupedProductEntity
@@ -34,6 +34,11 @@ use Mtf\TestCase\Injectable;
  */
 class CreateGroupedProductEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'no';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * Page product on backend
      *
@@ -51,10 +56,10 @@ class CreateGroupedProductEntityTest extends Injectable
     /**
      * Persist category
      *
-     * @param CatalogCategory $category
+     * @param Category $category
      * @return array
      */
-    public function __prepare(CatalogCategory $category)
+    public function __prepare(Category $category)
     {
         $category->persist();
         return ['category' => $category];
@@ -79,10 +84,10 @@ class CreateGroupedProductEntityTest extends Injectable
      * Test create grouped product
      *
      * @param GroupedProductInjectable $product
-     * @param CatalogCategory $category
+     * @param Category $category
      * @return void
      */
-    public function test(GroupedProductInjectable $product, CatalogCategory $category)
+    public function test(GroupedProductInjectable $product, Category $category)
     {
         //Steps
         $this->catalogProductIndex->open();
diff --git a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/TestCase/CreateGroupedTest.php b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/TestCase/CreateGroupedTest.php
index 1ea3a059d095b7755a2ad5cac5e88395b053b92f..0c59909268d2bb1b5ca84d121ace20acf7794769 100644
--- a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/TestCase/CreateGroupedTest.php
+++ b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/TestCase/CreateGroupedTest.php
@@ -7,16 +7,19 @@
 namespace Magento\GroupedProduct\Test\TestCase;
 
 use Magento\GroupedProduct\Test\Fixture\GroupedProduct;
-use Mtf\Factory\Factory;
-use Mtf\TestCase\Functional;
+use Magento\Mtf\Factory\Factory;
+use Magento\Mtf\TestCase\Functional;
 
 /**
  * Class CreateGroupedTest
  * Grouped product
- *
  */
 class CreateGroupedTest extends Functional
 {
+    /* tags */
+    const TEST_TYPE = 'acceptance_test';
+    /* end tags */
+
     /**
      * Login into backend area before test
      *
diff --git a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/TestCase/UpdateGroupedProductEntityTest.php b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/TestCase/UpdateGroupedProductEntityTest.php
index dde6efd6d7532c41b73a234a81f6312ca4a10bcc..a437d49447bf087889e782e0b82d06d888466a56 100644
--- a/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/TestCase/UpdateGroupedProductEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/GroupedProduct/Test/TestCase/UpdateGroupedProductEntityTest.php
@@ -9,7 +9,7 @@ namespace Magento\GroupedProduct\Test\TestCase;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductEdit;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductIndex;
 use Magento\GroupedProduct\Test\Fixture\GroupedProductInjectable;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for Update GroupedProductEntity
@@ -32,6 +32,11 @@ use Mtf\TestCase\Injectable;
  */
 class UpdateGroupedProductEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'no';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * Page product on backend
      *
diff --git a/dev/tests/functional/tests/app/Magento/ImportExport/Test/Block/Adminhtml/Export/Edit/Form.php b/dev/tests/functional/tests/app/Magento/ImportExport/Test/Block/Adminhtml/Export/Edit/Form.php
index 3a6c6f623ff881dad308f1b53581b7a8eca354ec..7073a781039ea74f438d5db43c9d0cdd3cdc0d2e 100644
--- a/dev/tests/functional/tests/app/Magento/ImportExport/Test/Block/Adminhtml/Export/Edit/Form.php
+++ b/dev/tests/functional/tests/app/Magento/ImportExport/Test/Block/Adminhtml/Export/Edit/Form.php
@@ -6,7 +6,7 @@
 
 namespace Magento\ImportExport\Test\Block\Adminhtml\Export\Edit;
 
-use Mtf\Block\Form as AbstractForm;
+use Magento\Mtf\Block\Form as AbstractForm;
 
 /**
  * Class Form
diff --git a/dev/tests/functional/tests/app/Magento/ImportExport/Test/Constraint/AssertProductAttributeAbsenceForExport.php b/dev/tests/functional/tests/app/Magento/ImportExport/Test/Constraint/AssertProductAttributeAbsenceForExport.php
index 2ad78d38fe59470fa34b7d6c541e75653a2a779c..db5002a395008cb6b75a2d9c55e669c643e4e0ce 100644
--- a/dev/tests/functional/tests/app/Magento/ImportExport/Test/Constraint/AssertProductAttributeAbsenceForExport.php
+++ b/dev/tests/functional/tests/app/Magento/ImportExport/Test/Constraint/AssertProductAttributeAbsenceForExport.php
@@ -9,7 +9,7 @@ namespace Magento\ImportExport\Test\Constraint;
 use Magento\Catalog\Test\Fixture\CatalogProductAttribute;
 use Magento\ImportExport\Test\Fixture\ImportExport;
 use Magento\ImportExport\Test\Page\Adminhtml\AdminExportIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertAbsenceProductAttributeForExport
diff --git a/dev/tests/functional/tests/app/Magento/ImportExport/Test/Fixture/ImportExport.php b/dev/tests/functional/tests/app/Magento/ImportExport/Test/Fixture/ImportExport.php
index c825aff87c6b4bd4047ce98c3444c282c6c51ee7..e45bd649867d2f49d666f7a2438e22ca30be4641 100644
--- a/dev/tests/functional/tests/app/Magento/ImportExport/Test/Fixture/ImportExport.php
+++ b/dev/tests/functional/tests/app/Magento/ImportExport/Test/Fixture/ImportExport.php
@@ -6,7 +6,7 @@
 
 namespace Magento\ImportExport\Test\Fixture;
 
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Class ImportExport
diff --git a/dev/tests/functional/tests/app/Magento/Install/Test/Block/CreateAdmin.php b/dev/tests/functional/tests/app/Magento/Install/Test/Block/CreateAdmin.php
index ac62896eea14910aac7d042d26ecbe6ddf7c821d..549d7d2b9b3a6899dae252096b1d232307588f9e 100644
--- a/dev/tests/functional/tests/app/Magento/Install/Test/Block/CreateAdmin.php
+++ b/dev/tests/functional/tests/app/Magento/Install/Test/Block/CreateAdmin.php
@@ -6,8 +6,10 @@
 
 namespace Magento\Install\Test\Block;
 
-use Mtf\Block\Form;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Form;
+use Magento\Mtf\Client\Element\SimpleElement;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Create Admin Account block.
@@ -21,6 +23,13 @@ class CreateAdmin extends Form
      */
     protected $next = "[ng-click*='next']";
 
+    /**
+     * First field selector
+     *
+     * @var string
+     */
+    protected $firstField = '[name="adminUsername"]';
+
     /**
      * Click on 'Next' button.
      *
@@ -30,4 +39,17 @@ class CreateAdmin extends Form
     {
         $this->_rootElement->find($this->next, Locator::SELECTOR_CSS)->click();
     }
+
+    /**
+     * Ensure the form is loaded and fill the root form
+     *
+     * @param FixtureInterface $fixture
+     * @param SimpleElement|null $element
+     * @return $this
+     */
+    public function fill(FixtureInterface $fixture, SimpleElement $element = null)
+    {
+        $this->waitForElementVisible($this->firstField);
+        return parent::fill($fixture, $element);
+    }
 }
diff --git a/dev/tests/functional/tests/app/Magento/Install/Test/Block/CustomizeStore.php b/dev/tests/functional/tests/app/Magento/Install/Test/Block/CustomizeStore.php
index 220775d9ec536cc84aa755db8ed4ef809a8f803e..c6f992c5dfba1aebdff011d121d380e04c6b28c1 100644
--- a/dev/tests/functional/tests/app/Magento/Install/Test/Block/CustomizeStore.php
+++ b/dev/tests/functional/tests/app/Magento/Install/Test/Block/CustomizeStore.php
@@ -6,8 +6,10 @@
 
 namespace Magento\Install\Test\Block;
 
-use Mtf\Block\Form;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Form;
+use Magento\Mtf\Client\Element\SimpleElement;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Customize Your Store block.
@@ -21,6 +23,13 @@ class CustomizeStore extends Form
      */
     protected $next = "[ng-click*='next']";
 
+    /**
+     * First field selector
+     *
+     * @var string
+     */
+    protected $firstField = '[ng-model*="language"]';
+
     /**
      * Click on 'Next' button.
      *
@@ -30,4 +39,17 @@ class CustomizeStore extends Form
     {
         $this->_rootElement->find($this->next, Locator::SELECTOR_CSS)->click();
     }
+
+    /**
+     * Ensure the form is loaded and fill the root form
+     *
+     * @param FixtureInterface $fixture
+     * @param SimpleElement|null $element
+     * @return $this
+     */
+    public function fill(FixtureInterface $fixture, SimpleElement $element = null)
+    {
+        $this->waitForElementVisible($this->firstField);
+        return parent::fill($fixture, $element);
+    }
 }
diff --git a/dev/tests/functional/tests/app/Magento/Install/Test/Block/Database.php b/dev/tests/functional/tests/app/Magento/Install/Test/Block/Database.php
index 3db7157b6f5f3446fe0d7d3774cbf9ea0fd54199..e1efe0955d55b1affbec3bd5ecce0045617dad7a 100644
--- a/dev/tests/functional/tests/app/Magento/Install/Test/Block/Database.php
+++ b/dev/tests/functional/tests/app/Magento/Install/Test/Block/Database.php
@@ -6,8 +6,8 @@
 
 namespace Magento\Install\Test\Block;
 
-use Mtf\Block\Form;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Form;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Database form.
diff --git a/dev/tests/functional/tests/app/Magento/Install/Test/Block/Install.php b/dev/tests/functional/tests/app/Magento/Install/Test/Block/Install.php
index ae12c3c6f16c40de6a369b20679545ce9def5da9..40ae967bfd54c2625a437282902df31fefc8c057 100644
--- a/dev/tests/functional/tests/app/Magento/Install/Test/Block/Install.php
+++ b/dev/tests/functional/tests/app/Magento/Install/Test/Block/Install.php
@@ -6,8 +6,8 @@
 
 namespace Magento\Install\Test\Block;
 
-use Mtf\Block\Block;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Install block.
@@ -61,9 +61,9 @@ class Install extends Block
     public function getAdminInfo()
     {
         $adminData = [];
-        $rows = $this->_rootElement->find('#admin-info .row')->getElements();
+        $rows = $this->_rootElement->getElements('#admin-info .row');
         foreach ($rows as $row) {
-            $dataRow = $row->find('div')->getElements();
+            $dataRow = $row->getElements('div');
             $key = strtolower(str_replace(' ', '_', str_replace(':', '', $dataRow[0]->getText())));
             $adminData[$key] = $dataRow[1]->getText();
         }
@@ -79,9 +79,9 @@ class Install extends Block
     public function getDbInfo()
     {
         $dbData = [];
-        $rows = $this->_rootElement->find('#db-info .row')->getElements();
+        $rows = $this->_rootElement->getElements('#db-info .row');
         foreach ($rows as $row) {
-            $dataRow = $row->find('div')->getElements();
+            $dataRow = $row->getElements('div');
             $key = strtolower(str_replace(' ', '_', str_replace(':', '', $dataRow[0]->getText())));
             $dbData[$key] = $dataRow[1]->getText();
         }
diff --git a/dev/tests/functional/tests/app/Magento/Install/Test/Block/Landing.php b/dev/tests/functional/tests/app/Magento/Install/Test/Block/Landing.php
index 583d3f71de93007724f750164b788ed1b7b57621..8f3ddadef7e8d49b309de7069fd5e0c4071f1b41 100644
--- a/dev/tests/functional/tests/app/Magento/Install/Test/Block/Landing.php
+++ b/dev/tests/functional/tests/app/Magento/Install/Test/Block/Landing.php
@@ -6,8 +6,8 @@
 
 namespace Magento\Install\Test\Block;
 
-use Mtf\Block\Block;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Landing block.
diff --git a/dev/tests/functional/tests/app/Magento/Install/Test/Block/License.php b/dev/tests/functional/tests/app/Magento/Install/Test/Block/License.php
index a8d396a67826672945c51be72a44efaaeeae14f4..08f7f40dbffbf9d436989ba3ddb007ab5f3fcbd6 100644
--- a/dev/tests/functional/tests/app/Magento/Install/Test/Block/License.php
+++ b/dev/tests/functional/tests/app/Magento/Install/Test/Block/License.php
@@ -6,8 +6,8 @@
 
 namespace Magento\Install\Test\Block;
 
-use Mtf\Block\Block;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
 
 /**
  * License block.
diff --git a/dev/tests/functional/tests/app/Magento/Install/Test/Block/Readiness.php b/dev/tests/functional/tests/app/Magento/Install/Test/Block/Readiness.php
index 76f21eadcac00851a298586d98e1e860a19d3dd6..0e9a566b0d2108f451f66a3a35840a6034033fa0 100644
--- a/dev/tests/functional/tests/app/Magento/Install/Test/Block/Readiness.php
+++ b/dev/tests/functional/tests/app/Magento/Install/Test/Block/Readiness.php
@@ -6,8 +6,8 @@
 
 namespace Magento\Install\Test\Block;
 
-use Mtf\Block\Block;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Readiness block.
diff --git a/dev/tests/functional/tests/app/Magento/Install/Test/Block/WebConfiguration.php b/dev/tests/functional/tests/app/Magento/Install/Test/Block/WebConfiguration.php
index 865917e1212aca86e76a98669705dcd56364b648..654dd1ffc8fe3ad117cf1db3a7bb24ee7da00594 100644
--- a/dev/tests/functional/tests/app/Magento/Install/Test/Block/WebConfiguration.php
+++ b/dev/tests/functional/tests/app/Magento/Install/Test/Block/WebConfiguration.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Install\Test\Block;
 
-use Mtf\Block\Form;
+use Magento\Mtf\Block\Form;
 
 /**
  * Web configuration block.
diff --git a/dev/tests/functional/tests/app/Magento/Install/Test/Constraint/AssertAgreementTextPresent.php b/dev/tests/functional/tests/app/Magento/Install/Test/Constraint/AssertAgreementTextPresent.php
index 31fdded30b058f4c006e05a75643e9347d6cefb6..1b19c8a0ade9a2f89267e3e481ad409c604f15d1 100644
--- a/dev/tests/functional/tests/app/Magento/Install/Test/Constraint/AssertAgreementTextPresent.php
+++ b/dev/tests/functional/tests/app/Magento/Install/Test/Constraint/AssertAgreementTextPresent.php
@@ -7,7 +7,7 @@
 namespace Magento\Install\Test\Constraint;
 
 use Magento\Install\Test\Page\Install;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Check that agreement text present on Terms & Agreement page during install.
diff --git a/dev/tests/functional/tests/app/Magento/Install/Test/Constraint/AssertCurrencySelected.php b/dev/tests/functional/tests/app/Magento/Install/Test/Constraint/AssertCurrencySelected.php
index a7cea54acdc1c4d7ce76d5d5e3199bba676c9837..01f6a6e83417cdc0bd98d84bddd96bfed8358e9b 100644
--- a/dev/tests/functional/tests/app/Magento/Install/Test/Constraint/AssertCurrencySelected.php
+++ b/dev/tests/functional/tests/app/Magento/Install/Test/Constraint/AssertCurrencySelected.php
@@ -7,7 +7,7 @@
 namespace Magento\Install\Test\Constraint;
 
 use Magento\Backend\Test\Page\Adminhtml\Dashboard;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Assert that selected currency symbol displays in admin.
diff --git a/dev/tests/functional/tests/app/Magento/Install/Test/Constraint/AssertKeyCreated.php b/dev/tests/functional/tests/app/Magento/Install/Test/Constraint/AssertKeyCreated.php
index a18bfb1e9a98b8b70ce5b10e2e67bee052df5c37..45805d80ab396982026547d059175a1b88e4d194 100644
--- a/dev/tests/functional/tests/app/Magento/Install/Test/Constraint/AssertKeyCreated.php
+++ b/dev/tests/functional/tests/app/Magento/Install/Test/Constraint/AssertKeyCreated.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Install\Test\Constraint;
 
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 use Magento\Install\Test\Page\Install;
 use Magento\Install\Test\Fixture\Install as InstallConfig;
 
diff --git a/dev/tests/functional/tests/app/Magento/Install/Test/Constraint/AssertLanguageSelected.php b/dev/tests/functional/tests/app/Magento/Install/Test/Constraint/AssertLanguageSelected.php
index 99225403378673d7fded2e941766ba282589fa17..06a8eacf21b0fff576bf62eba8f04f39e561e46e 100644
--- a/dev/tests/functional/tests/app/Magento/Install/Test/Constraint/AssertLanguageSelected.php
+++ b/dev/tests/functional/tests/app/Magento/Install/Test/Constraint/AssertLanguageSelected.php
@@ -7,7 +7,7 @@
 namespace Magento\Install\Test\Constraint;
 
 use Magento\Cms\Test\Page\CmsIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Assert that selected language currently displays on frontend.
diff --git a/dev/tests/functional/tests/app/Magento/Install/Test/Constraint/AssertRewritesEnabled.php b/dev/tests/functional/tests/app/Magento/Install/Test/Constraint/AssertRewritesEnabled.php
index 669c1793d78aa691b47dfe853335f1b67ce9e93a..3248e930e920d293b2a1936e0f3b02d6cfdbc5dc 100644
--- a/dev/tests/functional/tests/app/Magento/Install/Test/Constraint/AssertRewritesEnabled.php
+++ b/dev/tests/functional/tests/app/Magento/Install/Test/Constraint/AssertRewritesEnabled.php
@@ -7,9 +7,9 @@
 namespace Magento\Install\Test\Constraint;
 
 use Magento\Cms\Test\Page\CmsIndex;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Client\Driver\Selenium\Browser;
-use Magento\Catalog\Test\Fixture\CatalogCategory;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Catalog\Test\Fixture\Category;
 
 /**
  * Assert that apache redirect correct works.
@@ -23,11 +23,11 @@ class AssertRewritesEnabled extends AbstractConstraint
     /**
      * Assert that apache redirect works by opening category page and asserting index.php in its url
      *
-     * @param CatalogCategory $category
+     * @param Category $category
      * @param CmsIndex $homePage
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      */
-    public function processAssert(CatalogCategory $category, CmsIndex $homePage, Browser $browser)
+    public function processAssert(Category $category, CmsIndex $homePage, BrowserInterface $browser)
     {
         $category->persist();
         $homePage->open();
diff --git a/dev/tests/functional/tests/app/Magento/Install/Test/Constraint/AssertSecureUrlEnabled.php b/dev/tests/functional/tests/app/Magento/Install/Test/Constraint/AssertSecureUrlEnabled.php
index d756b22583e2cda43ee2d6afe6c1b4179dae543c..d42cc5a9fb574a515fd8c64e90b542568cfef232 100644
--- a/dev/tests/functional/tests/app/Magento/Install/Test/Constraint/AssertSecureUrlEnabled.php
+++ b/dev/tests/functional/tests/app/Magento/Install/Test/Constraint/AssertSecureUrlEnabled.php
@@ -6,8 +6,8 @@
 
 namespace Magento\Install\Test\Constraint;
 
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
 use Magento\Backend\Test\Page\Adminhtml\Dashboard;
 use Magento\Customer\Test\Page\CustomerAccountLogin;
 
@@ -23,13 +23,13 @@ class AssertSecureUrlEnabled extends AbstractConstraint
     /**
      * Assert that Secure Urls Enabled.
      *
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @param Dashboard $dashboard
      * @param CustomerAccountLogin $customerAccountLogin
      * @return void
      */
     public function processAssert(
-        Browser $browser,
+        BrowserInterface $browser,
         Dashboard $dashboard,
         CustomerAccountLogin $customerAccountLogin
     ) {
diff --git a/dev/tests/functional/tests/app/Magento/Install/Test/Constraint/AssertSuccessInstall.php b/dev/tests/functional/tests/app/Magento/Install/Test/Constraint/AssertSuccessInstall.php
index 3a10bdc4cc19a26f7f11638077298e4587902412..9c8df14af250e3a8f783c9797d238b4572b9a72f 100644
--- a/dev/tests/functional/tests/app/Magento/Install/Test/Constraint/AssertSuccessInstall.php
+++ b/dev/tests/functional/tests/app/Magento/Install/Test/Constraint/AssertSuccessInstall.php
@@ -8,7 +8,7 @@ namespace Magento\Install\Test\Constraint;
 
 use Magento\User\Test\Fixture\User;
 use Magento\Install\Test\Page\Install;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 use Magento\Install\Test\Fixture\Install as InstallConfig;
 
 /**
diff --git a/dev/tests/functional/tests/app/Magento/Install/Test/Constraint/AssertSuccessfulReadinessCheck.php b/dev/tests/functional/tests/app/Magento/Install/Test/Constraint/AssertSuccessfulReadinessCheck.php
index 32d69a4f44337302b745eccaa8aa7d14368cf6c1..ef42ae9ac9fdc60da320b3d4031bd46ea64826ea 100644
--- a/dev/tests/functional/tests/app/Magento/Install/Test/Constraint/AssertSuccessfulReadinessCheck.php
+++ b/dev/tests/functional/tests/app/Magento/Install/Test/Constraint/AssertSuccessfulReadinessCheck.php
@@ -7,7 +7,7 @@
 namespace Magento\Install\Test\Constraint;
 
 use Magento\Install\Test\Page\Install;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Check that PHP Version, PHP Extensions and File Permission are ok.
diff --git a/dev/tests/functional/tests/app/Magento/Install/Test/Fixture/Install.php b/dev/tests/functional/tests/app/Magento/Install/Test/Fixture/Install.php
index fe297aeb0d966ce9b0ceca184ed2e661d059e329..6a436e82d54a1998891764ec0f1c5c3ffd686742 100644
--- a/dev/tests/functional/tests/app/Magento/Install/Test/Fixture/Install.php
+++ b/dev/tests/functional/tests/app/Magento/Install/Test/Fixture/Install.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Install\Test\Fixture;
 
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Class Install
diff --git a/dev/tests/functional/tests/app/Magento/Install/Test/TestCase/InstallTest.php b/dev/tests/functional/tests/app/Magento/Install/Test/TestCase/InstallTest.php
index 943943cf5e9d5b64fbc1702c7a49909f573ba6ad..9231f84c67975da52b0a62328df5b83ec58f667d 100644
--- a/dev/tests/functional/tests/app/Magento/Install/Test/TestCase/InstallTest.php
+++ b/dev/tests/functional/tests/app/Magento/Install/Test/TestCase/InstallTest.php
@@ -10,9 +10,9 @@ use Magento\Cms\Test\Page\CmsIndex;
 use Magento\Install\Test\Page\Install;
 use Magento\Install\Test\Fixture\Install as InstallConfig;
 use Magento\User\Test\Fixture\User;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\TestCase\Injectable;
-use Mtf\System\Config;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\TestCase\Injectable;
+use Magento\Mtf\System\Config;
 use Magento\Install\Test\Constraint\AssertAgreementTextPresent;
 use Magento\Install\Test\Constraint\AssertSuccessfulReadinessCheck;
 
diff --git a/dev/tests/functional/tests/app/Magento/Integration/Test/Block/Adminhtml/Integration/IntegrationGrid.php b/dev/tests/functional/tests/app/Magento/Integration/Test/Block/Adminhtml/Integration/IntegrationGrid.php
index b206797f1b20ff2f3482ce3365537352eff5ba95..734d91c42648b33370d85b2de7cd79af782ef19b 100644
--- a/dev/tests/functional/tests/app/Magento/Integration/Test/Block/Adminhtml/Integration/IntegrationGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Integration/Test/Block/Adminhtml/Integration/IntegrationGrid.php
@@ -9,7 +9,7 @@ namespace Magento\Integration\Test\Block\Adminhtml\Integration;
 use Magento\Backend\Test\Block\Widget\Grid;
 use Magento\Integration\Test\Block\Adminhtml\Integration\IntegrationGrid\ResourcesPopup;
 use Magento\Integration\Test\Block\Adminhtml\Integration\IntegrationGrid\TokensPopup;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class IntegrationGrid
diff --git a/dev/tests/functional/tests/app/Magento/Integration/Test/Block/Adminhtml/Integration/IntegrationGrid/DeleteDialog.php b/dev/tests/functional/tests/app/Magento/Integration/Test/Block/Adminhtml/Integration/IntegrationGrid/DeleteDialog.php
index d13efbf55153dc75f2eb9b8e14fb065a4c530998..c3ef042b1c1f1e939677e7e9cfee9b6cdbb448cf 100644
--- a/dev/tests/functional/tests/app/Magento/Integration/Test/Block/Adminhtml/Integration/IntegrationGrid/DeleteDialog.php
+++ b/dev/tests/functional/tests/app/Magento/Integration/Test/Block/Adminhtml/Integration/IntegrationGrid/DeleteDialog.php
@@ -6,8 +6,8 @@
 
 namespace Magento\Integration\Test\Block\Adminhtml\Integration\IntegrationGrid;
 
-use Mtf\Block\Block;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class DeleteDialog
diff --git a/dev/tests/functional/tests/app/Magento/Integration/Test/Block/Adminhtml/Integration/IntegrationGrid/ResourcesPopup.php b/dev/tests/functional/tests/app/Magento/Integration/Test/Block/Adminhtml/Integration/IntegrationGrid/ResourcesPopup.php
index d4b21f3362ad04e0cb728ddde1864261896d22ff..6720168dc4f81385cae0b3095a22404193f30463 100644
--- a/dev/tests/functional/tests/app/Magento/Integration/Test/Block/Adminhtml/Integration/IntegrationGrid/ResourcesPopup.php
+++ b/dev/tests/functional/tests/app/Magento/Integration/Test/Block/Adminhtml/Integration/IntegrationGrid/ResourcesPopup.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Integration\Test\Block\Adminhtml\Integration\IntegrationGrid;
 
-use Mtf\Block\Form;
+use Magento\Mtf\Block\Form;
 
 /**
  * Class ResourcesPopup
diff --git a/dev/tests/functional/tests/app/Magento/Integration/Test/Block/Adminhtml/Integration/IntegrationGrid/TokensPopup.php b/dev/tests/functional/tests/app/Magento/Integration/Test/Block/Adminhtml/Integration/IntegrationGrid/TokensPopup.php
index 43651e1d78be0e73751cce96257c66072d712960..2c7c33b1db84c6183d34c7fd6783fccb25015f12 100644
--- a/dev/tests/functional/tests/app/Magento/Integration/Test/Block/Adminhtml/Integration/IntegrationGrid/TokensPopup.php
+++ b/dev/tests/functional/tests/app/Magento/Integration/Test/Block/Adminhtml/Integration/IntegrationGrid/TokensPopup.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Integration\Test\Block\Adminhtml\Integration\IntegrationGrid;
 
-use Mtf\Block\Form;
+use Magento\Mtf\Block\Form;
 
 /**
  * Class TokensPopup
diff --git a/dev/tests/functional/tests/app/Magento/Integration/Test/Constraint/AssertIntegrationForm.php b/dev/tests/functional/tests/app/Magento/Integration/Test/Constraint/AssertIntegrationForm.php
index af2f985126162740ce6bcc264ff7431602a69d4c..d32789af9ba8005ba14fa86e61e64dc76e4f1968 100644
--- a/dev/tests/functional/tests/app/Magento/Integration/Test/Constraint/AssertIntegrationForm.php
+++ b/dev/tests/functional/tests/app/Magento/Integration/Test/Constraint/AssertIntegrationForm.php
@@ -9,7 +9,7 @@ namespace Magento\Integration\Test\Constraint;
 use Magento\Integration\Test\Fixture\Integration;
 use Magento\Integration\Test\Page\Adminhtml\IntegrationIndex;
 use Magento\Integration\Test\Page\Adminhtml\IntegrationNew;
-use Mtf\Constraint\AbstractAssertForm;
+use Magento\Mtf\Constraint\AbstractAssertForm;
 
 /**
  * Class AssertIntegrationForm
diff --git a/dev/tests/functional/tests/app/Magento/Integration/Test/Constraint/AssertIntegrationInGrid.php b/dev/tests/functional/tests/app/Magento/Integration/Test/Constraint/AssertIntegrationInGrid.php
index b770b325e65359dab7e98ad7708db1252318c936..81c5c22bab0324dfdcea88d5b9a5531e6d5f47e7 100644
--- a/dev/tests/functional/tests/app/Magento/Integration/Test/Constraint/AssertIntegrationInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Integration/Test/Constraint/AssertIntegrationInGrid.php
@@ -8,7 +8,7 @@ namespace Magento\Integration\Test\Constraint;
 
 use Magento\Integration\Test\Fixture\Integration;
 use Magento\Integration\Test\Page\Adminhtml\IntegrationIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertIntegrationInGrid
diff --git a/dev/tests/functional/tests/app/Magento/Integration/Test/Constraint/AssertIntegrationNotInGrid.php b/dev/tests/functional/tests/app/Magento/Integration/Test/Constraint/AssertIntegrationNotInGrid.php
index 78468647fd0108c901a37c77c435cdad3395939d..3b2705ee7994d7bd5babdfa5a1ef8233db4e1cef 100644
--- a/dev/tests/functional/tests/app/Magento/Integration/Test/Constraint/AssertIntegrationNotInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Integration/Test/Constraint/AssertIntegrationNotInGrid.php
@@ -8,7 +8,7 @@ namespace Magento\Integration\Test\Constraint;
 
 use Magento\Integration\Test\Fixture\Integration;
 use Magento\Integration\Test\Page\Adminhtml\IntegrationIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertIntegrationNotInGrid
diff --git a/dev/tests/functional/tests/app/Magento/Integration/Test/Constraint/AssertIntegrationResourcesPopup.php b/dev/tests/functional/tests/app/Magento/Integration/Test/Constraint/AssertIntegrationResourcesPopup.php
index 7613e5c9728e74becea6d2adefd9b6020d741c36..f301fc6c00ff26e189c06d948e0b7e81fcd8dcc5 100644
--- a/dev/tests/functional/tests/app/Magento/Integration/Test/Constraint/AssertIntegrationResourcesPopup.php
+++ b/dev/tests/functional/tests/app/Magento/Integration/Test/Constraint/AssertIntegrationResourcesPopup.php
@@ -8,7 +8,7 @@ namespace Magento\Integration\Test\Constraint;
 
 use Magento\Integration\Test\Fixture\Integration;
 use Magento\Integration\Test\Page\Adminhtml\IntegrationIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertIntegrationResourcesPopup
diff --git a/dev/tests/functional/tests/app/Magento/Integration/Test/Constraint/AssertIntegrationSuccessActivationMessage.php b/dev/tests/functional/tests/app/Magento/Integration/Test/Constraint/AssertIntegrationSuccessActivationMessage.php
index 7bc79c61f2e98ffe9418d80c99d63e5b87c5a573..fa8edc4ae44886f7d23e6a399115dea3f393cde6 100644
--- a/dev/tests/functional/tests/app/Magento/Integration/Test/Constraint/AssertIntegrationSuccessActivationMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Integration/Test/Constraint/AssertIntegrationSuccessActivationMessage.php
@@ -8,7 +8,7 @@ namespace Magento\Integration\Test\Constraint;
 
 use Magento\Integration\Test\Fixture\Integration;
 use Magento\Integration\Test\Page\Adminhtml\IntegrationIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertIntegrationSuccessActivationMessage
diff --git a/dev/tests/functional/tests/app/Magento/Integration/Test/Constraint/AssertIntegrationSuccessDeleteMessage.php b/dev/tests/functional/tests/app/Magento/Integration/Test/Constraint/AssertIntegrationSuccessDeleteMessage.php
index 044e26d231eb5f43757f927839837b6b67dcb9f3..6ee3320e396b9aa9fb5436f590eb97f2d2cda411 100644
--- a/dev/tests/functional/tests/app/Magento/Integration/Test/Constraint/AssertIntegrationSuccessDeleteMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Integration/Test/Constraint/AssertIntegrationSuccessDeleteMessage.php
@@ -8,7 +8,7 @@ namespace Magento\Integration\Test\Constraint;
 
 use Magento\Integration\Test\Fixture\Integration;
 use Magento\Integration\Test\Page\Adminhtml\IntegrationIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertIntegrationSuccessDeleteMessage
diff --git a/dev/tests/functional/tests/app/Magento/Integration/Test/Constraint/AssertIntegrationSuccessReauthorizeMessage.php b/dev/tests/functional/tests/app/Magento/Integration/Test/Constraint/AssertIntegrationSuccessReauthorizeMessage.php
index fc5543afdc28d470ae5d7503688e79513dd8f272..7abfeb28dac4b90dd73b46d644d90e123cf43ffc 100644
--- a/dev/tests/functional/tests/app/Magento/Integration/Test/Constraint/AssertIntegrationSuccessReauthorizeMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Integration/Test/Constraint/AssertIntegrationSuccessReauthorizeMessage.php
@@ -8,7 +8,7 @@ namespace Magento\Integration\Test\Constraint;
 
 use Magento\Integration\Test\Fixture\Integration;
 use Magento\Integration\Test\Page\Adminhtml\IntegrationIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertIntegrationSuccessReauthorizeMessage
diff --git a/dev/tests/functional/tests/app/Magento/Integration/Test/Constraint/AssertIntegrationSuccessSaveMessage.php b/dev/tests/functional/tests/app/Magento/Integration/Test/Constraint/AssertIntegrationSuccessSaveMessage.php
index bfbf57ef093499e03856b4ac3a93c027ef98aeec..c143ae8f0f29a033f235850a642e26b8ad86b7e0 100644
--- a/dev/tests/functional/tests/app/Magento/Integration/Test/Constraint/AssertIntegrationSuccessSaveMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Integration/Test/Constraint/AssertIntegrationSuccessSaveMessage.php
@@ -8,7 +8,7 @@ namespace Magento\Integration\Test\Constraint;
 
 use Magento\Integration\Test\Fixture\Integration;
 use Magento\Integration\Test\Page\Adminhtml\IntegrationIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertIntegrationSuccessSaveMessage
diff --git a/dev/tests/functional/tests/app/Magento/Integration/Test/Constraint/AssertIntegrationTokensAfterReauthorize.php b/dev/tests/functional/tests/app/Magento/Integration/Test/Constraint/AssertIntegrationTokensAfterReauthorize.php
index d3643f0a469e4273153f1bdc58c549a507ba1e97..f0d6b8506720c0e87c027de513f60a3f3088d588 100644
--- a/dev/tests/functional/tests/app/Magento/Integration/Test/Constraint/AssertIntegrationTokensAfterReauthorize.php
+++ b/dev/tests/functional/tests/app/Magento/Integration/Test/Constraint/AssertIntegrationTokensAfterReauthorize.php
@@ -9,7 +9,7 @@ namespace Magento\Integration\Test\Constraint;
 use Magento\Integration\Test\Fixture\Integration;
 use Magento\Integration\Test\Page\Adminhtml\IntegrationIndex;
 use Magento\Integration\Test\Page\Adminhtml\IntegrationNew;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertIntegrationTokensAfterReauthorize
diff --git a/dev/tests/functional/tests/app/Magento/Integration/Test/Constraint/AssertIntegrationTokensPopup.php b/dev/tests/functional/tests/app/Magento/Integration/Test/Constraint/AssertIntegrationTokensPopup.php
index 2bc2fe80c513769b86fc247d4750d82ab8b4587a..79af964f4ecff561e3e7a75144bffdffc880c8d5 100644
--- a/dev/tests/functional/tests/app/Magento/Integration/Test/Constraint/AssertIntegrationTokensPopup.php
+++ b/dev/tests/functional/tests/app/Magento/Integration/Test/Constraint/AssertIntegrationTokensPopup.php
@@ -7,7 +7,7 @@
 namespace Magento\Integration\Test\Constraint;
 
 use Magento\Integration\Test\Page\Adminhtml\IntegrationIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertIntegrationTokensPopup
diff --git a/dev/tests/functional/tests/app/Magento/Integration/Test/Fixture/Integration.php b/dev/tests/functional/tests/app/Magento/Integration/Test/Fixture/Integration.php
index f914c3d507dff8f6210edf00b0490f5ddb65f586..71a9b860f2fffa60d7b68ddf5ac0ab0502f9d7b6 100644
--- a/dev/tests/functional/tests/app/Magento/Integration/Test/Fixture/Integration.php
+++ b/dev/tests/functional/tests/app/Magento/Integration/Test/Fixture/Integration.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Integration\Test\Fixture;
 
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Class Integration
diff --git a/dev/tests/functional/tests/app/Magento/Integration/Test/Handler/Integration/Curl.php b/dev/tests/functional/tests/app/Magento/Integration/Test/Handler/Integration/Curl.php
index a96f9123ac2734579aa37c80433e8d92c981f82e..0550185ae18df253833fc0cb1e4c15c761cd8f43 100644
--- a/dev/tests/functional/tests/app/Magento/Integration/Test/Handler/Integration/Curl.php
+++ b/dev/tests/functional/tests/app/Magento/Integration/Test/Handler/Integration/Curl.php
@@ -6,12 +6,12 @@
 
 namespace Magento\Integration\Test\Handler\Integration;
 
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Handler\Curl as AbstractCurl;
-use Mtf\System\Config;
-use Mtf\Util\Protocol\CurlInterface;
-use Mtf\Util\Protocol\CurlTransport;
-use Mtf\Util\Protocol\CurlTransport\BackendDecorator;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Handler\Curl as AbstractCurl;
+use Magento\Mtf\System\Config;
+use Magento\Mtf\Util\Protocol\CurlInterface;
+use Magento\Mtf\Util\Protocol\CurlTransport;
+use Magento\Mtf\Util\Protocol\CurlTransport\BackendDecorator;
 
 /**
  * Class Curl
diff --git a/dev/tests/functional/tests/app/Magento/Integration/Test/Handler/Integration/IntegrationInterface.php b/dev/tests/functional/tests/app/Magento/Integration/Test/Handler/Integration/IntegrationInterface.php
index f5abf4c7f2c1eb2cd685a10d31bf4fe5bfe941c8..4bfdf4efe2df26f5200250a7ff837680af2e6994 100644
--- a/dev/tests/functional/tests/app/Magento/Integration/Test/Handler/Integration/IntegrationInterface.php
+++ b/dev/tests/functional/tests/app/Magento/Integration/Test/Handler/Integration/IntegrationInterface.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Integration\Test\Handler\Integration;
 
-use Mtf\Handler\HandlerInterface;
+use Magento\Mtf\Handler\HandlerInterface;
 
 /**
  * Interface IntegrationInterface
diff --git a/dev/tests/functional/tests/app/Magento/Integration/Test/Repository/Integration.php b/dev/tests/functional/tests/app/Magento/Integration/Test/Repository/Integration.php
index af4e955fca7c8cbb9d9190d7147d2c07d4f2158c..78c01f185fc2f224effb56cb11c86a2e65a7c812 100644
--- a/dev/tests/functional/tests/app/Magento/Integration/Test/Repository/Integration.php
+++ b/dev/tests/functional/tests/app/Magento/Integration/Test/Repository/Integration.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Integration\Test\Repository;
 
-use Mtf\Repository\AbstractRepository;
+use Magento\Mtf\Repository\AbstractRepository;
 
 /**
  * Class Integration Repository
diff --git a/dev/tests/functional/tests/app/Magento/Integration/Test/TestCase/ActivateIntegrationEntityTest.php b/dev/tests/functional/tests/app/Magento/Integration/Test/TestCase/ActivateIntegrationEntityTest.php
index 027e51e744fdf83ec346bb57ff7ad326da8f7223..caf67686a3604ff01447238c7ed9fab3a68e3b60 100644
--- a/dev/tests/functional/tests/app/Magento/Integration/Test/TestCase/ActivateIntegrationEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Integration/Test/TestCase/ActivateIntegrationEntityTest.php
@@ -8,7 +8,7 @@ namespace Magento\Integration\Test\TestCase;
 
 use Magento\Integration\Test\Fixture\Integration;
 use Magento\Integration\Test\Page\Adminhtml\IntegrationIndex;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for Activate Integration Entity
@@ -28,6 +28,11 @@ use Mtf\TestCase\Injectable;
  */
 class ActivateIntegrationEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'PS';
+    /* end tags */
+
     /**
      * Integration grid page
      *
diff --git a/dev/tests/functional/tests/app/Magento/Integration/Test/TestCase/CreateIntegrationEntityTest.php b/dev/tests/functional/tests/app/Magento/Integration/Test/TestCase/CreateIntegrationEntityTest.php
index f24e22b1cc38d738c0b1de28ca9ff151129275cd..2056ea6a9c7bb1e957ae4e3d5cab0bd14271a2d1 100644
--- a/dev/tests/functional/tests/app/Magento/Integration/Test/TestCase/CreateIntegrationEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Integration/Test/TestCase/CreateIntegrationEntityTest.php
@@ -9,7 +9,7 @@ namespace Magento\Integration\Test\TestCase;
 use Magento\Integration\Test\Fixture\Integration;
 use Magento\Integration\Test\Page\Adminhtml\IntegrationIndex;
 use Magento\Integration\Test\Page\Adminhtml\IntegrationNew;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for Create Integration Entity
@@ -28,6 +28,11 @@ use Mtf\TestCase\Injectable;
  */
 class CreateIntegrationEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'PS';
+    /* end tags */
+
     /**
      * Integration grid page
      *
diff --git a/dev/tests/functional/tests/app/Magento/Integration/Test/TestCase/DeleteIntegrationEntityTest.php b/dev/tests/functional/tests/app/Magento/Integration/Test/TestCase/DeleteIntegrationEntityTest.php
index 4d7d97c990bc01130c805c75d7978bdfa89f9364..d1cbf03eaecd41730831dad4dcd4df1f56b947d0 100644
--- a/dev/tests/functional/tests/app/Magento/Integration/Test/TestCase/DeleteIntegrationEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Integration/Test/TestCase/DeleteIntegrationEntityTest.php
@@ -8,7 +8,7 @@ namespace Magento\Integration\Test\TestCase;
 
 use Magento\Integration\Test\Fixture\Integration;
 use Magento\Integration\Test\Page\Adminhtml\IntegrationIndex;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for Delete Integration Entity
@@ -29,6 +29,11 @@ use Mtf\TestCase\Injectable;
  */
 class DeleteIntegrationEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'PS';
+    /* end tags */
+
     /**
      * Integration grid page
      *
diff --git a/dev/tests/functional/tests/app/Magento/Integration/Test/TestCase/ReAuthorizeTokensIntegrationEntityTest.php b/dev/tests/functional/tests/app/Magento/Integration/Test/TestCase/ReAuthorizeTokensIntegrationEntityTest.php
index a570e4e3c205e63d05f65de675c2c7536b1b0006..8519bb70812d705619e41be29766e9ff871dac38 100644
--- a/dev/tests/functional/tests/app/Magento/Integration/Test/TestCase/ReAuthorizeTokensIntegrationEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Integration/Test/TestCase/ReAuthorizeTokensIntegrationEntityTest.php
@@ -8,8 +8,8 @@ namespace Magento\Integration\Test\TestCase;
 
 use Magento\Integration\Test\Fixture\Integration;
 use Magento\Integration\Test\Page\Adminhtml\IntegrationIndex;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for Reauthorize tokens for the Integration Entity.
@@ -32,6 +32,11 @@ use Mtf\TestCase\Injectable;
  */
 class ReAuthorizeTokensIntegrationEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'PS';
+    /* end tags */
+
     /**
      * Integration grid page.
      *
diff --git a/dev/tests/functional/tests/app/Magento/Integration/Test/TestCase/UpdateIntegrationEntityTest.php b/dev/tests/functional/tests/app/Magento/Integration/Test/TestCase/UpdateIntegrationEntityTest.php
index 04947e1c5e2af52617c9a99cb2449fec8cbf130c..987c3c68b52dbcc4d35cd230a4dac4f9b6e6dd92 100644
--- a/dev/tests/functional/tests/app/Magento/Integration/Test/TestCase/UpdateIntegrationEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Integration/Test/TestCase/UpdateIntegrationEntityTest.php
@@ -9,7 +9,7 @@ namespace Magento\Integration\Test\TestCase;
 use Magento\Integration\Test\Fixture\Integration;
 use Magento\Integration\Test\Page\Adminhtml\IntegrationIndex;
 use Magento\Integration\Test\Page\Adminhtml\IntegrationNew;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for Update Integration Entity
@@ -31,6 +31,11 @@ use Mtf\TestCase\Injectable;
  */
 class UpdateIntegrationEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'PS';
+    /* end tags */
+
     /**
      * Integration grid page
      *
diff --git a/dev/tests/functional/tests/app/Magento/Newsletter/Test/Block/Adminhtml/Template/Grid.php b/dev/tests/functional/tests/app/Magento/Newsletter/Test/Block/Adminhtml/Template/Grid.php
index 2d52f6004069f379da0320853f2c78aaca10b5ed..972317cb5c7a2c7383d1de89d37baf02082245bb 100644
--- a/dev/tests/functional/tests/app/Magento/Newsletter/Test/Block/Adminhtml/Template/Grid.php
+++ b/dev/tests/functional/tests/app/Magento/Newsletter/Test/Block/Adminhtml/Template/Grid.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Newsletter\Test\Block\Adminhtml\Template;
 
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class Grid
diff --git a/dev/tests/functional/tests/app/Magento/Newsletter/Test/Block/Adminhtml/Template/Preview.php b/dev/tests/functional/tests/app/Magento/Newsletter/Test/Block/Adminhtml/Template/Preview.php
index cb5536668301d38f70e0b2f02a04bc82d081e3ba..3de754dffa925d1f920b77c079b0df95a6cf63c7 100644
--- a/dev/tests/functional/tests/app/Magento/Newsletter/Test/Block/Adminhtml/Template/Preview.php
+++ b/dev/tests/functional/tests/app/Magento/Newsletter/Test/Block/Adminhtml/Template/Preview.php
@@ -6,9 +6,8 @@
 
 namespace Magento\Newsletter\Test\Block\Adminhtml\Template;
 
-use Mtf\Block\Block;
-use Mtf\Client\Element;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Newsletter template preview.
@@ -45,6 +44,7 @@ class Preview extends Block
             }
         );
         $this->browser->switchToFrame(new Locator($this->iFrame));
+
         return $this->_rootElement->getText();
     }
 }
diff --git a/dev/tests/functional/tests/app/Magento/Newsletter/Test/Constraint/AssertCustomerIsSubscribedToNewsletter.php b/dev/tests/functional/tests/app/Magento/Newsletter/Test/Constraint/AssertCustomerIsSubscribedToNewsletter.php
index a6fcb89baaf4db70b633d5fe66a476c0b9e6251d..7e41b346d1d2a5b4b85f15329218802c42aa4f58 100644
--- a/dev/tests/functional/tests/app/Magento/Newsletter/Test/Constraint/AssertCustomerIsSubscribedToNewsletter.php
+++ b/dev/tests/functional/tests/app/Magento/Newsletter/Test/Constraint/AssertCustomerIsSubscribedToNewsletter.php
@@ -8,7 +8,7 @@ namespace Magento\Newsletter\Test\Constraint;
 
 use Magento\Customer\Test\Fixture\CustomerInjectable;
 use Magento\Newsletter\Test\Page\Adminhtml\SubscriberIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertCustomerIsSubscribedToNewsletter
diff --git a/dev/tests/functional/tests/app/Magento/Newsletter/Test/Constraint/AssertNewsletterForm.php b/dev/tests/functional/tests/app/Magento/Newsletter/Test/Constraint/AssertNewsletterForm.php
index eee0651315b79759a805b645558b8a279a6bb638..fe8a56af636a8e9de0da03a45204673dda1d31b2 100644
--- a/dev/tests/functional/tests/app/Magento/Newsletter/Test/Constraint/AssertNewsletterForm.php
+++ b/dev/tests/functional/tests/app/Magento/Newsletter/Test/Constraint/AssertNewsletterForm.php
@@ -9,7 +9,7 @@ namespace Magento\Newsletter\Test\Constraint;
 use Magento\Newsletter\Test\Fixture\Template;
 use Magento\Newsletter\Test\Page\Adminhtml\TemplateEdit;
 use Magento\Newsletter\Test\Page\Adminhtml\TemplateIndex;
-use Mtf\Constraint\AbstractAssertForm;
+use Magento\Mtf\Constraint\AbstractAssertForm;
 
 /**
  * Class AssertNewsletterForm
diff --git a/dev/tests/functional/tests/app/Magento/Newsletter/Test/Constraint/AssertNewsletterInGrid.php b/dev/tests/functional/tests/app/Magento/Newsletter/Test/Constraint/AssertNewsletterInGrid.php
index 182f10bc13c05e99ea8c479ddb0a7742c287eeb1..b5d1a1c72b4445aed56b6aeb7dd8bb37bd1a8ad5 100644
--- a/dev/tests/functional/tests/app/Magento/Newsletter/Test/Constraint/AssertNewsletterInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Newsletter/Test/Constraint/AssertNewsletterInGrid.php
@@ -8,7 +8,7 @@ namespace Magento\Newsletter\Test\Constraint;
 
 use Magento\Newsletter\Test\Fixture\Template;
 use Magento\Newsletter\Test\Page\Adminhtml\TemplateIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertNewsletterInGrid
diff --git a/dev/tests/functional/tests/app/Magento/Newsletter/Test/Constraint/AssertNewsletterPreview.php b/dev/tests/functional/tests/app/Magento/Newsletter/Test/Constraint/AssertNewsletterPreview.php
index c3ffe3e95d2e58269a45175298fda4f3454875a1..aa0946c684dc1ec09ee7bf9b23d12c8a5e3e70df 100644
--- a/dev/tests/functional/tests/app/Magento/Newsletter/Test/Constraint/AssertNewsletterPreview.php
+++ b/dev/tests/functional/tests/app/Magento/Newsletter/Test/Constraint/AssertNewsletterPreview.php
@@ -8,8 +8,8 @@ namespace Magento\Newsletter\Test\Constraint;
 
 use Magento\Newsletter\Test\Fixture\Template;
 use Magento\Newsletter\Test\Page\Adminhtml\TemplatePreview;
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertNewsletterPreview
@@ -24,13 +24,16 @@ class AssertNewsletterPreview extends AbstractConstraint
     /**
      * Assert that newsletter preview opened in new window and template content correct
      *
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @param TemplatePreview $templatePreview
      * @param Template $newsletter
      * @return void
      */
-    public function processAssert(Browser $browser, TemplatePreview $templatePreview, Template $newsletter)
-    {
+    public function processAssert(
+        BrowserInterface $browser,
+        TemplatePreview $templatePreview,
+        Template $newsletter
+    ) {
         $browser->selectWindow();
         $content = $templatePreview->getContent()->getPageContent();
         $browser->closeWindow();
diff --git a/dev/tests/functional/tests/app/Magento/Newsletter/Test/Constraint/AssertNewsletterQueue.php b/dev/tests/functional/tests/app/Magento/Newsletter/Test/Constraint/AssertNewsletterQueue.php
index e1903f8ccc52abfe19132514633ba2c293b7d8a6..b9dbcdceb67d5f018a8f90a4300de9002c25e593 100644
--- a/dev/tests/functional/tests/app/Magento/Newsletter/Test/Constraint/AssertNewsletterQueue.php
+++ b/dev/tests/functional/tests/app/Magento/Newsletter/Test/Constraint/AssertNewsletterQueue.php
@@ -8,7 +8,7 @@ namespace Magento\Newsletter\Test\Constraint;
 
 use Magento\Newsletter\Test\Fixture\Template;
 use Magento\Newsletter\Test\Page\Adminhtml\TemplateQueue;
-use Mtf\Constraint\AbstractAssertForm;
+use Magento\Mtf\Constraint\AbstractAssertForm;
 
 /**
  * Class AssertNewsletterQueue
diff --git a/dev/tests/functional/tests/app/Magento/Newsletter/Test/Constraint/AssertNewsletterSuccessCreateMessage.php b/dev/tests/functional/tests/app/Magento/Newsletter/Test/Constraint/AssertNewsletterSuccessCreateMessage.php
index 21c32980f81a79bd85aa0fd0df8276fa8ac57e8d..0a71b2cc8ae57f78277e7df3e469c1f44bd9f3f2 100644
--- a/dev/tests/functional/tests/app/Magento/Newsletter/Test/Constraint/AssertNewsletterSuccessCreateMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Newsletter/Test/Constraint/AssertNewsletterSuccessCreateMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Newsletter\Test\Constraint;
 
 use Magento\Newsletter\Test\Page\Adminhtml\TemplateIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertNewsletterSuccessCreateMessage
diff --git a/dev/tests/functional/tests/app/Magento/Newsletter/Test/Fixture/Template.php b/dev/tests/functional/tests/app/Magento/Newsletter/Test/Fixture/Template.php
index 44f92cc2b6fc4a8fa8a430ef6ff6fd79ea794008..da668a8e4a747f8eff3808836a7181f002a52ea6 100644
--- a/dev/tests/functional/tests/app/Magento/Newsletter/Test/Fixture/Template.php
+++ b/dev/tests/functional/tests/app/Magento/Newsletter/Test/Fixture/Template.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Newsletter\Test\Fixture;
 
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Class Template
diff --git a/dev/tests/functional/tests/app/Magento/Newsletter/Test/Handler/Template/Curl.php b/dev/tests/functional/tests/app/Magento/Newsletter/Test/Handler/Template/Curl.php
index 759a6177fb28122ad210cb1d8a86646cfc426022..0cb1f61c7459f14c41ee6a4e372ceec8208b8fcd 100644
--- a/dev/tests/functional/tests/app/Magento/Newsletter/Test/Handler/Template/Curl.php
+++ b/dev/tests/functional/tests/app/Magento/Newsletter/Test/Handler/Template/Curl.php
@@ -6,12 +6,12 @@
 
 namespace Magento\Newsletter\Test\Handler\Template;
 
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Handler\Curl as AbstractCurl;
-use Mtf\System\Config;
-use Mtf\Util\Protocol\CurlInterface;
-use Mtf\Util\Protocol\CurlTransport;
-use Mtf\Util\Protocol\CurlTransport\BackendDecorator;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Handler\Curl as AbstractCurl;
+use Magento\Mtf\System\Config;
+use Magento\Mtf\Util\Protocol\CurlInterface;
+use Magento\Mtf\Util\Protocol\CurlTransport;
+use Magento\Mtf\Util\Protocol\CurlTransport\BackendDecorator;
 
 /**
  * Class Curl
diff --git a/dev/tests/functional/tests/app/Magento/Newsletter/Test/Handler/Template/TemplateInterface.php b/dev/tests/functional/tests/app/Magento/Newsletter/Test/Handler/Template/TemplateInterface.php
index cc4848f0dbe76bc6f4099321eecd009d0e47f73e..9b2628398266e0e39dae6d7a966b9b923348c721 100644
--- a/dev/tests/functional/tests/app/Magento/Newsletter/Test/Handler/Template/TemplateInterface.php
+++ b/dev/tests/functional/tests/app/Magento/Newsletter/Test/Handler/Template/TemplateInterface.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Newsletter\Test\Handler\Template;
 
-use Mtf\Handler\HandlerInterface;
+use Magento\Mtf\Handler\HandlerInterface;
 
 /**
  * Interface TemplateInterface
diff --git a/dev/tests/functional/tests/app/Magento/Newsletter/Test/Repository/Template.php b/dev/tests/functional/tests/app/Magento/Newsletter/Test/Repository/Template.php
index 00f90b9ced37cf087c0a85bace9d067467424dfa..83669e31b8486c6b2cd15dc8e31f91aa963d454f 100644
--- a/dev/tests/functional/tests/app/Magento/Newsletter/Test/Repository/Template.php
+++ b/dev/tests/functional/tests/app/Magento/Newsletter/Test/Repository/Template.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Newsletter\Test\Repository;
 
-use Mtf\Repository\AbstractRepository;
+use Magento\Mtf\Repository\AbstractRepository;
 
 /**
  * Class UrlRewrite
diff --git a/dev/tests/functional/tests/app/Magento/Newsletter/Test/TestCase/ActionNewsletterTemplateEntityTest.php b/dev/tests/functional/tests/app/Magento/Newsletter/Test/TestCase/ActionNewsletterTemplateEntityTest.php
index 07bc45cc7a2d6794f312b7b4d5978088b50124bd..1bffdfc6e1ae3211531fbedb405cb07e87ee9caf 100644
--- a/dev/tests/functional/tests/app/Magento/Newsletter/Test/TestCase/ActionNewsletterTemplateEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Newsletter/Test/TestCase/ActionNewsletterTemplateEntityTest.php
@@ -8,7 +8,7 @@ namespace Magento\Newsletter\Test\TestCase;
 
 use Magento\Newsletter\Test\Fixture\Template;
 use Magento\Newsletter\Test\Page\Adminhtml\TemplateIndex;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for Action for Newsletter Template (Preview and Queue)
@@ -29,6 +29,11 @@ use Mtf\TestCase\Injectable;
  */
 class ActionNewsletterTemplateEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * Page with newsletter template grid
      *
diff --git a/dev/tests/functional/tests/app/Magento/Newsletter/Test/TestCase/CreateNewsletterTemplateEntityTest.php b/dev/tests/functional/tests/app/Magento/Newsletter/Test/TestCase/CreateNewsletterTemplateEntityTest.php
index 554a90b948a3c164c78d516f0e0737cd7ca2b537..81a7e1a994942bf3e9255d539056d064a0db8eea 100644
--- a/dev/tests/functional/tests/app/Magento/Newsletter/Test/TestCase/CreateNewsletterTemplateEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Newsletter/Test/TestCase/CreateNewsletterTemplateEntityTest.php
@@ -9,7 +9,7 @@ namespace Magento\Newsletter\Test\TestCase;
 use Magento\Newsletter\Test\Fixture\Template;
 use Magento\Newsletter\Test\Page\Adminhtml\TemplateIndex;
 use Magento\Newsletter\Test\Page\Adminhtml\TemplateNewIndex;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for Create Newsletter Template
@@ -27,6 +27,11 @@ use Mtf\TestCase\Injectable;
  */
 class CreateNewsletterTemplateEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * Page for create newsletter template
      *
diff --git a/dev/tests/functional/tests/app/Magento/Newsletter/Test/TestCase/UpdateNewsletterTemplateTest.php b/dev/tests/functional/tests/app/Magento/Newsletter/Test/TestCase/UpdateNewsletterTemplateTest.php
index bb8fa799d2b02a974895f61fbed20a97873ba0f0..9442ee96d8edb9b4d46b83b359c94010a9ac3d98 100644
--- a/dev/tests/functional/tests/app/Magento/Newsletter/Test/TestCase/UpdateNewsletterTemplateTest.php
+++ b/dev/tests/functional/tests/app/Magento/Newsletter/Test/TestCase/UpdateNewsletterTemplateTest.php
@@ -9,7 +9,7 @@ namespace Magento\Newsletter\Test\TestCase;
 use Magento\Newsletter\Test\Fixture\Template;
 use Magento\Newsletter\Test\Page\Adminhtml\TemplateEdit;
 use Magento\Newsletter\Test\Page\Adminhtml\TemplateIndex;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for UpdateNewsletterTemplate
@@ -32,6 +32,11 @@ use Mtf\TestCase\Injectable;
  */
 class UpdateNewsletterTemplateTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * Newsletter template index page
      *
diff --git a/dev/tests/functional/tests/app/Magento/Reports/Test/Block/Adminhtml/AbstractFilter.php b/dev/tests/functional/tests/app/Magento/Reports/Test/Block/Adminhtml/AbstractFilter.php
index 10965d8e33013271d4c0381b2e0773d47d880c7a..90eebe23e89a0b816abfc7ea7bfbad6308de09e9 100644
--- a/dev/tests/functional/tests/app/Magento/Reports/Test/Block/Adminhtml/AbstractFilter.php
+++ b/dev/tests/functional/tests/app/Magento/Reports/Test/Block/Adminhtml/AbstractFilter.php
@@ -6,8 +6,8 @@
 
 namespace Magento\Reports\Test\Block\Adminhtml;
 
-use Mtf\Block\Form;
-use Mtf\ObjectManager;
+use Magento\Mtf\Block\Form;
+use Magento\Mtf\ObjectManager;
 
 /**
  * Abstract Class Filter
diff --git a/dev/tests/functional/tests/app/Magento/Reports/Test/Block/Adminhtml/Customer/AccountsGrid.php b/dev/tests/functional/tests/app/Magento/Reports/Test/Block/Adminhtml/Customer/AccountsGrid.php
index 52677cffebd985d14f8b1c2802d49d2681339836..0780cf35898c8a883dd4e5dd321723c362c4a431 100644
--- a/dev/tests/functional/tests/app/Magento/Reports/Test/Block/Adminhtml/Customer/AccountsGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Reports/Test/Block/Adminhtml/Customer/AccountsGrid.php
@@ -6,8 +6,8 @@
 
 namespace Magento\Reports\Test\Block\Adminhtml\Customer;
 
-use Mtf\Client\Element\Locator;
-use Mtf\ObjectManager;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\ObjectManager;
 
 /**
  * Class AccountsGrid
diff --git a/dev/tests/functional/tests/app/Magento/Reports/Test/Block/Adminhtml/Customer/Totals/Grid.php b/dev/tests/functional/tests/app/Magento/Reports/Test/Block/Adminhtml/Customer/Totals/Grid.php
index a7057bb927450800f5977d5ce2b06a32d308d6ab..3bf9e419499f8acb0d6610032cde8d7e3099aeda 100644
--- a/dev/tests/functional/tests/app/Magento/Reports/Test/Block/Adminhtml/Customer/Totals/Grid.php
+++ b/dev/tests/functional/tests/app/Magento/Reports/Test/Block/Adminhtml/Customer/Totals/Grid.php
@@ -6,8 +6,8 @@
 
 namespace Magento\Reports\Test\Block\Adminhtml\Customer\Totals;
 
-use Mtf\Client\Element;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Client\Element\SimpleElement;
 
 /**
  * Class Grid
@@ -62,7 +62,7 @@ class Grid extends \Magento\Backend\Test\Block\Widget\Grid
      * @param array $filter
      * @param bool $isSearchable
      * @param bool $isStrict
-     * @return Element
+     * @return SimpleElement
      */
     protected function getRow(array $filter, $isSearchable = true, $isStrict = true)
     {
diff --git a/dev/tests/functional/tests/app/Magento/Reports/Test/Block/Adminhtml/Refresh/Statistics/Grid.php b/dev/tests/functional/tests/app/Magento/Reports/Test/Block/Adminhtml/Refresh/Statistics/Grid.php
index 10c49b57b7a21c5fbbc05e23b25d37c5a6a16e80..b36221e8fe0d6596b82ec0d81e77f0ba441bae37 100644
--- a/dev/tests/functional/tests/app/Magento/Reports/Test/Block/Adminhtml/Refresh/Statistics/Grid.php
+++ b/dev/tests/functional/tests/app/Magento/Reports/Test/Block/Adminhtml/Refresh/Statistics/Grid.php
@@ -7,7 +7,7 @@
 namespace Magento\Reports\Test\Block\Adminhtml\Refresh\Statistics;
 
 use Magento\Backend\Test\Block\Widget\Grid as AbstractGrid;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class Grid
diff --git a/dev/tests/functional/tests/app/Magento/Reports/Test/Block/Adminhtml/Review/Customer/Grid.php b/dev/tests/functional/tests/app/Magento/Reports/Test/Block/Adminhtml/Review/Customer/Grid.php
index 81381f65adbbb4eae062e500dcbb73409e62df0f..3eaae41b7e2bd327eb92e3af85bb9d56c1aca24e 100644
--- a/dev/tests/functional/tests/app/Magento/Reports/Test/Block/Adminhtml/Review/Customer/Grid.php
+++ b/dev/tests/functional/tests/app/Magento/Reports/Test/Block/Adminhtml/Review/Customer/Grid.php
@@ -8,7 +8,7 @@ namespace Magento\Reports\Test\Block\Adminhtml\Review\Customer;
 
 use Magento\Backend\Test\Block\Widget\Grid as AbstractGrid;
 use Magento\Customer\Test\Fixture\CustomerInjectable;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class Grid
diff --git a/dev/tests/functional/tests/app/Magento/Reports/Test/Block/Adminhtml/Review/Products/Grid.php b/dev/tests/functional/tests/app/Magento/Reports/Test/Block/Adminhtml/Review/Products/Grid.php
index cf97a199d6a75c13ba745e1646ca0c0701d3dc91..7c253b7b2f2874fa6ba1e8bfa4374ca792f13c82 100644
--- a/dev/tests/functional/tests/app/Magento/Reports/Test/Block/Adminhtml/Review/Products/Grid.php
+++ b/dev/tests/functional/tests/app/Magento/Reports/Test/Block/Adminhtml/Review/Products/Grid.php
@@ -7,7 +7,7 @@
 namespace Magento\Reports\Test\Block\Adminhtml\Review\Products;
 
 use Magento\Backend\Test\Block\Widget\Grid as AbstractGrid;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class Grid
diff --git a/dev/tests/functional/tests/app/Magento/Reports/Test/Block/Adminhtml/Review/Products/Viewed/ProductGrid.php b/dev/tests/functional/tests/app/Magento/Reports/Test/Block/Adminhtml/Review/Products/Viewed/ProductGrid.php
index 8128e9cd6e825b82caf38075858cce3e6e8dd92e..e8f44efdbaa0c9f85fa2e0bf99a4a1cf18715651 100644
--- a/dev/tests/functional/tests/app/Magento/Reports/Test/Block/Adminhtml/Review/Products/Viewed/ProductGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Reports/Test/Block/Adminhtml/Review/Products/Viewed/ProductGrid.php
@@ -7,7 +7,7 @@
 namespace Magento\Reports\Test\Block\Adminhtml\Review\Products\Viewed;
 
 use Magento\Backend\Test\Block\Widget\Grid;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class ProductGrid
diff --git a/dev/tests/functional/tests/app/Magento/Reports/Test/Block/Adminhtml/Sales/Orders/Viewed/FilterGrid.php b/dev/tests/functional/tests/app/Magento/Reports/Test/Block/Adminhtml/Sales/Orders/Viewed/FilterGrid.php
index 92a22e656ea528a1a17b20ddf12a390109ccdd56..e3a36a9553e4502aa2788be8c955242beeaf4ad0 100644
--- a/dev/tests/functional/tests/app/Magento/Reports/Test/Block/Adminhtml/Sales/Orders/Viewed/FilterGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Reports/Test/Block/Adminhtml/Sales/Orders/Viewed/FilterGrid.php
@@ -7,7 +7,7 @@
 namespace Magento\Reports\Test\Block\Adminhtml\Sales\Orders\Viewed;
 
 use Magento\Backend\Test\Block\Widget\Grid;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class FilterGrid
diff --git a/dev/tests/functional/tests/app/Magento/Reports/Test/Block/Adminhtml/Shopcart/Product/Grid.php b/dev/tests/functional/tests/app/Magento/Reports/Test/Block/Adminhtml/Shopcart/Product/Grid.php
index 9831a4a710694ec60fa1a4354e4bc5490b6030c7..2186b442e7486ee8b79410d0bb1fbfaea49076d6 100644
--- a/dev/tests/functional/tests/app/Magento/Reports/Test/Block/Adminhtml/Shopcart/Product/Grid.php
+++ b/dev/tests/functional/tests/app/Magento/Reports/Test/Block/Adminhtml/Shopcart/Product/Grid.php
@@ -7,7 +7,7 @@
 namespace Magento\Reports\Test\Block\Adminhtml\Shopcart\Product;
 
 use Magento\Catalog\Test\Fixture\CatalogProductSimple;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class Grid
diff --git a/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AbstractAssertCustomerOrderReportResult.php b/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AbstractAssertCustomerOrderReportResult.php
index deecca39c4321205ebb016d5fb35ff289b617f6f..82e4fe1f4b0a998e1603463ddcf74bdec7c424ad 100644
--- a/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AbstractAssertCustomerOrderReportResult.php
+++ b/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AbstractAssertCustomerOrderReportResult.php
@@ -7,7 +7,7 @@
 namespace Magento\Reports\Test\Constraint;
 
 use Magento\Customer\Test\Fixture\CustomerInjectable;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AbstractAssertCustomerOrderReportResult
diff --git a/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AbstractAssertInvoiceReportResult.php b/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AbstractAssertInvoiceReportResult.php
index 16c1fbcf29dc6b3cd88d98d5ac434c3bea42567a..df6e3fb9662d455e69f22dbe3b8238b743c143eb 100644
--- a/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AbstractAssertInvoiceReportResult.php
+++ b/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AbstractAssertInvoiceReportResult.php
@@ -8,8 +8,8 @@ namespace Magento\Reports\Test\Constraint;
 
 use Magento\Reports\Test\Page\Adminhtml\SalesInvoiceReport;
 use Magento\Sales\Test\Fixture\OrderInjectable;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\ObjectManager;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\ObjectManager;
 
 /**
  * Class AbstractAssertInvoiceReportResult
diff --git a/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AbstractAssertSalesReportResult.php b/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AbstractAssertSalesReportResult.php
index 55fa321d281a96588e355fca53e65e7ff72702ce..16af632c450ab59a2e803b609454d6d832064d32 100644
--- a/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AbstractAssertSalesReportResult.php
+++ b/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AbstractAssertSalesReportResult.php
@@ -7,8 +7,8 @@
 namespace Magento\Reports\Test\Constraint;
 
 use Magento\Sales\Test\Fixture\OrderInjectable;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Page\BackendPage;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Page\BackendPage;
 
 /**
  * Class AbstractAssertSalesReportResult
diff --git a/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertAbandonedCartCustomerInfoResult.php b/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertAbandonedCartCustomerInfoResult.php
index 7c38e4dfaa37fbc8847bad6e26e6f668dec24a3b..346f78a1c747a2ccede20e72264613c27067ac52 100644
--- a/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertAbandonedCartCustomerInfoResult.php
+++ b/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertAbandonedCartCustomerInfoResult.php
@@ -8,7 +8,7 @@ namespace Magento\Reports\Test\Constraint;
 
 use Magento\Customer\Test\Fixture\CustomerInjectable;
 use Magento\Reports\Test\Page\Adminhtml\AbandonedCarts;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertAbandonedCartCustomerInfoResult
diff --git a/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertBestsellerReportResult.php b/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertBestsellerReportResult.php
index 726d18a3aadacd379bb789e46bf2ce8bc53f09d4..350a81904f4e379d7a0d2207c10c551408c71d06 100644
--- a/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertBestsellerReportResult.php
+++ b/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertBestsellerReportResult.php
@@ -9,7 +9,7 @@ namespace Magento\Reports\Test\Constraint;
 use Magento\Catalog\Test\Fixture\CatalogProductSimple;
 use Magento\Reports\Test\Page\Adminhtml\Bestsellers;
 use Magento\Sales\Test\Fixture\OrderInjectable;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Assert bestseller info in report: date, product name and qty.
diff --git a/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertCouponReportResult.php b/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertCouponReportResult.php
index 685624924c9aaf9acf6e08d4cfc26da5810951c2..da229325e70c0b49298db2695385903961c97298 100644
--- a/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertCouponReportResult.php
+++ b/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertCouponReportResult.php
@@ -8,7 +8,7 @@ namespace Magento\Reports\Test\Constraint;
 
 use Magento\Reports\Test\Page\Adminhtml\SalesCouponReportView;
 use Magento\Sales\Test\Fixture\OrderInjectable;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertCouponReportResult
diff --git a/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertDownloadsReportResult.php b/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertDownloadsReportResult.php
index 97f486de8c0a290ecddc6679cb9e10e654e8b722..c77ecc0cfb61c683b1b69ef92e947c4f285dd9fc 100644
--- a/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertDownloadsReportResult.php
+++ b/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertDownloadsReportResult.php
@@ -8,7 +8,7 @@ namespace Magento\Reports\Test\Constraint;
 
 use Magento\Reports\Test\Page\Adminhtml\DownloadsReport;
 use Magento\Sales\Test\Fixture\OrderInjectable;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertDownloadsReportResult
diff --git a/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertLowStockProductInGrid.php b/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertLowStockProductInGrid.php
index 8b1b7e8a7773305eda1faa02d61244a99c89d38f..bbdee1a27dab6400df685bec811108308a6d962c 100644
--- a/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertLowStockProductInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertLowStockProductInGrid.php
@@ -8,7 +8,7 @@ namespace Magento\Reports\Test\Constraint;
 
 use Magento\Catalog\Test\Fixture\CatalogProductSimple;
 use Magento\Reports\Test\Page\Adminhtml\ProductLowStock;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertLowStockProductInGrid
diff --git a/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertNewAccountsReportTotalResult.php b/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertNewAccountsReportTotalResult.php
index 8baf8d23c27650592d5d8cd98e7c7586b027a693..c3c051545097af9e227596356ad7745b17036e36 100644
--- a/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertNewAccountsReportTotalResult.php
+++ b/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertNewAccountsReportTotalResult.php
@@ -7,7 +7,7 @@
 namespace Magento\Reports\Test\Constraint;
 
 use Magento\Reports\Test\Page\Adminhtml\CustomerAccounts;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertNewAccountsReportTotalResult
diff --git a/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertOrderedProductResult.php b/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertOrderedProductResult.php
index 1cb398a2d6d599c32448a92aea5dc9d0a9a28214..dc72afc3bd70b224e9ade7160ea9d7531d58d851 100644
--- a/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertOrderedProductResult.php
+++ b/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertOrderedProductResult.php
@@ -9,7 +9,7 @@ namespace Magento\Reports\Test\Constraint;
 use Magento\Catalog\Test\Fixture\CatalogProductSimple;
 use Magento\Reports\Test\Page\Adminhtml\OrderedProductsReport;
 use Magento\Sales\Test\Fixture\OrderInjectable;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertOrderedProductResult
diff --git a/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertProductInCartResult.php b/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertProductInCartResult.php
index 37a3af3ddaf77f12849f63449420530351729714..5bf977eb479c2ccf44374ceac560182e68114b00 100644
--- a/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertProductInCartResult.php
+++ b/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertProductInCartResult.php
@@ -8,7 +8,7 @@ namespace Magento\Reports\Test\Constraint;
 
 use Magento\Catalog\Test\Fixture\CatalogProductSimple;
 use Magento\Reports\Test\Page\Adminhtml\ShopCartProductReport;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertProductInCartResult
diff --git a/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertProductReportByCustomerInGrid.php b/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertProductReportByCustomerInGrid.php
index a718820552199c15c2bf8aca667725c38498aa5e..d537838adef6cd7795bcea1da0a8f2ae387cea9e 100644
--- a/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertProductReportByCustomerInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertProductReportByCustomerInGrid.php
@@ -10,9 +10,9 @@ use Magento\Catalog\Test\Fixture\CatalogProductSimple;
 use Magento\Customer\Test\Fixture\CustomerInjectable;
 use Magento\Reports\Test\Page\Adminhtml\CustomerReportReview;
 use Magento\Review\Test\Constraint\AssertProductReviewInGrid;
-use Magento\Review\Test\Fixture\ReviewInjectable;
+use Magento\Review\Test\Fixture\Review;
 use Magento\Review\Test\Page\Adminhtml\ReviewIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertProductReportByCustomerInGrid
@@ -28,7 +28,7 @@ class AssertProductReportByCustomerInGrid extends AbstractConstraint
      * Assert that Customer review is displayed in grid
      *
      * @param ReviewIndex $reviewIndex
-     * @param ReviewInjectable $review
+     * @param Review $review
      * @param AssertProductReviewInGrid $assertProductReviewInGrid
      * @param CustomerReportReview $customerReportReview
      * @param CustomerInjectable $customer
@@ -38,7 +38,7 @@ class AssertProductReportByCustomerInGrid extends AbstractConstraint
      */
     public function processAssert(
         ReviewIndex $reviewIndex,
-        ReviewInjectable $review,
+        Review $review,
         AssertProductReviewInGrid $assertProductReviewInGrid,
         CustomerReportReview $customerReportReview,
         CustomerInjectable $customer,
diff --git a/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertProductReportByCustomerNotInGrid.php b/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertProductReportByCustomerNotInGrid.php
index caaa86f8a4e7c87c71794caea3bee3bfc1586fbd..76116fee9c8e8bbf2f8f2746e1f4a8c273f4090b 100644
--- a/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertProductReportByCustomerNotInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertProductReportByCustomerNotInGrid.php
@@ -10,9 +10,9 @@ use Magento\Catalog\Test\Fixture\CatalogProductSimple;
 use Magento\Customer\Test\Fixture\CustomerInjectable;
 use Magento\Reports\Test\Page\Adminhtml\CustomerReportReview;
 use Magento\Review\Test\Constraint\AssertProductReviewNotInGrid;
-use Magento\Review\Test\Fixture\ReviewInjectable;
+use Magento\Review\Test\Fixture\Review;
 use Magento\Review\Test\Page\Adminhtml\ReviewIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertProductReportByCustomerNotInGrid
@@ -28,7 +28,7 @@ class AssertProductReportByCustomerNotInGrid extends AbstractConstraint
      * Asserts Customer Product Review not available in grid
      *
      * @param ReviewIndex $reviewIndex
-     * @param ReviewInjectable $review
+     * @param Review $review
      * @param AssertProductReviewNotInGrid $assertProductReviewNotInGrid
      * @param CustomerReportReview $customerReportReview
      * @param CustomerInjectable $customer
@@ -38,7 +38,7 @@ class AssertProductReportByCustomerNotInGrid extends AbstractConstraint
      */
     public function processAssert(
         ReviewIndex $reviewIndex,
-        ReviewInjectable $review,
+        Review $review,
         AssertProductReviewNotInGrid $assertProductReviewNotInGrid,
         CustomerReportReview $customerReportReview,
         CustomerInjectable $customer,
diff --git a/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertProductReviewIsAvailableForProduct.php b/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertProductReviewIsAvailableForProduct.php
index 82e8ac64df9532cd4aef031184dae39008970188..f3ce68ad8d140681942da4c5ac6f5657bd4ba943 100644
--- a/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertProductReviewIsAvailableForProduct.php
+++ b/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertProductReviewIsAvailableForProduct.php
@@ -8,9 +8,9 @@ namespace Magento\Reports\Test\Constraint;
 
 use Magento\Reports\Test\Page\Adminhtml\ProductReportReview;
 use Magento\Review\Test\Constraint\AssertProductReviewInGrid;
-use Magento\Review\Test\Fixture\ReviewInjectable;
+use Magento\Review\Test\Fixture\Review;
 use Magento\Review\Test\Page\Adminhtml\ReviewIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertProductReviewIsVisibleInGrid
@@ -26,14 +26,14 @@ class AssertProductReviewIsAvailableForProduct extends AbstractConstraint
      * Assert that review is visible in review grid for select product
      *
      * @param ReviewIndex $reviewIndex
-     * @param ReviewInjectable $review
+     * @param Review $review
      * @param ProductReportReview $productReportReview
      * @param AssertProductReviewInGrid $assertProductReviewInGrid
      * @return void
      */
     public function processAssert(
         ReviewIndex $reviewIndex,
-        ReviewInjectable $review,
+        Review $review,
         ProductReportReview $productReportReview,
         AssertProductReviewInGrid $assertProductReviewInGrid
     ) {
diff --git a/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertProductReviewReportIsVisibleInGrid.php b/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertProductReviewReportIsVisibleInGrid.php
index c3cfd0b4fa758c3d336477553e475d9c07414d36..0d4604ec4400055dd45a4e3df8ce8c02a8c81b4a 100644
--- a/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertProductReviewReportIsVisibleInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertProductReviewReportIsVisibleInGrid.php
@@ -7,8 +7,8 @@
 namespace Magento\Reports\Test\Constraint;
 
 use Magento\Reports\Test\Page\Adminhtml\ProductReportReview;
-use Magento\Review\Test\Fixture\ReviewInjectable;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Review\Test\Fixture\Review;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertProductReviewReportIsVisibleInGrid
@@ -24,10 +24,10 @@ class AssertProductReviewReportIsVisibleInGrid extends AbstractConstraint
      * Assert that Product Review Report is visible in reports grid
      *
      * @param ProductReportReview $productReportReview
-     * @param ReviewInjectable $review
+     * @param Review $review
      * @return void
      */
-    public function processAssert(ProductReportReview $productReportReview, ReviewInjectable $review)
+    public function processAssert(ProductReportReview $productReportReview, Review $review)
     {
         $productReportReview->open();
         $name = $review->getDataFieldConfig('entity_id')['source']->getEntity()->getName();
diff --git a/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertProductReviewsQtyByCustomer.php b/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertProductReviewsQtyByCustomer.php
index d0d9400cf79c9243315dfc878f6fb53828315bd6..1ae6670b974ddd27fccefa888c02c28a51d054d5 100644
--- a/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertProductReviewsQtyByCustomer.php
+++ b/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertProductReviewsQtyByCustomer.php
@@ -8,7 +8,7 @@ namespace Magento\Reports\Test\Constraint;
 
 use Magento\Customer\Test\Fixture\CustomerInjectable;
 use Magento\Reports\Test\Page\Adminhtml\CustomerReportReview;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertProductReviewsQtyByCustomer
diff --git a/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertProductViewsReportTotalResult.php b/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertProductViewsReportTotalResult.php
index 0afd5c6c6009f2a8ec0b66bc1d7dd952af6d49ca..152cd5aa4ee62ca4ff91bc5df3fb6e4d32fc98fd 100644
--- a/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertProductViewsReportTotalResult.php
+++ b/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertProductViewsReportTotalResult.php
@@ -7,7 +7,7 @@
 namespace Magento\Reports\Test\Constraint;
 
 use Magento\Reports\Test\Page\Adminhtml\ProductReportView;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertProductViewsReportTotalResult
diff --git a/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertSearchTermReportForm.php b/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertSearchTermReportForm.php
index 004c3ad4f5811a7bc2013cefd6b4eb334c60a919..d1e75cff6ac8e97c330439ab6f7396ed12ac0585 100644
--- a/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertSearchTermReportForm.php
+++ b/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertSearchTermReportForm.php
@@ -8,7 +8,7 @@ namespace Magento\Reports\Test\Constraint;
 
 use Magento\CatalogSearch\Test\Page\Adminhtml\CatalogSearchEdit;
 use Magento\Reports\Test\Page\Adminhtml\SearchIndex;
-use Mtf\Constraint\AbstractAssertForm;
+use Magento\Mtf\Constraint\AbstractAssertForm;
 
 /**
  * Class AssertSearchTermReportForm
diff --git a/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertSearchTermsInGrid.php b/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertSearchTermsInGrid.php
index ac622368edafc0c89bbb66bd2eeab7f6a43cc128..cbb20b5cb97f315ba0f14c910981db9d8176ed89 100644
--- a/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertSearchTermsInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertSearchTermsInGrid.php
@@ -7,7 +7,7 @@
 namespace Magento\Reports\Test\Constraint;
 
 use Magento\Reports\Test\Page\Adminhtml\SearchIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertSearchTermsInGrid
diff --git a/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertTaxReportInGrid.php b/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertTaxReportInGrid.php
index 2443521f269ab786376f99c0c9160a8a3728a155..bf5d8478e6a7bddf3d7f9409e8ddbe0004da8ace 100644
--- a/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertTaxReportInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertTaxReportInGrid.php
@@ -9,7 +9,7 @@ namespace Magento\Reports\Test\Constraint;
 use Magento\Reports\Test\Page\Adminhtml\SalesTaxReport;
 use Magento\Sales\Test\Fixture\OrderInjectable;
 use Magento\Tax\Test\Fixture\TaxRule;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertTaxReportInGrid
diff --git a/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertTaxReportNotInGrid.php b/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertTaxReportNotInGrid.php
index 2e429dc13cdf2f32dff5f26f02c4ff36ce4da775..b7090947f14d8c7ca9a429cc74033b4ed382cc61 100644
--- a/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertTaxReportNotInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Reports/Test/Constraint/AssertTaxReportNotInGrid.php
@@ -9,7 +9,7 @@ namespace Magento\Reports\Test\Constraint;
 use Magento\Reports\Test\Page\Adminhtml\SalesTaxReport;
 use Magento\Sales\Test\Fixture\OrderInjectable;
 use Magento\Tax\Test\Fixture\TaxRule;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertTaxReportNotInGrid
diff --git a/dev/tests/functional/tests/app/Magento/Reports/Test/TestCase/AbandonedCartsReportEntityTest.php b/dev/tests/functional/tests/app/Magento/Reports/Test/TestCase/AbandonedCartsReportEntityTest.php
index 78c51e6f6b9902adfe7ba0d211910c2c3fe046c1..bc27cf23ec8c3843b1b61b502862fd87fc252b20 100644
--- a/dev/tests/functional/tests/app/Magento/Reports/Test/TestCase/AbandonedCartsReportEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Reports/Test/TestCase/AbandonedCartsReportEntityTest.php
@@ -6,11 +6,11 @@
 
 namespace Magento\Reports\Test\TestCase;
 
-use Magento\Catalog\Test\Page\Product\CatalogProductView;
+use Magento\Mtf\TestCase\Injectable;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Client\BrowserInterface;
 use Magento\Customer\Test\Fixture\CustomerInjectable;
-use Mtf\Client\Browser;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\TestCase\Injectable;
+use Magento\Catalog\Test\Page\Product\CatalogProductView;
 
 /**
  * Test Flow:
@@ -33,6 +33,11 @@ use Mtf\TestCase\Injectable;
  */
 class AbandonedCartsReportEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'no';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * Catalog Product View page.
      *
@@ -43,7 +48,7 @@ class AbandonedCartsReportEntityTest extends Injectable
     /**
      * Browser interface.
      *
-     * @var Browser
+     * @var BrowserInterface
      */
     protected $browser;
 
@@ -57,13 +62,13 @@ class AbandonedCartsReportEntityTest extends Injectable
     /**
      * Inject pages.
      *
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @param FixtureFactory $fixtureFactory
      * @param CatalogProductView $catalogProductView
      * @return void
      */
     public function __inject(
-        Browser $browser,
+        BrowserInterface $browser,
         FixtureFactory $fixtureFactory,
         CatalogProductView $catalogProductView
     ) {
diff --git a/dev/tests/functional/tests/app/Magento/Reports/Test/TestCase/CustomerReviewReportEntityTest.php b/dev/tests/functional/tests/app/Magento/Reports/Test/TestCase/CustomerReviewReportEntityTest.php
index ea8f364af6751749807e5cd851f9ff721a4a6b99..28a4f7204b41d4ba7f3548e634da23b7a61eb59e 100644
--- a/dev/tests/functional/tests/app/Magento/Reports/Test/TestCase/CustomerReviewReportEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Reports/Test/TestCase/CustomerReviewReportEntityTest.php
@@ -14,10 +14,10 @@ use Magento\Customer\Test\Fixture\CustomerInjectable;
 use Magento\Customer\Test\Page\CustomerAccountLogin;
 use Magento\Customer\Test\Page\CustomerAccountLogout;
 use Magento\Reports\Test\Page\Adminhtml\ProductReportReview;
-use Magento\Review\Test\Fixture\ReviewInjectable;
-use Mtf\Client\Browser;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\TestCase\Injectable;
+use Magento\Review\Test\Fixture\Review;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for CustomerReviewReportEntity
@@ -41,6 +41,11 @@ use Mtf\TestCase\Injectable;
  */
 class CustomerReviewReportEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'no';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * Customer frontend logout page
      *
@@ -127,20 +132,20 @@ class CustomerReviewReportEntityTest extends Injectable
     /**
      * Test Creation for CustomerReviewReportEntity
      *
-     * @param ReviewInjectable $review
+     * @param Review $review
      * @param CustomerInjectable $customer
      * @param $customerLogin
      * @param CatalogProductSimple $product
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @return array
      *
      * @SuppressWarnings(PHPMD.ConstructorWithNameAsEnclosingClass)
      */
     public function test(
-        ReviewInjectable $review,
+        Review $review,
         CustomerInjectable $customer,
         CatalogProductSimple $product,
-        Browser $browser,
+        BrowserInterface $browser,
         $customerLogin
     ) {
         // Preconditions
diff --git a/dev/tests/functional/tests/app/Magento/Reports/Test/TestCase/LowStockProductsReportEntityTest.php b/dev/tests/functional/tests/app/Magento/Reports/Test/TestCase/LowStockProductsReportEntityTest.php
index 72725e16f418ec2ddba2b21784d5532af58f8dc5..a81da13dd13add8b8e706c50379a0626e96e9183 100644
--- a/dev/tests/functional/tests/app/Magento/Reports/Test/TestCase/LowStockProductsReportEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Reports/Test/TestCase/LowStockProductsReportEntityTest.php
@@ -7,7 +7,7 @@
 namespace Magento\Reports\Test\TestCase;
 
 use Magento\Catalog\Test\Fixture\CatalogProductSimple;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for LowStockProductsReportEntityTest
@@ -26,6 +26,11 @@ use Mtf\TestCase\Injectable;
  */
 class LowStockProductsReportEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'no';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * Create product
      *
diff --git a/dev/tests/functional/tests/app/Magento/Reports/Test/TestCase/NewAccountsReportEntityTest.php b/dev/tests/functional/tests/app/Magento/Reports/Test/TestCase/NewAccountsReportEntityTest.php
index 968a31f235598425540160b7ded02302215c9b5e..62a4231bca01c1f55fbab71275e8578ddeea0425 100644
--- a/dev/tests/functional/tests/app/Magento/Reports/Test/TestCase/NewAccountsReportEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Reports/Test/TestCase/NewAccountsReportEntityTest.php
@@ -9,7 +9,7 @@ namespace Magento\Reports\Test\TestCase;
 use Magento\Customer\Test\Fixture\CustomerInjectable;
 use Magento\Customer\Test\Page\Adminhtml\CustomerIndex;
 use Magento\Reports\Test\Page\Adminhtml\CustomerAccounts;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Flow:
@@ -29,6 +29,11 @@ use Mtf\TestCase\Injectable;
  */
 class NewAccountsReportEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'no';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * Customer Accounts pages.
      *
diff --git a/dev/tests/functional/tests/app/Magento/Reports/Test/TestCase/ProductReviewReportEntityTest.php b/dev/tests/functional/tests/app/Magento/Reports/Test/TestCase/ProductReviewReportEntityTest.php
index 27f605065fdc515a38236c5f4d68989adf43ddec..92b8ee33316e41343bacb0287a85088b48312488 100644
--- a/dev/tests/functional/tests/app/Magento/Reports/Test/TestCase/ProductReviewReportEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Reports/Test/TestCase/ProductReviewReportEntityTest.php
@@ -6,8 +6,8 @@
 
 namespace Magento\Reports\Test\TestCase;
 
-use Magento\Review\Test\Fixture\ReviewInjectable;
-use Mtf\TestCase\Injectable;
+use Magento\Review\Test\Fixture\Review;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for ProductReviewReportEntity
@@ -26,13 +26,18 @@ use Mtf\TestCase\Injectable;
  */
 class ProductReviewReportEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'no';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * Creation product review report entity
      *
-     * @param ReviewInjectable $review
+     * @param Review $review
      * @return void
      */
-    public function test(ReviewInjectable $review)
+    public function test(Review $review)
     {
         // Preconditions
         $review->persist();
diff --git a/dev/tests/functional/tests/app/Magento/Reports/Test/TestCase/ProductsInCartReportEntity.php b/dev/tests/functional/tests/app/Magento/Reports/Test/TestCase/ProductsInCartReportEntity.php
index 0bde4d6c3dd2e600fa93f37087331464322fb9a7..59fcbb7b335fe2b3dbe3dbf1d2607d3111d6de1f 100644
--- a/dev/tests/functional/tests/app/Magento/Reports/Test/TestCase/ProductsInCartReportEntity.php
+++ b/dev/tests/functional/tests/app/Magento/Reports/Test/TestCase/ProductsInCartReportEntity.php
@@ -12,8 +12,8 @@ use Magento\Cms\Test\Page\CmsIndex;
 use Magento\Customer\Test\Fixture\CustomerInjectable;
 use Magento\Customer\Test\Page\CustomerAccountLogin;
 use Magento\Customer\Test\Page\CustomerAccountLogout;
-use Mtf\Client\Browser;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for ProductsInCartReportEntity
@@ -36,6 +36,11 @@ use Mtf\TestCase\Injectable;
  */
 class ProductsInCartReportEntity extends Injectable
 {
+    /* tags */
+    const MVP = 'no';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * Cms index page
      *
@@ -104,14 +109,14 @@ class ProductsInCartReportEntity extends Injectable
      * @param CustomerInjectable $customer
      * @param CatalogProductSimple $product
      * @param string $isGuest
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @return void
      */
     public function test(
         CustomerInjectable $customer,
         CatalogProductSimple $product,
         $isGuest,
-        Browser $browser
+        BrowserInterface $browser
     ) {
         // Preconditions
         $product->persist();
diff --git a/dev/tests/functional/tests/app/Magento/Reports/Test/TestCase/SearchTermsReportEntityTest.php b/dev/tests/functional/tests/app/Magento/Reports/Test/TestCase/SearchTermsReportEntityTest.php
index 2e5f9fe793d99a48f8f3beee8bb719a9bfd25006..eba901312b7964fc68c1520c885529aee0c6297b 100644
--- a/dev/tests/functional/tests/app/Magento/Reports/Test/TestCase/SearchTermsReportEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Reports/Test/TestCase/SearchTermsReportEntityTest.php
@@ -8,8 +8,8 @@ namespace Magento\Reports\Test\TestCase;
 
 use Magento\Cms\Test\Page\CmsIndex;
 use Magento\Reports\Test\Page\Adminhtml\SearchIndex;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Flow:
@@ -27,6 +27,11 @@ use Mtf\TestCase\Injectable;
  */
 class SearchTermsReportEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'no';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * Index page.
      *
diff --git a/dev/tests/functional/tests/app/Magento/Reports/Test/TestCase/ViewedProductsReportEntityTest.php b/dev/tests/functional/tests/app/Magento/Reports/Test/TestCase/ViewedProductsReportEntityTest.php
index 8ae71b67b69930ead6baeb0dc690237f98763905..7ed40fc54cd1642bef310b41bde40e3e23caa320 100644
--- a/dev/tests/functional/tests/app/Magento/Reports/Test/TestCase/ViewedProductsReportEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Reports/Test/TestCase/ViewedProductsReportEntityTest.php
@@ -6,9 +6,9 @@
 
 namespace Magento\Reports\Test\TestCase;
 
-use Mtf\Client\Browser;
-use Mtf\TestCase\Injectable;
-use Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\TestCase\Injectable;
+use Magento\Mtf\Fixture\FixtureFactory;
 use Magento\Reports\Test\Page\Adminhtml\ProductReportView;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductIndex;
 
@@ -33,6 +33,11 @@ use Magento\Catalog\Test\Page\Adminhtml\CatalogProductIndex;
  */
 class ViewedProductsReportEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'no';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * Product Report View page
      *
@@ -50,7 +55,7 @@ class ViewedProductsReportEntityTest extends Injectable
     /**
      * Browser interface
      *
-     * @var Browser
+     * @var BrowserInterface
      */
     protected $browser;
 
@@ -71,13 +76,13 @@ class ViewedProductsReportEntityTest extends Injectable
      *
      * @param ProductReportView $productReportView
      * @param FixtureFactory $fixtureFactory
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @return void
      */
     public function __inject(
         ProductReportView $productReportView,
         FixtureFactory $fixtureFactory,
-        Browser $browser
+        BrowserInterface $browser
     ) {
         $this->productReportView = $productReportView;
         $this->fixtureFactory = $fixtureFactory;
diff --git a/dev/tests/functional/tests/app/Magento/Review/Test/Block/Adminhtml/Edit/RatingElement.php b/dev/tests/functional/tests/app/Magento/Review/Test/Block/Adminhtml/Edit/RatingElement.php
index 49873ce0828ceae2cb426666dceed4285f57b310..4d51eea65d24a7fb218d73a3197683803e5fed53 100644
--- a/dev/tests/functional/tests/app/Magento/Review/Test/Block/Adminhtml/Edit/RatingElement.php
+++ b/dev/tests/functional/tests/app/Magento/Review/Test/Block/Adminhtml/Edit/RatingElement.php
@@ -6,14 +6,14 @@
 
 namespace Magento\Review\Test\Block\Adminhtml\Edit;
 
-use Mtf\Client\Driver\Selenium\Element;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Client\Element\SimpleElement;
 
 /**
  * Class RatingElement
  * Rating typified element
  */
-class RatingElement extends Element
+class RatingElement extends SimpleElement
 {
     /**
      * Rating selector
@@ -53,10 +53,10 @@ class RatingElement extends Element
     /**
      * Get rating vote
      *
-     * @param Element $rating
+     * @param SimpleElement $rating
      * @return int
      */
-    protected function getRatingVote(Element $rating)
+    protected function getRatingVote(SimpleElement $rating)
     {
         $ratingVote = 5;
         $ratingVoteElement = $rating->find(sprintf($this->checkedRating, $ratingVote));
diff --git a/dev/tests/functional/tests/app/Magento/Review/Test/Block/Adminhtml/ReviewForm.php b/dev/tests/functional/tests/app/Magento/Review/Test/Block/Adminhtml/ReviewForm.php
index 862a28a895e4854001f8b28955c524f53f6a02d2..76f821b010e92c37c3042141383c3fd895a3ed6d 100755
--- a/dev/tests/functional/tests/app/Magento/Review/Test/Block/Adminhtml/ReviewForm.php
+++ b/dev/tests/functional/tests/app/Magento/Review/Test/Block/Adminhtml/ReviewForm.php
@@ -7,7 +7,8 @@
 namespace Magento\Review\Test\Block\Adminhtml;
 
 use Magento\Backend\Test\Block\Widget\Form;
-use Mtf\Client\Element\Locator;
+use Magento\Review\Test\Fixture\ReviewInjectable;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class Edit
diff --git a/dev/tests/functional/tests/app/Magento/Review/Test/Block/Form.php b/dev/tests/functional/tests/app/Magento/Review/Test/Block/Form.php
index f7e1133f14b122a8dee47daf20a1f39abc327f16..449bc91419bbdd368b4451d28887e03ed3661e56 100755
--- a/dev/tests/functional/tests/app/Magento/Review/Test/Block/Form.php
+++ b/dev/tests/functional/tests/app/Magento/Review/Test/Block/Form.php
@@ -6,49 +6,48 @@
 
 namespace Magento\Review\Test\Block;
 
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Client\Element\SimpleElement;
 use Magento\Review\Test\Fixture\Rating;
-use Magento\Review\Test\Fixture\ReviewInjectable;
-use Mtf\Block\Form as AbstractForm;
-use Mtf\Client\Element;
-use Mtf\Client\Element\Locator;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Review\Test\Fixture\Review;
+use Magento\Mtf\Block\Form as AbstractForm;
 
 /**
- * Class Form
- * Review form on frontend
+ * Review form on frontend.
  */
 class Form extends AbstractForm
 {
     /**
-     * Legend selector
+     * Legend selector.
      *
      * @var string
      */
     protected $legendSelector = 'legend';
 
     /**
-     * 'Submit' review button selector
+     * 'Submit' review button selector.
      *
      * @var string
      */
     protected $submitButton = '.action.submit';
 
     /**
-     * Single product rating selector
+     * Single product rating selector.
      *
      * @var string
      */
     protected $rating = './/*[@id="%s_rating_label"]/..[contains(@class,"rating")]';
 
     /**
-     * Selector for label of rating vote
+     * Selector for label of rating vote.
      *
      * @var string
      */
     protected $ratingVoteLabel = './div[contains(@class,"vote")]/label[contains(@id,"_%d_label")]';
 
     /**
-     * Submit review form
+     * Submit review form.
      *
      * @return void
      */
@@ -58,9 +57,9 @@ class Form extends AbstractForm
     }
 
     /**
-     * Get legend
+     * Get legend.
      *
-     * @return Element
+     * @return SimpleElement
      */
     public function getLegend()
     {
@@ -68,7 +67,7 @@ class Form extends AbstractForm
     }
 
     /**
-     * Check rating element is visible
+     * Check rating element is visible.
      *
      * @param Rating $rating
      * @return bool
@@ -79,10 +78,10 @@ class Form extends AbstractForm
     }
 
     /**
-     * Get single product rating
+     * Get single product rating.
      *
      * @param Rating $rating
-     * @return Element
+     * @return SimpleElement
      */
     protected function getRating(Rating $rating)
     {
@@ -90,39 +89,35 @@ class Form extends AbstractForm
     }
 
     /**
-     * Fill the review form
+     * Fill the review form.
      *
      * @param FixtureInterface $review
-     * @param Element|null $element
+     * @param SimpleElement|null $element
      * @return $this
      */
-    public function fill(FixtureInterface $review, Element $element = null)
+    public function fill(FixtureInterface $review, SimpleElement $element = null)
     {
-        if ($review instanceof ReviewInjectable) {
-            $this->fillRatings($review);
+        if ($review->hasData('ratings')) {
+            $this->fillRatings($review->getRatings());
         }
         parent::fill($review, $element);
     }
 
     /**
-     * Fill ratings on the review form
+     * Fill ratings on the review form.
      *
-     * @param ReviewInjectable $review
+     * @param Rating[] $ratings
      * @return void
      */
-    protected function fillRatings(ReviewInjectable $review)
+    protected function fillRatings(array $ratings)
     {
-        if (!$review->hasData('ratings')) {
-            return;
-        }
-
-        foreach ($review->getRatings() as $rating) {
+        foreach ($ratings as $rating) {
             $this->setRating($rating['title'], $rating['rating']);
         }
     }
 
     /**
-     * Set rating vote by rating code
+     * Set rating vote by rating code.
      *
      * @param string $ratingCode
      * @param string $ratingVote
diff --git a/dev/tests/functional/tests/app/Magento/Review/Test/Block/Product/View.php b/dev/tests/functional/tests/app/Magento/Review/Test/Block/Product/View.php
index 802a9be45927811f05a51904c6ee7b05e27145f3..ca08c912deca7eed4d5b87b963a5410708bcabb8 100755
--- a/dev/tests/functional/tests/app/Magento/Review/Test/Block/Product/View.php
+++ b/dev/tests/functional/tests/app/Magento/Review/Test/Block/Product/View.php
@@ -7,7 +7,7 @@
 
 namespace Magento\Review\Test\Block\Product;
 
-use Mtf\Block\Block;
+use Magento\Mtf\Block\Block;
 
 /**
  * Class View
diff --git a/dev/tests/functional/tests/app/Magento/Review/Test/Block/Product/View/Summary.php b/dev/tests/functional/tests/app/Magento/Review/Test/Block/Product/View/Summary.php
index 0fd5065db146c22864f3765cd0569b5c3a3fb27d..c193a6af97ac82605499d556d50259df476922a4 100755
--- a/dev/tests/functional/tests/app/Magento/Review/Test/Block/Product/View/Summary.php
+++ b/dev/tests/functional/tests/app/Magento/Review/Test/Block/Product/View/Summary.php
@@ -7,42 +7,55 @@
 
 namespace Magento\Review\Test\Block\Product\View;
 
-use Mtf\Block\Block;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\ElementInterface;
 
 /**
- * Reviews frontend block
- *
+ * Reviews frontend block.
  */
 class Summary extends Block
 {
     /**
-     * Add review link selector
+     * Add review link selector.
      *
      * @var string
      */
     protected $addReviewLinkSelector = '.action.add';
 
     /**
-     * View review link selector
+     * View review link selector.
      *
      * @var string
      */
     protected $viewReviewLinkSelector = '.action.view';
 
     /**
-     * Get add review link
+     * Get add review link.
      *
-     * @return \Mtf\Client\Element
+     * @return ElementInterface
      */
     public function getAddReviewLink()
     {
         return $this->_rootElement->find($this->addReviewLinkSelector);
     }
 
+    /**
+     * Click on add review link.
+     *
+     * @return void
+     */
+    public function clickAddReviewLink()
+    {
+        $reviewLink = $this->getAddReviewLink();
+        if ($reviewLink->isVisible()) {
+            $reviewLink->click();
+        }
+    }
+
     /**
      * Get view review link
      *
-     * @return \Mtf\Client\Element
+     * @return ElementInterface
      */
     public function getViewReviewLink()
     {
diff --git a/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductRatingInGrid.php b/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductRatingInGrid.php
index 9f0d60cf1a08a5b965ebb817c168af0159c5e33d..ffc1ab0c766c5c49462ca21b7469a40938a939ef 100755
--- a/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductRatingInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductRatingInGrid.php
@@ -8,7 +8,7 @@ namespace Magento\Review\Test\Constraint;
 
 use Magento\Review\Test\Fixture\Rating;
 use Magento\Review\Test\Page\Adminhtml\RatingIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertProductRatingInGrid
diff --git a/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductRatingInProductPage.php b/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductRatingInProductPage.php
index 03f71ddbe0957f99a7aaa10536632574f920d764..2f1ab78b298c197e26f29afbb24304b10762cda6 100755
--- a/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductRatingInProductPage.php
+++ b/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductRatingInProductPage.php
@@ -9,9 +9,9 @@ namespace Magento\Review\Test\Constraint;
 use Magento\Catalog\Test\Fixture\CatalogProductSimple;
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
 use Magento\Review\Test\Fixture\Rating;
-use Magento\Review\Test\Fixture\ReviewInjectable;
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Review\Test\Fixture\Review;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertProductRatingInProductPage
@@ -27,17 +27,17 @@ class AssertProductRatingInProductPage extends AbstractConstraint
      * Assert that product rating is displayed on product review(frontend)
      *
      * @param CatalogProductView $catalogProductView
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @param CatalogProductSimple $product
-     * @param ReviewInjectable|null $review [optional]
+     * @param Review|null $review [optional]
      * @param Rating|null $productRating [optional]
      * @return void
      */
     public function processAssert(
         CatalogProductView $catalogProductView,
-        Browser $browser,
+        BrowserInterface $browser,
         CatalogProductSimple $product,
-        ReviewInjectable $review = null,
+        Review $review = null,
         Rating $productRating = null
     ) {
         $browser->open($_ENV['app_frontend_url'] . $product->getUrlKey() . '.html');
diff --git a/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductRatingNotInGrid.php b/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductRatingNotInGrid.php
index db3fdb0c528d1cbe21be04e38259a41304387606..9ec15f8d1444793edefca786175761f3ce7fd9ca 100755
--- a/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductRatingNotInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductRatingNotInGrid.php
@@ -8,7 +8,7 @@ namespace Magento\Review\Test\Constraint;
 
 use Magento\Review\Test\Fixture\Rating;
 use Magento\Review\Test\Page\Adminhtml\RatingIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertProductRatingNotInGrid
diff --git a/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductRatingNotInProductPage.php b/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductRatingNotInProductPage.php
index e5fefcc26717c3eeb37044d64995a2716c8145e3..11a01165df1c8ce649628bfa563ab458fc7f2aef 100755
--- a/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductRatingNotInProductPage.php
+++ b/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductRatingNotInProductPage.php
@@ -9,8 +9,8 @@ namespace Magento\Review\Test\Constraint;
 use Magento\Catalog\Test\Fixture\CatalogProductSimple;
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
 use Magento\Review\Test\Fixture\Rating;
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertProductRatingNotInProductPage
@@ -27,14 +27,14 @@ class AssertProductRatingNotInProductPage extends AbstractConstraint
      * @param CatalogProductView $catalogProductView
      * @param CatalogProductSimple $product
      * @param Rating $productRating
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @return void
      */
     public function processAssert(
         CatalogProductView $catalogProductView,
         CatalogProductSimple $product,
         Rating $productRating,
-        Browser $browser
+        BrowserInterface $browser
     ) {
         $browser->open($_ENV['app_frontend_url'] . $product->getUrlKey() . '.html');
         $catalogProductView->getReviewSummary()->getAddReviewLink()->click();
diff --git a/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductRatingOnReviewPage.php b/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductRatingOnReviewPage.php
index ad0dacac17ba16b54c134a523c655c1ec3ecca48..a5db756a503b4a8f78db89d98279589109e94498 100755
--- a/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductRatingOnReviewPage.php
+++ b/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductRatingOnReviewPage.php
@@ -6,10 +6,10 @@
 
 namespace Magento\Review\Test\Constraint;
 
-use Magento\Review\Test\Fixture\ReviewInjectable;
+use Magento\Review\Test\Fixture\Review;
 use Magento\Review\Test\Page\Adminhtml\ReviewEdit;
 use Magento\Review\Test\Page\Adminhtml\ReviewIndex;
-use Mtf\Constraint\AbstractAssertForm;
+use Magento\Mtf\Constraint\AbstractAssertForm;
 
 /**
  * Class AssertProductRatingOnReviewPage
@@ -25,15 +25,15 @@ class AssertProductRatingOnReviewPage extends AbstractAssertForm
      *
      * @param ReviewIndex $reviewIndex
      * @param ReviewEdit $reviewEdit
-     * @param ReviewInjectable $review
-     * @param ReviewInjectable|null $reviewInitial [optional]
+     * @param Review $review
+     * @param Review|null $reviewInitial [optional]
      * @return void
      */
     public function processAssert(
         ReviewIndex $reviewIndex,
         ReviewEdit $reviewEdit,
-        ReviewInjectable $review,
-        ReviewInjectable $reviewInitial = null
+        Review $review,
+        Review $reviewInitial = null
     ) {
         $filter = ['title' => $review->getTitle()];
 
diff --git a/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductRatingSuccessDeleteMessage.php b/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductRatingSuccessDeleteMessage.php
index 95da16862d974f9a6d02608ca7e5d83512204611..4c9e6e5aab25303e4fe466719352e59cf84ef6b1 100755
--- a/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductRatingSuccessDeleteMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductRatingSuccessDeleteMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Review\Test\Constraint;
 
 use Magento\Review\Test\Page\Adminhtml\RatingIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertProductRatingSuccessDeleteMessage
diff --git a/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductRatingSuccessSaveMessage.php b/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductRatingSuccessSaveMessage.php
index 6168f31cbe824dba783ea61a49289aceb8374f04..36987feabff02e999f437cb00e526e21e364e3db 100755
--- a/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductRatingSuccessSaveMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductRatingSuccessSaveMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Review\Test\Constraint;
 
 use Magento\Review\Test\Page\Adminhtml\RatingIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertProductRatingSuccessSaveMessage
diff --git a/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductReviewBackendSuccessSaveMessage.php b/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductReviewBackendSuccessSaveMessage.php
index 8d1752909c02a740c09e009f125863106bcbe3bb..a7f527e20dd6bbf9b740e4505291af84ff1520d9 100644
--- a/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductReviewBackendSuccessSaveMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductReviewBackendSuccessSaveMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Review\Test\Constraint;
 
 use Magento\Review\Test\Page\Adminhtml\ReviewIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertProductReviewBackendSuccessSaveMessage
diff --git a/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductReviewForm.php b/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductReviewForm.php
new file mode 100644
index 0000000000000000000000000000000000000000..eb6cb92c40c0f270b3fab671135d6f00bcc364a2
--- /dev/null
+++ b/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductReviewForm.php
@@ -0,0 +1,69 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+
+namespace Magento\Review\Test\Constraint;
+
+use Magento\Mtf\Constraint\AbstractAssertForm;
+use Magento\Review\Test\Fixture\Review;
+use Magento\Review\Test\Page\Adminhtml\ReviewIndex;
+use Magento\Review\Test\Page\Adminhtml\ReviewEdit;
+
+/**
+ * Assert that review data on edit page equals passed from fixture.
+ */
+class AssertProductReviewForm extends AbstractAssertForm
+{
+    /**
+     * Constraint severeness.
+     *
+     * @var string
+     */
+    protected $severeness = 'middle';
+
+    /**
+     * Skipped fields for verify data.
+     *
+     * @var array
+     */
+    protected $skippedFields = [
+        'entity_id'
+    ];
+
+    /**
+     * Assert that review data on edit page equals passed from fixture.
+     *
+     * @param ReviewIndex $reviewIndex
+     * @param Review $review
+     * @param ReviewEdit $reviewEdit
+     * @return void
+     */
+    public function processAssert(ReviewIndex $reviewIndex, Review $review, ReviewEdit $reviewEdit)
+    {
+        $reviewIndex->open();
+        $reviewGrid = $reviewIndex->getReviewGrid();
+        $reviewGrid->searchAndOpen(['title' => $review->getTitle()]);
+
+        $fixtureData = $review->getData();
+        $formData = $reviewEdit->getReviewForm()->getData();
+        if (isset($fixtureData['customer'])) {
+            $formData['customer'] = $reviewEdit->getReviewForm()->getPostedBy();
+        }
+
+        $error = $this->verifyData($fixtureData, $formData);
+
+        \PHPUnit_Framework_Assert::assertEmpty($error, $error);
+    }
+
+    /**
+     * Returns a string representation of the object.
+     *
+     * @return string
+     */
+    public function toString()
+    {
+        return 'Review data on edit page equals passed from fixture.';
+    }
+}
diff --git a/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductReviewInGrid.php b/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductReviewInGrid.php
index 839e0be995fdedce6c155cf490b14d5ee763ffd6..355bcd41faeb5ea088dac007164272f63e5d4ada 100755
--- a/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductReviewInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductReviewInGrid.php
@@ -6,10 +6,10 @@
 
 namespace Magento\Review\Test\Constraint;
 
-use Magento\Review\Test\Fixture\ReviewInjectable;
+use Magento\Review\Test\Fixture\Review;
 use Magento\Review\Test\Page\Adminhtml\ReviewIndex;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class AssertProductReviewInGrid
@@ -42,14 +42,14 @@ class AssertProductReviewInGrid extends AbstractConstraint
      * Assert that review is displayed in grid
      *
      * @param ReviewIndex $reviewIndex
-     * @param ReviewInjectable $review ,
+     * @param Review $review ,
      * @param FixtureInterface $product
      * @param string $gridStatus
      * @return void
      */
     public function processAssert(
         ReviewIndex $reviewIndex,
-        ReviewInjectable $review,
+        Review $review,
         FixtureInterface $product,
         $gridStatus = ''
     ) {
diff --git a/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductReviewInGridOnCustomerPage.php b/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductReviewInGridOnCustomerPage.php
index b5357604a9145cad74b5d889c828c8526cc97fc9..1208bd72e4d808a975e6f4af00777ca168e33af8 100644
--- a/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductReviewInGridOnCustomerPage.php
+++ b/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductReviewInGridOnCustomerPage.php
@@ -10,8 +10,8 @@ use Magento\Customer\Test\Fixture\CustomerInjectable;
 use Magento\Customer\Test\Page\Adminhtml\CustomerIndex;
 use Magento\Customer\Test\Page\Adminhtml\CustomerIndexEdit;
 use Magento\Review\Test\Block\Adminhtml\Product\Grid as ReviewsGrid;
-use Magento\Review\Test\Fixture\ReviewInjectable;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Review\Test\Fixture\Review;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertProductReviewInGridOnCustomerPage
@@ -27,8 +27,8 @@ class AssertProductReviewInGridOnCustomerPage extends AbstractConstraint
      * Asserts all Product Review variables in the reviews grid on customer page
      *
      * @param CustomerInjectable $customer
-     * @param ReviewInjectable $reviewInitial
-     * @param ReviewInjectable $review
+     * @param Review $reviewInitial
+     * @param Review $review
      * @param CustomerIndexEdit $customerIndexEdit
      * @param CustomerIndex $customerIndex
      * @param AssertProductReviewInGrid $assertProductReviewInGrid
@@ -36,8 +36,8 @@ class AssertProductReviewInGridOnCustomerPage extends AbstractConstraint
      */
     public function processAssert(
         CustomerInjectable $customer,
-        ReviewInjectable $reviewInitial,
-        ReviewInjectable $review,
+        Review $reviewInitial,
+        Review $review,
         CustomerIndexEdit $customerIndexEdit,
         CustomerIndex $customerIndex,
         AssertProductReviewInGrid $assertProductReviewInGrid
@@ -61,11 +61,11 @@ class AssertProductReviewInGridOnCustomerPage extends AbstractConstraint
     /**
      * Prepare Review data
      *
-     * @param ReviewInjectable $review
-     * @param ReviewInjectable $reviewInitial
+     * @param Review $review
+     * @param Review $reviewInitial
      * @return array
      */
-    protected function prepareData(ReviewInjectable $review, ReviewInjectable $reviewInitial)
+    protected function prepareData(Review $review, Review $reviewInitial)
     {
         $dataReviewInitial = $reviewInitial->getData();
         $data = $review->getData();
diff --git a/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductReviewIsAbsentOnProductPage.php b/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductReviewIsAbsentOnProductPage.php
new file mode 100644
index 0000000000000000000000000000000000000000..b4852e19d6ee4d207bae45089a41041f25dc492f
--- /dev/null
+++ b/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductReviewIsAbsentOnProductPage.php
@@ -0,0 +1,60 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+
+namespace Magento\Review\Test\Constraint;
+
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Catalog\Test\Page\Product\CatalogProductView;
+
+/**
+ * Assert that product don't have a review on product page.
+ */
+class AssertProductReviewIsAbsentOnProductPage extends AbstractConstraint
+{
+    /**
+     * Constraint severeness.
+     *
+     * @var string
+     */
+    protected $severeness = 'middle';
+
+    /**
+     * Verify message for assert.
+     */
+    const NO_REVIEW_LINK_TEXT = 'Be the first to review this product';
+
+    /**
+     * Assert that product doesn't have a review on product page.
+     *
+     * @param CatalogProductView $catalogProductView
+     * @return void
+     */
+    public function processAssert(CatalogProductView $catalogProductView)
+    {
+        $catalogProductView->getViewBlock()->selectTab('Reviews');
+
+        \PHPUnit_Framework_Assert::assertFalse(
+            $catalogProductView->getCustomerReviewBlock()->isVisibleReviewItem(),
+            'No reviews below the form required.'
+        );
+
+        \PHPUnit_Framework_Assert::assertEquals(
+            self::NO_REVIEW_LINK_TEXT,
+            trim($catalogProductView->getReviewSummary()->getAddReviewLink()->getText()),
+            sprintf('"%s" link is not available', self::NO_REVIEW_LINK_TEXT)
+        );
+    }
+
+    /**
+     * Returns a string representation of the object.
+     *
+     * @return string
+     */
+    public function toString()
+    {
+        return 'Product do not have a review on product page.';
+    }
+}
diff --git a/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductReviewMassActionSuccessDeleteMessage.php b/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductReviewMassActionSuccessDeleteMessage.php
index cdfe1a698a7b142bf4ec7be2895eb271bdf2a61a..cf57f87ba429c9e5774e75163ce75c5403ab5da9 100644
--- a/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductReviewMassActionSuccessDeleteMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductReviewMassActionSuccessDeleteMessage.php
@@ -6,9 +6,9 @@
 
 namespace Magento\Review\Test\Constraint;
 
-use Magento\Review\Test\Fixture\ReviewInjectable;
+use Magento\Review\Test\Fixture\Review;
 use Magento\Review\Test\Page\Adminhtml\ReviewIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertProductReviewMassActionSuccessDeleteMessage
@@ -28,11 +28,11 @@ class AssertProductReviewMassActionSuccessDeleteMessage extends AbstractConstrai
     /**
      * Assert that success message is displayed after deletion via mass actions
      *
-     * @param ReviewInjectable|ReviewInjectable[] $review
+     * @param Review|Review[] $review
      * @param ReviewIndex $reviewIndex
      * @return void
      */
-    public function processAssert(ReviewInjectable $review, ReviewIndex $reviewIndex)
+    public function processAssert(Review $review, ReviewIndex $reviewIndex)
     {
         $reviews = is_array($review) ? $review : [$review];
         $deleteMessage = sprintf(self::SUCCESS_DELETE_MESSAGE, count($reviews));
diff --git a/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductReviewMassActionSuccessMessage.php b/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductReviewMassActionSuccessMessage.php
index a415f073aba5b31edf808f1afbcce869f9069d48..3f8d9c4c43c8e245c9cd8a6d6fe605c0bb636e54 100644
--- a/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductReviewMassActionSuccessMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductReviewMassActionSuccessMessage.php
@@ -6,9 +6,9 @@
 
 namespace Magento\Review\Test\Constraint;
 
-use Magento\Review\Test\Fixture\ReviewInjectable;
+use Magento\Review\Test\Fixture\Review;
 use Magento\Review\Test\Page\Adminhtml\ReviewIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertProductReviewMassActionSuccessMessage
@@ -28,11 +28,11 @@ class AssertProductReviewMassActionSuccessMessage extends AbstractConstraint
     /**
      * Assert that success message is displayed after updated via mass actions
      *
-     * @param ReviewInjectable|ReviewInjectable[] $review
+     * @param Review|Review[] $review
      * @param ReviewIndex $reviewIndex
      * @return void
      */
-    public function processAssert(ReviewInjectable $review, ReviewIndex $reviewIndex)
+    public function processAssert(Review $review, ReviewIndex $reviewIndex)
     {
         $reviews = is_array($review) ? $review : [$review];
         $successMessage = sprintf(self::SUCCESS_MESSAGE, count($reviews));
diff --git a/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductReviewNotInGrid.php b/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductReviewNotInGrid.php
index 718a2b7d639f7e9b1f634f40bd6cc82e9ad08507..6776c3a651dc5533b9836052e1d084c61fff2c07 100644
--- a/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductReviewNotInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductReviewNotInGrid.php
@@ -6,10 +6,10 @@
 
 namespace Magento\Review\Test\Constraint;
 
-use Magento\Review\Test\Fixture\ReviewInjectable;
+use Magento\Review\Test\Fixture\Review;
 use Magento\Review\Test\Page\Adminhtml\ReviewIndex;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class AssertProductReviewNotInGrid
@@ -42,16 +42,16 @@ class AssertProductReviewNotInGrid extends AbstractConstraint
      * Asserts Product Review not available in grid
      *
      * @param ReviewIndex $reviewIndex
-     * @param ReviewInjectable $review
+     * @param Review $review
      * @param string $gridStatus
-     * @param ReviewInjectable $reviewInitial
+     * @param Review $reviewInitial
      * @return void
      */
     public function processAssert(
         ReviewIndex $reviewIndex,
-        ReviewInjectable $review,
+        Review $review,
         $gridStatus = '',
-        ReviewInjectable $reviewInitial = null
+        Review $reviewInitial = null
     ) {
         $product = $reviewInitial === null
             ? $review->getDataFieldConfig('entity_id')['source']->getEntity()
@@ -70,11 +70,11 @@ class AssertProductReviewNotInGrid extends AbstractConstraint
      * Prepare filter for assert
      *
      * @param FixtureInterface $product
-     * @param ReviewInjectable $review
+     * @param Review $review
      * @param string $gridStatus
      * @return array
      */
-    public function prepareFilter(FixtureInterface $product, ReviewInjectable $review, $gridStatus)
+    public function prepareFilter(FixtureInterface $product, Review $review, $gridStatus)
     {
         $filter = [];
         foreach ($this->filter as $key => $item) {
diff --git a/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductReviewNotOnProductPage.php b/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductReviewNotOnProductPage.php
index 1d92b2bd21c11731bcd6adabf3dd2a3e64ff2d2b..4146c9519cc3110c23351d8614f48969c267f72d 100644
--- a/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductReviewNotOnProductPage.php
+++ b/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductReviewNotOnProductPage.php
@@ -8,9 +8,9 @@ namespace Magento\Review\Test\Constraint;
 
 use Magento\Catalog\Test\Fixture\CatalogProductSimple;
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
-use Magento\Review\Test\Fixture\ReviewInjectable;
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Review\Test\Fixture\Review;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertProductReviewNotOnProductPage
@@ -26,14 +26,14 @@ class AssertProductReviewNotOnProductPage extends AbstractConstraint
      * Assert that product review Not available on product page
      *
      * @param CatalogProductView $catalogProductView
-     * @param ReviewInjectable $reviewInitial
-     * @param Browser $browser
+     * @param Review $reviewInitial
+     * @param BrowserInterface $browser
      * @return void
      */
     public function processAssert(
         CatalogProductView $catalogProductView,
-        ReviewInjectable $reviewInitial,
-        Browser $browser
+        Review $reviewInitial,
+        BrowserInterface $browser
     ) {
         /** @var CatalogProductSimple $product */
         $product = $reviewInitial->getDataFieldConfig('entity_id')['source']->getEntity();
diff --git a/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductReviewOnProductPage.php b/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductReviewOnProductPage.php
index a46a0f58947032f93ca1d95dd5dbfa6fe620bdaf..2e15e5145665945743a65965cc6ab1604c2e1366 100644
--- a/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductReviewOnProductPage.php
+++ b/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertProductReviewOnProductPage.php
@@ -8,14 +8,13 @@ namespace Magento\Review\Test\Constraint;
 
 use Magento\Backend\Test\Page\Adminhtml\AdminCache;
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
-use Magento\Review\Test\Fixture\ReviewInjectable;
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Review\Test\Fixture\Review;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
- * Class AssertProductReviewOnProductPage
- * Assert that product review available on product page
+ * Assert that product review available on product page.
  */
 class AssertProductReviewOnProductPage extends AbstractConstraint
 {
@@ -24,20 +23,20 @@ class AssertProductReviewOnProductPage extends AbstractConstraint
     /* end tags */
 
     /**
-     * Assert that product review available on product page
+     * Assert that product review available on product page.
      *
      * @param CatalogProductView $catalogProductView
-     * @param ReviewInjectable $review
+     * @param Review $review
      * @param FixtureInterface $product
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @param AdminCache $cachePage
      * @return void
      */
     public function processAssert(
         CatalogProductView $catalogProductView,
-        ReviewInjectable $review,
+        Review $review,
         FixtureInterface $product,
-        Browser $browser,
+        BrowserInterface $browser,
         AdminCache $cachePage
     ) {
         $errors = [];
@@ -46,6 +45,12 @@ class AssertProductReviewOnProductPage extends AbstractConstraint
 
         $reviewBlock = $catalogProductView->getCustomerReviewBlock();
         $catalogProductView->getViewBlock()->selectTab('Reviews');
+
+        \PHPUnit_Framework_Assert::assertContains(
+            sprintf("You're reviewing:\n%s", $product->getName()),
+            $catalogProductView->getReviewFormBlock()->getLegend()->getText()
+        );
+
         foreach ($review->getData() as $name => $value) {
             $reviewValue = $reviewBlock->getFieldValue($name);
             if (($reviewValue !== null) && (0 !== strcasecmp($value, trim($reviewValue)))) {
@@ -60,7 +65,7 @@ class AssertProductReviewOnProductPage extends AbstractConstraint
     }
 
     /**
-     * Returns a string representation of the object
+     * Returns a string representation of the object.
      *
      * @return string
      */
diff --git a/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertReviewCreationSuccessMessage.php b/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertReviewCreationSuccessMessage.php
index d421c2af7afc4ccc21c77ba645c27fa7a316f0f6..7ecf84f3dc1db0c990afa117ba4322e2d89bfcdc 100755
--- a/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertReviewCreationSuccessMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertReviewCreationSuccessMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Review\Test\Constraint;
 
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertReviewCreationSuccessMessage
diff --git a/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertReviewLinksIsPresentOnProductPage.php b/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertReviewLinksIsPresentOnProductPage.php
new file mode 100644
index 0000000000000000000000000000000000000000..e2aa568ff99d1d2a5ecaabc7e64a90b63f3aaf6c
--- /dev/null
+++ b/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertReviewLinksIsPresentOnProductPage.php
@@ -0,0 +1,66 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+
+namespace Magento\Review\Test\Constraint;
+
+use Magento\Mtf\Client\Browser;
+use Magento\Mtf\Fixture\InjectableFixture;
+use Magento\Catalog\Test\Page\Product\CatalogProductView;
+use Magento\Mtf\Constraint\AbstractConstraint;
+
+/**
+ * Assert that add and view review links are present on product page.
+ */
+class AssertReviewLinksIsPresentOnProductPage extends AbstractConstraint
+{
+    /**
+     * Constraint severeness.
+     *
+     * @var string
+     */
+    protected $severeness = 'middle';
+
+    /**
+     * Assert that add view review links are present on product page.
+     *
+     * @param Browser $browser
+     * @param CatalogProductView $catalogProductView
+     * @param InjectableFixture $product
+     * @return void
+     */
+    public function processAssert(Browser $browser, CatalogProductView $catalogProductView, InjectableFixture $product)
+    {
+        $browser->open($_ENV['app_frontend_url'] . $product->getUrlKey() . '.html');
+
+        // Verify add review link
+        \PHPUnit_Framework_Assert::assertTrue(
+            $catalogProductView->getReviewSummary()->getAddReviewLink()->isVisible(),
+            'Add review link is not visible on product page.'
+        );
+
+        // Verify view review link
+        $viewReviewLink = $catalogProductView->getReviewSummary()->getViewReviewLink();
+        \PHPUnit_Framework_Assert::assertTrue(
+            $viewReviewLink->isVisible(),
+            'View review link is not visible on product page.'
+        );
+        \PHPUnit_Framework_Assert::assertContains(
+            '1',
+            $viewReviewLink->getText(),
+            'There is more than 1 approved review.'
+        );
+    }
+
+    /**
+     * Returns a string representation of the object.
+     *
+     * @return string
+     */
+    public function toString()
+    {
+        return 'Add and view review links are present on product page.';
+    }
+}
diff --git a/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertReviewSuccessSaveMessage.php b/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertReviewSuccessSaveMessage.php
index 947790e85ec4acf49dabc057de92ed6e96c2abfb..3c41e413e459332718a0263ab731cba35fee74c9 100755
--- a/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertReviewSuccessSaveMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertReviewSuccessSaveMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Review\Test\Constraint;
 
 use Magento\Review\Test\Page\Adminhtml\ReviewIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertReviewSuccessSaveMessage
diff --git a/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertSetApprovedProductReview.php b/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertSetApprovedProductReview.php
new file mode 100644
index 0000000000000000000000000000000000000000..1e627941bd767bda72fe440332592e03926229a6
--- /dev/null
+++ b/dev/tests/functional/tests/app/Magento/Review/Test/Constraint/AssertSetApprovedProductReview.php
@@ -0,0 +1,87 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+
+namespace Magento\Review\Test\Constraint;
+
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Review\Test\Fixture\Review;
+use Magento\Review\Test\Page\Adminhtml\ReviewIndex;
+use Magento\Backend\Test\Page\Adminhtml\AdminCache;
+use Magento\Review\Test\Page\Adminhtml\ReviewEdit;
+
+/**
+ * Assert that product review can do approved.
+ */
+class AssertSetApprovedProductReview extends AbstractConstraint
+{
+    /**
+     * Constraint severeness.
+     *
+     * @var string
+     */
+    protected $severeness = 'middle';
+
+    /**
+     * Admin cache page.
+     *
+     * @var AdminCache
+     */
+    protected $cachePage;
+
+    /**
+     * Assert that product review can do approved.
+     *
+     * @param ReviewIndex $reviewIndex
+     * @param Review $review
+     * @param ReviewEdit $reviewEdit
+     * @param AssertReviewSuccessSaveMessage $assertReviewSuccessSaveMessage
+     * @param AdminCache $cachePage
+     * @return void
+     */
+    public function processAssert(
+        ReviewIndex $reviewIndex,
+        Review $review,
+        ReviewEdit $reviewEdit,
+        AssertReviewSuccessSaveMessage $assertReviewSuccessSaveMessage,
+        AdminCache $cachePage
+    ) {
+        $this->cachePage = $cachePage;
+        $reviewIndex->open();
+        $reviewGrid = $reviewIndex->getReviewGrid();
+        $reviewGrid->searchAndOpen(['title' => $review->getTitle()]);
+
+        $reviewEdit->getReviewForm()->setApproveReview();
+        $reviewEdit->getPageActions()->save();
+
+        $assertReviewSuccessSaveMessage->processAssert($reviewIndex);
+        $this->flushCacheStorageWithAssert();
+    }
+
+    /**
+     * Flush cache storage and assert success message.
+     *
+     * @return void
+     */
+    protected function flushCacheStorageWithAssert()
+    {
+        $this->cachePage->open();
+        $this->cachePage->getActionsBlock()->flushCacheStorage();
+        \PHPUnit_Framework_Assert::assertTrue(
+            $this->cachePage->getActionsBlock()->isStorageCacheFlushed(),
+            'Cache is not flushed.'
+        );
+    }
+
+    /**
+     * Returns a string representation of the object.
+     *
+     * @return string
+     */
+    public function toString()
+    {
+        return 'Review status is change to approve.';
+    }
+}
diff --git a/dev/tests/functional/tests/app/Magento/Review/Test/Fixture/Rating.php b/dev/tests/functional/tests/app/Magento/Review/Test/Fixture/Rating.php
index efa7bb2458aa9381ba4162857670df280ef3d51c..6991179a3702efb7601b585d50fd6d1f37cf3cb4 100755
--- a/dev/tests/functional/tests/app/Magento/Review/Test/Fixture/Rating.php
+++ b/dev/tests/functional/tests/app/Magento/Review/Test/Fixture/Rating.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Review\Test\Fixture;
 
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Class Rating
diff --git a/dev/tests/functional/tests/app/Magento/Review/Test/Fixture/Review.php b/dev/tests/functional/tests/app/Magento/Review/Test/Fixture/Review.php
index afb6b82d8a23749ec07fe2c33dab9f21aecd2892..9c7c3175936d78b38d85b8edd6c865b793ede566 100755
--- a/dev/tests/functional/tests/app/Magento/Review/Test/Fixture/Review.php
+++ b/dev/tests/functional/tests/app/Magento/Review/Test/Fixture/Review.php
@@ -6,30 +6,230 @@
 
 namespace Magento\Review\Test\Fixture;
 
-use Mtf\Factory\Factory;
-use Mtf\Fixture\DataFixture;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
- * Review fixture
+ * Product review fixture.
  *
+ * @SuppressWarnings(PHPMD.TooManyFields)
  */
-class Review extends DataFixture
+class Review extends InjectableFixture
 {
     /**
-     * Get review title
+     * @var string
+     */
+    protected $repositoryClass = 'Magento\Review\Test\Repository\Review';
+
+    /**
+     * @var string
+     */
+    protected $handlerInterface = 'Magento\Review\Test\Handler\Review\ReviewInterface';
+
+    /**
+     * Default data
      *
-     * @return string
+     * @var array
      */
+    protected $defaultDataSet = [
+        'status_id' => 'Approved',
+        'select_stores' => ['Main Website/Main Website Store/Default Store View'],
+        'nickname' => 'Guest customer %isolation%',
+        'title' => 'Summary review %isolation%',
+        'detail' => 'Text review %isolation%',
+        'ratings' => [
+            [
+                'dataSet' => 'visibleOnDefaultWebsite',
+                'rating' => 4
+            ]
+        ],
+        'entity_id' => ['dataSet' => 'catalogProductSimple::default'],
+        'type' => 'Administrator'
+    ];
+
+    protected $review_id = [
+        'attribute_code' => 'review_id',
+        'backend_type' => 'bigint',
+        'is_required' => '',
+        'default_value' => '0',
+        'input' => '',
+    ];
+
+    protected $created_at = [
+        'attribute_code' => 'created_at',
+        'backend_type' => 'timestamp',
+        'is_required' => '',
+        'default_value' => 'CURRENT_TIMESTAMP',
+        'input' => '',
+    ];
+
+    protected $entity_id = [
+        'attribute_code' => 'entity_id',
+        'backend_type' => 'smallint',
+        'is_required' => '',
+        'default_value' => '0',
+        'input' => '',
+        'source' => 'Magento\Review\Test\Fixture\Review\EntityId'
+    ];
+
+    protected $entity_pk_value = [
+        'attribute_code' => 'entity_pk_value',
+        'backend_type' => 'int',
+        'is_required' => '',
+        'default_value' => '0',
+        'input' => '',
+    ];
+
+    protected $status_id = [
+        'attribute_code' => 'status_id',
+        'backend_type' => 'smallint',
+        'is_required' => '',
+        'default_value' => '0',
+        'input' => '',
+    ];
+
+    protected $detail_id = [
+        'attribute_code' => 'detail_id',
+        'backend_type' => 'bigint',
+        'is_required' => '1',
+        'default_value' => '',
+        'input' => '',
+    ];
+
+    protected $store_id = [
+        'attribute_code' => 'store_id',
+        'backend_type' => 'smallint',
+        'is_required' => '',
+        'default_value' => '0',
+        'input' => '',
+    ];
+
+    protected $title = [
+        'attribute_code' => 'title',
+        'backend_type' => 'varchar',
+        'is_required' => '',
+        'default_value' => '',
+        'input' => '',
+    ];
+
+    protected $detail = [
+        'attribute_code' => 'detail',
+        'backend_type' => 'text',
+        'is_required' => '',
+        'default_value' => '',
+        'input' => '',
+    ];
+
+    protected $nickname = [
+        'attribute_code' => 'nickname',
+        'backend_type' => 'varchar',
+        'is_required' => '',
+        'default_value' => '',
+        'input' => '',
+    ];
+
+    protected $customer_id = [
+        'attribute_code' => 'customer_id',
+        'backend_type' => 'int',
+        'is_required' => '',
+        'default_value' => '',
+        'input' => '',
+    ];
+
+    protected $select_stores = [
+        'attribute_code' => 'select_stores',
+        'backend_type' => 'virtual',
+        'is_required' => '1',
+        'default_value' => '0',
+        'input' => 'multiselectgrouplist',
+    ];
+
+    protected $ratings = [
+        'attribute_code' => 'ratings',
+        'backend_type' => 'virtual',
+        'source' => 'Magento\Review\Test\Fixture\Review\Ratings',
+    ];
+
+    protected $type = [
+        'attribute_code' => 'type',
+        'backend_type' => 'string',
+        'is_required' => '',
+        'default_value' => '',
+        'input' => '',
+    ];
+
+    protected $customer = [
+        'attribute_code' => 'customer',
+        'backend_type' => 'virtual',
+    ];
+
+    public function getType()
+    {
+        return $this->getData('type');
+    }
+
+    public function getSelectStores()
+    {
+        return $this->getData('select_stores');
+    }
+
+    public function getReviewId()
+    {
+        return $this->getData('review_id');
+    }
+
+    public function getCreatedAt()
+    {
+        return $this->getData('created_at');
+    }
+
+    public function getEntityId()
+    {
+        return $this->getData('entity_id');
+    }
+
+    public function getEntityPkValue()
+    {
+        return $this->getData('entity_pk_value');
+    }
+
+    public function getStatusId()
+    {
+        return $this->getData('status_id');
+    }
+
+    public function getDetailId()
+    {
+        return $this->getData('detail_id');
+    }
+
+    public function getStoreId()
+    {
+        return $this->getData('store_id');
+    }
+
     public function getTitle()
     {
-        return $this->getData('fields/title/value');
+        return $this->getData('title');
     }
 
-    /**
-     * {inheritdoc}
-     */
-    protected function _initData()
+    public function getDetail()
+    {
+        return $this->getData('detail');
+    }
+
+    public function getNickname()
+    {
+        return $this->getData('nickname');
+    }
+
+    public function getCustomerId()
+    {
+        return $this->getData('customer_id');
+    }
+
+    public function getRatings()
     {
+        return $this->getData('ratings');
         $this->_data = [
             'fields' => [
                 'nickname' => [
diff --git a/dev/tests/functional/tests/app/Magento/Review/Test/Fixture/ReviewInjectable.xml b/dev/tests/functional/tests/app/Magento/Review/Test/Fixture/Review.xml
old mode 100755
new mode 100644
similarity index 88%
rename from dev/tests/functional/tests/app/Magento/Review/Test/Fixture/ReviewInjectable.xml
rename to dev/tests/functional/tests/app/Magento/Review/Test/Fixture/Review.xml
index 5e610aaba38fa104e56774650bc51ab4f1c9c98f..2973cc8e5a7f84c7ecc5cc3a90cf3411ce7f915a
--- a/dev/tests/functional/tests/app/Magento/Review/Test/Fixture/ReviewInjectable.xml
+++ b/dev/tests/functional/tests/app/Magento/Review/Test/Fixture/Review.xml
@@ -5,7 +5,7 @@
  * See COPYING.txt for license details.
  */
 -->
-<fixture class="Magento\Review\Test\Fixture\ReviewInjectable">
+<fixture class="Magento\Review\Test\Fixture\Review">
     <module>Magento_Review</module>
     <type>composite</type>
     <entities>
@@ -34,7 +34,7 @@
             <is_required></is_required>
             <default_value>0</default_value>
             <input></input>
-            <source>Magento\Review\Test\Fixture\ReviewInjectable\EntityId</source>
+            <source>Magento\Review\Test\Fixture\Review\EntityId</source>
         </entity_id>
         <entity_pk_value>
             <attribute_code>entity_pk_value</attribute_code>
@@ -109,9 +109,13 @@
         <ratings>
             <attribute_code>ratings</attribute_code>
             <backend_type>virtual</backend_type>
-            <source>Magento\Review\Test\Fixture\ReviewInjectable\Ratings</source>
+            <source>Magento\Review\Test\Fixture\Review\Ratings</source>
         </ratings>
+        <customer>
+            <attribute_code>customer</attribute_code>
+            <backend_type>virtual</backend_type>
+        </customer>
     </fields>
-    <repository_class>Magento\Review\Test\Repository\ReviewInjectable</repository_class>
-    <handler_interface>Magento\Review\Test\Handler\ReviewInjectable\ReviewInjectableInterface</handler_interface>
+    <repository_class>Magento\Review\Test\Repository\Review</repository_class>
+    <handler_interface>Magento\Review\Test\Handler\Review\ReviewInterface</handler_interface>
 </fixture>
diff --git a/dev/tests/functional/tests/app/Magento/Review/Test/Fixture/ReviewInjectable/EntityId.php b/dev/tests/functional/tests/app/Magento/Review/Test/Fixture/Review/EntityId.php
old mode 100755
new mode 100644
similarity index 91%
rename from dev/tests/functional/tests/app/Magento/Review/Test/Fixture/ReviewInjectable/EntityId.php
rename to dev/tests/functional/tests/app/Magento/Review/Test/Fixture/Review/EntityId.php
index f38359a7d2faf40ecb272a1e0b0fce6d8116535b..6dd94f98ea9058931abac6c1bf9168e3219a5dfb
--- a/dev/tests/functional/tests/app/Magento/Review/Test/Fixture/ReviewInjectable/EntityId.php
+++ b/dev/tests/functional/tests/app/Magento/Review/Test/Fixture/Review/EntityId.php
@@ -4,11 +4,11 @@
  * See COPYING.txt for license details.
  */
 
-namespace Magento\Review\Test\Fixture\ReviewInjectable;
+namespace Magento\Review\Test\Fixture\Review;
 
-use Mtf\Fixture\FixtureFactory;
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Class EntityId
diff --git a/dev/tests/functional/tests/app/Magento/Review/Test/Fixture/ReviewInjectable/Ratings.php b/dev/tests/functional/tests/app/Magento/Review/Test/Fixture/Review/Ratings.php
old mode 100755
new mode 100644
similarity index 92%
rename from dev/tests/functional/tests/app/Magento/Review/Test/Fixture/ReviewInjectable/Ratings.php
rename to dev/tests/functional/tests/app/Magento/Review/Test/Fixture/Review/Ratings.php
index 34b813b9754628a2fc915ff6eb921806fc5619f3..c19487164c89538afe84d304cf024eada95ae6f4
--- a/dev/tests/functional/tests/app/Magento/Review/Test/Fixture/ReviewInjectable/Ratings.php
+++ b/dev/tests/functional/tests/app/Magento/Review/Test/Fixture/Review/Ratings.php
@@ -4,11 +4,11 @@
  * See COPYING.txt for license details.
  */
 
-namespace Magento\Review\Test\Fixture\ReviewInjectable;
+namespace Magento\Review\Test\Fixture\Review;
 
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Fixture\FixtureInterface;
 use Magento\Review\Test\Fixture\Rating;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\Fixture\FixtureInterface;
 
 /**
  * Class Ratings
@@ -63,7 +63,7 @@ class Ratings implements FixtureInterface
                 $this->ratings[] = $fixtureRating;
                 $this->data[] = [
                     'title' => $fixtureRating->getRatingCode(),
-                    'rating' => $rating['rating'],
+                    'rating' => $rating['rating']
                 ];
             }
         }
diff --git a/dev/tests/functional/tests/app/Magento/Review/Test/Fixture/ReviewInjectable.php b/dev/tests/functional/tests/app/Magento/Review/Test/Fixture/ReviewInjectable.php
deleted file mode 100755
index 683b7acaef4d081352a1bdf07d412a8d191a8e11..0000000000000000000000000000000000000000
--- a/dev/tests/functional/tests/app/Magento/Review/Test/Fixture/ReviewInjectable.php
+++ /dev/null
@@ -1,230 +0,0 @@
-<?php
-/**
- * Copyright © 2015 Magento. All rights reserved.
- * See COPYING.txt for license details.
- */
-
-namespace Magento\Review\Test\Fixture;
-
-use Mtf\Fixture\InjectableFixture;
-
-/**
- * Class ReviewInjectable
- * Product review fixture
- *
- * @SuppressWarnings(PHPMD.TooManyFields)
- */
-class ReviewInjectable extends InjectableFixture
-{
-    /**
-     * @var string
-     */
-    protected $repositoryClass = 'Magento\Review\Test\Repository\ReviewInjectable';
-
-    /**
-     * @var string
-     */
-    protected $handlerInterface = 'Magento\Review\Test\Handler\ReviewInjectable\ReviewInjectableInterface';
-
-    /**
-     * Default data
-     *
-     * @var array
-     */
-    protected $defaultDataSet = [
-        'status_id' => 'Approved',
-        'select_stores' => ['Main Website/Main Website Store/Default Store View'],
-        'nickname' => 'Guest customer %isolation%',
-        'title' => 'Summary review %isolation%',
-        'detail' => 'Text review %isolation%',
-        'ratings' => [
-            [
-                'dataSet' => 'visibleOnDefaultWebsite',
-                'rating' => 4,
-            ],
-        ],
-        'entity_id' => ['dataSet' => 'catalogProductSimple::default'],
-        'type' => 'Administrator',
-    ];
-
-    protected $review_id = [
-        'attribute_code' => 'review_id',
-        'backend_type' => 'bigint',
-        'is_required' => '',
-        'default_value' => '0',
-        'input' => '',
-    ];
-
-    protected $created_at = [
-        'attribute_code' => 'created_at',
-        'backend_type' => 'timestamp',
-        'is_required' => '',
-        'default_value' => 'CURRENT_TIMESTAMP',
-        'input' => '',
-    ];
-
-    protected $entity_id = [
-        'attribute_code' => 'entity_id',
-        'backend_type' => 'smallint',
-        'is_required' => '',
-        'default_value' => '0',
-        'input' => '',
-        'source' => 'Magento\Review\Test\Fixture\ReviewInjectable\EntityId',
-    ];
-
-    protected $entity_pk_value = [
-        'attribute_code' => 'entity_pk_value',
-        'backend_type' => 'int',
-        'is_required' => '',
-        'default_value' => '0',
-        'input' => '',
-    ];
-
-    protected $status_id = [
-        'attribute_code' => 'status_id',
-        'backend_type' => 'smallint',
-        'is_required' => '',
-        'default_value' => '0',
-        'input' => '',
-    ];
-
-    protected $detail_id = [
-        'attribute_code' => 'detail_id',
-        'backend_type' => 'bigint',
-        'is_required' => '1',
-        'default_value' => '',
-        'input' => '',
-    ];
-
-    protected $store_id = [
-        'attribute_code' => 'store_id',
-        'backend_type' => 'smallint',
-        'is_required' => '',
-        'default_value' => '0',
-        'input' => '',
-    ];
-
-    protected $title = [
-        'attribute_code' => 'title',
-        'backend_type' => 'varchar',
-        'is_required' => '',
-        'default_value' => '',
-        'input' => '',
-    ];
-
-    protected $detail = [
-        'attribute_code' => 'detail',
-        'backend_type' => 'text',
-        'is_required' => '',
-        'default_value' => '',
-        'input' => '',
-    ];
-
-    protected $nickname = [
-        'attribute_code' => 'nickname',
-        'backend_type' => 'varchar',
-        'is_required' => '',
-        'default_value' => '',
-        'input' => '',
-    ];
-
-    protected $customer_id = [
-        'attribute_code' => 'customer_id',
-        'backend_type' => 'int',
-        'is_required' => '',
-        'default_value' => '',
-        'input' => '',
-    ];
-
-    protected $select_stores = [
-        'attribute_code' => 'select_stores',
-        'backend_type' => 'virtual',
-        'is_required' => '1',
-        'default_value' => '0',
-        'input' => 'multiselectgrouplist',
-    ];
-
-    protected $ratings = [
-        'attribute_code' => 'ratings',
-        'backend_type' => 'virtual',
-        'source' => 'Magento\Review\Test\Fixture\ReviewInjectable\Ratings',
-    ];
-
-    protected $type = [
-        'attribute_code' => 'type',
-        'backend_type' => 'string',
-        'is_required' => '',
-        'default_value' => '',
-        'input' => '',
-    ];
-
-    public function getType()
-    {
-        return $this->getData('type');
-    }
-
-    public function getSelectStores()
-    {
-        return $this->getData('select_stores');
-    }
-
-    public function getReviewId()
-    {
-        return $this->getData('review_id');
-    }
-
-    public function getCreatedAt()
-    {
-        return $this->getData('created_at');
-    }
-
-    public function getEntityId()
-    {
-        return $this->getData('entity_id');
-    }
-
-    public function getEntityPkValue()
-    {
-        return $this->getData('entity_pk_value');
-    }
-
-    public function getStatusId()
-    {
-        return $this->getData('status_id');
-    }
-
-    public function getDetailId()
-    {
-        return $this->getData('detail_id');
-    }
-
-    public function getStoreId()
-    {
-        return $this->getData('store_id');
-    }
-
-    public function getTitle()
-    {
-        return $this->getData('title');
-    }
-
-    public function getDetail()
-    {
-        return $this->getData('detail');
-    }
-
-    public function getNickname()
-    {
-        return $this->getData('nickname');
-    }
-
-    public function getCustomerId()
-    {
-        return $this->getData('customer_id');
-    }
-
-    public function getRatings()
-    {
-        return $this->getData('ratings');
-    }
-}
diff --git a/dev/tests/functional/tests/app/Magento/Review/Test/Handler/Rating/Curl.php b/dev/tests/functional/tests/app/Magento/Review/Test/Handler/Rating/Curl.php
index d5f15eee9ff2e54ad431f3cb0073f05533d99e3c..8d81761803ba374e0a12c526ee75df22c7610792 100755
--- a/dev/tests/functional/tests/app/Magento/Review/Test/Handler/Rating/Curl.php
+++ b/dev/tests/functional/tests/app/Magento/Review/Test/Handler/Rating/Curl.php
@@ -7,12 +7,12 @@
 namespace Magento\Review\Test\Handler\Rating;
 
 use Magento\Backend\Test\Handler\Extractor;
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Handler\Curl as AbstractCurl;
-use Mtf\System\Config;
-use Mtf\Util\Protocol\CurlInterface;
-use Mtf\Util\Protocol\CurlTransport;
-use Mtf\Util\Protocol\CurlTransport\BackendDecorator;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Handler\Curl as AbstractCurl;
+use Magento\Mtf\System\Config;
+use Magento\Mtf\Util\Protocol\CurlInterface;
+use Magento\Mtf\Util\Protocol\CurlTransport;
+use Magento\Mtf\Util\Protocol\CurlTransport\BackendDecorator;
 
 /**
  * Class Curl
diff --git a/dev/tests/functional/tests/app/Magento/Review/Test/Handler/Rating/RatingInterface.php b/dev/tests/functional/tests/app/Magento/Review/Test/Handler/Rating/RatingInterface.php
index 68b0397aaebfe7f280b244d9403b2ba297ffbb75..b39248c7a5c4a9968bc9bbb05143a140cd475427 100755
--- a/dev/tests/functional/tests/app/Magento/Review/Test/Handler/Rating/RatingInterface.php
+++ b/dev/tests/functional/tests/app/Magento/Review/Test/Handler/Rating/RatingInterface.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Review\Test\Handler\Rating;
 
-use Mtf\Handler\HandlerInterface;
+use Magento\Mtf\Handler\HandlerInterface;
 
 /**
  * Interface RatingInterface
diff --git a/dev/tests/functional/tests/app/Magento/Review/Test/Handler/ReviewInjectable/Curl.php b/dev/tests/functional/tests/app/Magento/Review/Test/Handler/Review/Curl.php
old mode 100755
new mode 100644
similarity index 87%
rename from dev/tests/functional/tests/app/Magento/Review/Test/Handler/ReviewInjectable/Curl.php
rename to dev/tests/functional/tests/app/Magento/Review/Test/Handler/Review/Curl.php
index fe3d307f73e72eb283bb9c844e77c327ba86172e..c99cac15199ddd5da9a745797ff37e8fb7f6d7fa
--- a/dev/tests/functional/tests/app/Magento/Review/Test/Handler/ReviewInjectable/Curl.php
+++ b/dev/tests/functional/tests/app/Magento/Review/Test/Handler/Review/Curl.php
@@ -4,23 +4,23 @@
  * See COPYING.txt for license details.
  */
 
-namespace Magento\Review\Test\Handler\ReviewInjectable;
+namespace Magento\Review\Test\Handler\Review;
 
-use Magento\Backend\Test\Handler\Extractor;
+use Magento\Mtf\System\Config;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Util\Protocol\CurlInterface;
+use Magento\Mtf\Util\Protocol\CurlTransport;
 use Magento\Review\Test\Fixture\Rating;
-use Magento\Review\Test\Fixture\ReviewInjectable;
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Handler\Curl as AbstractCurl;
-use Mtf\System\Config;
-use Mtf\Util\Protocol\CurlInterface;
-use Mtf\Util\Protocol\CurlTransport;
-use Mtf\Util\Protocol\CurlTransport\BackendDecorator;
+use Magento\Backend\Test\Handler\Extractor;
+use Magento\Review\Test\Fixture\Review;
+use Magento\Mtf\Util\Protocol\CurlTransport\BackendDecorator;
+use Magento\Mtf\Handler\Curl as AbstractCurl;
 
 /**
  * Class Curl
  * Curl handler for creating product Review through backend.
  */
-class Curl extends AbstractCurl implements ReviewInjectableInterface
+class Curl extends AbstractCurl implements ReviewInterface
 {
     /**
      * Mapping values for data.
@@ -31,11 +31,11 @@ class Curl extends AbstractCurl implements ReviewInjectableInterface
         'status_id' => [
             'Approved' => 1,
             'Pending' => 2,
-            'Not Approved' => 3,
+            'Not Approved' => 3
         ],
         'select_stores' => [
-            'Main Website/Main Website Store/Default Store View' => 1,
-        ],
+            'Main Website/Main Website Store/Default Store View' => 1
+        ]
     ];
 
     /**
@@ -47,7 +47,7 @@ class Curl extends AbstractCurl implements ReviewInjectableInterface
      */
     public function persist(FixtureInterface $review = null)
     {
-        /** @var ReviewInjectable $review */
+        /** @var Review $review */
         $url = $_ENV['app_backend_url'] . 'review/product/post/';
         $curl = new BackendDecorator(new CurlTransport(), new Config());
         $data = $this->replaceMappingData($this->getPreparedData($review));
diff --git a/dev/tests/functional/tests/app/Magento/Review/Test/Handler/Review/ReviewInterface.php b/dev/tests/functional/tests/app/Magento/Review/Test/Handler/Review/ReviewInterface.php
new file mode 100644
index 0000000000000000000000000000000000000000..e8fadacfe34392e0e24589ae4646c4430819e010
--- /dev/null
+++ b/dev/tests/functional/tests/app/Magento/Review/Test/Handler/Review/ReviewInterface.php
@@ -0,0 +1,17 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+
+namespace Magento\Review\Test\Handler\Review;
+
+use Magento\Mtf\Handler\HandlerInterface;
+
+/**
+ * Interface ReviewInterface
+ */
+interface ReviewInterface extends HandlerInterface
+{
+    //
+}
diff --git a/dev/tests/functional/tests/app/Magento/Review/Test/Handler/ReviewInjectable/ReviewInjectableInterface.php b/dev/tests/functional/tests/app/Magento/Review/Test/Handler/ReviewInjectable/ReviewInjectableInterface.php
deleted file mode 100755
index c1e19087dfb5c1df742449a53289f450ead0b830..0000000000000000000000000000000000000000
--- a/dev/tests/functional/tests/app/Magento/Review/Test/Handler/ReviewInjectable/ReviewInjectableInterface.php
+++ /dev/null
@@ -1,17 +0,0 @@
-<?php
-/**
- * Copyright © 2015 Magento. All rights reserved.
- * See COPYING.txt for license details.
- */
-
-namespace Magento\Review\Test\Handler\ReviewInjectable;
-
-use Mtf\Handler\HandlerInterface;
-
-/**
- * Interface ReviewInjectableInterface
- */
-interface ReviewInjectableInterface extends HandlerInterface
-{
-    //
-}
diff --git a/dev/tests/functional/tests/app/Magento/Review/Test/Repository/Rating.php b/dev/tests/functional/tests/app/Magento/Review/Test/Repository/Rating.php
index e3422aa73d4c528741e01e8604a46f7063dd0d9b..218bf96d0fb5a3f1fa28eba3096ab89fa9115600 100755
--- a/dev/tests/functional/tests/app/Magento/Review/Test/Repository/Rating.php
+++ b/dev/tests/functional/tests/app/Magento/Review/Test/Repository/Rating.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Review\Test\Repository;
 
-use Mtf\Repository\AbstractRepository;
+use Magento\Mtf\Repository\AbstractRepository;
 
 /**
  * Class Rating
diff --git a/dev/tests/functional/tests/app/Magento/Review/Test/Repository/Review.php b/dev/tests/functional/tests/app/Magento/Review/Test/Repository/Review.php
index d0dd87ffe0e0f278648ba45f3cdf84113618290f..537245718b6494350a66442f09d19dd2fa8e8d61 100755
--- a/dev/tests/functional/tests/app/Magento/Review/Test/Repository/Review.php
+++ b/dev/tests/functional/tests/app/Magento/Review/Test/Repository/Review.php
@@ -6,21 +6,46 @@
 
 namespace Magento\Review\Test\Repository;
 
-use Mtf\Repository\AbstractRepository;
+use Magento\Mtf\Repository\AbstractRepository;
 
 /**
- * Review Repository
+ * Class Review
+ * Data for creation product Review
  */
 class Review extends AbstractRepository
 {
     /**
-     * {inheritdoc}
+     * Constructor
+     *
+     * @param array $defaultConfig
+     * @param array $defaultData
+     *
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function __construct(array $defaultConfig = [], array $defaultData = [])
     {
-        $this->_data['default'] = [
-            'config' => $defaultConfig,
-            'data' => $defaultData,
+        $this->_data['review_for_simple_product_with_rating'] = [
+            'status_id' => 'Approved',
+            'select_stores' => ['Main Website/Main Website Store/Default Store View'],
+            'nickname' => 'nickname_%isolation%',
+            'title' => 'title_%isolation%',
+            'detail' => 'review_detail_%isolation%',
+            'ratings' => [
+                [
+                    'dataSet' => 'visibleOnDefaultWebsite',
+                    'rating' => mt_rand(1, 5)
+                ]
+            ],
+            'entity_id' => ['dataSet' => 'catalogProductSimple::default']
+        ];
+
+        $this->_data['frontend_review'] = [
+            'status_id' => 'Pending',
+            'select_stores' => ['Main Website/Main Website Store/Default Store View'],
+            'nickname' => 'nickname_%isolation%',
+            'title' => 'title_%isolation%',
+            'detail' => 'review_detail_%isolation%',
+            'entity_id' => ['dataSet' => 'catalogProductSimple::default']
         ];
     }
 }
diff --git a/dev/tests/functional/tests/app/Magento/Review/Test/Repository/ReviewInjectable.php b/dev/tests/functional/tests/app/Magento/Review/Test/Repository/ReviewInjectable.php
deleted file mode 100755
index 68b46fc3adcd1732279356a2080b5b54ef020701..0000000000000000000000000000000000000000
--- a/dev/tests/functional/tests/app/Magento/Review/Test/Repository/ReviewInjectable.php
+++ /dev/null
@@ -1,51 +0,0 @@
-<?php
-/**
- * Copyright © 2015 Magento. All rights reserved.
- * See COPYING.txt for license details.
- */
-
-namespace Magento\Review\Test\Repository;
-
-use Mtf\Repository\AbstractRepository;
-
-/**
- * Class ReviewInjectable
- * Data for creation product Review
- */
-class ReviewInjectable extends AbstractRepository
-{
-    /**
-     * Constructor
-     *
-     * @param array $defaultConfig
-     * @param array $defaultData
-     *
-     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
-     */
-    public function __construct(array $defaultConfig = [], array $defaultData = [])
-    {
-        $this->_data['review_for_simple_product_with_rating'] = [
-            'status_id' => 'Approved',
-            'select_stores' => ['Main Website/Main Website Store/Default Store View'],
-            'nickname' => 'nickname_%isolation%',
-            'title' => 'title_%isolation%',
-            'detail' => 'review_detail_%isolation%',
-            'ratings' => [
-                [
-                    'dataSet' => 'visibleOnDefaultWebsite',
-                    'rating' => mt_rand(1, 5),
-                ],
-            ],
-            'entity_id' => ['dataSet' => 'catalogProductSimple::default'],
-        ];
-
-        $this->_data['frontend_review'] = [
-            'status_id' => 'Pending',
-            'select_stores' => ['Main Website/Main Website Store/Default Store View'],
-            'nickname' => 'nickname_%isolation%',
-            'title' => 'title_%isolation%',
-            'detail' => 'review_detail_%isolation%',
-            'entity_id' => ['dataSet' => 'catalogProductSimple::default'],
-        ];
-    }
-}
diff --git a/dev/tests/functional/tests/app/Magento/Review/Test/TestCase/CreateProductRatingEntityTest.php b/dev/tests/functional/tests/app/Magento/Review/Test/TestCase/CreateProductRatingEntityTest.php
index 13d78dc5ff05fbada8538ba37777033a7c24a5b8..aff4c995ddb807f1fa395feb7ad0feea5c6ffe59 100755
--- a/dev/tests/functional/tests/app/Magento/Review/Test/TestCase/CreateProductRatingEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Review/Test/TestCase/CreateProductRatingEntityTest.php
@@ -10,8 +10,8 @@ use Magento\Review\Test\Fixture\Rating;
 use Magento\Review\Test\Page\Adminhtml\RatingEdit;
 use Magento\Review\Test\Page\Adminhtml\RatingIndex;
 use Magento\Review\Test\Page\Adminhtml\RatingNew;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for Create Backend Product Rating
@@ -34,6 +34,11 @@ use Mtf\TestCase\Injectable;
  */
 class CreateProductRatingEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'no';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * @var Rating
      */
diff --git a/dev/tests/functional/tests/app/Magento/Review/Test/TestCase/CreateProductReviewBackendEntityTest.php b/dev/tests/functional/tests/app/Magento/Review/Test/TestCase/CreateProductReviewBackendEntityTest.php
index e76e9d602e7371fa3b7069cdc991cf93ab214d06..d2042d8a8370e0c044c87d0a688e3e16e8a70ef2 100644
--- a/dev/tests/functional/tests/app/Magento/Review/Test/TestCase/CreateProductReviewBackendEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Review/Test/TestCase/CreateProductReviewBackendEntityTest.php
@@ -7,12 +7,12 @@
 namespace Magento\Review\Test\TestCase;
 
 use Magento\Review\Test\Fixture\Rating;
-use Magento\Review\Test\Fixture\ReviewInjectable;
+use Magento\Review\Test\Fixture\Review;
 use Magento\Review\Test\Page\Adminhtml\RatingEdit;
 use Magento\Review\Test\Page\Adminhtml\RatingIndex;
 use Magento\Review\Test\Page\Adminhtml\ReviewEdit;
 use Magento\Review\Test\Page\Adminhtml\ReviewIndex;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for Create ProductReviewEntity Backend
@@ -35,6 +35,11 @@ use Mtf\TestCase\Injectable;
  */
 class CreateProductReviewBackendEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'no';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * ReviewIndex page
      *
@@ -71,7 +76,7 @@ class CreateProductReviewBackendEntityTest extends Injectable
     /**
      * Review fixture
      *
-     * @var ReviewInjectable
+     * @var Review
      */
     protected $review;
 
@@ -99,10 +104,10 @@ class CreateProductReviewBackendEntityTest extends Injectable
     /**
      * Run Create Product Review Entity Backend Test
      *
-     * @param ReviewInjectable $review
+     * @param Review $review
      * @return array
      */
-    public function test(ReviewInjectable $review)
+    public function test(Review $review)
     {
         // Precondition:
         $product = $review->getDataFieldConfig('entity_id')['source']->getEntity();
@@ -127,7 +132,7 @@ class CreateProductReviewBackendEntityTest extends Injectable
     public function tearDown()
     {
         $this->ratingIndex->open();
-        if ($this->review instanceof ReviewInjectable) {
+        if ($this->review instanceof Review) {
             foreach ($this->review->getRatings() as $rating) {
                 $this->ratingIndex->getRatingGrid()->searchAndOpen(['rating_code' => $rating['title']]);
                 $this->ratingEdit->getPageActions()->delete();
diff --git a/dev/tests/functional/tests/app/Magento/Review/Test/TestCase/CreateProductReviewFrontendEntityTest.php b/dev/tests/functional/tests/app/Magento/Review/Test/TestCase/CreateProductReviewFrontendEntityTest.php
index cf345fb4f7df2d5d4994b5089990c7e7832781e5..4345551308dc988c5c2e5258fd701978707ec504 100644
--- a/dev/tests/functional/tests/app/Magento/Review/Test/TestCase/CreateProductReviewFrontendEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Review/Test/TestCase/CreateProductReviewFrontendEntityTest.php
@@ -7,64 +7,69 @@
 namespace Magento\Review\Test\TestCase;
 
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
-use Magento\Review\Test\Fixture\ReviewInjectable;
+use Magento\Review\Test\Constraint\AssertProductReviewIsAbsentOnProductPage;
+use Magento\Review\Test\Fixture\Review;
 use Magento\Review\Test\Page\Adminhtml\RatingEdit;
 use Magento\Review\Test\Page\Adminhtml\RatingIndex;
-use Mtf\Client\Browser;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
- * Test Creation for Create Frontend Product Review
- *
  * Test Flow:
  *
  * Preconditions:
- * 1. Create simple product
- * 2. Create custom rating type
+ * 1. Create simple product.
+ * 2. Create custom rating type.
  *
  * Steps:
- * 1. Open frontend
- * 2. Go to product page
- * 3. Click "Be the first to review this product"
- * 4. Fill data according to dataset
- * 5. click "Submit review"
- * 6. Perform all assertions
+ * 1. Open frontend.
+ * 2. Go to product page.
+ * 3. Click "Be the first to review this product".
+ * 4. Fill data according to dataSet.
+ * 5. click "Submit review".
+ * 6. Perform all assertions.
  *
  * @group Reviews_and_Ratings_(MX)
  * @ZephyrId MAGETWO-25519
  */
 class CreateProductReviewFrontendEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'no';
+    const DOMAIN = 'MX';
+    const TEST_TYPE = 'acceptance_test';
+    /* end tags */
+
     /**
-     * Frontend product view page
+     * Frontend product view page.
      *
      * @var CatalogProductView
      */
     protected $catalogProductView;
 
     /**
-     * Backend rating grid page
+     * Backend rating grid page.
      *
      * @var RatingIndex
      */
     protected $ratingIndex;
 
     /**
-     * Backend rating edit page
+     * Backend rating edit page.
      *
      * @var RatingEdit
      */
     protected $ratingEdit;
 
     /**
-     * Fixture review
+     * Fixture review.
      *
-     * @var ReviewInjectable
+     * @var Review
      */
     protected $review;
 
     /**
-     * Injection data
+     * Injection data.
      *
      * @param CatalogProductView $catalogProductView
      * @param RatingIndex $ratingIndex
@@ -82,24 +87,26 @@ class CreateProductReviewFrontendEntityTest extends Injectable
     }
 
     /**
-     * Run create frontend product rating test
+     * Run create frontend product rating test.
      *
-     * @param ReviewInjectable $review
-     * @param Browser $browser
+     * @param Review $review
+     * @param BrowserInterface $browser
+     * @param AssertProductReviewIsAbsentOnProductPage $assertProductReviewIsAbsentOnProductPage
      * @return array
      */
-    public function test(ReviewInjectable $review, Browser $browser)
-    {
+    public function test(
+        Review $review,
+        BrowserInterface $browser,
+        AssertProductReviewIsAbsentOnProductPage $assertProductReviewIsAbsentOnProductPage
+    ) {
         // Prepare for tear down
         $this->review = $review;
 
         // Steps
         $product = $review->getDataFieldConfig('entity_id')['source']->getEntity();
         $browser->open($_ENV['app_frontend_url'] . $product->getUrlKey() . '.html');
-        $reviewLink = $this->catalogProductView->getReviewSummary()->getAddReviewLink();
-        if ($reviewLink->isVisible()) {
-            $reviewLink->click();
-        }
+        $assertProductReviewIsAbsentOnProductPage->processAssert($this->catalogProductView);
+        $this->catalogProductView->getReviewSummary()->clickAddReviewLink();
         $reviewForm = $this->catalogProductView->getReviewFormBlock();
         $reviewForm->fill($review);
         $reviewForm->submit();
@@ -108,15 +115,19 @@ class CreateProductReviewFrontendEntityTest extends Injectable
     }
 
     /**
-     * Clear data after test
+     * Clear data after test.
      *
      * @return void
      */
     public function tearDown()
     {
-        $this->ratingIndex->open();
-        if ($this->review instanceof ReviewInjectable) {
-            foreach ($this->review->getRatings() as $rating) {
+        if ($this->review instanceof Review) {
+            $ratings = $this->review->getRatings();
+            if (empty($ratings)) {
+                return;
+            }
+            $this->ratingIndex->open();
+            foreach ($ratings as $rating) {
                 $this->ratingIndex->getRatingGrid()->searchAndOpen(['rating_code' => $rating['title']]);
                 $this->ratingEdit->getPageActions()->delete();
             }
diff --git a/dev/tests/functional/tests/app/Magento/Review/Test/TestCase/CreateProductReviewFrontendEntityTest/test.csv b/dev/tests/functional/tests/app/Magento/Review/Test/TestCase/CreateProductReviewFrontendEntityTest/test.csv
index 211299f67a5cb3903eea6ca55548387504075387..53247eb17462677b3059c09662e7f737d869ad79 100644
--- a/dev/tests/functional/tests/app/Magento/Review/Test/TestCase/CreateProductReviewFrontendEntityTest/test.csv
+++ b/dev/tests/functional/tests/app/Magento/Review/Test/TestCase/CreateProductReviewFrontendEntityTest/test.csv
@@ -1,2 +1,3 @@
-"review/data/nickname";"review/data/title";"review/data/detail";"review/data/ratings/1/dataSet";"review/data/ratings/1/rating";"review/data/entity_id/dataSet";"constraint"
-"name_%isolation%";"title_%isolation%";"review_%isolation%";"visibleOnDefaultWebsite";"4";"catalogProductSimple::default";"assertReviewCreationSuccessMessage, assertProductReviewInGrid, assertProductRatingOnReviewPage, assertProductRatingInProductPage"
+"description";"review/data/customer";"review/data/nickname";"review/data/title";"review/data/detail";"review/data/ratings/1/dataSet";"review/data/ratings/1/rating";"review/data/entity_id/dataSet";"constraint";"tag"
+"Create product review with rating";"-";"name_%isolation%";"title_%isolation%";"review_%isolation%";"visibleOnDefaultWebsite";"4";"catalogProductSimple::default";"assertReviewCreationSuccessMessage, assertProductReviewInGrid, assertProductRatingOnReviewPage, assertProductRatingInProductPage";""
+"MAGETWO-12403 - Add Product Review from Customer's Prospective";"Guest";"name_%isolation%";"title_%isolation%";"review_%isolation%";"-";"-";"catalogProductSimple::default";"assertReviewCreationSuccessMessage, assertProductReviewIsAbsentOnProductPage, assertProductReviewForm, assertSetApprovedProductReview, assertReviewLinksIsPresentOnProductPage, assertProductReviewOnProductPage";"bamboo_plan:end_to_end,test_type:acceptance_test"
diff --git a/dev/tests/functional/tests/app/Magento/Review/Test/TestCase/DeleteProductRatingEntityTest.php b/dev/tests/functional/tests/app/Magento/Review/Test/TestCase/DeleteProductRatingEntityTest.php
index 3973a8fe6572e8d6c4d623a45eaea35a2a77fc66..129b383ffe285a0684b215c2718e5acb9ed73a73 100755
--- a/dev/tests/functional/tests/app/Magento/Review/Test/TestCase/DeleteProductRatingEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Review/Test/TestCase/DeleteProductRatingEntityTest.php
@@ -8,8 +8,8 @@ namespace Magento\Review\Test\TestCase;
 use Magento\Review\Test\Fixture\Rating;
 use Magento\Review\Test\Page\Adminhtml\RatingEdit;
 use Magento\Review\Test\Page\Adminhtml\RatingIndex;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for DeleteProductRatingEntity
@@ -33,6 +33,11 @@ use Mtf\TestCase\Injectable;
  */
 class DeleteProductRatingEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'no';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * @var RatingIndex
      */
diff --git a/dev/tests/functional/tests/app/Magento/Review/Test/TestCase/ManageProductReviewFromCustomerPageTest.php b/dev/tests/functional/tests/app/Magento/Review/Test/TestCase/ManageProductReviewFromCustomerPageTest.php
index f99b53f5b02298499092196b91ac185c9d023e13..52f5bbe692b4ef9739de9bb3b14bf5a16d1c38b6 100644
--- a/dev/tests/functional/tests/app/Magento/Review/Test/TestCase/ManageProductReviewFromCustomerPageTest.php
+++ b/dev/tests/functional/tests/app/Magento/Review/Test/TestCase/ManageProductReviewFromCustomerPageTest.php
@@ -13,12 +13,12 @@ use Magento\Customer\Test\Fixture\CustomerInjectable;
 use Magento\Customer\Test\Page\Adminhtml\CustomerIndex;
 use Magento\Customer\Test\Page\Adminhtml\CustomerIndexEdit;
 use Magento\Customer\Test\Page\CustomerAccountLogin;
-use Magento\Review\Test\Fixture\ReviewInjectable;
+use Magento\Review\Test\Fixture\Review;
 use Magento\Review\Test\Page\Adminhtml\RatingEdit;
 use Magento\Review\Test\Page\Adminhtml\RatingIndex;
 use Magento\Review\Test\Page\Adminhtml\ReviewEdit;
-use Mtf\Client\Browser;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for ManageProductReviewFromCustomerPage
@@ -47,6 +47,11 @@ use Mtf\TestCase\Injectable;
  */
 class ManageProductReviewFromCustomerPageTest extends Injectable
 {
+    /* tags */
+    const MVP = 'no';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * Customer index page
      *
@@ -78,7 +83,7 @@ class ManageProductReviewFromCustomerPageTest extends Injectable
     /**
      * Browser
      *
-     * @var Browser
+     * @var BrowserInterface
      */
     protected $browser;
 
@@ -106,7 +111,7 @@ class ManageProductReviewFromCustomerPageTest extends Injectable
     /**
      * Review fixture
      *
-     * @var ReviewInjectable
+     * @var Review
      */
     protected $reviewInitial;
 
@@ -137,7 +142,7 @@ class ManageProductReviewFromCustomerPageTest extends Injectable
      * @param CmsIndex $cmsIndex
      * @param CustomerAccountLogin $customerAccountLogin
      * @param CatalogProductView $catalogProductView
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @param RatingIndex $ratingIndex
      * @param RatingEdit $ratingEdit
      * @param ReviewEdit $reviewEdit
@@ -149,7 +154,7 @@ class ManageProductReviewFromCustomerPageTest extends Injectable
         CmsIndex $cmsIndex,
         CustomerAccountLogin $customerAccountLogin,
         CatalogProductView $catalogProductView,
-        Browser $browser,
+        BrowserInterface $browser,
         RatingIndex $ratingIndex,
         RatingEdit $ratingEdit,
         ReviewEdit $reviewEdit
@@ -168,14 +173,14 @@ class ManageProductReviewFromCustomerPageTest extends Injectable
     /**
      * Run manage product review test
      *
-     * @param ReviewInjectable $reviewInitial
-     * @param ReviewInjectable $review
+     * @param Review $reviewInitial
+     * @param Review $review
      * @param CustomerInjectable $customer
      * @return array
      */
     public function test(
-        ReviewInjectable $reviewInitial,
-        ReviewInjectable $review,
+        Review $reviewInitial,
+        Review $review,
         CustomerInjectable $customer
     ) {
         // Preconditions
@@ -226,7 +231,7 @@ class ManageProductReviewFromCustomerPageTest extends Injectable
     public function tearDown()
     {
         $this->ratingIndex->open();
-        if ($this->reviewInitial instanceof ReviewInjectable) {
+        if ($this->reviewInitial instanceof Review) {
             foreach ($this->reviewInitial->getRatings() as $rating) {
                 $this->ratingIndex->getRatingGrid()->searchAndOpen(['rating_code' => $rating['title']]);
                 $this->ratingEdit->getPageActions()->delete();
diff --git a/dev/tests/functional/tests/app/Magento/Review/Test/TestCase/MassActionsProductReviewEntityTest.php b/dev/tests/functional/tests/app/Magento/Review/Test/TestCase/MassActionsProductReviewEntityTest.php
index 292f73d8ecf5318c563dda10d309155e2030c6b6..9152f68dcf0e278104d32181f9d5b79b6e9f02aa 100644
--- a/dev/tests/functional/tests/app/Magento/Review/Test/TestCase/MassActionsProductReviewEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Review/Test/TestCase/MassActionsProductReviewEntityTest.php
@@ -6,11 +6,11 @@
 
 namespace Magento\Review\Test\TestCase;
 
-use Magento\Review\Test\Fixture\ReviewInjectable;
+use Magento\Review\Test\Fixture\Review;
 use Magento\Review\Test\Page\Adminhtml\RatingEdit;
 use Magento\Review\Test\Page\Adminhtml\RatingIndex;
 use Magento\Review\Test\Page\Adminhtml\ReviewIndex;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test creation for MassActions ProductReviewEntity
@@ -35,6 +35,11 @@ use Mtf\TestCase\Injectable;
  */
 class MassActionsProductReviewEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'no';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * Backend rating grid page
      *
@@ -59,7 +64,7 @@ class MassActionsProductReviewEntityTest extends Injectable
     /**
      * Fixture review
      *
-     * @var ReviewInjectable
+     * @var Review
      */
     protected $review;
 
@@ -69,14 +74,14 @@ class MassActionsProductReviewEntityTest extends Injectable
      * @param ReviewIndex $reviewIndex
      * @param RatingIndex $ratingIndex
      * @param RatingEdit $ratingEdit
-     * @param ReviewInjectable $review
+     * @param Review $review
      * @return array
      */
     public function __inject(
         ReviewIndex $reviewIndex,
         RatingIndex $ratingIndex,
         RatingEdit $ratingEdit,
-        ReviewInjectable $review
+        Review $review
     ) {
         $this->reviewIndex = $reviewIndex;
         $this->ratingIndex = $ratingIndex;
@@ -114,7 +119,7 @@ class MassActionsProductReviewEntityTest extends Injectable
     public function tearDown()
     {
         $this->ratingIndex->open();
-        if ($this->review instanceof ReviewInjectable) {
+        if ($this->review instanceof Review) {
             foreach ($this->review->getRatings() as $rating) {
                 $this->ratingIndex->getRatingGrid()->searchAndOpen(['rating_code' => $rating['title']]);
                 $this->ratingEdit->getPageActions()->delete();
diff --git a/dev/tests/functional/tests/app/Magento/Review/Test/TestCase/ModerateProductReviewEntityTest.php b/dev/tests/functional/tests/app/Magento/Review/Test/TestCase/ModerateProductReviewEntityTest.php
index f5f947803b8cbea9c6de62ddd333d72a009a6ed4..a37ab005cfe5c5ecd591e2c74c713774ec018ba9 100644
--- a/dev/tests/functional/tests/app/Magento/Review/Test/TestCase/ModerateProductReviewEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Review/Test/TestCase/ModerateProductReviewEntityTest.php
@@ -6,10 +6,10 @@
 
 namespace Magento\Review\Test\TestCase;
 
-use Magento\Review\Test\Fixture\ReviewInjectable;
+use Magento\Review\Test\Fixture\Review;
 use Magento\Review\Test\Page\Adminhtml\ReviewEdit;
 use Magento\Review\Test\Page\Adminhtml\ReviewIndex;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for Moderate ProductReview Entity
@@ -33,6 +33,11 @@ use Mtf\TestCase\Injectable;
  */
 class ModerateProductReviewEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'no';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * Backend review grid page
      *
@@ -63,11 +68,11 @@ class ModerateProductReviewEntityTest extends Injectable
     /**
      * Run moderate product review test
      *
-     * @param ReviewInjectable $reviewInitial
-     * @param ReviewInjectable $review
+     * @param Review $reviewInitial
+     * @param Review $review
      * @return array
      */
-    public function test(ReviewInjectable $reviewInitial, ReviewInjectable $review)
+    public function test(Review $reviewInitial, Review $review)
     {
         // Precondition
         $reviewInitial->persist();
diff --git a/dev/tests/functional/tests/app/Magento/Review/Test/TestCase/ReviewTest.php b/dev/tests/functional/tests/app/Magento/Review/Test/TestCase/ReviewTest.php
deleted file mode 100755
index c214d5da5729c462dc557742b7edbbade3391d50..0000000000000000000000000000000000000000
--- a/dev/tests/functional/tests/app/Magento/Review/Test/TestCase/ReviewTest.php
+++ /dev/null
@@ -1,163 +0,0 @@
-<?php
-/**
- * Copyright © 2015 Magento. All rights reserved.
- * See COPYING.txt for license details.
- */
-
-namespace Magento\Review\Test\TestCase;
-
-use Magento\Review\Test\Block\Product\View;
-use Magento\Review\Test\Block\Product\View\Summary;
-use Magento\Review\Test\Fixture\Review;
-use Mtf\Block\Form;
-use Mtf\Factory\Factory;
-use Mtf\TestCase\Functional;
-
-/**
- * Product reviews functionality
- */
-class ReviewTest extends Functional
-{
-    /**
-     * Adding product review from not logged customer prospective
-     *
-     * @ZephyrId MAGETWO-12403
-     */
-    public function testAddReviewByGuest()
-    {
-        //Preconditions
-        $productFixture = Factory::getFixtureFactory()->getMagentoCatalogSimpleProduct();
-        $productFixture->switchData('simple_required');
-        $productFixture->persist();
-        $reviewFixture = Factory::getFixtureFactory()->getMagentoReviewReview();
-
-        //Pages & Blocks
-        $homePage = Factory::getPageFactory()->getCmsIndexIndex();
-        $productPage = Factory::getPageFactory()->getCatalogProductView();
-        $backendReviewIndex = Factory::getPageFactory()->getReviewProductIndex();
-        $backendReviewEdit = Factory::getPageFactory()->getReviewProductEdit();
-        $reviewsSummaryBlock = $productPage->getReviewSummary();
-        $reviewsBlock = $productPage->getCustomerReviewBlock();
-        $reviewForm = $productPage->getReviewFormBlock();
-        $reviewGrid = $backendReviewIndex->getReviewGrid();
-        $reviewBackendForm = $backendReviewEdit->getReviewForm();
-
-        //Steps & verifying
-        $homePage->open();
-
-        Factory::getClientBrowser()->open($_ENV['app_frontend_url'] . $productFixture->getUrlKey() . '.html');
-        $this->verifyNoReviewOnPage($reviewsSummaryBlock);
-        $reviewsSummaryBlock->getAddReviewLink()->click();
-        $this->assertFalse($reviewsBlock->isVisibleReviewItem(), 'No reviews below the form required');
-
-        $reviewForm->fill($reviewFixture);
-        $reviewForm->submit();
-        $submitReviewMessage = 'Your review has been accepted for moderation.';
-        $this->assertContains(
-            $submitReviewMessage,
-            $productPage->getMessagesBlock()->getSuccessMessages(),
-            sprintf('Message "%s" is not appear', $submitReviewMessage)
-        );
-        $this->verifyNoReviewOnPage($productPage->getReviewSummary());
-
-        Factory::getApp()->magentoBackendLoginUser();
-        $backendReviewIndex->open();
-        $reviewGrid->searchAndOpen(['title' => $reviewFixture->getTitle()]);
-        $this->assertEquals('Guest', $reviewBackendForm->getPostedBy(), 'Review is not posted by Guest');
-        $this->assertEquals('Pending', $reviewBackendForm->getStatus(), 'Review is not in Pending status');
-        $this->assertTrue(
-            $this->verifyReviewBackendForm($reviewFixture, $reviewBackendForm),
-            'Review data is not corresponds to submitted one'
-        );
-
-        $reviewBackendForm->setApproveReview();
-        $backendReviewEdit->getPageActions()->save();
-        $this->assertContains(
-            'You saved the review.',
-            $backendReviewIndex->getMessagesBlock()->getSuccessMessages(),
-            'Review is not saved'
-        );
-
-        $this->flushCacheStorageWithAssert();
-
-        Factory::getClientBrowser()->open($_ENV['app_frontend_url'] . $productFixture->getUrlKey() . '.html');
-        $reviewsSummaryBlock = $productPage->getReviewSummary();
-        $this->assertTrue($reviewsSummaryBlock->getAddReviewLink()->isVisible(), 'Add review link is not visible');
-        $this->assertTrue($reviewsSummaryBlock->getViewReviewLink()->isVisible(), 'View review link is not visible');
-        $this->assertContains(
-            '1',
-            $reviewsSummaryBlock->getViewReviewLink()->getText(),
-            'There is more than 1 approved review'
-        );
-
-        $reviewForm = $productPage->getReviewFormBlock();
-        $reviewsBlock = $productPage->getCustomerReviewBlock();
-        $reviewsSummaryBlock->getViewReviewLink()->click();
-        $this->assertContains(
-            sprintf("You're reviewing:\n%s", $productFixture->getName()),
-            $reviewForm->getLegend()->getText()
-        );
-        $this->verifyReview($reviewsBlock, $reviewFixture);
-    }
-
-    /**
-     * Check that review is no present on the product page
-     *
-     * @param Summary $summaryBlock
-     */
-    protected function verifyNoReviewOnPage(Summary $summaryBlock)
-    {
-        $noReviewLinkText = 'Be the first to review this product';
-        $this->assertEquals(
-            $noReviewLinkText,
-            trim($summaryBlock->getAddReviewLink()->getText()),
-            sprintf('"%s" link is not available', $noReviewLinkText)
-        );
-    }
-
-    /**
-     * Flush cache storage and assert success message
-     */
-    protected function flushCacheStorageWithAssert()
-    {
-        $cachePage = Factory::getPageFactory()->getAdminCache();
-        $cachePage->open();
-        $cachePage->getActionsBlock()->flushCacheStorage();
-        $this->assertTrue($cachePage->getActionsBlock()->isStorageCacheFlushed(), 'Cache is not flushed');
-    }
-
-    /**
-     * Verify that submitted review is equals data on page
-     *
-     * @param View $reviewBlock
-     * @param Review $fixture
-     */
-    protected function verifyReview(View $reviewBlock, Review $fixture)
-    {
-        foreach ($fixture->getData('fields') as $field => $data) {
-            $this->assertEquals(
-                strtolower($data['value']),
-                strtolower(trim($reviewBlock->getFieldValue($field))),
-                sprintf('Field "%s" is not equals submitted one.', $field)
-            );
-        }
-    }
-
-    /**
-     * Verify that review is equals to data on form
-     *
-     * @param Review $review
-     * @param Form $form
-     * @return bool
-     */
-    protected function verifyReviewBackendForm(Review $review, Form $form)
-    {
-        $reviewData = [];
-        foreach ($review->getData()['fields'] as $key => $field) {
-            $reviewData[$key] = $field['value'];
-        }
-        $dataDiff = array_diff($reviewData, $form->getData($review));
-
-        return empty($dataDiff);
-    }
-}
diff --git a/dev/tests/functional/tests/app/Magento/Review/Test/TestCase/UpdateProductReviewEntityOnProductPageTest.php b/dev/tests/functional/tests/app/Magento/Review/Test/TestCase/UpdateProductReviewEntityOnProductPageTest.php
index df9bd2a3496c7350973377961c5957d3fd88cedc..08f69793f6f88c23e9d367ac6ae26726af94dbf9 100644
--- a/dev/tests/functional/tests/app/Magento/Review/Test/TestCase/UpdateProductReviewEntityOnProductPageTest.php
+++ b/dev/tests/functional/tests/app/Magento/Review/Test/TestCase/UpdateProductReviewEntityOnProductPageTest.php
@@ -9,12 +9,12 @@ namespace Magento\Review\Test\TestCase;
 use Magento\Catalog\Test\Fixture\CatalogProductSimple;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductEdit;
 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductIndex;
-use Magento\Review\Test\Fixture\ReviewInjectable;
+use Magento\Review\Test\Fixture\Review;
 use Magento\Review\Test\Page\Adminhtml\RatingEdit;
 use Magento\Review\Test\Page\Adminhtml\RatingIndex;
 use Magento\Review\Test\Page\Adminhtml\ReviewEdit;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for UpdateProductReviewEntity on product page
@@ -39,6 +39,11 @@ use Mtf\TestCase\Injectable;
  */
 class UpdateProductReviewEntityOnProductPageTest extends Injectable
 {
+    /* tags */
+    const MVP = 'no';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * Catalog product index page
      *
@@ -70,7 +75,7 @@ class UpdateProductReviewEntityOnProductPageTest extends Injectable
     /**
      * Review fixture
      *
-     * @var ReviewInjectable
+     * @var Review
      */
     protected $reviewInitial;
 
@@ -97,7 +102,7 @@ class UpdateProductReviewEntityOnProductPageTest extends Injectable
     public function __prepare(FixtureFactory $fixtureFactory)
     {
         $this->reviewInitial = $fixtureFactory->createByCode(
-            'reviewInjectable',
+            'review',
             ['dataSet' => 'review_for_simple_product_with_rating']
         );
         $this->reviewInitial->persist();
@@ -131,11 +136,11 @@ class UpdateProductReviewEntityOnProductPageTest extends Injectable
     /**
      * Update product review on product page
      *
-     * @param ReviewInjectable $review
+     * @param Review $review
      * @param int $rating
      * @return array
      */
-    public function test(ReviewInjectable $review, $rating)
+    public function test(Review $review, $rating)
     {
         // Steps
         $review = $this->createReview($review, $rating);
@@ -160,9 +165,9 @@ class UpdateProductReviewEntityOnProductPageTest extends Injectable
     /**
      * Create review
      *
-     * @param ReviewInjectable $review
+     * @param Review $review
      * @param int $rating
-     * @return ReviewInjectable
+     * @return Review
      */
     protected function createReview($review, $rating)
     {
@@ -170,7 +175,7 @@ class UpdateProductReviewEntityOnProductPageTest extends Injectable
         $fixtureRating = $this->reviewInitial->getDataFieldConfig('ratings')['source']->getRatings()[0];
         $reviewData['ratings'][0] = ['fixtureRating' => $fixtureRating, 'rating' => $rating];
 
-        return $this->fixtureFactory->createByCode('reviewInjectable', ['data' => $reviewData]);
+        return $this->fixtureFactory->createByCode('review', ['data' => $reviewData]);
     }
 
     /**
@@ -180,7 +185,7 @@ class UpdateProductReviewEntityOnProductPageTest extends Injectable
      */
     public function tearDown()
     {
-        if (!$this->reviewInitial instanceof ReviewInjectable) {
+        if (!$this->reviewInitial instanceof Review) {
             return;
         }
         $this->ratingIndex->open();
diff --git a/dev/tests/functional/tests/app/Magento/Review/Test/TestCase/UpdateProductReviewEntityTest.php b/dev/tests/functional/tests/app/Magento/Review/Test/TestCase/UpdateProductReviewEntityTest.php
index 3f07356a27b84a1e345a904079f71d3104355512..9d422a2a49a6eba014f8017ff25b8be326e2a2e5 100755
--- a/dev/tests/functional/tests/app/Magento/Review/Test/TestCase/UpdateProductReviewEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Review/Test/TestCase/UpdateProductReviewEntityTest.php
@@ -6,12 +6,12 @@
 
 namespace Magento\Review\Test\TestCase;
 
-use Magento\Review\Test\Fixture\ReviewInjectable;
+use Magento\Review\Test\Fixture\Review;
 use Magento\Review\Test\Page\Adminhtml\RatingEdit;
 use Magento\Review\Test\Page\Adminhtml\RatingIndex;
 use Magento\Review\Test\Page\Adminhtml\ReviewEdit;
 use Magento\Review\Test\Page\Adminhtml\ReviewIndex;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for Update Frontend Product Review
@@ -36,6 +36,11 @@ use Mtf\TestCase\Injectable;
  */
 class UpdateProductReviewEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'no';
+    const DOMAIN = 'MX';
+    /* end tags */
+
     /**
      * Backend review grid page
      *
@@ -67,7 +72,7 @@ class UpdateProductReviewEntityTest extends Injectable
     /**
      * Fixture review
      *
-     * @var ReviewInjectable
+     * @var Review
      */
     protected $review;
 
@@ -95,11 +100,11 @@ class UpdateProductReviewEntityTest extends Injectable
     /**
      * Run create frontend product rating test
      *
-     * @param ReviewInjectable $reviewInitial
-     * @param ReviewInjectable $review
+     * @param Review $reviewInitial
+     * @param Review $review
      * @return array
      */
-    public function test(ReviewInjectable $reviewInitial, ReviewInjectable $review)
+    public function test(Review $reviewInitial, Review $review)
     {
         // Precondition
         $reviewInitial->persist();
@@ -127,7 +132,7 @@ class UpdateProductReviewEntityTest extends Injectable
     public function tearDown()
     {
         $this->ratingIndex->open();
-        if ($this->review instanceof ReviewInjectable) {
+        if ($this->review instanceof Review) {
             foreach ($this->review->getRatings() as $rating) {
                 $this->ratingIndex->getRatingGrid()->searchAndOpen(['rating_code' => $rating['title']]);
                 $this->ratingEdit->getPageActions()->delete();
diff --git a/dev/tests/functional/tests/app/Magento/Review/Test/etc/constraint.xml b/dev/tests/functional/tests/app/Magento/Review/Test/etc/constraint.xml
index 3b54fd24056ca0f2e45f0be36e451f9e84f9b56e..d42feb0cbe8722de7922f61ed4c02f5358acfff3 100644
--- a/dev/tests/functional/tests/app/Magento/Review/Test/etc/constraint.xml
+++ b/dev/tests/functional/tests/app/Magento/Review/Test/etc/constraint.xml
@@ -66,4 +66,16 @@
     <assertProductReviewInGridOnCustomerPage module="Magento_Review">
         <severity>low</severity>
     </assertProductReviewInGridOnCustomerPage>
+    <assertProductReviewIsAbsentOnProductPage module="Magento_Review">
+        <severeness>middle</severeness>
+    </assertProductReviewIsAbsentOnProductPage>
+    <assertProductReviewForm module="Magento_Review">
+        <severeness>middle</severeness>
+    </assertProductReviewForm>
+    <assertSetApprovedProductReview module="Magento_Review">
+        <severeness>low</severeness>
+    </assertSetApprovedProductReview>
+    <assertReviewLinksIsPresentOnProductPage module="Magento_Review">
+        <severeness>low</severeness>
+    </assertReviewLinksIsPresentOnProductPage>
 </constraint>
\ No newline at end of file
diff --git a/dev/tests/functional/tests/app/Magento/Review/Test/etc/curl/di.xml b/dev/tests/functional/tests/app/Magento/Review/Test/etc/curl/di.xml
index 9537c6b86e16610f206e0d2690f60a5842c986e9..8d60a37bb98c1ba8669402145123c7e9e705f3cd 100755
--- a/dev/tests/functional/tests/app/Magento/Review/Test/etc/curl/di.xml
+++ b/dev/tests/functional/tests/app/Magento/Review/Test/etc/curl/di.xml
@@ -7,5 +7,5 @@
 -->
 <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../../../../../lib/internal/Magento/Framework/ObjectManager/etc/config.xsd">
     <preference for="Magento\Review\Test\Handler\Rating\RatingInterface" type="\Magento\Review\Test\Handler\Rating\Curl"/>
-    <preference for="Magento\Review\Test\Handler\ReviewInjectable\ReviewInjectableInterface" type="\Magento\Review\Test\Handler\ReviewInjectable\Curl"/>
+    <preference for="Magento\Review\Test\Handler\Review\ReviewInterface" type="\Magento\Review\Test\Handler\Review\Curl"/>
 </config>
diff --git a/dev/tests/functional/tests/app/Magento/Review/Test/etc/fixture.xml b/dev/tests/functional/tests/app/Magento/Review/Test/etc/fixture.xml
index 2c1f660b63994759324e50ca420197c9e4967886..33207a0a4b51714be2d7b9f62c52f8cd3981cb9f 100644
--- a/dev/tests/functional/tests/app/Magento/Review/Test/etc/fixture.xml
+++ b/dev/tests/functional/tests/app/Magento/Review/Test/etc/fixture.xml
@@ -6,14 +6,14 @@
  */
 -->
 <fixture>
-    <reviewInjectable module="Magento_Review">
+    <review module="Magento_Review">
         <type>composite</type>
         <entities>
             <review>review</review>
             <review_detail>review_detail</review_detail>
         </entities>
         <collection>Magento\Review\Model\Resource\Review\Collection</collection>
-    </reviewInjectable>
+    </review>
     <rating module="Magento_Review">
         <type>flat</type>
         <entity_type>rating</entity_type>
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/AbstractForm.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/AbstractForm.php
index fa48a0a91000fcfdaf58973c0c86a95fcb06a022..5e703ad9afd035e4e0a634469258df2037cde16d 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/AbstractForm.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/AbstractForm.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Sales\Test\Block\Adminhtml\Order;
 
-use Mtf\Block\Form;
+use Magento\Mtf\Block\Form;
 
 /**
  * Class Form
@@ -81,7 +81,6 @@ abstract class AbstractForm extends Form
                 return $element->isVisible() == false ? true : null;
             }
         );
-        $this->reinitRootElement();
         $this->_rootElement->find($this->send)->click();
     }
 
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/AbstractForm/Product.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/AbstractForm/Product.php
index 9c0993bfbe16a7c0d8ec38040e593d09dd3c2053..901ee9bba2b69cab6e55cedc29f906e223908aef 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/AbstractForm/Product.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/AbstractForm/Product.php
@@ -6,7 +6,8 @@
 
 namespace Magento\Sales\Test\Block\Adminhtml\Order\AbstractForm;
 
-use Mtf\Block\Form;
+use Magento\Mtf\Block\Form;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class Product
@@ -14,6 +15,91 @@ use Mtf\Block\Form;
  */
 class Product extends Form
 {
+    /**
+     * Product price excluding tax search mask
+     *
+     * @var string
+     */
+    protected $itemExclTax = '//td[@class="col-price"]/div[@class="price-excl-tax"]/span[@class="price"]';
+
+    /**
+     * Product price including tax search mask
+     *
+     * @var string
+     */
+    protected $itemInclTax = '//td[@class="col-price"]/div[@class="price-incl-tax"]/span[@class="price"]';
+
+    /**
+     * Product price subtotal excluding tax search mask
+     *
+     * @var string
+     */
+    protected $itemSubExclTax = '//td[@class="col-subtotal"]/div[@class="price-excl-tax"]/span[@class="price"]';
+
+    /**
+     * Product price subtotal including tax search mask
+     *
+     * @var string
+     */
+    protected $itemSubInclTax = '//td[@class="col-subtotal"]/div[@class="price-incl-tax"]/span[@class="price"]';
+
+    /**
+     * Get Item price excluding tax
+     *
+     * @return string|null
+     */
+    public function getItemPriceExclTax()
+    {
+        $price = $this->_rootElement->find($this->itemExclTax, Locator::SELECTOR_XPATH);
+        return $price->isVisible() ? $this->escapeCurrency($price->getText()) : null;
+    }
+
+    /**
+     * Get Item price including tax
+     *
+     * @return string|null
+     */
+    public function getItemPriceInclTax()
+    {
+        $price = $this->_rootElement->find($this->itemInclTax, Locator::SELECTOR_XPATH);
+        return $price->isVisible() ? $this->escapeCurrency($price->getText()) : null;
+    }
+
+    /**
+     * Get Item price excluding tax
+     *
+     * @return string|null
+     */
+    public function getItemSubExclTax()
+    {
+        $price = $this->_rootElement->find($this->itemSubExclTax, Locator::SELECTOR_XPATH);
+        return $price->isVisible() ? $this->escapeCurrency($price->getText()) : null;
+    }
+
+    /**
+     * Get Item price excluding tax
+     *
+     * @return string|null
+     */
+
+    public function getItemSubInclTax()
+    {
+        $price = $this->_rootElement->find($this->itemSubInclTax, Locator::SELECTOR_XPATH);
+        return $price->isVisible() ? $this->escapeCurrency($price->getText()) : null;
+    }
+
+    /**
+     * Method that escapes currency symbols
+     *
+     * @param string $price
+     * @return string|null
+     */
+    protected function escapeCurrency($price)
+    {
+        preg_match("/^\\D*\\s*([\\d,\\.]+)\\s*\\D*$/", $price, $matches);
+        return (isset($matches[1])) ? $matches[1] : null;
+    }
+
     /**
      * Fill item product data
      *
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/AbstractItems.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/AbstractItems.php
index b0496115c9c2090386a35e58a3000b81f166d3c0..88af288c29ce656cc6a8e8a2c77672c4da77f72c 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/AbstractItems.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/AbstractItems.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Sales\Test\Block\Adminhtml\Order;
 
-use Mtf\Block\Block;
+use Magento\Mtf\Block\Block;
 
 /**
  * Class AbstractItems
@@ -77,7 +77,7 @@ class AbstractItems extends Block
      */
     public function getData()
     {
-        $items = $this->_rootElement->find($this->rowItem)->getElements();
+        $items = $this->_rootElement->getElements($this->rowItem);
         $data = [];
 
         foreach ($items as $item) {
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/AbstractItemsNewBlock.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/AbstractItemsNewBlock.php
index dfa7aecce9a7faf4b5adc9520f7301afa89e158b..907992a7e2c54f7793f272aff8962caca90e6dda 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/AbstractItemsNewBlock.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/AbstractItemsNewBlock.php
@@ -7,8 +7,8 @@
 namespace Magento\Sales\Test\Block\Adminhtml\Order;
 
 use Magento\Sales\Test\Block\Adminhtml\Order\AbstractForm\Product;
-use Mtf\Block\Block;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class AbstractItemsNewBlock
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Actions.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Actions.php
index aa6a4c1740da31bb9ef66f0851a43c3e40c3e3c9..4d5bf937f8f114d8b7aecfc572af2e91f6ddaff6 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Actions.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Actions.php
@@ -6,8 +6,8 @@
 
 namespace Magento\Sales\Test\Block\Adminhtml\Order;
 
-use Mtf\Block\Block;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class Actions
@@ -171,7 +171,7 @@ class Actions extends Block
     public function cancel()
     {
         $this->_rootElement->find($this->cancel)->click();
-        $this->_rootElement->acceptAlert();
+        $this->browser->acceptAlert();
     }
 
     /**
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Create.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Create.php
index 12ea727d10d320360fa1b05a763c46fbf94248c6..cfeedc7b3262168584cd68cd24870b1310a5a7f5 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Create.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Create.php
@@ -6,10 +6,10 @@
 
 namespace Magento\Sales\Test\Block\Adminhtml\Order;
 
-use Mtf\Block\Block;
-use Mtf\Client\Element\Locator;
-use Mtf\Factory\Factory;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Factory\Factory;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class Create
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Create/Billing/Address.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Create/Billing/Address.php
index a5084d3347c292b4e7f5bd6e322fa7616b6ffa8b..2b5688f592c83bb40a8e3e4f6e67e41d48ebc24d 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Create/Billing/Address.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Create/Billing/Address.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Sales\Test\Block\Adminhtml\Order\Create\Billing;
 
-use Mtf\Block\Form;
+use Magento\Mtf\Block\Form;
 
 /**
  * Class BillingAddress
@@ -29,7 +29,6 @@ class Address extends Form
      */
     public function getExistingAddresses()
     {
-        $this->reinitRootElement();
         return explode("\n", $this->_rootElement->find($this->existingAddressSelector)->getText());
     }
 }
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Create/Billing/Method.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Create/Billing/Method.php
index da0f65be72ee3d04ea835f4d56157f11ce0a03a4..6397d53754a38dd58e0913853b4b65b09c23e9c4 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Create/Billing/Method.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Create/Billing/Method.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Sales\Test\Block\Adminhtml\Order\Create\Billing;
 
-use Mtf\Block\Block;
+use Magento\Mtf\Block\Block;
 
 /**
  * Class Method
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Create/Customer.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Create/Customer.php
index f077e90672c2ee13dde8b537f1fa683085625354..ba5f99b4e704c5277511aac30c9e56b6b7b11c38 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Create/Customer.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Create/Customer.php
@@ -8,7 +8,7 @@
 namespace Magento\Sales\Test\Block\Adminhtml\Order\Create;
 
 use Magento\Backend\Test\Block\Widget\Grid;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class Customer
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Create/CustomerActivities.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Create/CustomerActivities.php
index 007f33ad32cef3b817f1f9cb5c2aa86913bad1eb..d475f5d0e9799413ae9e59c74d4910fd46ebab17 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Create/CustomerActivities.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Create/CustomerActivities.php
@@ -12,8 +12,8 @@ use Magento\Sales\Test\Block\Adminhtml\Order\Create\CustomerActivities\Sidebar\R
 use Magento\Sales\Test\Block\Adminhtml\Order\Create\CustomerActivities\Sidebar\RecentlyViewedItems;
 use Magento\Sales\Test\Block\Adminhtml\Order\Create\CustomerActivities\Sidebar\RecentlyViewedProducts;
 use Magento\Sales\Test\Block\Adminhtml\Order\Create\CustomerActivities\Sidebar\ShoppingCartItems;
-use Mtf\Block\Block;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class CustomerActivities
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Create/CustomerActivities/Sidebar.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Create/CustomerActivities/Sidebar.php
index 27af3bd6ee3670b9e879911bcb35008d4f652841..f9c089f1a25d99465df54d38fdc02023c7916d3f 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Create/CustomerActivities/Sidebar.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Create/CustomerActivities/Sidebar.php
@@ -6,8 +6,8 @@
 
 namespace Magento\Sales\Test\Block\Adminhtml\Order\Create\CustomerActivities;
 
-use Mtf\Block\Block;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Sidebar block.
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Create/CustomerActivities/Sidebar/RecentlyViewedProducts.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Create/CustomerActivities/Sidebar/RecentlyViewedProducts.php
index bd51355a2acddbbb2a55b4b74eb35aee211caf7a..81c03a862259e8230eba8af8e16331bfebb2eac0 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Create/CustomerActivities/Sidebar/RecentlyViewedProducts.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Create/CustomerActivities/Sidebar/RecentlyViewedProducts.php
@@ -7,7 +7,7 @@
 namespace Magento\Sales\Test\Block\Adminhtml\Order\Create\CustomerActivities\Sidebar;
 
 use Magento\Sales\Test\Block\Adminhtml\Order\Create\CustomerActivities\Sidebar;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class RecentlyViewedProducts
@@ -30,8 +30,7 @@ class RecentlyViewedProducts extends Sidebar
     public function getProducts()
     {
         $products = [];
-        $productNames = $this->_rootElement->find($this->recentlyViewedProducts, Locator::SELECTOR_XPATH)
-            ->getElements();
+        $productNames = $this->_rootElement->getElements($this->recentlyViewedProducts, Locator::SELECTOR_XPATH);
         foreach ($productNames as $productName) {
             $products[] = $productName->getText();
         }
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Create/Items.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Create/Items.php
index abe41f6b5499d6d3d04d37de06f19593455998f9..7d2aec9dd17a3a28781cb7bdaeedffc277252f1b 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Create/Items.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Create/Items.php
@@ -7,8 +7,8 @@
 namespace Magento\Sales\Test\Block\Adminhtml\Order\Create;
 
 use Magento\Backend\Test\Block\Template;
-use Mtf\Block\Block;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class Items
@@ -86,7 +86,7 @@ class Items extends Block
     {
         $this->getTemplateBlock()->waitLoader();
         $this->_rootElement->click();
-        $products = $this->_rootElement->find($this->productNames, Locator::SELECTOR_XPATH)->getElements();
+        $products = $this->_rootElement->getElements($this->productNames, Locator::SELECTOR_XPATH);
         $pageData = [];
         foreach ($products as $product) {
             $pageData[] = $this->getItemProductByName($product->getText())->getCheckoutData($fields);
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Create/Items/ItemProduct.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Create/Items/ItemProduct.php
index ad197576e6bf263180b5b59c6bb3e18ecdbda8d2..03ec6f8187c16a1a697a93f64e6a8d861a0130fe 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Create/Items/ItemProduct.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Create/Items/ItemProduct.php
@@ -6,8 +6,8 @@
 
 namespace Magento\Sales\Test\Block\Adminhtml\Order\Create\Items;
 
-use Mtf\Block\Form;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Form;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class ItemProduct
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Create/Shipping/Address.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Create/Shipping/Address.php
index a7bef1c77da3fc36c6384760c613c662691524d3..73e951594ff3368af589ee6be154d0b5e91a87dc 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Create/Shipping/Address.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Create/Shipping/Address.php
@@ -7,8 +7,8 @@
 
 namespace Magento\Sales\Test\Block\Adminhtml\Order\Create\Shipping;
 
-use Mtf\Block\Form;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Form;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class ShippingAddress
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Create/Shipping/Method.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Create/Shipping/Method.php
index a2bdd1e649c848564bbbb929dad1cf4c74a9558b..4f9877eeca53a150ebaac49adbfb908f9366ac64 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Create/Shipping/Method.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Create/Shipping/Method.php
@@ -6,8 +6,8 @@
 
 namespace Magento\Sales\Test\Block\Adminhtml\Order\Create\Shipping;
 
-use Mtf\Block\Block;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class Method
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Create/Store.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Create/Store.php
index e2adf9500ecda3443efeb0d67dc8c0754a52524e..f48f0cbd9e3674a7a5c3485082bc7b4d60a9c86a 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Create/Store.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Create/Store.php
@@ -8,9 +8,9 @@
 namespace Magento\Sales\Test\Block\Adminhtml\Order\Create;
 
 use Magento\Store\Test\Fixture\Store as StoreFixture;
-use Mtf\Block\Block;
-use Mtf\Client\Element\Locator;
-use Mtf\Factory\Factory;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Factory\Factory;
 
 /**
  * Class Store
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Create/Totals.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Create/Totals.php
index fe25005b4c4e94504c0ecefa5382a13b7e403563..39adad4c9f1f3ca2393ffba15fedbf1ec8c65abd 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Create/Totals.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Create/Totals.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Sales\Test\Block\Adminhtml\Order\Create;
 
-use Mtf\Block\Block;
+use Magento\Mtf\Block\Block;
 
 /**
  * Class Totals
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Grid.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Grid.php
index 5f5ad0669dc4dd6e82f14936fb30bd569db060d6..09919efbd1dba62122652d3e52e1317cd4005028 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Grid.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Grid.php
@@ -7,7 +7,7 @@
 namespace Magento\Sales\Test\Block\Adminhtml\Order;
 
 use Magento\Backend\Test\Block\Widget\Grid as GridInterface;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class Grid
@@ -43,6 +43,13 @@ class Grid extends GridInterface
      */
     protected $editLink = 'td[class*=col-action] a';
 
+    /**
+     * First row selector
+     *
+     * @var string
+     */
+    protected $firstRowSelector = '//tbody/tr[1]//a';
+
     /**
      * {@inheritdoc}
      */
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/History.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/History.php
index fbc98583eed061430693a8552560a6a6a43f2053..17d1dd67238c0b4f00531ed5c604ab8ab416c393 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/History.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/History.php
@@ -6,8 +6,8 @@
 
 namespace Magento\Sales\Test\Block\Adminhtml\Order;
 
-use Mtf\Block\Block;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class Totals
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Invoice/Form.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Invoice/Form.php
index 83f8ab5d76e9cb4ae98a7757c35e69051fa7c99b..d6578371062e9a8112127a854007724d6e7e818a 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Invoice/Form.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Invoice/Form.php
@@ -27,7 +27,7 @@ class Form extends AbstractForm
      *
      * @return Items
      */
-    protected function getItemsBlock()
+    public function getItemsBlock()
     {
         return $this->blockFactory->create(
             'Magento\Sales\Test\Block\Adminhtml\Order\Invoice\Form\Items',
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Invoice/Form/Items.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Invoice/Form/Items.php
index 73114c21845f1807e7cf1b63c91329289fab0484..ed9f86ca74fa6a144a352f9f9e16efc69c0bd308 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Invoice/Form/Items.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Invoice/Form/Items.php
@@ -8,8 +8,8 @@ namespace Magento\Sales\Test\Block\Adminhtml\Order\Invoice\Form;
 
 use Magento\Sales\Test\Block\Adminhtml\Order\AbstractItemsNewBlock;
 use Magento\Sales\Test\Block\Adminhtml\Order\Invoice\Form\Items\Product;
-use Mtf\Client\Element\Locator;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class Items
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Invoice/Grid.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Invoice/Grid.php
index 218fa8ee64181e9f3482ce5b43acec21d9a0edbf..8b43fc9c27ba44de78336999a4abb55aa4278999 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Invoice/Grid.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Invoice/Grid.php
@@ -60,7 +60,7 @@ class Grid extends GridInterface
     }
 
     /**
-     * @return mixed|\Mtf\Client\Element
+     * @return mixed|\Magento\Mtf\Client\Element
      */
     private function getInvoiceAmountElement()
     {
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Invoice/Totals.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Invoice/Totals.php
index bd93e1b5bec55284236db2b6445e9691ef6e34ce..0d6ea9e35f77a10539f27bb3bf58a91d52ba324d 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Invoice/Totals.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Invoice/Totals.php
@@ -6,14 +6,14 @@
 
 namespace Magento\Sales\Test\Block\Adminhtml\Order\Invoice;
 
-use Mtf\Block\Block;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class Totals
  * Invoice totals block
  */
-class Totals extends Block
+class Totals extends \Magento\Sales\Test\Block\Adminhtml\Order\Totals
 {
     /**
      * Submit invoice button selector
@@ -45,7 +45,6 @@ class Totals extends Block
                 return $element->isVisible() == false ? true : null;
             }
         );
-        $this->reinitRootElement();
         $this->_rootElement->find($this->submit)->click();
     }
 
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Shipment/Totals.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Shipment/Totals.php
index 802c0fd06e65f0e7829ae05243d4c5d2597f741c..b2ae1df8954b5f54206fa90e6af28af8a528f4ee 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Shipment/Totals.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Shipment/Totals.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Sales\Test\Block\Adminhtml\Order\Shipment;
 
-use Mtf\Block\Block;
+use Magento\Mtf\Block\Block;
 
 /**
  * Class Totals
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Shipment/View/Items.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Shipment/View/Items.php
index d94630f31ed88ef8d8915fcdf6c516203eeaca12..55d5b3794342c6a12e21bb7a722a128e6ffab7a9 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Shipment/View/Items.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Shipment/View/Items.php
@@ -21,7 +21,7 @@ class Items extends AbstractItems
      */
     public function getData()
     {
-        $items = $this->_rootElement->find($this->rowItem)->getElements();
+        $items = $this->_rootElement->getElements($this->rowItem);
         $data = [];
 
         foreach ($items as $item) {
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Status/Assign/AssignForm.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Status/Assign/AssignForm.php
index abd4fe06e23edc960d5be7448dc157593642ab7a..aa776f8bb3051d2ad292dfe3566cea8d035ed050 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Status/Assign/AssignForm.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Status/Assign/AssignForm.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Sales\Test\Block\Adminhtml\Order\Status\Assign;
 
-use Mtf\Block\Form;
+use Magento\Mtf\Block\Form;
 
 /**
  * Class AssignForm
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Totals.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Totals.php
index 7359618a265c04c95d55525840f209b9f7a6057a..9cec6a2dcc33a7a1e87cd0177895b154f47b6b81 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Totals.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Totals.php
@@ -6,27 +6,88 @@
 
 namespace Magento\Sales\Test\Block\Adminhtml\Order;
 
-use Mtf\Block\Block;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
 
 /**
- * Class Totals
- * Order totals block
- *
+ * Invoice totals block
  */
 class Totals extends Block
 {
     /**
-     * Grand total search mask
+     * Grand total search mask.
      *
      * @var string
      */
     protected $grandTotal = '//tr[normalize-space(td)="Grand Total"]//span';
 
     /**
-     * Get Grand Total Text
+     * Grand total excluding tax search mask.
      *
-     * @return array|string
+     * @var string
+     */
+    protected $grandTotalExclTax = '//tr[normalize-space(td)="Grand Total (Excl.Tax)"]//span';
+
+    /**
+     * Grand total including tax search mask.
+     *
+     * @var string
+     */
+    protected $grandTotalInclTax = '//tr[normalize-space(td)="Grand Total (Incl.Tax)"]//span';
+
+    /**
+     * Subtotal search mask.
+     *
+     * @var string
+     */
+    protected $subtotal = '//tr[normalize-space(td)="Subtotal"]//span';
+
+    /**
+     * Subtotal excluding tax search mask.
+     *
+     * @var string
+     */
+    protected $subtotalExclTax = '//tr[normalize-space(td)="Subtotal (Excl.Tax)"]//span';
+
+    /**
+     * Subtotal including tax search mask.
+     *
+     * @var string
+     */
+    protected $subtotalInclTax = '//tr[normalize-space(td)="Subtotal (Incl.Tax)"]//span';
+
+    /**
+     * Tax search mask.
+     *
+     * @var string
+     */
+    protected $tax = '//tr[normalize-space(td)="Tax"]//span';
+
+    /**
+     * Discount search mask.
+     *
+     * @var string
+     */
+    protected $discount = '//tr[normalize-space(td)="Discount"]//span';
+
+    /**
+     * Shipping excluding tax search mask.
+     *
+     * @var string
+     */
+    protected $shippingExclTax = '//tr[contains (.,"Shipping") and contains (.,"(Excl.Tax)")]//span';
+
+    /**
+     * Shipping including tax search mask.
+     *
+     * @var string
+     */
+    protected $shippingInclTax = '//tr[contains (.,"Shipping") and contains (.,"(Incl.Tax)")]//span';
+
+    /**
+     * Get Grand Total Text.
+     *
+     * @return string
      */
     public function getGrandTotal()
     {
@@ -35,7 +96,106 @@ class Totals extends Block
     }
 
     /**
-     * Method that escapes currency symbols
+     * Get Grand Total Excluding Tax Text.
+     *
+     * @return string
+     */
+    public function getGrandTotalExclTax()
+    {
+        $grandTotal = $this->_rootElement->find($this->grandTotalExclTax, Locator::SELECTOR_XPATH)->getText();
+        return $this->escapeCurrency($grandTotal);
+    }
+
+    /**
+     * Get Grand Total Including Tax Text.
+     *
+     * @return string
+     */
+    public function getGrandTotalInclTax()
+    {
+        $grandTotal = $this->_rootElement->find($this->grandTotalInclTax, Locator::SELECTOR_XPATH)->getText();
+        return $this->escapeCurrency($grandTotal);
+    }
+
+    /**
+     * Get Tax text from Order Totals.
+     *
+     * @return string
+     */
+    public function getTax()
+    {
+        $tax = $this->_rootElement->find($this->tax, Locator::SELECTOR_XPATH)->getText();
+        return $this->escapeCurrency($tax);
+    }
+
+    /**
+     * Get Tax text from Order Totals.
+     *
+     * @return string|null
+     */
+    public function getDiscount()
+    {
+        $discount = $this->_rootElement->find($this->discount, Locator::SELECTOR_XPATH);
+        return $discount->isVisible() ? $this->escapeCurrency($discount->getText()) : null;
+    }
+
+    /**
+     * Get Subtotal text.
+     *
+     * @return string
+     */
+    public function getSubtotal()
+    {
+        $subTotal = $this->_rootElement->find($this->subtotal, Locator::SELECTOR_XPATH)->getText();
+        return $this->escapeCurrency($subTotal);
+    }
+
+    /**
+     * Get Subtotal text.
+     *
+     * @return string
+     */
+    public function getSubtotalExclTax()
+    {
+        $subTotal = $this->_rootElement->find($this->subtotalExclTax, Locator::SELECTOR_XPATH)->getText();
+        return $this->escapeCurrency($subTotal);
+    }
+
+    /**
+     * Get Subtotal text.
+     *
+     * @return string
+     */
+    public function getSubtotalInclTax()
+    {
+        $subTotal = $this->_rootElement->find($this->subtotalInclTax, Locator::SELECTOR_XPATH)->getText();
+        return $this->escapeCurrency($subTotal);
+    }
+
+    /**
+     * Get Shipping Excluding tax price text.
+     *
+     * @return string|null
+     */
+    public function getShippingInclTax()
+    {
+        $subTotal = $this->_rootElement->find($this->shippingInclTax, Locator::SELECTOR_XPATH);
+        return $subTotal->isVisible() ? $this->escapeCurrency($subTotal->getText()) : null;
+    }
+
+    /**
+     * Get Shipping Including tax price text.
+     *
+     * @return string|null
+     */
+    public function getShippingExclTax()
+    {
+        $subTotal = $this->_rootElement->find($this->shippingExclTax, Locator::SELECTOR_XPATH);
+        return $subTotal->isVisible() ? $this->escapeCurrency($subTotal->getText()) : null;
+    }
+
+    /**
+     * Method that escapes currency symbols.
      *
      * @param string $price
      * @return string|null
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/View/Info.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/View/Info.php
index dd2f976734d011f0601a3a8a64feacccaf9dde67..cf49d099f2ade9778ab8f5f78cff88e6e837e876 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/View/Info.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/View/Info.php
@@ -6,8 +6,8 @@
 
 namespace Magento\Sales\Test\Block\Adminhtml\Order\View;
 
-use Mtf\Block\Block;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Block for information about customer on order page
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/View/Items.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/View/Items.php
index 2ff583eeb4d8268244019eb716e75ee567481f7b..00da4a3db47cf4426ef78e5a3b35f68cec8e9b65 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/View/Items.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/View/Items.php
@@ -8,8 +8,8 @@ namespace Magento\Sales\Test\Block\Adminhtml\Order\View;
 
 use Magento\Catalog\Test\Fixture\Product;
 use Magento\ConfigurableProduct\Test\Fixture\ConfigurableProduct;
-use Mtf\Block\Block;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class Items
@@ -24,6 +24,36 @@ class Items extends Block
      */
     protected $priceSelector = '//div[@class="price-excl-tax"]//span[@class="price"]';
 
+    // @codingStandardsIgnoreStart
+    /**
+     * Product price excluding tax search mask
+     *
+     * @var string
+     */
+    protected $itemExclTax = '//tr[contains (.,"%s")]/td[@class="col-price"]/div[@class="price-excl-tax"]/span[@class="price"]';
+
+    /**
+     * Product price including tax search mask
+     *
+     * @var string
+     */
+    protected $itemInclTax = '//tr[contains (.,"%s")]/td[@class="col-price"]/div[@class="price-incl-tax"]/span[@class="price"]';
+
+    /**
+     * Product price subtotal excluding tax search mask
+     *
+     * @var string
+     */
+    protected $itemSubExclTax = '//tr[contains (.,"%s")]/td[@class="col-subtotal"]/div[@class="price-excl-tax"]/span[@class="price"]';
+
+    /**
+     * Product price subtotal including tax search mask
+     *
+     * @var string
+     */
+    protected $itemSubInclTax = '//tr[contains (.,"%s")]/td[@class="col-subtotal"]/div[@class="price-incl-tax"]/span[@class="price"]';
+    // @codingStandardsIgnoreEnd
+
     /**
      * Returns the item price for the specified product.
      *
@@ -53,4 +83,68 @@ class Items extends Block
 
         return $this->_rootElement->find($selector, Locator::SELECTOR_XPATH)->getText();
     }
+
+    /**
+     * Get Item price excluding tax
+     *
+     * @param string $productName
+     * @return string|null
+     */
+    public function getItemPriceExclTax($productName)
+    {
+        $locator = sprintf($this->itemExclTax, $productName);
+        $price = $this->_rootElement->find($locator, Locator::SELECTOR_XPATH);
+        return $price->isVisible() ? $this->escapeCurrency($price->getText()) : null;
+    }
+
+    /**
+     * Get Item price including tax
+     *
+     * @param string $productName
+     * @return string|null
+     */
+    public function getItemPriceInclTax($productName)
+    {
+        $locator = sprintf($this->itemInclTax, $productName);
+        $price = $this->_rootElement->find($locator, Locator::SELECTOR_XPATH);
+        return $price->isVisible() ? $this->escapeCurrency($price->getText()) : null;
+    }
+
+    /**
+     * Get Item price excluding tax
+     *
+     * @param string $productName
+     * @return string|null
+     */
+    public function getItemSubExclTax($productName)
+    {
+        $locator = sprintf($this->itemSubExclTax, $productName);
+        $price = $this->_rootElement->find($locator, Locator::SELECTOR_XPATH);
+        return $price->isVisible() ? $this->escapeCurrency($price->getText()) : null;
+    }
+
+    /**
+     * Get Item price excluding tax
+     *
+     * @param string $productName
+     * @return string|null
+     */
+    public function getItemSubInclTax($productName)
+    {
+        $locator = sprintf($this->itemSubInclTax, $productName);
+        $price = $this->_rootElement->find($locator, Locator::SELECTOR_XPATH);
+        return $price->isVisible() ? $this->escapeCurrency($price->getText()) : null;
+    }
+
+    /**
+     * Method that escapes currency symbols
+     *
+     * @param string $price
+     * @return string|null
+     */
+    protected function escapeCurrency($price)
+    {
+        preg_match("/^\\D*\\s*([\\d,\\.]+)\\s*\\D*$/", $price, $matches);
+        return (isset($matches[1])) ? $matches[1] : null;
+    }
 }
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/View/Tab/CreditMemos/Grid.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/View/Tab/CreditMemos/Grid.php
index ffe386848bd6fe0aedba5dc2cfb1d5026a9fca09..741eeaabdab3c3ffba0af6ea372d3900d462e81b 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/View/Tab/CreditMemos/Grid.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/View/Tab/CreditMemos/Grid.php
@@ -58,7 +58,7 @@ class Grid extends \Magento\Backend\Test\Block\Widget\Grid
     public function getIds()
     {
         $result = [];
-        $creditMemoIds = $this->_rootElement->find($this->editLink)->getElements();
+        $creditMemoIds = $this->_rootElement->getElements($this->editLink);
         foreach ($creditMemoIds as $creditMemoId) {
             $result[] = trim($creditMemoId->getText());
         }
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/View/Tab/Info.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/View/Tab/Info.php
index bbd19f9474c45116d71e5c9ddd0488983db9ddd6..aac809e587dc15dec3869fd4730c4313dedb74b0 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/View/Tab/Info.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/View/Tab/Info.php
@@ -6,8 +6,8 @@
 
 namespace Magento\Sales\Test\Block\Adminhtml\Order\View\Tab;
 
-use Mtf\Block\Block;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class Info
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/View/Tab/Invoices/Grid.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/View/Tab/Invoices/Grid.php
index e329aa3cef34f86c5546fadd7dbb6ffac8a45422..4e22f9ce2dfb8e53f486ee7df7e32627dc37745b 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/View/Tab/Invoices/Grid.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/View/Tab/Invoices/Grid.php
@@ -55,7 +55,7 @@ class Grid extends \Magento\Backend\Test\Block\Widget\Grid
     public function getIds()
     {
         $result = [];
-        $invoiceIds = $this->_rootElement->find($this->invoiceId)->getElements();
+        $invoiceIds = $this->_rootElement->getElements($this->invoiceId);
         foreach ($invoiceIds as $invoiceId) {
             $result[] = trim($invoiceId->getText());
         }
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/View/Tab/Shipments/Grid.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/View/Tab/Shipments/Grid.php
index 20a5d98d797c341140ed59645b958c15af34c871..5fa33144c2fd055f995be9495100629b6e226f4b 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/View/Tab/Shipments/Grid.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/View/Tab/Shipments/Grid.php
@@ -51,7 +51,7 @@ class Grid extends \Magento\Backend\Test\Block\Widget\Grid
     public function getIds()
     {
         $result = [];
-        $shipmentIds = $this->_rootElement->find($this->shipmentId)->getElements();
+        $shipmentIds = $this->_rootElement->getElements($this->shipmentId);
         foreach ($shipmentIds as $shipmentId) {
             $result[] = trim($shipmentId->getText());
         }
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Order/History.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Order/History.php
index 040609465d2e6804ee9636f1a39e2e0e9e320025..b93056743ecc3f1b1ab802b55b748400e98deeff 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Order/History.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Order/History.php
@@ -6,9 +6,9 @@
 
 namespace Magento\Sales\Test\Block\Order;
 
-use Mtf\Block\Block;
-use Mtf\Client\Element;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Client\Element\SimpleElement;
 
 /**
  * Class History
@@ -73,7 +73,7 @@ class History extends Block
      * Get item order block
      *
      * @param string $id
-     * @return Element
+     * @return SimpleElement
      */
     protected function searchOrderById($id)
     {
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Order/Info.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Order/Info.php
index 09736394f69de97f2cbfb238b5808b3688f8dd36..9b7fc95983636154ea053e249872e8662a001fcb 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Order/Info.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Order/Info.php
@@ -6,8 +6,8 @@
 
 namespace Magento\Sales\Test\Block\Order;
 
-use Mtf\Block\Block;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Info block on order's view page.
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Order/Items.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Order/Items.php
index 25b0e963b1d3df4fc04380731afe18b9de35047c..d044f994ac56efe9453b22eec126a87067ef4bca 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Order/Items.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Order/Items.php
@@ -6,8 +6,8 @@
 
 namespace Magento\Sales\Test\Block\Order;
 
-use Mtf\Block\Block;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Items block on order's view page
@@ -31,7 +31,7 @@ class Items extends Block
     /**
      * Check if item is visible in print order page.
      *
-     * @param \Mtf\Fixture\InjectableFixture $product
+     * @param \Magento\Mtf\Fixture\InjectableFixture $product
      * @return bool
      */
     public function isItemVisible($product)
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Order/View.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Order/View.php
index 9829f417cff81ce12f09f21d52c79e23cc65eebe..c8cb4a49db99ea30bfb4df35c1188ab72cef5c2f 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Order/View.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Order/View.php
@@ -6,12 +6,14 @@
 
 namespace Magento\Sales\Test\Block\Order;
 
-use Mtf\Block\Block;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class View
  * View block on order's view page
+ *
+ * @SuppressWarnings(PHPMD.TooManyFields)
  */
 class View extends Block
 {
@@ -36,6 +38,99 @@ class View extends Block
      */
     protected $link = '//*[contains(@class,"order-links")]//a[normalize-space(.)="%s"]';
 
+    /**
+     * Grand total search mask
+     *
+     * @var string
+     */
+    protected $grandTotal = '.grand_total span';
+
+    /**
+     * Grand total including tax search mask
+     *
+     * @var string
+     */
+    protected $grandTotalInclTax = '.grand_total_incl span';
+
+    /**
+     * Subtotal search mask
+     *
+     * @var string
+     */
+    protected $subtotal = '.subtotal .amount span';
+
+    /**
+     * Subtotal excluding tax search mask
+     *
+     * @var string
+     */
+    protected $subtotalExclTax = '.subtotal_excl span';
+
+    /**
+     * Subtotal including tax search mask
+     *
+     * @var string
+     */
+    protected $subtotalInclTax = '.subtotal_incl span';
+
+    /**
+     * Tax search mask
+     *
+     * @var string
+     */
+    protected $tax = '.totals-tax span';
+
+    /**
+     * Discount search mask
+     *
+     * @var string
+     */
+    protected $discount = '.discount span';
+
+    /**
+     * Shipping search mask
+     *
+     * @var string
+     */
+    protected $shippingExclTax = '.shipping span';
+
+    /**
+     * Shipping search mask
+     *
+     * @var string
+     */
+    protected $shippingInclTax = '.shipping_incl span';
+
+    /**
+     * Product price excluding tax search mask
+     *
+     * @var string
+     */
+    protected $itemExclTax = '//tr[contains (.,"%s")]/td[@class="col price"]/span[@class="price-excluding-tax"]/span';
+
+    /**
+     * Product price including tax search mask
+     *
+     * @var string
+     */
+    protected $itemInclTax = '//tr[contains (.,"%s")]/td[@class="col price"]/span[@class="price-including-tax"]/span';
+
+    // @codingStandardsIgnoreStart
+    /**
+     * Product price subtotal excluding tax search mask
+     *
+     * @var string
+     */
+    protected $itemSubExclTax = '//tr[contains (.,"%s")]/td[@class="col subtotal"]/span[@class="price-excluding-tax"]/span';
+
+    /**
+     * Product price subtotal including tax search mask
+     *
+     * @var string
+     */
+    protected $itemSubInclTax = '//tr[contains (.,"%s")]/td[@class="col subtotal"]/span[@class="price-including-tax"]/span';
+    // @codingStandardsIgnoreEnd
+
     /**
      * Get item block
      *
@@ -61,4 +156,167 @@ class View extends Block
     {
         $this->_rootElement->find(sprintf($this->link, $name), Locator::SELECTOR_XPATH)->click();
     }
+
+    /**
+     * Get Grand Total Text
+     *
+     * @return string
+     */
+    public function getGrandTotal()
+    {
+        $grandTotal = $this->_rootElement->find($this->grandTotal, Locator::SELECTOR_CSS)->getText();
+        return $this->escapeCurrency($grandTotal);
+    }
+
+    /**
+     * Get Item price excluding tax
+     *
+     * @param string $productName
+     * @return string|null
+     */
+    public function getItemPriceExclTax($productName)
+    {
+        $locator = sprintf($this->itemExclTax, $productName);
+        $price = $this->_rootElement->find($locator, Locator::SELECTOR_XPATH);
+        return $price->isVisible() ? $this->escapeCurrency($price->getText()) : null;
+    }
+
+    /**
+     * Get Item price excluding tax
+     *
+     * @param string $productName
+     * @return string|null
+     */
+    public function getItemPriceInclTax($productName)
+    {
+        $locator = sprintf($this->itemInclTax, $productName);
+        $price = $this->_rootElement->find($locator, Locator::SELECTOR_XPATH);
+        return $price->isVisible() ? $this->escapeCurrency($price->getText()) : null;
+    }
+
+    /**
+     * Get Item price excluding tax
+     *
+     * @param string $productName
+     * @return string|null
+     */
+    public function getItemSubExclTax($productName)
+    {
+        $locator = sprintf($this->itemSubExclTax, $productName);
+        $price = $this->_rootElement->find($locator, Locator::SELECTOR_XPATH);
+        return $price->isVisible() ? $this->escapeCurrency($price->getText()) : null;
+    }
+
+    /**
+     * Get Item price excluding tax
+     *
+     * @param string $productName
+     * @return string|null
+     */
+    public function getItemSubInclTax($productName)
+    {
+        $locator = sprintf($this->itemSubInclTax, $productName);
+        $price = $this->_rootElement->find($locator, Locator::SELECTOR_XPATH);
+        return $price->isVisible() ? $this->escapeCurrency($price->getText()) : null;
+    }
+
+    /**
+     * Get Grand Total Text
+     *
+     * @return string|null
+     */
+    public function getGrandTotalInclTax()
+    {
+        $grandTotal = $this->_rootElement->find($this->grandTotalInclTax, Locator::SELECTOR_CSS)->getText();
+        return $this->escapeCurrency($grandTotal);
+    }
+
+    /**
+     * Get Tax text from Order Totals
+     *
+     * @return string
+     */
+    public function getTax()
+    {
+        $tax = $this->_rootElement->find($this->tax, Locator::SELECTOR_CSS)->getText();
+        return $this->escapeCurrency($tax);
+    }
+
+    /**
+     * Get Tax text from Order Totals
+     *
+     * @return string|null
+     */
+    public function getDiscount()
+    {
+        $discount = $this->_rootElement->find($this->discount, Locator::SELECTOR_CSS);
+        return $discount->isVisible() ? $this->escapeCurrency($discount->getText()) : null;
+    }
+
+    /**
+     * Get Subtotal text
+     *
+     * @return string
+     */
+    public function getSubtotal()
+    {
+        $subTotal = $this->_rootElement->find($this->subtotal, Locator::SELECTOR_CSS)->getText();
+        return $this->escapeCurrency($subTotal);
+    }
+
+    /**
+     * Get Subtotal text
+     *
+     * @return string
+     */
+    public function getSubtotalExclTax()
+    {
+        $subTotal = $this->_rootElement->find($this->subtotalExclTax, Locator::SELECTOR_CSS)->getText();
+        return $this->escapeCurrency($subTotal);
+    }
+
+    /**
+     * Get Subtotal text
+     *
+     * @return string
+     */
+    public function getSubtotalInclTax()
+    {
+        $subTotal = $this->_rootElement->find($this->subtotalInclTax, Locator::SELECTOR_CSS)->getText();
+        return $this->escapeCurrency($subTotal);
+    }
+
+    /**
+     * Get Shipping Excluding tax price text
+     *
+     * @return string|null
+     */
+    public function getShippingInclTax()
+    {
+        $subTotal = $this->_rootElement->find($this->shippingInclTax, Locator::SELECTOR_CSS);
+        return $subTotal->isVisible() ? $this->escapeCurrency($subTotal->getText()) : null;
+    }
+
+    /**
+     * Get Shipping Including tax price text
+     *
+     * @return string|null
+     */
+    public function getShippingExclTax()
+    {
+        $subTotal = $this->_rootElement->find($this->shippingExclTax, Locator::SELECTOR_CSS);
+        return $subTotal->isVisible() ? $this->escapeCurrency($subTotal->getText()) : null;
+    }
+
+    /**
+     * Method that escapes currency symbols
+     *
+     * @param string $price
+     * @return string|null
+     */
+    protected function escapeCurrency($price)
+    {
+        preg_match("/^\\D*\\s*([\\d,\\.]+)\\s*\\D*$/", $price, $matches);
+        return (isset($matches[1])) ? $matches[1] : null;
+    }
 }
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Order/View/ActionsToolbar.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Order/View/ActionsToolbar.php
index bd613531c7b68fa5717e1a38ed51e37efa55982e..4c5756fecffd692f2951fa4f406f36b5de2ce106 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Order/View/ActionsToolbar.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Order/View/ActionsToolbar.php
@@ -6,8 +6,8 @@
 
 namespace Magento\Sales\Test\Block\Order\View;
 
-use Mtf\Block\Block;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Order view block.
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AbstractAssertItems.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AbstractAssertItems.php
index e40173a7ed11e62ed4fd4a22df6b563d620a59dd..041e7d7d5865eb3d4d62a64d32a3eafa2b5cabce 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AbstractAssertItems.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AbstractAssertItems.php
@@ -8,7 +8,7 @@ namespace Magento\Sales\Test\Constraint;
 
 use Magento\Catalog\Test\Fixture\CatalogProductSimple;
 use Magento\Sales\Test\Fixture\OrderInjectable;
-use Mtf\Constraint\AbstractAssertForm;
+use Magento\Mtf\Constraint\AbstractAssertForm;
 
 /**
  * Class AbstractAssertArchiveItems
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AbstractAssertOrderOnFrontend.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AbstractAssertOrderOnFrontend.php
index cd09e9e27e1311297fc2262b719b516a67d1193b..3ebe97e8f48a83691c99350d88dae914e00409c3 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AbstractAssertOrderOnFrontend.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AbstractAssertOrderOnFrontend.php
@@ -9,8 +9,8 @@ namespace Magento\Sales\Test\Constraint;
 use Magento\Customer\Test\Page\CustomerAccountIndex;
 use Magento\Cms\Test\Page\CmsIndex;
 use Magento\Customer\Test\Fixture\CustomerInjectable;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\ObjectManager;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\ObjectManager;
 
 /**
  * Abstract Class AbstractAssertOrderOnFrontend
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertCreditMemoButton.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertCreditMemoButton.php
index 73cd390792abe1108866d22ea5246f7d8c1b2363..16edae0465421bcf9ac4110b5854bf0401955d30 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertCreditMemoButton.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertCreditMemoButton.php
@@ -9,7 +9,7 @@ namespace Magento\Sales\Test\Constraint;
 use Magento\Sales\Test\Fixture\OrderInjectable;
 use Magento\Sales\Test\Page\Adminhtml\OrderIndex;
 use Magento\Sales\Test\Page\Adminhtml\OrderView;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertCreditMemoButton
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertInvoiceInInvoicesGrid.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertInvoiceInInvoicesGrid.php
index 6232e4c36988f56df2ba501398929a29e696d426..8c5e6da90764aa78f63ff87c4fb319b71997b3b3 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertInvoiceInInvoicesGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertInvoiceInInvoicesGrid.php
@@ -8,7 +8,7 @@ namespace Magento\Sales\Test\Constraint;
 
 use Magento\Sales\Test\Fixture\OrderInjectable;
 use Magento\Sales\Test\Page\Adminhtml\InvoiceIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertInvoiceInInvoicesGrid
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertInvoiceInInvoicesTab.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertInvoiceInInvoicesTab.php
index 9aa105083f39b6d758b87c39e78ddee1a68bb8d1..bee911273739c4d59b28be62b2a19a26bb857328 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertInvoiceInInvoicesTab.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertInvoiceInInvoicesTab.php
@@ -10,7 +10,7 @@ use Magento\Sales\Test\Block\Adminhtml\Order\View\Tab\Invoices\Grid;
 use Magento\Sales\Test\Fixture\OrderInjectable;
 use Magento\Sales\Test\Page\Adminhtml\OrderIndex;
 use Magento\Sales\Test\Page\Adminhtml\OrderView;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertInvoiceInInvoicesTab
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertInvoiceSuccessCreateMessage.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertInvoiceSuccessCreateMessage.php
index ab9529606e3edef41da743760a64475338aeb98c..9faaaece512319d6b4dd5f33c014f917c47cfd43 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertInvoiceSuccessCreateMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertInvoiceSuccessCreateMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Sales\Test\Constraint;
 
 use Magento\Sales\Test\Page\Adminhtml\OrderView;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertInvoiceSuccessCreateMessage
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertInvoiceWithShipmentSuccessMessage.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertInvoiceWithShipmentSuccessMessage.php
index dee20ee6e3f931d9ec59cf129ab4048cabcc4824..15582ebab753641fa97d9e21fec6af17a38cc93d 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertInvoiceWithShipmentSuccessMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertInvoiceWithShipmentSuccessMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Sales\Test\Constraint;
 
 use Magento\Sales\Test\Page\Adminhtml\OrderView;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertInvoiceWithShipmentSuccessMessage
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertNoCreditMemoButton.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertNoCreditMemoButton.php
index 1830982dc35b5aa410a2f3f90c35c4af93631f04..27168972b067265f5064f06edd8674a5524eaf72 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertNoCreditMemoButton.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertNoCreditMemoButton.php
@@ -9,7 +9,7 @@ namespace Magento\Sales\Test\Constraint;
 use Magento\Sales\Test\Fixture\OrderInjectable;
 use Magento\Sales\Test\Page\Adminhtml\OrderIndex;
 use Magento\Sales\Test\Page\Adminhtml\OrderView;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertNoCreditMemoButton
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertNoInvoiceButton.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertNoInvoiceButton.php
index faf9c3848f7fba07399aba4f65a35a3836be8a42..448ec5ef79605fdb8801b869f6c849850727739a 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertNoInvoiceButton.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertNoInvoiceButton.php
@@ -9,7 +9,7 @@ namespace Magento\Sales\Test\Constraint;
 use Magento\Sales\Test\Fixture\OrderInjectable;
 use Magento\Sales\Test\Page\Adminhtml\OrderIndex;
 use Magento\Sales\Test\Page\Adminhtml\OrderView;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertNoInvoiceButton
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderButtonsAvailable.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderButtonsAvailable.php
index f4fea87c5ea42d3c94425856c40026eed6dd0ac3..4e28fce3ab6084a9628b9e1c0d572a76003b334d 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderButtonsAvailable.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderButtonsAvailable.php
@@ -7,7 +7,7 @@
 namespace Magento\Sales\Test\Constraint;
 
 use Magento\Sales\Test\Page\SalesOrder;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertOrderButtonsAvailable
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderButtonsUnavailable.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderButtonsUnavailable.php
index 2642586da0bb2af63ac85294fc30ec068de7af8b..1a2171ee10c930de1968fda06587dcc64d851bb5 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderButtonsUnavailable.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderButtonsUnavailable.php
@@ -9,7 +9,7 @@ namespace Magento\Sales\Test\Constraint;
 use Magento\Sales\Test\Fixture\OrderInjectable;
 use Magento\Sales\Test\Page\Adminhtml\OrderIndex;
 use Magento\Sales\Test\Page\Adminhtml\OrderView;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertOrderButtonsUnavailable
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderCancelMassActionFailMessage.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderCancelMassActionFailMessage.php
index c466e7bb75c9ed5f8e63da3b75748ba52cd1802d..890c0724d7d3a8d80c7c94737c73ad65bc1b1c15 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderCancelMassActionFailMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderCancelMassActionFailMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Sales\Test\Constraint;
 
 use Magento\Sales\Test\Page\Adminhtml\OrderIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertOrderCancelMassActionFailMessage
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderCancelMassActionSuccessMessage.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderCancelMassActionSuccessMessage.php
index 3471a9bc34922c8e99b9a09e504aea246e1eec3d..2714f10fbb2081083b2226219039d20fcd59a2eb 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderCancelMassActionSuccessMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderCancelMassActionSuccessMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Sales\Test\Constraint;
 
 use Magento\Sales\Test\Page\Adminhtml\OrderIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertOrderCancelMassActionSuccessMessage
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderCancelSuccessMessage.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderCancelSuccessMessage.php
index b8859fad542f39d0e47d648ba85e739d5fea6336..5c164d1aee7ca5f4d98158bd4fbabf50097e6bc6 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderCancelSuccessMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderCancelSuccessMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Sales\Test\Constraint;
 
 use Magento\Sales\Test\Page\Adminhtml\OrderView;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertOrderCancelSuccessMessage
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderGrandTotal.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderGrandTotal.php
index 002ae82bde4e83c30ec55165b3e857a269554587..317e93fbb00161b74eda8cff1e20681abab1559f 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderGrandTotal.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderGrandTotal.php
@@ -7,7 +7,7 @@
 namespace Magento\Sales\Test\Constraint;
 
 use Magento\Sales\Test\Page\Adminhtml\OrderView;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertOrderGrandTotal
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderInOrdersGrid.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderInOrdersGrid.php
index a02eacd05f20fe2217d660ab0ea71c46a1870b4f..691173f3cc28d44be7af94ed9bf87f7cb9aaf726 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderInOrdersGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderInOrdersGrid.php
@@ -8,7 +8,7 @@ namespace Magento\Sales\Test\Constraint;
 
 use Magento\Sales\Test\Fixture\OrderInjectable;
 use Magento\Sales\Test\Page\Adminhtml\OrderIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertOrderInOrdersGrid
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderInOrdersGridOnFrontend.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderInOrdersGridOnFrontend.php
index be39a398072ec2b96e5f59175dd9f7a602569b19..8b4dd2454da918f594c65a8643636c53d2fe94b0 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderInOrdersGridOnFrontend.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderInOrdersGridOnFrontend.php
@@ -10,8 +10,8 @@ use Magento\Customer\Test\Fixture\CustomerInjectable;
 use Magento\Customer\Test\Page\CustomerAccountIndex;
 use Magento\Sales\Test\Fixture\OrderInjectable;
 use Magento\Sales\Test\Page\OrderHistory;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\ObjectManager;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\ObjectManager;
 
 /**
  * Class AssertOrderInOrdersGridOnFrontend
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderMassOnHoldSuccessMessage.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderMassOnHoldSuccessMessage.php
index 57cf7ce184fe299cfc15601dd2a2680fb546298c..1f1508c0c422ae9e061dfcc4cd6f005bbd1a914b 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderMassOnHoldSuccessMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderMassOnHoldSuccessMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Sales\Test\Constraint;
 
 use Magento\Sales\Test\Page\Adminhtml\OrderIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertOrderMassOnHoldSuccessMessage
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderNotInOrdersGrid.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderNotInOrdersGrid.php
index 7960d579a4f2d4c8e3cd055bd79dfd1500562ab5..c89d729ef6e6b5518028288119b1af33adf4f952 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderNotInOrdersGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderNotInOrdersGrid.php
@@ -8,7 +8,7 @@ namespace Magento\Sales\Test\Constraint;
 
 use Magento\Sales\Test\Fixture\OrderInjectable;
 use Magento\Sales\Test\Page\Adminhtml\OrderIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertOrderNotInOrdersGrid
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderNotVisibleOnMyAccount.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderNotVisibleOnMyAccount.php
index 3ea3556f69db105a36ef21b94a7c54b3c322d93f..595a9428edaf972135a32ff0e08d040a4b643a53 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderNotVisibleOnMyAccount.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderNotVisibleOnMyAccount.php
@@ -10,8 +10,8 @@ use Magento\Customer\Test\Fixture\CustomerInjectable;
 use Magento\Customer\Test\Page\CustomerAccountIndex;
 use Magento\Sales\Test\Fixture\OrderInjectable;
 use Magento\Sales\Test\Page\OrderHistory;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\ObjectManager;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\ObjectManager;
 
 /**
  * Class AssertOrderNotVisibleOnMyAccount
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderOnHoldFailMessage.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderOnHoldFailMessage.php
index 828155468a5a8355e3c705ea8c9a8e0bf995d0e8..2c7a6342539be30df9851e4af463a0b2877a46ed 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderOnHoldFailMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderOnHoldFailMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Sales\Test\Constraint;
 
 use Magento\Sales\Test\Page\Adminhtml\OrderIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertOrderOnHoldFailMessage
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderOnHoldSuccessMessage.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderOnHoldSuccessMessage.php
index 0ac614fd93545076c2d6f5de2fe51a57ba4f9945..38d9ff38c11a4c93434c20511d5361444194daca 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderOnHoldSuccessMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderOnHoldSuccessMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Sales\Test\Constraint;
 
 use Magento\Sales\Test\Page\Adminhtml\OrderIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertOrderOnHoldSuccessMessage
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderReleaseFailMessage.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderReleaseFailMessage.php
index 425e708fea9d68ea1c47de7694f5f179f6167a99..a672710661db1d8f5fe9514c3d3c684af945aaea 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderReleaseFailMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderReleaseFailMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Sales\Test\Constraint;
 
 use Magento\Sales\Test\Page\Adminhtml\OrderIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertOrderReleaseFailMessage
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderReleaseSuccessMessage.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderReleaseSuccessMessage.php
index 6844fa76977758dbb6fa4bf0c04ac92073e83595..2fd559d9a3c2d325195b66246df1d40dfd8a5e55 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderReleaseSuccessMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderReleaseSuccessMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Sales\Test\Constraint;
 
 use Magento\Sales\Test\Page\Adminhtml\OrderIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertOrderReleaseSuccessMessage
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderStatusDuplicateStatus.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderStatusDuplicateStatus.php
index 401787f33474e491137d02dcbda7b7ebccfd355c..4e6788febec0d855e43c6e12668f3e92a2b45b8f 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderStatusDuplicateStatus.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderStatusDuplicateStatus.php
@@ -7,7 +7,7 @@
 namespace Magento\Sales\Test\Constraint;
 
 use Magento\Sales\Test\Page\Adminhtml\OrderStatusNew;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertOrderStatusDuplicateStatus
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderStatusInGrid.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderStatusInGrid.php
index c9cab376d3b1603d1964d01d4f43eaad35a4e4f8..de3cd7e0311f96e6004204601aa782fdba97c83f 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderStatusInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderStatusInGrid.php
@@ -8,7 +8,7 @@ namespace Magento\Sales\Test\Constraint;
 
 use Magento\Sales\Test\Fixture\OrderStatus;
 use Magento\Sales\Test\Page\Adminhtml\OrderStatusIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertOrderStatusInGrid
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderStatusIsCorrect.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderStatusIsCorrect.php
index 9c9179d99497d5890dae9f4ae250caca964b6200..dc5d15ca4eb5c6c98be66465bb34eb17252e69d4 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderStatusIsCorrect.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderStatusIsCorrect.php
@@ -8,7 +8,7 @@ namespace Magento\Sales\Test\Constraint;
 
 use Magento\Sales\Test\Page\Adminhtml\OrderIndex;
 use Magento\Sales\Test\Page\Adminhtml\OrderView;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertOrderStatusIsCorrect
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderStatusNotAssigned.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderStatusNotAssigned.php
index 494b6f7fa8a32b026acd422b7616daa06f9b13b5..5fa8631ae83b566d57b2bedd44c578b9e7a5e8ea 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderStatusNotAssigned.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderStatusNotAssigned.php
@@ -8,7 +8,7 @@ namespace Magento\Sales\Test\Constraint;
 
 use Magento\Sales\Test\Fixture\OrderStatus;
 use Magento\Sales\Test\Page\Adminhtml\OrderStatusIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertOrderStatusNotAssigned
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderStatusSuccessAssignMessage.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderStatusSuccessAssignMessage.php
index a68f4baa55859435925cbb10b75054e0c084e5c7..e75979c48235c5c7dc8ff8b3b2f9f8a169c9feef 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderStatusSuccessAssignMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderStatusSuccessAssignMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Sales\Test\Constraint;
 
 use Magento\Sales\Test\Page\Adminhtml\OrderStatusIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertOrderStatusSuccessAssignMessage
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderStatusSuccessCreateMessage.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderStatusSuccessCreateMessage.php
index 760d8e0bae3b71b22b7a19457091dd3584739af0..486b801dbed5c02e07b08753d1b2f256003a523e 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderStatusSuccessCreateMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderStatusSuccessCreateMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Sales\Test\Constraint;
 
 use Magento\Sales\Test\Page\Adminhtml\OrderStatusIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertOrderStatusSuccessCreateMessage
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderStatusSuccessUnassignMessage.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderStatusSuccessUnassignMessage.php
index 1f6465ab0ae160bdd62438da9c4a59357080bb12..bc30beb1c1e3a3749329a3463bee4a31262f547a 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderStatusSuccessUnassignMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderStatusSuccessUnassignMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Sales\Test\Constraint;
 
 use Magento\Sales\Test\Page\Adminhtml\OrderStatusIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertOrderStatusSuccessUnassignMessage
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderSuccessCreateMessage.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderSuccessCreateMessage.php
index d5a501662a8326200157f9f0a5e91bb7822210bd..11582827fd8b014d63729cf89c91f9c1ef8b7dee 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderSuccessCreateMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrderSuccessCreateMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Sales\Test\Constraint;
 
 use Magento\Sales\Test\Page\Adminhtml\OrderView;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertOrderSuccessCreateMessage
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrdersInOrdersGrid.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrdersInOrdersGrid.php
index 36067368dd885bbda02462f9f0907c75835a3e6e..5f6e0e6dc22586b80229a082ad93c50d68c689c3 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrdersInOrdersGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertOrdersInOrdersGrid.php
@@ -8,7 +8,7 @@ namespace Magento\Sales\Test\Constraint;
 
 use Magento\Sales\Test\Fixture\OrderInjectable;
 use Magento\Sales\Test\Page\Adminhtml\OrderIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertOrdersInOrdersGrid
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertProductInItemsOrderedGrid.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertProductInItemsOrderedGrid.php
index 078aaaac15334f302788557d05f240e4260d328c..ac10f70210745182a3233081c3b773b797a26aed 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertProductInItemsOrderedGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertProductInItemsOrderedGrid.php
@@ -8,8 +8,8 @@ namespace Magento\Sales\Test\Constraint;
 
 use Magento\Sales\Test\Block\Adminhtml\Order\Create\Items;
 use Magento\Sales\Test\Page\Adminhtml\OrderCreateIndex;
-use Mtf\Constraint\AbstractAssertForm;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Constraint\AbstractAssertForm;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Assert product was added to Items Ordered grid in customer account on Order creation page backend.
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertRefundInCreditMemoTab.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertRefundInCreditMemoTab.php
index a821193e2b1e22ee1d90dd79869b4cbff92aa86c..21e33cea1ef6b1080165d62c4112b1db2f67c75b 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertRefundInCreditMemoTab.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertRefundInCreditMemoTab.php
@@ -10,7 +10,7 @@ use Magento\Sales\Test\Block\Adminhtml\Order\View\Tab\CreditMemos\Grid;
 use Magento\Sales\Test\Fixture\OrderInjectable;
 use Magento\Sales\Test\Page\Adminhtml\OrderIndex;
 use Magento\Sales\Test\Page\Adminhtml\OrderView;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertRefundInCreditMemoTab
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertRefundInRefundsGrid.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertRefundInRefundsGrid.php
index ffdaf05743f28f18a0b53e6d59bbdf973490aac5..9583a712adee58939be76ca8113397c8b465bfce 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertRefundInRefundsGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertRefundInRefundsGrid.php
@@ -8,7 +8,7 @@ namespace Magento\Sales\Test\Constraint;
 
 use Magento\Sales\Test\Fixture\OrderInjectable;
 use Magento\Sales\Test\Page\Adminhtml\CreditMemoIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertRefundInRefundsGrid
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertRefundSuccessCreateMessage.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertRefundSuccessCreateMessage.php
index fd74aa59a15e4cda88c9726173ec90569297a139..d619f949f4e83331471b0847c3b6d7095ee833e4 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertRefundSuccessCreateMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertRefundSuccessCreateMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Sales\Test\Constraint;
 
 use Magento\Sales\Test\Page\Adminhtml\OrderView;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertRefundSuccessCreateMessage
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertReorderStatusIsCorrect.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertReorderStatusIsCorrect.php
index 0d3aad30ad1a1f219b2d002e2153ae88e0de44f2..46e188fe74d2015442300d98382dfff20cd3f3a3 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertReorderStatusIsCorrect.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertReorderStatusIsCorrect.php
@@ -9,7 +9,7 @@ namespace Magento\Sales\Test\Constraint;
 use Magento\Sales\Test\Fixture\OrderInjectable;
 use Magento\Sales\Test\Page\Adminhtml\OrderIndex;
 use Magento\Sales\Test\Page\Adminhtml\OrderView;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertReorderStatusIsCorrect
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertSalesPrintOrderBillingAddress.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertSalesPrintOrderBillingAddress.php
index 01e8c1ca9084aea131900ded0082b65baf15f345..8c6c78230ea1781b1d80f91512359e6c28e3f812 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertSalesPrintOrderBillingAddress.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertSalesPrintOrderBillingAddress.php
@@ -8,7 +8,7 @@ namespace Magento\Sales\Test\Constraint;
 
 use Magento\Customer\Test\Fixture\AddressInjectable;
 use Magento\Sales\Test\Page\SalesGuestPrint;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Assert that BillingAddress printed correctly on sales guest print page.
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertSalesPrintOrderGrandTotal.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertSalesPrintOrderGrandTotal.php
index 362a43cd644723dc6c22ce4d9f3685c62ac00c48..586d9925e8ac9e9b74cd01fe6e69dddedc396c7d 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertSalesPrintOrderGrandTotal.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertSalesPrintOrderGrandTotal.php
@@ -7,7 +7,7 @@
 namespace Magento\Sales\Test\Constraint;
 
 use Magento\Sales\Test\Page\SalesGuestPrint;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Assert that Grand Total price was printed correctly on sales guest print page.
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertSalesPrintOrderPaymentMethod.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertSalesPrintOrderPaymentMethod.php
index f50ada3b1719e5215ba65bde5204e4e22c1b9e05..dab302d4283218b50693ed2794d51c14496e4966 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertSalesPrintOrderPaymentMethod.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertSalesPrintOrderPaymentMethod.php
@@ -7,7 +7,7 @@
 namespace Magento\Sales\Test\Constraint;
 
 use Magento\Sales\Test\Page\SalesGuestPrint;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Assert that payment method was printed correctly on sales guest print page.
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertSalesPrintOrderProducts.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertSalesPrintOrderProducts.php
index bc359b7f343b92fad52beeda1f4fa92aa9b1e430..05940cb7bc5ce5975adf34f151ca7a8cc0eea4b1 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertSalesPrintOrderProducts.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertSalesPrintOrderProducts.php
@@ -7,8 +7,8 @@
 namespace Magento\Sales\Test\Constraint;
 
 use Magento\Sales\Test\Page\SalesGuestPrint;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Assert that products printed correctly on sales guest print page.
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertUnholdButton.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertUnholdButton.php
index fa07944b9ed11747d414a43d26b3487d800cda85..dc9aab4a6a6da420a44788c3734c1c0ef5633405 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertUnholdButton.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertUnholdButton.php
@@ -9,7 +9,7 @@ namespace Magento\Sales\Test\Constraint;
 use Magento\Sales\Test\Fixture\OrderInjectable;
 use Magento\Sales\Test\Page\Adminhtml\OrderIndex;
 use Magento\Sales\Test\Page\Adminhtml\OrderView;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertUnholdButton
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Page/Adminhtml/OrderCreditMemoNew.xml b/dev/tests/functional/tests/app/Magento/Sales/Test/Page/Adminhtml/OrderCreditMemoNew.xml
index f7c762432c4d70b557badfc7bd57c5047ea75f76..08bab6e84bf9809b1b24344753cebad4db51af8b 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Page/Adminhtml/OrderCreditMemoNew.xml
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Page/Adminhtml/OrderCreditMemoNew.xml
@@ -17,5 +17,10 @@
             <locator>#edit_form</locator>
             <strategy>css selector</strategy>
         </formBlock>
+        <totalsBlock>
+            <class>Magento\Sales\Test\Block\Adminhtml\Order\Creditmemo\Totals</class>
+            <locator>.creditmemo-totals</locator>
+            <strategy>css selector</strategy>
+        </totalsBlock>
     </blocks>
 </page>
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Page/SalesOrderShipmentNew.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Page/SalesOrderShipmentNew.php
index 70fd8a828474ad11e9e24c368a556d22a5bfd059..352f752784045a12c0f3549332fbf48832a82844 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/Page/SalesOrderShipmentNew.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Page/SalesOrderShipmentNew.php
@@ -6,9 +6,9 @@
 
 namespace Magento\Sales\Test\Page;
 
-use Mtf\Client\Element\Locator;
-use Mtf\Factory\Factory;
-use Mtf\Page\Page;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Factory\Factory;
+use Magento\Mtf\Page\Page;
 
 /**
  * Class SalesOrder
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/AddProductsStep.php b/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/AddProductsStep.php
index 7106416ff98e5b53ce36a69edc5d9f2266e5d656..ed71060eb94032aae9d31f875bac42634fd6efdf 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/AddProductsStep.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/AddProductsStep.php
@@ -7,7 +7,7 @@
 namespace Magento\Sales\Test\TestStep;
 
 use Magento\Sales\Test\Page\Adminhtml\OrderCreateIndex;
-use Mtf\TestStep\TestStepInterface;
+use Magento\Mtf\TestStep\TestStepInterface;
 
 /**
  * Class AddProductsStep
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/AddRecentlyViewedProductsToCartStep.php b/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/AddRecentlyViewedProductsToCartStep.php
index 3955d13be0037958089135b297068403451ead57..d995a2c78298b4d2932cf9836377407933f321eb 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/AddRecentlyViewedProductsToCartStep.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/AddRecentlyViewedProductsToCartStep.php
@@ -7,7 +7,7 @@
 namespace Magento\Sales\Test\TestStep;
 
 use Magento\Sales\Test\Page\Adminhtml\OrderCreateIndex;
-use Mtf\TestStep\TestStepInterface;
+use Magento\Mtf\TestStep\TestStepInterface;
 
 /**
  * Add Recently Viewed Products to cart.
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/ConfigureProductsStep.php b/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/ConfigureProductsStep.php
index 887a578b2167de6fcfaf24f70d3d881ed189dde7..af0c71dbfcdfe76e2fc6e85a8cb68dc126a4c5c4 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/ConfigureProductsStep.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/ConfigureProductsStep.php
@@ -7,7 +7,7 @@
 namespace Magento\Sales\Test\TestStep;
 
 use Magento\Sales\Test\Page\Adminhtml\OrderCreateIndex;
-use Mtf\TestStep\TestStepInterface;
+use Magento\Mtf\TestStep\TestStepInterface;
 
 /**
  * Configure products options on backend order.
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/CreateNewOrderStep.php b/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/CreateNewOrderStep.php
index c0c320d6257c47553dbd176762080dd1908c939b..72b6789e700658faded052aaa929ff870dc8e32b 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/CreateNewOrderStep.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/CreateNewOrderStep.php
@@ -7,7 +7,7 @@
 namespace Magento\Sales\Test\TestStep;
 
 use Magento\Sales\Test\Page\Adminhtml\OrderIndex;
-use Mtf\TestStep\TestStepInterface;
+use Magento\Mtf\TestStep\TestStepInterface;
 
 /**
  * Class CreateNewOrderStep
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/FillBillingAddressStep.php b/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/FillBillingAddressStep.php
index 21519711065fef9d75ff044126b2c215efe7c7af..a5931b05e83d8b5418f6c128ccbb4f25ce307ff2 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/FillBillingAddressStep.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/FillBillingAddressStep.php
@@ -8,7 +8,7 @@ namespace Magento\Sales\Test\TestStep;
 
 use Magento\Customer\Test\Fixture\AddressInjectable;
 use Magento\Sales\Test\Page\Adminhtml\OrderCreateIndex;
-use Mtf\TestStep\TestStepInterface;
+use Magento\Mtf\TestStep\TestStepInterface;
 
 /**
  * Fill Sales Data.
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/OpenSalesOrdersStep.php b/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/OpenSalesOrdersStep.php
index 6deab5e8fe9b93d95c3f3727d0df1ec107c31794..1be4db9517179c5e3815217234e2c296534ed5b6 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/OpenSalesOrdersStep.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/OpenSalesOrdersStep.php
@@ -7,7 +7,7 @@
 namespace Magento\Sales\Test\TestStep;
 
 use Magento\Sales\Test\Page\Adminhtml\OrderIndex;
-use Mtf\TestStep\TestStepInterface;
+use Magento\Mtf\TestStep\TestStepInterface;
 
 /**
  * Class OpenSalesOrdersStep
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/PrintOrderOnFrontendStep.php b/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/PrintOrderOnFrontendStep.php
index af8be31ec7c7e49fddbb9f6eaf656e9ab1e62470..a810a3ca608a2cd7927e12316d731b3b4ce47d4a 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/PrintOrderOnFrontendStep.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/PrintOrderOnFrontendStep.php
@@ -7,8 +7,8 @@
 namespace Magento\Sales\Test\TestStep;
 
 use Magento\Sales\Test\Page\SalesGuestView;
-use Mtf\Client\Browser;
-use Mtf\TestStep\TestStepInterface;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\TestStep\TestStepInterface;
 
 /**
  * Click on "Print Order" button.
@@ -25,16 +25,16 @@ class PrintOrderOnFrontendStep implements TestStepInterface
     /**
      * Browser.
      *
-     * @var Browser
+     * @var BrowserInterface
      */
     protected $browser;
 
     /**
      * @constructor
      * @param SalesGuestView $salesGuestView
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      */
-    public function __construct(SalesGuestView $salesGuestView, Browser $browser)
+    public function __construct(SalesGuestView $salesGuestView, BrowserInterface $browser)
     {
         $this->salesGuestView = $salesGuestView;
         $this->browser = $browser;
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/ReorderStep.php b/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/ReorderStep.php
index b3f7eaa7a0d3dbe9baef052159e003d61d60cf59..8485a0831ba0aaef8bfb49b81e610d30ea09d45c 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/ReorderStep.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/ReorderStep.php
@@ -7,7 +7,7 @@
 namespace Magento\Sales\Test\TestStep;
 
 use Magento\Sales\Test\Page\Adminhtml\OrderView;
-use Mtf\TestStep\TestStepInterface;
+use Magento\Mtf\TestStep\TestStepInterface;
 
 /**
  * Class ReorderStep
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/SelectCustomerOrderStep.php b/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/SelectCustomerOrderStep.php
index a88e41d3bfb99b4a53b787a4264ef65c1b431c67..8c1d84dd8ea81053acd4a03ae53d691ae4b593a3 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/SelectCustomerOrderStep.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/SelectCustomerOrderStep.php
@@ -8,7 +8,7 @@ namespace Magento\Sales\Test\TestStep;
 
 use Magento\Customer\Test\Fixture\CustomerInjectable;
 use Magento\Sales\Test\Page\Adminhtml\OrderCreateIndex;
-use Mtf\TestStep\TestStepInterface;
+use Magento\Mtf\TestStep\TestStepInterface;
 
 /**
  * Class SelectCustomerOrderStep
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/SelectPaymentMethodForOrderStep.php b/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/SelectPaymentMethodForOrderStep.php
index 9c523d6db89c6c84349004bf717183280dd40ad9..73b774cb7c3d761780cd58e6e82c74f19f872252 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/SelectPaymentMethodForOrderStep.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/SelectPaymentMethodForOrderStep.php
@@ -7,7 +7,7 @@
 namespace Magento\Sales\Test\TestStep;
 
 use Magento\Sales\Test\Page\Adminhtml\OrderCreateIndex;
-use Mtf\TestStep\TestStepInterface;
+use Magento\Mtf\TestStep\TestStepInterface;
 
 /**
  * Class SelectPaymentMethodForOrderStep
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/SelectShippingMethodForOrderStep.php b/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/SelectShippingMethodForOrderStep.php
index 96dffd305c8c278bafaa78797f5ddbf23807a786..8b9a8d370cf501eefd82252cb275dc5e52863fcd 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/SelectShippingMethodForOrderStep.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/SelectShippingMethodForOrderStep.php
@@ -7,7 +7,7 @@
 namespace Magento\Sales\Test\TestStep;
 
 use Magento\Sales\Test\Page\Adminhtml\OrderCreateIndex;
-use Mtf\TestStep\TestStepInterface;
+use Magento\Mtf\TestStep\TestStepInterface;
 
 /**
  * Class SelectShippingMethodForOrderStep
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/SelectStoreStep.php b/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/SelectStoreStep.php
index d3945c15ad7e03e90da1e9065ca243e54c7d7468..d8e82f4e2bc7177c97bb14d0f8f33959679d3a61 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/SelectStoreStep.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/SelectStoreStep.php
@@ -8,7 +8,7 @@ namespace Magento\Sales\Test\TestStep;
 
 use Magento\Sales\Test\Page\Adminhtml\OrderCreateIndex;
 use Magento\Store\Test\Fixture\Store;
-use Mtf\TestStep\TestStepInterface;
+use Magento\Mtf\TestStep\TestStepInterface;
 
 /**
  * Class SelectStoreStep
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/SubmitOrderStep.php b/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/SubmitOrderStep.php
index 0623946e4c2e3e7ddbe5e6c973a491eb0d255b72..f9195c378758104fbc27cdc72e155dc59e21d6e3 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/SubmitOrderStep.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/SubmitOrderStep.php
@@ -10,8 +10,8 @@ use Magento\Customer\Test\Fixture\AddressInjectable;
 use Magento\Customer\Test\Fixture\CustomerInjectable;
 use Magento\Sales\Test\Page\Adminhtml\OrderCreateIndex;
 use Magento\Sales\Test\Page\Adminhtml\OrderView;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\TestStep\TestStepInterface;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\TestStep\TestStepInterface;
 
 /**
  * Submit Order step.
@@ -46,7 +46,7 @@ class SubmitOrderStep implements TestStepInterface
      * @param FixtureFactory $fixtureFactory
      * @param CustomerInjectable $customer
      * @param AddressInjectable $billingAddress
-     * @param \Mtf\Fixture\FixtureInterface[] $products
+     * @param \Magento\Mtf\Fixture\FixtureInterface[] $products
      */
     public function __construct(
         OrderCreateIndex $orderCreateIndex,
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/UpdateProductsDataStep.php b/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/UpdateProductsDataStep.php
index 8302240bdd7441a8c7f7b6cdfea76b59b9ad1b5e..525b5b430edf93d2f0c9894676edd0d6f9276069 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/UpdateProductsDataStep.php
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/UpdateProductsDataStep.php
@@ -7,7 +7,7 @@
 namespace Magento\Sales\Test\TestStep;
 
 use Magento\Sales\Test\Page\Adminhtml\OrderCreateIndex;
-use Mtf\TestStep\TestStepInterface;
+use Magento\Mtf\TestStep\TestStepInterface;
 
 /**
  * Class UpdateProductsDataStep
diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/etc/scenario.xml b/dev/tests/functional/tests/app/Magento/Sales/Test/etc/scenario.xml
index a6d5580a48132d15f6fa6d6f4e6d5e63fb8d8782..fb2d6e3eb72468d481f27e77883cc4d8190584c2 100644
--- a/dev/tests/functional/tests/app/Magento/Sales/Test/etc/scenario.xml
+++ b/dev/tests/functional/tests/app/Magento/Sales/Test/etc/scenario.xml
@@ -5,7 +5,7 @@
  * See COPYING.txt for license details.
  */
 -->
-<scenarios xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../vendor/magento/mtf/Mtf/Config/etc/scenario.xsd">
+<scenarios xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../vendor/magento/mtf/Magento/Mtf/Config/etc/scenario.xsd">
     <scenario name="ReorderOrderEntityTest" module="Magento_Sales">
         <methods>
             <method name="test">
diff --git a/dev/tests/functional/tests/app/Magento/Shipping/Test/Block/Adminhtml/Order/Tracking.php b/dev/tests/functional/tests/app/Magento/Shipping/Test/Block/Adminhtml/Order/Tracking.php
index b55425200e73c09adcb8d047ea03405d5bdc81cb..9b4b3aa98aca839fa3ab0aa60bf89db68e41a21a 100644
--- a/dev/tests/functional/tests/app/Magento/Shipping/Test/Block/Adminhtml/Order/Tracking.php
+++ b/dev/tests/functional/tests/app/Magento/Shipping/Test/Block/Adminhtml/Order/Tracking.php
@@ -7,8 +7,8 @@
 namespace Magento\Shipping\Test\Block\Adminhtml\Order;
 
 use Magento\Shipping\Test\Block\Adminhtml\Order\Tracking\Item;
-use Mtf\Block\Block;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class Tracking
diff --git a/dev/tests/functional/tests/app/Magento/Shipping/Test/Block/Adminhtml/Order/Tracking/Item.php b/dev/tests/functional/tests/app/Magento/Shipping/Test/Block/Adminhtml/Order/Tracking/Item.php
index dd3d4c017035b77a09cdf5b46d5ab284ba9906dc..df2c3cc1a8eb1a6377bf83531aa344f142ce153a 100644
--- a/dev/tests/functional/tests/app/Magento/Shipping/Test/Block/Adminhtml/Order/Tracking/Item.php
+++ b/dev/tests/functional/tests/app/Magento/Shipping/Test/Block/Adminhtml/Order/Tracking/Item.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Shipping\Test\Block\Adminhtml\Order\Tracking;
 
-use Mtf\Block\Form;
+use Magento\Mtf\Block\Form;
 
 /**
  * Class Item
diff --git a/dev/tests/functional/tests/app/Magento/Shipping/Test/Block/Order/Info.php b/dev/tests/functional/tests/app/Magento/Shipping/Test/Block/Order/Info.php
index 79414714d808b9eb3abfcd08ea1d6df747220165..b5ca395ff72ed92a89231aba8714b6484d53ed00 100644
--- a/dev/tests/functional/tests/app/Magento/Shipping/Test/Block/Order/Info.php
+++ b/dev/tests/functional/tests/app/Magento/Shipping/Test/Block/Order/Info.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Shipping\Test\Block\Order;
 
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Info block on order's view page.
diff --git a/dev/tests/functional/tests/app/Magento/Shipping/Test/Block/Order/Shipment.php b/dev/tests/functional/tests/app/Magento/Shipping/Test/Block/Order/Shipment.php
index a27dfcb6c3c6e786c4ec50298e62daed01e39e7b..496229684077ae0d0ea0a8afd378cd4cde195559 100644
--- a/dev/tests/functional/tests/app/Magento/Shipping/Test/Block/Order/Shipment.php
+++ b/dev/tests/functional/tests/app/Magento/Shipping/Test/Block/Order/Shipment.php
@@ -7,8 +7,8 @@
 namespace Magento\Shipping\Test\Block\Order;
 
 use Magento\Shipping\Test\Block\Order\Shipment\Items;
-use Mtf\Block\Block;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class Shipment
diff --git a/dev/tests/functional/tests/app/Magento/Shipping/Test/Block/Order/Shipment/Items.php b/dev/tests/functional/tests/app/Magento/Shipping/Test/Block/Order/Shipment/Items.php
index 69b2eb4e618578ce25c4d0a31d1ce67d471b006e..463f84b7f87437413255d0027f6231810ee7d129 100644
--- a/dev/tests/functional/tests/app/Magento/Shipping/Test/Block/Order/Shipment/Items.php
+++ b/dev/tests/functional/tests/app/Magento/Shipping/Test/Block/Order/Shipment/Items.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Shipping\Test\Block\Order\Shipment;
 
-use Mtf\Block\Block;
+use Magento\Mtf\Block\Block;
 
 /**
  * Class Items
diff --git a/dev/tests/functional/tests/app/Magento/Shipping/Test/Constraint/AssertNoShipButton.php b/dev/tests/functional/tests/app/Magento/Shipping/Test/Constraint/AssertNoShipButton.php
index 8a0b406fee8c0f69837d7db06772de313915617b..ae61d24ecd11359c52df316824c27d0d19a03fcc 100644
--- a/dev/tests/functional/tests/app/Magento/Shipping/Test/Constraint/AssertNoShipButton.php
+++ b/dev/tests/functional/tests/app/Magento/Shipping/Test/Constraint/AssertNoShipButton.php
@@ -9,7 +9,7 @@ namespace Magento\Shipping\Test\Constraint;
 use Magento\Sales\Test\Fixture\OrderInjectable;
 use Magento\Sales\Test\Page\Adminhtml\OrderIndex;
 use Magento\Sales\Test\Page\Adminhtml\OrderView;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertNoShipButton
diff --git a/dev/tests/functional/tests/app/Magento/Shipping/Test/Constraint/AssertShipmentInShipmentsGrid.php b/dev/tests/functional/tests/app/Magento/Shipping/Test/Constraint/AssertShipmentInShipmentsGrid.php
index ee51687746f49b540099c10a00cf9784418fda13..144fab6e4b9d4780bd550c8e0193250d36aa985a 100644
--- a/dev/tests/functional/tests/app/Magento/Shipping/Test/Constraint/AssertShipmentInShipmentsGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Shipping/Test/Constraint/AssertShipmentInShipmentsGrid.php
@@ -8,7 +8,7 @@ namespace Magento\Shipping\Test\Constraint;
 
 use Magento\Sales\Test\Fixture\OrderInjectable;
 use Magento\Shipping\Test\Page\Adminhtml\ShipmentIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertShipmentInShipmentsGrid
diff --git a/dev/tests/functional/tests/app/Magento/Shipping/Test/Constraint/AssertShipmentInShipmentsTab.php b/dev/tests/functional/tests/app/Magento/Shipping/Test/Constraint/AssertShipmentInShipmentsTab.php
index abb101e24fa1fe9d7c87d1381c46c3874efc194b..76997e744f74c9b07317f87f40df400a56857b39 100644
--- a/dev/tests/functional/tests/app/Magento/Shipping/Test/Constraint/AssertShipmentInShipmentsTab.php
+++ b/dev/tests/functional/tests/app/Magento/Shipping/Test/Constraint/AssertShipmentInShipmentsTab.php
@@ -9,7 +9,7 @@ namespace Magento\Shipping\Test\Constraint;
 use Magento\Sales\Test\Fixture\OrderInjectable;
 use Magento\Sales\Test\Page\Adminhtml\OrderIndex;
 use Magento\Sales\Test\Page\Adminhtml\OrderView;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertShipmentInShipmentsTab
diff --git a/dev/tests/functional/tests/app/Magento/Shipping/Test/Constraint/AssertShipmentItems.php b/dev/tests/functional/tests/app/Magento/Shipping/Test/Constraint/AssertShipmentItems.php
index 68a79182af9f399d37297d4733e88a81c60fcd69..84d5d5ff797e3835c48f1277ed1e41a887cda428 100644
--- a/dev/tests/functional/tests/app/Magento/Shipping/Test/Constraint/AssertShipmentItems.php
+++ b/dev/tests/functional/tests/app/Magento/Shipping/Test/Constraint/AssertShipmentItems.php
@@ -10,7 +10,7 @@ use Magento\Sales\Test\Constraint\AbstractAssertItems;
 use Magento\Sales\Test\Fixture\OrderInjectable;
 use Magento\Shipping\Test\Page\Adminhtml\SalesShipmentView;
 use Magento\Shipping\Test\Page\Adminhtml\ShipmentIndex;
-use Mtf\ObjectManager;
+use Magento\Mtf\ObjectManager;
 
 /**
  * Class AssertShipmentItems
diff --git a/dev/tests/functional/tests/app/Magento/Shipping/Test/Constraint/AssertShipmentSuccessCreateMessage.php b/dev/tests/functional/tests/app/Magento/Shipping/Test/Constraint/AssertShipmentSuccessCreateMessage.php
index adffababcc307c81f825f513a6e05f37a8d21949..ce32f38f424c4b3433c2186ddcc989d3548f1f2f 100644
--- a/dev/tests/functional/tests/app/Magento/Shipping/Test/Constraint/AssertShipmentSuccessCreateMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Shipping/Test/Constraint/AssertShipmentSuccessCreateMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Shipping\Test\Constraint;
 
 use Magento\Sales\Test\Page\Adminhtml\OrderView;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertShipmentSuccessCreateMessage
diff --git a/dev/tests/functional/tests/app/Magento/Shipping/Test/Constraint/AssertShippingMethodOnPrintOrder.php b/dev/tests/functional/tests/app/Magento/Shipping/Test/Constraint/AssertShippingMethodOnPrintOrder.php
index ca2bce698bb7036ad24c53a39863324717300f3b..2caba99cd140e11be67618957f371b8090b4eb62 100644
--- a/dev/tests/functional/tests/app/Magento/Shipping/Test/Constraint/AssertShippingMethodOnPrintOrder.php
+++ b/dev/tests/functional/tests/app/Magento/Shipping/Test/Constraint/AssertShippingMethodOnPrintOrder.php
@@ -7,7 +7,7 @@
 namespace Magento\Shipping\Test\Constraint;
 
 use Magento\Sales\Test\Page\SalesGuestPrint;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Assert that shipping method was printed correctly on sales guest print page.
diff --git a/dev/tests/functional/tests/app/Magento/Shipping/Test/Fixture/Method.php b/dev/tests/functional/tests/app/Magento/Shipping/Test/Fixture/Method.php
index 00d76e6901332fcc689d83115d8e1110edb823ee..9c4d03783129221cee78452ef37d551b41448b86 100644
--- a/dev/tests/functional/tests/app/Magento/Shipping/Test/Fixture/Method.php
+++ b/dev/tests/functional/tests/app/Magento/Shipping/Test/Fixture/Method.php
@@ -6,8 +6,8 @@
 
 namespace Magento\Shipping\Test\Fixture;
 
-use Mtf\Factory\Factory;
-use Mtf\Fixture\DataFixture;
+use Magento\Mtf\Factory\Factory;
+use Magento\Mtf\Fixture\DataFixture;
 
 /**
  * Class Method
diff --git a/dev/tests/functional/tests/app/Magento/Shipping/Test/Repository/Method.php b/dev/tests/functional/tests/app/Magento/Shipping/Test/Repository/Method.php
index 7bb948e124ed12683ad14cc83a9dc9da48237813..6f13fc81e55b5b61db5ba169d6f32f203162c7ec 100644
--- a/dev/tests/functional/tests/app/Magento/Shipping/Test/Repository/Method.php
+++ b/dev/tests/functional/tests/app/Magento/Shipping/Test/Repository/Method.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Shipping\Test\Repository;
 
-use Mtf\Repository\AbstractRepository;
+use Magento\Mtf\Repository\AbstractRepository;
 
 /**
  * Class Method Repository
diff --git a/dev/tests/functional/tests/app/Magento/Sitemap/Test/Block/Adminhtml/SitemapGrid.php b/dev/tests/functional/tests/app/Magento/Sitemap/Test/Block/Adminhtml/SitemapGrid.php
index 31b9f7ab48759e7470cb25c62b8fb43ac83c9691..2781dec51ad6bdea3d7dd1f3aa2cfd8f279e85a3 100644
--- a/dev/tests/functional/tests/app/Magento/Sitemap/Test/Block/Adminhtml/SitemapGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Sitemap/Test/Block/Adminhtml/SitemapGrid.php
@@ -7,7 +7,7 @@
 namespace Magento\Sitemap\Test\Block\Adminhtml;
 
 use Magento\Backend\Test\Block\Widget\Grid;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class SitemapGrid
diff --git a/dev/tests/functional/tests/app/Magento/Sitemap/Test/Constraint/AssertSitemapContent.php b/dev/tests/functional/tests/app/Magento/Sitemap/Test/Constraint/AssertSitemapContent.php
index 46e7f97b2d091595c56443eb7b65f40397dd4274..d476d23c66ca418fef38814ce6121377c042aa29 100644
--- a/dev/tests/functional/tests/app/Magento/Sitemap/Test/Constraint/AssertSitemapContent.php
+++ b/dev/tests/functional/tests/app/Magento/Sitemap/Test/Constraint/AssertSitemapContent.php
@@ -6,12 +6,12 @@
 
 namespace Magento\Sitemap\Test\Constraint;
 
-use Magento\Catalog\Test\Fixture\CatalogCategory;
+use Magento\Catalog\Test\Fixture\Category;
 use Magento\Catalog\Test\Fixture\CatalogProductSimple;
 use Magento\Cms\Test\Fixture\CmsPage;
 use Magento\Sitemap\Test\Fixture\Sitemap;
 use Magento\Sitemap\Test\Page\Adminhtml\SitemapIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertSitemapContent
@@ -30,7 +30,7 @@ class AssertSitemapContent extends AbstractConstraint
      *  - CMS page url
      *
      * @param CatalogProductSimple $product
-     * @param CatalogCategory $catalog
+     * @param Category $catalog
      * @param CmsPage $cmsPage
      * @param Sitemap $sitemap
      * @param SitemapIndex $sitemapIndex
@@ -38,7 +38,7 @@ class AssertSitemapContent extends AbstractConstraint
      */
     public function processAssert(
         CatalogProductSimple $product,
-        CatalogCategory $catalog,
+        Category $catalog,
         CmsPage $cmsPage,
         Sitemap $sitemap,
         SitemapIndex $sitemapIndex
diff --git a/dev/tests/functional/tests/app/Magento/Sitemap/Test/Constraint/AssertSitemapFailFolderSaveMessage.php b/dev/tests/functional/tests/app/Magento/Sitemap/Test/Constraint/AssertSitemapFailFolderSaveMessage.php
index 96efcf67f95d6eac0313227755074b3bc7650fe0..3dbdc67069c21762708a9993ad5ba15bf11173dd 100644
--- a/dev/tests/functional/tests/app/Magento/Sitemap/Test/Constraint/AssertSitemapFailFolderSaveMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Sitemap/Test/Constraint/AssertSitemapFailFolderSaveMessage.php
@@ -8,7 +8,7 @@ namespace Magento\Sitemap\Test\Constraint;
 
 use Magento\Sitemap\Test\Fixture\Sitemap;
 use Magento\Sitemap\Test\Page\Adminhtml\SitemapIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertSitemapFailFolderSaveMessage
diff --git a/dev/tests/functional/tests/app/Magento/Sitemap/Test/Constraint/AssertSitemapFailPathSaveMessage.php b/dev/tests/functional/tests/app/Magento/Sitemap/Test/Constraint/AssertSitemapFailPathSaveMessage.php
index 75aadae7fedbb54b86d13fd2824bd60895479905..62beed7801a351d75444924ae31427bd3d3c0220 100644
--- a/dev/tests/functional/tests/app/Magento/Sitemap/Test/Constraint/AssertSitemapFailPathSaveMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Sitemap/Test/Constraint/AssertSitemapFailPathSaveMessage.php
@@ -8,7 +8,7 @@ namespace Magento\Sitemap\Test\Constraint;
 
 use Magento\Sitemap\Test\Fixture\Sitemap;
 use Magento\Sitemap\Test\Page\Adminhtml\SitemapIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertSitemapFailPathSaveMessage
diff --git a/dev/tests/functional/tests/app/Magento/Sitemap/Test/Constraint/AssertSitemapInGrid.php b/dev/tests/functional/tests/app/Magento/Sitemap/Test/Constraint/AssertSitemapInGrid.php
index c39dfeb0baaa7e87cb07b777140e0f7446f3a62b..4e0ed7081b8057e1bb962f42da8ca958199d8783 100644
--- a/dev/tests/functional/tests/app/Magento/Sitemap/Test/Constraint/AssertSitemapInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Sitemap/Test/Constraint/AssertSitemapInGrid.php
@@ -8,7 +8,7 @@ namespace Magento\Sitemap\Test\Constraint;
 
 use Magento\Sitemap\Test\Fixture\Sitemap;
 use Magento\Sitemap\Test\Page\Adminhtml\SitemapIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertSitemapInGrid
diff --git a/dev/tests/functional/tests/app/Magento/Sitemap/Test/Constraint/AssertSitemapNotInGrid.php b/dev/tests/functional/tests/app/Magento/Sitemap/Test/Constraint/AssertSitemapNotInGrid.php
index 8aa3253d7695e90adf2163a7670ad737877c7532..3b9c67aba378594a4b5b947126e290ba99758b3b 100644
--- a/dev/tests/functional/tests/app/Magento/Sitemap/Test/Constraint/AssertSitemapNotInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Sitemap/Test/Constraint/AssertSitemapNotInGrid.php
@@ -8,7 +8,7 @@ namespace Magento\Sitemap\Test\Constraint;
 
 use Magento\Sitemap\Test\Fixture\Sitemap;
 use Magento\Sitemap\Test\Page\Adminhtml\SitemapIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertSitemapNotInGrid
diff --git a/dev/tests/functional/tests/app/Magento/Sitemap/Test/Constraint/AssertSitemapSuccessDeleteMessage.php b/dev/tests/functional/tests/app/Magento/Sitemap/Test/Constraint/AssertSitemapSuccessDeleteMessage.php
index d3665d2124bb871ff4d42eecd8d38cd0cbe20874..ea5001caa1f668c7b7fff3b708e23c01289ca166 100644
--- a/dev/tests/functional/tests/app/Magento/Sitemap/Test/Constraint/AssertSitemapSuccessDeleteMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Sitemap/Test/Constraint/AssertSitemapSuccessDeleteMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Sitemap\Test\Constraint;
 
 use Magento\Sitemap\Test\Page\Adminhtml\SitemapIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertSitemapSuccessDeleteMessage
diff --git a/dev/tests/functional/tests/app/Magento/Sitemap/Test/Constraint/AssertSitemapSuccessGenerateMessage.php b/dev/tests/functional/tests/app/Magento/Sitemap/Test/Constraint/AssertSitemapSuccessGenerateMessage.php
index c9939c74e8dff6cd2196f7f4e47c97f87d003c71..77e58ce48e148638de09e08d987d87efd097bc31 100644
--- a/dev/tests/functional/tests/app/Magento/Sitemap/Test/Constraint/AssertSitemapSuccessGenerateMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Sitemap/Test/Constraint/AssertSitemapSuccessGenerateMessage.php
@@ -8,7 +8,7 @@ namespace Magento\Sitemap\Test\Constraint;
 
 use Magento\Sitemap\Test\Fixture\Sitemap;
 use Magento\Sitemap\Test\Page\Adminhtml\SitemapIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertSitemapSuccessGenerateMessage
diff --git a/dev/tests/functional/tests/app/Magento/Sitemap/Test/Constraint/AssertSitemapSuccessSaveAndGenerateMessages.php b/dev/tests/functional/tests/app/Magento/Sitemap/Test/Constraint/AssertSitemapSuccessSaveAndGenerateMessages.php
index cd540c0045e28aa071ac5c14aa98e34e37b6183f..4cd76f6839c316cb1fb479366769c9699aeda828 100644
--- a/dev/tests/functional/tests/app/Magento/Sitemap/Test/Constraint/AssertSitemapSuccessSaveAndGenerateMessages.php
+++ b/dev/tests/functional/tests/app/Magento/Sitemap/Test/Constraint/AssertSitemapSuccessSaveAndGenerateMessages.php
@@ -8,7 +8,7 @@ namespace Magento\Sitemap\Test\Constraint;
 
 use Magento\Sitemap\Test\Fixture\Sitemap;
 use Magento\Sitemap\Test\Page\Adminhtml\SitemapIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertSitemapSuccessSaveAndGenerateMessages
diff --git a/dev/tests/functional/tests/app/Magento/Sitemap/Test/Constraint/AssertSitemapSuccessSaveMessage.php b/dev/tests/functional/tests/app/Magento/Sitemap/Test/Constraint/AssertSitemapSuccessSaveMessage.php
index 0d78b7b7b58dfb3cdb5ee8a2737af1a2669f11a0..d2c8eec17934df79d407fca570c30e00cbd1923b 100644
--- a/dev/tests/functional/tests/app/Magento/Sitemap/Test/Constraint/AssertSitemapSuccessSaveMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Sitemap/Test/Constraint/AssertSitemapSuccessSaveMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Sitemap\Test\Constraint;
 
 use Magento\Sitemap\Test\Page\Adminhtml\SitemapIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertSitemapSuccessSaveMessage
diff --git a/dev/tests/functional/tests/app/Magento/Sitemap/Test/Fixture/Sitemap.php b/dev/tests/functional/tests/app/Magento/Sitemap/Test/Fixture/Sitemap.php
index 2984eaf84361ce08bcbeda0085c89ce125123fa8..d2d40bd3713e8d00dfc5991b7334ecd6559192eb 100644
--- a/dev/tests/functional/tests/app/Magento/Sitemap/Test/Fixture/Sitemap.php
+++ b/dev/tests/functional/tests/app/Magento/Sitemap/Test/Fixture/Sitemap.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Sitemap\Test\Fixture;
 
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Class Sitemap
diff --git a/dev/tests/functional/tests/app/Magento/Sitemap/Test/Handler/Sitemap/Curl.php b/dev/tests/functional/tests/app/Magento/Sitemap/Test/Handler/Sitemap/Curl.php
index 839745e0da0cd241cee6bea9b19fe9681b3cf4cc..103986e35d013561db85c4097663eeceb90f4fd7 100644
--- a/dev/tests/functional/tests/app/Magento/Sitemap/Test/Handler/Sitemap/Curl.php
+++ b/dev/tests/functional/tests/app/Magento/Sitemap/Test/Handler/Sitemap/Curl.php
@@ -8,12 +8,12 @@ namespace Magento\Sitemap\Test\Handler\Sitemap;
 
 use Magento\Backend\Test\Handler\Extractor;
 use Magento\Sitemap\Test\Handler\Sitemap;
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Handler\Curl as AbstractCurl;
-use Mtf\System\Config;
-use Mtf\Util\Protocol\CurlInterface;
-use Mtf\Util\Protocol\CurlTransport;
-use Mtf\Util\Protocol\CurlTransport\BackendDecorator;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Handler\Curl as AbstractCurl;
+use Magento\Mtf\System\Config;
+use Magento\Mtf\Util\Protocol\CurlInterface;
+use Magento\Mtf\Util\Protocol\CurlTransport;
+use Magento\Mtf\Util\Protocol\CurlTransport\BackendDecorator;
 
 /**
  * Class Curl
diff --git a/dev/tests/functional/tests/app/Magento/Sitemap/Test/Handler/Sitemap/SitemapInterface.php b/dev/tests/functional/tests/app/Magento/Sitemap/Test/Handler/Sitemap/SitemapInterface.php
index 87c9938c46f66bdcd10f1f29c0040d5895355652..97246710c6ee357ced2f91b3dd19f74f2b3c9443 100644
--- a/dev/tests/functional/tests/app/Magento/Sitemap/Test/Handler/Sitemap/SitemapInterface.php
+++ b/dev/tests/functional/tests/app/Magento/Sitemap/Test/Handler/Sitemap/SitemapInterface.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Sitemap\Test\Handler\Sitemap;
 
-use Mtf\Handler\HandlerInterface;
+use Magento\Mtf\Handler\HandlerInterface;
 
 /**
  * Interface SitemapInterface
diff --git a/dev/tests/functional/tests/app/Magento/Sitemap/Test/Repository/Sitemap.php b/dev/tests/functional/tests/app/Magento/Sitemap/Test/Repository/Sitemap.php
index 80077b4fead7f813ee2064d55e4dc015d1a72ecf..a2f28611e98efef01be6be312eacd5ea029ce699 100644
--- a/dev/tests/functional/tests/app/Magento/Sitemap/Test/Repository/Sitemap.php
+++ b/dev/tests/functional/tests/app/Magento/Sitemap/Test/Repository/Sitemap.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Sitemap\Test\Repository;
 
-use Mtf\Repository\AbstractRepository;
+use Magento\Mtf\Repository\AbstractRepository;
 
 /**
  * Class Sitemap
diff --git a/dev/tests/functional/tests/app/Magento/Sitemap/Test/TestCase/CreateSitemapEntityTest.php b/dev/tests/functional/tests/app/Magento/Sitemap/Test/TestCase/CreateSitemapEntityTest.php
index f41186ef378c4de6269bea299adf4951083e6383..9a6cec214f08147a37c1932359b65e8ec1a7f7d4 100644
--- a/dev/tests/functional/tests/app/Magento/Sitemap/Test/TestCase/CreateSitemapEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Sitemap/Test/TestCase/CreateSitemapEntityTest.php
@@ -9,7 +9,7 @@ namespace Magento\Sitemap\Test\TestCase;
 use Magento\Sitemap\Test\Fixture\Sitemap;
 use Magento\Sitemap\Test\Page\Adminhtml\SitemapIndex;
 use Magento\Sitemap\Test\Page\Adminhtml\SitemapNew;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Cover creating SitemapEntity
@@ -22,11 +22,16 @@ use Mtf\TestCase\Injectable;
  *  5. Click "Save" button.
  *  6. Perform all assertions.
  *
- * @group XML_Sitemap_(MX)
+ * @group XML_Sitemap_(PS)
  * @ZephyrId MAGETWO-23277
  */
 class CreateSitemapEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'PS';
+    /* end tags */
+
     /**
      * @var SitemapIndex
      */
diff --git a/dev/tests/functional/tests/app/Magento/Sitemap/Test/TestCase/DeleteSitemapEntityTest.php b/dev/tests/functional/tests/app/Magento/Sitemap/Test/TestCase/DeleteSitemapEntityTest.php
index 2f3f268d444a3110f0aa9d33a4de4a82a96d50cb..56371fb69ad3d0420eaade513e0efd1594a34b0a 100644
--- a/dev/tests/functional/tests/app/Magento/Sitemap/Test/TestCase/DeleteSitemapEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Sitemap/Test/TestCase/DeleteSitemapEntityTest.php
@@ -9,7 +9,7 @@ namespace Magento\Sitemap\Test\TestCase;
 use Magento\Sitemap\Test\Fixture\Sitemap;
 use Magento\Sitemap\Test\Page\Adminhtml\SitemapEdit;
 use Magento\Sitemap\Test\Page\Adminhtml\SitemapIndex;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Cover deleting Sitemap Entity
@@ -24,11 +24,16 @@ use Mtf\TestCase\Injectable;
  *  4. Click "Delete" button.
  *  5. Perform all assertions.
  *
- * @group XML_Sitemap_(MX)
+ * @group XML_Sitemap_(PS)
  * @ZephyrId MAGETWO-23296
  */
 class DeleteSitemapEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'PS';
+    /* end tags */
+
     /**
      * @var SitemapIndex
      */
diff --git a/dev/tests/functional/tests/app/Magento/Store/Test/Block/Switcher.php b/dev/tests/functional/tests/app/Magento/Store/Test/Block/Switcher.php
index ae64c8dbf0a3f24f765413671748a11a54ad8334..5883250551f492346b34c53a1ed856809f5570f2 100644
--- a/dev/tests/functional/tests/app/Magento/Store/Test/Block/Switcher.php
+++ b/dev/tests/functional/tests/app/Magento/Store/Test/Block/Switcher.php
@@ -8,8 +8,8 @@
 namespace Magento\Store\Test\Block;
 
 use Magento\Store\Test\Fixture\Store;
-use Mtf\Block\Block;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class Switcher
diff --git a/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreBackend.php b/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreBackend.php
index b23de9b65c68d7e22d90eea4b110f11f36e6b06e..feb77c84296540d05cadad89066a7c5186f20e93 100644
--- a/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreBackend.php
+++ b/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreBackend.php
@@ -8,7 +8,7 @@ namespace Magento\Store\Test\Constraint;
 
 use Magento\Backend\Test\Page\Adminhtml\SystemConfig;
 use Magento\Store\Test\Fixture\Store;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertStoreBackend
diff --git a/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreForm.php b/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreForm.php
index 07ab89295c4282e80d90685f92491fad472fcd6a..be32892ca3d349564ded7e385818b0a8ae8d57b9 100644
--- a/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreForm.php
+++ b/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreForm.php
@@ -9,7 +9,7 @@ namespace Magento\Store\Test\Constraint;
 use Magento\Backend\Test\Page\Adminhtml\StoreIndex;
 use Magento\Backend\Test\Page\Adminhtml\StoreNew;
 use Magento\Store\Test\Fixture\Store;
-use Mtf\Constraint\AbstractAssertForm;
+use Magento\Mtf\Constraint\AbstractAssertForm;
 
 /**
  * Class AssertStoreForm
diff --git a/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreFrontend.php b/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreFrontend.php
index 1c3fba6f7b4bbb2bfaa2713bc6d6f10d8f8b7b9d..3691c6d21e194664cfbb101b6faba9e7f67354ed 100644
--- a/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreFrontend.php
+++ b/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreFrontend.php
@@ -8,7 +8,7 @@ namespace Magento\Store\Test\Constraint;
 
 use Magento\Cms\Test\Page\CmsIndex;
 use Magento\Store\Test\Fixture\Store;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertStoreFrontend
diff --git a/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreGroupForm.php b/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreGroupForm.php
index 969adc59fa1de2a9aa6bef6403472e1599e6c950..59c77b4e2beff68d95c9a2f91fe5ad6b335b6988 100644
--- a/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreGroupForm.php
+++ b/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreGroupForm.php
@@ -9,7 +9,7 @@ namespace Magento\Store\Test\Constraint;
 use Magento\Backend\Test\Page\Adminhtml\EditGroup;
 use Magento\Backend\Test\Page\Adminhtml\StoreIndex;
 use Magento\Store\Test\Fixture\StoreGroup;
-use Mtf\Constraint\AbstractAssertForm;
+use Magento\Mtf\Constraint\AbstractAssertForm;
 
 /**
  * Class AssertStoreGroupForm
diff --git a/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreGroupInGrid.php b/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreGroupInGrid.php
index d402b84f8a7fdce5235b933e04ce880885eb9c02..51e0cd19cf59e0297792a23414873f6beb5c7a2b 100644
--- a/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreGroupInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreGroupInGrid.php
@@ -8,7 +8,7 @@ namespace Magento\Store\Test\Constraint;
 
 use Magento\Backend\Test\Page\Adminhtml\StoreIndex;
 use Magento\Store\Test\Fixture\StoreGroup;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertStoreGroupInGrid
diff --git a/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreGroupNotInGrid.php b/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreGroupNotInGrid.php
index 1e7a5cbc7d066a2a59950aab4f4f47aeb32944eb..c17267d296e1d9f42d2697a178938fd34ccb2fb0 100644
--- a/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreGroupNotInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreGroupNotInGrid.php
@@ -8,7 +8,7 @@ namespace Magento\Store\Test\Constraint;
 
 use Magento\Backend\Test\Page\Adminhtml\StoreIndex;
 use Magento\Store\Test\Fixture\StoreGroup;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertStoreGroupNotInGrid
diff --git a/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreGroupOnStoreViewForm.php b/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreGroupOnStoreViewForm.php
index d82b5c9636ec77d8b82e20bbb448ff7db3740505..e36072fade0cb7de8ad7ff6152c5c015612324c8 100644
--- a/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreGroupOnStoreViewForm.php
+++ b/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreGroupOnStoreViewForm.php
@@ -9,7 +9,7 @@ namespace Magento\Store\Test\Constraint;
 use Magento\Backend\Test\Page\Adminhtml\StoreIndex;
 use Magento\Backend\Test\Page\Adminhtml\StoreNew;
 use Magento\Store\Test\Fixture\StoreGroup;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertStoreGroupOnStoreViewForm
diff --git a/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreGroupSuccessDeleteAndBackupMessages.php b/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreGroupSuccessDeleteAndBackupMessages.php
index 2dd989863208ad310f1f874930e80b1576483fb6..b68b514a232c47cc2f2cda3412e3be2277fb7b61 100644
--- a/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreGroupSuccessDeleteAndBackupMessages.php
+++ b/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreGroupSuccessDeleteAndBackupMessages.php
@@ -7,7 +7,7 @@
 namespace Magento\Store\Test\Constraint;
 
 use Magento\Backend\Test\Page\Adminhtml\StoreIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertStoreGroupSuccessDeleteAndBackupMessages
diff --git a/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreGroupSuccessDeleteMessage.php b/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreGroupSuccessDeleteMessage.php
index 899edb2064a14c4c9e64cddb7ba22e474f9e2f7d..b69285e49ba7cc0dfa9204001a4c99d4db2ce366 100644
--- a/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreGroupSuccessDeleteMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreGroupSuccessDeleteMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Store\Test\Constraint;
 
 use Magento\Backend\Test\Page\Adminhtml\StoreIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertStoreGroupSuccessDeleteMessage
diff --git a/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreGroupSuccessSaveMessage.php b/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreGroupSuccessSaveMessage.php
index 73cf65fd967efa2bfa5d114c5c281a14a66bca53..1f78d946c067ecffe2800bdf5e2f51a926ca7a9e 100644
--- a/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreGroupSuccessSaveMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreGroupSuccessSaveMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Store\Test\Constraint;
 
 use Magento\Backend\Test\Page\Adminhtml\StoreIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertStoreGroupSuccessSaveMessage
diff --git a/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreInGrid.php b/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreInGrid.php
index f1532c19a5d1787d879faac40c468340b99a6b6b..b5078cc68bb9597d55575ba29435ee050c95ba40 100644
--- a/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreInGrid.php
@@ -8,7 +8,7 @@ namespace Magento\Store\Test\Constraint;
 
 use Magento\Backend\Test\Page\Adminhtml\StoreIndex;
 use Magento\Store\Test\Fixture\Store;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertStoreInGrid
diff --git a/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreNotInGrid.php b/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreNotInGrid.php
index 8868f0e5a2f66628121b6a23d79452c194b2d95b..a83a6a1954c6dc00e6c723e2d5a10e0b0c603e6d 100644
--- a/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreNotInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreNotInGrid.php
@@ -8,7 +8,7 @@ namespace Magento\Store\Test\Constraint;
 
 use Magento\Backend\Test\Page\Adminhtml\StoreIndex;
 use Magento\Store\Test\Fixture\Store;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertStoreNotInGrid
diff --git a/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreNotOnFrontend.php b/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreNotOnFrontend.php
index df68a3e6765d6ac23766d7203aca7c2dd5bbeafb..ab89a1a07bfca3f420014d9cbb0ed58627a8e59c 100644
--- a/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreNotOnFrontend.php
+++ b/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreNotOnFrontend.php
@@ -8,7 +8,7 @@ namespace Magento\Store\Test\Constraint;
 
 use Magento\Cms\Test\Page\CmsIndex;
 use Magento\Store\Test\Fixture\Store;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertStoreNotOnFrontend
diff --git a/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreSuccessDeleteAndBackupMessages.php b/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreSuccessDeleteAndBackupMessages.php
index 4301b9f84ad757d75c2599a64be9f28a9c297939..c91f10875d00783314fd0a46c43791893c867ba9 100644
--- a/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreSuccessDeleteAndBackupMessages.php
+++ b/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreSuccessDeleteAndBackupMessages.php
@@ -7,7 +7,7 @@
 namespace Magento\Store\Test\Constraint;
 
 use Magento\Backend\Test\Page\Adminhtml\StoreIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertStoreSuccessDeleteAndBackupMessages
diff --git a/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreSuccessDeleteMessage.php b/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreSuccessDeleteMessage.php
index 69f628c67bac3ce0a40cacfb597287b2bf056cbc..4f5f9edf2136fe1969c253dead321a5ca28d612b 100644
--- a/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreSuccessDeleteMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreSuccessDeleteMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Store\Test\Constraint;
 
 use Magento\Backend\Test\Page\Adminhtml\StoreIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertStoreSuccessDeleteMessage
diff --git a/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreSuccessSaveMessage.php b/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreSuccessSaveMessage.php
index 5ab2242d983675198874ca598d626260c63a3c7b..9d12f21870842d6a467dfc9a3f462f8d54b6e48b 100644
--- a/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreSuccessSaveMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertStoreSuccessSaveMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Store\Test\Constraint;
 
 use Magento\Backend\Test\Page\Adminhtml\StoreIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertStoreSuccessSaveMessage
diff --git a/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertWebsiteForm.php b/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertWebsiteForm.php
index c3f541646f3d2ac9de957d38594fa198e23b882d..757658db8bfe6bc29ccfaf2e75a5d84abe706151 100644
--- a/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertWebsiteForm.php
+++ b/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertWebsiteForm.php
@@ -9,7 +9,7 @@ namespace Magento\Store\Test\Constraint;
 use Magento\Backend\Test\Page\Adminhtml\EditWebsite;
 use Magento\Backend\Test\Page\Adminhtml\StoreIndex;
 use Magento\Store\Test\Fixture\Website;
-use Mtf\Constraint\AbstractAssertForm;
+use Magento\Mtf\Constraint\AbstractAssertForm;
 
 /**
  * Class AssertWebsiteForm
diff --git a/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertWebsiteInGrid.php b/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertWebsiteInGrid.php
index 157d0630bc07527cbc8c69f7dcc4bca85d905d2a..0656425f75ed92b3becb16e68b3782a935d21fb7 100644
--- a/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertWebsiteInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertWebsiteInGrid.php
@@ -8,7 +8,7 @@ namespace Magento\Store\Test\Constraint;
 
 use Magento\Backend\Test\Page\Adminhtml\StoreIndex;
 use Magento\Store\Test\Fixture\Website;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertWebsiteInGrid
diff --git a/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertWebsiteNotInGrid.php b/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertWebsiteNotInGrid.php
index 721b12c5b91560ee0f9d08d0e8b561374c7b77be..9c5dd627e30f893c335cfd9e2a1208f80126365d 100644
--- a/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertWebsiteNotInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertWebsiteNotInGrid.php
@@ -8,7 +8,7 @@ namespace Magento\Store\Test\Constraint;
 
 use Magento\Backend\Test\Page\Adminhtml\StoreIndex;
 use Magento\Store\Test\Fixture\Website;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertWebsiteNotInGrid
diff --git a/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertWebsiteOnStoreForm.php b/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertWebsiteOnStoreForm.php
index 8db25588f26482254c9f51fcaa3a89daaee35682..c7d76580c265beef4ca796aea466ab0a2f89e7c9 100644
--- a/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertWebsiteOnStoreForm.php
+++ b/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertWebsiteOnStoreForm.php
@@ -9,7 +9,7 @@ namespace Magento\Store\Test\Constraint;
 use Magento\Backend\Test\Page\Adminhtml\NewGroupIndex;
 use Magento\Backend\Test\Page\Adminhtml\StoreIndex;
 use Magento\Store\Test\Fixture\Website;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertWebsiteOnStoreForm
diff --git a/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertWebsiteSuccessDeleteAndBackupMessages.php b/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertWebsiteSuccessDeleteAndBackupMessages.php
index 5e925097b06bfc4a0289694e32d703eef707b1af..eee0dd61344acd072e19ea60d1672f941e1775ed 100644
--- a/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertWebsiteSuccessDeleteAndBackupMessages.php
+++ b/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertWebsiteSuccessDeleteAndBackupMessages.php
@@ -7,7 +7,7 @@
 namespace Magento\Store\Test\Constraint;
 
 use Magento\Backend\Test\Page\Adminhtml\StoreIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertWebsiteSuccessDeleteAndBackupMessages
diff --git a/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertWebsiteSuccessDeleteMessage.php b/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertWebsiteSuccessDeleteMessage.php
index 8f8dd74ea799c946d20ba02a548c31a793a6c9e0..c0e0f791c683db52889dbf626a6928988ab2f9e4 100644
--- a/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertWebsiteSuccessDeleteMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertWebsiteSuccessDeleteMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Store\Test\Constraint;
 
 use Magento\Backend\Test\Page\Adminhtml\StoreIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertWebsiteSuccessDeleteMessage
diff --git a/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertWebsiteSuccessSaveMessage.php b/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertWebsiteSuccessSaveMessage.php
index eb1f08c36405515d4e53010708632cfc9cfad6af..11bc68e2fc241c23232167ae341b7eefe938c3af 100644
--- a/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertWebsiteSuccessSaveMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Store/Test/Constraint/AssertWebsiteSuccessSaveMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Store\Test\Constraint;
 
 use Magento\Backend\Test\Page\Adminhtml\StoreIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertWebsiteSuccessSaveMessage
diff --git a/dev/tests/functional/tests/app/Magento/Store/Test/Fixture/Store.php b/dev/tests/functional/tests/app/Magento/Store/Test/Fixture/Store.php
index 081711218f0b41dd88f02076e6345529a578cb79..5762f119fe32eebea29cd55972b7a43231965782 100644
--- a/dev/tests/functional/tests/app/Magento/Store/Test/Fixture/Store.php
+++ b/dev/tests/functional/tests/app/Magento/Store/Test/Fixture/Store.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Store\Test\Fixture;
 
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Class Store
diff --git a/dev/tests/functional/tests/app/Magento/Store/Test/Fixture/Store/GroupId.php b/dev/tests/functional/tests/app/Magento/Store/Test/Fixture/Store/GroupId.php
index da70439f612af89b907c0f9845cd9bf9561ec72b..9ec18c42b26f24c545930874d1c8bee6f100469c 100644
--- a/dev/tests/functional/tests/app/Magento/Store/Test/Fixture/Store/GroupId.php
+++ b/dev/tests/functional/tests/app/Magento/Store/Test/Fixture/Store/GroupId.php
@@ -7,8 +7,8 @@
 namespace Magento\Store\Test\Fixture\Store;
 
 use Magento\Store\Test\Fixture\StoreGroup;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class GroupId
diff --git a/dev/tests/functional/tests/app/Magento/Store/Test/Fixture/StoreGroup.php b/dev/tests/functional/tests/app/Magento/Store/Test/Fixture/StoreGroup.php
index b19288b37e0ccb4317187f80e8a1a8dcb2ea4575..04dd14411c319574f10750eda3864102cf71de4e 100644
--- a/dev/tests/functional/tests/app/Magento/Store/Test/Fixture/StoreGroup.php
+++ b/dev/tests/functional/tests/app/Magento/Store/Test/Fixture/StoreGroup.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Store\Test\Fixture;
 
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Class StoreGroup
diff --git a/dev/tests/functional/tests/app/Magento/Store/Test/Fixture/StoreGroup/CategoryId.php b/dev/tests/functional/tests/app/Magento/Store/Test/Fixture/StoreGroup/CategoryId.php
index ba74a7cfd96f14502328daed57d843c2c470de85..ca4f11663f342c31e17e4a34188a980fd3c6cb59 100644
--- a/dev/tests/functional/tests/app/Magento/Store/Test/Fixture/StoreGroup/CategoryId.php
+++ b/dev/tests/functional/tests/app/Magento/Store/Test/Fixture/StoreGroup/CategoryId.php
@@ -6,9 +6,9 @@
 
 namespace Magento\Store\Test\Fixture\StoreGroup;
 
-use Magento\Catalog\Test\Fixture\CatalogCategory;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Catalog\Test\Fixture\Category;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class CategoryId
@@ -31,9 +31,9 @@ class CategoryId implements FixtureInterface
     protected $params;
 
     /**
-     * CatalogCategory fixture
+     * Category fixture
      *
-     * @var CatalogCategory
+     * @var Category
      */
     protected $category;
 
@@ -48,8 +48,8 @@ class CategoryId implements FixtureInterface
     {
         $this->params = $params;
         if (isset($data['dataSet'])) {
-            $category = $fixtureFactory->createByCode('catalogCategory', ['dataSet' => $data['dataSet']]);
-            /** @var CatalogCategory $category */
+            $category = $fixtureFactory->createByCode('category', ['dataSet' => $data['dataSet']]);
+            /** @var Category $category */
             if (!$category->getId()) {
                 $category->persist();
             }
@@ -92,9 +92,9 @@ class CategoryId implements FixtureInterface
     }
 
     /**
-     * Return CatalogCategory fixture
+     * Return Category fixture
      *
-     * @return CatalogCategory
+     * @return Category
      */
     public function getCategory()
     {
diff --git a/dev/tests/functional/tests/app/Magento/Store/Test/Fixture/StoreGroup/WebsiteId.php b/dev/tests/functional/tests/app/Magento/Store/Test/Fixture/StoreGroup/WebsiteId.php
index 47d8dabac75852500abcf3c2c94dbb7e060a67bf..36e20106ce00ee2eec6ab81e5d5150a5df11d2ae 100644
--- a/dev/tests/functional/tests/app/Magento/Store/Test/Fixture/StoreGroup/WebsiteId.php
+++ b/dev/tests/functional/tests/app/Magento/Store/Test/Fixture/StoreGroup/WebsiteId.php
@@ -7,8 +7,8 @@
 namespace Magento\Store\Test\Fixture\StoreGroup;
 
 use Magento\Store\Test\Fixture\Website;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class WebsiteId
diff --git a/dev/tests/functional/tests/app/Magento/Store/Test/Fixture/Website.php b/dev/tests/functional/tests/app/Magento/Store/Test/Fixture/Website.php
index 0dc41b477a6a5789e34381b5a01deae62a758b9c..c680e52135caffa8deac2f3776a66da2d44a7b96 100644
--- a/dev/tests/functional/tests/app/Magento/Store/Test/Fixture/Website.php
+++ b/dev/tests/functional/tests/app/Magento/Store/Test/Fixture/Website.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Store\Test\Fixture;
 
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Class Website
diff --git a/dev/tests/functional/tests/app/Magento/Store/Test/Handler/Store/Curl.php b/dev/tests/functional/tests/app/Magento/Store/Test/Handler/Store/Curl.php
index 421b937acd41bb6ba6af6f8a1873ea1f0faec858..7e21102b92fa77317a00c6675f4f5dd9cf5505d8 100644
--- a/dev/tests/functional/tests/app/Magento/Store/Test/Handler/Store/Curl.php
+++ b/dev/tests/functional/tests/app/Magento/Store/Test/Handler/Store/Curl.php
@@ -6,12 +6,12 @@
 
 namespace Magento\Store\Test\Handler\Store;
 
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Handler\Curl as AbstractCurl;
-use Mtf\System\Config;
-use Mtf\Util\Protocol\CurlInterface;
-use Mtf\Util\Protocol\CurlTransport;
-use Mtf\Util\Protocol\CurlTransport\BackendDecorator;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Handler\Curl as AbstractCurl;
+use Magento\Mtf\System\Config;
+use Magento\Mtf\Util\Protocol\CurlInterface;
+use Magento\Mtf\Util\Protocol\CurlTransport;
+use Magento\Mtf\Util\Protocol\CurlTransport\BackendDecorator;
 
 /**
  * Class Curl
diff --git a/dev/tests/functional/tests/app/Magento/Store/Test/Handler/Store/StoreInterface.php b/dev/tests/functional/tests/app/Magento/Store/Test/Handler/Store/StoreInterface.php
index 034b22d0ba952209e79d3aeddb2b06ae392f2c1d..87670c64cc8e0f98999594770c83d6a0090405f7 100644
--- a/dev/tests/functional/tests/app/Magento/Store/Test/Handler/Store/StoreInterface.php
+++ b/dev/tests/functional/tests/app/Magento/Store/Test/Handler/Store/StoreInterface.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Store\Test\Handler\Store;
 
-use Mtf\Handler\HandlerInterface;
+use Magento\Mtf\Handler\HandlerInterface;
 
 /**
  * Interface StoreInterface
diff --git a/dev/tests/functional/tests/app/Magento/Store/Test/Handler/StoreGroup/Curl.php b/dev/tests/functional/tests/app/Magento/Store/Test/Handler/StoreGroup/Curl.php
index 3aa9a6ce92009119dd1498895fa7848110f6c13a..2b0c1abbdde4f47a3eabc7ead74ba06cf2d6bfcd 100644
--- a/dev/tests/functional/tests/app/Magento/Store/Test/Handler/StoreGroup/Curl.php
+++ b/dev/tests/functional/tests/app/Magento/Store/Test/Handler/StoreGroup/Curl.php
@@ -6,12 +6,12 @@
 
 namespace Magento\Store\Test\Handler\StoreGroup;
 
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Handler\Curl as AbstractCurl;
-use Mtf\System\Config;
-use Mtf\Util\Protocol\CurlInterface;
-use Mtf\Util\Protocol\CurlTransport;
-use Mtf\Util\Protocol\CurlTransport\BackendDecorator;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Handler\Curl as AbstractCurl;
+use Magento\Mtf\System\Config;
+use Magento\Mtf\Util\Protocol\CurlInterface;
+use Magento\Mtf\Util\Protocol\CurlTransport;
+use Magento\Mtf\Util\Protocol\CurlTransport\BackendDecorator;
 
 /**
  * Class Curl
diff --git a/dev/tests/functional/tests/app/Magento/Store/Test/Handler/StoreGroup/StoreGroupInterface.php b/dev/tests/functional/tests/app/Magento/Store/Test/Handler/StoreGroup/StoreGroupInterface.php
index 6b57419e518bf3ce727daf2b8e2e45a1959f7268..9af46f18ae9988ffd6168e13ee75bf13a7cc8b78 100644
--- a/dev/tests/functional/tests/app/Magento/Store/Test/Handler/StoreGroup/StoreGroupInterface.php
+++ b/dev/tests/functional/tests/app/Magento/Store/Test/Handler/StoreGroup/StoreGroupInterface.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Store\Test\Handler\StoreGroup;
 
-use Mtf\Handler\HandlerInterface;
+use Magento\Mtf\Handler\HandlerInterface;
 
 /**
  * Interface StoreGroupInterface
diff --git a/dev/tests/functional/tests/app/Magento/Store/Test/Handler/Website/Curl.php b/dev/tests/functional/tests/app/Magento/Store/Test/Handler/Website/Curl.php
index 671d46f4a8d5d7448bd100b5fa1c90cdfa79b51f..9eb58a1be2668ea40c9b458edb3224316baa5c12 100644
--- a/dev/tests/functional/tests/app/Magento/Store/Test/Handler/Website/Curl.php
+++ b/dev/tests/functional/tests/app/Magento/Store/Test/Handler/Website/Curl.php
@@ -6,12 +6,12 @@
 
 namespace Magento\Store\Test\Handler\Website;
 
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Handler\Curl as AbstractCurl;
-use Mtf\System\Config;
-use Mtf\Util\Protocol\CurlInterface;
-use Mtf\Util\Protocol\CurlTransport;
-use Mtf\Util\Protocol\CurlTransport\BackendDecorator;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Handler\Curl as AbstractCurl;
+use Magento\Mtf\System\Config;
+use Magento\Mtf\Util\Protocol\CurlInterface;
+use Magento\Mtf\Util\Protocol\CurlTransport;
+use Magento\Mtf\Util\Protocol\CurlTransport\BackendDecorator;
 
 /**
  * Class Curl
diff --git a/dev/tests/functional/tests/app/Magento/Store/Test/Handler/Website/WebsiteInterface.php b/dev/tests/functional/tests/app/Magento/Store/Test/Handler/Website/WebsiteInterface.php
index c3f167b26d4e3f1642d488cda004147e1712186b..2f808d7607779aebffa6e31c2acbe9fc8e2cc4cb 100644
--- a/dev/tests/functional/tests/app/Magento/Store/Test/Handler/Website/WebsiteInterface.php
+++ b/dev/tests/functional/tests/app/Magento/Store/Test/Handler/Website/WebsiteInterface.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Store\Test\Handler\Website;
 
-use Mtf\Handler\HandlerInterface;
+use Magento\Mtf\Handler\HandlerInterface;
 
 /**
  * Interface WebsiteInterface
diff --git a/dev/tests/functional/tests/app/Magento/Store/Test/Repository/Store.php b/dev/tests/functional/tests/app/Magento/Store/Test/Repository/Store.php
index b839bb08082e958aaf00ef0e9cd51b8ca6725624..472aa3028cb23a8dd1a3c00195cf5f29796060ab 100644
--- a/dev/tests/functional/tests/app/Magento/Store/Test/Repository/Store.php
+++ b/dev/tests/functional/tests/app/Magento/Store/Test/Repository/Store.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Store\Test\Repository;
 
-use Mtf\Repository\AbstractRepository;
+use Magento\Mtf\Repository\AbstractRepository;
 
 /**
  * Class Store
diff --git a/dev/tests/functional/tests/app/Magento/Store/Test/Repository/StoreGroup.php b/dev/tests/functional/tests/app/Magento/Store/Test/Repository/StoreGroup.php
index a51aaba9dafee4277fd4fbe748cf95e37edd9d1f..fa01d8b222c6137d215e6cb9f1f8b054a2b0d947 100644
--- a/dev/tests/functional/tests/app/Magento/Store/Test/Repository/StoreGroup.php
+++ b/dev/tests/functional/tests/app/Magento/Store/Test/Repository/StoreGroup.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Store\Test\Repository;
 
-use Mtf\Repository\AbstractRepository;
+use Magento\Mtf\Repository\AbstractRepository;
 
 /**
  * Class StoreGroup
diff --git a/dev/tests/functional/tests/app/Magento/Store/Test/Repository/Website.php b/dev/tests/functional/tests/app/Magento/Store/Test/Repository/Website.php
index 97cef07a17e393072f3125f4044ba108cf2b9a48..7e0fce6fd06b01fee591cd7396c87a53e61c7618 100644
--- a/dev/tests/functional/tests/app/Magento/Store/Test/Repository/Website.php
+++ b/dev/tests/functional/tests/app/Magento/Store/Test/Repository/Website.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Store\Test\Repository;
 
-use Mtf\Repository\AbstractRepository;
+use Magento\Mtf\Repository\AbstractRepository;
 
 /**
  * Class Website
diff --git a/dev/tests/functional/tests/app/Magento/Store/Test/TestCase/CreateStoreEntityTest.php b/dev/tests/functional/tests/app/Magento/Store/Test/TestCase/CreateStoreEntityTest.php
index 164f80eeb78821da05dea0805416697061108654..3e796d62655d43403e8ed8ecf069def881c6b1a2 100644
--- a/dev/tests/functional/tests/app/Magento/Store/Test/TestCase/CreateStoreEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Store/Test/TestCase/CreateStoreEntityTest.php
@@ -9,7 +9,7 @@ namespace Magento\Store\Test\TestCase;
 use Magento\Backend\Test\Page\Adminhtml\StoreIndex;
 use Magento\Backend\Test\Page\Adminhtml\StoreNew;
 use Magento\Store\Test\Fixture\Store;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for CreateStoreEntity (Store Management)
@@ -31,6 +31,11 @@ use Mtf\TestCase\Injectable;
  */
 class CreateStoreEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'PS';
+    /* end tags */
+
     /**
      * Page StoreIndex
      *
diff --git a/dev/tests/functional/tests/app/Magento/Store/Test/TestCase/CreateStoreGroupEntityTest.php b/dev/tests/functional/tests/app/Magento/Store/Test/TestCase/CreateStoreGroupEntityTest.php
index 7e967ed222de1b469ae331693e43c2a2d0b9bd37..6edc800dfeabbb9e096f7da9ea24772aa78bdec3 100644
--- a/dev/tests/functional/tests/app/Magento/Store/Test/TestCase/CreateStoreGroupEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Store/Test/TestCase/CreateStoreGroupEntityTest.php
@@ -9,7 +9,7 @@ namespace Magento\Store\Test\TestCase;
 use Magento\Backend\Test\Page\Adminhtml\NewGroupIndex;
 use Magento\Backend\Test\Page\Adminhtml\StoreIndex;
 use Magento\Store\Test\Fixture\StoreGroup;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Create New StoreGroup (Store Management)
@@ -27,6 +27,11 @@ use Mtf\TestCase\Injectable;
  */
 class CreateStoreGroupEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'PS';
+    /* end tags */
+
     /**
      * Page StoreIndex
      *
diff --git a/dev/tests/functional/tests/app/Magento/Store/Test/TestCase/CreateWebsiteEntityTest.php b/dev/tests/functional/tests/app/Magento/Store/Test/TestCase/CreateWebsiteEntityTest.php
index 480cb27a3792945cf83c1e98f54cc684d9e2c45d..59b40358b13031b2d20ddbdd5b4ee0115136ed17 100644
--- a/dev/tests/functional/tests/app/Magento/Store/Test/TestCase/CreateWebsiteEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Store/Test/TestCase/CreateWebsiteEntityTest.php
@@ -9,7 +9,7 @@ namespace Magento\Store\Test\TestCase;
 use Magento\Backend\Test\Page\Adminhtml\NewWebsiteIndex;
 use Magento\Backend\Test\Page\Adminhtml\StoreIndex;
 use Magento\Store\Test\Fixture\Website;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Create Website (Store Management)
@@ -27,6 +27,11 @@ use Mtf\TestCase\Injectable;
  */
 class CreateWebsiteEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'PS';
+    /* end tags */
+
     /**
      * Page StoreIndex
      *
diff --git a/dev/tests/functional/tests/app/Magento/Store/Test/TestCase/DeleteStoreEntityTest.php b/dev/tests/functional/tests/app/Magento/Store/Test/TestCase/DeleteStoreEntityTest.php
index 03b1fa55edca2c84b01fd8b2c6b46ca8de1722ee..debf3cb6b6ea0e48cfd7c35629d4daee1b899eec 100644
--- a/dev/tests/functional/tests/app/Magento/Store/Test/TestCase/DeleteStoreEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Store/Test/TestCase/DeleteStoreEntityTest.php
@@ -11,7 +11,7 @@ use Magento\Backend\Test\Page\Adminhtml\StoreDelete;
 use Magento\Backend\Test\Page\Adminhtml\StoreIndex;
 use Magento\Backup\Test\Page\Adminhtml\BackupIndex;
 use Magento\Store\Test\Fixture\Store;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for DeleteStoreEntity
@@ -34,6 +34,11 @@ use Mtf\TestCase\Injectable;
  */
 class DeleteStoreEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'PS';
+    /* end tags */
+
     /**
      * Page BackupIndex
      *
diff --git a/dev/tests/functional/tests/app/Magento/Store/Test/TestCase/DeleteStoreGroupEntityTest.php b/dev/tests/functional/tests/app/Magento/Store/Test/TestCase/DeleteStoreGroupEntityTest.php
index 72efdd31653e2c243b9fff5b595d1b99d1ae93c7..94f044c26e0c3ab00ed1a7298e0cce5acafc2d2b 100644
--- a/dev/tests/functional/tests/app/Magento/Store/Test/TestCase/DeleteStoreGroupEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Store/Test/TestCase/DeleteStoreGroupEntityTest.php
@@ -11,7 +11,7 @@ use Magento\Backend\Test\Page\Adminhtml\EditGroup;
 use Magento\Backend\Test\Page\Adminhtml\StoreIndex;
 use Magento\Backup\Test\Page\Adminhtml\BackupIndex;
 use Magento\Store\Test\Fixture\StoreGroup;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Delete StoreGroup (Store Management)
@@ -36,6 +36,11 @@ use Mtf\TestCase\Injectable;
  */
 class DeleteStoreGroupEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'PS';
+    /* end tags */
+
     /**
      * Page StoreIndex
      *
diff --git a/dev/tests/functional/tests/app/Magento/Store/Test/TestCase/DeleteWebsiteEntityTest.php b/dev/tests/functional/tests/app/Magento/Store/Test/TestCase/DeleteWebsiteEntityTest.php
index 468533015d994badf5d1336236ff9f9747e3005c..b540e04277f11e19a2e9e57b227994572384ff85 100644
--- a/dev/tests/functional/tests/app/Magento/Store/Test/TestCase/DeleteWebsiteEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Store/Test/TestCase/DeleteWebsiteEntityTest.php
@@ -11,7 +11,7 @@ use Magento\Backend\Test\Page\Adminhtml\EditWebsite;
 use Magento\Backend\Test\Page\Adminhtml\StoreIndex;
 use Magento\Backup\Test\Page\Adminhtml\BackupIndex;
 use Magento\Store\Test\Fixture\Website;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Delete Website (Store Management)
@@ -36,6 +36,11 @@ use Mtf\TestCase\Injectable;
  */
 class DeleteWebsiteEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'PS';
+    /* end tags */
+
     /**
      * Page StoreIndex
      *
diff --git a/dev/tests/functional/tests/app/Magento/Store/Test/TestCase/StoreTest.php b/dev/tests/functional/tests/app/Magento/Store/Test/TestCase/StoreTest.php
index e6863e808e18a6e86f51bd80d48014cdb2beb7d8..ab189ce353019e5e821f66713b8491f63bb87aaf 100644
--- a/dev/tests/functional/tests/app/Magento/Store/Test/TestCase/StoreTest.php
+++ b/dev/tests/functional/tests/app/Magento/Store/Test/TestCase/StoreTest.php
@@ -8,11 +8,15 @@
 
 namespace Magento\Store\Test\TestCase;
 
-use Mtf\Factory\Factory;
-use Mtf\TestCase\Functional;
+use Magento\Mtf\Factory\Factory;
+use Magento\Mtf\TestCase\Functional;
 
 class StoreTest extends Functional
 {
+    /* tags */
+    const TEST_TYPE = 'acceptance_test';
+    /* end tags */
+
     /**
      * Login into backend area before test
      */
diff --git a/dev/tests/functional/tests/app/Magento/Store/Test/TestCase/UpdateStoreEntityTest.php b/dev/tests/functional/tests/app/Magento/Store/Test/TestCase/UpdateStoreEntityTest.php
index ae65f38425f95d7be850cc2bea52dde983031a29..9ead46a3f63cd8d26551fe3e7e851d3af779bcc8 100644
--- a/dev/tests/functional/tests/app/Magento/Store/Test/TestCase/UpdateStoreEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Store/Test/TestCase/UpdateStoreEntityTest.php
@@ -9,7 +9,7 @@ namespace Magento\Store\Test\TestCase;
 use Magento\Backend\Test\Page\Adminhtml\EditStore;
 use Magento\Backend\Test\Page\Adminhtml\StoreIndex;
 use Magento\Store\Test\Fixture\Store;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for UpdateStoreEntity (Store Management)
@@ -31,6 +31,11 @@ use Mtf\TestCase\Injectable;
  */
 class UpdateStoreEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'PS';
+    /* end tags */
+
     /**
      * Page StoreIndex
      *
diff --git a/dev/tests/functional/tests/app/Magento/Store/Test/TestCase/UpdateStoreGroupEntityTest.php b/dev/tests/functional/tests/app/Magento/Store/Test/TestCase/UpdateStoreGroupEntityTest.php
index 7e51ba749368f913880f6806e2eeb1293bc4b266..5ec7ac7473b68fdb031ac71f273bdf63b2a98ae6 100644
--- a/dev/tests/functional/tests/app/Magento/Store/Test/TestCase/UpdateStoreGroupEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Store/Test/TestCase/UpdateStoreGroupEntityTest.php
@@ -9,7 +9,7 @@ namespace Magento\Store\Test\TestCase;
 use Magento\Backend\Test\Page\Adminhtml\EditGroup;
 use Magento\Backend\Test\Page\Adminhtml\StoreIndex;
 use Magento\Store\Test\Fixture\StoreGroup;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Update StoreGroup (Store Management)
@@ -32,6 +32,11 @@ use Mtf\TestCase\Injectable;
  */
 class UpdateStoreGroupEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'PS';
+    /* end tags */
+
     /**
      * Page StoreIndex
      *
diff --git a/dev/tests/functional/tests/app/Magento/Store/Test/TestCase/UpdateWebsiteEntityTest.php b/dev/tests/functional/tests/app/Magento/Store/Test/TestCase/UpdateWebsiteEntityTest.php
index a22cd2c40ff91fb9b939ecd47dab9fb486761c97..d1760123b0aef7c6bac03e8c20158b1a635f50ae 100644
--- a/dev/tests/functional/tests/app/Magento/Store/Test/TestCase/UpdateWebsiteEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Store/Test/TestCase/UpdateWebsiteEntityTest.php
@@ -9,8 +9,8 @@ namespace Magento\Store\Test\TestCase;
 use Magento\Backend\Test\Page\Adminhtml\EditWebsite;
 use Magento\Backend\Test\Page\Adminhtml\StoreIndex;
 use Magento\Store\Test\Fixture\Website;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Update Website (Store Management)
@@ -33,6 +33,11 @@ use Mtf\TestCase\Injectable;
  */
 class UpdateWebsiteEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'PS';
+    /* end tags */
+
     /**
      * Page StoreIndex
      *
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/Block/Adminhtml/Rate/Edit/Form.php b/dev/tests/functional/tests/app/Magento/Tax/Test/Block/Adminhtml/Rate/Edit/Form.php
index 8dfbf12c72c0fe3154359565c897033002102266..e488aa8dc201dfca4378e2c6cba362f4296f05ac 100644
--- a/dev/tests/functional/tests/app/Magento/Tax/Test/Block/Adminhtml/Rate/Edit/Form.php
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/Block/Adminhtml/Rate/Edit/Form.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Tax\Test\Block\Adminhtml\Rate\Edit;
 
-use Mtf\Block\Form as ParentForm;
+use Magento\Mtf\Block\Form as ParentForm;
 
 /**
  * Class Form
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/Block/Adminhtml/Rule/Edit/Form.php b/dev/tests/functional/tests/app/Magento/Tax/Test/Block/Adminhtml/Rule/Edit/Form.php
index 380fb956a24e63200a4bca27877d5d125e90d24d..41e9135fcad075d3f78cca15ece858e284c6e160 100644
--- a/dev/tests/functional/tests/app/Magento/Tax/Test/Block/Adminhtml/Rule/Edit/Form.php
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/Block/Adminhtml/Rule/Edit/Form.php
@@ -6,11 +6,11 @@
 
 namespace Magento\Tax\Test\Block\Adminhtml\Rule\Edit;
 
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Fixture\FixtureInterface;
 use Magento\Tax\Test\Fixture\TaxRule;
-use Mtf\Block\Form as FormInterface;
-use Mtf\Client\Element;
-use Mtf\Client\Element\Locator;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Client\Element\SimpleElement;
+use Magento\Mtf\Block\Form as FormInterface;
 
 /**
  * Form for tax rule creation.
@@ -112,12 +112,12 @@ class Form extends FormInterface
      * Fill the root form.
      *
      * @param FixtureInterface $fixture
-     * @param Element $element
+     * @param SimpleElement $element
      * @return $this|void
      *
      * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
-    public function fill(FixtureInterface $fixture, Element $element = null)
+    public function fill(FixtureInterface $fixture, SimpleElement $element = null)
     {
         $this->openAdditionalSettings();
         $this->_rootElement->click();
@@ -162,14 +162,12 @@ class Form extends FormInterface
         $taxRateDefaultMultiSelect = $this->taxRateDefaultMultiSelect;
         $this->browser->waitUntil(
             function () use ($rootForm, $taxRateDefaultMultiSelect) {
-                $rootForm->reinitRootElement();
                 $element = $rootForm->browser->find($taxRateDefaultMultiSelect);
                 return $element->isVisible() ? null : true;
             }
         );
         $this->browser->waitUntil(
             function () use ($rootForm, $taxRateMultiSelectList) {
-                $rootForm->reinitRootElement();
                 $element = $rootForm->browser->find($taxRateMultiSelectList);
                 return $element->isVisible() ? true : null;
             }
@@ -206,10 +204,10 @@ class Form extends FormInterface
      * Method to add new tax classes.
      *
      * @param array $taxClasses
-     * @param Element $element
+     * @param SimpleElement $element
      * @return void
      */
-    protected function addNewTaxClass(array $taxClasses, Element $element)
+    protected function addNewTaxClass(array $taxClasses, SimpleElement $element)
     {
         foreach ($taxClasses as $taxClass) {
             $option = $element->find(sprintf($this->optionMaskElement, $taxClass), Locator::SELECTOR_XPATH);
@@ -232,7 +230,7 @@ class Form extends FormInterface
     /**
      * Waiting until option in list is visible.
      *
-     * @param Element $element
+     * @param SimpleElement $element
      * @param string $value
      * @return void
      */
@@ -278,18 +276,19 @@ class Form extends FormInterface
                 return $element->isVisible() ? true : null;
             }
         );
-        /** @var \Mtf\Client\Driver\Selenium\Element\MultiselectlistElement $taxRates */
+        /** @var \Magento\Mtf\Client\Element\MultiselectlistElement $taxRates */
         $taxRates = $this->_rootElement->find($this->taxRateBlock, Locator::SELECTOR_CSS, 'multiselectlist');
+
         return $taxRates->getAllValues();
     }
 
     /**
      * Click 'Add New' button.
      *
-     * @param Element $element
+     * @param SimpleElement $element
      * @return void
      */
-    protected function clickAddNewButton(Element $element)
+    protected function clickAddNewButton(SimpleElement $element)
     {
         $addNewButton = $this->addNewButton;
         $element->waitUntil(
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/Block/Adminhtml/Rule/Edit/TaxRate.php b/dev/tests/functional/tests/app/Magento/Tax/Test/Block/Adminhtml/Rule/Edit/TaxRate.php
index ea3b07e2e79f334116d04353c3a11294a5c0bf4f..30ee53017146c24b9afebd9546848862a80fa03b 100644
--- a/dev/tests/functional/tests/app/Magento/Tax/Test/Block/Adminhtml/Rule/Edit/TaxRate.php
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/Block/Adminhtml/Rule/Edit/TaxRate.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Tax\Test\Block\Adminhtml\Rule\Edit;
 
-use Mtf\Block\Form as FormInterface;
+use Magento\Mtf\Block\Form as FormInterface;
 
 /**
  * Class TaxRate
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/Block/Adminhtml/Rule/Grid.php b/dev/tests/functional/tests/app/Magento/Tax/Test/Block/Adminhtml/Rule/Grid.php
index db8dcd100c2b468e87e3ba07945c09d175e5bfe7..8923aa8d311fb4bcc3d01eff43c783aeab449bcc 100644
--- a/dev/tests/functional/tests/app/Magento/Tax/Test/Block/Adminhtml/Rule/Grid.php
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/Block/Adminhtml/Rule/Grid.php
@@ -7,7 +7,6 @@
 namespace Magento\Tax\Test\Block\Adminhtml\Rule;
 
 use Magento\Backend\Test\Block\Widget\Grid as GridInterface;
-use Mtf\Client\Element\Locator;
 
 /**
  * Class Grid
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AbstractAssertOrderTaxOnBackend.php b/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AbstractAssertOrderTaxOnBackend.php
new file mode 100644
index 0000000000000000000000000000000000000000..aa63949e9de9dc7777e015e4cb5b76a6febe3305
--- /dev/null
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AbstractAssertOrderTaxOnBackend.php
@@ -0,0 +1,231 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+
+namespace Magento\Tax\Test\Constraint;
+
+use Mtf\Constraint\AbstractConstraint;
+use Magento\Sales\Test\Page\Adminhtml\OrderView;
+use Magento\Sales\Test\Page\Adminhtml\OrderIndex;
+use Magento\Sales\Test\Page\Adminhtml\OrderInvoiceNew;
+use Magento\Sales\Test\Page\Adminhtml\OrderCreditMemoNew;
+use Mtf\Fixture\InjectableFixture;
+
+/**
+ * Checks that prices displayed excluding tax in order are correct on backend.
+ */
+abstract class AbstractAssertOrderTaxOnBackend extends AbstractConstraint
+{
+    /**
+     * Order View Page.
+     *
+     * @var OrderView
+     */
+    protected $orderView;
+
+    /**
+     * Order View Page.
+     *
+     * @var OrderInvoiceNew
+     */
+    protected $orderInvoiceNew;
+
+    /**
+     * Order View Page.
+     *
+     * @var OrderCreditMemoNew
+     */
+    protected $orderCreditMemoNew;
+
+    /**
+     * Constraint severeness.
+     *
+     * @var string
+     */
+    protected $severeness = 'high';
+
+    /**
+     * Implementation for get order total prices function
+     *
+     * @param array $actualPrices
+     * @return array
+     */
+    abstract protected function getOrderTotals($actualPrices);
+
+    /**
+     * Implementation for get invoice creation page total prices function
+     *
+     * @param array $actualPrices
+     * @return array
+     */
+    abstract protected function getInvoiceNewTotals($actualPrices);
+
+    /**
+     * Implementation for get credit memo creation page total prices function
+     *
+     * @param array $actualPrices
+     * @return array
+     */
+    abstract protected function getCreditMemoNewTotals($actualPrices);
+
+    /**
+     * Assert that specified prices are actual on order, invoice and refund pages.
+     *
+     * @param array $prices
+     * @param InjectableFixture $product
+     * @param OrderIndex $orderIndex
+     * @param OrderView $orderView
+     * @param OrderInvoiceNew $orderInvoiceNew
+     * @param OrderCreditMemoNew $orderCreditMemoNew
+     * @return void
+     */
+    public function processAssert(
+        array $prices,
+        InjectableFixture $product,
+        OrderIndex $orderIndex,
+        OrderView $orderView,
+        OrderInvoiceNew $orderInvoiceNew,
+        OrderCreditMemoNew $orderCreditMemoNew
+    ) {
+        $this->orderView = $orderView;
+        $this->orderInvoiceNew = $orderInvoiceNew;
+        $this->orderCreditMemoNew = $orderCreditMemoNew;
+        $orderIndex->open();
+        $orderIndex->getSalesOrderGrid()->openFirstRow();
+        //Check prices on order page
+        $actualPrices = [];
+        $actualPrices = $this->getOrderPrices($actualPrices, $product);
+        $actualPrices = $this->getOrderTotals($actualPrices);
+        $prices = $this->preparePrices($prices);
+        $message = 'Prices on order view page should be equal to defined in dataset.';
+        \PHPUnit_Framework_Assert::assertEquals($prices, $actualPrices, $message);
+        $orderView->getPageActions()->invoice();
+        //Check prices on invoice creation page
+        $actualPrices = [];
+        $actualPrices = $this->getInvoiceNewPrices($actualPrices, $product);
+        $actualPrices = $this->getInvoiceNewTotals($actualPrices);
+        $message = 'Prices on invoice new page should be equal to defined in dataset.';
+        \PHPUnit_Framework_Assert::assertEquals($prices, $actualPrices, $message);
+        $orderInvoiceNew->getTotalsBlock()->submit();
+        //Check prices after invoice on order page
+        $actualPrices = [];
+        $actualPrices = $this->getOrderPrices($actualPrices, $product);
+        $actualPrices = $this->getOrderTotals($actualPrices);
+        $message = 'Prices on invoice page should be equal to defined in dataset.';
+        \PHPUnit_Framework_Assert::assertEquals($prices, $actualPrices, $message);
+        $orderView->getPageActions()->orderCreditMemo();
+        //Check prices on credit memo creation page
+        $pricesCreditMemo = $this->preparePricesCreditMemo($prices);
+        $actualPrices = [];
+        $actualPrices = $this->getCreditMemoNewPrices($actualPrices, $product);
+        $actualPrices = $this->getCreditMemoNewTotals($actualPrices);
+        $message = 'Prices on credit memo new page should be equal to defined in dataset.';
+        \PHPUnit_Framework_Assert::assertEquals($pricesCreditMemo, $actualPrices, $message);
+        $orderCreditMemoNew->getFormBlock()->submit();
+        //Check prices after refund on order page
+        $actualPrices = [];
+        $actualPrices = $this->getOrderPrices($actualPrices, $product);
+        $actualPrices = $this->getOrderTotals($actualPrices);
+        $message = 'Prices on credit memo page should be equal to defined in dataset.';
+        \PHPUnit_Framework_Assert::assertEquals($prices, $actualPrices, $message);
+    }
+
+    /**
+     * Unset category and product page expected prices.
+     *
+     * @param array $prices
+     * @return array
+     */
+    protected function preparePrices($prices)
+    {
+        $deletePrices = [
+            'category_price_excl_tax',
+            'category_price_incl_tax',
+            'product_view_price_excl_tax',
+            'product_view_price_incl_tax'
+        ];
+        foreach ($deletePrices as $key) {
+            if (array_key_exists($key, $prices)) {
+                unset($prices[$key]);
+            }
+        }
+
+        return $prices;
+    }
+
+    /**
+     * Unset category and product page expected prices.
+     *
+     * @param array $prices
+     * @return array
+     */
+    protected function preparePricesCreditMemo($prices)
+    {
+        $prices['shipping_excl_tax'] = null;
+        $prices['shipping_incl_tax'] = null;
+        return $prices;
+    }
+
+    /**
+     * Get order product prices.
+     *
+     * @param InjectableFixture $product
+     * @param array $actualPrices
+     * @return array
+     */
+    public function getOrderPrices($actualPrices, InjectableFixture $product)
+    {
+        $viewBlock = $this->orderView->getItemsOrderedBlock();
+        $actualPrices['cart_item_price_excl_tax'] = $viewBlock->getItemPriceExclTax($product->getName());
+        $actualPrices['cart_item_price_incl_tax'] = $viewBlock->getItemPriceInclTax($product->getName());
+        $actualPrices['cart_item_subtotal_excl_tax'] = $viewBlock->getItemSubExclTax($product->getName());
+        $actualPrices['cart_item_subtotal_incl_tax'] = $viewBlock->getItemSubInclTax($product->getName());
+        return $actualPrices;
+    }
+
+    /**
+     * Get invoice new product prices.
+     *
+     * @param InjectableFixture $product
+     * @param array $actualPrices
+     * @return array
+     */
+    public function getInvoiceNewPrices($actualPrices, InjectableFixture $product)
+    {
+        $productBlock = $this->orderInvoiceNew->getFormBlock()->getItemsBlock()->getItemProductBlock($product);
+        $actualPrices['cart_item_price_excl_tax'] = $productBlock->getItemPriceExclTax();
+        $actualPrices['cart_item_price_incl_tax'] = $productBlock->getItemPriceInclTax();
+        $actualPrices['cart_item_subtotal_excl_tax'] = $productBlock->getItemSubExclTax();
+        $actualPrices['cart_item_subtotal_incl_tax'] = $productBlock->getItemSubInclTax();
+        return $actualPrices;
+    }
+
+    /**
+     * Get Credit Memo new product prices.
+     *
+     * @param InjectableFixture $product
+     * @param array $actualPrices
+     * @return array
+     */
+    public function getCreditMemoNewPrices($actualPrices, InjectableFixture $product)
+    {
+        $productBlock = $this->orderCreditMemoNew->getFormBlock()->getItemsBlock()->getItemProductBlock($product);
+        $actualPrices['cart_item_price_excl_tax'] = $productBlock->getItemPriceExclTax();
+        $actualPrices['cart_item_price_incl_tax'] = $productBlock->getItemPriceInclTax();
+        $actualPrices['cart_item_subtotal_excl_tax'] = $productBlock->getItemSubExclTax();
+        $actualPrices['cart_item_subtotal_incl_tax'] = $productBlock->getItemSubInclTax();
+        return $actualPrices;
+    }
+
+    /**
+     * Text of price verification after order creation.
+     *
+     * @return string
+     */
+    public function toString()
+    {
+        return 'Prices on backend after order creation is correct.';
+    }
+}
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AbstractAssertTaxCalculationAfterCheckout.php b/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AbstractAssertTaxCalculationAfterCheckout.php
new file mode 100644
index 0000000000000000000000000000000000000000..debc24c79bb650f9b08ff699c02f4c47d7880835
--- /dev/null
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AbstractAssertTaxCalculationAfterCheckout.php
@@ -0,0 +1,174 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+
+namespace Magento\Tax\Test\Constraint;
+
+use Mtf\Constraint\AbstractConstraint;
+use Magento\Checkout\Test\Page\CheckoutCart;
+use Magento\Checkout\Test\Page\CheckoutOnepage;
+use Magento\Checkout\Test\Page\CheckoutOnepageSuccess;
+use Magento\Customer\Test\Fixture\CustomerInjectable;
+use Magento\Sales\Test\Page\OrderView;
+use Mtf\Fixture\InjectableFixture;
+
+/**
+ * Checks that prices excluding tax on order review and customer order pages are equal to specified in dataset.
+ */
+abstract class AbstractAssertTaxCalculationAfterCheckout extends AbstractConstraint
+{
+    /**
+     * Checkout page.
+     *
+     * @var CheckoutOnepage
+     */
+    protected $checkoutOnepage;
+
+    /**
+     * Order view page.
+     *
+     * @var OrderView
+     */
+    protected $orderView;
+
+    /**
+     * Constraint severeness.
+     *
+     * @var string
+     */
+    protected $severeness = 'high';
+
+    /**
+     * Implementation for get order review total prices function
+     *
+     * @param array $actualPrices
+     * @return array
+     */
+    abstract protected function getReviewTotals($actualPrices);
+
+    /**
+     * Implementation for get order total prices from customer account function
+     *
+     * @param array $actualPrices
+     * @return array
+     */
+    abstract protected function getOrderTotals($actualPrices);
+
+    /**
+     * Assert that prices on order review and customer order pages are equal to specified in dataset.
+     *
+     * @param array $prices
+     * @param InjectableFixture $product
+     * @param CheckoutCart $checkoutCart
+     * @param CheckoutOnepage $checkoutOnepage
+     * @param CheckoutOnepageSuccess $checkoutOnepageSuccess
+     * @param OrderView $orderView
+     * @return void
+     */
+    public function processAssert(
+        array $prices,
+        InjectableFixture $product,
+        CheckoutCart $checkoutCart,
+        CheckoutOnepage $checkoutOnepage,
+        CheckoutOnepageSuccess $checkoutOnepageSuccess,
+        OrderView $orderView
+    ) {
+        $this->checkoutOnepage = $checkoutOnepage;
+        $this->orderView = $orderView;
+
+        $checkoutCart->getProceedToCheckoutBlock()->proceedToCheckout();
+        $checkoutOnepage->getBillingBlock()->clickContinue();
+        $shippingMethod = ['shipping_service' => 'Flat Rate', 'shipping_method' => 'Fixed'];
+        $checkoutOnepage->getShippingMethodBlock()->selectShippingMethod($shippingMethod);
+        $checkoutOnepage->getShippingMethodBlock()->clickContinue();
+        $checkoutOnepage->getPaymentMethodsBlock()->selectPaymentMethod(['method' => 'check_money_order']);
+        $checkoutOnepage->getPaymentMethodsBlock()->clickContinue();
+        $actualPrices = [];
+        $actualPrices = $this->getReviewPrices($actualPrices, $product);
+        $actualPrices = $this->getReviewTotals($actualPrices);
+        $prices = $this->preparePrices($prices);
+        //Order review prices verification
+        $message = 'Prices on order review should be equal to defined in dataset.';
+        \PHPUnit_Framework_Assert::assertEquals($prices, $actualPrices, $message);
+
+        $checkoutOnepage->getReviewBlock()->placeOrder();
+        $checkoutOnepageSuccess->getSuccessBlock()->getGuestOrderId();
+        $checkoutOnepageSuccess->getSuccessBlock()->openOrder();
+        $actualPrices = [];
+        $actualPrices = $this->getOrderPrices($actualPrices, $product);
+        $actualPrices = $this->getOrderTotals($actualPrices);
+
+        //Frontend order prices verification
+        $message = 'Prices on order view page should be equal to defined in dataset.';
+        \PHPUnit_Framework_Assert::assertEquals($prices, $actualPrices, $message);
+    }
+
+    /**
+     * Prepare expected prices prices.
+     *
+     * @param array $prices
+     * @return array $prices
+     */
+    protected function preparePrices($prices)
+    {
+        if (isset($prices['category_price_excl_tax'])) {
+            unset($prices['category_price_excl_tax']);
+        }
+        if (isset($prices['category_price_incl_tax'])) {
+            unset($prices['category_price_incl_tax']);
+        }
+        if (isset($prices['product_view_price_excl_tax'])) {
+            unset($prices['product_view_price_excl_tax']);
+        }
+        if (isset($prices['product_view_price_incl_tax'])) {
+            unset($prices['product_view_price_incl_tax']);
+        }
+        return $prices;
+    }
+
+    /**
+     * Get review product prices.
+     *
+     * @param InjectableFixture $product
+     * @param $actualPrices
+     * @return array
+     */
+    public function getReviewPrices($actualPrices, InjectableFixture $product)
+    {
+        $reviewBlock = $this->checkoutOnepage->getReviewBlock();
+        $actualPrices['cart_item_price_excl_tax'] = $reviewBlock->getItemPriceExclTax($product->getName());
+        $actualPrices['cart_item_price_incl_tax'] = $reviewBlock->getItemPriceInclTax($product->getName());
+        $actualPrices['cart_item_subtotal_excl_tax'] = $reviewBlock->getItemSubExclTax($product->getName());
+        $actualPrices['cart_item_subtotal_incl_tax'] = $reviewBlock->getItemSubInclTax($product->getName());
+        return $actualPrices;
+    }
+
+    /**
+     * Get order product prices.
+     *
+     * @param InjectableFixture $product
+     * @param $actualPrices
+     * @return array
+     */
+    public function getOrderPrices($actualPrices, InjectableFixture $product)
+    {
+        $viewBlock = $this->orderView->getOrderViewBlock();
+        $actualPrices['cart_item_price_excl_tax'] = $viewBlock->getItemPriceExclTax($product->getName());
+        $actualPrices['cart_item_price_incl_tax'] = $viewBlock->getItemPriceInclTax($product->getName());
+        $actualPrices['cart_item_subtotal_excl_tax'] = $viewBlock->getItemSubExclTax($product->getName());
+        $actualPrices['cart_item_subtotal_incl_tax'] = $viewBlock->getItemSubInclTax($product->getName());
+        return $actualPrices;
+    }
+
+    /**
+     * Text of price verification after order creation
+     *
+     * @return string
+     */
+    public function toString()
+    {
+        return 'Prices on front after order creation is correct.';
+    }
+}
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRuleIsAppliedToAllPrices.php b/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AbstractAssertTaxRuleIsAppliedToAllPrices.php
similarity index 55%
rename from dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRuleIsAppliedToAllPrices.php
rename to dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AbstractAssertTaxRuleIsAppliedToAllPrices.php
index 55704a8de1ebecef5fd4906594e8b4b3b28ed0d1..558a37ed5ba7efae9c850e288e110957f4b7558a 100644
--- a/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRuleIsAppliedToAllPrices.php
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AbstractAssertTaxRuleIsAppliedToAllPrices.php
@@ -6,58 +6,86 @@
 
 namespace Magento\Tax\Test\Constraint;
 
-use Magento\Catalog\Test\Fixture\CatalogProductSimple;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Cms\Test\Page\CmsIndex;
 use Magento\Catalog\Test\Page\Category\CatalogCategoryView;
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
 use Magento\Checkout\Test\Page\CheckoutCart;
-use Magento\Cms\Test\Page\CmsIndex;
 use Magento\Customer\Test\Fixture\AddressInjectable;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
- * Class AssertTaxRuleIsAppliedToAllPrice
- * Checks that prices on category, product and cart pages are equal to specified in dataset
+ * Checks that prices excl tax on category, product and cart pages are equal to specified in dataset.
  */
-class AssertTaxRuleIsAppliedToAllPrices extends AbstractConstraint
+abstract class AbstractAssertTaxRuleIsAppliedToAllPrices extends AbstractConstraint
 {
-    /* tags */
-    const SEVERITY = 'high';
-    /* end tags */
-
     /**
-     * Cms index page
+     * Cms index page.
      *
      * @var CmsIndex
      */
     protected $cmsIndex;
 
     /**
-     * Catalog product page
+     * Catalog product page.
      *
      * @var catalogCategoryView
      */
     protected $catalogCategoryView;
 
     /**
-     * Catalog product page
+     * Catalog product page.
      *
      * @var CatalogProductView
      */
     protected $catalogProductView;
 
     /**
-     * Catalog product page
+     * Catalog product page.
      *
      * @var CheckoutCart
      */
     protected $checkoutCart;
 
     /**
-     * Assert that specified prices are actual on category, product and cart pages
+     * Constraint severeness.
      *
-     * @param CatalogProductSimple $product
+     * @var string
+     */
+    protected $severeness = 'high';
+
+    /**
+     * Implementation for get category prices function
+     *
+     * @param string $productName
+     * @param array $actualPrices
+     * @return array
+     */
+    abstract protected function getCategoryPrices($productName, $actualPrices);
+
+    /**
+     * Implementation for get product page prices function
+     *
+     * @param array $actualPrices
+     * @return array
+     */
+    abstract protected function getProductPagePrices($actualPrices);
+
+    /**
+     * Implementation for get totals in cart function
+     *
+     * @param array $actualPrices
+     * @return array
+     */
+    abstract protected function getTotals($actualPrices);
+
+    /**
+     * Assert that specified prices are actual on category, product and cart pages.
+     *
+     * @param InjectableFixture $product
      * @param array $prices
+     * @param int $qty
      * @param CmsIndex $cmsIndex
      * @param CatalogCategoryView $catalogCategoryView
      * @param CatalogProductView $catalogProductView
@@ -66,8 +94,9 @@ class AssertTaxRuleIsAppliedToAllPrices extends AbstractConstraint
      * @return void
      */
     public function processAssert(
-        CatalogProductSimple $product,
+        InjectableFixture $product,
         array $prices,
+        $qty,
         CmsIndex $cmsIndex,
         CatalogCategoryView $catalogCategoryView,
         CatalogProductView $catalogProductView,
@@ -81,98 +110,60 @@ class AssertTaxRuleIsAppliedToAllPrices extends AbstractConstraint
         //Preconditions
         $address = $fixtureFactory->createByCode('addressInjectable', ['dataSet' => 'US_address_NY']);
         $shipping = ['carrier' => 'Flat Rate', 'method' => 'Fixed'];
-
+        $actualPrices = [];
         //Assertion steps
         $productName = $product->getName();
-        $this->openCategory($product);
-        $actualPrices = [];
+        $productCategory = $product->getCategoryIds()[0];
+        $this->openCategory($productCategory);
         $actualPrices = $this->getCategoryPrices($productName, $actualPrices);
         $catalogCategoryView->getListProductBlock()->openProductViewPage($productName);
+        $catalogProductView->getViewBlock()->fillOptions($product);
         $actualPrices = $this->getProductPagePrices($actualPrices);
-        $catalogProductView->getViewBlock()->setQtyAndClickAddToCart(3);
-        $actualPrices = $this->getCartPrices($product, $actualPrices);
+        $catalogProductView->getViewBlock()->setQtyAndClickAddToCart($qty);
         $this->fillEstimateBlock($address, $shipping);
+        $actualPrices = $this->getCartPrices($product, $actualPrices);
         $actualPrices = $this->getTotals($actualPrices);
-
         //Prices verification
-        \PHPUnit_Framework_Assert::assertEquals($prices, $actualPrices, 'Arrays should be equal');
+        $message = 'Prices from dataset should be equal to prices on frontend.';
+        \PHPUnit_Framework_Assert::assertEquals($prices, $actualPrices, $message);
     }
 
     /**
-     * Open product category
+     * Open product category.
      *
-     * @param CatalogProductSimple $product
+     * @param string $productCategory
      * @return void
      */
-    public function openCategory(CatalogProductSimple $product)
+    public function openCategory($productCategory)
     {
         $this->cmsIndex->open();
-        $this->cmsIndex->getTopmenu()->selectCategoryByName($product->getCategoryIds()[0]);
-    }
-
-    /**
-     * Get prices on category page
-     *
-     * @param $productName
-     * @param array $actualPrices
-     * @return array
-     */
-    public function getCategoryPrices($productName, $actualPrices)
-    {
-        $actualPrices['category_price_excl_tax'] =
-            $this->catalogCategoryView
-                ->getListProductBlock()
-                ->getProductPriceBlock($productName)
-                ->getPriceExcludingTax();
-        $actualPrices['category_price_incl_tax'] =
-            $this->catalogCategoryView
-                ->getListProductBlock()
-                ->getProductPriceBlock($productName)
-                ->getPriceIncludingTax();
-        return $actualPrices;
+        $this->cmsIndex->getTopmenu()->selectCategoryByName($productCategory);
     }
 
-    /**
-     * Get product view prices
-     *
-     * @param $actualPrices
-     * @return array
-     */
-    public function getProductPagePrices($actualPrices)
-    {
-        $actualPrices['product_view_price_excl_tax'] =
-            $this->catalogProductView
-                ->getViewBlock()
-                ->getProductPriceExcludingTax();
-        $actualPrices['product_view_price_incl_tax'] =
-            $this->catalogProductView
-                ->getViewBlock()
-                ->getProductPriceIncludingTax();
-        return $actualPrices;
-    }
 
     /**
-     * Get cart prices
+     * Get cart prices.
      *
-     * @param CatalogProductSimple $product
+     * @param InjectableFixture $product
      * @param $actualPrices
      * @return array
      */
-    public function getCartPrices(CatalogProductSimple $product, $actualPrices)
+    public function getCartPrices(InjectableFixture $product, $actualPrices)
     {
-        $actualPrices['cart_item_subtotal_excl_tax'] =
-            $this->checkoutCart->getCartBlock()->getCartItem($product)->getSubtotalPrice();
-        $actualPrices['cart_item_subtotal_incl_tax'] =
-            $this->checkoutCart->getCartBlock()->getCartItem($product)->getSubtotalPriceInclTax();
         $actualPrices['cart_item_price_excl_tax'] =
             $this->checkoutCart->getCartBlock()->getCartItem($product)->getPrice();
         $actualPrices['cart_item_price_incl_tax'] =
             $this->checkoutCart->getCartBlock()->getCartItem($product)->getPriceInclTax();
+        $actualPrices['cart_item_subtotal_excl_tax'] =
+            $this->checkoutCart->getCartBlock()->getCartItem($product)->getSubtotalPrice();
+        $actualPrices['cart_item_subtotal_incl_tax'] =
+            $this->checkoutCart->getCartBlock()->getCartItem($product)->getSubtotalPriceInclTax();
+
         return $actualPrices;
     }
 
     /**
-     * Fill estimate block
+     * Fill estimate block.
      *
      * @param AddressInjectable $address
      * @param array $shipping
@@ -184,27 +175,6 @@ class AssertTaxRuleIsAppliedToAllPrices extends AbstractConstraint
         $this->checkoutCart->getShippingBlock()->selectShippingMethod($shipping);
     }
 
-    /**
-     * Get totals
-     *
-     * @param $actualPrices
-     * @return array
-     */
-    public function getTotals($actualPrices)
-    {
-        $actualPrices['subtotal_excl_tax'] = $this->checkoutCart->getTotalsBlock()->getSubtotalExcludingTax();
-        $actualPrices['subtotal_incl_tax'] = $this->checkoutCart->getTotalsBlock()->getSubtotalIncludingTax();
-        $actualPrices['discount'] = $this->checkoutCart->getTotalsBlock()->getDiscount();
-        $actualPrices['shipping_excl_tax'] = $this->checkoutCart->getTotalsBlock()->getShippingPrice();
-        $actualPrices['shipping_incl_tax'] = $this->checkoutCart->getTotalsBlock()->getShippingPriceInclTax();
-        $actualPrices['tax'] = $this->checkoutCart->getTotalsBlock()->getTax();
-        $actualPrices['grand_total_excl_tax'] =
-            $this->checkoutCart->getTotalsBlock()->getGrandTotalExcludingTax();
-        $actualPrices['grand_total_incl_tax'] =
-            $this->checkoutCart->getTotalsBlock()->getGrandTotalIncludingTax();
-        return $actualPrices;
-    }
-
     /**
      * Text of Tax Rule is applied
      *
@@ -212,6 +182,6 @@ class AssertTaxRuleIsAppliedToAllPrices extends AbstractConstraint
      */
     public function toString()
     {
-        return 'Prices on front is correct';
+        return 'Prices on front is correct.';
     }
 }
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AbstractAssertTaxWithCrossBorderApplying.php b/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AbstractAssertTaxWithCrossBorderApplying.php
index 03aeedefc594d176eba9a4a767dfb3326dfd1b70..b249079cbac7799d5bf815a874eccd53691cbd1e 100644
--- a/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AbstractAssertTaxWithCrossBorderApplying.php
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AbstractAssertTaxWithCrossBorderApplying.php
@@ -11,7 +11,7 @@ use Magento\Catalog\Test\Page\Category\CatalogCategoryView;
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
 use Magento\Checkout\Test\Page\CheckoutCart;
 use Magento\Cms\Test\Page\CmsIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AbstractAssertTaxWithCrossBorderApplying
@@ -167,7 +167,7 @@ abstract class AbstractAssertTaxWithCrossBorderApplying extends AbstractConstrai
         $actualPrices['cart_item_subtotal_incl_tax'] =
             $this->checkoutCart->getCartBlock()->getCartItem($product)->getSubtotalPriceInclTax();
         $actualPrices['grand_total'] =
-            $this->checkoutCart->getTotalsBlock()->getGrandTotal();
+            $this->checkoutCart->getTotalsBlock()->getGrandTotalIncludingTax();
         return $actualPrices;
     }
 
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertOrderTaxOnBackendExcludingIncludingTax.php b/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertOrderTaxOnBackendExcludingIncludingTax.php
new file mode 100644
index 0000000000000000000000000000000000000000..1851caffdb0c7b1138beacc2731ac48463e8f4e3
--- /dev/null
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertOrderTaxOnBackendExcludingIncludingTax.php
@@ -0,0 +1,90 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+
+namespace Magento\Tax\Test\Constraint;
+
+/**
+ * Checks that prices displayed excluding and including tax in order are correct on backend.
+ */
+class AssertOrderTaxOnBackendExcludingIncludingTax extends AbstractAssertOrderTaxOnBackend
+{
+    /**
+     * Constraint severeness.
+     *
+     * @var string
+     */
+    protected $severeness = 'high';
+
+    /**
+     * Get order totals.
+     *
+     * @param array $actualPrices
+     * @return array
+     */
+    public function getOrderTotals($actualPrices)
+    {
+        $viewBlock = $this->orderView->getOrderTotalsBlock();
+        $actualPrices['subtotal_excl_tax'] = $viewBlock->getSubtotalExclTax();
+        $actualPrices['subtotal_incl_tax'] = $viewBlock->getSubtotalInclTax();
+
+        $actualPrices['discount'] = $viewBlock->getDiscount();
+
+        $actualPrices['shipping_excl_tax'] = $viewBlock->getShippingExclTax();
+        $actualPrices['shipping_incl_tax'] = $viewBlock->getShippingInclTax();
+        $actualPrices['tax'] = $viewBlock->getTax();
+        $actualPrices['grand_total_excl_tax'] = $viewBlock->getGrandTotalExclTax();
+        $actualPrices['grand_total_incl_tax'] = $viewBlock->getGrandTotalInclTax();
+
+        return $actualPrices;
+    }
+
+    /**
+     * Get invoice new totals.
+     *
+     * @param array $actualPrices
+     * @return array
+     */
+    public function getInvoiceNewTotals($actualPrices)
+    {
+        $totalsBlock = $this->orderInvoiceNew->getTotalsBlock();
+        $actualPrices['subtotal_excl_tax'] = $totalsBlock->getSubtotalExclTax();
+        $actualPrices['subtotal_incl_tax'] = $totalsBlock->getSubtotalInclTax();
+
+        $actualPrices['discount'] = $totalsBlock->getDiscount();
+
+        $actualPrices['shipping_excl_tax'] = $totalsBlock->getShippingExclTax();
+        $actualPrices['shipping_incl_tax'] = $totalsBlock->getShippingInclTax();
+        $actualPrices['tax'] = $totalsBlock->getTax();
+
+        $actualPrices['grand_total_excl_tax'] = $totalsBlock->getGrandTotalExclTax();
+        $actualPrices['grand_total_incl_tax'] = $totalsBlock->getGrandTotalInclTax();
+
+        return $actualPrices;
+    }
+
+    /**
+     * Get Credit Memo new totals.
+     *
+     * @param array $actualPrices
+     * @return array
+     */
+    public function getCreditMemoNewTotals($actualPrices)
+    {
+        $totalsBlock = $this->orderCreditMemoNew->getTotalsBlock();
+        $actualPrices['subtotal_excl_tax'] = $totalsBlock->getSubtotalExclTax();
+        $actualPrices['subtotal_incl_tax'] = $totalsBlock->getSubtotalInclTax();
+
+        $actualPrices['discount'] = $totalsBlock->getDiscount();
+
+        $actualPrices['shipping_excl_tax'] = $totalsBlock->getShippingExclTax();
+        $actualPrices['shipping_incl_tax'] = $totalsBlock->getShippingInclTax();
+        $actualPrices['tax'] = $totalsBlock->getTax();
+        $actualPrices['grand_total_excl_tax'] = $totalsBlock->getGrandTotalExclTax();
+        $actualPrices['grand_total_incl_tax'] = $totalsBlock->getGrandTotalInclTax();
+
+        return $actualPrices;
+    }
+}
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertOrderTaxOnBackendExcludingTax.php b/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertOrderTaxOnBackendExcludingTax.php
new file mode 100644
index 0000000000000000000000000000000000000000..9b0c4846f271151fd7fbee879f6ad00f7041341a
--- /dev/null
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertOrderTaxOnBackendExcludingTax.php
@@ -0,0 +1,92 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+
+namespace Magento\Tax\Test\Constraint;
+
+/**
+ * Checks that prices including tax in order are correct on backend.
+ */
+class AssertOrderTaxOnBackendExcludingTax extends AbstractAssertOrderTaxOnBackend
+{
+    /**
+     * Constraint severeness.
+     *
+     * @var string
+     */
+    protected $severeness = 'high';
+
+
+    /**
+     * Get order totals.
+     *
+     * @param $actualPrices
+     * @return array
+     */
+    public function getOrderTotals($actualPrices)
+    {
+        $viewBlock = $this->orderView->getOrderTotalsBlock();
+        $actualPrices['subtotal_excl_tax'] = $viewBlock->getSubtotal();
+        $actualPrices['subtotal_incl_tax'] = null;
+
+        $actualPrices['discount'] = $viewBlock->getDiscount();
+
+        $actualPrices['shipping_excl_tax'] = $viewBlock->getShippingExclTax();
+        $actualPrices['shipping_incl_tax'] = $viewBlock->getShippingInclTax();
+        $actualPrices['tax'] = $viewBlock->getTax();
+
+        $actualPrices['grand_total_excl_tax'] = $viewBlock->getGrandTotal();
+        $actualPrices['grand_total_incl_tax'] = null;
+        return $actualPrices;
+    }
+
+    /**
+     * Get invoice new totals.
+     *
+     * @param $actualPrices
+     * @return array
+     */
+    public function getInvoiceNewTotals($actualPrices)
+    {
+        $totalsBlock = $this->orderInvoiceNew->getTotalsBlock();
+        $actualPrices['subtotal_excl_tax'] = $totalsBlock->getSubtotal();
+        $actualPrices['subtotal_incl_tax'] = null;
+
+        $actualPrices['discount'] = $totalsBlock->getDiscount();
+
+        $actualPrices['shipping_excl_tax'] = $totalsBlock->getShippingExclTax();
+        $actualPrices['shipping_incl_tax'] = $totalsBlock->getShippingInclTax();
+        $actualPrices['tax'] = $totalsBlock->getTax();
+
+        $actualPrices['grand_total_excl_tax'] = $totalsBlock->getGrandTotal();
+        $actualPrices['grand_total_incl_tax'] = null;
+
+        return $actualPrices;
+    }
+
+    /**
+     * Get Credit Memo new totals.
+     *
+     * @param $actualPrices
+     * @return array
+     */
+    public function getCreditMemoNewTotals($actualPrices)
+    {
+        $totalsBlock = $this->orderCreditMemoNew->getTotalsBlock();
+        $actualPrices['subtotal_excl_tax'] = $totalsBlock->getSubtotal();
+        $actualPrices['subtotal_incl_tax'] = null;
+
+        $actualPrices['discount'] = $totalsBlock->getDiscount();
+
+        $actualPrices['shipping_excl_tax'] = $totalsBlock->getShippingExclTax();
+        $actualPrices['shipping_incl_tax'] = $totalsBlock->getShippingInclTax();
+        $actualPrices['tax'] = $totalsBlock->getTax();
+
+        $actualPrices['grand_total_excl_tax'] = $totalsBlock->getGrandTotal();
+        $actualPrices['grand_total_incl_tax'] = null;
+
+        return $actualPrices;
+    }
+}
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertOrderTaxOnBackendIncludingTax.php b/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertOrderTaxOnBackendIncludingTax.php
new file mode 100644
index 0000000000000000000000000000000000000000..8843f04669a884132ff8e07a6c6ca98913ef57cd
--- /dev/null
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertOrderTaxOnBackendIncludingTax.php
@@ -0,0 +1,90 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+
+namespace Magento\Tax\Test\Constraint;
+
+/**
+ * Checks that prices including tax in order are correct on backend.
+ */
+class AssertOrderTaxOnBackendIncludingTax extends AbstractAssertOrderTaxOnBackend
+{
+    /**
+     * Constraint severeness.
+     *
+     * @var string
+     */
+    protected $severeness = 'high';
+
+    /**
+     * Get order totals.
+     *
+     * @param $actualPrices
+     * @return array
+     */
+    public function getOrderTotals($actualPrices)
+    {
+        $viewBlock = $this->orderView->getOrderTotalsBlock();
+        $actualPrices['subtotal_excl_tax'] = null;
+        $actualPrices['subtotal_incl_tax'] = $viewBlock->getSubtotal();
+
+        $actualPrices['discount'] = $viewBlock->getDiscount();
+
+        $actualPrices['shipping_excl_tax'] = $viewBlock->getShippingExclTax();
+        $actualPrices['shipping_incl_tax'] = $viewBlock->getShippingInclTax();
+        $actualPrices['tax'] = $viewBlock->getTax();
+        $actualPrices['grand_total_excl_tax'] = $viewBlock->getGrandTotalExclTax();
+        $actualPrices['grand_total_incl_tax'] = $viewBlock->getGrandTotalInclTax();
+
+        return $actualPrices;
+    }
+
+    /**
+     * Get invoice new totals.
+     *
+     * @param $actualPrices
+     * @return array
+     */
+    public function getInvoiceNewTotals($actualPrices)
+    {
+        $totalsBlock = $this->orderInvoiceNew->getTotalsBlock();
+        $actualPrices['subtotal_excl_tax'] = null;
+        $actualPrices['subtotal_incl_tax'] = $totalsBlock->getSubtotal();
+
+        $actualPrices['discount'] = $totalsBlock->getDiscount();
+
+        $actualPrices['shipping_excl_tax'] = $totalsBlock->getShippingExclTax();
+        $actualPrices['shipping_incl_tax'] = $totalsBlock->getShippingInclTax();
+        $actualPrices['tax'] = $totalsBlock->getTax();
+
+        $actualPrices['grand_total_excl_tax'] = $totalsBlock->getGrandTotalExclTax();
+        $actualPrices['grand_total_incl_tax'] = $totalsBlock->getGrandTotalInclTax();
+
+        return $actualPrices;
+    }
+
+    /**
+     * Get Credit Memo new totals.
+     *
+     * @param $actualPrices
+     * @return array
+     */
+    public function getCreditMemoNewTotals($actualPrices)
+    {
+        $totalsBlock = $this->orderCreditMemoNew->getTotalsBlock();
+        $actualPrices['subtotal_excl_tax'] = null;
+        $actualPrices['subtotal_incl_tax'] = $totalsBlock->getSubtotal();
+
+        $actualPrices['discount'] = $totalsBlock->getDiscount();
+
+        $actualPrices['shipping_excl_tax'] = $totalsBlock->getShippingExclTax();
+        $actualPrices['shipping_incl_tax'] = $totalsBlock->getShippingInclTax();
+        $actualPrices['tax'] = $totalsBlock->getTax();
+        $actualPrices['grand_total_excl_tax'] = $totalsBlock->getGrandTotalExclTax();
+        $actualPrices['grand_total_incl_tax'] = $totalsBlock->getGrandTotalInclTax();
+
+        return $actualPrices;
+    }
+}
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxCalculationAfterCheckoutExcludingIncludingTax.php b/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxCalculationAfterCheckoutExcludingIncludingTax.php
new file mode 100644
index 0000000000000000000000000000000000000000..7d65c80e0aee4df44aab43c081850d101835e957
--- /dev/null
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxCalculationAfterCheckoutExcludingIncludingTax.php
@@ -0,0 +1,63 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+
+namespace Magento\Tax\Test\Constraint;
+
+/**
+ * Checks that prices excl and incl tax on order review and customer order pages are equal to specified in dataset.
+ */
+class AssertTaxCalculationAfterCheckoutExcludingIncludingTax extends
+ AbstractAssertTaxCalculationAfterCheckout
+{
+    /**
+     * Constraint severeness.
+     *
+     * @var string
+     */
+    protected $severeness = 'high';
+
+    /**
+     * Get review totals.
+     *
+     * @param $actualPrices
+     * @return array
+     */
+    public function getReviewTotals($actualPrices)
+    {
+        $reviewBlock = $this->checkoutOnepage->getReviewBlock();
+        $actualPrices['subtotal_excl_tax'] = $reviewBlock->getSubtotalExclTax();
+        $actualPrices['subtotal_incl_tax'] = $reviewBlock->getSubtotalInclTax();
+        $actualPrices['discount'] = $reviewBlock->getDiscount();
+        $actualPrices['shipping_excl_tax'] = $reviewBlock->getShippingExclTax();
+        $actualPrices['shipping_incl_tax'] = $reviewBlock->getShippingInclTax();
+        $actualPrices['tax'] = $reviewBlock->getTax();
+        $actualPrices['grand_total_excl_tax'] = $reviewBlock->getGrandTotalExclTax();
+        $actualPrices['grand_total_incl_tax'] = $reviewBlock->getGrandTotalInclTax();
+
+        return $actualPrices;
+    }
+
+    /**
+     * Get order totals.
+     *
+     * @param $actualPrices
+     * @return array
+     */
+    public function getOrderTotals($actualPrices)
+    {
+        $viewBlock = $this->orderView->getOrderViewBlock();
+        $actualPrices['subtotal_excl_tax'] = $viewBlock->getSubtotalExclTax();
+        $actualPrices['subtotal_incl_tax'] = $viewBlock->getSubtotalInclTax();
+        $actualPrices['discount'] = $viewBlock->getDiscount();
+        $actualPrices['shipping_excl_tax'] = $viewBlock->getShippingExclTax();
+        $actualPrices['shipping_incl_tax'] = $viewBlock->getShippingInclTax();
+        $actualPrices['tax'] = $viewBlock->getTax();
+        $actualPrices['grand_total_excl_tax'] = $viewBlock->getGrandTotal();
+        $actualPrices['grand_total_incl_tax'] = $viewBlock->getGrandTotalInclTax();
+
+        return $actualPrices;
+    }
+}
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxCalculationAfterCheckoutExcludingTax.php b/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxCalculationAfterCheckoutExcludingTax.php
new file mode 100644
index 0000000000000000000000000000000000000000..eecf9cc8c87400dbda9a83ab463e462a920ba97f
--- /dev/null
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxCalculationAfterCheckoutExcludingTax.php
@@ -0,0 +1,62 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+namespace Magento\Tax\Test\Constraint;
+
+/**
+ * Checks that prices including tax on order review and customer order pages are equal to specified in dataset.
+ */
+class AssertTaxCalculationAfterCheckoutExcludingTax extends AbstractAssertTaxCalculationAfterCheckout
+{
+    /**
+     * Constraint severeness.
+     *
+     * @var string
+     */
+    protected $severeness = 'high';
+
+    /**
+     * Get review totals.
+     *
+     * @param $actualPrices
+     * @return array
+     */
+    public function getReviewTotals($actualPrices)
+    {
+        $reviewBlock = $this->checkoutOnepage->getReviewBlock();
+        $actualPrices['subtotal_excl_tax'] = $reviewBlock->getSubtotal();
+        $actualPrices['subtotal_incl_tax'] = null;
+        $actualPrices['discount'] = $reviewBlock->getDiscount();
+        $actualPrices['shipping_excl_tax'] = $reviewBlock->getShippingExclTax();
+        $actualPrices['shipping_incl_tax'] = $reviewBlock->getShippingInclTax();
+        $actualPrices['tax'] = $reviewBlock->getTax();
+        $actualPrices['grand_total_excl_tax'] = $reviewBlock->getGrandTotal();
+        $actualPrices['grand_total_incl_tax'] = null;
+
+        return $actualPrices;
+    }
+
+    /**
+     * Get order totals.
+     *
+     * @param $actualPrices
+     * @return array
+     */
+    public function getOrderTotals($actualPrices)
+    {
+        $viewBlock = $this->orderView->getOrderViewBlock();
+        $actualPrices['subtotal_excl_tax'] = $viewBlock->getSubtotal();
+        $actualPrices['subtotal_incl_tax'] = null;
+
+        $actualPrices['discount'] = $viewBlock->getDiscount();
+        $actualPrices['shipping_excl_tax'] = $viewBlock->getShippingExclTax();
+        $actualPrices['shipping_incl_tax'] = $viewBlock->getShippingInclTax();
+        $actualPrices['tax'] = $viewBlock->getTax();
+        $actualPrices['grand_total_excl_tax'] = $viewBlock->getGrandTotal();
+        $actualPrices['grand_total_incl_tax'] = null;
+
+        return $actualPrices;
+    }
+}
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxCalculationAfterCheckoutIncludingTax.php b/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxCalculationAfterCheckoutIncludingTax.php
new file mode 100644
index 0000000000000000000000000000000000000000..59869e99eaa92097d16a93000285df72072d4010
--- /dev/null
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxCalculationAfterCheckoutIncludingTax.php
@@ -0,0 +1,62 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+
+namespace Magento\Tax\Test\Constraint;
+
+/**
+ * Checks that prices including tax on order review and customer order pages are equal to specified in dataset.
+ */
+class AssertTaxCalculationAfterCheckoutIncludingTax extends AbstractAssertTaxCalculationAfterCheckout
+{
+    /**
+     * Constraint severeness.
+     *
+     * @var string
+     */
+    protected $severeness = 'high';
+
+    /**
+     * Get review totals.
+     *
+     * @param $actualPrices
+     * @return array
+     */
+    public function getReviewTotals($actualPrices)
+    {
+        $reviewBlock = $this->checkoutOnepage->getReviewBlock();
+        $actualPrices['subtotal_excl_tax'] = null;
+        $actualPrices['subtotal_incl_tax'] = $reviewBlock->getSubtotal();
+        $actualPrices['discount'] = $reviewBlock->getDiscount();
+        $actualPrices['shipping_excl_tax'] = $reviewBlock->getShippingExclTax();
+        $actualPrices['shipping_incl_tax'] = $reviewBlock->getShippingInclTax();
+        $actualPrices['tax'] = $reviewBlock->getTax();
+        $actualPrices['grand_total_excl_tax'] = $reviewBlock->getGrandTotalExclTax();
+        $actualPrices['grand_total_incl_tax'] = $reviewBlock->getGrandTotalInclTax();
+
+        return $actualPrices;
+    }
+
+    /**
+     * Get order totals.
+     *
+     * @param $actualPrices
+     * @return array
+     */
+    public function getOrderTotals($actualPrices)
+    {
+        $viewBlock = $this->orderView->getOrderViewBlock();
+        $actualPrices['subtotal_excl_tax'] = null;
+        $actualPrices['subtotal_incl_tax'] = $viewBlock->getSubtotal();
+        $actualPrices['discount'] = $viewBlock->getDiscount();
+        $actualPrices['shipping_excl_tax'] = $viewBlock->getShippingExclTax();
+        $actualPrices['shipping_incl_tax'] = $viewBlock->getShippingInclTax();
+        $actualPrices['tax'] = $viewBlock->getTax();
+        $actualPrices['grand_total_excl_tax'] = $viewBlock->getGrandTotal();
+        $actualPrices['grand_total_incl_tax'] = $viewBlock->getGrandTotalInclTax();
+
+        return $actualPrices;
+    }
+}
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRateForm.php b/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRateForm.php
index b2cc6ea218b1438aefce9170af80434964f44f6b..9be4aa155fab35d0ddd6a6c8dcb7e75a22358547 100644
--- a/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRateForm.php
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRateForm.php
@@ -9,7 +9,7 @@ namespace Magento\Tax\Test\Constraint;
 use Magento\Tax\Test\Fixture\TaxRate;
 use Magento\Tax\Test\Page\Adminhtml\TaxRateIndex;
 use Magento\Tax\Test\Page\Adminhtml\TaxRateNew;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertTaxRateForm
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRateInGrid.php b/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRateInGrid.php
index ab8fb7c249a9f0f78da2daefb2eac4b2a53eba47..b29f483f1ed231e9de98e9e452d0bfff0a5383eb 100644
--- a/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRateInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRateInGrid.php
@@ -8,7 +8,7 @@ namespace Magento\Tax\Test\Constraint;
 
 use Magento\Tax\Test\Fixture\TaxRate;
 use Magento\Tax\Test\Page\Adminhtml\TaxRateIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertTaxRateInGrid
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRateInTaxRule.php b/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRateInTaxRule.php
index 68698ac0e0ef9a532ff6c0a8ed11d5c918c6a8ac..c7e8b1e65fbededdd60870c5ee14e7c518cf15d9 100644
--- a/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRateInTaxRule.php
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRateInTaxRule.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Tax\Test\Constraint;
 
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertTaxRateInTaxRule
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRateIsInCorrectRange.php b/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRateIsInCorrectRange.php
index 1dee8e8332681b94b2f7df971a2f080e6fba66af..e8b8e96f9c19dc762a8c0db8fcbedf06fcd735d0 100644
--- a/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRateIsInCorrectRange.php
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRateIsInCorrectRange.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Tax\Test\Constraint;
 
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertTaxRateIsInCorrectRange
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRateNotInGrid.php b/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRateNotInGrid.php
index 6e2b75e92dbfb33ae3322a28f17cd16d5e9611b1..27269fc071aaaafb465e2b344c4e9beab5d03cde 100644
--- a/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRateNotInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRateNotInGrid.php
@@ -8,7 +8,7 @@ namespace Magento\Tax\Test\Constraint;
 
 use Magento\Tax\Test\Fixture\TaxRate;
 use Magento\Tax\Test\Page\Adminhtml\TaxRateIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertTaxRateNotInGrid
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRateNotInTaxRule.php b/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRateNotInTaxRule.php
index cec93f5e32d9e4a4096f8bad14507027b4f22c47..40a294d79d3b56334fd4451a5629900e4d7ea311 100644
--- a/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRateNotInTaxRule.php
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRateNotInTaxRule.php
@@ -8,7 +8,7 @@ namespace Magento\Tax\Test\Constraint;
 
 use Magento\Tax\Test\Fixture\TaxRate;
 use Magento\Tax\Test\Page\Adminhtml\TaxRuleNew;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertTaxRateNotInTaxRule
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRateSuccessDeleteMessage.php b/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRateSuccessDeleteMessage.php
index e986b9afc8ad05af30077033c69c38f9059585e2..5a2eeb5608e584a46bf72de31a52ef324e27cd22 100644
--- a/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRateSuccessDeleteMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRateSuccessDeleteMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Tax\Test\Constraint;
 
 use Magento\Tax\Test\Page\Adminhtml\TaxRateIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertTaxRateSuccessDeleteMessage
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRateSuccessSaveMessage.php b/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRateSuccessSaveMessage.php
index c463dd61c071cc90b43368cd6755d05bf24562e7..daa156986bba7643d156b9cbfc9bf4fe63a2c330 100644
--- a/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRateSuccessSaveMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRateSuccessSaveMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Tax\Test\Constraint;
 
 use Magento\Tax\Test\Page\Adminhtml\TaxRateIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertTaxRateSuccessSaveMessage
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRuleApplying.php b/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRuleApplying.php
index 489029400eb8a379b97eeb42ce89974c25b94694..d8000e08d4a2b56392b8efa868b7289dc02ed230 100644
--- a/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRuleApplying.php
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRuleApplying.php
@@ -14,9 +14,9 @@ use Magento\Customer\Test\Fixture\CustomerInjectable;
 use Magento\Customer\Test\Page\CustomerAccountLogin;
 use Magento\Customer\Test\Page\CustomerAccountLogout;
 use Magento\Tax\Test\Fixture\TaxRule;
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\FixtureFactory;
 
 /**
  * Class AssertTaxRuleApplying
@@ -89,7 +89,7 @@ abstract class AssertTaxRuleApplying extends AbstractConstraint
      * @param CheckoutCart $checkoutCart
      * @param AddressInjectable $address
      * @param array $shipping
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @param TaxRule $initialTaxRule
      * @return void
      *
@@ -105,7 +105,7 @@ abstract class AssertTaxRuleApplying extends AbstractConstraint
         CheckoutCart $checkoutCart,
         AddressInjectable $address,
         array $shipping,
-        Browser $browser,
+        BrowserInterface $browser,
         TaxRule $initialTaxRule = null
     ) {
         $this->initialTaxRule = $initialTaxRule;
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRuleForm.php b/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRuleForm.php
index 06364e1cad8d9bd02174de21b7fb5db6dd2973ad..2ec54cbe497a1655d6552569a941c1a1426720ed 100644
--- a/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRuleForm.php
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRuleForm.php
@@ -9,7 +9,7 @@ namespace Magento\Tax\Test\Constraint;
 use Magento\Tax\Test\Fixture\TaxRule;
 use Magento\Tax\Test\Page\Adminhtml\TaxRuleIndex;
 use Magento\Tax\Test\Page\Adminhtml\TaxRuleNew;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertTaxRuleForm
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRuleInGrid.php b/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRuleInGrid.php
index 257db7b916a41f314899fa099b7dadd4a10c61e8..fea8557379275bbd4be59814a6f99abbf4b7a2f7 100644
--- a/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRuleInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRuleInGrid.php
@@ -8,7 +8,7 @@ namespace Magento\Tax\Test\Constraint;
 
 use Magento\Tax\Test\Fixture\TaxRule;
 use Magento\Tax\Test\Page\Adminhtml\TaxRuleIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertTaxRuleInGrid
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRuleIsAppliedToAllPricesExcludingIncludingTax.php b/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRuleIsAppliedToAllPricesExcludingIncludingTax.php
new file mode 100644
index 0000000000000000000000000000000000000000..b685b18e9608d4e40c42ed24f802d3cb4380892f
--- /dev/null
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRuleIsAppliedToAllPricesExcludingIncludingTax.php
@@ -0,0 +1,75 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+
+namespace Magento\Tax\Test\Constraint;
+
+use Magento\Catalog\Test\Fixture\CatalogProductSimple;
+
+/**
+ * Checks that prices excl and incl tax on category, product and cart pages are equal to specified in dataset
+ */
+class AssertTaxRuleIsAppliedToAllPricesExcludingIncludingTax extends
+ AbstractAssertTaxRuleIsAppliedToAllPrices
+{
+    /**
+     * Constraint severeness.
+     *
+     * @var string
+     */
+    protected $severeness = 'high';
+
+    /**
+     * Get prices on category page.
+     *
+     * @param $productName
+     * @param array $actualPrices
+     * @return array
+     */
+    public function getCategoryPrices($productName, $actualPrices)
+    {
+        $priceBlock = $this->catalogCategoryView->getListProductBlock()->getProductPriceBlock($productName);
+        $actualPrices['category_price_excl_tax'] = $priceBlock->getPriceExcludingTax();
+        $actualPrices['category_price_incl_tax'] = $priceBlock->getPriceIncludingTax();
+
+        return $actualPrices;
+    }
+
+    /**
+     * Get product view prices.
+     *
+     * @param array $actualPrices
+     * @return array
+     */
+    public function getProductPagePrices($actualPrices)
+    {
+        $viewBlock = $this->catalogProductView->getViewBlock();
+        $actualPrices['product_view_price_excl_tax'] = $viewBlock->getProductPriceExcludingTax();
+        $actualPrices['product_view_price_incl_tax'] = $viewBlock->getProductPriceIncludingTax();
+
+        return $actualPrices;
+    }
+
+    /**
+     * Get totals.
+     *
+     * @param $actualPrices
+     * @return array
+     */
+    public function getTotals($actualPrices)
+    {
+        $totalsBlock = $this->checkoutCart->getTotalsBlock();
+        $actualPrices['subtotal_excl_tax'] = $totalsBlock->getSubtotalExcludingTax();
+        $actualPrices['subtotal_incl_tax'] = $totalsBlock->getSubtotalIncludingTax();
+        $actualPrices['discount'] = $totalsBlock->getDiscount();
+        $actualPrices['shipping_excl_tax'] = $totalsBlock->getShippingPrice();
+        $actualPrices['shipping_incl_tax'] = $totalsBlock->getShippingPriceInclTax();
+        $actualPrices['tax'] = $totalsBlock->getTax();
+        $actualPrices['grand_total_excl_tax'] = $totalsBlock->getGrandTotalExcludingTax();
+        $actualPrices['grand_total_incl_tax'] = $totalsBlock->getGrandTotalIncludingTax();
+
+        return $actualPrices;
+    }
+}
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRuleIsAppliedToAllPricesExcludingTax.php b/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRuleIsAppliedToAllPricesExcludingTax.php
new file mode 100644
index 0000000000000000000000000000000000000000..8088fe6e3da3a3154c6ed54a015258b5682e0c29
--- /dev/null
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRuleIsAppliedToAllPricesExcludingTax.php
@@ -0,0 +1,74 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+
+namespace Magento\Tax\Test\Constraint;
+
+use Magento\Catalog\Test\Fixture\CatalogProductSimple;
+
+/**
+ * Checks that prices incl tax on category, product and cart pages are equal to specified in dataset.
+ */
+class AssertTaxRuleIsAppliedToAllPricesExcludingTax extends AbstractAssertTaxRuleIsAppliedToAllPrices
+{
+    /**
+     * Constraint severeness.
+     *
+     * @var string
+     */
+    protected $severeness = 'high';
+
+    /**
+     * Get prices on category page.
+     *
+     * @param $productName
+     * @param array $actualPrices
+     * @return array
+     */
+    public function getCategoryPrices($productName, $actualPrices)
+    {
+        $priceBlock = $this->catalogCategoryView->getListProductBlock()->getProductPriceBlock($productName);
+        $actualPrices['category_price_excl_tax'] = $priceBlock->getEffectivePrice();
+        $actualPrices['category_price_incl_tax'] = null;
+
+        return $actualPrices;
+    }
+
+    /**
+     * Get product view prices.
+     *
+     * @param array $actualPrices
+     * @return array
+     */
+    public function getProductPagePrices($actualPrices)
+    {
+        $viewBlock = $this->catalogProductView->getViewBlock();
+        $actualPrices['product_view_price_excl_tax'] = $viewBlock->getPriceBlock()->getEffectivePrice();
+        $actualPrices['product_view_price_incl_tax'] = null;
+
+        return $actualPrices;
+    }
+
+    /**
+     * Get totals.
+     *
+     * @param $actualPrices
+     * @return array
+     */
+    public function getTotals($actualPrices)
+    {
+        $totalsBlock = $this->checkoutCart->getTotalsBlock();
+        $actualPrices['subtotal_excl_tax'] = $totalsBlock->getSubtotal();
+        $actualPrices['subtotal_incl_tax'] = null;
+        $actualPrices['discount'] = $totalsBlock->getDiscount();
+        $actualPrices['shipping_excl_tax'] = $totalsBlock->getShippingPrice();
+        $actualPrices['shipping_incl_tax'] = $totalsBlock->getShippingPriceInclTax();
+        $actualPrices['tax'] = $totalsBlock->getTax();
+        $actualPrices['grand_total_excl_tax'] = $totalsBlock->getGrandTotal();
+        $actualPrices['grand_total_incl_tax'] = null;
+
+        return $actualPrices;
+    }
+}
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRuleIsAppliedToAllPricesIncludingTax.php b/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRuleIsAppliedToAllPricesIncludingTax.php
new file mode 100644
index 0000000000000000000000000000000000000000..9e7fbe7ef376fa91c137f71c50632362fee00993
--- /dev/null
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRuleIsAppliedToAllPricesIncludingTax.php
@@ -0,0 +1,74 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+
+namespace Magento\Tax\Test\Constraint;
+
+use Magento\Catalog\Test\Fixture\CatalogProductSimple;
+
+/**
+ * Checks that prices incl tax on category, product and cart pages are equal to specified in dataset.
+ */
+class AssertTaxRuleIsAppliedToAllPricesIncludingTax extends AbstractAssertTaxRuleIsAppliedToAllPrices
+{
+    /**
+     * Constraint severeness.
+     *
+     * @var string
+     */
+    protected $severeness = 'high';
+
+    /**
+     * Get prices on category page.
+     *
+     * @param $productName
+     * @param array $actualPrices
+     * @return array
+     */
+    public function getCategoryPrices($productName, $actualPrices)
+    {
+        $priceBlock = $this->catalogCategoryView->getListProductBlock()->getProductPriceBlock($productName);
+        $actualPrices['category_price_excl_tax'] = null;
+        $actualPrices['category_price_incl_tax'] = $priceBlock->getEffectivePrice();
+
+        return $actualPrices;
+    }
+
+    /**
+     * Get product view prices.
+     *
+     * @param array $actualPrices
+     * @return array
+     */
+    public function getProductPagePrices($actualPrices)
+    {
+        $viewBlock = $this->catalogProductView->getViewBlock();
+        $actualPrices['product_view_price_excl_tax'] = null;
+        $actualPrices['product_view_price_incl_tax'] = $viewBlock->getPriceBlock()->getEffectivePrice();
+
+        return $actualPrices;
+    }
+
+    /**
+     * Get totals.
+     *
+     * @param $actualPrices
+     * @return array
+     */
+    public function getTotals($actualPrices)
+    {
+        $totalsBlock = $this->checkoutCart->getTotalsBlock();
+        $actualPrices['subtotal_excl_tax'] = null;
+        $actualPrices['subtotal_incl_tax'] = $totalsBlock->getSubtotal();
+        $actualPrices['discount'] = $totalsBlock->getDiscount();
+        $actualPrices['shipping_excl_tax'] = $totalsBlock->getShippingPrice();
+        $actualPrices['shipping_incl_tax'] = $totalsBlock->getShippingPriceInclTax();
+        $actualPrices['tax'] = $totalsBlock->getTax();
+        $actualPrices['subtotal_excl_tax'] = $totalsBlock->getSubtotalExcludingTax();
+        $actualPrices['subtotal_incl_tax'] = $totalsBlock->getSubtotalIncludingTax();
+
+        return $actualPrices;
+    }
+}
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRuleNotInGrid.php b/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRuleNotInGrid.php
index b7cb74fc33b2a26c9c69658dc54fcbf8618e9a0b..0d5d85d1bcc7656178bc26fbeb66e5b3ce39c742 100644
--- a/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRuleNotInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRuleNotInGrid.php
@@ -8,7 +8,7 @@ namespace Magento\Tax\Test\Constraint;
 
 use Magento\Tax\Test\Fixture\TaxRule;
 use Magento\Tax\Test\Page\Adminhtml\TaxRuleIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertTaxRuleNotInGrid
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRuleSuccessDeleteMessage.php b/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRuleSuccessDeleteMessage.php
index 590f9a435e074517af2c931c0a9fb213c4be693d..6649a25316ed9a7ae5e2f4e2c315a66a1fa5059d 100644
--- a/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRuleSuccessDeleteMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRuleSuccessDeleteMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Tax\Test\Constraint;
 
 use Magento\Tax\Test\Page\Adminhtml\TaxRuleIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertTaxRuleSuccessDeleteMessage
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRuleSuccessSaveMessage.php b/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRuleSuccessSaveMessage.php
index 9dec5c65b37ca3a3a03821ac2bff3c4e1bf84933..1507e373dc21f00f56ebf5db4dbbc5b923237fc0 100644
--- a/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRuleSuccessSaveMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/Constraint/AssertTaxRuleSuccessSaveMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Tax\Test\Constraint;
 
 use Magento\Tax\Test\Page\Adminhtml\TaxRuleIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertSuccessSavedMessageTaxRule
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/Fixture/TaxClass.php b/dev/tests/functional/tests/app/Magento/Tax/Test/Fixture/TaxClass.php
index 8f161b790ab2538ddbcc5bb261e1ca5921c2a0ac..1c81488b1fccac907d551f996604d5ea03065bb0 100644
--- a/dev/tests/functional/tests/app/Magento/Tax/Test/Fixture/TaxClass.php
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/Fixture/TaxClass.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Tax\Test\Fixture;
 
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Class TaxClass
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/Fixture/TaxRate.php b/dev/tests/functional/tests/app/Magento/Tax/Test/Fixture/TaxRate.php
index e61fc1352cfdf314869fc27a0096f9be089038bc..daea91ae3039607aa3668ad3ccf965c97bee7277 100644
--- a/dev/tests/functional/tests/app/Magento/Tax/Test/Fixture/TaxRate.php
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/Fixture/TaxRate.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Tax\Test\Fixture;
 
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Class TaxRate
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/Fixture/TaxRule.php b/dev/tests/functional/tests/app/Magento/Tax/Test/Fixture/TaxRule.php
index e14f3fb7b548e3312ab3f551d092da3b125a05d9..9655754d1fa5b0f36de0970e6bd871fb4df003e0 100644
--- a/dev/tests/functional/tests/app/Magento/Tax/Test/Fixture/TaxRule.php
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/Fixture/TaxRule.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Tax\Test\Fixture;
 
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Class TaxRule
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/Fixture/TaxRule/TaxClass.php b/dev/tests/functional/tests/app/Magento/Tax/Test/Fixture/TaxRule/TaxClass.php
index a6c807c364a162821860eb0717421c9f39704c03..997d0600cc759907a4e86346d420b53e61bb3a3c 100644
--- a/dev/tests/functional/tests/app/Magento/Tax/Test/Fixture/TaxRule/TaxClass.php
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/Fixture/TaxRule/TaxClass.php
@@ -6,8 +6,8 @@
 
 namespace Magento\Tax\Test\Fixture\TaxRule;
 
-use Mtf\Fixture\FixtureFactory;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class TaxClass
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/Fixture/TaxRule/TaxRate.php b/dev/tests/functional/tests/app/Magento/Tax/Test/Fixture/TaxRule/TaxRate.php
index 0bda05d9e923739c3896175630253d59b2850c15..aacc3a65e7ab91f8292fc0461f9ed0de4b4e826d 100644
--- a/dev/tests/functional/tests/app/Magento/Tax/Test/Fixture/TaxRule/TaxRate.php
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/Fixture/TaxRule/TaxRate.php
@@ -6,8 +6,8 @@
 
 namespace Magento\Tax\Test\Fixture\TaxRule;
 
-use Mtf\Fixture\FixtureFactory;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class TaxRate
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/Handler/Curl/RemoveTaxRule.php b/dev/tests/functional/tests/app/Magento/Tax/Test/Handler/Curl/RemoveTaxRule.php
index f55a0fe687dc6ca36e6a7b6fcf23de296f7fe2bb..4493f800006d0809f1601e9b1b2048c459e1e531 100644
--- a/dev/tests/functional/tests/app/Magento/Tax/Test/Handler/Curl/RemoveTaxRule.php
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/Handler/Curl/RemoveTaxRule.php
@@ -6,12 +6,12 @@
 
 namespace Magento\Tax\Test\Handler\Curl;
 
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Handler\Curl;
-use Mtf\System\Config;
-use Mtf\Util\Protocol\CurlInterface;
-use Mtf\Util\Protocol\CurlTransport;
-use Mtf\Util\Protocol\CurlTransport\BackendDecorator;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Handler\Curl;
+use Magento\Mtf\System\Config;
+use Magento\Mtf\Util\Protocol\CurlInterface;
+use Magento\Mtf\Util\Protocol\CurlTransport;
+use Magento\Mtf\Util\Protocol\CurlTransport\BackendDecorator;
 
 /**
  * Curl handler remove all tax rules
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/Handler/TaxClass/Curl.php b/dev/tests/functional/tests/app/Magento/Tax/Test/Handler/TaxClass/Curl.php
index e9cb9e4883d39f2b95db188d39fd0b9ab7ba520d..636a0e8a686ce0c7def5080225913ece8e1bb9de 100644
--- a/dev/tests/functional/tests/app/Magento/Tax/Test/Handler/TaxClass/Curl.php
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/Handler/TaxClass/Curl.php
@@ -6,12 +6,12 @@
 
 namespace Magento\Tax\Test\Handler\TaxClass;
 
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Handler\Curl as AbstractCurl;
-use Mtf\System\Config;
-use Mtf\Util\Protocol\CurlInterface;
-use Mtf\Util\Protocol\CurlTransport;
-use Mtf\Util\Protocol\CurlTransport\BackendDecorator;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Handler\Curl as AbstractCurl;
+use Magento\Mtf\System\Config;
+use Magento\Mtf\Util\Protocol\CurlInterface;
+use Magento\Mtf\Util\Protocol\CurlTransport;
+use Magento\Mtf\Util\Protocol\CurlTransport\BackendDecorator;
 
 /**
  * Class Curl
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/Handler/TaxClass/TaxClassInterface.php b/dev/tests/functional/tests/app/Magento/Tax/Test/Handler/TaxClass/TaxClassInterface.php
index 21f7342dd3a7bfa32099f449622f9e69b5217df0..499654912d749a8567c08279a9ef38ce06cacddb 100644
--- a/dev/tests/functional/tests/app/Magento/Tax/Test/Handler/TaxClass/TaxClassInterface.php
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/Handler/TaxClass/TaxClassInterface.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Tax\Test\Handler\TaxClass;
 
-use Mtf\Handler\HandlerInterface;
+use Magento\Mtf\Handler\HandlerInterface;
 
 /**
  * Interface TaxClassInterface
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/Handler/TaxRate/Curl.php b/dev/tests/functional/tests/app/Magento/Tax/Test/Handler/TaxRate/Curl.php
index 2c820b1c6df2afc7d63265a4eddbdfc20faa5f21..99287a4979567cd69b66eaf2410902bf8ad02808 100644
--- a/dev/tests/functional/tests/app/Magento/Tax/Test/Handler/TaxRate/Curl.php
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/Handler/TaxRate/Curl.php
@@ -6,12 +6,12 @@
 
 namespace Magento\Tax\Test\Handler\TaxRate;
 
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Handler\Curl as AbstractCurl;
-use Mtf\System\Config;
-use Mtf\Util\Protocol\CurlInterface;
-use Mtf\Util\Protocol\CurlTransport;
-use Mtf\Util\Protocol\CurlTransport\BackendDecorator;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Handler\Curl as AbstractCurl;
+use Magento\Mtf\System\Config;
+use Magento\Mtf\Util\Protocol\CurlInterface;
+use Magento\Mtf\Util\Protocol\CurlTransport;
+use Magento\Mtf\Util\Protocol\CurlTransport\BackendDecorator;
 
 /**
  * Class Curl
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/Handler/TaxRate/TaxRateInterface.php b/dev/tests/functional/tests/app/Magento/Tax/Test/Handler/TaxRate/TaxRateInterface.php
index 3c39b84398b461a9a7825002db57c3c7be007cb4..470de7e57faf6448e6abb8ecb09870a64e823459 100644
--- a/dev/tests/functional/tests/app/Magento/Tax/Test/Handler/TaxRate/TaxRateInterface.php
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/Handler/TaxRate/TaxRateInterface.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Tax\Test\Handler\TaxRate;
 
-use Mtf\Handler\HandlerInterface;
+use Magento\Mtf\Handler\HandlerInterface;
 
 /**
  * Interface TaxRateInterface
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/Handler/TaxRule/Curl.php b/dev/tests/functional/tests/app/Magento/Tax/Test/Handler/TaxRule/Curl.php
index 97f9abc6dbc07bbb892e207d7aed2a62b9219ef9..e14120345ebbc2ead5d4830b2238a8063464dc9c 100644
--- a/dev/tests/functional/tests/app/Magento/Tax/Test/Handler/TaxRule/Curl.php
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/Handler/TaxRule/Curl.php
@@ -6,12 +6,12 @@
 
 namespace Magento\Tax\Test\Handler\TaxRule;
 
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Handler\Curl as AbstractCurl;
-use Mtf\System\Config;
-use Mtf\Util\Protocol\CurlInterface;
-use Mtf\Util\Protocol\CurlTransport;
-use Mtf\Util\Protocol\CurlTransport\BackendDecorator;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Handler\Curl as AbstractCurl;
+use Magento\Mtf\System\Config;
+use Magento\Mtf\Util\Protocol\CurlInterface;
+use Magento\Mtf\Util\Protocol\CurlTransport;
+use Magento\Mtf\Util\Protocol\CurlTransport\BackendDecorator;
 
 /**
  * Class Curl
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/Handler/TaxRule/TaxRuleInterface.php b/dev/tests/functional/tests/app/Magento/Tax/Test/Handler/TaxRule/TaxRuleInterface.php
index b48837992af54c199512457116d047ab15ce6dda..417b74b1cf7478a35e39a362d61df3adb3a2fa5d 100644
--- a/dev/tests/functional/tests/app/Magento/Tax/Test/Handler/TaxRule/TaxRuleInterface.php
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/Handler/TaxRule/TaxRuleInterface.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Tax\Test\Handler\TaxRule;
 
-use Mtf\Handler\HandlerInterface;
+use Magento\Mtf\Handler\HandlerInterface;
 
 /**
  * Interface TaxRuleInterface
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/Repository/TaxClass.php b/dev/tests/functional/tests/app/Magento/Tax/Test/Repository/TaxClass.php
index 6c09d879535fd89c6bbdd277d9d0d891bfb542b6..071b74555d17bf1af67339de8572e3a6b3f4f69b 100644
--- a/dev/tests/functional/tests/app/Magento/Tax/Test/Repository/TaxClass.php
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/Repository/TaxClass.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Tax\Test\Repository;
 
-use Mtf\Repository\AbstractRepository;
+use Magento\Mtf\Repository\AbstractRepository;
 
 /**
  * Class TaxClass Repository
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/Repository/TaxRate.php b/dev/tests/functional/tests/app/Magento/Tax/Test/Repository/TaxRate.php
index 4303c1aaa7da79ce4797e4b9a3d3945c13b52b83..e5a571dc1d582048586c00fa42fe8564418ab4c4 100644
--- a/dev/tests/functional/tests/app/Magento/Tax/Test/Repository/TaxRate.php
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/Repository/TaxRate.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Tax\Test\Repository;
 
-use Mtf\Repository\AbstractRepository;
+use Magento\Mtf\Repository\AbstractRepository;
 
 /**
  * Class TaxRate Repository
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/Repository/TaxRule.php b/dev/tests/functional/tests/app/Magento/Tax/Test/Repository/TaxRule.php
index 7da39b35c7df00e7b755c077900b80a62ea5cb0d..782ec7e2406b96a14ef33dfd30853c671eb69fa2 100644
--- a/dev/tests/functional/tests/app/Magento/Tax/Test/Repository/TaxRule.php
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/Repository/TaxRule.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Tax\Test\Repository;
 
-use Mtf\Repository\AbstractRepository;
+use Magento\Mtf\Repository\AbstractRepository;
 
 /**
  * Class TaxRule Repository
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/TestCase/CreateTaxRateEntityTest.php b/dev/tests/functional/tests/app/Magento/Tax/Test/TestCase/CreateTaxRateEntityTest.php
index 3bfc605712b0c9e5ebaceca060efabb2f83bfbc7..ae00c783d685bb61330e4b1eba2708d3400627ff 100644
--- a/dev/tests/functional/tests/app/Magento/Tax/Test/TestCase/CreateTaxRateEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/TestCase/CreateTaxRateEntityTest.php
@@ -9,7 +9,7 @@ namespace Magento\Tax\Test\TestCase;
 use Magento\Tax\Test\Fixture\TaxRate;
 use Magento\Tax\Test\Page\Adminhtml\TaxRateIndex;
 use Magento\Tax\Test\Page\Adminhtml\TaxRateNew;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Flow:
@@ -26,6 +26,11 @@ use Mtf\TestCase\Injectable;
  */
 class CreateTaxRateEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'CS';
+    /* end tags */
+
     /**
      * Tax Rate grid page.
      *
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/TestCase/CreateTaxRuleEntityTest.php b/dev/tests/functional/tests/app/Magento/Tax/Test/TestCase/CreateTaxRuleEntityTest.php
index 4e1681d3966bec1950a9e6052941ad36e24df5d2..b4faef417a77acaff74c450dc864f3d348cf2d5f 100644
--- a/dev/tests/functional/tests/app/Magento/Tax/Test/TestCase/CreateTaxRuleEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/TestCase/CreateTaxRuleEntityTest.php
@@ -9,8 +9,8 @@ namespace Magento\Tax\Test\TestCase;
 use Magento\Tax\Test\Fixture\TaxRule;
 use Magento\Tax\Test\Page\Adminhtml\TaxRuleIndex;
 use Magento\Tax\Test\Page\Adminhtml\TaxRuleNew;
-use Mtf\ObjectManager;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\ObjectManager;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Flow:
@@ -27,6 +27,13 @@ use Mtf\TestCase\Injectable;
  */
 class CreateTaxRuleEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'CS';
+    const TEST_TYPE = 'acceptance_test';
+    const STABLE = 'no';
+    /* end tags */
+
     /**
      * Tax rule index page.
      *
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/TestCase/CreateTaxRuleEntityTest/testCreateTaxRule.csv b/dev/tests/functional/tests/app/Magento/Tax/Test/TestCase/CreateTaxRuleEntityTest/testCreateTaxRule.csv
index 3b880e7f96e986298a49df1e54a34bce6c93466f..9454ad193304bdcd28fc2fad739cadad9257e4ad 100644
--- a/dev/tests/functional/tests/app/Magento/Tax/Test/TestCase/CreateTaxRuleEntityTest/testCreateTaxRule.csv
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/TestCase/CreateTaxRuleEntityTest/testCreateTaxRule.csv
@@ -1,5 +1,6 @@
-"taxRule/data/code";"taxRule/data/tax_rate/dataSet/rate_0";"taxRule/data/tax_rate/dataSet/rate_1";"taxRule/data/tax_rate/dataSet/rate_2";"taxRule/data/tax_customer_class/dataSet/class_0";"taxRule/data/tax_customer_class/dataSet/class_1";"taxRule/data/tax_product_class/dataSet/class_0";"taxRule/data/tax_product_class/dataSet/class_1";"taxRule/data/priority";"taxRule/data/position";"constraint"
-"TaxIdentifier%isolation%";"US-CA-*-Rate 1";"-";"-";"-";"-";"-";"-";"-";"-";"assertTaxRuleSuccessSaveMessage, assertTaxRuleInGrid, assertTaxRuleForm"
-"TaxIdentifier%isolation%";"US-CA-*-Rate 1";"US-NY-*-Rate 1";"-";"customer_tax_class";"-";"product_tax_class";"-";1;1;"assertTaxRuleSuccessSaveMessage, assertTaxRuleInGrid, assertTaxRuleForm"
-"TaxIdentifier%isolation%";"default";"US-NY-*-Rate 1";"US-CA-*-Rate 1";"Retail Customer";"customer_tax_class";"Taxable Goods";"-";"-";1;"assertTaxRuleSuccessSaveMessage, assertTaxRuleInGrid, assertTaxRuleForm"
-"TaxIdentifier%isolation%";"withZipRange";"US-CA-*-Rate 1";"-";"Retail Customer";"customer_tax_class";"Taxable Goods";"product_tax_class";1;"-";"assertTaxRuleSuccessSaveMessage, assertTaxRuleInGrid, assertTaxRuleForm"
+"description";"taxRule/data/code";"taxRule/data/tax_rate/dataSet/rate_0";"taxRule/data/tax_rate/dataSet/rate_1";"taxRule/data/tax_rate/dataSet/rate_2";"taxRule/data/tax_customer_class/dataSet/class_0";"taxRule/data/tax_customer_class/dataSet/class_1";"taxRule/data/tax_product_class/dataSet/class_0";"taxRule/data/tax_product_class/dataSet/class_1";"taxRule/data/priority";"taxRule/data/position";"constraint";"tag"
+"Creating tax rule with default values";"TaxIdentifier%isolation%";"US-CA-*-Rate 1";"-";"-";"-";"-";"-";"-";"-";"-";"assertTaxRuleSuccessSaveMessage, assertTaxRuleInGrid, assertTaxRuleForm";""
+"Creating tax rule with new tax classes";"TaxIdentifier%isolation%";"US-CA-*-Rate 1";"US-NY-*-Rate 1";"-";"customer_tax_class";"-";"product_tax_class";"-";1;1;"assertTaxRuleSuccessSaveMessage, assertTaxRuleInGrid, assertTaxRuleForm";""
+"Creating tax rule with new tax classes and tax rate";"TaxIdentifier%isolation%";"default";"US-NY-*-Rate 1";"US-CA-*-Rate 1";"Retail Customer";"customer_tax_class";"Taxable Goods";"-";"-";1;"assertTaxRuleSuccessSaveMessage, assertTaxRuleInGrid, assertTaxRuleForm";""
+"Creating tax rule with new tax rate that has zip range";"TaxIdentifier%isolation%";"withZipRange";"US-CA-*-Rate 1";"-";"Retail Customer";"customer_tax_class";"Taxable Goods";"product_tax_class";1;"-";"assertTaxRuleSuccessSaveMessage, assertTaxRuleInGrid, assertTaxRuleForm";""
+"MAGETWO-12438: Create Tax Rule with New and Existing Tax Rate, Customer Tax Class, Product Tax Class";"TaxIdentifier%isolation%";"US-CA-*-Rate 1";"us_ny_rate_8_1";"-";"Retail Customer";"customer_tax_class";"Taxable Goods";"product_tax_class";0;0;"assertTaxRuleSuccessSaveMessage, assertTaxRuleInGrid";"bamboo_plan:end_to_end,test_type:acceptance_test"
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/TestCase/DeleteTaxRateEntityTest.php b/dev/tests/functional/tests/app/Magento/Tax/Test/TestCase/DeleteTaxRateEntityTest.php
index 56d7d6b63962e28497e9006fe48c14dba9a51eec..4bbdfbe520493e9ce5e1eafb98f0598a2edf5f06 100644
--- a/dev/tests/functional/tests/app/Magento/Tax/Test/TestCase/DeleteTaxRateEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/TestCase/DeleteTaxRateEntityTest.php
@@ -9,7 +9,7 @@ namespace Magento\Tax\Test\TestCase;
 use Magento\Tax\Test\Fixture\TaxRate;
 use Magento\Tax\Test\Page\Adminhtml\TaxRateIndex;
 use Magento\Tax\Test\Page\Adminhtml\TaxRateNew;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Flow:
@@ -29,6 +29,11 @@ use Mtf\TestCase\Injectable;
  */
 class DeleteTaxRateEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'CS';
+    /* end tags */
+
     /**
      * Tax Rate grid page.
      *
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/TestCase/DeleteTaxRuleEntityTest.php b/dev/tests/functional/tests/app/Magento/Tax/Test/TestCase/DeleteTaxRuleEntityTest.php
index ff857980c529e5a589bdae28d587ddffd342a4ca..aa0fac22b2b436a3036a1879d76fa827df2651ae 100644
--- a/dev/tests/functional/tests/app/Magento/Tax/Test/TestCase/DeleteTaxRuleEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/TestCase/DeleteTaxRuleEntityTest.php
@@ -10,8 +10,8 @@ use Magento\Customer\Test\Fixture\AddressInjectable;
 use Magento\Tax\Test\Fixture\TaxRule;
 use Magento\Tax\Test\Page\Adminhtml\TaxRuleIndex;
 use Magento\Tax\Test\Page\Adminhtml\TaxRuleNew;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for Delete TaxRuleEntity
@@ -32,6 +32,11 @@ use Mtf\TestCase\Injectable;
  */
 class DeleteTaxRuleEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'CS';
+    /* end tags */
+
     /**
      * Tax Rule grid page
      *
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/TestCase/TaxRuleTest.php b/dev/tests/functional/tests/app/Magento/Tax/Test/TestCase/TaxRuleTest.php
deleted file mode 100644
index d41d04e09a111ab28a1eba27363d4425524d4e76..0000000000000000000000000000000000000000
--- a/dev/tests/functional/tests/app/Magento/Tax/Test/TestCase/TaxRuleTest.php
+++ /dev/null
@@ -1,69 +0,0 @@
-<?php
-/**
- * @category    Mtf
- * @package     Mtf
- * @subpackage  functional_tests
- * Copyright © 2015 Magento. All rights reserved.
- * See COPYING.txt for license details.
- */
-
-namespace Magento\Tax\Test\TestCase;
-
-use Magento\Tax\Test\Fixture\TaxRule;
-use Mtf\Factory\Factory;
-use Mtf\TestCase\Functional;
-
-/**
- * Class TaxRuleTest
- * Functional test for Tax Rule configuration
- */
-class TaxRuleTest extends Functional
-{
-    /**
-     * Create Tax Rule with new and existing Tax Rate, Customer Tax Class, Product Tax Class
-     *
-     * @ZephyrId MAGETWO-12438
-     */
-    public function testCreateTaxRule()
-    {
-        //Data
-        $objectManager = Factory::getObjectManager();
-        $fixture = $objectManager->create('Magento\Tax\Test\Fixture\TaxRule', ['dataSet' => 'us_ca_ny_rule']);
-        //Pages
-        $taxGridPage = Factory::getPageFactory()->getTaxRuleIndex();
-        $newTaxRulePage = Factory::getPageFactory()->getTaxRuleNew();
-        //Steps
-        Factory::getApp()->magentoBackendLoginUser();
-        $taxGridPage->open();
-        $taxGridPage->getGridPageActions()->addNew();
-        $newTaxRulePage->getTaxRuleForm()->fill($fixture);
-        $newTaxRulePage->getFormPageActions()->saveAndContinue();
-        //Verifying
-        $newTaxRulePage->getMessagesBlock()->waitSuccessMessage();
-        $this->_assertOnGrid($fixture);
-    }
-
-    /**
-     * Assert existing tax rule on manage tax rule grid
-     *
-     * @param TaxRule $fixture
-     */
-    protected function _assertOnGrid(TaxRule $fixture)
-    {
-        //Data
-        $filter = [
-            'code' => $fixture->getCode(),
-            'tax_rate' => implode(', ', $fixture->getTaxRate()),
-        ];
-        if ($fixture->getTaxCustomerClass() !== null) {
-            $filter['tax_customer_class'] = implode(', ', $fixture->getTaxCustomerClass());
-        }
-        if ($fixture->getTaxProductClass() !== null) {
-            $filter['tax_product_class'] = implode(', ', $fixture->getTaxProductClass());
-        }
-        //Verification
-        $taxGridPage = Factory::getPageFactory()->getTaxRuleIndex();
-        $taxGridPage->open();
-        $this->assertTrue($taxGridPage->getTaxRuleGrid()->isRowVisible($filter), 'New tax rule was not found.');
-    }
-}
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/TestCase/UpdateTaxRateEntityTest.php b/dev/tests/functional/tests/app/Magento/Tax/Test/TestCase/UpdateTaxRateEntityTest.php
index 2d616f37ea9a565712d15b14a2a090a0a6bd0fc6..c11e2e5ae853f217cd1b8c3c601d7e847db24923 100644
--- a/dev/tests/functional/tests/app/Magento/Tax/Test/TestCase/UpdateTaxRateEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/TestCase/UpdateTaxRateEntityTest.php
@@ -9,7 +9,7 @@ namespace Magento\Tax\Test\TestCase;
 use Magento\Tax\Test\Fixture\TaxRate;
 use Magento\Tax\Test\Page\Adminhtml\TaxRateIndex;
 use Magento\Tax\Test\Page\Adminhtml\TaxRateNew;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Flow:
@@ -31,6 +31,11 @@ use Mtf\TestCase\Injectable;
  */
 class UpdateTaxRateEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'CS';
+    /* end tags */
+
     /**
      * Tax Rate grid page.
      *
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/TestCase/UpdateTaxRuleEntityTest.php b/dev/tests/functional/tests/app/Magento/Tax/Test/TestCase/UpdateTaxRuleEntityTest.php
index 1acddac05d93760466dcf4dc6e8f7a26589c7186..8cd7b7abe08bf60ad0dcfb08219bbe612a1e1049 100644
--- a/dev/tests/functional/tests/app/Magento/Tax/Test/TestCase/UpdateTaxRuleEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/TestCase/UpdateTaxRuleEntityTest.php
@@ -9,9 +9,9 @@ namespace Magento\Tax\Test\TestCase;
 use Magento\Tax\Test\Fixture\TaxRule;
 use Magento\Tax\Test\Page\Adminhtml\TaxRuleIndex;
 use Magento\Tax\Test\Page\Adminhtml\TaxRuleNew;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\ObjectManager;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\ObjectManager;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Flow:
@@ -33,6 +33,11 @@ use Mtf\TestCase\Injectable;
  */
 class UpdateTaxRuleEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'CS';
+    /* end tags */
+
     /**
      * Tax Rule grid page.
      *
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/TestStep/CreateTaxRuleStep.php b/dev/tests/functional/tests/app/Magento/Tax/Test/TestStep/CreateTaxRuleStep.php
new file mode 100644
index 0000000000000000000000000000000000000000..e90c0be6bc439383e4c016b3b49b611e6e1fac26
--- /dev/null
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/TestStep/CreateTaxRuleStep.php
@@ -0,0 +1,63 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+
+namespace Magento\Tax\Test\TestStep;
+
+use Mtf\Fixture\FixtureFactory;
+use Mtf\TestStep\TestStepInterface;
+
+/**
+ * Creating tax rule
+ */
+class CreateTaxRuleStep implements TestStepInterface
+{
+    /**
+     * Tax Rule
+     *
+     * @var string
+     */
+    protected $taxRule;
+
+    /**
+     * Factory for Fixture
+     *
+     * @var FixtureFactory
+     */
+    protected $fixtureFactory;
+
+    /**
+     * Preparing step properties
+     *
+     * @constructor
+     * @param FixtureFactory $fixtureFactory
+     * @param string $taxRule
+     */
+    public function __construct(FixtureFactory $fixtureFactory, $taxRule)
+    {
+        $this->fixtureFactory = $fixtureFactory;
+        $this->taxRule = $taxRule;
+    }
+
+    /**
+     * Create tax rule
+     *
+     * @return array
+     */
+    public function run()
+    {
+        $result['taxRule'] = null;
+        if ($this->taxRule != '-') {
+            $taxRule = $this->fixtureFactory->createByCode(
+                'taxRule',
+                ['dataSet' => $this->taxRule]
+            );
+            $taxRule->persist();
+            $result['taxRule'] = $taxRule;
+        }
+
+        return $result;
+    }
+}
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/TestStep/DeleteAllTaxRulesStep.php b/dev/tests/functional/tests/app/Magento/Tax/Test/TestStep/DeleteAllTaxRulesStep.php
index 1fe46431402cfe0b7267d90662d37fe662b12c85..69b0cb8e48754397a8a3d56873fcc721f7e6269a 100644
--- a/dev/tests/functional/tests/app/Magento/Tax/Test/TestStep/DeleteAllTaxRulesStep.php
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/TestStep/DeleteAllTaxRulesStep.php
@@ -8,7 +8,7 @@ namespace Magento\Tax\Test\TestStep;
 
 use Magento\Tax\Test\Page\Adminhtml\TaxRuleIndex;
 use Magento\Tax\Test\Page\Adminhtml\TaxRuleNew;
-use Mtf\TestStep\TestStepInterface;
+use Magento\Mtf\TestStep\TestStepInterface;
 
 /**
  * Class DeleteAllTaxRulesStep
diff --git a/dev/tests/functional/tests/app/Magento/Tax/Test/etc/constraint.xml b/dev/tests/functional/tests/app/Magento/Tax/Test/etc/constraint.xml
index cdc24d17ed0778c62d79ec44e5ab1962c8ea323d..6776506ada7ba3b03d55a9a6a0c7296b2e2568c3 100644
--- a/dev/tests/functional/tests/app/Magento/Tax/Test/etc/constraint.xml
+++ b/dev/tests/functional/tests/app/Magento/Tax/Test/etc/constraint.xml
@@ -57,6 +57,33 @@
     <assertTaxRuleIsApplied module="Magento_Tax">
         <severity>high</severity>
     </assertTaxRuleIsApplied>
+    <assertTaxRuleIsAppliedToAllPricesExcludingTax module="Magento_Tax">
+        <severeness>high</severeness>
+    </assertTaxRuleIsAppliedToAllPricesExcludingTax>
+    <assertTaxRuleIsAppliedToAllPricesIncludingTax module="Magento_Tax">
+        <severeness>high</severeness>
+    </assertTaxRuleIsAppliedToAllPricesIncludingTax>
+    <assertTaxRuleIsAppliedToAllPricesExcludingIncludingTax module="Magento_Tax">
+        <severeness>high</severeness>
+    </assertTaxRuleIsAppliedToAllPricesExcludingIncludingTax>
+    <assertTaxCalculationAfterCheckoutExcludingIncludingTax module="Magento_Tax">
+        <severeness>high</severeness>
+    </assertTaxCalculationAfterCheckoutExcludingIncludingTax>
+    <assertTaxCalculationAfterCheckoutExcludingTax module="Magento_Tax">
+        <severeness>high</severeness>
+    </assertTaxCalculationAfterCheckoutExcludingTax>
+    <assertTaxCalculationAfterCheckoutIncludingTax module="Magento_Tax">
+        <severeness>high</severeness>
+    </assertTaxCalculationAfterCheckoutIncludingTax>
+    <assertOrderTaxOnBackendExcludingIncludingTax module="Magento_Tax">
+        <severeness>high</severeness>
+    </assertOrderTaxOnBackendExcludingIncludingTax>
+    <assertOrderTaxOnBackendIncludingTax module="Magento_Tax">
+        <severeness>high</severeness>
+    </assertOrderTaxOnBackendIncludingTax>
+    <assertOrderTaxOnBackendExcludingTax module="Magento_Tax">
+        <severeness>high</severeness>
+    </assertOrderTaxOnBackendExcludingTax>
     <assertTaxRuleIsAppliedToAllPrices module="Magento_Tax">
         <severity>high</severity>
     </assertTaxRuleIsAppliedToAllPrices>
diff --git a/dev/tests/functional/tests/app/Magento/Theme/Test/Block/Html/Footer.php b/dev/tests/functional/tests/app/Magento/Theme/Test/Block/Html/Footer.php
index 391b1fed24904f74add81180e2f316e1175355a8..f670da230ee3d91d2077f69f5a9f63fdd4198aba 100644
--- a/dev/tests/functional/tests/app/Magento/Theme/Test/Block/Html/Footer.php
+++ b/dev/tests/functional/tests/app/Magento/Theme/Test/Block/Html/Footer.php
@@ -7,9 +7,9 @@
 
 namespace Magento\Theme\Test\Block\Html;
 
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
 use Magento\Store\Test\Fixture\Store;
-use Mtf\Block\Block;
-use Mtf\Client\Element\Locator;
 
 /**
  * Footer block
@@ -56,7 +56,7 @@ class Footer extends Block
      * Click on link by name
      *
      * @param string $linkName
-     * @return \Mtf\Client\Element
+     * @return void
      * @throws \Exception
      */
     public function clickLink($linkName)
diff --git a/dev/tests/functional/tests/app/Magento/Theme/Test/Block/Html/Title.php b/dev/tests/functional/tests/app/Magento/Theme/Test/Block/Html/Title.php
index 0bf70a50cb0bc730bcb75cc7ce732db1e6911b6a..2217609ad80bcc7ab161067d31a340235c1ab1c4 100644
--- a/dev/tests/functional/tests/app/Magento/Theme/Test/Block/Html/Title.php
+++ b/dev/tests/functional/tests/app/Magento/Theme/Test/Block/Html/Title.php
@@ -7,7 +7,7 @@
 
 namespace Magento\Theme\Test\Block\Html;
 
-use Mtf\Block\Block;
+use Magento\Mtf\Block\Block;
 
 /**
  * Page title block
diff --git a/dev/tests/functional/tests/app/Magento/Theme/Test/Block/Html/Topmenu.php b/dev/tests/functional/tests/app/Magento/Theme/Test/Block/Html/Topmenu.php
index 1983b20e3e16ea6617f9729910180ef09e08d33c..0326a8150a647a0a576ab959e10ed4951f85a988 100644
--- a/dev/tests/functional/tests/app/Magento/Theme/Test/Block/Html/Topmenu.php
+++ b/dev/tests/functional/tests/app/Magento/Theme/Test/Block/Html/Topmenu.php
@@ -7,8 +7,8 @@
 
 namespace Magento\Theme\Test\Block\Html;
 
-use Mtf\Block\Block;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class Topmenu
diff --git a/dev/tests/functional/tests/app/Magento/Theme/Test/Block/Links.php b/dev/tests/functional/tests/app/Magento/Theme/Test/Block/Links.php
index 54a22cb06c5831b9e056952f5123c73e7abd6128..0fd091a16ce67261109b9868daea06a474f78943 100644
--- a/dev/tests/functional/tests/app/Magento/Theme/Test/Block/Links.php
+++ b/dev/tests/functional/tests/app/Magento/Theme/Test/Block/Links.php
@@ -7,8 +7,8 @@
 
 namespace Magento\Theme\Test\Block;
 
-use Mtf\Block\Block;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Page Top Links block.
@@ -79,7 +79,10 @@ class Links extends Block
      */
     public function getLinkUrl($linkTitle)
     {
-        return trim($this->_rootElement->find(sprintf($this->link, $linkTitle), Locator::SELECTOR_XPATH)->getUrl());
+        $link = $this->_rootElement->find(sprintf($this->link, $linkTitle), Locator::SELECTOR_XPATH)
+            ->getAttribute('href');
+
+        return trim($link);
     }
 
     /**
diff --git a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Block/Adminhtml/Catalog/Category/Tree.php b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Block/Adminhtml/Catalog/Category/Tree.php
index 8e1d44aae772addcc4d859065ed1c48ac4123873..b5e8f775ea0b1b1d54f85b60f23e1e1533769af8 100644
--- a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Block/Adminhtml/Catalog/Category/Tree.php
+++ b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Block/Adminhtml/Catalog/Category/Tree.php
@@ -6,42 +6,43 @@
 
 namespace Magento\UrlRewrite\Test\Block\Adminhtml\Catalog\Category;
 
-use Magento\Catalog\Test\Fixture\CatalogCategory;
-use Mtf\Block\Block;
-use Mtf\Client\Element\Locator;
+
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
+use Magento\Catalog\Test\Fixture\Category;
 
 /**
- * Class Tree
- * Categories tree block
+ * Categories tree block.
  */
 class Tree extends Block
 {
     /**
-     * Locator value for skip category button
+     * Locator value for skip category button.
      *
      * @var string
      */
     protected $skipCategoryButton = '[data-ui-id$="skip-categories"]';
 
     /**
-     * Select category by its name
+     * Select category by its name.
      *
-     * @param string|CatalogCategory $category
+     * @param Category|null $category
      * @return void
      */
     public function selectCategory($category)
     {
-        //TODO Remove this line after old fixture was deleted
-        $categoryName = $category instanceof CatalogCategory ? $category->getName() : $category;
-        if ($categoryName) {
-            $this->_rootElement->find("//a[contains(text(),'{$categoryName}')]", Locator::SELECTOR_XPATH)->click();
+        if ($category != null && $category->hasData('name')) {
+            $this->_rootElement->find(
+                "//a[contains(text(),'{$category->getName()}')]",
+                Locator::SELECTOR_XPATH
+            )->click();
         } else {
             $this->skipCategorySelection();
         }
     }
 
     /**
-     * Skip category selection
+     * Skip category selection.
      *
      * @return void
      */
diff --git a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Block/Adminhtml/Catalog/Edit/UrlRewriteForm.php b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Block/Adminhtml/Catalog/Edit/UrlRewriteForm.php
index d510ae003d08524c872ad13c8e5fe613220b3862..dcae5848887be99e10b707cbebb4c9bb35788b5b 100644
--- a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Block/Adminhtml/Catalog/Edit/UrlRewriteForm.php
+++ b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Block/Adminhtml/Catalog/Edit/UrlRewriteForm.php
@@ -7,8 +7,9 @@
 namespace Magento\UrlRewrite\Test\Block\Adminhtml\Catalog\Edit;
 
 use Magento\Backend\Test\Block\Widget\Form;
-use Mtf\Client\Element;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Client\Element\SimpleElement;
+use Magento\Mtf\Client\Element;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class UrlRewriteForm
@@ -20,13 +21,13 @@ class UrlRewriteForm extends Form
      * Fill the root form
      *
      * @param FixtureInterface $fixture
-     * @param Element|null $element
+     * @param SimpleElement|null $element
      * @param array $replace [optional]
      * @return $this
      */
     public function fill(
         FixtureInterface $fixture,
-        Element $element = null,
+        SimpleElement $element = null,
         array $replace = []
     ) {
         $data = $fixture->getData();
@@ -43,9 +44,7 @@ class UrlRewriteForm extends Form
             }
         }
 
-        // TODO: delete line after removing old fixture
-        $fields = isset($data['fields']) ? $data['fields'] : $data;
-        $mapping = $this->dataMapping($fields);
+        $mapping = $this->dataMapping($data);
         $this->_fill($mapping, $element);
 
         return $this;
diff --git a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Block/Adminhtml/Selector.php b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Block/Adminhtml/Selector.php
index e763fc709d8265ace7428a040a4d4c772aa796be..f46e09fdf49dd903911b37cc04b3bea081d287d6 100644
--- a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Block/Adminhtml/Selector.php
+++ b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Block/Adminhtml/Selector.php
@@ -7,8 +7,8 @@
 
 namespace Magento\UrlRewrite\Test\Block\Adminhtml;
 
-use Mtf\Block\Block;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class Selector
diff --git a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Constraint/AssertPageByUrlRewriteIsNotFound.php b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Constraint/AssertPageByUrlRewriteIsNotFound.php
index 5f9a5ff1286045c88e9e300850abb0f1165e7310..389f511e37955ebf024c5dcae6ac9606b54c6fbf 100644
--- a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Constraint/AssertPageByUrlRewriteIsNotFound.php
+++ b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Constraint/AssertPageByUrlRewriteIsNotFound.php
@@ -8,8 +8,8 @@ namespace Magento\UrlRewrite\Test\Constraint;
 
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
 use Magento\UrlRewrite\Test\Fixture\UrlRewrite;
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertPageByUrlRewriteIsNotFound
@@ -29,13 +29,13 @@ class AssertPageByUrlRewriteIsNotFound extends AbstractConstraint
     /**
      * Checking the server response 404 page on frontend
      *
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @param CatalogProductView $catalogProductView
      * @param UrlRewrite $productRedirect
      * @return void
      */
     public function processAssert(
-        Browser $browser,
+        BrowserInterface $browser,
         CatalogProductView $catalogProductView,
         UrlRewrite $productRedirect
     ) {
diff --git a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Constraint/AssertUrlRewriteCategoryInGrid.php b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Constraint/AssertUrlRewriteCategoryInGrid.php
index 99bfec1f709758667583ce8d4d500f0f79500497..c1ce42c3f3f7de60b90c26e0dd8058ee44e37d39 100644
--- a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Constraint/AssertUrlRewriteCategoryInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Constraint/AssertUrlRewriteCategoryInGrid.php
@@ -6,9 +6,9 @@
 
 namespace Magento\UrlRewrite\Test\Constraint;
 
-use Magento\Catalog\Test\Fixture\CatalogCategory;
+use Magento\Catalog\Test\Fixture\Category;
 use Magento\UrlRewrite\Test\Page\Adminhtml\UrlRewriteIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertUrlRewriteCategoryInGrid
@@ -23,11 +23,11 @@ class AssertUrlRewriteCategoryInGrid extends AbstractConstraint
     /**
      * Assert that url rewrite category in grid
      *
-     * @param CatalogCategory $category
+     * @param Category $category
      * @param UrlRewriteIndex $urlRewriteIndex
      * @return void
      */
-    public function processAssert(CatalogCategory $category, UrlRewriteIndex $urlRewriteIndex)
+    public function processAssert(Category $category, UrlRewriteIndex $urlRewriteIndex)
     {
         $urlRewriteIndex->open();
         $filter = ['target_path' => strtolower($category->getUrlKey())];
diff --git a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Constraint/AssertUrlRewriteCategoryNotInGrid.php b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Constraint/AssertUrlRewriteCategoryNotInGrid.php
index 26e94a5fb20198552fe1092e7728a294b6a74c16..18184d03e7c76d9154d1f18a7326649e8925a66c 100644
--- a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Constraint/AssertUrlRewriteCategoryNotInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Constraint/AssertUrlRewriteCategoryNotInGrid.php
@@ -6,9 +6,9 @@
 
 namespace Magento\UrlRewrite\Test\Constraint;
 
-use Magento\Catalog\Test\Fixture\CatalogCategory;
+use Magento\Catalog\Test\Fixture\Category;
 use Magento\UrlRewrite\Test\Page\Adminhtml\UrlRewriteIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertUrlRewriteCategoryNotInGrid
@@ -24,10 +24,10 @@ class AssertUrlRewriteCategoryNotInGrid extends AbstractConstraint
      * Assert that category url rewrite not in grid
      *
      * @param UrlRewriteIndex $urlRewriteIndex
-     * @param CatalogCategory $category
+     * @param Category $category
      * @return void
      */
-    public function processAssert(UrlRewriteIndex $urlRewriteIndex, CatalogCategory $category)
+    public function processAssert(UrlRewriteIndex $urlRewriteIndex, Category $category)
     {
         $urlRewriteIndex->open();
         $filter = ['request_path' => $category->getUrlKey()];
diff --git a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Constraint/AssertUrlRewriteCategoryRedirect.php b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Constraint/AssertUrlRewriteCategoryRedirect.php
index f4f29d9f45491b03d6349e5a6ac365e14db10b63..ea1f0370eef8aeaeca19f4753be11d512e2bbf58 100644
--- a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Constraint/AssertUrlRewriteCategoryRedirect.php
+++ b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Constraint/AssertUrlRewriteCategoryRedirect.php
@@ -6,10 +6,10 @@
 
 namespace Magento\UrlRewrite\Test\Constraint;
 
-use Magento\Catalog\Test\Fixture\CatalogCategory;
+use Magento\Catalog\Test\Fixture\Category;
 use Magento\UrlRewrite\Test\Fixture\UrlRewrite;
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertUrlRewriteCategoryRedirect
@@ -25,14 +25,14 @@ class AssertUrlRewriteCategoryRedirect extends AbstractConstraint
      * Assert check URL rewrite category redirect
      *
      * @param UrlRewrite $urlRewrite
-     * @param CatalogCategory $category
-     * @param Browser $browser
+     * @param Category $category
+     * @param BrowserInterface $browser
      * @return void
      */
     public function processAssert(
         UrlRewrite $urlRewrite,
-        CatalogCategory $category,
-        Browser $browser
+        Category $category,
+        BrowserInterface $browser
     ) {
         $browser->open($_ENV['app_frontend_url'] . $urlRewrite->getRequestPath());
         $url = $urlRewrite->getRedirectType() == 'No'
diff --git a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Constraint/AssertUrlRewriteCustomRedirect.php b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Constraint/AssertUrlRewriteCustomRedirect.php
index 6fd56fcf941150f65dc182b23b8685eec0aa5007..2241c4fe128a81dab71023e57ec0de8bd194a56c 100644
--- a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Constraint/AssertUrlRewriteCustomRedirect.php
+++ b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Constraint/AssertUrlRewriteCustomRedirect.php
@@ -8,8 +8,8 @@ namespace Magento\UrlRewrite\Test\Constraint;
 
 use Magento\Cms\Test\Page\CmsIndex;
 use Magento\UrlRewrite\Test\Fixture\UrlRewrite;
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertUrlRewriteCustomRedirect
@@ -25,11 +25,11 @@ class AssertUrlRewriteCustomRedirect extends AbstractConstraint
      * Assert check URL rewrite custom redirect
      *
      * @param UrlRewrite $urlRewrite
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @param CmsIndex $cmsIndex
      * @return void
      */
-    public function processAssert(UrlRewrite $urlRewrite, Browser $browser, CmsIndex $cmsIndex)
+    public function processAssert(UrlRewrite $urlRewrite, BrowserInterface $browser, CmsIndex $cmsIndex)
     {
         $browser->open($_ENV['app_frontend_url'] . $urlRewrite->getRequestPath());
         $entity = $urlRewrite->getDataFieldConfig('target_path')['source']->getEntity();
diff --git a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Constraint/AssertUrlRewriteCustomSearchRedirect.php b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Constraint/AssertUrlRewriteCustomSearchRedirect.php
index d4eb1c137d877d160c4a48fd8c13f466becd75c2..c00e367145d2c3a0a36ea8a0cb0e898b46a4aa13 100644
--- a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Constraint/AssertUrlRewriteCustomSearchRedirect.php
+++ b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Constraint/AssertUrlRewriteCustomSearchRedirect.php
@@ -8,8 +8,8 @@ namespace Magento\UrlRewrite\Test\Constraint;
 
 use Magento\Catalog\Test\Page\Category\CatalogCategoryView;
 use Magento\UrlRewrite\Test\Fixture\UrlRewrite;
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertUrlRewriteCustomSearchRedirect
@@ -26,14 +26,14 @@ class AssertUrlRewriteCustomSearchRedirect extends AbstractConstraint
      *
      * @param UrlRewrite $initialRewrite
      * @param UrlRewrite $urlRewrite
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @param CatalogCategoryView $categoryView
      * @return void
      */
     public function processAssert(
         UrlRewrite $initialRewrite,
         UrlRewrite $urlRewrite,
-        Browser $browser,
+        BrowserInterface $browser,
         CatalogCategoryView $categoryView
     ) {
         $urlRequestPath = $urlRewrite->hasData('request_path')
diff --git a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Constraint/AssertUrlRewriteDeletedMessage.php b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Constraint/AssertUrlRewriteDeletedMessage.php
index b10cb73dff2eaf9198a9bb33fb9badfc4635f616..6b0d9e838dd021e4ebbded56b24ff7f41120fa81 100644
--- a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Constraint/AssertUrlRewriteDeletedMessage.php
+++ b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Constraint/AssertUrlRewriteDeletedMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\UrlRewrite\Test\Constraint;
 
 use Magento\UrlRewrite\Test\Page\Adminhtml\UrlRewriteIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertUrlRewriteDeletedMessage
diff --git a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Constraint/AssertUrlRewriteInGrid.php b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Constraint/AssertUrlRewriteInGrid.php
index 4b346f2be4f40a4ba496feddefe80e212756eed8..8235b95575105435d7a85eeb685b11a1866d0b7c 100644
--- a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Constraint/AssertUrlRewriteInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Constraint/AssertUrlRewriteInGrid.php
@@ -8,7 +8,7 @@ namespace Magento\UrlRewrite\Test\Constraint;
 
 use Magento\UrlRewrite\Test\Fixture\UrlRewrite;
 use Magento\UrlRewrite\Test\Page\Adminhtml\UrlRewriteIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertUrlRewriteInGrid
diff --git a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Constraint/AssertUrlRewriteNotInGrid.php b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Constraint/AssertUrlRewriteNotInGrid.php
index c8b3fbce3185d80200de45661a63022bb7af0940..7f2431c04621a77899cf7564b7981fb92675f06e 100644
--- a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Constraint/AssertUrlRewriteNotInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Constraint/AssertUrlRewriteNotInGrid.php
@@ -8,7 +8,7 @@ namespace Magento\UrlRewrite\Test\Constraint;
 
 use Magento\UrlRewrite\Test\Fixture\UrlRewrite;
 use Magento\UrlRewrite\Test\Page\Adminhtml\UrlRewriteIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertUrlRewriteNotInGrid
diff --git a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Constraint/AssertUrlRewriteProductRedirect.php b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Constraint/AssertUrlRewriteProductRedirect.php
index 0c7e40ba98311cb80b8fe8e9a2e131d1a2e4cf62..720dc2915b97449437e1f1418b0293a57669d6cb 100644
--- a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Constraint/AssertUrlRewriteProductRedirect.php
+++ b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Constraint/AssertUrlRewriteProductRedirect.php
@@ -8,9 +8,9 @@ namespace Magento\UrlRewrite\Test\Constraint;
 
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
 use Magento\UrlRewrite\Test\Fixture\UrlRewrite;
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Class AssertUrlRewriteProductRedirect
@@ -27,14 +27,14 @@ class AssertUrlRewriteProductRedirect extends AbstractConstraint
      *
      * @param UrlRewrite $urlRewrite
      * @param CatalogProductView $catalogProductView
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @param InjectableFixture $product
      * @return void
      */
     public function processAssert(
         UrlRewrite $urlRewrite,
         CatalogProductView $catalogProductView,
-        Browser $browser,
+        BrowserInterface $browser,
         InjectableFixture $product = null
     ) {
         $browser->open($_ENV['app_frontend_url'] . $urlRewrite->getRequestPath());
diff --git a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Constraint/AssertUrlRewriteSaveMessage.php b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Constraint/AssertUrlRewriteSaveMessage.php
index ee74a710c227ddd9d092e9fc9d2df189e971c4e3..6507dd11cdf04cc8e45c3511d2c557407bbfa5f9 100644
--- a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Constraint/AssertUrlRewriteSaveMessage.php
+++ b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Constraint/AssertUrlRewriteSaveMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\UrlRewrite\Test\Constraint;
 
 use Magento\UrlRewrite\Test\Page\Adminhtml\UrlRewriteIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertUrlRewriteSaveMessage
diff --git a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Constraint/AssertUrlRewriteSuccessOutsideRedirect.php b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Constraint/AssertUrlRewriteSuccessOutsideRedirect.php
index 62006f617930ae4c110a44ea3e839bde35c7500e..60d1fdfc8fa188e92aae03a48fe8fa1e685c970e 100644
--- a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Constraint/AssertUrlRewriteSuccessOutsideRedirect.php
+++ b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Constraint/AssertUrlRewriteSuccessOutsideRedirect.php
@@ -7,8 +7,8 @@
 namespace Magento\UrlRewrite\Test\Constraint;
 
 use Magento\UrlRewrite\Test\Fixture\UrlRewrite;
-use Mtf\Client\Browser;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertUrlRewriteSuccessOutsideRedirect
@@ -24,11 +24,11 @@ class AssertUrlRewriteSuccessOutsideRedirect extends AbstractConstraint
      * Assert that outside redirect was success
      *
      * @param UrlRewrite $urlRewrite
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @param UrlRewrite|null $initialRewrite [optional]
      * @return void
      */
-    public function processAssert(UrlRewrite $urlRewrite, Browser $browser, UrlRewrite $initialRewrite = null)
+    public function processAssert(UrlRewrite $urlRewrite, BrowserInterface $browser, UrlRewrite $initialRewrite = null)
     {
         $urlRequestPath = $urlRewrite->hasData('request_path')
             ? $urlRewrite->getRequestPath()
diff --git a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Constraint/AssertUrlRewriteUpdatedProductInGrid.php b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Constraint/AssertUrlRewriteUpdatedProductInGrid.php
index 2f7fec91332131002bce522a782d058a922be4d2..a54513d48cf5e9e0f11b0f23f49c87ebf0ae307b 100644
--- a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Constraint/AssertUrlRewriteUpdatedProductInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Constraint/AssertUrlRewriteUpdatedProductInGrid.php
@@ -8,7 +8,7 @@ namespace Magento\UrlRewrite\Test\Constraint;
 
 use Magento\Catalog\Test\Fixture\CatalogProductSimple;
 use Magento\UrlRewrite\Test\Page\Adminhtml\UrlRewriteIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertUrlRewriteUpdatedProductInGrid
diff --git a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Fixture/UrlRewrite.php b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Fixture/UrlRewrite.php
index 8d8459e15baad0f5d35218ffb62d27ed37280d3c..ace141782b55077996b11965fe80423eade146a4 100644
--- a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Fixture/UrlRewrite.php
+++ b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Fixture/UrlRewrite.php
@@ -6,7 +6,7 @@
 
 namespace Magento\UrlRewrite\Test\Fixture;
 
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Class UrlRewrite
diff --git a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Fixture/UrlRewrite/StoreId.php b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Fixture/UrlRewrite/StoreId.php
index 8d4cfb7965d72a84e45b3648e1a9becbf39b9cbd..5d234bfab7156b4bc26890eebd0f2c1202b75493 100644
--- a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Fixture/UrlRewrite/StoreId.php
+++ b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Fixture/UrlRewrite/StoreId.php
@@ -7,8 +7,8 @@
 namespace Magento\UrlRewrite\Test\Fixture\UrlRewrite;
 
 use Magento\Store\Test\Fixture\Store;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class StoreId
diff --git a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Fixture/UrlRewrite/TargetPath.php b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Fixture/UrlRewrite/TargetPath.php
index af5e022660cbfc8aca8e71b0ff9a4d716020b8dc..44614ad58326163a61320b149af2b5510566ad53 100644
--- a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Fixture/UrlRewrite/TargetPath.php
+++ b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Fixture/UrlRewrite/TargetPath.php
@@ -6,8 +6,8 @@
 
 namespace Magento\UrlRewrite\Test\Fixture\UrlRewrite;
 
-use Mtf\Fixture\FixtureFactory;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class TargetPath
diff --git a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Fixture/UrlRewriteCategory.php b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Fixture/UrlRewriteCategory.php
deleted file mode 100644
index 752bc01f896bbc064a8bb47fb742e0abe796af4b..0000000000000000000000000000000000000000
--- a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Fixture/UrlRewriteCategory.php
+++ /dev/null
@@ -1,90 +0,0 @@
-<?php
-/**
- * Copyright © 2015 Magento. All rights reserved.
- * See COPYING.txt for license details.
- */
-
-namespace Magento\UrlRewrite\Test\Fixture;
-
-use Magento\Catalog\Test\Fixture\Category as CategoryFixture;
-use Mtf\Factory\Factory;
-use Mtf\Fixture\DataFixture;
-use Mtf\System\Config;
-
-/**
- * Class UrlRewriteCategory
- * URL rewrite category fixture
- */
-class UrlRewriteCategory extends DataFixture
-{
-    /**
-     * Category for which URL rewrite is created
-     *
-     * @var CategoryFixture
-     */
-    protected $category;
-
-    /**
-     * @param Config $configuration
-     * @param array $placeholders
-     */
-    public function __construct(Config $configuration, array $placeholders = [])
-    {
-        parent::__construct($configuration, $placeholders);
-        $this->_placeholders['rewritten_category_request_path'] = [$this, 'getRewrittenRequestPath'];
-        $this->_repository = Factory::getRepositoryFactory()
-            ->getMagentoUrlRewriteUrlRewriteCategory($this->_dataConfig, $this->_data);
-
-        $this->category = Factory::getFixtureFactory()->getMagentoCatalogCategory();
-        $this->category->persist();
-    }
-
-    /**
-     * Retrieve rewritten request path
-     *
-     * @return string
-     */
-    public function getRewrittenRequestPath()
-    {
-        $categoryPath = str_replace(' ', '-', strtolower($this->category->getCategoryName()));
-        return $categoryPath . '-custom-redirect.html';
-    }
-
-    /**
-     * Retrieve original request path
-     *
-     * @return string
-     */
-    public function getOriginalRequestPath()
-    {
-        $categoryPath = str_replace(' ', '-', strtolower($this->category->getCategoryName()));
-        return $categoryPath . '.html';
-    }
-
-    /**
-     * Retrieve category name to which the product is assigned
-     *
-     * @return string
-     */
-    public function getCategoryName()
-    {
-        return $this->category->getCategoryName();
-    }
-
-    /**
-     * Retrieve URL rewrite type
-     *
-     * @return string
-     */
-    public function getUrlRewriteType()
-    {
-        return $this->getData('url_rewrite_type');
-    }
-
-    /**
-     * Initialize fixture data
-     */
-    protected function _initData()
-    {
-    }
-}
diff --git a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Fixture/UrlRewriteProduct.php b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Fixture/UrlRewriteProduct.php
deleted file mode 100644
index c8fc552008bcc5959927e0ecad76801d714ebc9e..0000000000000000000000000000000000000000
--- a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Fixture/UrlRewriteProduct.php
+++ /dev/null
@@ -1,102 +0,0 @@
-<?php
-/**
- * Copyright © 2015 Magento. All rights reserved.
- * See COPYING.txt for license details.
- */
-
-namespace Magento\UrlRewrite\Test\Fixture;
-
-use Magento\Catalog\Test\Fixture\Product as ProductFixture;
-use Mtf\Factory\Factory;
-use Mtf\Fixture\DataFixture;
-use Mtf\System\Config;
-
-/**
- * Class UrlRewriteProduct
- * URL rewrite product fixture
- */
-class UrlRewriteProduct extends DataFixture
-{
-    /**
-     * Product for which URL rewrite is created
-     *
-     * @var ProductFixture
-     */
-    protected $product;
-
-    /**
-     * @param Config $configuration
-     * @param array $placeholders
-     */
-    public function __construct(Config $configuration, $placeholders = [])
-    {
-        parent::__construct($configuration, $placeholders);
-
-        $this->_placeholders['rewritten_product_request_path'] = [$this, 'getRewrittenRequestPath'];
-        $this->_repository = Factory::getRepositoryFactory()
-            ->getMagentoUrlRewriteUrlRewriteProduct($this->_dataConfig, $this->_data);
-
-        $this->product = Factory::getFixtureFactory()->getMagentoCatalogSimpleProduct();
-        $this->product->switchData('simple');
-        $this->product->persist();
-    }
-
-    /**
-     * Retrieve rewritten request path
-     *
-     * @return string
-     */
-    public function getRewrittenRequestPath()
-    {
-        $categoryPath = str_replace(' ', '-', strtolower($this->product->getCategoryName()));
-        return $categoryPath . '/' . $this->product->getUrlKey() . '-custom-redirect.html';
-    }
-
-    /**
-     * Retrieve original request path
-     *
-     * @return string
-     */
-    public function getOriginalRequestPath()
-    {
-        $categoryPath = str_replace(' ', '-', strtolower($this->product->getCategoryName()));
-        return $categoryPath . '/' . $this->product->getUrlKey() . '.html';
-    }
-
-    /**
-     * Retrieve product SKU
-     *
-     * @return int
-     */
-    public function getProductSku()
-    {
-        return $this->product->getSku();
-    }
-
-    /**
-     * Retrieve category name to which the product is assigned
-     *
-     * @return string
-     */
-    public function getCategoryName()
-    {
-        return $this->product->getCategoryName();
-    }
-
-    /**
-     * Retrieve URL rewrite type
-     *
-     * @return string
-     */
-    public function getUrlRewriteType()
-    {
-        return $this->getData('url_rewrite_type');
-    }
-
-    /**
-     * Initialize fixture data
-     */
-    protected function _initData()
-    {
-    }
-}
diff --git a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Handler/UrlRewrite/Curl.php b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Handler/UrlRewrite/Curl.php
index b556d3cf36a7be10594d2302c60513dac51d78cb..d99f658b73cc2850ed2e88d6d99272f43fdf2d3a 100644
--- a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Handler/UrlRewrite/Curl.php
+++ b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Handler/UrlRewrite/Curl.php
@@ -6,12 +6,12 @@
 
 namespace Magento\UrlRewrite\Test\Handler\UrlRewrite;
 
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Handler\Curl as AbstractCurl;
-use Mtf\System\Config;
-use Mtf\Util\Protocol\CurlInterface;
-use Mtf\Util\Protocol\CurlTransport;
-use Mtf\Util\Protocol\CurlTransport\BackendDecorator;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Handler\Curl as AbstractCurl;
+use Magento\Mtf\System\Config;
+use Magento\Mtf\Util\Protocol\CurlInterface;
+use Magento\Mtf\Util\Protocol\CurlTransport;
+use Magento\Mtf\Util\Protocol\CurlTransport\BackendDecorator;
 
 /**
  * Class Curl
diff --git a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Handler/UrlRewrite/UrlRewriteInterface.php b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Handler/UrlRewrite/UrlRewriteInterface.php
index a566d766b43d7b090b907dfc23315f92bd520d4d..0651b1c0430f65be62d9bdd62682f69244f7c9ec 100644
--- a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Handler/UrlRewrite/UrlRewriteInterface.php
+++ b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Handler/UrlRewrite/UrlRewriteInterface.php
@@ -6,7 +6,7 @@
 
 namespace Magento\UrlRewrite\Test\Handler\UrlRewrite;
 
-use Mtf\Handler\HandlerInterface;
+use Magento\Mtf\Handler\HandlerInterface;
 
 /**
  * Interface UrlRewriteInterface
diff --git a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Repository/UrlRewrite.php b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Repository/UrlRewrite.php
index 4c830610af11fc611dc2a19ac4dabd89b06d727b..0e1b7a3421d54ab75349ac7e25e349bde385300a 100644
--- a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Repository/UrlRewrite.php
+++ b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Repository/UrlRewrite.php
@@ -6,7 +6,7 @@
 
 namespace Magento\UrlRewrite\Test\Repository;
 
-use Mtf\Repository\AbstractRepository;
+use Magento\Mtf\Repository\AbstractRepository;
 
 /**
  * Class UrlRewrite
diff --git a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Repository/UrlRewriteCategory.php b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Repository/UrlRewriteCategory.php
deleted file mode 100644
index 038e49e56e8c859e99d232b5f96b6964ef033c75..0000000000000000000000000000000000000000
--- a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Repository/UrlRewriteCategory.php
+++ /dev/null
@@ -1,45 +0,0 @@
-<?php
-/**
- * Copyright © 2015 Magento. All rights reserved.
- * See COPYING.txt for license details.
- */
-
-namespace Magento\UrlRewrite\Test\Repository;
-
-use Mtf\Repository\AbstractRepository;
-
-/**
- * Class UrlRewriteCategory
- * URL Rewrite Category Repository
- *
- */
-class UrlRewriteCategory extends AbstractRepository
-{
-    /**
-     * @param array $defaultConfig
-     * @param array $defaultData
-     *
-     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
-     */
-    public function __construct(array $defaultConfig = [], array $defaultData = [])
-    {
-        $this->_data['default'] = [
-            'config' => $defaultConfig,
-            'data' => [
-                'url_rewrite_type' => 'For category',
-                'fields' => [
-                    'request_path' => [
-                        'value' => '%rewritten_category_request_path%',
-                    ],
-                    'store_id' => [
-                        'value' => 'Main Website/Main Website Store/Default Store View',
-                    ],
-                ],
-            ],
-        ];
-        $this->_data['category_with_permanent_redirect'] = $this->_data['default'];
-        $this->_data['category_with_permanent_redirect']['data']['fields']['redirect_type'] = [
-            'value' => 'Permanent (301)',
-        ];
-    }
-}
diff --git a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Repository/UrlRewriteProduct.php b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Repository/UrlRewriteProduct.php
deleted file mode 100644
index 49f91d98fb50a56425fa4fe0bc4976b610fd08f6..0000000000000000000000000000000000000000
--- a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/Repository/UrlRewriteProduct.php
+++ /dev/null
@@ -1,45 +0,0 @@
-<?php
-/**
- * Copyright © 2015 Magento. All rights reserved.
- * See COPYING.txt for license details.
- */
-
-namespace Magento\UrlRewrite\Test\Repository;
-
-use Mtf\Repository\AbstractRepository;
-
-/**
- * Class UrlRewriteProduct
- * URL Rewrite Product Repository
- *
- */
-class UrlRewriteProduct extends AbstractRepository
-{
-    /**
-     * @param array $defaultConfig
-     * @param array $defaultData
-     *
-     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
-     */
-    public function __construct(array $defaultConfig = [], array $defaultData = [])
-    {
-        $this->_data['default'] = [
-            'config' => $defaultConfig,
-            'data' => [
-                'url_rewrite_type' => 'For product',
-                'fields' => [
-                    'request_path' => [
-                        'value' => '%rewritten_product_request_path%',
-                    ],
-                    'store_id' => [
-                        'value' => 'Main Website/Main Website Store/Default Store View',
-                    ],
-                ],
-            ],
-        ];
-        $this->_data['product_with_temporary_redirect'] = $this->_data['default'];
-        $this->_data['product_with_temporary_redirect']['data']['fields']['redirect_type'] = [
-            'value' => 'Temporary (302)',
-        ];
-    }
-}
diff --git a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/TestCase/CategoryTest.php b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/TestCase/CategoryTest.php
deleted file mode 100644
index e93e5869e8f7a6fc8a21e0838cfb4b35e79db769..0000000000000000000000000000000000000000
--- a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/TestCase/CategoryTest.php
+++ /dev/null
@@ -1,70 +0,0 @@
-<?php
-/**
- * Copyright © 2015 Magento. All rights reserved.
- * See COPYING.txt for license details.
- */
-
-namespace Magento\UrlRewrite\Test\TestCase;
-
-use Magento\UrlRewrite\Test\Fixture\UrlRewriteCategory;
-use Mtf\Factory\Factory;
-use Mtf\TestCase\Injectable;
-
-/**
- * Class UrlRewriteTest
- * Category URL rewrite creation test
- */
-class CategoryTest extends Injectable
-{
-    /**
-     * Adding permanent redirect for category
-     *
-     * @param UrlRewriteCategory $urlRewriteCategory
-     * @return void
-     * @ZephyrId MAGETWO-12407
-     */
-    public function test(\Magento\UrlRewrite\Test\Fixture\UrlRewriteCategory $urlRewriteCategory)
-    {
-        $urlRewriteCategory->switchData('category_with_permanent_redirect');
-        //Pages & Blocks
-        $urlRewriteIndexPage = Factory::getPageFactory()->getAdminUrlRewriteIndex();
-        $pageActionsBlock = $urlRewriteIndexPage->getPageActionsBlock();
-        $urlRewriteEditPage = Factory::getPageFactory()->getAdminUrlRewriteEdit();
-        $categoryTreeBlock = $urlRewriteEditPage->getTreeBlock();
-        $urlRewriteInfoForm = $urlRewriteEditPage->getFormBlock();
-        $typeSelectorBlock = $urlRewriteEditPage->getUrlRewriteTypeSelectorBlock();
-
-        //Steps
-        Factory::getApp()->magentoBackendLoginUser();
-        $urlRewriteIndexPage->open();
-        $pageActionsBlock->addNew();
-        $typeSelectorBlock->selectType($urlRewriteCategory->getUrlRewriteType());
-        $categoryTreeBlock->selectCategory($urlRewriteCategory->getCategoryName());
-        $urlRewriteInfoForm->fill($urlRewriteCategory);
-        $urlRewriteEditPage->getPageMainActions()->save();
-        $this->assertContains(
-            'The URL Rewrite has been saved.',
-            $urlRewriteIndexPage->getMessagesBlock()->getSuccessMessages()
-        );
-
-        $this->assertUrlRewrite(
-            $_ENV['app_frontend_url'] . $urlRewriteCategory->getRewrittenRequestPath(),
-            $_ENV['app_frontend_url'] . $urlRewriteCategory->getOriginalRequestPath()
-        );
-    }
-
-    /**
-     * Assert that request URL redirects to target URL
-     *
-     * @param string $requestUrl
-     * @param string $targetUrl
-     * @param string $message
-     * @return void
-     */
-    protected function assertUrlRewrite($requestUrl, $targetUrl, $message = '')
-    {
-        $browser = Factory::getClientBrowser();
-        $browser->open($requestUrl);
-        $this->assertStringStartsWith($targetUrl, $browser->getUrl(), $message);
-    }
-}
diff --git a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/TestCase/CreateCategoryRewriteEntityTest.php b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/TestCase/CreateCategoryRewriteEntityTest.php
index 1449ef8a0b981b8306cc529fd76277e5ae380432..636a64f31e559b3586a72f06737c8a3e131cdd03 100644
--- a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/TestCase/CreateCategoryRewriteEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/TestCase/CreateCategoryRewriteEntityTest.php
@@ -6,12 +6,12 @@
 
 namespace Magento\UrlRewrite\Test\TestCase;
 
-use Magento\Catalog\Test\Fixture\CatalogCategory;
+use Magento\Catalog\Test\Fixture\Category;
 use Magento\UrlRewrite\Test\Fixture\UrlRewrite;
 use Magento\UrlRewrite\Test\Page\Adminhtml\UrlRewriteEdit;
 use Magento\UrlRewrite\Test\Page\Adminhtml\UrlRewriteIndex;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for Create Category Rewrites Entity
@@ -29,11 +29,17 @@ use Mtf\TestCase\Injectable;
  * 7. Save Rewrite
  * 8. Verify created rewrite
  *
- * @group URL_Rewrites_(MX)
+ * @group URL_Rewrites_(PS)
  * @ZephyrId MAGETWO-24280
  */
 class CreateCategoryRewriteEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'PS';
+    const TEST_TYPE = 'acceptance_test';
+    /* end tags */
+
     /**
      * Page of url rewrite edit category
      *
@@ -64,7 +70,7 @@ class CreateCategoryRewriteEntityTest extends Injectable
         $this->urlRewriteEdit = $urlRewriteEdit;
         $this->urlRewriteIndex = $urlRewriteIndex;
         $category = $fixtureFactory->createByCode(
-            'catalogCategory',
+            'category',
             ['dataSet' => 'default_subcategory']
         );
         $category->persist();
@@ -75,10 +81,10 @@ class CreateCategoryRewriteEntityTest extends Injectable
      * Test check create category rewrites
      *
      * @param UrlRewrite $urlRewrite
-     * @param CatalogCategory $category
+     * @param Category $category
      * @return void
      */
-    public function test(UrlRewrite $urlRewrite, CatalogCategory $category)
+    public function test(UrlRewrite $urlRewrite, Category $category)
     {
         //Steps
         $this->urlRewriteIndex->open();
diff --git a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/TestCase/CreateCategoryRewriteEntityTest/test.csv b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/TestCase/CreateCategoryRewriteEntityTest/test.csv
index 1ef6daada4dae993abce06c36301b887de99c15a..e10157b78f1eb3080ce2e7cb4ee92658eaa4b776 100644
--- a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/TestCase/CreateCategoryRewriteEntityTest/test.csv
+++ b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/TestCase/CreateCategoryRewriteEntityTest/test.csv
@@ -1,4 +1,5 @@
-"urlRewrite/data/entity_type";"urlRewrite/data/store_id";"urlRewrite/data/request_path";"urlRewrite/data/redirect_type";"urlRewrite/data/description";"constraint"
-"For category";"Main Website/Main Website Store/Default Store View";"test_request%isolation%";"No";"test description";"assertUrlRewriteSaveMessage, assertUrlRewriteInGrid"
-"For category";"Main Website/Main Website Store/Default Store View";"request_path%isolation%";"Temporary (302)";"test description";"assertUrlRewriteSaveMessage, assertUrlRewriteInGrid, assertUrlRewriteCategoryRedirect"
-"For category";"Main Website/Main Website Store/Default Store View";"request_path%isolation%";"Permanent (301)";"test description";"assertUrlRewriteSaveMessage, assertUrlRewriteInGrid, assertUrlRewriteCategoryRedirect"
+"description";"urlRewrite/data/entity_type";"urlRewrite/data/store_id";"urlRewrite/data/request_path";"urlRewrite/data/redirect_type";"urlRewrite/data/description";"constraint";"tag"
+"MAGETWO-12407: Add Permanent Redirect for Category";"For category";"Main Website/Main Website Store/Default Store View";"cat%isolation%-redirect.html";"Permanent (301)";"End-to-end test";"assertUrlRewriteSaveMessage, assertUrlRewriteCategoryRedirect";"bamboo_plan:end_to_end,test_type:acceptance_test"
+"Create Category URL Rewrites with no redirect";"For category";"Main Website/Main Website Store/Default Store View";"test_request%isolation%";"No";"test description";"assertUrlRewriteSaveMessage, assertUrlRewriteInGrid";""
+"Create Category URL Rewrites with Temporary redirect";"For category";"Main Website/Main Website Store/Default Store View";"request_path%isolation%";"Temporary (302)";"test description";"assertUrlRewriteSaveMessage, assertUrlRewriteInGrid, assertUrlRewriteCategoryRedirect";""
+"Create Category URL Rewrites with Permanent redirect";"For category";"Main Website/Main Website Store/Default Store View";"request_path%isolation%";"Permanent (301)";"test description";"assertUrlRewriteSaveMessage, assertUrlRewriteInGrid, assertUrlRewriteCategoryRedirect";""
diff --git a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/TestCase/CreateProductUrlRewriteEntityTest.php b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/TestCase/CreateProductUrlRewriteEntityTest.php
index 87c969eea0c59731cb69e5dda90e7b45462b2200..f4e8d5d46f848a73405e94dffff40288884e720f 100644
--- a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/TestCase/CreateProductUrlRewriteEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/TestCase/CreateProductUrlRewriteEntityTest.php
@@ -10,7 +10,7 @@ use Magento\Catalog\Test\Fixture\CatalogProductSimple;
 use Magento\UrlRewrite\Test\Fixture\UrlRewrite;
 use Magento\UrlRewrite\Test\Page\Adminhtml\UrlRewriteEdit;
 use Magento\UrlRewrite\Test\Page\Adminhtml\UrlRewriteIndex;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for Product URL Rewrites Entity
@@ -30,11 +30,17 @@ use Mtf\TestCase\Injectable;
  * 7. Fill data according to dataSet
  * 8. Perform all assertions
  *
- * @group URL_Rewrites_(MX)
+ * @group URL_Rewrites_(PS)
  * @ZephyrId MAGETWO-25150
  */
 class CreateProductUrlRewriteEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'PS';
+    const TEST_TYPE = 'acceptance_test';
+    /* end tags */
+
     /**
      * Url rewrite index page
      *
@@ -63,7 +69,7 @@ class CreateProductUrlRewriteEntityTest extends Injectable
     }
 
     /**
-     * Create product URL Rewrite
+     * Create product URL Rewrite.
      *
      * @param CatalogProductSimple $product
      * @param UrlRewrite $urlRewrite
@@ -79,7 +85,10 @@ class CreateProductUrlRewriteEntityTest extends Injectable
         $this->urlRewriteIndex->getPageActionsBlock()->addNew();
         $this->urlRewriteEdit->getFormBlock()->fill($urlRewrite);
         $this->urlRewriteEdit->getProductGridBlock()->searchAndOpen($filter);
-        $this->urlRewriteEdit->getTreeBlock()->selectCategory($product->getCategoryIds());
+        $category = $product->hasData('category_ids')
+            ? $product->getDataFieldConfig('category_ids')['source']->getCategories()[0]
+            : null;
+        $this->urlRewriteEdit->getTreeBlock()->selectCategory($category);
         $this->urlRewriteEdit->getFormBlock()->fill($urlRewrite);
         $this->urlRewriteEdit->getPageMainActions()->save();
     }
diff --git a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/TestCase/CreateProductUrlRewriteEntityTest/test.csv b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/TestCase/CreateProductUrlRewriteEntityTest/test.csv
index e4e693bf043d1683163de7cf5d48ea5a5a5348be..a48b064c2d1ff66df3921069c68f221efea74bb2 100644
--- a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/TestCase/CreateProductUrlRewriteEntityTest/test.csv
+++ b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/TestCase/CreateProductUrlRewriteEntityTest/test.csv
@@ -1,4 +1,5 @@
-"urlRewrite/data/entity_type";"product/dataSet";"urlRewrite/data/store_id";"urlRewrite/data/request_path";"urlRewrite/data/redirect_type";"urlRewrite/data/description";"constraint"
-"For product";"default";"Main Website/Main Website Store/Default Store View";"test_%isolation%.html";"No";"description_%isolation%";"assertUrlRewriteSaveMessage"
-"For product";"default";"Main Website/Main Website Store/Default Store View";"test_%isolation%.html";"Temporary (302)";"description_%isolation%";"assertUrlRewriteSaveMessage, assertUrlRewriteProductRedirect"
-"For product";"default";"Main Website/Main Website Store/Default Store View";"test_%isolation%.html";"Permanent (301)";"description_%isolation%";"assertUrlRewriteSaveMessage, assertUrlRewriteProductRedirect"
+"description";"urlRewrite/data/entity_type";"product/dataSet";"urlRewrite/data/store_id";"urlRewrite/data/request_path";"urlRewrite/data/redirect_type";"urlRewrite/data/description";"constraint";"tag"
+"MAGETWO-12409: Add Temporary Redirect for Product";"For product";"product_with_category";"Main Website/Main Website Store/Default Store View";"cat%isolation%/simp_redirect%isolation%.html";"Temporary (302)";"description_%isolation%";"assertUrlRewriteSaveMessage, assertUrlRewriteProductRedirect";"bamboo_plan:end_to_end,test_type:acceptance_test"
+"Create Product URL Rewrites with no redirect";"For product";"default";"Main Website/Main Website Store/Default Store View";"test_%isolation%.html";"No";"description_%isolation%";"assertUrlRewriteSaveMessage";""
+"Create Product URL Rewrites with Temporary redirect";"For product";"default";"Main Website/Main Website Store/Default Store View";"test_%isolation%.html";"Temporary (302)";"description_%isolation%";"assertUrlRewriteSaveMessage, assertUrlRewriteProductRedirect";""
+"Create Product URL Rewrites with Permanent redirect";"For product";"default";"Main Website/Main Website Store/Default Store View";"test_%isolation%.html";"Permanent (301)";"description_%isolation%";"assertUrlRewriteSaveMessage, assertUrlRewriteProductRedirect";""
diff --git a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/TestCase/DeleteCategoryUrlRewriteEntityTest.php b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/TestCase/DeleteCategoryUrlRewriteEntityTest.php
index e9db9ba60ea39af97f60e5f691052aa014195582..75365689598a48d2b2d548a4cc9d9c6451b2eab1 100644
--- a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/TestCase/DeleteCategoryUrlRewriteEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/TestCase/DeleteCategoryUrlRewriteEntityTest.php
@@ -9,7 +9,7 @@ namespace Magento\UrlRewrite\Test\TestCase;
 use Magento\UrlRewrite\Test\Fixture\UrlRewrite;
 use Magento\UrlRewrite\Test\Page\Adminhtml\UrlRewriteEdit;
 use Magento\UrlRewrite\Test\Page\Adminhtml\UrlRewriteIndex;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for Delete Category URL Rewrites Entity
@@ -26,11 +26,16 @@ use Mtf\TestCase\Injectable;
  * 4. Delete URL Rewrite
  * 5. Perform all assertions
  *
- * @group URL_Rewrites_(MX)
+ * @group URL_Rewrites_(PS)
  * @ZephyrId MAGETWO-25086
  */
 class DeleteCategoryUrlRewriteEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'PS';
+    /* end tags */
+
     /**
      * Url rewrite index page
      *
diff --git a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/TestCase/DeleteCategoryUrlRewriteEntityTest/test.csv b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/TestCase/DeleteCategoryUrlRewriteEntityTest/test.csv
index 1df1c16a9b87c00603dd0351f6f0365009d2c555..1e73ffe64a331e3cf1d2cdef58ca037de78d66b0 100644
--- a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/TestCase/DeleteCategoryUrlRewriteEntityTest/test.csv
+++ b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/TestCase/DeleteCategoryUrlRewriteEntityTest/test.csv
@@ -1,3 +1,3 @@
 "urlRewrite/data/target_path/entity";"urlRewrite/data/redirect_type";"urlRewrite/data/request_path";"constraint"
-"catalog/category/view/id/%catalogCategory::default%";"No";"-";"assertUrlRewriteDeletedMessage, assertPageByUrlRewriteIsNotFound"
-"catalog/category/view/id/%catalogCategory::default%";"No";"example%isolation%.html";"assertUrlRewriteDeletedMessage, assertPageByUrlRewriteIsNotFound"
+"catalog/category/view/id/%category::default%";"No";"-";"assertUrlRewriteDeletedMessage, assertPageByUrlRewriteIsNotFound"
+"catalog/category/view/id/%category::default%";"No";"example%isolation%.html";"assertUrlRewriteDeletedMessage, assertPageByUrlRewriteIsNotFound"
diff --git a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/TestCase/DeleteCustomUrlRewriteEntityTest.php b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/TestCase/DeleteCustomUrlRewriteEntityTest.php
index ed9360b87d9640670d99c99f8d511883ce7600ea..f5592e87abef014f261c7d6bcaef3f4a6557972c 100644
--- a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/TestCase/DeleteCustomUrlRewriteEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/TestCase/DeleteCustomUrlRewriteEntityTest.php
@@ -9,7 +9,7 @@ namespace Magento\UrlRewrite\Test\TestCase;
 use Magento\UrlRewrite\Test\Fixture\UrlRewrite;
 use Magento\UrlRewrite\Test\Page\Adminhtml\UrlRewriteEdit;
 use Magento\UrlRewrite\Test\Page\Adminhtml\UrlRewriteIndex;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for DeleteCustomUrlRewriteEntity
@@ -30,6 +30,11 @@ use Mtf\TestCase\Injectable;
  */
 class DeleteCustomUrlRewriteEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'PS';
+    /* end tags */
+
     /**
      * Url rewrite index page
      *
diff --git a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/TestCase/DeleteProductUrlRewriteEntityTest.php b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/TestCase/DeleteProductUrlRewriteEntityTest.php
index ab1255c4a3ef6f4423b9073e20c220b7c2dddb24..c668f0512eabda5375eef8fb30e59bc2f203bc1c 100644
--- a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/TestCase/DeleteProductUrlRewriteEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/TestCase/DeleteProductUrlRewriteEntityTest.php
@@ -9,7 +9,7 @@ namespace Magento\UrlRewrite\Test\TestCase;
 use Magento\UrlRewrite\Test\Fixture\UrlRewrite;
 use Magento\UrlRewrite\Test\Page\Adminhtml\UrlRewriteEdit;
 use Magento\UrlRewrite\Test\Page\Adminhtml\UrlRewriteIndex;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for DeleteProductUrlRewritesEntity
@@ -26,11 +26,16 @@ use Mtf\TestCase\Injectable;
  * 4. Click 'Delete' button.
  * 5. Perform asserts.
  *
- * @group URL_Rewrites_(MX)
+ * @group URL_Rewrites_(PS)
  * @ZephyrId  MAGETWO-23287
  */
 class DeleteProductUrlRewriteEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'PS';
+    /* end tags */
+
     /**
      * Url rewrite index page
      *
diff --git a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/TestCase/ProductTest.php b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/TestCase/ProductTest.php
deleted file mode 100644
index d300bc5905840be825736cfa9f3eee17b72f282c..0000000000000000000000000000000000000000
--- a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/TestCase/ProductTest.php
+++ /dev/null
@@ -1,74 +0,0 @@
-<?php
-/**
- * Copyright © 2015 Magento. All rights reserved.
- * See COPYING.txt for license details.
- */
-
-namespace Magento\UrlRewrite\Test\TestCase;
-
-use Magento\UrlRewrite\Test\Fixture\UrlRewriteProduct;
-use Mtf\Factory\Factory;
-use Mtf\TestCase\Functional;
-
-/**
- * Class UrlRewriteTest
- * Product URL rewrite creation test
- */
-class ProductTest extends Functional
-{
-    /**
-     * Adding temporary redirect for product
-     *
-     * @return void
-     * @ZephyrId MAGETWO-12409
-     */
-    public function testUrlRewriteCreation()
-    {
-        /** @var UrlRewriteProduct $urlRewriteProduct */
-        $urlRewriteProduct = Factory::getFixtureFactory()->getMagentoUrlRewriteUrlRewriteProduct();
-        $urlRewriteProduct->switchData('product_with_temporary_redirect');
-
-        //Pages & Blocks
-        $urlRewriteGridPage = Factory::getPageFactory()->getAdminUrlRewriteIndex();
-        $pageActionsBlock = $urlRewriteGridPage->getPageActionsBlock();
-        $urlRewriteEditPage = Factory::getPageFactory()->getAdminUrlRewriteEdit();
-        $categoryTreeBlock = $urlRewriteEditPage->getTreeBlock();
-        $productGridBlock = $urlRewriteEditPage->getProductGridBlock();
-        $typeSelectorBlock = $urlRewriteEditPage->getUrlRewriteTypeSelectorBlock();
-        $urlRewriteInfoForm = $urlRewriteEditPage->getFormBlock();
-
-        //Steps
-        Factory::getApp()->magentoBackendLoginUser();
-        $urlRewriteGridPage->open();
-        $pageActionsBlock->addNew();
-        $typeSelectorBlock->selectType($urlRewriteProduct->getUrlRewriteType());
-        $productGridBlock->searchAndSelect(['sku' => $urlRewriteProduct->getProductSku()]);
-        $categoryTreeBlock->selectCategory($urlRewriteProduct->getCategoryName());
-        $urlRewriteInfoForm->fill($urlRewriteProduct);
-        $urlRewriteEditPage->getPageMainActions()->save();
-        $this->assertContains(
-            'The URL Rewrite has been saved.',
-            $urlRewriteGridPage->getMessagesBlock()->getSuccessMessages()
-        );
-
-        $this->assertUrlRewrite(
-            $_ENV['app_frontend_url'] . $urlRewriteProduct->getRewrittenRequestPath(),
-            $_ENV['app_frontend_url'] . $urlRewriteProduct->getOriginalRequestPath()
-        );
-    }
-
-    /**
-     * Assert that request URL redirects to target URL
-     *
-     * @param string $requestUrl
-     * @param string $targetUrl
-     * @param string $message
-     * @return void
-     */
-    protected function assertUrlRewrite($requestUrl, $targetUrl, $message = '')
-    {
-        $browser = Factory::getClientBrowser();
-        $browser->open($requestUrl);
-        $this->assertStringStartsWith($targetUrl, $browser->getUrl(), $message);
-    }
-}
diff --git a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/TestCase/UpdateCategoryUrlRewriteEntityTest.php b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/TestCase/UpdateCategoryUrlRewriteEntityTest.php
index dd235dcc13efb7164371f63267b35e28d0801ab2..25a5f58638c939f967563deab905f2777bf5c47b 100644
--- a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/TestCase/UpdateCategoryUrlRewriteEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/TestCase/UpdateCategoryUrlRewriteEntityTest.php
@@ -6,12 +6,12 @@
 
 namespace Magento\UrlRewrite\Test\TestCase;
 
-use Magento\Catalog\Test\Fixture\CatalogCategory;
+use Magento\Catalog\Test\Fixture\Category;
 use Magento\UrlRewrite\Test\Fixture\UrlRewrite;
 use Magento\UrlRewrite\Test\Page\Adminhtml\UrlRewriteEdit;
 use Magento\UrlRewrite\Test\Page\Adminhtml\UrlRewriteIndex;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for UpdateCategoryUrlRewritesEntity
@@ -30,11 +30,16 @@ use Mtf\TestCase\Injectable;
  * 5. Click 'Save' button.
  * 6. Perform all asserts.
  *
- * @group URL_Rewrites_(MX)
+ * @group URL_Rewrites_(PS)
  * @ZephyrId MAGETWO-24838
  */
 class UpdateCategoryUrlRewriteEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'PS';
+    /* end tags */
+
     /**
      * Url rewrite index page
      *
@@ -55,14 +60,14 @@ class UpdateCategoryUrlRewriteEntityTest extends Injectable
      * @param UrlRewriteIndex $urlRewriteIndex
      * @param UrlRewriteEdit $urlRewriteEdit
      * @param FixtureFactory $fixtureFactory
-     * @param CatalogCategory $category
+     * @param Category $category
      * @return array
      */
     public function __inject(
         UrlRewriteIndex $urlRewriteIndex,
         UrlRewriteEdit $urlRewriteEdit,
         FixtureFactory $fixtureFactory,
-        CatalogCategory $category
+        Category $category
     ) {
         $this->urlRewriteIndex = $urlRewriteIndex;
         $this->urlRewriteEdit = $urlRewriteEdit;
diff --git a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/TestCase/UpdateCustomUrlRewriteEntityTest.php b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/TestCase/UpdateCustomUrlRewriteEntityTest.php
index 016cdc00a88818f9474eec35400161d40014e8a1..c5652832a328a4d77964282a5ff6306d70d07362 100644
--- a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/TestCase/UpdateCustomUrlRewriteEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/TestCase/UpdateCustomUrlRewriteEntityTest.php
@@ -9,7 +9,7 @@ namespace Magento\UrlRewrite\Test\TestCase;
 use Magento\UrlRewrite\Test\Fixture\UrlRewrite;
 use Magento\UrlRewrite\Test\Page\Adminhtml\UrlRewriteEdit;
 use Magento\UrlRewrite\Test\Page\Adminhtml\UrlRewriteIndex;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for UpdateCustomUrlRewritesEntity
@@ -33,6 +33,11 @@ use Mtf\TestCase\Injectable;
  */
 class UpdateCustomUrlRewriteEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'PS';
+    /* end tags */
+
     /**
      * Url rewrite index page
      *
diff --git a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/TestCase/UpdateProductUrlRewriteEntityTest.php b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/TestCase/UpdateProductUrlRewriteEntityTest.php
index fb2693cda2774be10226a1523926373b48207650..3b7562540e692afc45f9053932eae6730d0aa8f8 100644
--- a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/TestCase/UpdateProductUrlRewriteEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/TestCase/UpdateProductUrlRewriteEntityTest.php
@@ -9,8 +9,8 @@ namespace Magento\UrlRewrite\Test\TestCase;
 use Magento\UrlRewrite\Test\Fixture\UrlRewrite;
 use Magento\UrlRewrite\Test\Page\Adminhtml\UrlRewriteEdit;
 use Magento\UrlRewrite\Test\Page\Adminhtml\UrlRewriteIndex;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for Update Product URL Rewrites Entity
@@ -29,11 +29,16 @@ use Mtf\TestCase\Injectable;
  * 4. Fill data according to dataset
  * 5. Perform all assertions
  *
- * @group URL_Rewrites_(MX)
+ * @group URL_Rewrites_(PS)
  * @ZephyrId MAGETWO-24819
  */
 class UpdateProductUrlRewriteEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'yes';
+    const DOMAIN = 'PS';
+    /* end tags */
+
     /**
      * Url rewrite index page
      *
diff --git a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/etc/constraint.xml b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/etc/constraint.xml
index df293a41289e30370da9f98fe290c08cfd2c7efe..9578f490e7f642f242e7fe065e59708bbe9ffd28 100644
--- a/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/etc/constraint.xml
+++ b/dev/tests/functional/tests/app/Magento/UrlRewrite/Test/etc/constraint.xml
@@ -24,8 +24,8 @@
         <require>
             <urlRewrite class="Magento\UrlRewrite\Test\Fixture\UrlRewrite"/>
             <catalogProductView class="Magento\Catalog\Test\Page\Product\CatalogProductView"/>
-            <product class="Mtf\Fixture\FixtureInterface"/>
-            <browser class="Mtf\Client\Browser"/>
+            <product class="Magento\Mtf\Fixture\FixtureInterface"/>
+            <browser class="Magento\Mtf\Client\Browser"/>
         </require>
     </assertUrlRewriteProductRedirect>
     <assertUrlRewriteDeletedMessage module="Magento_UrlRewrite">
@@ -46,7 +46,7 @@
         <require>
             <catalogProductView class="Magento\Catalog\Test\Page\Product\CatalogProductView"/>
             <productRedirect class="Magento\UrlRewrite\Test\Fixture\UrlRewrite"/>
-            <browser class="Mtf\Client\Browser"/>
+            <browser class="Magento\Mtf\Client\Browser"/>
         </require>
     </assertPageByUrlRewriteIsNotFound>
     <assertUrlRewriteCustomRedirect module="Magento_UrlRewrite">
@@ -56,14 +56,14 @@
         <severity>low</severity>
         <require>
             <urlRewrite class="Magento\UrlRewrite\Test\Fixture\UrlRewrite"/>
-            <browser class="Mtf\Client\Browser"/>
+            <browser class="Magento\Mtf\Client\Browser"/>
         </require>
     </assertUrlRewriteSuccessOutsideRedirect>
     <assertUrlRewriteCustomSearchRedirect module="Magento_UrlRewrite">
         <severity>low</severity>
         <require>
             <urlRewrite class="Magento\UrlRewrite\Test\Fixture\UrlRewrite"/>
-            <browser class="Mtf\Client\Browser"/>
+            <browser class="Magento\Mtf\Client\Browser"/>
             <categoryView class="Magento\Catalog\Test\Page\Category\CatalogCategoryView"/>
         </require>
     </assertUrlRewriteCustomSearchRedirect>
diff --git a/dev/tests/functional/tests/app/Magento/User/Test/Block/Adminhtml/Role/Tab/Role.php b/dev/tests/functional/tests/app/Magento/User/Test/Block/Adminhtml/Role/Tab/Role.php
index 8720daea217441fda21f2357b321ef53ff165d4c..dd79a2b7b3c9c815c6e2f7ec8d75935cbcb4c66b 100644
--- a/dev/tests/functional/tests/app/Magento/User/Test/Block/Adminhtml/Role/Tab/Role.php
+++ b/dev/tests/functional/tests/app/Magento/User/Test/Block/Adminhtml/Role/Tab/Role.php
@@ -7,7 +7,7 @@
 namespace Magento\User\Test\Block\Adminhtml\Role\Tab;
 
 use Magento\Backend\Test\Block\Widget\Tab;
-use Mtf\Client\Element;
+use Magento\Mtf\Client\Element\SimpleElement;
 
 /**
  * Class Role
@@ -19,10 +19,10 @@ class Role extends Tab
      * Fills username in user grid
      *
      * @param array $fields
-     * @param Element $element
+     * @param SimpleElement $element
      * @return void
      */
-    public function fillFormTab(array $fields, Element $element = null)
+    public function fillFormTab(array $fields, SimpleElement $element = null)
     {
         $users = (is_array($fields['in_role_users']['value']))
             ? $fields['in_role_users']['value']
diff --git a/dev/tests/functional/tests/app/Magento/User/Test/Block/Adminhtml/User/Edit/Form.php b/dev/tests/functional/tests/app/Magento/User/Test/Block/Adminhtml/User/Edit/Form.php
index cc4e2577686563238bae994ae6417271961adc41..6f55faf944b174eca4a330ed686dc16042efd27b 100644
--- a/dev/tests/functional/tests/app/Magento/User/Test/Block/Adminhtml/User/Edit/Form.php
+++ b/dev/tests/functional/tests/app/Magento/User/Test/Block/Adminhtml/User/Edit/Form.php
@@ -8,8 +8,8 @@ namespace Magento\User\Test\Block\Adminhtml\User\Edit;
 
 use Magento\Backend\Test\Block\Widget\FormTabs;
 use Magento\User\Test\Block\Adminhtml\User\Edit\Tab\Roles;
-use Mtf\Client\Element;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Client\Element;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class Form
diff --git a/dev/tests/functional/tests/app/Magento/User/Test/Block/Adminhtml/User/Edit/PageActions.php b/dev/tests/functional/tests/app/Magento/User/Test/Block/Adminhtml/User/Edit/PageActions.php
index f184a963d6f53ea333dc3fd4e3da8e0d49bce2ad..c2cf7eaf643955c850940a7b7c78254aa710d881 100644
--- a/dev/tests/functional/tests/app/Magento/User/Test/Block/Adminhtml/User/Edit/PageActions.php
+++ b/dev/tests/functional/tests/app/Magento/User/Test/Block/Adminhtml/User/Edit/PageActions.php
@@ -29,6 +29,6 @@ class PageActions extends FormPageActions
     public function forceSignIn()
     {
         $this->_rootElement->find($this->forceSignIn)->click();
-        $this->_rootElement->acceptAlert();
+        $this->browser->acceptAlert();
     }
 }
diff --git a/dev/tests/functional/tests/app/Magento/User/Test/Block/Adminhtml/User/Edit/Tab/Roles.php b/dev/tests/functional/tests/app/Magento/User/Test/Block/Adminhtml/User/Edit/Tab/Roles.php
index 8ab5d10db8f3d45b95e3741254b223001a624066..bcf2bebf558713998dd9bcf6f904835d111a4ab6 100644
--- a/dev/tests/functional/tests/app/Magento/User/Test/Block/Adminhtml/User/Edit/Tab/Roles.php
+++ b/dev/tests/functional/tests/app/Magento/User/Test/Block/Adminhtml/User/Edit/Tab/Roles.php
@@ -7,7 +7,7 @@
 namespace Magento\User\Test\Block\Adminhtml\User\Edit\Tab;
 
 use Magento\Backend\Test\Block\Widget\Grid;
-use Mtf\Client\Element;
+use Magento\Mtf\Client\Element;
 
 /**
  * Class Roles
diff --git a/dev/tests/functional/tests/app/Magento/User/Test/Block/Adminhtml/User/Tab/Role.php b/dev/tests/functional/tests/app/Magento/User/Test/Block/Adminhtml/User/Tab/Role.php
index 263be3d74aae9b63be1dfc853b96e715793caed9..4b05852ef8d751434cdbd554e0e1e58f00bdab6d 100644
--- a/dev/tests/functional/tests/app/Magento/User/Test/Block/Adminhtml/User/Tab/Role.php
+++ b/dev/tests/functional/tests/app/Magento/User/Test/Block/Adminhtml/User/Tab/Role.php
@@ -6,9 +6,8 @@
 
 namespace Magento\User\Test\Block\Adminhtml\User\Tab;
 
+use Magento\Mtf\Client\Element\SimpleElement;
 use Magento\Backend\Test\Block\Widget\Tab;
-use Magento\User\Test\Block\Adminhtml\User\Tab\Role\Grid;
-use Mtf\Client\Element;
 
 /**
  * Class Role
@@ -20,10 +19,10 @@ class Role extends Tab
      * Fill user options
      *
      * @param array $fields
-     * @param Element|null $element
+     * @param SimpleElement|null $element
      * @return void
      */
-    public function fillFormTab(array $fields, Element $element = null)
+    public function fillFormTab(array $fields, SimpleElement $element = null)
     {
         $this->getRoleGrid()->searchAndSelect(['rolename' => $fields['role_id']['value']]);
     }
diff --git a/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertAccessTokensErrorRevokeMessage.php b/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertAccessTokensErrorRevokeMessage.php
index 81b5df0b0dc20a1cf103e24df62e9c77740d4dd2..787b7e390d674747f3d270a01ec5b1fd7ab20adf 100644
--- a/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertAccessTokensErrorRevokeMessage.php
+++ b/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertAccessTokensErrorRevokeMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\User\Test\Constraint;
 
 use Magento\User\Test\Page\Adminhtml\UserEdit;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertAccessTokensErrorRevokeMessage
diff --git a/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertImpossibleDeleteYourOwnAccount.php b/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertImpossibleDeleteYourOwnAccount.php
index a9797795c84a9566dbc757d53b50d064353158cd..8f6d0505517bd2c2a09aea41c52dc40894640a0c 100644
--- a/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertImpossibleDeleteYourOwnAccount.php
+++ b/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertImpossibleDeleteYourOwnAccount.php
@@ -7,7 +7,7 @@
 namespace Magento\User\Test\Constraint;
 
 use Magento\User\Test\Page\Adminhtml\UserEdit;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertImpossibleDeleteYourOwnAccount
diff --git a/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertImpossibleDeleteYourOwnRole.php b/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertImpossibleDeleteYourOwnRole.php
index fd69fc3cee73f171d9ae614b6349d70e08dabebf..d44d53f21ca75701a2756aafe06aeb1186dbfbee 100644
--- a/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertImpossibleDeleteYourOwnRole.php
+++ b/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertImpossibleDeleteYourOwnRole.php
@@ -7,7 +7,7 @@
 namespace Magento\User\Test\Constraint;
 
 use Magento\User\Test\Page\Adminhtml\UserRoleEditRole;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertRoleSuccessSaveMessage
diff --git a/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertRoleInGrid.php b/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertRoleInGrid.php
index 7e8a3a35e0c7076c560261bd19bf477e4985d609..49e9f3fb36f40a1a519946eaa642b15b5fc8d44b 100644
--- a/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertRoleInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertRoleInGrid.php
@@ -8,7 +8,7 @@ namespace Magento\User\Test\Constraint;
 
 use Magento\User\Test\Fixture\AdminUserRole;
 use Magento\User\Test\Page\Adminhtml\UserRoleIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertRoleInGrid
diff --git a/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertRoleNotInGrid.php b/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertRoleNotInGrid.php
index ec7b5ba0e72285aa227d83127931f0edddd77c90..cb67bc0a80e732511b3d482c9dcd1cf8004f134c 100644
--- a/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertRoleNotInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertRoleNotInGrid.php
@@ -8,7 +8,7 @@ namespace Magento\User\Test\Constraint;
 
 use Magento\User\Test\Fixture\AdminUserRole;
 use Magento\User\Test\Page\Adminhtml\UserRoleIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertRoleNotInGrid
diff --git a/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertRoleSuccessDeleteMessage.php b/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertRoleSuccessDeleteMessage.php
index 2033e0c303a9d3d9c8812cc0164eaeefd612082c..38f74ad1ead1db38eb6e7b012fc81f3623fb474b 100644
--- a/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertRoleSuccessDeleteMessage.php
+++ b/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertRoleSuccessDeleteMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\User\Test\Constraint;
 
 use Magento\User\Test\Page\Adminhtml\UserRoleIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertRoleSuccessDeleteMessage
diff --git a/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertRoleSuccessSaveMessage.php b/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertRoleSuccessSaveMessage.php
index dc4d32653ab69b08a36e006aa742367e1d51a07b..0436e6c60cfd39b6b845636f0e7773ed19b0a9af 100644
--- a/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertRoleSuccessSaveMessage.php
+++ b/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertRoleSuccessSaveMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\User\Test\Constraint;
 
 use Magento\User\Test\Page\Adminhtml\UserRoleIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertRoleSuccessSaveMessage
diff --git a/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertUserDuplicateMessage.php b/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertUserDuplicateMessage.php
index 568cbd551d0f301b1925accd2b24fc7354de644b..c0a9c0c71554a9d38e3a512a8f33ec0ee3fd565a 100644
--- a/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertUserDuplicateMessage.php
+++ b/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertUserDuplicateMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\User\Test\Constraint;
 
 use Magento\User\Test\Page\Adminhtml\UserEdit;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertUserDuplicateMessage
diff --git a/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertUserInGrid.php b/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertUserInGrid.php
index 6f2bf4e896f1c2b98398a502487e7d3bc93f923d..1369fa1591dd32d7101bd65164d19dce7f16f3b8 100644
--- a/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertUserInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertUserInGrid.php
@@ -8,7 +8,7 @@ namespace Magento\User\Test\Constraint;
 
 use Magento\User\Test\Fixture\User;
 use Magento\User\Test\Page\Adminhtml\UserIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertUserInGrid
diff --git a/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertUserInvalidEmailMessage.php b/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertUserInvalidEmailMessage.php
index aa8877c54bd65c4caabb99c36bbfa73706d478d4..431b9f13c71cc8838efebd393e61f2b311276733 100644
--- a/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertUserInvalidEmailMessage.php
+++ b/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertUserInvalidEmailMessage.php
@@ -8,7 +8,7 @@ namespace Magento\User\Test\Constraint;
 
 use Magento\User\Test\Fixture\User;
 use Magento\User\Test\Page\Adminhtml\UserEdit;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertUserInvalidEmailMessage
diff --git a/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertUserNotInGrid.php b/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertUserNotInGrid.php
index 08832e25f67f90c9760b66ce9da37f55ce201251..909f581f7675923c0aa4aa70ccba604e3bdd636e 100644
--- a/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertUserNotInGrid.php
+++ b/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertUserNotInGrid.php
@@ -8,7 +8,7 @@ namespace Magento\User\Test\Constraint;
 
 use Magento\User\Test\Fixture\User;
 use Magento\User\Test\Page\Adminhtml\UserIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertUserNotInGrid
diff --git a/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertUserRoleSalesRestrictedAccess.php b/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertUserRoleSalesRestrictedAccess.php
index ebd351e0454c49aaab6af8ccb86863cc4000a926..04f22b59e617eae8f5a0ee0df03b0952c12ad4f0 100644
--- a/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertUserRoleSalesRestrictedAccess.php
+++ b/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertUserRoleSalesRestrictedAccess.php
@@ -8,7 +8,7 @@ namespace Magento\User\Test\Constraint;
 
 use Magento\Backend\Test\Page\Adminhtml\Dashboard;
 use Magento\User\Test\Page\Adminhtml\UserIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertUserRoleSalesRestrictedAccess
diff --git a/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertUserSuccessDeleteMessage.php b/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertUserSuccessDeleteMessage.php
index 72ed5cb755a1fb270c5196bdccd879fa433b46f8..c6f7e9e69495c0d3530e7db93cd670b00490a279 100644
--- a/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertUserSuccessDeleteMessage.php
+++ b/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertUserSuccessDeleteMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\User\Test\Constraint;
 
 use Magento\User\Test\Page\Adminhtml\UserIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertUserSuccessDeleteMessage
diff --git a/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertUserSuccessLogOut.php b/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertUserSuccessLogOut.php
index 5b46a44f3fb1dd62f7821cdf8f5e0deab4b0c845..9ec6841c6f9885fe772ea9e9f8c2cbcb32196f79 100644
--- a/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertUserSuccessLogOut.php
+++ b/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertUserSuccessLogOut.php
@@ -8,7 +8,7 @@ namespace Magento\User\Test\Constraint;
 
 use Magento\Backend\Test\Page\AdminAuthLogin;
 use Magento\Backend\Test\Page\Adminhtml\Dashboard;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertUserSuccessLogOut
diff --git a/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertUserSuccessLogin.php b/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertUserSuccessLogin.php
index aa4862434fdb847fbf560f646faf9bed2eb634e7..4544f7b69dae5feed6804d97dafe170e2921d7db 100644
--- a/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertUserSuccessLogin.php
+++ b/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertUserSuccessLogin.php
@@ -9,7 +9,7 @@ namespace Magento\User\Test\Constraint;
 use Magento\Backend\Test\Page\AdminAuthLogin;
 use Magento\Backend\Test\Page\Adminhtml\Dashboard;
 use Magento\User\Test\Fixture\User;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertUserSuccessLogin
diff --git a/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertUserSuccessSaveMessage.php b/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertUserSuccessSaveMessage.php
index 9804e38b77bcc40af427563c1cff278c365c38db..d401448522ebf4338de4bcc7108f6f3837989552 100644
--- a/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertUserSuccessSaveMessage.php
+++ b/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertUserSuccessSaveMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\User\Test\Constraint;
 
 use Magento\User\Test\Page\Adminhtml\UserIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertUserSuccessSaveMessage
diff --git a/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertUserWrongCredentialsMessage.php b/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertUserWrongCredentialsMessage.php
index 156672a632950198cac67b280d585fe3d80d1d53..7c2be591562841d405f82aeba0b0f56c4aff6036 100644
--- a/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertUserWrongCredentialsMessage.php
+++ b/dev/tests/functional/tests/app/Magento/User/Test/Constraint/AssertUserWrongCredentialsMessage.php
@@ -8,7 +8,7 @@ namespace Magento\User\Test\Constraint;
 
 use Magento\Backend\Test\Page\AdminAuthLogin;
 use Magento\User\Test\Fixture\User;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertUserWrongCredentialsMessage
diff --git a/dev/tests/functional/tests/app/Magento/User/Test/Fixture/AdminUser.php b/dev/tests/functional/tests/app/Magento/User/Test/Fixture/AdminUser.php
index bd67f84b2def072e1652d20463e72c8ec0537156..a0ee8cf951c0f3146f1f5469fe1fc9edfc2dba17 100644
--- a/dev/tests/functional/tests/app/Magento/User/Test/Fixture/AdminUser.php
+++ b/dev/tests/functional/tests/app/Magento/User/Test/Fixture/AdminUser.php
@@ -6,10 +6,10 @@
 
 namespace Magento\User\Test\Fixture;
 
-use Mtf\Factory\Factory;
-use Mtf\Fixture\DataFixture;
-use Mtf\ObjectManager;
-use Mtf\System\Config;
+use Magento\Mtf\Factory\Factory;
+use Magento\Mtf\Fixture\DataFixture;
+use Magento\Mtf\ObjectManager;
+use Magento\Mtf\System\Config;
 
 /**
  * Fixture with all necessary data for user creation on backend
@@ -47,8 +47,8 @@ class AdminUser extends DataFixture
      */
     protected function _initData()
     {
-        /** @var \Mtf\System\Config $systemConfig */
-        $systemConfig = ObjectManager::getInstance()->create('Mtf\System\Config');
+        /** @var \Magento\Mtf\System\Config $systemConfig */
+        $systemConfig = ObjectManager::getInstance()->create('Magento\Mtf\System\Config');
         $superAdminPassword = $systemConfig->getConfigParam('application/backend_user_credentials/password');
         $this->_data = [
             'fields' => [
diff --git a/dev/tests/functional/tests/app/Magento/User/Test/Fixture/AdminUserRole.php b/dev/tests/functional/tests/app/Magento/User/Test/Fixture/AdminUserRole.php
index f88d9fa29c0992811361b885db0c77fbc2f69bcc..88180cf31cb0ad6e3f634d6fab2adf887898f010 100644
--- a/dev/tests/functional/tests/app/Magento/User/Test/Fixture/AdminUserRole.php
+++ b/dev/tests/functional/tests/app/Magento/User/Test/Fixture/AdminUserRole.php
@@ -6,7 +6,7 @@
 
 namespace Magento\User\Test\Fixture;
 
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Class AdminUserRole
diff --git a/dev/tests/functional/tests/app/Magento/User/Test/Fixture/AdminUserRole/InRoleUsers.php b/dev/tests/functional/tests/app/Magento/User/Test/Fixture/AdminUserRole/InRoleUsers.php
index 80908c4f372c72153e803fb245760d8a8d1122a9..eb1f27ccdc821d844c57b3607abcf09b43b429a0 100644
--- a/dev/tests/functional/tests/app/Magento/User/Test/Fixture/AdminUserRole/InRoleUsers.php
+++ b/dev/tests/functional/tests/app/Magento/User/Test/Fixture/AdminUserRole/InRoleUsers.php
@@ -7,8 +7,8 @@
 namespace Magento\User\Test\Fixture\AdminUserRole;
 
 use Magento\User\Test\Fixture\User;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class InRoleUsers
diff --git a/dev/tests/functional/tests/app/Magento/User/Test/Fixture/Resource.php b/dev/tests/functional/tests/app/Magento/User/Test/Fixture/Resource.php
index d4cb9f015398fa773295ec0bfff69d38fffa1ee8..d9e1c4638eea02eb4a9bf6458a91e912ca5a71bc 100644
--- a/dev/tests/functional/tests/app/Magento/User/Test/Fixture/Resource.php
+++ b/dev/tests/functional/tests/app/Magento/User/Test/Fixture/Resource.php
@@ -5,7 +5,7 @@
  */
 namespace Magento\User\Test\Fixture;
 
-use Mtf\Fixture\DataFixture;
+use Magento\Mtf\Fixture\DataFixture;
 
 /**
  * ACL resources fixture
diff --git a/dev/tests/functional/tests/app/Magento/User/Test/Fixture/Role.php b/dev/tests/functional/tests/app/Magento/User/Test/Fixture/Role.php
index ab50e9843b5fbd15028d7023b6f47dec8d490c61..acb266f5d6c6978f4a7b9ffee53445115d0d2f33 100644
--- a/dev/tests/functional/tests/app/Magento/User/Test/Fixture/Role.php
+++ b/dev/tests/functional/tests/app/Magento/User/Test/Fixture/Role.php
@@ -6,8 +6,8 @@
 
 namespace Magento\User\Test\Fixture;
 
-use Mtf\Factory\Factory;
-use Mtf\Fixture\DataFixture;
+use Magento\Mtf\Factory\Factory;
+use Magento\Mtf\Fixture\DataFixture;
 
 /**
  * Class Role
diff --git a/dev/tests/functional/tests/app/Magento/User/Test/Fixture/User.php b/dev/tests/functional/tests/app/Magento/User/Test/Fixture/User.php
index 298cac0e65901cdb5f089011817e752eae702ea5..78053ea189cb6a4eb0feec26275b3bfccdf81eac 100644
--- a/dev/tests/functional/tests/app/Magento/User/Test/Fixture/User.php
+++ b/dev/tests/functional/tests/app/Magento/User/Test/Fixture/User.php
@@ -6,12 +6,12 @@
 
 namespace Magento\User\Test\Fixture;
 
-use Mtf\Fixture\FixtureFactory;
-use Mtf\Fixture\InjectableFixture;
-use Mtf\Handler\HandlerFactory;
-use Mtf\Repository\RepositoryFactory;
-use Mtf\System\Config;
-use Mtf\System\Event\EventManagerInterface;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Handler\HandlerFactory;
+use Magento\Mtf\Repository\RepositoryFactory;
+use Magento\Mtf\System\Config;
+use Magento\Mtf\System\Event\EventManagerInterface;
 
 /**
  * Class User
diff --git a/dev/tests/functional/tests/app/Magento/User/Test/Fixture/User/RoleId.php b/dev/tests/functional/tests/app/Magento/User/Test/Fixture/User/RoleId.php
index 641f36f34b545775600fa67e93367e60d84f851d..6ee9c5eb5ed81f2379f24ba2c4f3ef69cc3d96d3 100644
--- a/dev/tests/functional/tests/app/Magento/User/Test/Fixture/User/RoleId.php
+++ b/dev/tests/functional/tests/app/Magento/User/Test/Fixture/User/RoleId.php
@@ -7,8 +7,8 @@
 namespace Magento\User\Test\Fixture\User;
 
 use Magento\User\Test\Fixture\AdminUserRole;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class RoleId
diff --git a/dev/tests/functional/tests/app/Magento/User/Test/Handler/AdminUserRole/AdminUserRoleInterface.php b/dev/tests/functional/tests/app/Magento/User/Test/Handler/AdminUserRole/AdminUserRoleInterface.php
index 7e2b3c353efce7a1cf2d7fa575799d942cc44a9d..a7d0408abdba75e672a9131b4d2b45b0ff4cdba9 100644
--- a/dev/tests/functional/tests/app/Magento/User/Test/Handler/AdminUserRole/AdminUserRoleInterface.php
+++ b/dev/tests/functional/tests/app/Magento/User/Test/Handler/AdminUserRole/AdminUserRoleInterface.php
@@ -6,7 +6,7 @@
 
 namespace Magento\User\Test\Handler\AdminUserRole;
 
-use Mtf\Handler\HandlerInterface;
+use Magento\Mtf\Handler\HandlerInterface;
 
 /**
  * Interface AdminUserRoleInterface
diff --git a/dev/tests/functional/tests/app/Magento/User/Test/Handler/AdminUserRole/Curl.php b/dev/tests/functional/tests/app/Magento/User/Test/Handler/AdminUserRole/Curl.php
index cbad1e0fbbfd392d44075e31c865ba0c6be8daa0..1162d727958f3d04ebe85872fc2bfec934bd7009 100644
--- a/dev/tests/functional/tests/app/Magento/User/Test/Handler/AdminUserRole/Curl.php
+++ b/dev/tests/functional/tests/app/Magento/User/Test/Handler/AdminUserRole/Curl.php
@@ -7,12 +7,12 @@
 namespace Magento\User\Test\Handler\AdminUserRole;
 
 use Magento\Backend\Test\Handler\Extractor;
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Handler\Curl as AbstractCurl;
-use Mtf\System\Config;
-use Mtf\Util\Protocol\CurlInterface;
-use Mtf\Util\Protocol\CurlTransport;
-use Mtf\Util\Protocol\CurlTransport\BackendDecorator;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Handler\Curl as AbstractCurl;
+use Magento\Mtf\System\Config;
+use Magento\Mtf\Util\Protocol\CurlInterface;
+use Magento\Mtf\Util\Protocol\CurlTransport;
+use Magento\Mtf\Util\Protocol\CurlTransport\BackendDecorator;
 
 /**
  * Class Curl
diff --git a/dev/tests/functional/tests/app/Magento/User/Test/Handler/Curl/CreateRole.php b/dev/tests/functional/tests/app/Magento/User/Test/Handler/Curl/CreateRole.php
index a5d600af5298643b4b2c429a4df4cbfc47438ed3..df5f11c9a29f313670df7bc214995db295741628 100644
--- a/dev/tests/functional/tests/app/Magento/User/Test/Handler/Curl/CreateRole.php
+++ b/dev/tests/functional/tests/app/Magento/User/Test/Handler/Curl/CreateRole.php
@@ -7,12 +7,12 @@
 
 namespace Magento\User\Test\Handler\Curl;
 
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Handler\Curl;
-use Mtf\System\Config;
-use Mtf\Util\Protocol\CurlInterface;
-use Mtf\Util\Protocol\CurlTransport;
-use Mtf\Util\Protocol\CurlTransport\BackendDecorator;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Handler\Curl;
+use Magento\Mtf\System\Config;
+use Magento\Mtf\Util\Protocol\CurlInterface;
+use Magento\Mtf\Util\Protocol\CurlTransport;
+use Magento\Mtf\Util\Protocol\CurlTransport\BackendDecorator;
 
 /**
  * Class CreateCategory.
diff --git a/dev/tests/functional/tests/app/Magento/User/Test/Handler/Curl/CreateUser.php b/dev/tests/functional/tests/app/Magento/User/Test/Handler/Curl/CreateUser.php
index cfbd54c09a362330dc52eae2916cba606c6b8077..e3598d51730601640e449db524790058689e8226 100644
--- a/dev/tests/functional/tests/app/Magento/User/Test/Handler/Curl/CreateUser.php
+++ b/dev/tests/functional/tests/app/Magento/User/Test/Handler/Curl/CreateUser.php
@@ -6,12 +6,12 @@
 
 namespace Magento\User\Test\Handler\Curl;
 
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Handler\Curl;
-use Mtf\System\Config;
-use Mtf\Util\Protocol\CurlInterface;
-use Mtf\Util\Protocol\CurlTransport;
-use Mtf\Util\Protocol\CurlTransport\BackendDecorator;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Handler\Curl;
+use Magento\Mtf\System\Config;
+use Magento\Mtf\Util\Protocol\CurlInterface;
+use Magento\Mtf\Util\Protocol\CurlTransport;
+use Magento\Mtf\Util\Protocol\CurlTransport\BackendDecorator;
 
 /**
  * Curl handler for persisting Magento user
diff --git a/dev/tests/functional/tests/app/Magento/User/Test/Handler/User/Curl.php b/dev/tests/functional/tests/app/Magento/User/Test/Handler/User/Curl.php
index 703441ca08b3a2a3d128278d07b75f96b5df2436..23e8ae322300f6778065d5e91855df3c411ef203 100644
--- a/dev/tests/functional/tests/app/Magento/User/Test/Handler/User/Curl.php
+++ b/dev/tests/functional/tests/app/Magento/User/Test/Handler/User/Curl.php
@@ -7,12 +7,12 @@
 namespace Magento\User\Test\Handler\User;
 
 use Magento\Backend\Test\Handler\Extractor;
-use Mtf\Fixture\FixtureInterface;
-use Mtf\Handler\Curl as AbstractCurl;
-use Mtf\System\Config;
-use Mtf\Util\Protocol\CurlInterface;
-use Mtf\Util\Protocol\CurlTransport;
-use Mtf\Util\Protocol\CurlTransport\BackendDecorator;
+use Magento\Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Handler\Curl as AbstractCurl;
+use Magento\Mtf\System\Config;
+use Magento\Mtf\Util\Protocol\CurlInterface;
+use Magento\Mtf\Util\Protocol\CurlTransport;
+use Magento\Mtf\Util\Protocol\CurlTransport\BackendDecorator;
 
 /**
  * Class Curl
diff --git a/dev/tests/functional/tests/app/Magento/User/Test/Handler/User/UserInterface.php b/dev/tests/functional/tests/app/Magento/User/Test/Handler/User/UserInterface.php
index 887313ad2b925bb20d10c206100942c89edd8a01..b18cd5603c8b6bb5c570e093b1e89390b4267127 100644
--- a/dev/tests/functional/tests/app/Magento/User/Test/Handler/User/UserInterface.php
+++ b/dev/tests/functional/tests/app/Magento/User/Test/Handler/User/UserInterface.php
@@ -6,7 +6,7 @@
 
 namespace Magento\User\Test\Handler\User;
 
-use Mtf\Handler\HandlerInterface;
+use Magento\Mtf\Handler\HandlerInterface;
 
 /**
  * Interface UserInterface
diff --git a/dev/tests/functional/tests/app/Magento/User/Test/Repository/AdminUser.php b/dev/tests/functional/tests/app/Magento/User/Test/Repository/AdminUser.php
index cdb7260a8371be8d62ceee6f47dc6ece10db364b..9046699e1a452f9bb5b7987654c28a62594219e3 100644
--- a/dev/tests/functional/tests/app/Magento/User/Test/Repository/AdminUser.php
+++ b/dev/tests/functional/tests/app/Magento/User/Test/Repository/AdminUser.php
@@ -6,7 +6,7 @@
 
 namespace Magento\User\Test\Repository;
 
-use Mtf\Repository\AbstractRepository;
+use Magento\Mtf\Repository\AbstractRepository;
 
 /**
  * Class Admin User Repository
diff --git a/dev/tests/functional/tests/app/Magento/User/Test/Repository/AdminUserRole.php b/dev/tests/functional/tests/app/Magento/User/Test/Repository/AdminUserRole.php
index 334fda5055bdcb757ab803d78a4ab190580351f8..5a94b249e7255e477a38ca9f359bd702b6fec562 100644
--- a/dev/tests/functional/tests/app/Magento/User/Test/Repository/AdminUserRole.php
+++ b/dev/tests/functional/tests/app/Magento/User/Test/Repository/AdminUserRole.php
@@ -6,7 +6,7 @@
 
 namespace Magento\User\Test\Repository;
 
-use Mtf\Repository\AbstractRepository;
+use Magento\Mtf\Repository\AbstractRepository;
 
 /**
  * Class AdminUserRole
diff --git a/dev/tests/functional/tests/app/Magento/User/Test/Repository/Role.php b/dev/tests/functional/tests/app/Magento/User/Test/Repository/Role.php
index 8c53310032984b006360837991a2d8ee1f5517c2..08eb926a06a3e94c0a16ab168b2e50b31a41eb59 100644
--- a/dev/tests/functional/tests/app/Magento/User/Test/Repository/Role.php
+++ b/dev/tests/functional/tests/app/Magento/User/Test/Repository/Role.php
@@ -6,8 +6,8 @@
 
 namespace Magento\User\Test\Repository;
 
-use Mtf\Factory\Factory;
-use Mtf\Repository\AbstractRepository;
+use Magento\Mtf\Factory\Factory;
+use Magento\Mtf\Repository\AbstractRepository;
 
 /**
  * Class Abstract Repository
diff --git a/dev/tests/functional/tests/app/Magento/User/Test/Repository/User.php b/dev/tests/functional/tests/app/Magento/User/Test/Repository/User.php
index 16ef63904a209d3667f06136498f5991253f5f94..a8098084f2be48edf2b59489af69c85f967a2700 100644
--- a/dev/tests/functional/tests/app/Magento/User/Test/Repository/User.php
+++ b/dev/tests/functional/tests/app/Magento/User/Test/Repository/User.php
@@ -6,8 +6,8 @@
 
 namespace Magento\User\Test\Repository;
 
-use Mtf\ObjectManager;
-use Mtf\Repository\AbstractRepository;
+use Magento\Mtf\ObjectManager;
+use Magento\Mtf\Repository\AbstractRepository;
 
 /**
  * Class User
@@ -24,8 +24,8 @@ class User extends AbstractRepository
      */
     public function __construct(array $defaultConfig = [], array $defaultData = [])
     {
-        /** @var \Mtf\System\Config $systemConfig */
-        $systemConfig = ObjectManager::getInstance()->create('Mtf\System\Config');
+        /** @var \Magento\Mtf\System\Config $systemConfig */
+        $systemConfig = ObjectManager::getInstance()->create('Magento\Mtf\System\Config');
         $superAdminPassword = $systemConfig->getConfigParam('application/backend_user_credentials/password');
         $this->_data['default'] = [
             'username' => 'admin',
diff --git a/dev/tests/functional/tests/app/Magento/User/Test/TestCase/CreateAdminUserEntityTest.php b/dev/tests/functional/tests/app/Magento/User/Test/TestCase/CreateAdminUserEntityTest.php
index 5f37fd79db2f684d1e2fba65d3ad8fcaf251031c..c77bc0c762a3da7f394ff6d16abdb468114350d5 100644
--- a/dev/tests/functional/tests/app/Magento/User/Test/TestCase/CreateAdminUserEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/User/Test/TestCase/CreateAdminUserEntityTest.php
@@ -9,8 +9,8 @@ namespace Magento\User\Test\TestCase;
 use Magento\User\Test\Fixture\User;
 use Magento\User\Test\Page\Adminhtml\UserEdit;
 use Magento\User\Test\Page\Adminhtml\UserIndex;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for CreateAdminUserEntityTest
@@ -23,11 +23,16 @@ use Mtf\TestCase\Injectable;
  * 5. Save user
  * 6. Perform assertions
  *
- * @group ACL_(MX)
+ * @group ACL_(PS)
  * @ZephyrId MAGETWO-25699
  */
 class CreateAdminUserEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'no';
+    const DOMAIN = 'PS';
+    /* end tags */
+
     /**
      * User grid page
      *
diff --git a/dev/tests/functional/tests/app/Magento/User/Test/TestCase/CreateAdminUserRoleEntityTest.php b/dev/tests/functional/tests/app/Magento/User/Test/TestCase/CreateAdminUserRoleEntityTest.php
index 11fa84f6eae55d9ddd54ff72e2e4057314100a25..57ae388e1a34cd35a209afbacee0758a62c99b6b 100644
--- a/dev/tests/functional/tests/app/Magento/User/Test/TestCase/CreateAdminUserRoleEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/User/Test/TestCase/CreateAdminUserRoleEntityTest.php
@@ -9,7 +9,7 @@ namespace Magento\User\Test\TestCase;
 use Magento\User\Test\Fixture\AdminUserRole;
 use Magento\User\Test\Page\Adminhtml\UserRoleEditRole;
 use Magento\User\Test\Page\Adminhtml\UserRoleIndex;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for CreateAdminUserRolesEntity
@@ -22,11 +22,16 @@ use Mtf\TestCase\Injectable;
  * 5. Save role
  * 6. Perform assertions
  *
- * @group ACL_(MX)
+ * @group ACL_(PS)
  * @ZephyrId MAGETWO-23413
  */
 class CreateAdminUserRoleEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'no';
+    const DOMAIN = 'PS';
+    /* end tags */
+
     /**
      * @var UserRoleIndex
      */
diff --git a/dev/tests/functional/tests/app/Magento/User/Test/TestCase/DeleteAdminUserEntityTest.php b/dev/tests/functional/tests/app/Magento/User/Test/TestCase/DeleteAdminUserEntityTest.php
index ce413123f10802d3def8f6f865141c00cce2d50f..d6d4c9f9debbcf682bb730836658839d0126416f 100644
--- a/dev/tests/functional/tests/app/Magento/User/Test/TestCase/DeleteAdminUserEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/User/Test/TestCase/DeleteAdminUserEntityTest.php
@@ -11,8 +11,8 @@ use Magento\Backend\Test\Page\Adminhtml\Dashboard;
 use Magento\User\Test\Fixture\User;
 use Magento\User\Test\Page\Adminhtml\UserEdit;
 use Magento\User\Test\Page\Adminhtml\UserIndex;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for DeleteAdminUserEntity
@@ -27,11 +27,16 @@ use Mtf\TestCase\Injectable;
  * 4. Click "Delete User" button
  * 5. Perform all assertions
  *
- * @group ACL_(MX)
+ * @group ACL_(PS)
  * @ZephyrId MAGETWO-23416
  */
 class DeleteAdminUserEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'no';
+    const DOMAIN = 'PS';
+    /* end tags */
+
     /**
      * @var UserIndex
      */
diff --git a/dev/tests/functional/tests/app/Magento/User/Test/TestCase/DeleteUserRoleEntityTest.php b/dev/tests/functional/tests/app/Magento/User/Test/TestCase/DeleteUserRoleEntityTest.php
index 5c87323cbeacb405632ab6de124578a6ec36bc76..161917c3b546196c4ac0619af2aa9d94a2170da8 100644
--- a/dev/tests/functional/tests/app/Magento/User/Test/TestCase/DeleteUserRoleEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/User/Test/TestCase/DeleteUserRoleEntityTest.php
@@ -12,8 +12,8 @@ use Magento\User\Test\Fixture\AdminUserRole;
 use Magento\User\Test\Fixture\User;
 use Magento\User\Test\Page\Adminhtml\UserRoleEditRole;
 use Magento\User\Test\Page\Adminhtml\UserRoleIndex;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for DeleteUserRoleEntity
@@ -28,11 +28,16 @@ use Mtf\TestCase\Injectable;
  *  4. Click "Delete Role" button
  *  5. Perform all assertions
  *
- * @group ACL_(MX)
+ * @group ACL_(PS)
  * @ZephyrId MAGETWO-23926
  */
 class DeleteUserRoleEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'no';
+    const DOMAIN = 'PS';
+    /* end tags */
+
     /**
      * @var UserRoleIndex
      */
diff --git a/dev/tests/functional/tests/app/Magento/User/Test/TestCase/RevokeAllAccessTokensForAdminWithoutTokensTest.php b/dev/tests/functional/tests/app/Magento/User/Test/TestCase/RevokeAllAccessTokensForAdminWithoutTokensTest.php
index 75962fb4451a0c3f02e3130697898642376d40f8..bdac1186edc8c541535c562ee183035336bd4e80 100644
--- a/dev/tests/functional/tests/app/Magento/User/Test/TestCase/RevokeAllAccessTokensForAdminWithoutTokensTest.php
+++ b/dev/tests/functional/tests/app/Magento/User/Test/TestCase/RevokeAllAccessTokensForAdminWithoutTokensTest.php
@@ -9,7 +9,7 @@ namespace Magento\User\Test\TestCase;
 use Magento\User\Test\Fixture\User;
 use Magento\User\Test\Page\Adminhtml\UserEdit;
 use Magento\User\Test\Page\Adminhtml\UserIndex;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Revoke all access tokens for admin without tokens.
@@ -32,6 +32,11 @@ use Mtf\TestCase\Injectable;
  */
 class RevokeAllAccessTokensForAdminWithoutTokensTest extends Injectable
 {
+    /* tags */
+    const MVP = 'no';
+    const DOMAIN = 'PS';
+    /* end tags */
+
     /**
      * User Index page.
      *
diff --git a/dev/tests/functional/tests/app/Magento/User/Test/TestCase/UpdateAdminUserEntityTest.php b/dev/tests/functional/tests/app/Magento/User/Test/TestCase/UpdateAdminUserEntityTest.php
index 3bbd5cacf2bcd64bf688814d52f9c7dff391d04f..cad7c857bfb4794f0d5abb76d72e42045a7e8937 100644
--- a/dev/tests/functional/tests/app/Magento/User/Test/TestCase/UpdateAdminUserEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/User/Test/TestCase/UpdateAdminUserEntityTest.php
@@ -11,8 +11,8 @@ use Magento\Backend\Test\Page\Adminhtml\Dashboard;
 use Magento\User\Test\Fixture\User;
 use Magento\User\Test\Page\Adminhtml\UserEdit;
 use Magento\User\Test\Page\Adminhtml\UserIndex;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for UpdateAdminUserEntity
@@ -30,11 +30,16 @@ use Mtf\TestCase\Injectable;
  * 5. Save user
  * 6. Perform all assertions
  *
- * @group ACL_(MX)
+ * @group ACL_(PS)
  * @ZephyrId MAGETWO-24345
  */
 class UpdateAdminUserEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'no';
+    const DOMAIN = 'PS';
+    /* end tags */
+
     /**
      * @var UserIndex
      */
diff --git a/dev/tests/functional/tests/app/Magento/User/Test/TestCase/UpdateAdminUserRoleEntityTest.php b/dev/tests/functional/tests/app/Magento/User/Test/TestCase/UpdateAdminUserRoleEntityTest.php
index b9c6446ba2a9b80eeb6e0738de8dfd704149f3bd..06a396c982cbac2ccd316f69d478f20d0a6b9b00 100644
--- a/dev/tests/functional/tests/app/Magento/User/Test/TestCase/UpdateAdminUserRoleEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/User/Test/TestCase/UpdateAdminUserRoleEntityTest.php
@@ -12,7 +12,7 @@ use Magento\User\Test\Fixture\AdminUserRole;
 use Magento\User\Test\Fixture\User;
 use Magento\User\Test\Page\Adminhtml\UserRoleEditRole;
 use Magento\User\Test\Page\Adminhtml\UserRoleIndex;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for UpdateAdminUserRoleEntity
@@ -32,6 +32,11 @@ use Mtf\TestCase\Injectable;
  */
 class UpdateAdminUserRoleEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'no';
+    const DOMAIN = 'PS';
+    /* end tags */
+
     /**
      * @var UserRoleIndex
      */
diff --git a/dev/tests/functional/tests/app/Magento/User/Test/TestCase/UserLoginAfterChangingPermissionsTest.php b/dev/tests/functional/tests/app/Magento/User/Test/TestCase/UserLoginAfterChangingPermissionsTest.php
index 7ab1b6a1cd6cd69d7e8d66334dd8b1795f5b20b0..003e6640bdfe763919f694d9115d8a78e3d77ea4 100644
--- a/dev/tests/functional/tests/app/Magento/User/Test/TestCase/UserLoginAfterChangingPermissionsTest.php
+++ b/dev/tests/functional/tests/app/Magento/User/Test/TestCase/UserLoginAfterChangingPermissionsTest.php
@@ -13,8 +13,8 @@ use Magento\User\Test\Page\Adminhtml\UserEdit;
 use Magento\User\Test\Page\Adminhtml\UserIndex;
 use Magento\User\Test\Page\Adminhtml\UserRoleEditRole;
 use Magento\User\Test\Page\Adminhtml\UserRoleIndex;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test that user can login from the first attempt just after his permissions were changed.
@@ -35,11 +35,16 @@ use Mtf\TestCase\Injectable;
  * 13. Log in using new admin user (before the bug was fixed, it was impossible to log in from the first attempt)
  * 14. Perform assertions
  *
- * @group ACL_(MX)
+ * @group ACL_(PS)
  * @ZephyrId MAGETWO-28828
  */
 class UserLoginAfterChangingPermissionsTest extends Injectable
 {
+    /* tags */
+    const MVP = 'no';
+    const DOMAIN = 'PS';
+    /* end tags */
+
     /**
      * User edit page
      *
diff --git a/dev/tests/functional/tests/app/Magento/Wishlist/Test/Block/Adminhtml/Customer/Edit/Tab/Wishlist.php b/dev/tests/functional/tests/app/Magento/Wishlist/Test/Block/Adminhtml/Customer/Edit/Tab/Wishlist.php
index 4c2bc63d30ead144ad8aa9ebd9d0e633805b7191..e147152e204622e2a7fd90d339ef5f183930bd4a 100644
--- a/dev/tests/functional/tests/app/Magento/Wishlist/Test/Block/Adminhtml/Customer/Edit/Tab/Wishlist.php
+++ b/dev/tests/functional/tests/app/Magento/Wishlist/Test/Block/Adminhtml/Customer/Edit/Tab/Wishlist.php
@@ -6,9 +6,9 @@
 
 namespace Magento\Wishlist\Test\Block\Adminhtml\Customer\Edit\Tab;
 
+use Magento\Mtf\Client\Element;
 use Magento\Backend\Test\Block\Widget\Tab;
 use Magento\Wishlist\Test\Block\Adminhtml\Customer\Edit\Tab\Wishlist\Grid;
-use Mtf\Client\Element;
 
 /**
  * Class Wishlist
diff --git a/dev/tests/functional/tests/app/Magento/Wishlist/Test/Block/Adminhtml/Customer/Edit/Tab/Wishlist/Grid.php b/dev/tests/functional/tests/app/Magento/Wishlist/Test/Block/Adminhtml/Customer/Edit/Tab/Wishlist/Grid.php
index 42e9203756977dba602c8485114237bc0bbda2fa..fd2a372a444733ab4e232d2314208b5f3a0e4940 100644
--- a/dev/tests/functional/tests/app/Magento/Wishlist/Test/Block/Adminhtml/Customer/Edit/Tab/Wishlist/Grid.php
+++ b/dev/tests/functional/tests/app/Magento/Wishlist/Test/Block/Adminhtml/Customer/Edit/Tab/Wishlist/Grid.php
@@ -6,8 +6,8 @@
 
 namespace Magento\Wishlist\Test\Block\Adminhtml\Customer\Edit\Tab\Wishlist;
 
-use Mtf\Client\Element;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Client\Element\SimpleElement;
 
 /**
  * Class Grid
@@ -58,7 +58,7 @@ class Grid extends \Magento\Backend\Test\Block\Widget\Grid
     protected function delete()
     {
         $this->_rootElement->find($this->rowItem . ' ' . $this->deleteLink)->click();
-        $this->_rootElement->acceptAlert();
+        $this->browser->acceptAlert();
     }
 
     /**
@@ -91,7 +91,7 @@ class Grid extends \Magento\Backend\Test\Block\Widget\Grid
      * @param array $filter
      * @param bool $isSearchable [optional]
      * @param bool $isStrict [optional]
-     * @return Element
+     * @return SimpleElement
      */
     protected function getRow(array $filter, $isSearchable = true, $isStrict = true)
     {
@@ -119,7 +119,7 @@ class Grid extends \Magento\Backend\Test\Block\Widget\Grid
                 );
             }
         }
-        $location = $location . implode(' and ', $rows) . ']';
-        return $this->_rootElement->find($location, Locator::SELECTOR_XPATH);
+
+        return $this->_rootElement->find($location . implode(' and ', $rows) . ']', Locator::SELECTOR_XPATH);
     }
 }
diff --git a/dev/tests/functional/tests/app/Magento/Wishlist/Test/Block/Customer/Sharing.php b/dev/tests/functional/tests/app/Magento/Wishlist/Test/Block/Customer/Sharing.php
index baae27511671a97028086b9c7d7293bbc0578932..a85bd45da9299c3c4f4f4d93c8743bdf4184448f 100644
--- a/dev/tests/functional/tests/app/Magento/Wishlist/Test/Block/Customer/Sharing.php
+++ b/dev/tests/functional/tests/app/Magento/Wishlist/Test/Block/Customer/Sharing.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Wishlist\Test\Block\Customer;
 
-use Mtf\Block\Form;
+use Magento\Mtf\Block\Form;
 
 /**
  * Class Sharing
diff --git a/dev/tests/functional/tests/app/Magento/Wishlist/Test/Block/Customer/Wishlist.php b/dev/tests/functional/tests/app/Magento/Wishlist/Test/Block/Customer/Wishlist.php
index f3f8ac49c79c2c3f6d4cbafb257d7466b21b4a11..30e6dcd8dcca85ba922df43b610b552503fe2854 100644
--- a/dev/tests/functional/tests/app/Magento/Wishlist/Test/Block/Customer/Wishlist.php
+++ b/dev/tests/functional/tests/app/Magento/Wishlist/Test/Block/Customer/Wishlist.php
@@ -6,7 +6,7 @@
 
 namespace Magento\Wishlist\Test\Block\Customer;
 
-use Mtf\Block\Block;
+use Magento\Mtf\Block\Block;
 
 /**
  * Class Wishlist
diff --git a/dev/tests/functional/tests/app/Magento/Wishlist/Test/Block/Customer/Wishlist/Items.php b/dev/tests/functional/tests/app/Magento/Wishlist/Test/Block/Customer/Wishlist/Items.php
index 719133ed60643819cf769f9322e7f0fb56ec6a29..153f40522c7601c316545fb72e8a62f3ca361612 100644
--- a/dev/tests/functional/tests/app/Magento/Wishlist/Test/Block/Customer/Wishlist/Items.php
+++ b/dev/tests/functional/tests/app/Magento/Wishlist/Test/Block/Customer/Wishlist/Items.php
@@ -7,10 +7,9 @@
 namespace Magento\Wishlist\Test\Block\Customer\Wishlist;
 
 use Magento\Wishlist\Test\Block\Customer\Wishlist\Items\Product;
-use Mtf\Block\Block;
-use Mtf\Client\Element;
-use Mtf\Client\Element\Locator;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Block\Block;
+use Magento\Mtf\Client\Locator;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class Items
@@ -56,7 +55,6 @@ class Items extends Block
     {
         while ($this->_rootElement->find($this->remove)->isVisible()) {
             $this->_rootElement->find($this->remove)->click();
-            $this->reinitRootElement();
         }
     }
 }
diff --git a/dev/tests/functional/tests/app/Magento/Wishlist/Test/Block/Customer/Wishlist/Items/Product.php b/dev/tests/functional/tests/app/Magento/Wishlist/Test/Block/Customer/Wishlist/Items/Product.php
index bb241e9c6cf0e88debf149794196abdfca130a0e..5f427ca5531f3dabfa6297513defebd191875959 100644
--- a/dev/tests/functional/tests/app/Magento/Wishlist/Test/Block/Customer/Wishlist/Items/Product.php
+++ b/dev/tests/functional/tests/app/Magento/Wishlist/Test/Block/Customer/Wishlist/Items/Product.php
@@ -6,8 +6,8 @@
 
 namespace Magento\Wishlist\Test\Block\Customer\Wishlist\Items;
 
-use Mtf\Block\Form;
-use Mtf\Client\Element\Locator;
+use Magento\Mtf\Block\Form;
+use Magento\Mtf\Client\Locator;
 
 /**
  * Class Product
@@ -114,8 +114,8 @@ class Product extends Form
         if ($viewDetails->isVisible()) {
             $this->_rootElement->find($this->footer, Locator::SELECTOR_XPATH)->click();
             $viewDetails->click();
-            $labels = $this->_rootElement->find($this->optionLabel)->getElements();
-            $values = $this->_rootElement->find($this->optionValue)->getElements();
+            $labels = $this->_rootElement->getElements($this->optionLabel);
+            $values = $this->_rootElement->getElements($this->optionValue);
             $data = [];
             foreach ($labels as $key => $label) {
                 if (!$label->isVisible()) {
diff --git a/dev/tests/functional/tests/app/Magento/Wishlist/Test/Constraint/AssertAddProductToWishlistSuccessMessage.php b/dev/tests/functional/tests/app/Magento/Wishlist/Test/Constraint/AssertAddProductToWishlistSuccessMessage.php
index 05eada0d084a89a402b59a5b10e2c90e022d66e4..0e616a4d881dd06a42562fefb1601286b0ff56be 100644
--- a/dev/tests/functional/tests/app/Magento/Wishlist/Test/Constraint/AssertAddProductToWishlistSuccessMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Wishlist/Test/Constraint/AssertAddProductToWishlistSuccessMessage.php
@@ -7,8 +7,8 @@
 namespace Magento\Wishlist\Test\Constraint;
 
 use Magento\Wishlist\Test\Page\WishlistIndex;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Class AssertAddProductToWishlistSuccessMessage
diff --git a/dev/tests/functional/tests/app/Magento/Wishlist/Test/Constraint/AssertMoveProductToWishlistSuccessMessage.php b/dev/tests/functional/tests/app/Magento/Wishlist/Test/Constraint/AssertMoveProductToWishlistSuccessMessage.php
index 371cce58db295d532473d01d34bc6157aa8ef35c..3bfdd344eb6e4296a1604136bf22d2b9391974c1 100644
--- a/dev/tests/functional/tests/app/Magento/Wishlist/Test/Constraint/AssertMoveProductToWishlistSuccessMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Wishlist/Test/Constraint/AssertMoveProductToWishlistSuccessMessage.php
@@ -7,8 +7,8 @@
 namespace Magento\Wishlist\Test\Constraint;
 
 use Magento\Wishlist\Test\Page\WishlistIndex;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Class AssertAddProductToWishlistSuccessMessage
diff --git a/dev/tests/functional/tests/app/Magento/Wishlist/Test/Constraint/AssertProductDetailsInWishlist.php b/dev/tests/functional/tests/app/Magento/Wishlist/Test/Constraint/AssertProductDetailsInWishlist.php
index accea31efaf7abe037c81b9155b5279756dae0cb..791b72d28a99fba25af93d690d6f4e7015fe2eb1 100644
--- a/dev/tests/functional/tests/app/Magento/Wishlist/Test/Constraint/AssertProductDetailsInWishlist.php
+++ b/dev/tests/functional/tests/app/Magento/Wishlist/Test/Constraint/AssertProductDetailsInWishlist.php
@@ -8,9 +8,9 @@ namespace Magento\Wishlist\Test\Constraint;
 
 use Magento\Cms\Test\Page\CmsIndex;
 use Magento\Wishlist\Test\Page\WishlistIndex;
-use Mtf\Constraint\AbstractAssertForm;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Constraint\AbstractAssertForm;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Class AssertBundleProductDetailsInWishlist
diff --git a/dev/tests/functional/tests/app/Magento/Wishlist/Test/Constraint/AssertProductInCustomerWishlistOnBackendGrid.php b/dev/tests/functional/tests/app/Magento/Wishlist/Test/Constraint/AssertProductInCustomerWishlistOnBackendGrid.php
index d8ed443bf8013861f7a6383fe8f31346b12c8bfa..afa3f5eb3db895b4497e47a60c52350780232bc4 100644
--- a/dev/tests/functional/tests/app/Magento/Wishlist/Test/Constraint/AssertProductInCustomerWishlistOnBackendGrid.php
+++ b/dev/tests/functional/tests/app/Magento/Wishlist/Test/Constraint/AssertProductInCustomerWishlistOnBackendGrid.php
@@ -8,8 +8,8 @@ namespace Magento\Wishlist\Test\Constraint;
 
 use Magento\Customer\Test\Page\Adminhtml\CustomerIndexEdit;
 use Magento\Wishlist\Test\Block\Adminhtml\Customer\Edit\Tab\Wishlist\Grid;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\FixtureInterface;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\FixtureInterface;
 
 /**
  * Class AssertProductInCustomerWishlistOnBackendGrid
diff --git a/dev/tests/functional/tests/app/Magento/Wishlist/Test/Constraint/AssertProductIsPresentInCustomerBackendWishlist.php b/dev/tests/functional/tests/app/Magento/Wishlist/Test/Constraint/AssertProductIsPresentInCustomerBackendWishlist.php
index 6f59d50f1d1d852188916d6b2c229fc6a9d97faf..8370fbd4a307c07f85d2e91ea6d0bdd9a095116d 100644
--- a/dev/tests/functional/tests/app/Magento/Wishlist/Test/Constraint/AssertProductIsPresentInCustomerBackendWishlist.php
+++ b/dev/tests/functional/tests/app/Magento/Wishlist/Test/Constraint/AssertProductIsPresentInCustomerBackendWishlist.php
@@ -9,8 +9,8 @@ namespace Magento\Wishlist\Test\Constraint;
 use Magento\Customer\Test\Fixture\CustomerInjectable;
 use Magento\Customer\Test\Page\Adminhtml\CustomerIndex;
 use Magento\Customer\Test\Page\Adminhtml\CustomerIndexEdit;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Class AssertProductIsPresentInCustomerBackendWishlist
diff --git a/dev/tests/functional/tests/app/Magento/Wishlist/Test/Constraint/AssertProductIsPresentInWishlist.php b/dev/tests/functional/tests/app/Magento/Wishlist/Test/Constraint/AssertProductIsPresentInWishlist.php
index f0fee57f93b6aa1516ecc4fe1e9321cacb22d11a..88f0192ade221c13a8cff1dca8cc50ca34f539ff 100644
--- a/dev/tests/functional/tests/app/Magento/Wishlist/Test/Constraint/AssertProductIsPresentInWishlist.php
+++ b/dev/tests/functional/tests/app/Magento/Wishlist/Test/Constraint/AssertProductIsPresentInWishlist.php
@@ -9,8 +9,8 @@ namespace Magento\Wishlist\Test\Constraint;
 use Magento\Cms\Test\Page\CmsIndex;
 use Magento\Customer\Test\Page\CustomerAccountIndex;
 use Magento\Wishlist\Test\Page\WishlistIndex;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Class AssertProductIsPresentInWishlist
diff --git a/dev/tests/functional/tests/app/Magento/Wishlist/Test/Constraint/AssertProductsIsAbsentInWishlist.php b/dev/tests/functional/tests/app/Magento/Wishlist/Test/Constraint/AssertProductsIsAbsentInWishlist.php
index dbd869d0a09931a2fcf6437f982e81de77b5c4a3..661cfac7c9b8da9d1bfc1975e60f0a33169de316 100644
--- a/dev/tests/functional/tests/app/Magento/Wishlist/Test/Constraint/AssertProductsIsAbsentInWishlist.php
+++ b/dev/tests/functional/tests/app/Magento/Wishlist/Test/Constraint/AssertProductsIsAbsentInWishlist.php
@@ -12,8 +12,8 @@ use Magento\Customer\Test\Page\CustomerAccountIndex;
 use Magento\Customer\Test\Page\CustomerAccountLogin;
 use Magento\Customer\Test\Page\CustomerAccountLogout;
 use Magento\Wishlist\Test\Page\WishlistIndex;
-use Mtf\Constraint\AbstractConstraint;
-use Mtf\Fixture\InjectableFixture;
+use Magento\Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Fixture\InjectableFixture;
 
 /**
  * Class AssertProductsIsAbsentInWishlist
diff --git a/dev/tests/functional/tests/app/Magento/Wishlist/Test/Constraint/AssertWishlistIsEmpty.php b/dev/tests/functional/tests/app/Magento/Wishlist/Test/Constraint/AssertWishlistIsEmpty.php
index 502839a77155d254e6a562962a7f835d7305c6b1..794e8b46076741827fe00005f15ca37850197a97 100644
--- a/dev/tests/functional/tests/app/Magento/Wishlist/Test/Constraint/AssertWishlistIsEmpty.php
+++ b/dev/tests/functional/tests/app/Magento/Wishlist/Test/Constraint/AssertWishlistIsEmpty.php
@@ -8,7 +8,7 @@ namespace Magento\Wishlist\Test\Constraint;
 
 use Magento\Cms\Test\Page\CmsIndex;
 use Magento\Wishlist\Test\Page\WishlistIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertWishlistIsEmpty
diff --git a/dev/tests/functional/tests/app/Magento/Wishlist/Test/Constraint/AssertWishlistShareMessage.php b/dev/tests/functional/tests/app/Magento/Wishlist/Test/Constraint/AssertWishlistShareMessage.php
index cd96a7d611791fad5a53f66893f9629d4a842388..302e994568ddd2ab57a7f2a8c0eb7505cd4c19b3 100644
--- a/dev/tests/functional/tests/app/Magento/Wishlist/Test/Constraint/AssertWishlistShareMessage.php
+++ b/dev/tests/functional/tests/app/Magento/Wishlist/Test/Constraint/AssertWishlistShareMessage.php
@@ -7,7 +7,7 @@
 namespace Magento\Wishlist\Test\Constraint;
 
 use Magento\Wishlist\Test\Page\WishlistIndex;
-use Mtf\Constraint\AbstractConstraint;
+use Magento\Mtf\Constraint\AbstractConstraint;
 
 /**
  * Class AssertWishlistShareMessage
diff --git a/dev/tests/functional/tests/app/Magento/Wishlist/Test/TestCase/AbstractWishlistTest.php b/dev/tests/functional/tests/app/Magento/Wishlist/Test/TestCase/AbstractWishlistTest.php
index 643858b155e9ab07211e9d2856444dadc5e5d7a1..b69fa2218ad10b758cfb53333ff8130514d52ca6 100644
--- a/dev/tests/functional/tests/app/Magento/Wishlist/Test/TestCase/AbstractWishlistTest.php
+++ b/dev/tests/functional/tests/app/Magento/Wishlist/Test/TestCase/AbstractWishlistTest.php
@@ -10,9 +10,9 @@ use Magento\Catalog\Test\Page\Product\CatalogProductView;
 use Magento\Cms\Test\Page\CmsIndex;
 use Magento\Customer\Test\Fixture\CustomerInjectable;
 use Magento\Wishlist\Test\Page\WishlistIndex;
-use Mtf\Fixture\FixtureFactory;
-use Mtf\ObjectManager;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\Fixture\FixtureFactory;
+use Magento\Mtf\ObjectManager;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Class AbstractWishlistTest
diff --git a/dev/tests/functional/tests/app/Magento/Wishlist/Test/TestCase/ShareWishlistEntityTest.php b/dev/tests/functional/tests/app/Magento/Wishlist/Test/TestCase/ShareWishlistEntityTest.php
index 1bb70eaef1937393f582ec16b611efa946af1920..342066c81cdc0256516f55b60a2eeef650f78ebc 100644
--- a/dev/tests/functional/tests/app/Magento/Wishlist/Test/TestCase/ShareWishlistEntityTest.php
+++ b/dev/tests/functional/tests/app/Magento/Wishlist/Test/TestCase/ShareWishlistEntityTest.php
@@ -15,8 +15,8 @@ use Magento\Customer\Test\Page\CustomerAccountLogin;
 use Magento\Customer\Test\Page\CustomerAccountLogout;
 use Magento\Wishlist\Test\Page\WishlistIndex;
 use Magento\Wishlist\Test\Page\WishlistShare;
-use Mtf\Client\Browser;
-use Mtf\TestCase\Injectable;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\TestCase\Injectable;
 
 /**
  * Test Creation for ShareWishlistEntity
@@ -42,6 +42,11 @@ use Mtf\TestCase\Injectable;
  */
 class ShareWishlistEntityTest extends Injectable
 {
+    /* tags */
+    const MVP = 'no';
+    const DOMAIN = 'CS';
+    /* end tags */
+
     /**
      * Cms index page
      *
@@ -144,14 +149,14 @@ class ShareWishlistEntityTest extends Injectable
     /**
      * Share wish list
      *
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @param CustomerInjectable $customer
      * @param CatalogProductSimple $product
      * @param array $sharingInfo
      * @return void
      */
     public function test(
-        Browser $browser,
+        BrowserInterface $browser,
         CustomerInjectable $customer,
         CatalogProductSimple $product,
         array $sharingInfo
diff --git a/dev/tests/functional/tests/app/Magento/Wishlist/Test/TestStep/AddProductsToWishlistStep.php b/dev/tests/functional/tests/app/Magento/Wishlist/Test/TestStep/AddProductsToWishlistStep.php
index 78e4ec4ed494656868ca8c81bffa10d568b4e2eb..615da8212ef2846f1dc30ceb8945e31b612845ed 100644
--- a/dev/tests/functional/tests/app/Magento/Wishlist/Test/TestStep/AddProductsToWishlistStep.php
+++ b/dev/tests/functional/tests/app/Magento/Wishlist/Test/TestStep/AddProductsToWishlistStep.php
@@ -7,8 +7,8 @@
 namespace Magento\Wishlist\Test\TestStep;
 
 use Magento\Catalog\Test\Page\Product\CatalogProductView;
-use Mtf\Client\Browser;
-use Mtf\TestStep\TestStepInterface;
+use Magento\Mtf\Client\BrowserInterface;
+use Magento\Mtf\TestStep\TestStepInterface;
 
 /**
  * Class AddProductsToWishlistStep
@@ -33,7 +33,7 @@ class AddProductsToWishlistStep implements TestStepInterface
     /**
      * Interface Browser
      *
-     * @var Browser
+     * @var BrowserInterface
      */
     protected $browser;
 
@@ -47,13 +47,13 @@ class AddProductsToWishlistStep implements TestStepInterface
     /**
      * @constructor
      * @param CatalogProductView $catalogProductView
-     * @param Browser $browser
+     * @param BrowserInterface $browser
      * @param array $products
      * @param bool $configure [optional]
      */
     public function __construct(
         CatalogProductView $catalogProductView,
-        Browser $browser,
+        BrowserInterface $browser,
         array $products,
         $configure = false
     ) {
diff --git a/dev/tests/functional/testsuites/Mtf/TestSuite/GithubPublicationTests.php b/dev/tests/functional/testsuites/Magento/Mtf/TestSuite/GithubPublicationTests.php
similarity index 91%
rename from dev/tests/functional/testsuites/Mtf/TestSuite/GithubPublicationTests.php
rename to dev/tests/functional/testsuites/Magento/Mtf/TestSuite/GithubPublicationTests.php
index b4eedd0b25aeece2b9367d24bda20a28cef2a4d7..69eea437e7eaa09f9471214311a28e7d935b9134 100644
--- a/dev/tests/functional/testsuites/Mtf/TestSuite/GithubPublicationTests.php
+++ b/dev/tests/functional/testsuites/Magento/Mtf/TestSuite/GithubPublicationTests.php
@@ -4,7 +4,7 @@
  * See COPYING.txt for license details.
  */
 
-namespace Mtf\TestSuite;
+namespace Magento\Mtf\TestSuite;
 
 /**
  * Test suite prepared for Github Publication
@@ -28,13 +28,13 @@ class GithubPublicationTests
         $suite->addTestSuite('Magento\Checkout\Test\TestCase\ShippingCarrierTest');
 
         // Adding temporary redirect for product (MAGETWO-12409)
-        $suite->addTestSuite('Magento\UrlRewrite\Test\TestCase\ProductTest');
+        $suite->addTestSuite('Magento\UrlRewrite\Test\TestCase\CreateProductUrlRewriteEntityTest');
 
         // Creating offline order for registered/new customer in admin (MAGETWO-12395, MAGETWO-12520)
         $suite->addTestSuite('Magento\Sales\Test\TestCase\CreateOrderTest');
 
         // Creating customer account (MAGETWO-12394)
-        $suite->addTestSuite('Magento\Customer\Test\TestCase\CreateOnFrontendTest');
+        $suite->addTestSuite('Magento\Customer\Test\TestCase\RegisterCustomerFrontendEntityTest');
 
         // Creating Grouped product and assign it to the category (MAGETWO-13610)
         $suite->addTestSuite('Magento\GroupedProduct\Test\TestCase\CreateGroupedTest');
@@ -58,7 +58,7 @@ class GithubPublicationTests
         $suite->addTestSuite('Magento\Catalog\Test\TestCase\Layer\FilterProductListTest');
 
         // Using quick search to find the product (MAGETWO-12420)
-        $suite->addTestSuite('Magento\CatalogSearch\Test\TestCase\SearchTest');
+        $suite->addTestSuite('Magento\CatalogSearch\Test\TestCase\SearchEntityResultsTest');
 
         // Product Up-selling (MAGETWO-12391)
         $suite->addTestSuite('Magento\Catalog\Test\TestCase\Product\UpsellTest');
diff --git a/dev/tests/functional/testsuites/Mtf/TestSuite/InjectableTests.php b/dev/tests/functional/testsuites/Magento/Mtf/TestSuite/InjectableTests.php
similarity index 72%
rename from dev/tests/functional/testsuites/Mtf/TestSuite/InjectableTests.php
rename to dev/tests/functional/testsuites/Magento/Mtf/TestSuite/InjectableTests.php
index 1f8c7b2c24579455c5e14af12704a1dcb5b2323a..1cc1259d981bdd3c1026079080987996ed57a5b8 100644
--- a/dev/tests/functional/testsuites/Mtf/TestSuite/InjectableTests.php
+++ b/dev/tests/functional/testsuites/Magento/Mtf/TestSuite/InjectableTests.php
@@ -4,11 +4,11 @@
  * See COPYING.txt for license details.
  */
 
-namespace Mtf\TestSuite;
+namespace Magento\Mtf\TestSuite;
 
-use Mtf\ObjectManager;
-use Mtf\ObjectManagerFactory;
-use Mtf\TestRunner\Configuration;
+use Magento\Mtf\ObjectManager;
+use Magento\Mtf\ObjectManagerFactory;
+use Magento\Mtf\TestRunner\Configuration;
 
 /**
  * Class InjectableTests
@@ -70,12 +70,12 @@ class InjectableTests extends \PHPUnit_Framework_TestSuite
     /**
      * Prepare test suite and apply application state
      *
-     * @return \Mtf\TestSuite\AppState
+     * @return \Magento\Mtf\TestSuite\AppState
      */
     public function prepareSuite()
     {
         $this->init();
-        return $this->objectManager->create('Mtf\TestSuite\AppState');
+        return $this->objectManager->create('Magento\Mtf\TestSuite\AppState');
     }
 
     /**
@@ -93,16 +93,19 @@ class InjectableTests extends \PHPUnit_Framework_TestSuite
     {
         if (!isset($this->objectManager)) {
             $objectManagerFactory = new ObjectManagerFactory();
-            $configurationFileName = isset($_ENV['configuration:Mtf/TestSuite/InjectableTests'])
-                ? $_ENV['configuration:Mtf/TestSuite/InjectableTests']
+            $configurationFileName = isset($_ENV['testsuite_rule'])
+                ? $_ENV['testsuite_rule']
                 : 'basic';
-            $confFilePath = __DIR__ . '/InjectableTests/' . $configurationFileName . '.xml';
-            /** @var \Mtf\TestRunner\Configuration $testRunnerConfiguration */
-            $testRunnerConfiguration = $objectManagerFactory->getObjectManager()->get('\Mtf\TestRunner\Configuration');
+            $confFilePath = realpath(
+                MTF_BP . '/testsuites/' . $_ENV['testsuite_rule_path']  . '/' . $configurationFileName . '.xml'
+            );
+            /** @var \Magento\Mtf\TestRunner\Configuration $testRunnerConfiguration */
+            $testRunnerConfiguration = $objectManagerFactory->getObjectManager()
+                ->get('\Magento\Mtf\TestRunner\Configuration');
             $testRunnerConfiguration->load($confFilePath);
             $testRunnerConfiguration->loadEnvConfig();
 
-            $shared = ['Mtf\TestRunner\Configuration' => $testRunnerConfiguration];
+            $shared = ['Magento\Mtf\TestRunner\Configuration' => $testRunnerConfiguration];
             $this->objectManager = $objectManagerFactory->create($shared);
         }
     }
diff --git a/dev/tests/functional/testsuites/Magento/Mtf/TestSuite/InjectableTests/acceptance.xml b/dev/tests/functional/testsuites/Magento/Mtf/TestSuite/InjectableTests/acceptance.xml
new file mode 100644
index 0000000000000000000000000000000000000000..1f74e74f5eee2b605c7d3bd120459f829828c21b
--- /dev/null
+++ b/dev/tests/functional/testsuites/Magento/Mtf/TestSuite/InjectableTests/acceptance.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0"?>
+<!--
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+-->
+<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+        xsi:noNamespaceSchemaLocation="../../../../../vendor/magento/mtf/Magento/Mtf/TestRunner/etc/testRunner.xsd">
+    <rule scope="testcase">
+        <allow>
+            <tag group="test_type" value="acceptance_test" />
+        </allow>
+        <deny>
+            <tag group="stable" value="no" />
+        </deny>
+    </rule>
+    <rule scope="variation">
+        <allow>
+            <tag group="test_type" value="acceptance_test" />
+        </allow>
+    </rule>
+</config>
diff --git a/dev/tests/functional/testsuites/Mtf/TestSuite/InjectableTests/basic.xml b/dev/tests/functional/testsuites/Magento/Mtf/TestSuite/InjectableTests/basic.xml
similarity index 75%
rename from dev/tests/functional/testsuites/Mtf/TestSuite/InjectableTests/basic.xml
rename to dev/tests/functional/testsuites/Magento/Mtf/TestSuite/InjectableTests/basic.xml
index 60f1dab551315da92075c6a49aa3dbed86113e1f..a63d9da454d4d4df30b0996dbe425c2aec99b536 100644
--- a/dev/tests/functional/testsuites/Mtf/TestSuite/InjectableTests/basic.xml
+++ b/dev/tests/functional/testsuites/Magento/Mtf/TestSuite/InjectableTests/basic.xml
@@ -6,7 +6,7 @@
  */
 -->
 <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-        xsi:noNamespaceSchemaLocation="../../../../vendor/magento/mtf/Mtf/TestRunner/etc/testRunner.xsd">
+        xsi:noNamespaceSchemaLocation="../../../../../vendor/magento/mtf/Magento/Mtf/TestRunner/etc/testRunner.xsd">
     <rule scope="testsuite">
         <allow>
             <namespace value="Magento" />
diff --git a/dev/tests/functional/testsuites/Mtf/TestSuite/InjectableTests/bat_ce.xml b/dev/tests/functional/testsuites/Magento/Mtf/TestSuite/InjectableTests/bat_ce.xml
similarity index 89%
rename from dev/tests/functional/testsuites/Mtf/TestSuite/InjectableTests/bat_ce.xml
rename to dev/tests/functional/testsuites/Magento/Mtf/TestSuite/InjectableTests/bat_ce.xml
index c281c81f842bd46c3671a94c1bd549ac07ef03e6..e875401e6e82d7f5237231537d5380f493ffc79d 100644
--- a/dev/tests/functional/testsuites/Mtf/TestSuite/InjectableTests/bat_ce.xml
+++ b/dev/tests/functional/testsuites/Magento/Mtf/TestSuite/InjectableTests/bat_ce.xml
@@ -6,7 +6,7 @@
  */
 -->
 <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-        xsi:noNamespaceSchemaLocation="../../../../vendor/magento/mtf/Mtf/TestRunner/etc/testRunner.xsd">
+        xsi:noNamespaceSchemaLocation="../../../../../vendor/magento/mtf/Magento/Mtf/TestRunner/etc/testRunner.xsd">
     <rule scope="testsuite">
         <allow>
             <!--Products-->
@@ -16,7 +16,7 @@
             <class value="Magento\ConfigurableProduct\Test\TestCase\CreateWithAttributeTest" />
             <class value="Magento\Catalog\Test\TestCase\Product\CreateSimpleWithCustomOptionsAndCategoryTest" />
             <!--Category-->
-            <class value="Magento\Catalog\Test\TestCase\Category\CreateTest" />
+            <class value="Magento\Catalog\Test\TestCase\Category\CreateCategoryEntityTest" />
             <!--Stores-->
             <class value="Magento\Store\Test\TestCase\StoreTest" />
             <!--Quick Search-->
diff --git a/dev/tests/functional/testsuites/Magento/Mtf/TestSuite/InjectableTests/domain_cs.xml b/dev/tests/functional/testsuites/Magento/Mtf/TestSuite/InjectableTests/domain_cs.xml
new file mode 100644
index 0000000000000000000000000000000000000000..621c5d1e068d6973cc789079741265a1d1e734d0
--- /dev/null
+++ b/dev/tests/functional/testsuites/Magento/Mtf/TestSuite/InjectableTests/domain_cs.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0"?>
+<!--
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+-->
+<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+        xsi:noNamespaceSchemaLocation="../../../../../vendor/magento/mtf/Magento/Mtf/TestRunner/etc/testRunner.xsd">
+    <rule scope="testcase">
+        <allow>
+            <tag group="domain" value="CS" />
+        </allow>
+    </rule>
+</config>
diff --git a/dev/tests/functional/testsuites/Magento/Mtf/TestSuite/InjectableTests/domain_mx.xml b/dev/tests/functional/testsuites/Magento/Mtf/TestSuite/InjectableTests/domain_mx.xml
new file mode 100644
index 0000000000000000000000000000000000000000..12891acd39b81676cd6585614ba57dd8d1241364
--- /dev/null
+++ b/dev/tests/functional/testsuites/Magento/Mtf/TestSuite/InjectableTests/domain_mx.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0"?>
+<!--
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+-->
+<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+        xsi:noNamespaceSchemaLocation="../../../../../vendor/magento/mtf/Magento/Mtf/TestRunner/etc/testRunner.xsd">
+    <rule scope="testcase">
+        <allow>
+            <tag group="domain" value="MX" />
+        </allow>
+    </rule>
+</config>
diff --git a/dev/tests/functional/testsuites/Magento/Mtf/TestSuite/InjectableTests/domain_ps.xml b/dev/tests/functional/testsuites/Magento/Mtf/TestSuite/InjectableTests/domain_ps.xml
new file mode 100644
index 0000000000000000000000000000000000000000..fbbe25a921692250aa5df18ad2866ed1527115af
--- /dev/null
+++ b/dev/tests/functional/testsuites/Magento/Mtf/TestSuite/InjectableTests/domain_ps.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0"?>
+<!--
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+-->
+<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+        xsi:noNamespaceSchemaLocation="../../../../../vendor/magento/mtf/Magento/Mtf/TestRunner/etc/testRunner.xsd">
+    <rule scope="testcase">
+        <allow>
+            <tag group="domain" value="PS" />
+        </allow>
+    </rule>
+</config>
diff --git a/dev/tests/functional/testsuites/Mtf/TestSuite/InjectableTests/end_to_end_ce.xml b/dev/tests/functional/testsuites/Magento/Mtf/TestSuite/InjectableTests/end_to_end_ce.xml
similarity index 75%
rename from dev/tests/functional/testsuites/Mtf/TestSuite/InjectableTests/end_to_end_ce.xml
rename to dev/tests/functional/testsuites/Magento/Mtf/TestSuite/InjectableTests/end_to_end_ce.xml
index 9c6e618deb43867996c6f0dd4fab61f23942a58e..9c14458282a1dd939155541dbbe6de8dcc5fcc6b 100644
--- a/dev/tests/functional/testsuites/Mtf/TestSuite/InjectableTests/end_to_end_ce.xml
+++ b/dev/tests/functional/testsuites/Magento/Mtf/TestSuite/InjectableTests/end_to_end_ce.xml
@@ -6,7 +6,7 @@
  */
 -->
 <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-        xsi:noNamespaceSchemaLocation="../../../../vendor/magento/mtf/Mtf/TestRunner/etc/testRunner.xsd">
+        xsi:noNamespaceSchemaLocation="../../../../../vendor/magento/mtf/Magento/Mtf/TestRunner/etc/testRunner.xsd">
     <rule scope="testsuite">
         <allow>
             <!--Product search-->
@@ -33,17 +33,18 @@
             <class value="Magento\Catalog\Test\TestCase\Product\CrosssellTest" />
             <class value="Magento\Catalog\Test\TestCase\Product\RelatedProductTest" />
             <!--Url rewrites-->
-            <class value="Magento\UrlRewrite\Test\TestCase\ProductTest" />
-            <class value="Magento\UrlRewrite\Test\TestCase\CategoryTest" />
+            <class value="Magento\UrlRewrite\Test\TestCase\CreateProductUrlRewriteEntityTest" />
+            <class value="Magento\UrlRewrite\Test\TestCase\CreateCategoryRewriteEntityTest" />
             <!--Customer-->
             <class value="Magento\Customer\Test\TestCase\BackendCustomerCreateTest" />
-            <class value="Magento\Customer\Test\TestCase\CreateOnFrontendTest" />
+            <class value="Magento\Customer\Test\TestCase\RegisterCustomerFrontendEntityTest" />
+            <class value="Magento\Customer\Test\TestCase\UpdateCustomerFrontendEntity" />
             <!--Review-->
-            <class value="Magento\Review\Test\TestCase\ReviewTest" />
+            <class value="Magento\Review\Test\TestCase\CreateProductReviewFrontendEntityTest" />
             <!--Tax-->
-            <class value="Magento\Tax\Test\TestCase\TaxRuleTest" />
+            <class value="Magento\Tax\Test\TestCase\CreateTaxRuleEntityTest" />
             <!--Assign products to a category-->
-            <class value="Magento\Catalog\Test\TestCase\Category\AssignProductTest" />
+            <class value="Magento\Catalog\Test\TestCase\Category\CreateCategoryEntityTest" />
         </allow>
     </rule>
     <rule scope="variation">
diff --git a/dev/tests/functional/testsuites/Mtf/TestSuite/InjectableTests/installation.xml b/dev/tests/functional/testsuites/Magento/Mtf/TestSuite/InjectableTests/installation.xml
similarity index 73%
rename from dev/tests/functional/testsuites/Mtf/TestSuite/InjectableTests/installation.xml
rename to dev/tests/functional/testsuites/Magento/Mtf/TestSuite/InjectableTests/installation.xml
index e90f7639de25cc68291fb5feb211819d650916a1..262d254fe4c8c436d56c9f215572b72361b168b2 100644
--- a/dev/tests/functional/testsuites/Mtf/TestSuite/InjectableTests/installation.xml
+++ b/dev/tests/functional/testsuites/Magento/Mtf/TestSuite/InjectableTests/installation.xml
@@ -6,7 +6,7 @@
  */
 -->
 <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-        xsi:noNamespaceSchemaLocation="../../../../vendor/magento/mtf/Mtf/TestRunner/etc/testRunner.xsd">
+        xsi:noNamespaceSchemaLocation="../../../../../vendor/magento/mtf/Magento/Mtf/TestRunner/etc/testRunner.xsd">
     <rule scope="testsuite">
         <allow>
             <module value="Magento_Install"/>
diff --git a/dev/tests/functional/testsuites/Magento/Mtf/TestSuite/InjectableTests/mvp.xml b/dev/tests/functional/testsuites/Magento/Mtf/TestSuite/InjectableTests/mvp.xml
new file mode 100644
index 0000000000000000000000000000000000000000..220478d47ef3447ad74a43957fe76201863881c8
--- /dev/null
+++ b/dev/tests/functional/testsuites/Magento/Mtf/TestSuite/InjectableTests/mvp.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0"?>
+<!--
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+-->
+<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+        xsi:noNamespaceSchemaLocation="../../../../../vendor/magento/mtf/Magento/Mtf/TestRunner/etc/testRunner.xsd">
+    <rule scope="testcase">
+        <allow>
+            <tag group="mvp" value="yes" />
+        </allow>
+    </rule>
+</config>
diff --git a/dev/tests/functional/utils/bootstrap.php b/dev/tests/functional/utils/bootstrap.php
index 2910140e5dabf55153080ece4e8aea618af84c20..b2a8e0792a011d57cbf2873ad65c63e32f3a8144 100644
--- a/dev/tests/functional/utils/bootstrap.php
+++ b/dev/tests/functional/utils/bootstrap.php
@@ -14,6 +14,5 @@ $appRoot = dirname(dirname(dirname(dirname(__DIR__))));
 require $appRoot . '/app/bootstrap.php';
 require __DIR__ . '/../vendor/autoload.php';
 
-$objectManagerFactory = \Magento\Framework\App\Bootstrap::createObjectManagerFactory(BP, $_SERVER);
-$objectManager = $objectManagerFactory->create($_SERVER);
-\Mtf\ObjectManagerFactory::configure($objectManager);
+$objectManager = \Magento\Mtf\ObjectManagerFactory::getObjectManager();
+\Magento\Mtf\ObjectManagerFactory::configure($objectManager);
diff --git a/dev/tests/functional/utils/generate.php b/dev/tests/functional/utils/generate.php
index 2e63dcb82aad8c2a041aeb60073b34c56637a936..7aa9b91f0f93971fde2dad50802e15c9c45248f3 100644
--- a/dev/tests/functional/utils/generate.php
+++ b/dev/tests/functional/utils/generate.php
@@ -5,13 +5,13 @@
  */
 require_once dirname(__FILE__) . '/' . 'bootstrap.php';
 
-$objectManager->create('Mtf\Util\Generate\TestCase')->launch();
-$objectManager->create('Mtf\Util\Generate\Page')->launch();
-$objectManager->create('Mtf\Util\Generate\Fixture')->launch();
-$objectManager->create('Mtf\Util\Generate\Constraint')->launch();
-$objectManager->create('Mtf\Util\Generate\Handler')->launch();
+$objectManager->create('Magento\Mtf\Util\Generate\TestCase')->launch();
+$objectManager->create('Magento\Mtf\Util\Generate\Page')->launch();
+$objectManager->create('Magento\Mtf\Util\Generate\Fixture')->launch();
+$objectManager->create('Magento\Mtf\Util\Generate\Constraint')->launch();
+$objectManager->create('Magento\Mtf\Util\Generate\Handler')->launch();
 
 $objectManager->get('Magento\Framework\App\State')->setAreaCode('frontend');
-$objectManager->create('Mtf\Util\Generate\Repository')->launch();
+$objectManager->create('Magento\Mtf\Util\Generate\Repository')->launch();
 
-\Mtf\Util\Generate\GenerateResult::displayResults();
+\Magento\Mtf\Util\Generate\GenerateResult::displayResults();
diff --git a/dev/tests/functional/utils/generate/constraint.php b/dev/tests/functional/utils/generate/constraint.php
index 70b6d73d413e0c3959b0aca031c82926dc9f7ca6..5dfd019f6c17046591a153cb136e0245dac581a3 100644
--- a/dev/tests/functional/utils/generate/constraint.php
+++ b/dev/tests/functional/utils/generate/constraint.php
@@ -5,5 +5,5 @@
  */
 require_once dirname(__DIR__) . '/' . 'bootstrap.php';
 
-$objectManager->create('Mtf\Util\Generate\Constraint')->launch();
-\Mtf\Util\Generate\GenerateResult::displayResults();
+$objectManager->create('Magento\Mtf\Util\Generate\Constraint')->launch();
+\Magento\Mtf\Util\Generate\GenerateResult::displayResults();
diff --git a/dev/tests/functional/utils/generate/factory.php b/dev/tests/functional/utils/generate/factory.php
index e2bfb6ce2df5c209d3c3ae8022558eb26362233f..05c38495a2d7b9f4cac396ffab2f68bfa1ee7e2b 100644
--- a/dev/tests/functional/utils/generate/factory.php
+++ b/dev/tests/functional/utils/generate/factory.php
@@ -15,7 +15,7 @@ require MTF_BP . '/vendor/autoload.php';
 $bootstrap = \Magento\Framework\App\Bootstrap::create(BP, $_SERVER);
 
 $om = $bootstrap->getObjectManager();
-/** @var \Mtf\Util\Generate\Factory $generator */
-$generator = $om->create('Mtf\Util\Generate\Factory');
+/** @var \Magento\Mtf\Util\Generate\Factory $generator */
+$generator = $om->create('Magento\Mtf\Util\Generate\Factory');
 $generator->launch();
-\Mtf\Util\Generate\GenerateResult::displayResults();
+\Magento\Mtf\Util\Generate\GenerateResult::displayResults();
diff --git a/dev/tests/functional/utils/generate/fixture.php b/dev/tests/functional/utils/generate/fixture.php
index 9d1581309cde7409233aa66c73b7b17e55468199..d2e13c07ba65505ed067bba4faf0e8b3516703dc 100644
--- a/dev/tests/functional/utils/generate/fixture.php
+++ b/dev/tests/functional/utils/generate/fixture.php
@@ -5,5 +5,5 @@
  */
 require_once dirname(__DIR__) . '/' . 'bootstrap.php';
 
-$objectManager->create('Mtf\Util\Generate\Fixture')->launch();
-\Mtf\Util\Generate\GenerateResult::displayResults();
+$objectManager->create('Magento\Mtf\Util\Generate\Fixture')->launch();
+\Magento\Mtf\Util\Generate\GenerateResult::displayResults();
diff --git a/dev/tests/functional/utils/generate/handler.php b/dev/tests/functional/utils/generate/handler.php
index 147aae10f99b04d0c0033f7844bffa48f1655d9c..2e1b1bc7ef104abc9f6c02a2f6d3e5ead97bd487 100644
--- a/dev/tests/functional/utils/generate/handler.php
+++ b/dev/tests/functional/utils/generate/handler.php
@@ -5,5 +5,5 @@
  */
 require_once dirname(__DIR__) . '/' . 'bootstrap.php';
 
-$objectManager->create('Mtf\Util\Generate\Handler')->launch();
-\Mtf\Util\Generate\GenerateResult::displayResults();
+$objectManager->create('Magento\Mtf\Util\Generate\Handler')->launch();
+\Magento\Mtf\Util\Generate\GenerateResult::displayResults();
diff --git a/dev/tests/functional/utils/generate/page.php b/dev/tests/functional/utils/generate/page.php
index c4cc602d289fe793d1dd11d82776b1e6a5010ee1..f15e030c24c4336ca032772a599839efcf234068 100644
--- a/dev/tests/functional/utils/generate/page.php
+++ b/dev/tests/functional/utils/generate/page.php
@@ -4,5 +4,5 @@
  * See COPYING.txt for license details.
  */
 require_once dirname(__DIR__) . '/' . 'bootstrap.php';
-$objectManager->create('Mtf\Util\Generate\Page')->launch();
-\Mtf\Util\Generate\GenerateResult::displayResults();
+$objectManager->create('Magento\Mtf\Util\Generate\Page')->launch();
+\Magento\Mtf\Util\Generate\GenerateResult::displayResults();
diff --git a/dev/tests/functional/utils/generate/repository.php b/dev/tests/functional/utils/generate/repository.php
index 0179cab18c43ec616849e5114656e87cb00c3c01..5355cf45e759663ee3667e38182336f62c9bc524 100644
--- a/dev/tests/functional/utils/generate/repository.php
+++ b/dev/tests/functional/utils/generate/repository.php
@@ -6,5 +6,5 @@
 require_once dirname(__DIR__) . '/' . 'bootstrap.php';
 
 $objectManager->get('Magento\Framework\App\State')->setAreaCode('frontend');
-$objectManager->create('Mtf\Util\Generate\Repository')->launch();
-\Mtf\Util\Generate\GenerateResult::displayResults();
+$objectManager->create('Magento\Mtf\Util\Generate\Repository')->launch();
+\Magento\Mtf\Util\Generate\GenerateResult::displayResults();
diff --git a/dev/tests/integration/framework/Magento/TestFramework/Db/Adapter/Mysql.php b/dev/tests/integration/framework/Magento/TestFramework/Db/Adapter/Mysql.php
index 2309e3dbfa7ea26d396e4cdf55eb69e1ae592558..ec9723704da7ee667efaa7a61ce662caf7d49b04 100644
--- a/dev/tests/integration/framework/Magento/TestFramework/Db/Adapter/Mysql.php
+++ b/dev/tests/integration/framework/Magento/TestFramework/Db/Adapter/Mysql.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * See \Magento\TestFramework\Db\Adapter\TransactionInterface
  */
diff --git a/dev/tests/integration/framework/Magento/TestFramework/Db/Mysql.php b/dev/tests/integration/framework/Magento/TestFramework/Db/Mysql.php
index fd1f83b2b043f93b64aed1232fd68c5e3b808f1c..f823efc6e1b0964f0950d159e59e72e155a421d0 100644
--- a/dev/tests/integration/framework/Magento/TestFramework/Db/Mysql.php
+++ b/dev/tests/integration/framework/Magento/TestFramework/Db/Mysql.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * MySQL platform database handler
  */
diff --git a/dev/tests/integration/testsuite/Magento/Backend/Block/System/Config/FormStub.php b/dev/tests/integration/testsuite/Magento/Backend/Block/System/Config/FormStub.php
index cbb8303fc6d900d155062fa7d5cb60f1ac31f021..d8b79308b4a2ddd056ec101c48f668d9d96f7c78 100644
--- a/dev/tests/integration/testsuite/Magento/Backend/Block/System/Config/FormStub.php
+++ b/dev/tests/integration/testsuite/Magento/Backend/Block/System/Config/FormStub.php
@@ -9,6 +9,9 @@
  */
 namespace Magento\Backend\Block\System\Config;
 
+/**
+ * @SuppressWarnings(PHPMD.DepthOfInheritance)
+ */
 class FormStub extends \Magento\Backend\Block\System\Config\Form
 {
     /**
diff --git a/dev/tests/integration/testsuite/Magento/Backend/Block/Widget/Grid/MassactionTest.php b/dev/tests/integration/testsuite/Magento/Backend/Block/Widget/Grid/MassactionTest.php
index e39928d690044be7bbf8276afb553b185ddba16d..713b6e42e32ab4462db340588139aebe52b43b1c 100644
--- a/dev/tests/integration/testsuite/Magento/Backend/Block/Widget/Grid/MassactionTest.php
+++ b/dev/tests/integration/testsuite/Magento/Backend/Block/Widget/Grid/MassactionTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Backend\Block\Widget\Grid;
 
 use Magento\Framework\App\Bootstrap;
diff --git a/dev/tests/integration/testsuite/Magento/Backend/Controller/Adminhtml/AuthTest.php b/dev/tests/integration/testsuite/Magento/Backend/Controller/Adminhtml/AuthTest.php
index 0df4c47d2ead30c5e98837e403b029efe281b7a1..a7af061289725ff7dcb29a1827bb32886f69b314 100644
--- a/dev/tests/integration/testsuite/Magento/Backend/Controller/Adminhtml/AuthTest.php
+++ b/dev/tests/integration/testsuite/Magento/Backend/Controller/Adminhtml/AuthTest.php
@@ -169,7 +169,7 @@ class AuthTest extends \Magento\TestFramework\TestCase\AbstractController
         $homeUrl = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get(
             'Magento\Backend\Helper\Data'
         )->getHomePageUrl();
-        $expected = '<script type="text/javascript">parent.window.location =';
+        $expected = '<script>parent.window.location =';
         $this->assertStringStartsWith($expected, $this->getResponse()->getBody());
         $this->assertContains($homeUrl, $this->getResponse()->getBody());
         $this->_logout();
diff --git a/dev/tests/integration/testsuite/Magento/Backend/Controller/Adminhtml/System/ConfigTest.php b/dev/tests/integration/testsuite/Magento/Backend/Controller/Adminhtml/System/ConfigTest.php
index 3aeb7044dc2679ded414c5d34f80a7b599bc64ed..883b43e6ef7c9797c9748ff6784ffc7054375f6c 100644
--- a/dev/tests/integration/testsuite/Magento/Backend/Controller/Adminhtml/System/ConfigTest.php
+++ b/dev/tests/integration/testsuite/Magento/Backend/Controller/Adminhtml/System/ConfigTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Backend\Controller\Adminhtml\System;
 
 use Magento\TestFramework\Helper\Bootstrap;
diff --git a/dev/tests/integration/testsuite/Magento/Catalog/Controller/Adminhtml/Product/NewActionTest.php b/dev/tests/integration/testsuite/Magento/Catalog/Controller/Adminhtml/Product/NewActionTest.php
index 0b6b0aac88e7d8555c508dc91b6eee985dcc1c80..4c5465fa32be618221cd3a835b297436a03265bb 100644
--- a/dev/tests/integration/testsuite/Magento/Catalog/Controller/Adminhtml/Product/NewActionTest.php
+++ b/dev/tests/integration/testsuite/Magento/Catalog/Controller/Adminhtml/Product/NewActionTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Controller\Adminhtml\Product;
 
 /**
diff --git a/dev/tests/integration/testsuite/Magento/Catalog/Controller/Product/CompareTest.php b/dev/tests/integration/testsuite/Magento/Catalog/Controller/Product/CompareTest.php
index ded35b42fbbf3ce928ddc2ed427f8277f3436769..e91f71a3dbd3ac9d75ae3bbc81c8fee7d68f1705 100644
--- a/dev/tests/integration/testsuite/Magento/Catalog/Controller/Product/CompareTest.php
+++ b/dev/tests/integration/testsuite/Magento/Catalog/Controller/Product/CompareTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Controller\Product;
 
 /**
diff --git a/dev/tests/integration/testsuite/Magento/Catalog/Model/DesignTest.php b/dev/tests/integration/testsuite/Magento/Catalog/Model/DesignTest.php
index df9c80be8733eb24d75e3d10ccdff9737054bf23..e3ad6077d6ec32ef24428df9c09d988a4a09592f 100644
--- a/dev/tests/integration/testsuite/Magento/Catalog/Model/DesignTest.php
+++ b/dev/tests/integration/testsuite/Magento/Catalog/Model/DesignTest.php
@@ -58,7 +58,6 @@ class DesignTest extends \PHPUnit_Framework_TestCase
             'theme_code' => 'theme',
             'package_code' => 'package',
             'theme_path' => 'package/theme',
-            'theme_version' => '0.1.0',
             'parent_theme' => null,
             'is_featured' => true,
             'preview_image' => '',
diff --git a/dev/tests/integration/testsuite/Magento/Catalog/Model/Product/ImageTest.php b/dev/tests/integration/testsuite/Magento/Catalog/Model/Product/ImageTest.php
index 9a69bfb74fa9ed3c5231752a53f6d2fe80443da1..6535205bf7952692884141653d20e29dc43763ea 100644
--- a/dev/tests/integration/testsuite/Magento/Catalog/Model/Product/ImageTest.php
+++ b/dev/tests/integration/testsuite/Magento/Catalog/Model/Product/ImageTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Model\Product;
 
 /**
diff --git a/dev/tests/integration/testsuite/Magento/Catalog/Model/Resource/Product/OptionTest.php b/dev/tests/integration/testsuite/Magento/Catalog/Model/Resource/Product/OptionTest.php
index 9d4adc03375f4a5c4f69d48cc9b03374388ff405..766af41eb77bb545f40bf9eb84c4d3ac0574c7b8 100644
--- a/dev/tests/integration/testsuite/Magento/Catalog/Model/Resource/Product/OptionTest.php
+++ b/dev/tests/integration/testsuite/Magento/Catalog/Model/Resource/Product/OptionTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Model\Resource\Product;
 
 class OptionTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/integration/testsuite/Magento/CatalogImportExport/Model/Import/ProductTest.php b/dev/tests/integration/testsuite/Magento/CatalogImportExport/Model/Import/ProductTest.php
index 0d14bedc5e9928418f3150ebf50830cb33d63561..49b3901576e4a72fa22032059564beb5a0ad0c71 100644
--- a/dev/tests/integration/testsuite/Magento/CatalogImportExport/Model/Import/ProductTest.php
+++ b/dev/tests/integration/testsuite/Magento/CatalogImportExport/Model/Import/ProductTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Test class for \Magento\CatalogImportExport\Model\Import\Product
  *
@@ -36,6 +38,11 @@ class ProductTest extends \PHPUnit_Framework_TestCase
      */
     protected $_uploaderFactory;
 
+    /**
+     * @var \Magento\CatalogInventory\Model\Spi\StockStateProviderInterface|\PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $_stockStateProvider;
+
     protected function setUp()
     {
         $this->_uploaderFactory = $this->getMock(
@@ -45,9 +52,20 @@ class ProductTest extends \PHPUnit_Framework_TestCase
             '',
             false
         );
+
+        $this->_stockStateProvider = $this->getMock(
+            'Magento\CatalogInventory\Model\StockStateProvider',
+            ['verifyStock'],
+            [],
+            '',
+            false
+        );
         $this->_model = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create(
             'Magento\CatalogImportExport\Model\Import\Product',
-            ['uploaderFactory' => $this->_uploaderFactory]
+            [
+                'uploaderFactory' => $this->_uploaderFactory,
+                'stockStateProvider' => $this->_stockStateProvider
+            ]
         );
     }
 
@@ -169,6 +187,34 @@ class ProductTest extends \PHPUnit_Framework_TestCase
         unset($stockItems, $stockItem);
     }
 
+    /**
+     * Test if stock state properly changed after import
+     *
+     * @magentoDataFixture Magento/Catalog/_files/multiple_products.php
+     */
+    public function testStockState()
+    {
+        $filesystem = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()
+            ->create('Magento\Framework\Filesystem');
+        $directory = $filesystem->getDirectoryWrite(DirectoryList::ROOT);
+        $source = new \Magento\ImportExport\Model\Import\Source\Csv(
+            __DIR__ . '/_files/products_to_import_with_qty.csv',
+            $directory
+        );
+
+        $this->assertTrue(
+            $this->_model
+                ->setParameters(
+                    ['behavior' => \Magento\ImportExport\Model\Import::BEHAVIOR_REPLACE, 'entity' => 'catalog_product']
+                )
+                ->setSource($source)
+                ->isDataValid()
+        );
+
+        $this->_stockStateProvider->expects($this->atLeastOnce())->method('verifyStock')->willReturn(true);
+        $this->_model->importData();
+    }
+
     /**
      * Tests adding of custom options with existing and new product
      *
@@ -182,6 +228,8 @@ class ProductTest extends \PHPUnit_Framework_TestCase
      */
     public function testSaveCustomOptions($behavior, $importFile, $sku)
     {
+        $this->_stockStateProvider->method('verifyStock')->willReturn(true);
+
         // import data from CSV file
         $pathToFile = __DIR__ . '/_files/' . $importFile;
 
@@ -242,6 +290,8 @@ class ProductTest extends \PHPUnit_Framework_TestCase
      */
     public function testSaveDatetimeAttribute()
     {
+        $this->_stockStateProvider->method('verifyStock')->willReturn(true);
+
         $existingProductIds = [10, 11, 12];
         $productsBeforeImport = [];
         foreach ($existingProductIds as $productId) {
@@ -654,6 +704,8 @@ class ProductTest extends \PHPUnit_Framework_TestCase
      */
     public function testInvalidSkuLink()
     {
+        $this->_stockStateProvider->method('verifyStock')->willReturn(true);
+
         // import data from CSV file
         $pathToFile = __DIR__ . '/_files/products_to_import_invalid_attribute_set.csv';
         $filesystem = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create(
diff --git a/dev/tests/integration/testsuite/Magento/CatalogImportExport/Model/Import/_files/products_to_import_with_qty.csv b/dev/tests/integration/testsuite/Magento/CatalogImportExport/Model/Import/_files/products_to_import_with_qty.csv
new file mode 100644
index 0000000000000000000000000000000000000000..1cc313c8429188c845763d38ac0ac0dfcaef1b0a
--- /dev/null
+++ b/dev/tests/integration/testsuite/Magento/CatalogImportExport/Model/Import/_files/products_to_import_with_qty.csv
@@ -0,0 +1,2 @@
+sku,_store,name,price,qty,_type,_attribute_set,manage_stock
+simple1,,"simple 1",25,0.0000,simple,Default,1
diff --git a/dev/tests/integration/testsuite/Magento/CatalogInventory/Block/Adminhtml/Form/Field/CustomergroupTest.php b/dev/tests/integration/testsuite/Magento/CatalogInventory/Block/Adminhtml/Form/Field/CustomergroupTest.php
index 88041c87154c4a53dd16000cae357f7be8adf325..43e21347809a56f500f6c84c918cd5d100cbd077 100644
--- a/dev/tests/integration/testsuite/Magento/CatalogInventory/Block/Adminhtml/Form/Field/CustomergroupTest.php
+++ b/dev/tests/integration/testsuite/Magento/CatalogInventory/Block/Adminhtml/Form/Field/CustomergroupTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\CatalogInventory\Block\Adminhtml\Form\Field;
 
 class CustomergroupTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/integration/testsuite/Magento/CatalogSearch/Model/Layer/Filter/CategoryTest.php b/dev/tests/integration/testsuite/Magento/CatalogSearch/Model/Layer/Filter/CategoryTest.php
index 1abea6b412188475305c07edf78f5e57fbeb2708..127025defec77eeb8bd12e898cd7fec4e24a2d7d 100644
--- a/dev/tests/integration/testsuite/Magento/CatalogSearch/Model/Layer/Filter/CategoryTest.php
+++ b/dev/tests/integration/testsuite/Magento/CatalogSearch/Model/Layer/Filter/CategoryTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\CatalogSearch\Model\Layer\Filter;
 
 /**
diff --git a/dev/tests/integration/testsuite/Magento/CatalogUrlRewrite/Model/CategoryUrlRewriteGeneratorTest.php b/dev/tests/integration/testsuite/Magento/CatalogUrlRewrite/Model/CategoryUrlRewriteGeneratorTest.php
index 9cd202f4c073b2f099354678240fb9f355872af6..9b3387532ab4dc6a1d31a59c03aa62fe4b1413b0 100644
--- a/dev/tests/integration/testsuite/Magento/CatalogUrlRewrite/Model/CategoryUrlRewriteGeneratorTest.php
+++ b/dev/tests/integration/testsuite/Magento/CatalogUrlRewrite/Model/CategoryUrlRewriteGeneratorTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\CatalogUrlRewrite\Model;
 
 use Magento\UrlRewrite\Service\V1\Data\UrlRewrite;
diff --git a/dev/tests/integration/testsuite/Magento/Checkout/Block/Cart/Item/RendererTest.php b/dev/tests/integration/testsuite/Magento/Checkout/Block/Cart/Item/RendererTest.php
index 648e711dce43f29599b76381ef9ae7d6a33c6af3..017943a3a4fc5d6348415577a6139bc26d6c561e 100644
--- a/dev/tests/integration/testsuite/Magento/Checkout/Block/Cart/Item/RendererTest.php
+++ b/dev/tests/integration/testsuite/Magento/Checkout/Block/Cart/Item/RendererTest.php
@@ -57,15 +57,15 @@ class RendererTest extends \PHPUnit_Framework_TestCase
     }
 
     /**
-     * Gets \Magento\Sales\Model\Quote\Item from \Magento\Sales\Model\Quote by product id
+     * Gets \Magento\Quote\Model\Quote\Item from \Magento\Quote\Model\Quote by product id
      *
-     * @param \Magento\Sales\Model\Quote $quote
+     * @param \Magento\Quote\Model\Quote $quote
      * @param $productId
-     * @return \Magento\Sales\Model\Quote\Item|null
+     * @return \Magento\Quote\Model\Quote\Item|null
      */
     private function _getQuoteItemIdByProductId($quote, $productId)
     {
-        /** @var $quoteItems \Magento\Sales\Model\Quote\Item[] */
+        /** @var $quoteItems \Magento\Quote\Model\Quote\Item[] */
         $quoteItems = $quote->getAllItems();
         foreach ($quoteItems as $quoteItem) {
             if ($productId == $quoteItem->getProductId()) {
diff --git a/dev/tests/integration/testsuite/Magento/Checkout/Block/Onepage/BillingTest.php b/dev/tests/integration/testsuite/Magento/Checkout/Block/Onepage/BillingTest.php
index b93f03c9834ef2fea0bd97dfa298df6f87ea81cc..61ed0f06a3859237771c0161e8195dc3f5772248 100644
--- a/dev/tests/integration/testsuite/Magento/Checkout/Block/Onepage/BillingTest.php
+++ b/dev/tests/integration/testsuite/Magento/Checkout/Block/Onepage/BillingTest.php
@@ -19,7 +19,7 @@ class BillingTest extends \PHPUnit_Framework_TestCase
     /** @var \Magento\Customer\Api\AddressRepositoryInterface */
     protected $_addressRepository;
 
-    /** @var \Magento\Sales\Model\Quote\AddressFactory */
+    /** @var \Magento\Quote\Model\Quote\AddressFactory */
     protected $_quoteAddressFactory;
 
     /** @var  \Magento\Customer\Api\Data\CustomerDataBuilder */
@@ -51,13 +51,13 @@ class BillingTest extends \PHPUnit_Framework_TestCase
         //fetch sample address
         $address = $this->_addressRepository->getById(self::FIXTURE_ADDRESS_ID);
 
-        /** @var \Magento\Sales\Model\Resource\Quote\Collection $quoteCollection */
-        $quoteCollection = $objectManager->get('Magento\Sales\Model\Resource\Quote\Collection');
-        /** @var $quote \Magento\Sales\Model\Quote */
+        /** @var \Magento\Quote\Model\Resource\Quote\Collection $quoteCollection */
+        $quoteCollection = $objectManager->get('Magento\Quote\Model\Resource\Quote\Collection');
+        /** @var $quote \Magento\Quote\Model\Quote */
         $quote = $quoteCollection->getLastItem();
         $quote->setCustomer($customer);
-        /** @var $quoteAddressFactory \Magento\Sales\Model\Quote\AddressFactory */
-        $this->_quoteAddressFactory = $objectManager->get('Magento\Sales\Model\Quote\AddressFactory');
+        /** @var $quoteAddressFactory \Magento\Quote\Model\Quote\AddressFactory */
+        $this->_quoteAddressFactory = $objectManager->get('Magento\Quote\Model\Quote\AddressFactory');
         $billingAddress = $this->_quoteAddressFactory->create()->importCustomerAddressData($address);
         $quote->setBillingAddress($billingAddress);
         $quote->save();
@@ -123,7 +123,7 @@ class BillingTest extends \PHPUnit_Framework_TestCase
      */
     protected function _updateQuoteCustomerName()
     {
-        /** @var $emptyAddress \Magento\Sales\Model\Quote\Address */
+        /** @var $emptyAddress \Magento\Quote\Model\Quote\Address */
         $emptyAddress = $this->_quoteAddressFactory->create();
         $emptyAddress->setFirstname(null);
         $emptyAddress->setLastname(null);
diff --git a/dev/tests/integration/testsuite/Magento/Checkout/Controller/CartTest.php b/dev/tests/integration/testsuite/Magento/Checkout/Controller/CartTest.php
index 66724744b3e9d399db4bed460ab1150c275ec0d3..5cc66221646e2a1ae691c603077b5be978c11379 100644
--- a/dev/tests/integration/testsuite/Magento/Checkout/Controller/CartTest.php
+++ b/dev/tests/integration/testsuite/Magento/Checkout/Controller/CartTest.php
@@ -176,23 +176,23 @@ class CartTest extends \Magento\TestFramework\TestCase\AbstractController
         $this->dispatch('checkout/cart/updatePost');
 
         /** Check results */
-        /** @var \Magento\Sales\Model\Quote $quote */
-        $quote = $this->_objectManager->create('Magento\Sales\Model\Quote');
+        /** @var \Magento\Quote\Model\Quote $quote */
+        $quote = $this->_objectManager->create('Magento\Quote\Model\Quote');
         $quote->load($checkoutSession->getQuote()->getId());
         $quoteItem = $this->_getQuoteItemIdByProductId($quote, 1);
         $this->assertEquals($updatedQuantity, $quoteItem->getQty(), "Invalid quote item quantity");
     }
 
     /**
-     * Gets \Magento\Sales\Model\Quote\Item from \Magento\Sales\Model\Quote by product id
+     * Gets \Magento\Quote\Model\Quote\Item from \Magento\Quote\Model\Quote by product id
      *
-     * @param \Magento\Sales\Model\Quote $quote
+     * @param \Magento\Quote\Model\Quote $quote
      * @param $productId
-     * @return \Magento\Sales\Model\Quote\Item|null
+     * @return \Magento\Quote\Model\Quote\Item|null
      */
     private function _getQuoteItemIdByProductId($quote, $productId)
     {
-        /** @var $quoteItems \Magento\Sales\Model\Quote\Item[] */
+        /** @var $quoteItems \Magento\Quote\Model\Quote\Item[] */
         $quoteItems = $quote->getAllItems();
         foreach ($quoteItems as $quoteItem) {
             if ($productId == $quoteItem->getProductId()) {
diff --git a/dev/tests/integration/testsuite/Magento/Checkout/Controller/OnepageTest.php b/dev/tests/integration/testsuite/Magento/Checkout/Controller/OnepageTest.php
index f8076a15e7e9a9394d17e1b548fc79efe22add7f..03ca572e662003c0c927be19a328afa2dfa91e21 100644
--- a/dev/tests/integration/testsuite/Magento/Checkout/Controller/OnepageTest.php
+++ b/dev/tests/integration/testsuite/Magento/Checkout/Controller/OnepageTest.php
@@ -13,7 +13,7 @@ class OnepageTest extends \Magento\TestFramework\TestCase\AbstractController
     protected function setUp()
     {
         parent::setUp();
-        $quote = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create('Magento\Sales\Model\Quote');
+        $quote = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create('Magento\Quote\Model\Quote');
         $quote->load('test01', 'reserved_order_id');
         \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get(
             'Magento\Checkout\Model\Session'
diff --git a/dev/tests/integration/testsuite/Magento/Checkout/Model/SessionTest.php b/dev/tests/integration/testsuite/Magento/Checkout/Model/SessionTest.php
index 48a524d1f03c10ce08a905fcef6cc2df9de79d34..2034ee8c7da40b0a6812972494b7a6969c61201f 100644
--- a/dev/tests/integration/testsuite/Magento/Checkout/Model/SessionTest.php
+++ b/dev/tests/integration/testsuite/Magento/Checkout/Model/SessionTest.php
@@ -106,7 +106,7 @@ class SessionTest extends \PHPUnit_Framework_TestCase
     /**
      * Ensure that quote has customer data specified in customer fixture.
      *
-     * @param \Magento\Sales\Model\Quote $quote
+     * @param \Magento\Quote\Model\Quote $quote
      */
     protected function _validateCustomerDataInQuote($quote)
     {
diff --git a/dev/tests/integration/testsuite/Magento/Checkout/Model/Type/OnepageTest.php b/dev/tests/integration/testsuite/Magento/Checkout/Model/Type/OnepageTest.php
index bb49f5c4c64ac06215bf8a2190881c1170dc35e0..fdd5a18ba45e7a0e66059cc399402782b91c27b1 100644
--- a/dev/tests/integration/testsuite/Magento/Checkout/Model/Type/OnepageTest.php
+++ b/dev/tests/integration/testsuite/Magento/Checkout/Model/Type/OnepageTest.php
@@ -16,16 +16,16 @@ class OnepageTest extends \PHPUnit_Framework_TestCase
     /** @var \Magento\Checkout\Model\Type\Onepage */
     protected $_model;
 
-    /** @var \Magento\Sales\Model\Quote */
+    /** @var \Magento\Quote\Model\Quote */
     protected $_currentQuote;
 
     protected function setUp()
     {
         parent::setUp();
         $this->_model = Bootstrap::getObjectManager()->create('Magento\Checkout\Model\Type\Onepage');
-        /** @var \Magento\Sales\Model\Resource\Quote\Collection $quoteCollection */
-        $quoteCollection = Bootstrap::getObjectManager()->create('Magento\Sales\Model\Resource\Quote\Collection');
-        /** @var \Magento\Sales\Model\Quote $quote */
+        /** @var \Magento\Quote\Model\Resource\Quote\Collection $quoteCollection */
+        $quoteCollection = Bootstrap::getObjectManager()->create('Magento\Quote\Model\Resource\Quote\Collection');
+        /** @var \Magento\Quote\Model\Quote $quote */
         $this->_currentQuote = $quoteCollection->getLastItem();
         $this->_model->setQuote($this->_currentQuote);
     }
@@ -509,7 +509,7 @@ class OnepageTest extends \PHPUnit_Framework_TestCase
     }
 
     /**
-     * @return \Magento\Sales\Model\Quote
+     * @return \Magento\Quote\Model\Quote
      */
     protected function _getQuote()
     {
@@ -519,13 +519,13 @@ class OnepageTest extends \PHPUnit_Framework_TestCase
     /**
      * Prepare Quote
      *
-     * @param \Magento\Sales\Model\Quote $quote
+     * @param \Magento\Quote\Model\Quote $quote
      */
     protected function _prepareQuote($quote)
     {
-        /** @var $rate \Magento\Sales\Model\Quote\Address\Rate */
+        /** @var $rate \Magento\Quote\Model\Quote\Address\Rate */
         $rate = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create(
-            'Magento\Sales\Model\Quote\Address\Rate'
+            'Magento\Quote\Model\Quote\Address\Rate'
         );
         $rate->setCode('freeshipping_freeshipping');
         $rate->getPrice(1);
diff --git a/dev/tests/integration/testsuite/Magento/Checkout/_files/quote.php b/dev/tests/integration/testsuite/Magento/Checkout/_files/quote.php
index f86be98c55a90a280c92dea0bffc125159824d4d..edffb0085bd9068271d17494429b8f7c11f7eb7c 100644
--- a/dev/tests/integration/testsuite/Magento/Checkout/_files/quote.php
+++ b/dev/tests/integration/testsuite/Magento/Checkout/_files/quote.php
@@ -4,6 +4,6 @@
  * See COPYING.txt for license details.
  */
 
-$quote = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create('Magento\Sales\Model\Quote');
+$quote = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create('Magento\Quote\Model\Quote');
 $quote->setData(['store_id' => 1, 'is_active' => 0, 'is_multi_shipping' => 0]);
 $quote->save();
diff --git a/dev/tests/integration/testsuite/Magento/Checkout/_files/quote_with_address.php b/dev/tests/integration/testsuite/Magento/Checkout/_files/quote_with_address.php
index a8defd92d70348349ee438611fd67ec668baf979..aa5c958c66e1b982a4915629aebd23ae465300df 100644
--- a/dev/tests/integration/testsuite/Magento/Checkout/_files/quote_with_address.php
+++ b/dev/tests/integration/testsuite/Magento/Checkout/_files/quote_with_address.php
@@ -10,8 +10,8 @@ require __DIR__ . '/../../../Magento/Catalog/_files/products.php';
 
 $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager();
 
-/** @var \Magento\Sales\Model\Quote\Address $quoteShippingAddress */
-$quoteShippingAddress = $objectManager->create('Magento\Sales\Model\Quote\Address');
+/** @var \Magento\Quote\Model\Quote\Address $quoteShippingAddress */
+$quoteShippingAddress = $objectManager->create('Magento\Quote\Model\Quote\Address');
 
 /** @var \Magento\Customer\Api\AccountManagementInterface $accountManagement */
 $accountManagement = $objectManager->create('Magento\Customer\Api\AccountManagementInterface');
@@ -24,8 +24,8 @@ $customer = $customerRepository->getById(1);
 $addressRepository = $objectManager->create('Magento\Customer\Api\AddressRepositoryInterface');
 $quoteShippingAddress->importCustomerAddressData($addressRepository->getById(1));
 
-/** @var \Magento\Sales\Model\Quote $quote */
-$quote = $objectManager->create('Magento\Sales\Model\Quote');
+/** @var \Magento\Quote\Model\Quote $quote */
+$quote = $objectManager->create('Magento\Quote\Model\Quote');
 $quote->setStoreId(
     1
 )->setIsActive(
diff --git a/dev/tests/integration/testsuite/Magento/Checkout/_files/quote_with_address_saved_rollback.php b/dev/tests/integration/testsuite/Magento/Checkout/_files/quote_with_address_saved_rollback.php
index 9a3a7183b544fd2a156221133f9a174f475570b3..9bc73ec6d964fc69c7bdc78fa6a8fa15b83a0583 100644
--- a/dev/tests/integration/testsuite/Magento/Checkout/_files/quote_with_address_saved_rollback.php
+++ b/dev/tests/integration/testsuite/Magento/Checkout/_files/quote_with_address_saved_rollback.php
@@ -8,5 +8,5 @@
 
 /** @var $objectManager \Magento\TestFramework\ObjectManager */
 $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager();
-$quote = $objectManager->create('Magento\Sales\Model\Quote');
+$quote = $objectManager->create('Magento\Quote\Model\Quote');
 $quote->load('test_order_1', 'reserved_order_id')->delete();
diff --git a/dev/tests/integration/testsuite/Magento/Checkout/_files/quote_with_check_payment.php b/dev/tests/integration/testsuite/Magento/Checkout/_files/quote_with_check_payment.php
index 819e2b90fe4ac1dfe932ae5b2a0eb59739fb8502..355706e20824a14eea670c5cc3678c2cdf2ee9d0 100644
--- a/dev/tests/integration/testsuite/Magento/Checkout/_files/quote_with_check_payment.php
+++ b/dev/tests/integration/testsuite/Magento/Checkout/_files/quote_with_check_payment.php
@@ -5,10 +5,10 @@
  */
 
 require 'quote_with_address.php';
-/** @var \Magento\Sales\Model\Quote $quote */
+/** @var \Magento\Quote\Model\Quote $quote */
 
-/** @var $rate \Magento\Sales\Model\Quote\Address\Rate */
-$rate = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create('Magento\Sales\Model\Quote\Address\Rate');
+/** @var $rate \Magento\Quote\Model\Quote\Address\Rate */
+$rate = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create('Magento\Quote\Model\Quote\Address\Rate');
 $rate->setCode('freeshipping_freeshipping');
 $rate->getPrice(1);
 
@@ -18,7 +18,4 @@ $quote->getPayment()->setMethod('checkmo');
 
 $quote->collectTotals();
 $quote->save();
-
-$objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager();
-$quoteService = $objectManager->create('Magento\Sales\Model\Service\Quote', ['quote' => $quote]);
-$quoteService->getQuote()->getPayment()->setMethod('checkmo');
+$quote->getPayment()->setMethod('checkmo');
diff --git a/dev/tests/integration/testsuite/Magento/Checkout/_files/quote_with_coupon_saved_rollback.php b/dev/tests/integration/testsuite/Magento/Checkout/_files/quote_with_coupon_saved_rollback.php
index 7fe70e2c526406ce44045eaaee6d0d0f92db1e3d..5c304e90d5ef77ffd442cb4932b8d95f5f5b51c4 100644
--- a/dev/tests/integration/testsuite/Magento/Checkout/_files/quote_with_coupon_saved_rollback.php
+++ b/dev/tests/integration/testsuite/Magento/Checkout/_files/quote_with_coupon_saved_rollback.php
@@ -8,5 +8,5 @@
 
 /** @var $objectManager \Magento\TestFramework\ObjectManager */
 $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager();
-$quote = $objectManager->create('Magento\Sales\Model\Quote');
+$quote = $objectManager->create('Magento\Quote\Model\Quote');
 $quote->load('test_order_1', 'reserved_order_id')->delete();
diff --git a/dev/tests/integration/testsuite/Magento/Checkout/_files/quote_with_items_saved_rollback.php b/dev/tests/integration/testsuite/Magento/Checkout/_files/quote_with_items_saved_rollback.php
index 0fbfc2a19943f6a0d28def9a975e107879e6c682..5c40137da341ccf8fdc6d59e110cd0cbd8140276 100644
--- a/dev/tests/integration/testsuite/Magento/Checkout/_files/quote_with_items_saved_rollback.php
+++ b/dev/tests/integration/testsuite/Magento/Checkout/_files/quote_with_items_saved_rollback.php
@@ -7,7 +7,7 @@ $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager();
 $registry = $objectManager->get('Magento\Framework\Registry');
 $registry->unregister('isSecureArea');
 $registry->register('isSecureArea', true);
-$quote = $objectManager->create('Magento\Sales\Model\Quote');
+$quote = $objectManager->create('Magento\Quote\Model\Quote');
 $quote->load('test_order_item_with_items', 'reserved_order_id');
 $product = $objectManager->create('Magento\Catalog\Model\Product');
 foreach ($quote->getAllItems() as $item) {
diff --git a/dev/tests/integration/testsuite/Magento/Checkout/_files/quote_with_payment_saved_rollback.php b/dev/tests/integration/testsuite/Magento/Checkout/_files/quote_with_payment_saved_rollback.php
index deb505d47b83eeacc1845b613f9c111ac0d79737..c828e4acf0c793a28d33237f0c31a815ca3b8095 100644
--- a/dev/tests/integration/testsuite/Magento/Checkout/_files/quote_with_payment_saved_rollback.php
+++ b/dev/tests/integration/testsuite/Magento/Checkout/_files/quote_with_payment_saved_rollback.php
@@ -8,5 +8,5 @@
 
 /** @var $objectManager \Magento\TestFramework\ObjectManager */
 $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager();
-$quote = $objectManager->create('Magento\Sales\Model\Quote');
+$quote = $objectManager->create('Magento\Quote\Model\Quote');
 $quote->load('test_order_1_with_payment', 'reserved_order_id')->delete();
diff --git a/dev/tests/integration/testsuite/Magento/Checkout/_files/quote_with_product_and_payment.php b/dev/tests/integration/testsuite/Magento/Checkout/_files/quote_with_product_and_payment.php
index fe1cd19e553ce6eb310c35e153444cb608c7487a..637436ab6ca86303d890c00dda3b6e4377ba266a 100644
--- a/dev/tests/integration/testsuite/Magento/Checkout/_files/quote_with_product_and_payment.php
+++ b/dev/tests/integration/testsuite/Magento/Checkout/_files/quote_with_product_and_payment.php
@@ -6,8 +6,8 @@
 
 require __DIR__ . '/../../../Magento/Catalog/_files/products.php';
 
-/** @var $quote \Magento\Sales\Model\Quote */
-$quote = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create('Magento\Sales\Model\Quote');
+/** @var $quote \Magento\Quote\Model\Quote */
+$quote = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create('Magento\Quote\Model\Quote');
 $quote->setStoreId(1)->setIsActive(false)->setIsMultiShipping(false)->addProduct($product->load($product->getId()), 2);
 
 $quote->getPayment()->setMethod('checkmo');
@@ -15,6 +15,4 @@ $quote->getPayment()->setMethod('checkmo');
 $quote->collectTotals();
 $quote->save();
 
-$objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager();
-$quoteService = $objectManager->create('Magento\Sales\Model\Service\Quote', ['quote' => $quote]);
-$quoteService->getQuote()->getPayment()->setMethod('checkmo');
+$quote->getPayment()->setMethod('checkmo');
diff --git a/dev/tests/integration/testsuite/Magento/Checkout/_files/quote_with_simple_product_saved.php b/dev/tests/integration/testsuite/Magento/Checkout/_files/quote_with_simple_product_saved.php
index 5ab811fc55e9b295459c36a1febb3c4672d3d194..3d410ba47f558b83bcc8d91d93bed5221a22f37c 100644
--- a/dev/tests/integration/testsuite/Magento/Checkout/_files/quote_with_simple_product_saved.php
+++ b/dev/tests/integration/testsuite/Magento/Checkout/_files/quote_with_simple_product_saved.php
@@ -4,10 +4,12 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 require 'simple_product.php';
 
-/** @var \Magento\Sales\Model\Quote $quote */
-$quote = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create('Magento\Sales\Model\Quote');
+/** @var \Magento\Quote\Model\Quote $quote */
+$quote = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create('Magento\Quote\Model\Quote');
 $quote->setStoreId(
     1
     )->setIsActive(
diff --git a/dev/tests/integration/testsuite/Magento/Checkout/_files/quote_with_simple_product_saved_rollback.php b/dev/tests/integration/testsuite/Magento/Checkout/_files/quote_with_simple_product_saved_rollback.php
index 8110920e267cb3e83ba2d411d6741a798db59b58..60b8a06b2dcfe58c829b67db2fcde71798e88e1f 100644
--- a/dev/tests/integration/testsuite/Magento/Checkout/_files/quote_with_simple_product_saved_rollback.php
+++ b/dev/tests/integration/testsuite/Magento/Checkout/_files/quote_with_simple_product_saved_rollback.php
@@ -8,5 +8,5 @@
 
 /** @var $objectManager \Magento\TestFramework\ObjectManager */
 $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager();
-$quote = $objectManager->create('Magento\Sales\Model\Quote');
+$quote = $objectManager->create('Magento\Quote\Model\Quote');
 $quote->load('test_order_with_simple_product_without_address', 'reserved_order_id')->delete();
diff --git a/dev/tests/integration/testsuite/Magento/Checkout/_files/quote_with_virtual_product_and_address.php b/dev/tests/integration/testsuite/Magento/Checkout/_files/quote_with_virtual_product_and_address.php
index 4c30501fef486e157861681b5f3190a8262ca612..f892d8e7abade648085ddb2cb5b6f1cc44d79a48 100644
--- a/dev/tests/integration/testsuite/Magento/Checkout/_files/quote_with_virtual_product_and_address.php
+++ b/dev/tests/integration/testsuite/Magento/Checkout/_files/quote_with_virtual_product_and_address.php
@@ -3,13 +3,16 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 require __DIR__ . '/../../Customer/_files/customer.php';
 require __DIR__ . '/../../Customer/_files/customer_address.php';
 require __DIR__ . '/../../../Magento/Catalog/_files/product_virtual.php';
 
-/** @var \Magento\Sales\Model\Quote\Address $quoteShippingAddress */
+/** @var \Magento\Quote\Model\Quote\Address $quoteShippingAddress */
 $quoteShippingAddress = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create(
-    'Magento\Sales\Model\Quote\Address'
+    'Magento\Quote\Model\Quote\Address'
 );
 /** @var \Magento\Customer\Api\CustomerRepositoryInterface $customerRepository */
 $customerRepository = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create(
@@ -21,8 +24,8 @@ $addressRepository = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()
 );
 $quoteShippingAddress->importCustomerAddressData($addressRepository->getById(1));
 
-/** @var \Magento\Sales\Model\Quote $quote */
-$quote = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create('Magento\Sales\Model\Quote');
+/** @var \Magento\Quote\Model\Quote $quote */
+$quote = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create('Magento\Quote\Model\Quote');
 $quote->setStoreId(
         1
     )->setIsActive(
diff --git a/dev/tests/integration/testsuite/Magento/Checkout/_files/quote_with_virtual_product_and_address_rollback.php b/dev/tests/integration/testsuite/Magento/Checkout/_files/quote_with_virtual_product_and_address_rollback.php
index 20b5d7f7f7e2504eb6adc1fff849637f66733989..abd211dba8b7844b3644c2ae0e406b867da88c0b 100644
--- a/dev/tests/integration/testsuite/Magento/Checkout/_files/quote_with_virtual_product_and_address_rollback.php
+++ b/dev/tests/integration/testsuite/Magento/Checkout/_files/quote_with_virtual_product_and_address_rollback.php
@@ -7,5 +7,5 @@
  */
 /** @var $objectManager \Magento\TestFramework\ObjectManager */
 $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager();
-$quote = $objectManager->create('Magento\Sales\Model\Quote');
+$quote = $objectManager->create('Magento\Quote\Model\Quote');
 $quote->load('test_order_with_virtual_product', 'reserved_order_id')->delete();
diff --git a/dev/tests/integration/testsuite/Magento/Checkout/_files/quote_with_virtual_product_saved.php b/dev/tests/integration/testsuite/Magento/Checkout/_files/quote_with_virtual_product_saved.php
index 16b32763f14cd8bfed1244c907ee5dd163a137c2..d68124215662e455600af9d538dc7f2db59f7c51 100644
--- a/dev/tests/integration/testsuite/Magento/Checkout/_files/quote_with_virtual_product_saved.php
+++ b/dev/tests/integration/testsuite/Magento/Checkout/_files/quote_with_virtual_product_saved.php
@@ -6,8 +6,8 @@
 
 require __DIR__ . '/../../../Magento/Catalog/_files/product_virtual.php';
 
-/** @var \Magento\Sales\Model\Quote $quote */
-$quote = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create('Magento\Sales\Model\Quote');
+/** @var \Magento\Quote\Model\Quote $quote */
+$quote = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create('Magento\Quote\Model\Quote');
 $quote->setStoreId(1)
     ->setIsActive(true)
     ->setIsMultiShipping(false)
diff --git a/dev/tests/integration/testsuite/Magento/Checkout/_files/quote_with_virtual_product_saved_rollback.php b/dev/tests/integration/testsuite/Magento/Checkout/_files/quote_with_virtual_product_saved_rollback.php
index 74b82e8e1930306d5e4e23411b2b8c39335554da..4447d3cf57862f35cded4b095ccc5d0285bd06e0 100644
--- a/dev/tests/integration/testsuite/Magento/Checkout/_files/quote_with_virtual_product_saved_rollback.php
+++ b/dev/tests/integration/testsuite/Magento/Checkout/_files/quote_with_virtual_product_saved_rollback.php
@@ -8,5 +8,5 @@
 
 /** @var $objectManager \Magento\TestFramework\ObjectManager */
 $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager();
-$quote = $objectManager->create('Magento\Sales\Model\Quote');
+$quote = $objectManager->create('Magento\Quote\Model\Quote');
 $quote->load('test_order_with_virtual_product_without_address', 'reserved_order_id')->delete();
diff --git a/dev/tests/integration/testsuite/Magento/Cms/Controller/RouterTest.php b/dev/tests/integration/testsuite/Magento/Cms/Controller/RouterTest.php
index ee0fb9721e02fddc2126a5b03170e2a2ee73bd16..69e7ee649b9a3fe42006d772ba3c613c3a4ff23f 100644
--- a/dev/tests/integration/testsuite/Magento/Cms/Controller/RouterTest.php
+++ b/dev/tests/integration/testsuite/Magento/Cms/Controller/RouterTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Cms\Controller;
 
 class RouterTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/integration/testsuite/Magento/ConfigurableProduct/Block/Adminhtml/Product/Edit/Tab/Super/ConfigTest.php b/dev/tests/integration/testsuite/Magento/ConfigurableProduct/Block/Adminhtml/Product/Edit/Tab/Super/ConfigTest.php
index 05b199d588294b1e0da7035464782fc6bc1e56d1..b3c492d07d29ce2d775ca328f070d90ccb5be646 100644
--- a/dev/tests/integration/testsuite/Magento/ConfigurableProduct/Block/Adminhtml/Product/Edit/Tab/Super/ConfigTest.php
+++ b/dev/tests/integration/testsuite/Magento/ConfigurableProduct/Block/Adminhtml/Product/Edit/Tab/Super/ConfigTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\ConfigurableProduct\Block\Adminhtml\Product\Edit\Tab\Super;
 
 use Magento\Catalog\Model\Resource\Eav\Attribute;
diff --git a/dev/tests/integration/testsuite/Magento/ConfigurableProduct/Controller/CartTest.php b/dev/tests/integration/testsuite/Magento/ConfigurableProduct/Controller/CartTest.php
index 5ae2577cd0a39254adc037c1fc52b4a3228498d8..7fa8edcd389293520f278635869cf3c9caae7d05 100644
--- a/dev/tests/integration/testsuite/Magento/ConfigurableProduct/Controller/CartTest.php
+++ b/dev/tests/integration/testsuite/Magento/ConfigurableProduct/Controller/CartTest.php
@@ -47,15 +47,15 @@ class CartTest extends \Magento\TestFramework\TestCase\AbstractController
     }
 
     /**
-     * Gets \Magento\Sales\Model\Quote\Item from \Magento\Sales\Model\Quote by product id
+     * Gets \Magento\Quote\Model\Quote\Item from \Magento\Quote\Model\Quote by product id
      *
-     * @param \Magento\Sales\Model\Quote $quote
+     * @param \Magento\Quote\Model\Quote $quote
      * @param mixed $productId
-     * @return \Magento\Sales\Model\Quote\Item|null
+     * @return \Magento\Quote\Model\Quote\Item|null
      */
-    private function _getQuoteItemIdByProductId(\Magento\Sales\Model\Quote $quote, $productId)
+    private function _getQuoteItemIdByProductId(\Magento\Quote\Model\Quote $quote, $productId)
     {
-        /** @var $quoteItems \Magento\Sales\Model\Quote\Item[] */
+        /** @var $quoteItems \Magento\Quote\Model\Quote\Item[] */
         $quoteItems = $quote->getAllItems();
         foreach ($quoteItems as $quoteItem) {
             if ($productId == $quoteItem->getProductId()) {
diff --git a/dev/tests/integration/testsuite/Magento/ConfigurableProduct/Model/Product/Type/ConfigurableTest.php b/dev/tests/integration/testsuite/Magento/ConfigurableProduct/Model/Product/Type/ConfigurableTest.php
index 65e19b28c8005d2eeaa61eda88a89ae0ebcc2250..b2dd9e25b682027b88aa1a1a940f70c0f1a2556b 100644
--- a/dev/tests/integration/testsuite/Magento/ConfigurableProduct/Model/Product/Type/ConfigurableTest.php
+++ b/dev/tests/integration/testsuite/Magento/ConfigurableProduct/Model/Product/Type/ConfigurableTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\ConfigurableProduct\Model\Product\Type;
 
 /**
diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/Resource/Theme/CollectionTest.php b/dev/tests/integration/testsuite/Magento/Core/Model/Resource/Theme/CollectionTest.php
index adea2959d7395264579f6314cbd4b95f1130e5b1..c5545fee90a972e3283238f9054a276a323f7f32 100644
--- a/dev/tests/integration/testsuite/Magento/Core/Model/Resource/Theme/CollectionTest.php
+++ b/dev/tests/integration/testsuite/Magento/Core/Model/Resource/Theme/CollectionTest.php
@@ -246,7 +246,6 @@ class CollectionTest extends \PHPUnit_Framework_TestCase
                 'parent_id' => '0',
                 'theme_path' => 'test/default',
                 'code' => 'test/default',
-                'theme_version' => '0.1.0',
                 'theme_title' => 'Test',
                 'preview_image' => 'test_default.jpg',
                 'is_featured' => '1',
@@ -257,7 +256,6 @@ class CollectionTest extends \PHPUnit_Framework_TestCase
                 'parent_id' => '0',
                 'theme_path' => 'test/pro',
                 'code' => 'test/pro',
-                'theme_version' => '0.1.0',
                 'theme_title' => 'Professional Test',
                 'preview_image' => 'test_default.jpg',
                 'is_featured' => '1',
@@ -268,7 +266,6 @@ class CollectionTest extends \PHPUnit_Framework_TestCase
                 'parent_id' => '0',
                 'theme_path' => 'test/fixed1',
                 'code' => 'test/fixed1',
-                'theme_version' => '0.1.0',
                 'theme_title' => 'Theme test 1',
                 'preview_image' => 'test_default.jpg',
                 'is_featured' => '1',
@@ -279,7 +276,6 @@ class CollectionTest extends \PHPUnit_Framework_TestCase
                 'parent_id' => '0',
                 'theme_path' => 'test/fixed2',
                 'code' => 'test/fixed2',
-                'theme_version' => '0.1.0',
                 'theme_title' => 'Theme test 2',
                 'preview_image' => 'test_default.jpg',
                 'is_featured' => '1',
@@ -290,7 +286,6 @@ class CollectionTest extends \PHPUnit_Framework_TestCase
                 'parent_id' => '0',
                 'theme_path' => 'test/fixed3',
                 'code' => 'test/fixed3',
-                'theme_version' => '0.1.0',
                 'theme_title' => 'Theme test 3',
                 'preview_image' => 'test_default.jpg',
                 'is_featured' => '1',
@@ -310,7 +305,6 @@ class CollectionTest extends \PHPUnit_Framework_TestCase
                 'parent_id' => '0',
                 'theme_path' => 'test1/test1',
                 'code' => 'test1/test1',
-                'theme_version' => '0.1.0',
                 'theme_title' => 'Test1',
                 'preview_image' => 'test1_test1.jpg',
                 'is_featured' => '1',
@@ -321,7 +315,6 @@ class CollectionTest extends \PHPUnit_Framework_TestCase
                 'parent_id' => 'area51/test1/test1',
                 'theme_path' => 'test1/test2',
                 'code' => 'test1/test2',
-                'theme_version' => '0.1.0',
                 'theme_title' => 'Test2',
                 'preview_image' => 'test1_test2.jpg',
                 'is_featured' => '1',
@@ -332,7 +325,6 @@ class CollectionTest extends \PHPUnit_Framework_TestCase
                 'parent_id' => 'area51/test1/test2',
                 'theme_path' => 'test1/test3',
                 'code' => 'test1/test3',
-                'theme_version' => '0.1.0',
                 'theme_title' => 'Test3',
                 'preview_image' => 'test1_test3.jpg',
                 'is_featured' => '1',
@@ -343,7 +335,6 @@ class CollectionTest extends \PHPUnit_Framework_TestCase
                 'parent_id' => 'area51/test1/test0',
                 'theme_path' => 'test1/test4',
                 'code' => 'test1/test4',
-                'theme_version' => '0.1.0',
                 'theme_title' => 'Test4',
                 'preview_image' => 'test1_test4.jpg',
                 'is_featured' => '1',
diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/Theme/CollectionTest.php b/dev/tests/integration/testsuite/Magento/Core/Model/Theme/CollectionTest.php
index fbe56cbb3284aff3fc402343807c5762a6350178..bdd7f9a9f4fd3e6ddc9a423ceccea0b358bbb231 100644
--- a/dev/tests/integration/testsuite/Magento/Core/Model/Theme/CollectionTest.php
+++ b/dev/tests/integration/testsuite/Magento/Core/Model/Theme/CollectionTest.php
@@ -77,7 +77,6 @@ class CollectionTest extends \PHPUnit_Framework_TestCase
                 'expectedData' => [
                     'area' => 'frontend',
                     'theme_title' => 'Default',
-                    'theme_version' => '0.1.0',
                     'parent_id' => null,
                     'parent_theme_path' => null,
                     'theme_path' => 'Magento/default',
@@ -105,7 +104,6 @@ class CollectionTest extends \PHPUnit_Framework_TestCase
             [
                 'area' => 'space_area',
                 'theme_title' => 'Space theme',
-                'theme_version' => '0.1.0',
                 'parent_id' => null,
                 'is_featured' => false,
                 'theme_path' => 'default_space',
diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/Theme/Domain/VirtualTest.php b/dev/tests/integration/testsuite/Magento/Core/Model/Theme/Domain/VirtualTest.php
index 638b83e31d7be0312988cba69c92d351b96c3eb0..e82871b5b7476204cdd01cf09169e4ddb876b5e6 100644
--- a/dev/tests/integration/testsuite/Magento/Core/Model/Theme/Domain/VirtualTest.php
+++ b/dev/tests/integration/testsuite/Magento/Core/Model/Theme/Domain/VirtualTest.php
@@ -16,7 +16,6 @@ class VirtualTest extends \PHPUnit_Framework_TestCase
         'physical' => [
             'parent_id' => null,
             'theme_path' => 'test/test',
-            'theme_version' => '0.1.0',
             'theme_title' => 'Test physical theme',
             'area' => \Magento\Framework\App\Area::AREA_FRONTEND,
             'type' => ThemeInterface::TYPE_PHYSICAL,
@@ -24,7 +23,6 @@ class VirtualTest extends \PHPUnit_Framework_TestCase
         'virtual' => [
             'parent_id' => null,
             'theme_path' => '',
-            'theme_version' => '0.1.0',
             'theme_title' => 'Test virtual theme',
             'area' => \Magento\Framework\App\Area::AREA_FRONTEND,
             'type' => ThemeInterface::TYPE_VIRTUAL,
@@ -32,7 +30,6 @@ class VirtualTest extends \PHPUnit_Framework_TestCase
         'staging' => [
             'parent_id' => null,
             'theme_path' => '',
-            'theme_version' => '0.1.0',
             'theme_title' => 'Test staging theme',
             'area' => \Magento\Framework\App\Area::AREA_FRONTEND,
             'type' => ThemeInterface::TYPE_STAGING,
diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/Theme/Source/_files/design/frontend/a_d/theme.xml b/dev/tests/integration/testsuite/Magento/Core/Model/Theme/Source/_files/design/frontend/a_d/theme.xml
index bcc1352be1c44e02786074c7e644739cc17ec5f8..b0efe23298f9f2426615c9e1651dcb4570d7e348 100644
--- a/dev/tests/integration/testsuite/Magento/Core/Model/Theme/Source/_files/design/frontend/a_d/theme.xml
+++ b/dev/tests/integration/testsuite/Magento/Core/Model/Theme/Source/_files/design/frontend/a_d/theme.xml
@@ -7,5 +7,4 @@
 -->
 <theme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../../../../../../../../lib/internal/Magento/Framework/Config/etc/theme.xsd">
     <title>Theme D</title>
-    <version>0.1.0</version>
 </theme>
diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/Theme/Source/_files/design/frontend/b_e/theme.xml b/dev/tests/integration/testsuite/Magento/Core/Model/Theme/Source/_files/design/frontend/b_e/theme.xml
index 6b25a492ce5ad15ee399dca709f648561fbcef66..9e73fae4aae6bdf53c66e8ae768e8c11c2b8ad3a 100644
--- a/dev/tests/integration/testsuite/Magento/Core/Model/Theme/Source/_files/design/frontend/b_e/theme.xml
+++ b/dev/tests/integration/testsuite/Magento/Core/Model/Theme/Source/_files/design/frontend/b_e/theme.xml
@@ -7,5 +7,4 @@
 -->
 <theme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../../../../../../../../lib/internal/Magento/Framework/Config/etc/theme.xsd">
     <title>Theme E</title>
-    <version>0.1.0</version>
 </theme>
diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/Theme/Source/_files/design/frontend/magento_default/theme.xml b/dev/tests/integration/testsuite/Magento/Core/Model/Theme/Source/_files/design/frontend/magento_default/theme.xml
index 241bc4aede099989087ae9dbf00cf918a10dde3f..35bf2705b1475337b92fdbefd21eed34ef3c2a44 100644
--- a/dev/tests/integration/testsuite/Magento/Core/Model/Theme/Source/_files/design/frontend/magento_default/theme.xml
+++ b/dev/tests/integration/testsuite/Magento/Core/Model/Theme/Source/_files/design/frontend/magento_default/theme.xml
@@ -7,5 +7,4 @@
 -->
 <theme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../../../../../../../../lib/internal/Magento/Framework/Config/etc/theme.xsd">
     <title>Default</title>
-    <version>0.1.0</version>
 </theme>
diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/Theme/Source/_files/design/frontend/magento_g/theme.xml b/dev/tests/integration/testsuite/Magento/Core/Model/Theme/Source/_files/design/frontend/magento_g/theme.xml
index fbaf730f30def2917f9ed2901357dddad134f325..58305eec6c911fd792fd423de2e1f72ac8c7790d 100644
--- a/dev/tests/integration/testsuite/Magento/Core/Model/Theme/Source/_files/design/frontend/magento_g/theme.xml
+++ b/dev/tests/integration/testsuite/Magento/Core/Model/Theme/Source/_files/design/frontend/magento_g/theme.xml
@@ -7,6 +7,5 @@
 -->
 <theme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../../../../../../../../lib/internal/Magento/Framework/Config/etc/theme.xsd">
     <title>Theme G</title>
-    <version>0.1.0</version>
     <parent>Magento/default</parent>
 </theme>
diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/ThemeTest.php b/dev/tests/integration/testsuite/Magento/Core/Model/ThemeTest.php
index e76c96ad98729f55fa405b6351dac67201948f03..f6dc72f56e87bd0bab1fef21511597cd0cea206b 100644
--- a/dev/tests/integration/testsuite/Magento/Core/Model/ThemeTest.php
+++ b/dev/tests/integration/testsuite/Magento/Core/Model/ThemeTest.php
@@ -20,7 +20,7 @@ class ThemeTest extends \PHPUnit_Framework_TestCase
         );
         $themeModel->setData($this->_getThemeValidData());
 
-        $crud = new \Magento\TestFramework\Entity($themeModel, ['theme_version' => '0.1.0']);
+        $crud = new \Magento\TestFramework\Entity($themeModel, []);
         $crud->testCrud();
     }
 
@@ -34,7 +34,6 @@ class ThemeTest extends \PHPUnit_Framework_TestCase
         return [
             'area' => 'space_area',
             'theme_title' => 'Space theme',
-            'theme_version' => '0.1.0',
             'parent_id' => null,
             'is_featured' => false,
             'theme_path' => 'default/space',
diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/Variable/ConfigTest.php b/dev/tests/integration/testsuite/Magento/Core/Model/Variable/ConfigTest.php
index 760bff128035a468a0bacd51eeca00616a882a37..b3961b0edbc99779c7ce31fedc6c06e658b141ba 100644
--- a/dev/tests/integration/testsuite/Magento/Core/Model/Variable/ConfigTest.php
+++ b/dev/tests/integration/testsuite/Magento/Core/Model/Variable/ConfigTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Core\Model\Variable;
 
 /**
diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/_files/design/adminhtml/Vendor/test/theme.xml b/dev/tests/integration/testsuite/Magento/Core/Model/_files/design/adminhtml/Vendor/test/theme.xml
index 49e2a0830a3a453ac9b5eb1ec0c8b71925ea88d8..8eec1253605812e3706d2577533c50cebe7e39cf 100644
--- a/dev/tests/integration/testsuite/Magento/Core/Model/_files/design/adminhtml/Vendor/test/theme.xml
+++ b/dev/tests/integration/testsuite/Magento/Core/Model/_files/design/adminhtml/Vendor/test/theme.xml
@@ -6,5 +6,4 @@
 -->
 <theme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../../../../../../../lib/internal/Magento/Framework/Config/etc/theme.xsd">
     <title>Default</title>
-    <version>0.1.0</version>
 </theme>
diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/_files/design/area_two/Vendor/theme_one/theme.xml b/dev/tests/integration/testsuite/Magento/Core/Model/_files/design/area_two/Vendor/theme_one/theme.xml
index abc0f42fdb2f5c19d6d94a78175db242eaf00fc8..bb0a63a6dad43d7e47eba0fbe316f6677bef377f 100644
--- a/dev/tests/integration/testsuite/Magento/Core/Model/_files/design/area_two/Vendor/theme_one/theme.xml
+++ b/dev/tests/integration/testsuite/Magento/Core/Model/_files/design/area_two/Vendor/theme_one/theme.xml
@@ -6,5 +6,4 @@
 -->
 <theme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../../../../../../../lib/internal/Magento/Framework/Config/etc/theme.xsd">
     <title>Theme One</title>
-    <version>0.1.0</version>
 </theme>
diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/_files/design/design_area/Vendor/theme_one/theme.xml b/dev/tests/integration/testsuite/Magento/Core/Model/_files/design/design_area/Vendor/theme_one/theme.xml
index abc0f42fdb2f5c19d6d94a78175db242eaf00fc8..bb0a63a6dad43d7e47eba0fbe316f6677bef377f 100644
--- a/dev/tests/integration/testsuite/Magento/Core/Model/_files/design/design_area/Vendor/theme_one/theme.xml
+++ b/dev/tests/integration/testsuite/Magento/Core/Model/_files/design/design_area/Vendor/theme_one/theme.xml
@@ -6,5 +6,4 @@
 -->
 <theme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../../../../../../../lib/internal/Magento/Framework/Config/etc/theme.xsd">
     <title>Theme One</title>
-    <version>0.1.0</version>
 </theme>
diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/_files/design/frontend/Magento/default/theme.xml b/dev/tests/integration/testsuite/Magento/Core/Model/_files/design/frontend/Magento/default/theme.xml
index 49e2a0830a3a453ac9b5eb1ec0c8b71925ea88d8..8eec1253605812e3706d2577533c50cebe7e39cf 100644
--- a/dev/tests/integration/testsuite/Magento/Core/Model/_files/design/frontend/Magento/default/theme.xml
+++ b/dev/tests/integration/testsuite/Magento/Core/Model/_files/design/frontend/Magento/default/theme.xml
@@ -6,5 +6,4 @@
 -->
 <theme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../../../../../../../lib/internal/Magento/Framework/Config/etc/theme.xsd">
     <title>Default</title>
-    <version>0.1.0</version>
 </theme>
diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/_files/design/frontend/Magento/default_iphone/theme.xml b/dev/tests/integration/testsuite/Magento/Core/Model/_files/design/frontend/Magento/default_iphone/theme.xml
index c01058ce1edc6c38426ba1eabc6dbb5774976c86..616e5b8cc4ce0b03e6b93558b9a0782819448a51 100644
--- a/dev/tests/integration/testsuite/Magento/Core/Model/_files/design/frontend/Magento/default_iphone/theme.xml
+++ b/dev/tests/integration/testsuite/Magento/Core/Model/_files/design/frontend/Magento/default_iphone/theme.xml
@@ -9,6 +9,5 @@
     <media>
         <preview_image>images/preview_image.jpg</preview_image>
     </media>
-    <version>0.1.0</version>
     <parent>Magento/default</parent>
 </theme>
diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/_files/design/frontend/Test/cache_test_theme/theme.xml b/dev/tests/integration/testsuite/Magento/Core/Model/_files/design/frontend/Test/cache_test_theme/theme.xml
index 1db1b557740c39b1a6f18eca29b70cd9be14af53..d37ba660c060f3822ad829baf749f9b4c99d9504 100644
--- a/dev/tests/integration/testsuite/Magento/Core/Model/_files/design/frontend/Test/cache_test_theme/theme.xml
+++ b/dev/tests/integration/testsuite/Magento/Core/Model/_files/design/frontend/Test/cache_test_theme/theme.xml
@@ -6,6 +6,5 @@
 -->
 <theme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../../../../../../../lib/internal/Magento/Framework/Config/etc/theme.xsd">
     <title>Cache Test Theme</title>
-    <version>0.1.0</version>
     <parent>Test/default</parent>
 </theme>
diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/_files/design/frontend/Test/default/theme.xml b/dev/tests/integration/testsuite/Magento/Core/Model/_files/design/frontend/Test/default/theme.xml
index 49e2a0830a3a453ac9b5eb1ec0c8b71925ea88d8..8eec1253605812e3706d2577533c50cebe7e39cf 100644
--- a/dev/tests/integration/testsuite/Magento/Core/Model/_files/design/frontend/Test/default/theme.xml
+++ b/dev/tests/integration/testsuite/Magento/Core/Model/_files/design/frontend/Test/default/theme.xml
@@ -6,5 +6,4 @@
 -->
 <theme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../../../../../../../lib/internal/Magento/Framework/Config/etc/theme.xsd">
     <title>Default</title>
-    <version>0.1.0</version>
 </theme>
diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/_files/design/frontend/Test/publication/theme.xml b/dev/tests/integration/testsuite/Magento/Core/Model/_files/design/frontend/Test/publication/theme.xml
index 49e2a0830a3a453ac9b5eb1ec0c8b71925ea88d8..8eec1253605812e3706d2577533c50cebe7e39cf 100644
--- a/dev/tests/integration/testsuite/Magento/Core/Model/_files/design/frontend/Test/publication/theme.xml
+++ b/dev/tests/integration/testsuite/Magento/Core/Model/_files/design/frontend/Test/publication/theme.xml
@@ -6,5 +6,4 @@
 -->
 <theme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../../../../../../../lib/internal/Magento/Framework/Config/etc/theme.xsd">
     <title>Default</title>
-    <version>0.1.0</version>
 </theme>
diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/_files/design/frontend/Test/test_theme/theme.xml b/dev/tests/integration/testsuite/Magento/Core/Model/_files/design/frontend/Test/test_theme/theme.xml
index 108e4a8742502dff3124229d9848af1febb40c3e..c982f1d93cbc9c53be6488d5bcbb46a044e4e86b 100644
--- a/dev/tests/integration/testsuite/Magento/Core/Model/_files/design/frontend/Test/test_theme/theme.xml
+++ b/dev/tests/integration/testsuite/Magento/Core/Model/_files/design/frontend/Test/test_theme/theme.xml
@@ -6,6 +6,5 @@
 -->
 <theme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../../../../../../../lib/internal/Magento/Framework/Config/etc/theme.xsd">
     <title>Test Theme</title>
-    <version>0.1.0</version>
     <parent>Test/default</parent>
 </theme>
diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/_files/design/frontend/Vendor/custom_theme/theme.xml b/dev/tests/integration/testsuite/Magento/Core/Model/_files/design/frontend/Vendor/custom_theme/theme.xml
index 2dfa014452f3d21fd55fe8f3e4f6461f31a61c6d..e20f6a70ac658c869bb25897a1298a5dbdfd81e2 100644
--- a/dev/tests/integration/testsuite/Magento/Core/Model/_files/design/frontend/Vendor/custom_theme/theme.xml
+++ b/dev/tests/integration/testsuite/Magento/Core/Model/_files/design/frontend/Vendor/custom_theme/theme.xml
@@ -6,6 +6,5 @@
 -->
 <theme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../../../../../../../lib/internal/Magento/Framework/Config/etc/theme.xsd">
     <title>Custom Theme</title>
-    <version>0.1.0</version>
     <parent>Vendor/default</parent>
 </theme>
diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/_files/design/frontend/Vendor/default/theme.xml b/dev/tests/integration/testsuite/Magento/Core/Model/_files/design/frontend/Vendor/default/theme.xml
index 49e2a0830a3a453ac9b5eb1ec0c8b71925ea88d8..8eec1253605812e3706d2577533c50cebe7e39cf 100644
--- a/dev/tests/integration/testsuite/Magento/Core/Model/_files/design/frontend/Vendor/default/theme.xml
+++ b/dev/tests/integration/testsuite/Magento/Core/Model/_files/design/frontend/Vendor/default/theme.xml
@@ -6,5 +6,4 @@
 -->
 <theme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../../../../../../../lib/internal/Magento/Framework/Config/etc/theme.xsd">
     <title>Default</title>
-    <version>0.1.0</version>
 </theme>
diff --git a/dev/tests/integration/testsuite/Magento/Core/_files/layout_update.php b/dev/tests/integration/testsuite/Magento/Core/_files/layout_update.php
index a7bfacc13263eeeacdb964339f2ac04dd35368cb..123dad3d52a08202f6811f19befe52ad2aa607a8 100644
--- a/dev/tests/integration/testsuite/Magento/Core/_files/layout_update.php
+++ b/dev/tests/integration/testsuite/Magento/Core/_files/layout_update.php
@@ -13,8 +13,6 @@ $objectManager->get('Magento\Framework\App\AreaList')
 $theme = $objectManager->create('Magento\Framework\View\Design\ThemeInterface');
 $theme->setThemePath(
     'test/test'
-)->setThemeVersion(
-    '0.1.0'
 )->setArea(
     'frontend'
 )->setThemeTitle(
diff --git a/dev/tests/integration/testsuite/Magento/Customer/Controller/AccountTest.php b/dev/tests/integration/testsuite/Magento/Customer/Controller/AccountTest.php
old mode 100755
new mode 100644
index ce1f87bae5ca9093b4343f4334431e640262d194..229a899bfe198014a9e128b96a3cad967fd3e262
--- a/dev/tests/integration/testsuite/Magento/Customer/Controller/AccountTest.php
+++ b/dev/tests/integration/testsuite/Magento/Customer/Controller/AccountTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Customer\Controller;
 
 use Magento\Framework\Message\MessageInterface;
diff --git a/dev/tests/integration/testsuite/Magento/Customer/Controller/Adminhtml/Cart/Product/Composite/CartTest.php b/dev/tests/integration/testsuite/Magento/Customer/Controller/Adminhtml/Cart/Product/Composite/CartTest.php
index 61434301528a62ce9a1021cdcd8ee7373828bef2..f8e757f20d8a63dcbe5ba35c16b38a016ef509d9 100644
--- a/dev/tests/integration/testsuite/Magento/Customer/Controller/Adminhtml/Cart/Product/Composite/CartTest.php
+++ b/dev/tests/integration/testsuite/Magento/Customer/Controller/Adminhtml/Cart/Product/Composite/CartTest.php
@@ -11,7 +11,7 @@ namespace Magento\Customer\Controller\Adminhtml\Cart\Product\Composite;
 class CartTest extends \Magento\Backend\Utility\Controller
 {
     /**
-     * @var \Magento\Sales\Model\Resource\Quote\Item\CollectionFactory
+     * @var \Magento\Quote\Model\Resource\Quote\Item\CollectionFactory
      */
     protected $quoteItemCollectionFactory;
 
@@ -19,7 +19,7 @@ class CartTest extends \Magento\Backend\Utility\Controller
     {
         parent::setUp();
         $this->quoteItemCollectionFactory = $this->_objectManager->get(
-            'Magento\Sales\Model\Resource\Quote\Item\CollectionFactory'
+            'Magento\Quote\Model\Resource\Quote\Item\CollectionFactory'
         );
     }
 
diff --git a/dev/tests/integration/testsuite/Magento/Customer/Controller/AjaxLoginTest.php b/dev/tests/integration/testsuite/Magento/Customer/Controller/AjaxLoginTest.php
old mode 100755
new mode 100644
index bed8311b66666ac23891b431f16b5508fe714eed..f05eabf4e646c9159768b9e06f71c764c8a88ecd
--- a/dev/tests/integration/testsuite/Magento/Customer/Controller/AjaxLoginTest.php
+++ b/dev/tests/integration/testsuite/Magento/Customer/Controller/AjaxLoginTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Customer\Controller;
 
 use Magento\TestFramework\Helper\Bootstrap;
diff --git a/dev/tests/integration/testsuite/Magento/Customer/Model/CustomerRegistryTest.php b/dev/tests/integration/testsuite/Magento/Customer/Model/CustomerRegistryTest.php
index 74c601fcbfb89d1c8b1e2f89f5bd2449ed154239..a36d9f9be6991f3c53609968910694053fec1cca 100644
--- a/dev/tests/integration/testsuite/Magento/Customer/Model/CustomerRegistryTest.php
+++ b/dev/tests/integration/testsuite/Magento/Customer/Model/CustomerRegistryTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Customer\Model;
 
 use Magento\Framework\Exception\NoSuchEntityException;
diff --git a/dev/tests/integration/testsuite/Magento/Customer/_files/customer.php b/dev/tests/integration/testsuite/Magento/Customer/_files/customer.php
index a659e2329f6b96fbcaf5e9fb71ff7d923144b41f..bf913d8cdeeee062ca0942622e3bde4cbd64c1fe 100644
--- a/dev/tests/integration/testsuite/Magento/Customer/_files/customer.php
+++ b/dev/tests/integration/testsuite/Magento/Customer/_files/customer.php
@@ -12,8 +12,6 @@ $customer = $objectManager->create('Magento\Customer\Model\Customer');
 /** @var Magento\Customer\Model\Customer $customer */
 $customer->setWebsiteId(1)
     ->setId(1)
-    ->setEntityTypeId(1)
-    ->setAttributeSetId(1)
     ->setEmail('customer@example.com')
     ->setPassword('password')
     ->setGroupId(1)
diff --git a/dev/tests/integration/testsuite/Magento/Customer/_files/customer_non_default_website_id.php b/dev/tests/integration/testsuite/Magento/Customer/_files/customer_non_default_website_id.php
index a2c4e2b4330f1e0f63fd578527fbdd7926826792..9409d8607459ff11c9a5edf581677b4600ed1a55 100644
--- a/dev/tests/integration/testsuite/Magento/Customer/_files/customer_non_default_website_id.php
+++ b/dev/tests/integration/testsuite/Magento/Customer/_files/customer_non_default_website_id.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * @var \Magento\Store\Model\Website $website
  */
diff --git a/dev/tests/integration/testsuite/Magento/Customer/_files/quote.php b/dev/tests/integration/testsuite/Magento/Customer/_files/quote.php
index 21e201788b237d3b6199151cba2e05fa749b985f..d40823b6573ef71808a5c525c7455e8ddde2b1b7 100644
--- a/dev/tests/integration/testsuite/Magento/Customer/_files/quote.php
+++ b/dev/tests/integration/testsuite/Magento/Customer/_files/quote.php
@@ -33,8 +33,8 @@ $product->setTypeId(
 )->save();
 $product->load(1);
 
-/** @var $quote \Magento\Sales\Model\Quote */
-$quote = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create('Magento\Sales\Model\Quote');
+/** @var $quote \Magento\Quote\Model\Quote */
+$quote = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create('Magento\Quote\Model\Quote');
 $quoteItem = $quote->setCustomerId(
     1
 )->setStoreId(
@@ -47,7 +47,7 @@ $quoteItem = $quote->setCustomerId(
     $product,
     10
 );
-/** @var $quoteItem \Magento\Sales\Model\Quote\Item */
+/** @var $quoteItem \Magento\Quote\Model\Quote\Item */
 $quoteItem->setQty(1);
 $quote->getPayment()->setMethod('checkmo');
 $quote->getBillingAddress();
diff --git a/dev/tests/integration/testsuite/Magento/CustomerImportExport/Model/Export/AddressTest.php b/dev/tests/integration/testsuite/Magento/CustomerImportExport/Model/Export/AddressTest.php
index b509986ad98edbd14e1d967a729ba83fe716f9f2..73012c62e5cfde76deba26e987bca4e5f12ea609 100644
--- a/dev/tests/integration/testsuite/Magento/CustomerImportExport/Model/Export/AddressTest.php
+++ b/dev/tests/integration/testsuite/Magento/CustomerImportExport/Model/Export/AddressTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\CustomerImportExport\Model\Export;
 
 use Magento\CustomerImportExport\Model\Import\Address as ImportAddress;
diff --git a/dev/tests/integration/testsuite/Magento/CustomerImportExport/Model/Import/AddressTest.php b/dev/tests/integration/testsuite/Magento/CustomerImportExport/Model/Import/AddressTest.php
index 64383e2d7eae792ba4cb086c5d8e51cc5504f4d9..e2a0c09921236ec9f1c65b164782296ee1374d81 100644
--- a/dev/tests/integration/testsuite/Magento/CustomerImportExport/Model/Import/AddressTest.php
+++ b/dev/tests/integration/testsuite/Magento/CustomerImportExport/Model/Import/AddressTest.php
@@ -245,7 +245,6 @@ class AddressTest extends \PHPUnit_Framework_TestCase
 
         $entityData = [
             'entity_id' => $addressId,
-            'entity_type_id' => $addressModel->getEntityTypeId(),
             'parent_id' => $customerId,
             'created_at' => $dateTime->now(),
             'updated_at' => $dateTime->now(),
diff --git a/dev/tests/integration/testsuite/Magento/CustomerImportExport/Model/Import/CustomerTest.php b/dev/tests/integration/testsuite/Magento/CustomerImportExport/Model/Import/CustomerTest.php
index 9956a84d8ef08f4cbf591d4904b06690cc9a302f..802d203628aaab984beec52d8200c5f4a23120f4 100644
--- a/dev/tests/integration/testsuite/Magento/CustomerImportExport/Model/Import/CustomerTest.php
+++ b/dev/tests/integration/testsuite/Magento/CustomerImportExport/Model/Import/CustomerTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\CustomerImportExport\Model\Import;
 
 use Magento\Framework\App\Filesystem\DirectoryList;
diff --git a/dev/tests/integration/testsuite/Magento/DesignEditor/Model/_files/design/frontend/Vendor/test/theme.xml b/dev/tests/integration/testsuite/Magento/DesignEditor/Model/_files/design/frontend/Vendor/test/theme.xml
index 49e2a0830a3a453ac9b5eb1ec0c8b71925ea88d8..8eec1253605812e3706d2577533c50cebe7e39cf 100644
--- a/dev/tests/integration/testsuite/Magento/DesignEditor/Model/_files/design/frontend/Vendor/test/theme.xml
+++ b/dev/tests/integration/testsuite/Magento/DesignEditor/Model/_files/design/frontend/Vendor/test/theme.xml
@@ -6,5 +6,4 @@
 -->
 <theme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../../../../../../../lib/internal/Magento/Framework/Config/etc/theme.xsd">
     <title>Default</title>
-    <version>0.1.0</version>
 </theme>
diff --git a/dev/tests/integration/testsuite/Magento/DesignEditor/Model/_files/design/frontend/Vendor/test_child/theme.xml b/dev/tests/integration/testsuite/Magento/DesignEditor/Model/_files/design/frontend/Vendor/test_child/theme.xml
index 33bdbf4bec46947c6e59fa617e8ea8adcba867af..bce33c7f9bfdefda9cb0596c306dd493dcaa2db5 100644
--- a/dev/tests/integration/testsuite/Magento/DesignEditor/Model/_files/design/frontend/Vendor/test_child/theme.xml
+++ b/dev/tests/integration/testsuite/Magento/DesignEditor/Model/_files/design/frontend/Vendor/test_child/theme.xml
@@ -6,6 +6,5 @@
 -->
 <theme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../../../../../../../lib/internal/Magento/Framework/Config/etc/theme.xsd">
     <title>Default Child</title>
-    <version>0.1.0</version>
     <parent>Vendor/test</parent>
 </theme>
diff --git a/dev/tests/integration/testsuite/Magento/DesignEditor/_files/design_editor_active.php b/dev/tests/integration/testsuite/Magento/DesignEditor/_files/design_editor_active.php
index 301550a6e0ef2a0ba7d04c34b2e47d876f5a9fc5..5050bed5211a7a064688234694c125830d0c772e 100644
--- a/dev/tests/integration/testsuite/Magento/DesignEditor/_files/design_editor_active.php
+++ b/dev/tests/integration/testsuite/Magento/DesignEditor/_files/design_editor_active.php
@@ -25,7 +25,6 @@ $theme->setData(
         'area' => 'frontend',
         'parent_id' => null,
         'theme_path' => 'Magento/blank',
-        'theme_version' => '0.1.0',
         'theme_title' => 'Default',
         'preview_image' => 'media/preview_image.jpg',
         'is_featured' => '0',
diff --git a/dev/tests/integration/testsuite/Magento/Directory/Model/ObserverTest.php b/dev/tests/integration/testsuite/Magento/Directory/Model/ObserverTest.php
index 143899361816a3dc12348da871128f9cf35bc8d0..018c8b1c71e89679b86a824bafccf0a881dd1dd0 100644
--- a/dev/tests/integration/testsuite/Magento/Directory/Model/ObserverTest.php
+++ b/dev/tests/integration/testsuite/Magento/Directory/Model/ObserverTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Directory\Model;
 
 use Magento\Framework\ObjectManagerInterface;
diff --git a/dev/tests/integration/testsuite/Magento/Downloadable/_files/order_with_downloadable_product.php b/dev/tests/integration/testsuite/Magento/Downloadable/_files/order_with_downloadable_product.php
index 2bb8ef0c6f2bf4839fa9c2c866f87b94d245c00f..17b240e156d18cadf0f3ffd403172a3ab3cfb11d 100644
--- a/dev/tests/integration/testsuite/Magento/Downloadable/_files/order_with_downloadable_product.php
+++ b/dev/tests/integration/testsuite/Magento/Downloadable/_files/order_with_downloadable_product.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 $billingAddress = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create(
     'Magento\Sales\Model\Order\Address',
     [
diff --git a/dev/tests/integration/testsuite/Magento/Email/Model/TemplateTest.php b/dev/tests/integration/testsuite/Magento/Email/Model/TemplateTest.php
index 3344852fa45c5412ff7245095c2a19395a99048e..a1f054261ad1d8963c4614e426c90e3874ceefe0 100644
--- a/dev/tests/integration/testsuite/Magento/Email/Model/TemplateTest.php
+++ b/dev/tests/integration/testsuite/Magento/Email/Model/TemplateTest.php
@@ -34,7 +34,7 @@ class TemplateTest extends \PHPUnit_Framework_TestCase
                 $objectManager->get('Magento\Framework\Model\Context'),
                 $objectManager->get('Magento\Framework\View\DesignInterface'),
                 $objectManager->get('Magento\Framework\Registry'),
-                $objectManager->get('Magento\Core\Model\App\Emulation'),
+                $objectManager->get('Magento\Store\Model\App\Emulation'),
                 $objectManager->get('Magento\Store\Model\StoreManager'),
                 $objectManager->create('Magento\Framework\Filesystem'),
                 $objectManager->create('Magento\Framework\View\Asset\Repository'),
diff --git a/dev/tests/integration/testsuite/Magento/Email/Model/_files/design/adminhtml/test_default/theme.xml b/dev/tests/integration/testsuite/Magento/Email/Model/_files/design/adminhtml/test_default/theme.xml
index 8da46267b6cc503b98626a5ec4b85ed68c117202..3f5a8d2ecd9561c6c8be5a72fd728789aec01fc6 100644
--- a/dev/tests/integration/testsuite/Magento/Email/Model/_files/design/adminhtml/test_default/theme.xml
+++ b/dev/tests/integration/testsuite/Magento/Email/Model/_files/design/adminhtml/test_default/theme.xml
@@ -7,5 +7,4 @@
 -->
 <theme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../../../../../../lib/internal/Magento/Framework/Config/etc/theme.xsd">
     <title>Default</title>
-    <version>0.1.0</version>
 </theme>
diff --git a/dev/tests/integration/testsuite/Magento/Email/Model/_files/design/frontend/test_default/theme.xml b/dev/tests/integration/testsuite/Magento/Email/Model/_files/design/frontend/test_default/theme.xml
index 8da46267b6cc503b98626a5ec4b85ed68c117202..3f5a8d2ecd9561c6c8be5a72fd728789aec01fc6 100644
--- a/dev/tests/integration/testsuite/Magento/Email/Model/_files/design/frontend/test_default/theme.xml
+++ b/dev/tests/integration/testsuite/Magento/Email/Model/_files/design/frontend/test_default/theme.xml
@@ -7,5 +7,4 @@
 -->
 <theme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../../../../../../lib/internal/Magento/Framework/Config/etc/theme.xsd">
     <title>Default</title>
-    <version>0.1.0</version>
 </theme>
diff --git a/dev/tests/integration/testsuite/Magento/Framework/DB/Adapter/Pdo/MysqlTest.php b/dev/tests/integration/testsuite/Magento/Framework/DB/Adapter/Pdo/MysqlTest.php
index 028007540e460e526eb2bb099785ae2bf0b1babb..5ef77c5a35df7a16d73bd6cc1f27f8e236070302 100644
--- a/dev/tests/integration/testsuite/Magento/Framework/DB/Adapter/Pdo/MysqlTest.php
+++ b/dev/tests/integration/testsuite/Magento/Framework/DB/Adapter/Pdo/MysqlTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Test for an PDO MySQL adapter
  */
diff --git a/dev/tests/integration/testsuite/Magento/Framework/Interception/Fixture/Intercepted.php b/dev/tests/integration/testsuite/Magento/Framework/Interception/Fixture/Intercepted.php
index de68dad400be59536059db46b66e949b65b38638..8625ff972836b0c3cb949bb4c17e5696e34afbbf 100644
--- a/dev/tests/integration/testsuite/Magento/Framework/Interception/Fixture/Intercepted.php
+++ b/dev/tests/integration/testsuite/Magento/Framework/Interception/Fixture/Intercepted.php
@@ -4,48 +4,75 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Interception\Fixture;
 
 class Intercepted extends InterceptedParent implements InterceptedInterface
 {
     protected $_key;
 
+    /**
+     * @SuppressWarnings(PHPMD.ShortMethodName)
+     */
     public function A($param1)
     {
         $this->_key = $param1;
         return $this;
     }
 
+    /**
+     * @SuppressWarnings(PHPMD.ShortMethodName)
+     */
     public function B($param1, $param2)
     {
         return '<B>' . $param1 . $param2 . $this->C($param1) . '</B>';
     }
 
+    /**
+     * @SuppressWarnings(PHPMD.ShortMethodName)
+     */
     public function C($param1)
     {
         return '<C>' . $param1 . '</C>';
     }
 
+    /**
+     * @SuppressWarnings(PHPMD.ShortMethodName)
+     */
     public function D($param1)
     {
         return '<D>' . $this->_key . $param1 . '</D>';
     }
 
+    /**
+     * @SuppressWarnings(PHPMD.ShortMethodName)
+     */
     final public function E($param1)
     {
         return '<E>' . $this->_key . $param1 . '</E>';
     }
 
+    /**
+     * @SuppressWarnings(PHPMD.ShortMethodName)
+     */
     public function F($param1)
     {
         return '<F>' . $param1 . '</F>';
     }
 
+    /**
+     * @SuppressWarnings(PHPMD.ShortMethodName)
+     */
     public function G($param1)
     {
         return '<G>' . $param1 . "</G>";
     }
 
+    /**
+     * @SuppressWarnings(PHPMD.ShortMethodName)
+     */
     public function K($param1)
     {
         return '<K>' . $param1 . '</K>';
diff --git a/dev/tests/integration/testsuite/Magento/Framework/Interception/Fixture/Intercepted/InterfacePlugin.php b/dev/tests/integration/testsuite/Magento/Framework/Interception/Fixture/Intercepted/InterfacePlugin.php
index 5df8f6194e21b30ef8833e08cb4ec4baeba28aff..6537af6d81d661675876e1bb7e56794b9526d562 100644
--- a/dev/tests/integration/testsuite/Magento/Framework/Interception/Fixture/Intercepted/InterfacePlugin.php
+++ b/dev/tests/integration/testsuite/Magento/Framework/Interception/Fixture/Intercepted/InterfacePlugin.php
@@ -15,6 +15,7 @@ class InterfacePlugin
      * @param \Closure $next
      * @param string $param1
      * @return string
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function aroundC(InterceptedInterface $subject, \Closure $next, $param1)
     {
@@ -32,16 +33,25 @@ class InterfacePlugin
         return '<IP:F>' . $subject->D($next($subject->C($param1))) . '</IP:F>';
     }
 
+    /**
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
+     */
     public function beforeG(InterceptedInterface $subject, $param1)
     {
         return ['<IP:bG>' . $param1 . '</IP:bG>'];
     }
 
+    /**
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
+     */
     public function aroundG(InterceptedInterface $subject, \Closure $next, $param1)
     {
         return $next('<IP:G>' . $param1 . '</IP:G>');
     }
 
+    /**
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
+     */
     public function afterG(InterceptedInterface $subject, $result)
     {
         return '<IP:aG>' . $result . '</IP:aG>';
diff --git a/dev/tests/integration/testsuite/Magento/Framework/Interception/Fixture/Intercepted/Plugin.php b/dev/tests/integration/testsuite/Magento/Framework/Interception/Fixture/Intercepted/Plugin.php
index a62fba71a142f612d338050acb60402fa43550db..f8ce0abe8d8b9d0c285df20abfaed1c35e176690 100644
--- a/dev/tests/integration/testsuite/Magento/Framework/Interception/Fixture/Intercepted/Plugin.php
+++ b/dev/tests/integration/testsuite/Magento/Framework/Interception/Fixture/Intercepted/Plugin.php
@@ -15,33 +15,51 @@ class Plugin
      */
     protected $_counter = 0;
 
+    /**
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
+     */
     public function aroundC(Intercepted $subject, \Closure $next, $param1)
     {
         return '<P:C>' . $next($param1) . '</P:C>';
     }
 
+    /**
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
+     */
     public function aroundD(Intercepted $subject, \Closure $next, $param1)
     {
         $this->_counter++;
         return '<P:D>' . $this->_counter . ': ' . $next($param1) . '</P:D>';
     }
 
+    /**
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
+     */
     public function aroundK(Intercepted $subject, \Closure $next, $param1)
     {
         $result = $subject->C($param1);
         return '<P:K>' . $subject->F($result) . '</P:K>';
     }
 
+    /**
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
+     */
     public function beforeG(Intercepted $subject, $param1)
     {
         return ['<P:bG>' . $param1 . '</P:bG>'];
     }
 
+    /**
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
+     */
     public function aroundG(Intercepted $subject, \Closure $next, $param1)
     {
         return $next('<P:G>' . $param1 . '</P:G>');
     }
 
+    /**
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
+     */
     public function afterG(Intercepted $subject, $result)
     {
         return '<P:aG>' . $result . '</P:aG>';
diff --git a/dev/tests/integration/testsuite/Magento/Framework/Interception/Fixture/InterceptedInterface.php b/dev/tests/integration/testsuite/Magento/Framework/Interception/Fixture/InterceptedInterface.php
index 753ad18a32d888ba4307a660714b1d41536fe178..4087d96fe7448748b6749e780c5d3ac598572ca9 100644
--- a/dev/tests/integration/testsuite/Magento/Framework/Interception/Fixture/InterceptedInterface.php
+++ b/dev/tests/integration/testsuite/Magento/Framework/Interception/Fixture/InterceptedInterface.php
@@ -4,11 +4,20 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Interception\Fixture;
 
 interface InterceptedInterface
 {
+    /**
+     * @SuppressWarnings(PHPMD.ShortMethodName)
+     */
     public function C($param1);
 
+    /**
+     * @SuppressWarnings(PHPMD.ShortMethodName)
+     */
     public function F($param1);
 }
diff --git a/dev/tests/integration/testsuite/Magento/Framework/Interception/Fixture/InterceptedParent.php b/dev/tests/integration/testsuite/Magento/Framework/Interception/Fixture/InterceptedParent.php
index 243f5ff826bec4c7a1fab96b1db073549f8ed611..976821372a60ac325d2b5c51ff878a00105f66bf 100644
--- a/dev/tests/integration/testsuite/Magento/Framework/Interception/Fixture/InterceptedParent.php
+++ b/dev/tests/integration/testsuite/Magento/Framework/Interception/Fixture/InterceptedParent.php
@@ -4,15 +4,24 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Interception\Fixture;
 
 class InterceptedParent implements InterceptedParentInterface
 {
+    /**
+     * @SuppressWarnings(PHPMD.ShortMethodName)
+     */
     public function A($param1)
     {
         return 'A' . $param1 . 'A';
     }
 
+    /**
+     * @SuppressWarnings(PHPMD.ShortMethodName)
+     */
     public function B($param1, $param2)
     {
         return $param1 . $param2 . $this->A($param1);
diff --git a/dev/tests/integration/testsuite/Magento/Framework/Interception/Fixture/InterceptedParentInterface.php b/dev/tests/integration/testsuite/Magento/Framework/Interception/Fixture/InterceptedParentInterface.php
index 4e5af1f9bfb0cf609e54b89f2f560a735e72a51d..e2b8d95d4be16bf862a6094904b672b1b1fef852 100644
--- a/dev/tests/integration/testsuite/Magento/Framework/Interception/Fixture/InterceptedParentInterface.php
+++ b/dev/tests/integration/testsuite/Magento/Framework/Interception/Fixture/InterceptedParentInterface.php
@@ -4,9 +4,15 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Interception\Fixture;
 
 interface InterceptedParentInterface
 {
+    /**
+     * @SuppressWarnings(PHPMD.ShortMethodName)
+     */
     public function A($param1);
 }
diff --git a/dev/tests/integration/testsuite/Magento/Framework/Less/File/Collector/AggregatedTest.php b/dev/tests/integration/testsuite/Magento/Framework/Less/File/Collector/AggregatedTest.php
index e673471242dc188416746526982d48ed5a8def67..486b24864741b7a6757d1129b5e2b0466d6be708 100644
--- a/dev/tests/integration/testsuite/Magento/Framework/Less/File/Collector/AggregatedTest.php
+++ b/dev/tests/integration/testsuite/Magento/Framework/Less/File/Collector/AggregatedTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Less\File\Collector;
 
 use Magento\Framework\App\Bootstrap;
diff --git a/dev/tests/integration/testsuite/Magento/Framework/Less/_files/design/frontend/Test/default/theme.xml b/dev/tests/integration/testsuite/Magento/Framework/Less/_files/design/frontend/Test/default/theme.xml
index eace4d551bc8e3eedf22721278b71c4e00a66fa1..43bfd325c120fd39337ceca81ff83e5455568145 100644
--- a/dev/tests/integration/testsuite/Magento/Framework/Less/_files/design/frontend/Test/default/theme.xml
+++ b/dev/tests/integration/testsuite/Magento/Framework/Less/_files/design/frontend/Test/default/theme.xml
@@ -7,6 +7,5 @@
 -->
 <theme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../../../../../../../lib/internal/Magento/Framework/Config/etc/theme.xsd">
     <title>Test Default</title>
-    <version>0.1.0</version>
     <parent>Test/parent</parent>
 </theme>
diff --git a/dev/tests/integration/testsuite/Magento/Framework/Less/_files/design/frontend/Test/parent/theme.xml b/dev/tests/integration/testsuite/Magento/Framework/Less/_files/design/frontend/Test/parent/theme.xml
index 60f61dcdf12dbc4682bf39eeb1f581645a1dd7f5..3b0de54fbeca9419b7c08edfa042bebcb5df5264 100644
--- a/dev/tests/integration/testsuite/Magento/Framework/Less/_files/design/frontend/Test/parent/theme.xml
+++ b/dev/tests/integration/testsuite/Magento/Framework/Less/_files/design/frontend/Test/parent/theme.xml
@@ -7,5 +7,4 @@
 -->
 <theme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../../../../../../../lib/internal/Magento/Framework/Config/etc/theme.xsd">
     <title>Test Parent</title>
-    <version>0.1.0</version>
 </theme>
diff --git a/dev/tests/integration/testsuite/Magento/Framework/Model/Resource/Db/AbstractTest.php b/dev/tests/integration/testsuite/Magento/Framework/Model/Resource/Db/AbstractTest.php
index df6d447b8a902f267400143c5c131216d96f2454..8730fa5f88420e71a973474287186f737c8ab161 100644
--- a/dev/tests/integration/testsuite/Magento/Framework/Model/Resource/Db/AbstractTest.php
+++ b/dev/tests/integration/testsuite/Magento/Framework/Model/Resource/Db/AbstractTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Model\Resource\Db;
 
 class AbstractTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/integration/testsuite/Magento/Framework/Stdlib/Cookie/CookieScopeTest.php b/dev/tests/integration/testsuite/Magento/Framework/Stdlib/Cookie/CookieScopeTest.php
index e552d9e04e8dbc7a69c6b928ec6ec3e86d081d75..de404bc3b42ae039e77d7f478f371b37a52e3cca 100644
--- a/dev/tests/integration/testsuite/Magento/Framework/Stdlib/Cookie/CookieScopeTest.php
+++ b/dev/tests/integration/testsuite/Magento/Framework/Stdlib/Cookie/CookieScopeTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Stdlib\Cookie;
 
 use Magento\Framework\ObjectManagerInterface;
diff --git a/dev/tests/integration/testsuite/Magento/Framework/Stdlib/Cookie/PhpCookieReaderTest.php b/dev/tests/integration/testsuite/Magento/Framework/Stdlib/Cookie/PhpCookieReaderTest.php
index ae239fdf418860d6a0a7d471800f5fca25dff21e..bd8e0b968f0befb09696951bd0a38c0f631f797a 100644
--- a/dev/tests/integration/testsuite/Magento/Framework/Stdlib/Cookie/PhpCookieReaderTest.php
+++ b/dev/tests/integration/testsuite/Magento/Framework/Stdlib/Cookie/PhpCookieReaderTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Stdlib\Cookie;
 
 use Magento\Framework\Stdlib\Cookie\PhpCookieReader;
@@ -52,4 +54,4 @@ class PhpCookieReaderTest extends \PHPUnit_Framework_TestCase
     {
         $_COOKIE = $this->preTestCookies;
     }
-}
\ No newline at end of file
+}
diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/Validator/FactoryTest.php b/dev/tests/integration/testsuite/Magento/Framework/Validator/FactoryTest.php
similarity index 81%
rename from dev/tests/integration/testsuite/Magento/Core/Model/Validator/FactoryTest.php
rename to dev/tests/integration/testsuite/Magento/Framework/Validator/FactoryTest.php
index eeaaba1172a8bf836b52d8e4dd4bead5f5645de3..2a25d44f2b656b0d6a08d07b1404b11b1557c224 100644
--- a/dev/tests/integration/testsuite/Magento/Core/Model/Validator/FactoryTest.php
+++ b/dev/tests/integration/testsuite/Magento/Framework/Validator/FactoryTest.php
@@ -1,11 +1,11 @@
 <?php
 /**
- * Integration test for \Magento\Core\Model\Validator\Factory
+ * Integration test for \Magento\Framework\Validator\Factory
  *
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Core\Model\Validator;
+namespace Magento\Framework\Validator;
 
 class FactoryTest extends \PHPUnit_Framework_TestCase
 {
@@ -17,8 +17,8 @@ class FactoryTest extends \PHPUnit_Framework_TestCase
     public function testGetValidatorConfig()
     {
         $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager();
-        /** @var \Magento\Core\Model\Validator\Factory $factory */
-        $factory = $objectManager->get('Magento\Core\Model\Validator\Factory');
+        /** @var \Magento\Framework\Validator\Factory $factory */
+        $factory = $objectManager->get('Magento\Framework\Validator\Factory');
         $this->assertInstanceOf('Magento\Framework\Validator\Config', $factory->getValidatorConfig());
         // Check that default translator was set
         $translator = \Magento\Framework\Validator\AbstractValidator::getDefaultTranslator();
diff --git a/dev/tests/integration/testsuite/Magento/Framework/View/Design/Theme/ValidatorTest.php b/dev/tests/integration/testsuite/Magento/Framework/View/Design/Theme/ValidatorTest.php
index 6eeef80b390be34c60325b0f81d7894dd9df2eee..c6890fcf47e7bee818fa506e98eb3232f33c28d0 100644
--- a/dev/tests/integration/testsuite/Magento/Framework/View/Design/Theme/ValidatorTest.php
+++ b/dev/tests/integration/testsuite/Magento/Framework/View/Design/Theme/ValidatorTest.php
@@ -65,7 +65,6 @@ class ValidatorTest extends \PHPUnit_Framework_TestCase
         return [
             'theme_code' => 'space',
             'theme_title' => 'Space theme',
-            'theme_version' => '0.1.0',
             'parent_theme' => null,
             'theme_path' => 'default/space',
             'preview_image' => 'images/preview.png'
@@ -81,8 +80,7 @@ class ValidatorTest extends \PHPUnit_Framework_TestCase
     {
         return [
             'theme_code' => 'space',
-            'theme_title' => 'Space theme',
-            'theme_version' => 'last version',
+            'theme_title' => '',
             'parent_theme' => null,
             'theme_path' => 'default/space',
             'preview_image' => 'images/preview.png'
diff --git a/dev/tests/integration/testsuite/Magento/Framework/View/Layout/Reader/BlockTest.php b/dev/tests/integration/testsuite/Magento/Framework/View/Layout/Reader/BlockTest.php
new file mode 100644
index 0000000000000000000000000000000000000000..3bd3e7f3024f1ea9039dd58305c6e1026ce448ca
--- /dev/null
+++ b/dev/tests/integration/testsuite/Magento/Framework/View/Layout/Reader/BlockTest.php
@@ -0,0 +1,100 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+namespace Magento\Framework\View\Layout\Reader;
+
+class BlockTest extends \PHPUnit_Framework_TestCase
+{
+    const IDX_TYPE = 0;
+    const IDX_PARENT = 2;
+
+    /**
+     * @var Block
+     */
+    private $block;
+
+    /**
+     * @var Context
+     */
+    private $readerContext;
+
+    /**
+     * @var string
+     */
+    private $blockName = 'test.block';
+
+    /**
+     * @var string
+     */
+    private $childBlockName = 'test.child.block';
+
+    public function setUp()
+    {
+        $this->block = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create(
+            'Magento\Framework\View\Layout\Reader\Block'
+        );
+        $this->readerContext = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create(
+            'Magento\Framework\View\Layout\Reader\Context'
+        );
+    }
+
+    public function testInterpretBlockDirective()
+    {
+        $pageXml = new \Magento\Framework\View\Layout\Element(
+            __DIR__ . '/_files/_layout_update_block.xml', 0, true
+        );
+        $parentElement = new \Magento\Framework\View\Layout\Element('<page></page>');
+
+        foreach ($pageXml->xpath('body/block') as $blockElement) {
+            $this->assertTrue(in_array($blockElement->getName(), $this->block->getSupportedNodes()));
+            $this->block->interpret($this->readerContext, $blockElement, $parentElement);
+        }
+
+        $structure = $this->readerContext->getScheduledStructure();
+        $this->assertArrayHasKey($this->blockName, $structure->getStructure());
+        $this->assertEquals('block', $structure->getStructure()[$this->blockName][self::IDX_TYPE]);
+
+        $resultElementData = $structure->getStructureElementData($this->blockName);
+
+        $this->assertEquals(
+            ['group' => 'test.group', 'class' => 'Dummy\Class', 'template' => 'test.phtml', 'ttl' => 3],
+            $resultElementData['attributes']
+        );
+        $this->assertEquals(
+            ['test_arg' => ['name' => 'test_arg', 'xsi:type' => 'string', 'value' => 'test-argument-value']],
+            $resultElementData['arguments']
+        );
+
+        $this->assertEquals('block', $structure->getStructure()[$this->childBlockName][self::IDX_TYPE]);
+        $this->assertEquals($this->blockName, $structure->getStructure()[$this->childBlockName][self::IDX_PARENT]);
+    }
+
+    /**
+     * @depends testInterpretBlockDirective
+     */
+    public function testInterpretReferenceBlockDirective()
+    {
+        $pageXml = new \Magento\Framework\View\Layout\Element(
+            __DIR__ . '/_files/_layout_update_reference.xml', 0, true
+        );
+        $parentElement = new \Magento\Framework\View\Layout\Element('<page></page>');
+
+        foreach ($pageXml->xpath('body/*') as $element) {
+            $this->assertTrue(in_array($element->getName(), $this->block->getSupportedNodes()));
+            $this->block->interpret($this->readerContext, $element, $parentElement);
+        }
+
+        $structure = $this->readerContext->getScheduledStructure();
+        $this->assertArrayHasKey($this->blockName, $structure->getStructure());
+        $this->assertEquals('block', $structure->getStructure()[$this->blockName][self::IDX_TYPE]);
+
+        $resultElementData = $structure->getStructureElementData($this->blockName);
+
+        $this->assertEquals(
+            ['test_arg' => ['name' => 'test_arg', 'xsi:type' => 'string', 'value' => 'test-argument-value']],
+            $resultElementData['arguments']
+        );
+    }
+}
diff --git a/dev/tests/integration/testsuite/Magento/Framework/View/Layout/Reader/_files/_layout_update_block.xml b/dev/tests/integration/testsuite/Magento/Framework/View/Layout/Reader/_files/_layout_update_block.xml
new file mode 100644
index 0000000000000000000000000000000000000000..01cf6bf5dd2b399be978afe15cbcf1888e7d1581
--- /dev/null
+++ b/dev/tests/integration/testsuite/Magento/Framework/View/Layout/Reader/_files/_layout_update_block.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0"?>
+<!--
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+-->
+<page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../../../../../lib/internal/Magento/Framework/View/Layout/etc/page_configuration.xsd">
+    <body>
+        <block class="Dummy\Class" name="test.block" group="test.group" template="test.phtml" ttl="3">
+            <arguments>
+                <argument name="test_arg" xsi:type="string">test-argument-value</argument>
+            </arguments>
+            <block class="Dummy\Class" name="test.child.block"/>
+        </block>
+    </body>
+</page>
diff --git a/dev/tests/integration/testsuite/Magento/Framework/View/Layout/Reader/_files/_layout_update_reference.xml b/dev/tests/integration/testsuite/Magento/Framework/View/Layout/Reader/_files/_layout_update_reference.xml
new file mode 100644
index 0000000000000000000000000000000000000000..f25d5cecda8a3d9a3a57f3876eda8dc28c77c686
--- /dev/null
+++ b/dev/tests/integration/testsuite/Magento/Framework/View/Layout/Reader/_files/_layout_update_reference.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0"?>
+<!--
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+-->
+<page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../../../../../lib/internal/Magento/Framework/View/Layout/etc/page_configuration.xsd">
+    <body>
+        <block class="Dummy\Class" name="test.block"/>
+        <referenceBlock name="test.block">
+            <arguments>
+                <argument name="test_arg" xsi:type="string">test-argument-value</argument>
+            </arguments>
+        </referenceBlock>
+    </body>
+</page>
diff --git a/dev/tests/integration/testsuite/Magento/Framework/View/Page/Config/Reader/HtmlTest.php b/dev/tests/integration/testsuite/Magento/Framework/View/Page/Config/Reader/HtmlTest.php
new file mode 100644
index 0000000000000000000000000000000000000000..0ef647443ec1c810f280f45fe816f8e3de7f73dd
--- /dev/null
+++ b/dev/tests/integration/testsuite/Magento/Framework/View/Page/Config/Reader/HtmlTest.php
@@ -0,0 +1,27 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+namespace Magento\Framework\View\Page\Config\Reader;
+
+class HtmlTest extends \PHPUnit_Framework_TestCase
+{
+    public function testInterpret()
+    {
+        /** @var \Magento\Framework\View\Layout\Reader\Context $readerContext */
+        $readerContext = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create(
+            'Magento\Framework\View\Layout\Reader\Context'
+        );
+        $pageXml = new \Magento\Framework\View\Layout\Element(__DIR__ . '/_files/_layout_update.xml', 0, true);
+        $parentElement = new \Magento\Framework\View\Layout\Element('<page></page>');
+
+        $html = new Html();
+        foreach ($pageXml->xpath('html') as $htmlElement) {
+            $html->interpret($readerContext, $htmlElement, $parentElement);
+        }
+
+        $structure = $readerContext->getPageConfigStructure();
+        $this->assertEquals(['html' => ['test-name' => 'test-value']], $structure->getElementAttributes());
+    }
+}
diff --git a/dev/tests/integration/testsuite/Magento/Framework/View/Page/Config/Reader/_files/_layout_update.xml b/dev/tests/integration/testsuite/Magento/Framework/View/Page/Config/Reader/_files/_layout_update.xml
new file mode 100644
index 0000000000000000000000000000000000000000..797bffb7161d960e5a558b0cfaa7707f08757394
--- /dev/null
+++ b/dev/tests/integration/testsuite/Magento/Framework/View/Page/Config/Reader/_files/_layout_update.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0"?>
+<!--
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+-->
+<page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../../../../../../lib/internal/Magento/Framework/View/Layout/etc/page_configuration.xsd">
+    <html>
+        <attribute name="test-name" value="test-value"/>
+    </html>
+</page>
diff --git a/dev/tests/integration/testsuite/Magento/Framework/View/_files/Magento/ModuleA/view/adminhtml/product/product.css b/dev/tests/integration/testsuite/Magento/Framework/View/_files/Magento/ModuleA/view/adminhtml/product/product.css
index 4a337591e2052ca70ab43a26460226acc00c6bbf..88aa062ced50c5a6481fa2bfebb54160f5ba1e29 100644
--- a/dev/tests/integration/testsuite/Magento/Framework/View/_files/Magento/ModuleA/view/adminhtml/product/product.css
+++ b/dev/tests/integration/testsuite/Magento/Framework/View/_files/Magento/ModuleA/view/adminhtml/product/product.css
@@ -119,7 +119,7 @@
     text-align: center;
     text-transform: uppercase;
     color: #a69a8f;
-    font: 18px/110px 'CallunaSans', Arial, sans-serif;
+    font: 18px/110px Arial, sans-serif;
     font-weight: 500;
     z-index: 3;
 }
diff --git a/dev/tests/integration/testsuite/Magento/Framework/View/_files/fallback/design/frontend/Vendor/custom_theme/theme.xml b/dev/tests/integration/testsuite/Magento/Framework/View/_files/fallback/design/frontend/Vendor/custom_theme/theme.xml
index df103015b8566af3f9da305b46f0d7279259808a..5b5a234395f58f498587aa66219379b4b063ad62 100644
--- a/dev/tests/integration/testsuite/Magento/Framework/View/_files/fallback/design/frontend/Vendor/custom_theme/theme.xml
+++ b/dev/tests/integration/testsuite/Magento/Framework/View/_files/fallback/design/frontend/Vendor/custom_theme/theme.xml
@@ -6,6 +6,5 @@
 -->
 <theme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../../../../../../../../lib/internal/Magento/Framework/Config/etc/theme.xsd">
     <title>Custom Theme</title>
-    <version>0.1.0</version>
     <parent>Vendor/default</parent>
 </theme>
diff --git a/dev/tests/integration/testsuite/Magento/Framework/View/_files/fallback/design/frontend/Vendor/custom_theme2/theme.xml b/dev/tests/integration/testsuite/Magento/Framework/View/_files/fallback/design/frontend/Vendor/custom_theme2/theme.xml
index 6ab9b50fa079dfec8b98d73ec1e7098114e11dca..1963666ae0d495d2c3f32126f75261e388222513 100644
--- a/dev/tests/integration/testsuite/Magento/Framework/View/_files/fallback/design/frontend/Vendor/custom_theme2/theme.xml
+++ b/dev/tests/integration/testsuite/Magento/Framework/View/_files/fallback/design/frontend/Vendor/custom_theme2/theme.xml
@@ -6,6 +6,5 @@
 -->
 <theme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../../../../../../../../lib/internal/Magento/Framework/Config/etc/theme.xsd">
     <title>Custom Theme 2</title>
-    <version>0.1.0</version>
     <parent>Vendor/custom_theme</parent>
 </theme>
diff --git a/dev/tests/integration/testsuite/Magento/Framework/View/_files/fallback/design/frontend/Vendor/default/theme.xml b/dev/tests/integration/testsuite/Magento/Framework/View/_files/fallback/design/frontend/Vendor/default/theme.xml
index fad8f7a8fe3920acf80dbb815a57a215b53155d5..3e4dddafa133abadf9114081b3b20737379eba5b 100644
--- a/dev/tests/integration/testsuite/Magento/Framework/View/_files/fallback/design/frontend/Vendor/default/theme.xml
+++ b/dev/tests/integration/testsuite/Magento/Framework/View/_files/fallback/design/frontend/Vendor/default/theme.xml
@@ -6,5 +6,4 @@
 -->
 <theme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../../../../../../../../lib/internal/Magento/Framework/Config/etc/theme.xsd">
     <title>Default</title>
-    <version>0.1.0</version>
 </theme>
diff --git a/dev/tests/integration/testsuite/Magento/Framework/View/_files/fallback/design/frontend/Vendor/standalone_theme/theme.xml b/dev/tests/integration/testsuite/Magento/Framework/View/_files/fallback/design/frontend/Vendor/standalone_theme/theme.xml
index 9078b7485472fe12cdc64983cd6840606343680a..00c7823f191eb403845daf04499a741362819bb8 100644
--- a/dev/tests/integration/testsuite/Magento/Framework/View/_files/fallback/design/frontend/Vendor/standalone_theme/theme.xml
+++ b/dev/tests/integration/testsuite/Magento/Framework/View/_files/fallback/design/frontend/Vendor/standalone_theme/theme.xml
@@ -6,5 +6,4 @@
 -->
 <theme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../../../../../../../../lib/internal/Magento/Framework/Config/etc/theme.xsd">
     <title>Standalone Theme</title>
-    <version>0.1.0</version>
 </theme>
diff --git a/dev/tests/integration/testsuite/Magento/GiftMessage/_files/quote_with_item_message_rollback.php b/dev/tests/integration/testsuite/Magento/GiftMessage/_files/quote_with_item_message_rollback.php
index f0924ef1515a890e1d5dcd2e4954d6d0f0b14801..70df26df8000c695d94a7dfdbe890ddc638ea2c2 100644
--- a/dev/tests/integration/testsuite/Magento/GiftMessage/_files/quote_with_item_message_rollback.php
+++ b/dev/tests/integration/testsuite/Magento/GiftMessage/_files/quote_with_item_message_rollback.php
@@ -8,7 +8,7 @@ $registry = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Ma
 $registry->unregister('isSecureArea');
 $registry->register('isSecureArea', true);
 $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager();
-$quote = $objectManager->create('Magento\Sales\Model\Quote');
+$quote = $objectManager->create('Magento\Quote\Model\Quote');
 $quote->load('test_order_item_with_message', 'reserved_order_id');
 $message = $objectManager->create('Magento\GiftMessage\Model\Message');
 $product = $objectManager->create('Magento\Catalog\Model\Product');
diff --git a/dev/tests/integration/testsuite/Magento/GiftMessage/_files/quote_with_message.php b/dev/tests/integration/testsuite/Magento/GiftMessage/_files/quote_with_message.php
index 18d51745c8843abe9a01e4970251988eb2b64b17..848b8d256241769a30cdd4f1a4eb6ba38e6bf68d 100644
--- a/dev/tests/integration/testsuite/Magento/GiftMessage/_files/quote_with_message.php
+++ b/dev/tests/integration/testsuite/Magento/GiftMessage/_files/quote_with_message.php
@@ -13,8 +13,8 @@ $message->setRecipient('Mercutio');
 $message->setMessage('I thought all for the best.');
 $message->save();
 
-/** @var \Magento\Sales\Model\Quote $quote */
-$quote = $objectManager->create('Magento\Sales\Model\Quote');
+/** @var \Magento\Quote\Model\Quote $quote */
+$quote = $objectManager->create('Magento\Quote\Model\Quote');
 $quote->setData(
     [
         'store_id' => 1,
diff --git a/dev/tests/integration/testsuite/Magento/GiftMessage/_files/quote_with_message_rollback.php b/dev/tests/integration/testsuite/Magento/GiftMessage/_files/quote_with_message_rollback.php
index 10ccb1bc7dde0d3eb21e03cdcf9f315f6b6bb637..42ae5826a8e72e9d515bb6c52f71003b108c720f 100644
--- a/dev/tests/integration/testsuite/Magento/GiftMessage/_files/quote_with_message_rollback.php
+++ b/dev/tests/integration/testsuite/Magento/GiftMessage/_files/quote_with_message_rollback.php
@@ -6,8 +6,8 @@
 
 $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager();
 
-/** @var \Magento\Sales\Model\Quote $quote */
-$quote = $objectManager->create('Magento\Sales\Model\Quote');
+/** @var \Magento\Quote\Model\Quote $quote */
+$quote = $objectManager->create('Magento\Quote\Model\Quote');
 $quote->load('message_order_21', 'reserved_order_id');
 
 /** @var \Magento\GiftMessage\Model\Message $message */
diff --git a/dev/tests/integration/testsuite/Magento/ImportExport/Controller/Adminhtml/Import/HttpFactoryMock.php b/dev/tests/integration/testsuite/Magento/ImportExport/Controller/Adminhtml/Import/HttpFactoryMock.php
new file mode 100644
index 0000000000000000000000000000000000000000..ab162c5011bfe2295d3232977c67a5eeaa1b67b7
--- /dev/null
+++ b/dev/tests/integration/testsuite/Magento/ImportExport/Controller/Adminhtml/Import/HttpFactoryMock.php
@@ -0,0 +1,16 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+namespace Magento\ImportExport\Controller\Adminhtml\Import;
+
+use Magento\Framework\HTTP\Adapter\FileTransferFactory;
+
+class HttpFactoryMock extends FileTransferFactory
+{
+    public function create(array $options = [])
+    {
+        return new \Magento\Framework\Validator\NotEmpty();
+    }
+}
diff --git a/dev/tests/integration/testsuite/Magento/ImportExport/Controller/Adminhtml/Import/ValidateTest.php b/dev/tests/integration/testsuite/Magento/ImportExport/Controller/Adminhtml/Import/ValidateTest.php
new file mode 100644
index 0000000000000000000000000000000000000000..9f0fac2a40100c5e99db8a41a7e87ab33d8c9777
--- /dev/null
+++ b/dev/tests/integration/testsuite/Magento/ImportExport/Controller/Adminhtml/Import/ValidateTest.php
@@ -0,0 +1,69 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+namespace Magento\ImportExport\Controller\Adminhtml\Import;
+use Magento\Framework\Filesystem\DirectoryList;
+
+/**
+ * @magentoAppArea adminhtml
+ */
+class ValidateTest extends \Magento\Backend\Utility\Controller
+{
+    /**
+     * @backupGlobals enabled
+     * @magentoDbIsolation enabled
+     */
+    public function testFieldStateAfterValidation()
+    {
+        $this->getRequest()->setParam('isAjax', true);
+        $this->getRequest()->setMethod('POST');
+        $_SERVER['HTTP_X_REQUESTED_WITH'] = 'XMLHttpRequest';
+
+        /** @var $formKey \Magento\Framework\Data\Form\FormKey */
+        $formKey = $this->_objectManager->get('Magento\Framework\Data\Form\FormKey');
+        $this->getRequest()->setPost('form_key', $formKey->getFormKey());
+        $this->getRequest()->setPost('entity', 'catalog_product');
+        $this->getRequest()->setPost('behavior', 'replace');
+
+
+        $name = 'catalog_product.csv';
+
+        /** @var \Magento\TestFramework\App\Filesystem $filesystem */
+        $filesystem = $this->_objectManager->get('Magento\Framework\Filesystem');
+        $tmpDir = $filesystem->getDirectoryWrite(DirectoryList::SYS_TMP);
+        $subDir = str_replace('\\', '_', __CLASS__);
+        $tmpDir->create($subDir);
+        $target = $tmpDir->getAbsolutePath("{$subDir}/{$name}");
+        copy(__DIR__ . "/_files/{$name}", $target);
+
+        $_FILES = [
+            'import_file' => [
+                'name' => $name,
+                'type' => 'text/csv',
+                'tmp_name' => $target,
+                'error' => 0,
+                'size' => filesize($target)
+            ]
+        ];
+
+        $this->_objectManager->configure(
+            [
+                'preferences' => [
+                    'Magento\Framework\HTTP\Adapter\FileTransferFactory' =>
+                        'Magento\ImportExport\Controller\Adminhtml\Import\HttpFactoryMock'
+                    ]
+            ]
+        );
+
+        $this->dispatch('backend/admin/import/validate');
+
+        $this->assertContains('File is valid', $this->getResponse()->getBody());
+        $this->assertNotContains('File was not uploaded', $this->getResponse()->getBody());
+        $this->assertNotRegExp(
+            '/clear[^\[]*\[[^\]]*(import_file|import_image_archive)[^\]]*\]/m',
+            $this->getResponse()->getBody()
+        );
+    }
+}
diff --git a/dev/tests/integration/testsuite/Magento/ImportExport/Controller/Adminhtml/Import/_files/catalog_product.csv b/dev/tests/integration/testsuite/Magento/ImportExport/Controller/Adminhtml/Import/_files/catalog_product.csv
new file mode 100644
index 0000000000000000000000000000000000000000..84e87317ec5bba48bd856541f9a7494b78472197
--- /dev/null
+++ b/dev/tests/integration/testsuite/Magento/ImportExport/Controller/Adminhtml/Import/_files/catalog_product.csv
@@ -0,0 +1,3 @@
+sku,_store,_attribute_set,_type,_category,_root_category,_product_websites,color,cost,country_of_manufacture,created_at,custom_design,custom_design_from,custom_design_to,custom_layout_update,description,gallery,gift_message_available,gift_wrapping_available,gift_wrapping_price,has_options,image,image_label,is_returnable,manufacturer,meta_description,meta_keyword,meta_title,minimal_price,msrp,msrp_display_actual_price_type,name,news_from_date,news_to_date,options_container,page_layout,price,quantity_and_stock_status,related_tgtr_position_behavior,related_tgtr_position_limit,required_options,short_description,small_image,small_image_label,special_from_date,special_price,special_to_date,status,tax_class_id,thumbnail,thumbnail_label,updated_at,upsell_tgtr_position_behavior,upsell_tgtr_position_limit,url_key,url_path,visibility,weight,qty,min_qty,use_config_min_qty,is_qty_decimal,backorders,use_config_backorders,min_sale_qty,use_config_min_sale_qty,max_sale_qty,use_config_max_sale_qty,is_in_stock,notify_stock_qty,use_config_notify_stock_qty,manage_stock,use_config_manage_stock,use_config_qty_increments,qty_increments,use_config_enable_qty_inc,enable_qty_increments,is_decimal_divided,website_id,_related_sku,_related_position,_crosssell_sku,_crosssell_position,_upsell_sku,_upsell_position,_tier_price_website,_tier_price_customer_group,_tier_price_qty,_tier_price_price,_group_price_website,_group_price_customer_group,_group_price_price,_media_attribute_id,_media_image,_media_label,_media_position,_media_is_disabled,_associated_sku,_associated_default_qty,_associated_position
+"simple product 1",,Default,simple,,,base,,,,"2014-12-25 19:52:47",,,,,,,,,,0,,,"Use config",,"simple product 1 ","simple product 1","simple product 1",,,,"simple product 1",,,"Block after Info Column",,100.0000,"In Stock",,,0,,,,,,,1,2,,,"2014-12-25 19:52:47",,,simple-product-1,,4,,123.0000,0.0000,1,0,0,1,1.0000,1,0.0000,1,1,,1,1,0,1,0.0000,1,0,0,1,,,,,,,,,,,,,,,,,,,,,
+"simple product 2",,Default,simple,,,base,,,,"2014-12-25 19:53:14",,,,,,,,,,0,,,"Use config",,"simple product 2 ","simple product 2","simple product 2",,,,"simple product 2",,,"Block after Info Column",,200.0000,"In Stock",,,0,,,,,,,1,2,,,"2014-12-25 19:53:14",,,simple-product-2,,4,,234.0000,0.0000,1,0,0,1,1.0000,1,0.0000,1,1,,1,1,0,1,0.0000,1,0,0,1,,,,,,,,,,,,,,,,,,,,,
diff --git a/dev/tests/integration/testsuite/Magento/ImportExport/Model/Export/EntityAbstractTest.php b/dev/tests/integration/testsuite/Magento/ImportExport/Model/Export/EntityAbstractTest.php
index 0d41f9bd54d3349ce2f58fbbca5de3b3a05c25ae..3c445575a6fdaff22b07b36ebe0a5bf565769369 100644
--- a/dev/tests/integration/testsuite/Magento/ImportExport/Model/Export/EntityAbstractTest.php
+++ b/dev/tests/integration/testsuite/Magento/ImportExport/Model/Export/EntityAbstractTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Test for abstract export model
  */
diff --git a/dev/tests/integration/testsuite/Magento/Multishipping/Block/Checkout/Address/SelectTest.php b/dev/tests/integration/testsuite/Magento/Multishipping/Block/Checkout/Address/SelectTest.php
index 49cadf9818468612d802b504d60ab0a781547290..f8d1592526586595cfc4a0876cd54d1acecfd03f 100644
--- a/dev/tests/integration/testsuite/Magento/Multishipping/Block/Checkout/Address/SelectTest.php
+++ b/dev/tests/integration/testsuite/Magento/Multishipping/Block/Checkout/Address/SelectTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Multishipping\Block\Checkout\Address;
 
 use Magento\TestFramework\Helper\Bootstrap;
diff --git a/dev/tests/integration/testsuite/Magento/Multishipping/Block/Checkout/AddressesTest.php b/dev/tests/integration/testsuite/Magento/Multishipping/Block/Checkout/AddressesTest.php
index c333dc0244ad5054bc262172b950e6c6d216a4e7..8b6079125f5760362c6a28ae4148639ec25d7c7d 100644
--- a/dev/tests/integration/testsuite/Magento/Multishipping/Block/Checkout/AddressesTest.php
+++ b/dev/tests/integration/testsuite/Magento/Multishipping/Block/Checkout/AddressesTest.php
@@ -37,9 +37,9 @@ class AddressesTest extends \PHPUnit_Framework_TestCase
         $customerSession = $this->_objectManager->get('Magento\Customer\Model\Session');
         $customerSession->setCustomerData($customerData);
 
-        /** @var \Magento\Sales\Model\Resource\Quote\Collection $quoteCollection */
-        $quoteCollection = $this->_objectManager->get('Magento\Sales\Model\Resource\Quote\Collection');
-        /** @var $quote \Magento\Sales\Model\Quote */
+        /** @var \Magento\Quote\Model\Resource\Quote\Collection $quoteCollection */
+        $quoteCollection = $this->_objectManager->get('Magento\Quote\Model\Resource\Quote\Collection');
+        /** @var $quote \Magento\Quote\Model\Quote */
         $quote = $quoteCollection->getLastItem();
 
         /** @var $checkoutSession \Magento\Checkout\Model\Session */
diff --git a/dev/tests/integration/testsuite/Magento/Multishipping/Block/Checkout/OverviewTest.php b/dev/tests/integration/testsuite/Magento/Multishipping/Block/Checkout/OverviewTest.php
index c75e8e2f8ea0d442473ceb5b7a05c58199f07b4a..273b2a0de635195f6412854472ff2a065af95ae1 100644
--- a/dev/tests/integration/testsuite/Magento/Multishipping/Block/Checkout/OverviewTest.php
+++ b/dev/tests/integration/testsuite/Magento/Multishipping/Block/Checkout/OverviewTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Multishipping\Block\Checkout;
 
 /**
@@ -47,14 +50,14 @@ class OverviewTest extends \PHPUnit_Framework_TestCase
 
     public function testGetRowItemHtml()
     {
-        /** @var $item \Magento\Sales\Model\Quote\Item */
-        $item = $this->_objectManager->create('Magento\Sales\Model\Quote\Item');
+        /** @var $item \Magento\Quote\Model\Quote\Item */
+        $item = $this->_objectManager->create('Magento\Quote\Model\Quote\Item');
         /** @var $product \Magento\Catalog\Model\Product */
         $product = $this->_objectManager->create('Magento\Catalog\Model\Product');
         $product->load(1);
         $item->setProduct($product);
-        /** @var $quote \Magento\Sales\Model\Quote */
-        $quote = $this->_objectManager->create('Magento\Sales\Model\Quote');
+        /** @var $quote \Magento\Quote\Model\Quote */
+        $quote = $this->_objectManager->create('Magento\Quote\Model\Quote');
         $item->setQuote($quote);
         // assure that default renderer was obtained
         $this->assertSelectCount('.product.name a', 1, $this->_block->getRowItemHtml($item));
diff --git a/dev/tests/integration/testsuite/Magento/Multishipping/Controller/CheckoutTest.php b/dev/tests/integration/testsuite/Magento/Multishipping/Controller/CheckoutTest.php
index f507e66ebe2674dd1d3214c7eb7bdb62f17ba510..e682d9fb6b5a4079828cbd0f7e4cc63fc8aa851c 100644
--- a/dev/tests/integration/testsuite/Magento/Multishipping/Controller/CheckoutTest.php
+++ b/dev/tests/integration/testsuite/Magento/Multishipping/Controller/CheckoutTest.php
@@ -24,8 +24,8 @@ class CheckoutTest extends \Magento\TestFramework\TestCase\AbstractController
      */
     public function testOverviewAction()
     {
-        /** @var $quote \Magento\Sales\Model\Quote */
-        $quote = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create('Magento\Sales\Model\Quote');
+        /** @var $quote \Magento\Quote\Model\Quote */
+        $quote = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create('Magento\Quote\Model\Quote');
         $quote->load('test01', 'reserved_order_id');
 
         \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Checkout\Model\Session')
diff --git a/dev/tests/integration/testsuite/Magento/Newsletter/Helper/DataTest.php b/dev/tests/integration/testsuite/Magento/Newsletter/Helper/DataTest.php
new file mode 100644
index 0000000000000000000000000000000000000000..52a85916e442101e3c5aba8a3ea4ce21e580a82d
--- /dev/null
+++ b/dev/tests/integration/testsuite/Magento/Newsletter/Helper/DataTest.php
@@ -0,0 +1,46 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+namespace Magento\Newsletter\Helper;
+
+class DataTest extends \PHPUnit_Framework_TestCase
+{
+    /**
+     * @var \Magento\TestFramework\ObjectManager
+     */
+    protected $_objectManager;
+
+    /**
+     * @var \Magento\Newsletter\Model\Subscriber
+     */
+    protected $_subscriber;
+
+    protected function setUp()
+    {
+        $this->_objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager();
+        $this->_subscriber = $this->_objectManager->get('Magento\Newsletter\Model\Subscriber');
+    }
+
+    /**
+     * @magentoAppIsolation enabled
+     */
+    public function testGetConfirmationUrl()
+    {
+        $url = $this->_objectManager->get('Magento\Newsletter\Helper\Data')->getConfirmationUrl($this->_subscriber);
+        $this->assertTrue(strpos($url, 'newsletter/subscriber/confirm') > 0);
+        $this->assertFalse(strpos($url, 'admin'));
+    }
+
+    /**
+     * @magentoAppIsolation enabled
+     */
+    public function testGetUnsubscribeUrl()
+    {
+        $url = $this->_objectManager->get('Magento\Newsletter\Helper\Data')->getUnsubscribeUrl($this->_subscriber);
+        $this->assertTrue(strpos($url, 'newsletter/subscriber/unsubscribe') > 0);
+        $this->assertFalse(strpos($url, 'admin'));
+    }
+
+}
diff --git a/dev/tests/integration/testsuite/Magento/Sales/Model/Observer/Frontend/Quote/Address/CollectTotalsTest.php b/dev/tests/integration/testsuite/Magento/Quote/Model/Observer/Frontend/Quote/Address/CollectTotalsTest.php
similarity index 87%
rename from dev/tests/integration/testsuite/Magento/Sales/Model/Observer/Frontend/Quote/Address/CollectTotalsTest.php
rename to dev/tests/integration/testsuite/Magento/Quote/Model/Observer/Frontend/Quote/Address/CollectTotalsTest.php
index 2860be496c487a5af8b94856a4c95ac100826c75..ea738d9cf254f76c2a6e18f81bfe15b15a73f230 100644
--- a/dev/tests/integration/testsuite/Magento/Sales/Model/Observer/Frontend/Quote/Address/CollectTotalsTest.php
+++ b/dev/tests/integration/testsuite/Magento/Quote/Model/Observer/Frontend/Quote/Address/CollectTotalsTest.php
@@ -3,19 +3,19 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Observer\Frontend\Quote\Address;
+namespace Magento\Quote\Model\Observer\Frontend\Quote\Address;
 
 class CollectTotalsTest extends \PHPUnit_Framework_TestCase
 {
     /**
-     * @var \Magento\Sales\Model\Observer\Frontend\Quote\Address\CollectTotals
+     * @var \Magento\Quote\Model\Observer\Frontend\Quote\Address\CollectTotals
      */
     protected $model;
 
     protected function setUp()
     {
         $this->model = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create(
-            'Magento\Sales\Model\Observer\Frontend\Quote\Address\CollectTotals'
+            'Magento\Quote\Model\Observer\Frontend\Quote\Address\CollectTotals'
         );
     }
 
@@ -25,7 +25,7 @@ class CollectTotalsTest extends \PHPUnit_Framework_TestCase
      * @magentoDataFixture Magento/Customer/_files/customer.php
      * @magentoDataFixture Magento/Sales/_files/quote.php
      *
-     * @covers \Magento\Sales\Model\Observer\Frontend\Quote\Address\CollectTotals::dispatch
+     * @covers \Magento\Quote\Model\Observer\Frontend\Quote\Address\CollectTotals::dispatch
      */
     public function testChangeQuoteCustomerGroupIdForCustomerWithDisabledAutomaticGroupChange()
     {
@@ -43,8 +43,8 @@ class CollectTotalsTest extends \PHPUnit_Framework_TestCase
         $customerRepository = $objectManager->create('Magento\Customer\Api\CustomerRepositoryInterface');
         $customerData = $customerRepository->getById($customer->getId());
 
-        /** @var $quote \Magento\Sales\Model\Quote */
-        $quote = $objectManager->create('Magento\Sales\Model\Quote');
+        /** @var $quote \Magento\Quote\Model\Quote */
+        $quote = $objectManager->create('Magento\Quote\Model\Quote');
         $quote->load('test01', 'reserved_order_id');
         $quote->setCustomer($customerData);
 
@@ -65,7 +65,7 @@ class CollectTotalsTest extends \PHPUnit_Framework_TestCase
      * @magentoDataFixture Magento/Customer/_files/customer.php
      * @magentoDataFixture Magento/Sales/_files/quote.php
      *
-     * @covers \Magento\Sales\Model\Observer\Frontend\Quote\Address\CollectTotals::dispatch
+     * @covers \Magento\Quote\Model\Observer\Frontend\Quote\Address\CollectTotals::dispatch
      */
     public function testChangeQuoteCustomerGroupIdForCustomerWithEnabledAutomaticGroupChange()
     {
@@ -87,8 +87,8 @@ class CollectTotalsTest extends \PHPUnit_Framework_TestCase
         $customerRepository = $objectManager->create('Magento\Customer\Api\CustomerRepositoryInterface');
         $customerData = $customerRepository->getById($customer->getId());
 
-        /** @var $quote \Magento\Sales\Model\Quote */
-        $quote = $objectManager->create('Magento\Sales\Model\Quote');
+        /** @var $quote \Magento\Quote\Model\Quote */
+        $quote = $objectManager->create('Magento\Quote\Model\Quote');
         $quote->load('test01', 'reserved_order_id');
         $quote->setCustomer($customerData);
 
diff --git a/dev/tests/integration/testsuite/Magento/Sales/Model/Quote/AddressTest.php b/dev/tests/integration/testsuite/Magento/Quote/Model/Quote/AddressTest.php
similarity index 98%
rename from dev/tests/integration/testsuite/Magento/Sales/Model/Quote/AddressTest.php
rename to dev/tests/integration/testsuite/Magento/Quote/Model/Quote/AddressTest.php
index bbef25c1a0779057902b5bab8fbfc84fa93ad7fb..4abc305c0af9265efac34e79ec426b51094362d5 100644
--- a/dev/tests/integration/testsuite/Magento/Sales/Model/Quote/AddressTest.php
+++ b/dev/tests/integration/testsuite/Magento/Quote/Model/Quote/AddressTest.php
@@ -3,7 +3,7 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Quote;
+namespace Magento\Quote\Model\Quote;
 
 use Magento\TestFramework\Helper\Bootstrap;
 
@@ -13,13 +13,13 @@ use Magento\TestFramework\Helper\Bootstrap;
  */
 class AddressTest extends \PHPUnit_Framework_TestCase
 {
-    /** @var \Magento\Sales\Model\Quote $quote */
+    /** @var \Magento\Quote\Model\Quote $quote */
     protected $_quote;
 
     /** @var \Magento\Customer\Api\Data\CustomerInterface $customer */
     protected $_customer;
 
-    /** @var \Magento\Sales\Model\Quote\Address */
+    /** @var \Magento\Quote\Model\Quote\Address */
     protected $_address;
 
     /**@var \Magento\Customer\Api\CustomerRepositoryInterface $customerRepository */
@@ -31,7 +31,7 @@ class AddressTest extends \PHPUnit_Framework_TestCase
     public function setUp()
     {
         $this->_quote = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create(
-            'Magento\Sales\Model\Quote'
+            'Magento\Quote\Model\Quote'
         );
         $this->_quote->load('test01', 'reserved_order_id');
         $this->_quote->setIsMultiShipping('0');
@@ -43,7 +43,7 @@ class AddressTest extends \PHPUnit_Framework_TestCase
 
         /** @var \Magento\Sales\Model\Order\Address $address */
         $this->_address = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create(
-            'Magento\Sales\Model\Quote\Address'
+            'Magento\Quote\Model\Quote\Address'
         );
         $this->_address->setId(1);
         $this->_address->load($this->_address->getId());
diff --git a/dev/tests/integration/testsuite/Magento/Sales/Model/QuoteTest.php b/dev/tests/integration/testsuite/Magento/Quote/Model/QuoteTest.php
similarity index 94%
rename from dev/tests/integration/testsuite/Magento/Sales/Model/QuoteTest.php
rename to dev/tests/integration/testsuite/Magento/Quote/Model/QuoteTest.php
index 72191e2a1e07f11cc3599572f9bb453662cec993..821cafe7bfba31e15ce749310972f851e7530355 100644
--- a/dev/tests/integration/testsuite/Magento/Sales/Model/QuoteTest.php
+++ b/dev/tests/integration/testsuite/Magento/Quote/Model/QuoteTest.php
@@ -3,7 +3,7 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model;
+namespace Magento\Quote\Model;
 
 use Magento\Customer\Api\Data\CustomerDataBuilder;
 use Magento\TestFramework\Helper\Bootstrap;
@@ -22,7 +22,7 @@ class QuoteTest extends \PHPUnit_Framework_TestCase
      */
     public function testCollectTotalsWithVirtual()
     {
-        $quote = Bootstrap::getObjectManager()->create('Magento\Sales\Model\Quote');
+        $quote = Bootstrap::getObjectManager()->create('Magento\Quote\Model\Quote');
         $quote->load('test01', 'reserved_order_id');
 
         $product = Bootstrap::getObjectManager()->create('Magento\Catalog\Model\Product');
@@ -38,8 +38,8 @@ class QuoteTest extends \PHPUnit_Framework_TestCase
 
     public function testSetCustomerData()
     {
-        /** @var \Magento\Sales\Model\Quote $quote */
-        $quote = Bootstrap::getObjectManager()->create('Magento\Sales\Model\Quote');
+        /** @var \Magento\Quote\Model\Quote $quote */
+        $quote = Bootstrap::getObjectManager()->create('Magento\Quote\Model\Quote');
         /** @var \Magento\Customer\Api\Data\CustomerDataBuilder $customerBuilder */
         $customerBuilder = Bootstrap::getObjectManager()->create('Magento\Customer\Api\Data\CustomerDataBuilder');
         $expected = $this->_getCustomerDataArray();
@@ -56,8 +56,8 @@ class QuoteTest extends \PHPUnit_Framework_TestCase
 
     public function testUpdateCustomerData()
     {
-        /** @var \Magento\Sales\Model\Quote $quote */
-        $quote = Bootstrap::getObjectManager()->create('Magento\Sales\Model\Quote');
+        /** @var \Magento\Quote\Model\Quote $quote */
+        $quote = Bootstrap::getObjectManager()->create('Magento\Quote\Model\Quote');
         $customerBuilder = Bootstrap::getObjectManager()->create('Magento\Customer\Api\Data\CustomerDataBuilder');
         $expected = $this->_getCustomerDataArray();
         //For save in repository
@@ -96,8 +96,8 @@ class QuoteTest extends \PHPUnit_Framework_TestCase
         $customerBuilder = Bootstrap::getObjectManager()->create('Magento\Customer\Api\Data\CustomerDataBuilder');
         $customerGroupId = 3;
         $customerData = $customerBuilder->setId(1)->setGroupId($customerGroupId)->create();
-        /** @var \Magento\Sales\Model\Quote $quote */
-        $quote = Bootstrap::getObjectManager()->create('Magento\Sales\Model\Quote');
+        /** @var \Magento\Quote\Model\Quote $quote */
+        $quote = Bootstrap::getObjectManager()->create('Magento\Quote\Model\Quote');
         $quote->setCustomer($customerData);
         $quote->unsetData('customer_group_id');
 
@@ -118,8 +118,8 @@ class QuoteTest extends \PHPUnit_Framework_TestCase
         /** @var \Magento\Customer\Model\Group $group */
         $group = Bootstrap::getObjectManager()->create('Magento\Customer\Model\Group');
         $fixtureGroupId = $group->load($fixtureGroupCode, 'customer_group_code')->getId();
-        /** @var \Magento\Sales\Model\Quote $quote */
-        $quote = Bootstrap::getObjectManager()->create('Magento\Sales\Model\Quote');
+        /** @var \Magento\Quote\Model\Quote $quote */
+        $quote = Bootstrap::getObjectManager()->create('Magento\Quote\Model\Quote');
         $quote->setCustomerGroupId($fixtureGroupId);
 
         /** Execute SUT */
@@ -139,8 +139,8 @@ class QuoteTest extends \PHPUnit_Framework_TestCase
          * Customer with two addresses created
          * First address is default billing, second is default shipping.
          */
-        /** @var \Magento\Sales\Model\Quote $quote */
-        $quote = Bootstrap::getObjectManager()->create('Magento\Sales\Model\Quote');
+        /** @var \Magento\Quote\Model\Quote $quote */
+        $quote = Bootstrap::getObjectManager()->create('Magento\Quote\Model\Quote');
         $customerData = $this->_prepareQuoteForTestAssignCustomerWithAddressChange($quote);
 
         /** Execute SUT */
@@ -204,11 +204,11 @@ class QuoteTest extends \PHPUnit_Framework_TestCase
          * Customer with two addresses created
          * First address is default billing, second is default shipping.
          */
-        /** @var \Magento\Sales\Model\Quote $quote */
+        /** @var \Magento\Quote\Model\Quote $quote */
         $objectManager = Bootstrap::getObjectManager();
-        $quote = $objectManager->create('Magento\Sales\Model\Quote');
+        $quote = $objectManager->create('Magento\Quote\Model\Quote');
         $customerData = $this->_prepareQuoteForTestAssignCustomerWithAddressChange($quote);
-        /** @var \Magento\Sales\Model\Quote\Address $quoteBillingAddress */
+        /** @var \Magento\Quote\Model\Quote\Address $quoteBillingAddress */
         $expectedBillingAddressData = [
             'street' => 'Billing str, 67',
             'telephone' => 16546757,
@@ -219,7 +219,7 @@ class QuoteTest extends \PHPUnit_Framework_TestCase
             'firstname' => 'FirstBilling',
             'region_id' => 1
         ];
-        $quoteBillingAddress = $objectManager->create('Magento\Sales\Model\Quote\Address');
+        $quoteBillingAddress = $objectManager->create('Magento\Quote\Model\Quote\Address');
         $quoteBillingAddress->setData($expectedBillingAddressData);
 
         $expectedShippingAddressData = [
@@ -232,7 +232,7 @@ class QuoteTest extends \PHPUnit_Framework_TestCase
             'firstname' => 'FirstShipping',
             'region_id' => 1
         ];
-        $quoteShippingAddress = $objectManager->create('Magento\Sales\Model\Quote\Address');
+        $quoteShippingAddress = $objectManager->create('Magento\Quote\Model\Quote\Address');
         $quoteShippingAddress->setData($expectedShippingAddressData);
 
         /** Execute SUT */
@@ -265,7 +265,7 @@ class QuoteTest extends \PHPUnit_Framework_TestCase
      *
      * Customer with two addresses created. First address is default billing, second is default shipping.
      *
-     * @param \Magento\Sales\Model\Quote $quote
+     * @param \Magento\Quote\Model\Quote $quote
      * @return \Magento\Customer\Api\Data\CustomerInterface
      */
     protected function _prepareQuoteForTestAssignCustomerWithAddressChange($quote)
diff --git a/dev/tests/integration/testsuite/Magento/Reports/Controller/Adminhtml/Report/Product/ViewedTest.php b/dev/tests/integration/testsuite/Magento/Reports/Controller/Adminhtml/Report/Product/ViewedTest.php
index c5eeff1fa5183418b1906a49d1a1f6eadbe8b56e..b5defd098a0dad2727e0a48f30505420586cbb82 100644
--- a/dev/tests/integration/testsuite/Magento/Reports/Controller/Adminhtml/Report/Product/ViewedTest.php
+++ b/dev/tests/integration/testsuite/Magento/Reports/Controller/Adminhtml/Report/Product/ViewedTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Reports\Controller\Adminhtml\Report\Product;
 
 /**
diff --git a/dev/tests/integration/testsuite/Magento/Reports/Model/Resource/Report/Product/Viewed/CollectionTest.php b/dev/tests/integration/testsuite/Magento/Reports/Model/Resource/Report/Product/Viewed/CollectionTest.php
index 1ce6751ecb9387907235f454d9ad70b491563c36..64a7aea1d1cb5c1d6da78a4049716fc0b9adef66 100644
--- a/dev/tests/integration/testsuite/Magento/Reports/Model/Resource/Report/Product/Viewed/CollectionTest.php
+++ b/dev/tests/integration/testsuite/Magento/Reports/Model/Resource/Report/Product/Viewed/CollectionTest.php
@@ -47,6 +47,7 @@ class CollectionTest extends \PHPUnit_Framework_TestCase
      * @param $dateFrom
      * @param $dateTo
      * @param $isTotal
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function testTableSelection($period, $expectedTable, $dateFrom, $dateTo, $isTotal = false)
     {
@@ -92,6 +93,7 @@ class CollectionTest extends \PHPUnit_Framework_TestCase
      * Data provider for testTableSelection
      *
      * @return array
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public function tableForPeriodDataProvider()
     {
diff --git a/dev/tests/integration/testsuite/Magento/Reports/_files/viewed_products.php b/dev/tests/integration/testsuite/Magento/Reports/_files/viewed_products.php
index c533298f6b35962bc7495ced319bf3330cb2df64..cd856d8ee58d79fc70bf2d3a3b6e7ba0ab5f3894 100644
--- a/dev/tests/integration/testsuite/Magento/Reports/_files/viewed_products.php
+++ b/dev/tests/integration/testsuite/Magento/Reports/_files/viewed_products.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Framework\App\AreaList')
     ->getArea('adminhtml')
     ->load(\Magento\Framework\App\Area::PART_CONFIG);
diff --git a/dev/tests/integration/testsuite/Magento/Review/Block/Adminhtml/Edit/FormTest.php b/dev/tests/integration/testsuite/Magento/Review/Block/Adminhtml/Edit/FormTest.php
index 3afe59ef076e030dcff48b6d26d2ea9a2d0fe156..1675b709557b08d840203ce96c40fb85f5d17097 100644
--- a/dev/tests/integration/testsuite/Magento/Review/Block/Adminhtml/Edit/FormTest.php
+++ b/dev/tests/integration/testsuite/Magento/Review/Block/Adminhtml/Edit/FormTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Review\Block\Adminhtml\Edit;
 
 class FormTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/integration/testsuite/Magento/Review/Block/FormTest.php b/dev/tests/integration/testsuite/Magento/Review/Block/FormTest.php
index 1b4d9e68d3019b6efbebd10ca65c9d28adbab2f8..e1d3c2c021b63f5dfa2f37bb24b91ad9d5c95207 100644
--- a/dev/tests/integration/testsuite/Magento/Review/Block/FormTest.php
+++ b/dev/tests/integration/testsuite/Magento/Review/Block/FormTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Review\Block;
 
 class FormTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/integration/testsuite/Magento/Sales/Block/Adminhtml/Order/Create/Form/AccountTest.php b/dev/tests/integration/testsuite/Magento/Sales/Block/Adminhtml/Order/Create/Form/AccountTest.php
index d37a3dd2f6c58bd9c27db41dc27c6707a3512b40..9d3c71de54c488219133d5e5aa28f14deed67d72 100644
--- a/dev/tests/integration/testsuite/Magento/Sales/Block/Adminhtml/Order/Create/Form/AccountTest.php
+++ b/dev/tests/integration/testsuite/Magento/Sales/Block/Adminhtml/Order/Create/Form/AccountTest.php
@@ -26,7 +26,7 @@ class AccountTest extends \PHPUnit_Framework_TestCase
     protected function setUp()
     {
         $this->_objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager();
-        $quote = $this->_objectManager->create('Magento\Sales\Model\Quote')->load(1);
+        $quote = $this->_objectManager->create('Magento\Quote\Model\Quote')->load(1);
         $sessionQuoteMock = $this->getMockBuilder(
             'Magento\Backend\Model\Session\Quote'
         )->disableOriginalConstructor()->setMethods(
diff --git a/dev/tests/integration/testsuite/Magento/Sales/Block/Adminhtml/Order/Create/FormTest.php b/dev/tests/integration/testsuite/Magento/Sales/Block/Adminhtml/Order/Create/FormTest.php
index e5adda3daa6201e15fc015703f1c1e828a88947c..dcaec492a9c7fa491c8c9df211a5c3fc12cfdbdf 100644
--- a/dev/tests/integration/testsuite/Magento/Sales/Block/Adminhtml/Order/Create/FormTest.php
+++ b/dev/tests/integration/testsuite/Magento/Sales/Block/Adminhtml/Order/Create/FormTest.php
@@ -32,7 +32,7 @@ class FormTest extends \PHPUnit_Framework_TestCase
         )->getMock();
         $sessionMock->expects($this->any())->method('getCustomerId')->will($this->returnValue(1));
 
-        $quote = $this->_objectManager->create('Magento\Sales\Model\Quote')->load(1);
+        $quote = $this->_objectManager->create('Magento\Quote\Model\Quote')->load(1);
         $sessionMock->expects($this->any())->method('getQuote')->will($this->returnValue($quote));
 
         $sessionMock->expects($this->any())->method('getStoreId')->will($this->returnValue(1));
diff --git a/dev/tests/integration/testsuite/Magento/Sales/Model/AbstractCollectorPositionsTest.php b/dev/tests/integration/testsuite/Magento/Sales/Model/AbstractCollectorPositionsTest.php
index 1afb318ae2f2be2c790af25e743d45f9ee80cc0b..f954b31f31e9455f964230e42cf67bb6d44f3732 100644
--- a/dev/tests/integration/testsuite/Magento/Sales/Model/AbstractCollectorPositionsTest.php
+++ b/dev/tests/integration/testsuite/Magento/Sales/Model/AbstractCollectorPositionsTest.php
@@ -62,7 +62,7 @@ abstract class AbstractCollectorPositionsTest extends \PHPUnit_Framework_TestCas
     {
         switch ($configType) {
             case 'quote':
-                $configClass = 'Magento\Sales\Model\Quote\Address\Total\Collector';
+                $configClass = 'Magento\Quote\Model\Quote\Address\Total\Collector';
                 $methodGetCollectors = 'getCollectors';
                 break;
             case 'invoice':
diff --git a/dev/tests/integration/testsuite/Magento/Sales/Model/AdminOrder/CreateTest.php b/dev/tests/integration/testsuite/Magento/Sales/Model/AdminOrder/CreateTest.php
index f410ba53f76516d0f411e81cbbc364cfab33d3d7..25cba78e320e24e30d2c323c02342427ae859ea4 100644
--- a/dev/tests/integration/testsuite/Magento/Sales/Model/AdminOrder/CreateTest.php
+++ b/dev/tests/integration/testsuite/Magento/Sales/Model/AdminOrder/CreateTest.php
@@ -190,7 +190,7 @@ class CreateTest extends \PHPUnit_Framework_TestCase
         /** Validate data before creating address object */
         $this->_model->setIsValidate(true)->setBillingAddress($addressData);
         $this->assertInstanceOf(
-            'Magento\Sales\Model\Quote\Address',
+            'Magento\Quote\Model\Quote\Address',
             $this->_model->getBillingAddress(),
             'Billing address object was not created.'
         );
@@ -434,8 +434,8 @@ class CreateTest extends \PHPUnit_Framework_TestCase
         /** @var \Magento\Backend\Model\Session\Quote $session */
         $session = Bootstrap::getObjectManager()->create('Magento\Backend\Model\Session\Quote');
         $session->setCustomerId($fixtureCustomerId);
-        /** @var $quoteFixture \Magento\Sales\Model\Quote */
-        $quoteFixture = Bootstrap::getObjectManager()->create('Magento\Sales\Model\Quote');
+        /** @var $quoteFixture \Magento\Quote\Model\Quote */
+        $quoteFixture = Bootstrap::getObjectManager()->create('Magento\Quote\Model\Quote');
         $quoteFixture->load('test01', 'reserved_order_id');
         $quoteFixture->setCustomerIsGuest(false)->setCustomerId($fixtureCustomerId)->save();
 
@@ -519,8 +519,8 @@ class CreateTest extends \PHPUnit_Framework_TestCase
         }
 
         /** Emulate availability of shipping method (all are disabled by default) */
-        /** @var $rate \Magento\Sales\Model\Quote\Address\Rate */
-        $rate = Bootstrap::getObjectManager()->create('Magento\Sales\Model\Quote\Address\Rate');
+        /** @var $rate \Magento\Quote\Model\Quote\Address\Rate */
+        $rate = Bootstrap::getObjectManager()->create('Magento\Quote\Model\Quote\Address\Rate');
         $rate->setCode($shippingMethod);
         $this->_model->getQuote()->getShippingAddress()->addShippingRate($rate);
 
@@ -587,7 +587,7 @@ class CreateTest extends \PHPUnit_Framework_TestCase
             $orderData['customer_firstname'],
             'Customer first name is invalid.'
         );
-        $this->assertEquals($shippingMethod, $orderData['shipping_method'], 'Customer first name is invalid.');
+        $this->assertEquals($shippingMethod, $orderData['shipping_method'], 'Shipping method is invalid.');
     }
 
     /**
diff --git a/dev/tests/integration/testsuite/Magento/Sales/Model/Observer/Backend/CustomerQuoteTest.php b/dev/tests/integration/testsuite/Magento/Sales/Model/Observer/Backend/CustomerQuoteTest.php
index e0484727ee54cd1a2d50959ad7c9dcb3049442b5..cca4391f2940dfa92d49828b4ab82c7312d176d1 100644
--- a/dev/tests/integration/testsuite/Magento/Sales/Model/Observer/Backend/CustomerQuoteTest.php
+++ b/dev/tests/integration/testsuite/Magento/Sales/Model/Observer/Backend/CustomerQuoteTest.php
@@ -24,8 +24,8 @@ class CustomerQuoteTest extends \PHPUnit_Framework_TestCase
         $customer = Bootstrap::getObjectManager()->create('Magento\Customer\Model\Customer');
         $customer->load(1);
 
-        /** @var \Magento\Sales\Model\Quote $quote */
-        $quote = Bootstrap::getObjectManager()->create('Magento\Sales\Model\Quote');
+        /** @var \Magento\Quote\Model\Quote $quote */
+        $quote = Bootstrap::getObjectManager()->create('Magento\Quote\Model\Quote');
         $quote->load('test01', 'reserved_order_id');
         $quote->setCustomerIsGuest(false)->setCustomerId(1)->setCustomerGroupId($customer->getGroupId())->save();
 
diff --git a/dev/tests/integration/testsuite/Magento/Sales/Model/Resource/Order/StatusTest.php b/dev/tests/integration/testsuite/Magento/Sales/Model/Resource/Order/StatusTest.php
index c859ec0d9950e81c3ddf69349790b0a8d76e1ce2..cdeb6cc7102516f45a7c4794551fe272d8600ce4 100644
--- a/dev/tests/integration/testsuite/Magento/Sales/Model/Resource/Order/StatusTest.php
+++ b/dev/tests/integration/testsuite/Magento/Sales/Model/Resource/Order/StatusTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Sales\Model\Resource\Order;
 
 use Magento\TestFramework\Helper\Bootstrap;
diff --git a/dev/tests/integration/testsuite/Magento/Sales/Model/Resource/QuoteTest.php b/dev/tests/integration/testsuite/Magento/Sales/Model/Resource/QuoteTest.php
index 3cc6b02d26129c0ba65ea0deffb8db5447543d45..7b3f1e37c8db98dd810ec1553d1033b9159022dd 100644
--- a/dev/tests/integration/testsuite/Magento/Sales/Model/Resource/QuoteTest.php
+++ b/dev/tests/integration/testsuite/Magento/Sales/Model/Resource/QuoteTest.php
@@ -8,14 +8,14 @@ namespace Magento\Sales\Model\Resource;
 class QuoteTest extends \PHPUnit_Framework_TestCase
 {
     /**
-     * @var \Magento\Sales\Model\Resource\Quote
+     * @var \Magento\Quote\Model\Resource\Quote
      */
     protected $_resourceModel;
 
     protected function setUp()
     {
         $this->_resourceModel = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create(
-            'Magento\Sales\Model\Resource\Quote'
+            'Magento\Quote\Model\Resource\Quote'
         );
     }
 
diff --git a/dev/tests/integration/testsuite/Magento/Sales/Model/Service/QuoteTest.php b/dev/tests/integration/testsuite/Magento/Sales/Model/Service/QuoteTest.php
deleted file mode 100755
index b7bd872d056eaf929a65f5bfb4cc8279dd2e2870..0000000000000000000000000000000000000000
--- a/dev/tests/integration/testsuite/Magento/Sales/Model/Service/QuoteTest.php
+++ /dev/null
@@ -1,241 +0,0 @@
-<?php
-/**
- * Copyright © 2015 Magento. All rights reserved.
- * See COPYING.txt for license details.
- */
-namespace Magento\Sales\Model\Service;
-
-use Magento\Customer\Api\Data\CustomerInterface;
-use Magento\TestFramework\Helper\Bootstrap;
-
-/**
- * @magentoAppArea adminhtml
- */
-class QuoteTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @var \Magento\Sales\Model\Service\Quote
-     */
-    protected $_serviceQuote;
-
-    /**
-     * @var \Magento\Customer\Api\Data\CustomerDataBuilder
-     */
-    private $customerBuilder;
-
-    /**
-     * @var \Magento\Customer\Api\AccountManagementInterface
-     */
-    protected $accountManagement;
-
-    /**
-     * @var \Magento\Customer\Api\AddressRepositoryInterface
-     */
-    protected $addressRepository;
-
-    /**
-     * @var \Magento\Customer\Api\Data\AddressDataBuilder
-     */
-    protected $addressBuilder;
-
-    /**
-     * @var \Magento\Customer\Api\CustomerRepositoryInterface
-     */
-    protected $customerRepository;
-
-    /**
-     * Set up
-     *
-     * @return void
-     */
-    public function setUp()
-    {
-        $this->addressBuilder = Bootstrap::getObjectManager()->get(
-            'Magento\Customer\Api\Data\AddressDataBuilder'
-        );
-        $this->customerBuilder = Bootstrap::getObjectManager()->get(
-            'Magento\Customer\Api\Data\CustomerDataBuilder'
-        );
-        $this->accountManagement = Bootstrap::getObjectManager()->get(
-            'Magento\Customer\Api\AccountManagementInterface'
-        );
-        $this->addressRepository = Bootstrap::getObjectManager()->get(
-            'Magento\Customer\Api\AddressRepositoryInterface'
-        );
-        $this->customerRepository = Bootstrap::getObjectManager()->get(
-            'Magento\Customer\Api\CustomerRepositoryInterface'
-        );
-    }
-
-    /**
-     * @magentoDataFixture Magento/Sales/_files/quote.php
-     * @magentoDataFixture Magento/Customer/_files/customer.php
-     */
-    public function testSubmitGuestOrder()
-    {
-        $this->_prepareQuote(true);
-        /** @var $order \Magento\Sales\Model\Order */
-        $order = $this->_serviceQuote->submitOrderWithDataObject();
-        //Makes sure that the customer for guest checkout is not saved
-        $this->assertNull($order->getCustomerId());
-    }
-
-    /**
-     * @magentoDataFixture Magento/Sales/_files/quote.php
-     * @expectedException \Magento\Framework\Exception\InputException
-     * @expectedExceptionMessage One or more input exceptions have occurred.
-     */
-    public function testSubmitOrderInvalidCustomerData()
-    {
-        $this->_prepareQuote(false);
-        /** @var $order \Magento\Sales\Model\Order */
-        $this->_serviceQuote->submitOrderWithDataObject();
-    }
-
-    /**
-     * @magentoDataFixture Magento/Sales/_files/quote.php
-     */
-    public function testSubmitOrderExistingCustomer()
-    {
-        $this->_prepareQuote(false);
-        $customer = $this->getSampleCustomerEntity();
-        $existingCustomerId = $customer->getId();
-
-        $addresses = $this->getSampleAddressEntity($existingCustomerId);
-
-        $customer = $this->customerBuilder->mergeDataObjectWithArray(
-            $customer,
-            [CustomerInterface::EMAIL => 'new@example.com']
-        )->setAddresses($addresses)
-            ->create();
-        $customer = $this->customerRepository->save($customer);
-        $addresses = $customer->getAddresses();
-        $this->_serviceQuote->getQuote()->setCustomer($customer);
-        $this->_serviceQuote->getQuote()->setCustomerAddressData($addresses);
-        $this->_serviceQuote->submitOrderWithDataObject();
-        $customerId = $this->_serviceQuote->getQuote()->getCustomer()->getId();
-        $this->assertNotNull($customerId);
-        //Make sure no new customer is created
-        $this->assertEquals($existingCustomerId, $customerId);
-        $customerData = $this->customerRepository->getById($existingCustomerId);
-        $this->assertEquals('new@example.com', $customerData->getEmail());
-    }
-
-    /**
-     * @magentoDbIsolation enabled
-     * @magentoDataFixture Magento/Sales/_files/quote.php
-     */
-    public function testSubmitOrderNewCustomer()
-    {
-        $this->_prepareQuote(false);
-        $customer = $this->getSampleCustomerEntity();
-        $this->_serviceQuote->getQuote()->setCustomer($customer);
-        $this->_serviceQuote->getQuote()->setCustomerAddressData($this->getSampleAddressEntity($customer->getId()));
-        $this->_serviceQuote->submitOrderWithDataObject();
-        $customerId = $this->_serviceQuote->getQuote()->getCustomer()->getId();
-        $this->assertNotNull($customerId);
-        foreach ($this->_serviceQuote->getQuote()->getCustomer()->getAddresses() as $address) {
-            $this->assertNotNull($address->getId());
-            $this->assertEquals($customerId, $address->getCustomerId());
-        }
-    }
-
-    /**
-     * Function to setup Quote for order
-     *
-     * @param bool $customerIsGuest
-     */
-    private function _prepareQuote($customerIsGuest)
-    {
-        $quoteFixture = $this->_prepareQuoteFixture($customerIsGuest);
-        $quoteFixture->setCustomerEmail('admin@example.com');
-        $this->_serviceQuote = Bootstrap::getObjectManager()->create(
-            'Magento\Sales\Model\Service\Quote',
-            ['quote' => $quoteFixture]
-        );
-    }
-
-    /**
-     * Prepare quote data
-     *
-     * @param bool $customerIsGuest
-     * @return \Magento\Sales\Model\Quote
-     */
-    private function _prepareQuoteFixture($customerIsGuest)
-    {
-        $method = 'freeshipping_freeshipping';
-        /** @var $quoteFixture \Magento\Sales\Model\Quote */
-        $quoteFixture = Bootstrap::getObjectManager()->create('Magento\Sales\Model\Quote');
-        $quoteFixture->load('test01', 'reserved_order_id');
-        $rate = Bootstrap::getObjectManager()->create('Magento\Sales\Model\Quote\Address\Rate');
-        $rate->setCode($method);
-        $quoteFixture->getShippingAddress()->addShippingRate($rate);
-        $quoteFixture->getShippingAddress()->setShippingMethod($method);
-        $quoteFixture->setCustomerIsGuest($customerIsGuest);
-        return $quoteFixture;
-    }
-
-    /**
-     * Sample customer data
-     *
-     * @return CustomerInterface
-     */
-    private function getSampleCustomerEntity()
-    {
-        $email = 'email@example.com';
-        $storeId = 1;
-        $firstname = 'Tester';
-        $lastname = 'McTest';
-        $groupId = 1;
-        $password = 'password';
-
-        $customer = $this->customerBuilder->setStoreId($storeId)
-            ->setEmail($email)
-            ->setFirstname($firstname)
-            ->setLastname($lastname)
-            ->setGroupId($groupId)
-            ->create();
-
-        return $this->accountManagement->createAccount($customer, $password);
-    }
-
-    /**
-     * Sample Address data
-     *
-     * @return array
-     */
-    private function getSampleAddressEntity($customerId)
-    {
-        /** @var \Magento\Customer\Api\Data\RegionDataBuilder $regionBuilder */
-        $regionBuilder =  Bootstrap::getObjectManager()->get('Magento\Customer\Api\Data\RegionDataBuilder');
-        $address1 = $this->addressBuilder->setCountryId('US')
-            ->setCustomerId($customerId)
-            ->setDefaultBilling(true)
-            ->setDefaultShipping(true)
-            ->setPostcode(75477)
-            ->setRegion($regionBuilder->setRegion('Alabama')->setRegionId(1)->setRegionCode('AL')->create())
-            ->setStreet(['Green str, 67'])
-            ->setTelephone(3468676)
-            ->setCity('CityM')
-            ->setFirstname('John')
-            ->setLastname('Smith')
-            ->create();
-        $address1 = $this->addressRepository->save($address1);
-
-        $address2 = $this->addressBuilder->setCountryId('US')
-            ->setCustomerId($customerId)
-            ->setDefaultBilling(false)
-            ->setDefaultShipping(false)
-            ->setPostcode(47676)
-            ->setRegion($regionBuilder->setRegion('Alabama')->setRegionId(1)->setRegionCode('AL')->create())
-            ->setStreet(['Black str, 48'])
-            ->setCity('CityX')
-            ->setTelephone(3234676)
-            ->setFirstname('John')
-            ->setLastname('Smith')
-            ->create();
-        $address2 = $this->addressRepository->save($address2);
-
-        return [$address1, $address2];
-    }
-}
diff --git a/dev/tests/integration/testsuite/Magento/Sales/_files/order.php b/dev/tests/integration/testsuite/Magento/Sales/_files/order.php
index a41f51dea23ffc365c3b6de1d7dd8b91a3d9b0d1..dfd4511b37c4b6e3becded198d8ab4f1191f023a 100644
--- a/dev/tests/integration/testsuite/Magento/Sales/_files/order.php
+++ b/dev/tests/integration/testsuite/Magento/Sales/_files/order.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 require 'default_rollback.php';
 require __DIR__ . '/../../../Magento/Catalog/_files/product_simple.php';
 /** @var \Magento\Catalog\Model\Product $product */
diff --git a/dev/tests/integration/testsuite/Magento/Sales/_files/order_fixture_store.php b/dev/tests/integration/testsuite/Magento/Sales/_files/order_fixture_store.php
index bcd7663b2173482a90399f4796384f865129ea75..6bbd0430c0bfc3f3a637465ea1aa9d5b30ea0d55 100644
--- a/dev/tests/integration/testsuite/Magento/Sales/_files/order_fixture_store.php
+++ b/dev/tests/integration/testsuite/Magento/Sales/_files/order_fixture_store.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 require __DIR__ . '/../../../Magento/Core/_files/store.php';
 
 require __DIR__ . '/../../../Magento/Catalog/_files/product_simple_duplicated.php';
diff --git a/dev/tests/integration/testsuite/Magento/Sales/_files/order_info.php b/dev/tests/integration/testsuite/Magento/Sales/_files/order_info.php
index 4fbe4b05aa19ae26de615fde40e1438f8570d965..1862adfcee81f7a0d9a509e88b0d51b9febd2b05 100644
--- a/dev/tests/integration/testsuite/Magento/Sales/_files/order_info.php
+++ b/dev/tests/integration/testsuite/Magento/Sales/_files/order_info.php
@@ -30,7 +30,7 @@ $product->load(1);
 $addressData = include __DIR__ . '/address_data.php';
 
 $billingAddress = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create(
-    'Magento\Sales\Model\Quote\Address',
+    'Magento\Quote\Model\Quote\Address',
     ['data' => $addressData]
 );
 $billingAddress->setAddressType('billing');
@@ -39,8 +39,8 @@ $shippingAddress = clone $billingAddress;
 $shippingAddress->setId(null)->setAddressType('shipping');
 $shippingAddress->setShippingMethod('flatrate_flatrate');
 
-/** @var $quote \Magento\Sales\Model\Quote */
-$quote = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create('Magento\Sales\Model\Quote');
+/** @var $quote \Magento\Quote\Model\Quote */
+$quote = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create('Magento\Quote\Model\Quote');
 $quote->setCustomerIsGuest(
     true
 )->setStoreId(
@@ -67,16 +67,10 @@ $quote->collectTotals();
 $quote->save();
 
 $quote->setCustomerEmail('admin@example.com');
-/** @var $service \Magento\Sales\Model\Service\Quote */
-$service = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create(
-    'Magento\Sales\Model\Service\Quote',
-    ['quote' => $quote]
-);
-$service->setOrderData(['increment_id' => '100000001']);
-$service->submitAllWithDataObject();
+$quoteManagement = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()
+    ->create('Magento\Quote\Model\QuoteManagement');
 
-$order = $service->getOrder();
-$order->save();
+$order = $quoteManagement->submit($quote, ['increment_id' => '100000001']);
 
 $orderItems = $order->getAllItems();
 
diff --git a/dev/tests/integration/testsuite/Magento/Sales/_files/quote.php b/dev/tests/integration/testsuite/Magento/Sales/_files/quote.php
index 272a3a96c5c9ecd59abe5544cacb8225bf8ace70..8bdafe16f41aa3263b3a75e208e2a8545efbaa5d 100644
--- a/dev/tests/integration/testsuite/Magento/Sales/_files/quote.php
+++ b/dev/tests/integration/testsuite/Magento/Sales/_files/quote.php
@@ -36,7 +36,7 @@ $product->load(1);
 
 $addressData = include __DIR__ . '/address_data.php';
 $billingAddress = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create(
-    'Magento\Sales\Model\Quote\Address',
+    'Magento\Quote\Model\Quote\Address',
     ['data' => $addressData]
 );
 $billingAddress->setAddressType('billing');
@@ -44,8 +44,8 @@ $billingAddress->setAddressType('billing');
 $shippingAddress = clone $billingAddress;
 $shippingAddress->setId(null)->setAddressType('shipping');
 
-/** @var \Magento\Sales\Model\Quote $quote */
-$quote = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create('Magento\Sales\Model\Quote');
+/** @var \Magento\Quote\Model\Quote $quote */
+$quote = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create('Magento\Quote\Model\Quote');
 $quote->setCustomerIsGuest(
     true
 )->setStoreId(
diff --git a/dev/tests/integration/testsuite/Magento/Sales/_files/quote_rollback.php b/dev/tests/integration/testsuite/Magento/Sales/_files/quote_rollback.php
index 6f53d94ff831a99037b7d377f2de0f269d9ca443..ef6cf9d007f1c8bab3aab048389f4257570a878b 100644
--- a/dev/tests/integration/testsuite/Magento/Sales/_files/quote_rollback.php
+++ b/dev/tests/integration/testsuite/Magento/Sales/_files/quote_rollback.php
@@ -9,8 +9,8 @@ $registry = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Ma
 $registry->unregister('isSecureArea');
 $registry->register('isSecureArea', true);
 
-/** @var $quote \Magento\Sales\Model\Quote */
-$quote = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create('Magento\Sales\Model\Quote');
+/** @var $quote \Magento\Quote\Model\Quote */
+$quote = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create('Magento\Quote\Model\Quote');
 $quote->load('test01', 'reserved_order_id');
 if ($quote->getId()) {
     $quote->delete();
diff --git a/dev/tests/integration/testsuite/Magento/Sales/_files/quote_with_customer.php b/dev/tests/integration/testsuite/Magento/Sales/_files/quote_with_customer.php
index fafc999dafb561c5d73ff341c3a671d74fbd8c2a..8d5992519026fd63f5669052fc465a5f932accff 100644
--- a/dev/tests/integration/testsuite/Magento/Sales/_files/quote_with_customer.php
+++ b/dev/tests/integration/testsuite/Magento/Sales/_files/quote_with_customer.php
@@ -7,8 +7,8 @@
 include __DIR__ . '/quote.php';
 include __DIR__ . '/../../../Magento/Customer/_files/customer.php';
 
-/** @var $quote \Magento\Sales\Model\Quote */
-$quote = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create('Magento\Sales\Model\Quote');
+/** @var $quote \Magento\Quote\Model\Quote */
+$quote = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create('Magento\Quote\Model\Quote');
 $quote->load('test01', 'reserved_order_id');
 /** @var \Magento\Customer\Api\CustomerRepositoryInterface $customer */
 $customerRepository = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()
diff --git a/dev/tests/integration/testsuite/Magento/Core/Model/App/EmulationTest.php b/dev/tests/integration/testsuite/Magento/Store/Model/App/EmulationTest.php
similarity index 75%
rename from dev/tests/integration/testsuite/Magento/Core/Model/App/EmulationTest.php
rename to dev/tests/integration/testsuite/Magento/Store/Model/App/EmulationTest.php
index 6bd0071e9409f9d301de908f5137e8f1e084a735..d374b8cea90345fe3f13f7765fb2d1bf42133327 100644
--- a/dev/tests/integration/testsuite/Magento/Core/Model/App/EmulationTest.php
+++ b/dev/tests/integration/testsuite/Magento/Store/Model/App/EmulationTest.php
@@ -3,23 +3,23 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Core\Model\App;
+namespace Magento\Store\Model\App;
 
 class EmulationTest extends \PHPUnit_Framework_TestCase
 {
     /**
-     * @var \Magento\Core\Model\App\Emulation
+     * @var \Magento\Store\Model\App\Emulation
      */
     protected $_model;
 
     /**
-     * @covers \Magento\Core\Model\App\Emulation::startEnvironmentEmulation
-     * @covers \Magento\Core\Model\App\Emulation::stopEnvironmentEmulation
+     * @covers \Magento\Store\Model\App\Emulation::startEnvironmentEmulation
+     * @covers \Magento\Store\Model\App\Emulation::stopEnvironmentEmulation
      */
     public function testEnvironmentEmulation()
     {
         $this->_model = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()
-            ->create('Magento\Core\Model\App\Emulation');
+            ->create('Magento\Store\Model\App\Emulation');
         \Magento\TestFramework\Helper\Bootstrap::getInstance()
             ->loadArea(\Magento\Backend\App\Area\FrontNameResolver::AREA_CODE);
         $design = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()
diff --git a/dev/tests/integration/testsuite/Magento/Store/Model/StoreTest.php b/dev/tests/integration/testsuite/Magento/Store/Model/StoreTest.php
index 50bb1ab77ac2d11ac63ac774967664e8781bb2b7..af24b2b206fb178470dab6329e7e8d18dc1c4b9a 100644
--- a/dev/tests/integration/testsuite/Magento/Store/Model/StoreTest.php
+++ b/dev/tests/integration/testsuite/Magento/Store/Model/StoreTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Store\Model;
 
 use Magento\Framework\App\Bootstrap;
diff --git a/dev/tests/integration/testsuite/Magento/Tax/Model/Calculation/RateRepositoryTest.php b/dev/tests/integration/testsuite/Magento/Tax/Model/Calculation/RateRepositoryTest.php
index 0ff1439b7d6f2295e73f464219b7f6d8a39bbc60..2085012b1f1fe060dd7d4cc825b102ab031c420b 100644
--- a/dev/tests/integration/testsuite/Magento/Tax/Model/Calculation/RateRepositoryTest.php
+++ b/dev/tests/integration/testsuite/Magento/Tax/Model/Calculation/RateRepositoryTest.php
@@ -12,6 +12,9 @@ use Magento\Tax\Api\Data\TaxRateInterface;
 use Magento\Tax\Model\TaxRuleFixtureFactory;
 use Magento\TestFramework\Helper\Bootstrap;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class RateRepositoryTest extends \PHPUnit_Framework_TestCase
 {
     /**
@@ -507,6 +510,7 @@ class RateRepositoryTest extends \PHPUnit_Framework_TestCase
      *
      * @magentoDbIsolation enabled
      * @dataProvider searchTaxRatesDataProvider
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function testGetList($filters, $filterGroup, $expectedRateCodes)
     {
diff --git a/dev/tests/integration/testsuite/Magento/Tax/Model/Sales/Total/Quote/SetupUtil.php b/dev/tests/integration/testsuite/Magento/Tax/Model/Sales/Total/Quote/SetupUtil.php
index 2cce9d73b823920134eb0f70a499327f6d4bc5cb..573cc9d964267c3353c31b73a8bad36e417af5cc 100644
--- a/dev/tests/integration/testsuite/Magento/Tax/Model/Sales/Total/Quote/SetupUtil.php
+++ b/dev/tests/integration/testsuite/Magento/Tax/Model/Sales/Total/Quote/SetupUtil.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Tax\Model\Sales\Total\Quote;
 
 use Magento\Tax\Model\Config;
@@ -581,7 +584,7 @@ class SetupUtil
      *
      * @param array $quoteData
      * @param \Magento\Customer\Api\Data\CustomerInterface $customer
-     * @return \Magento\Sales\Model\Quote
+     * @return \Magento\Quote\Model\Quote
      */
     protected function createQuote($quoteData, $customer)
     {
@@ -593,8 +596,8 @@ class SetupUtil
         /** @var  \Magento\Customer\Model\Address $shippingAddress */
         $shippingAddress = $this->createCustomerAddress($shippingAddressOverride, $customer->getId());
 
-        /** @var \Magento\Sales\Model\Quote\Address $quoteShippingAddress */
-        $quoteShippingAddress = $this->objectManager->create('Magento\Sales\Model\Quote\Address');
+        /** @var \Magento\Quote\Model\Quote\Address $quoteShippingAddress */
+        $quoteShippingAddress = $this->objectManager->create('Magento\Quote\Model\Quote\Address');
         $quoteShippingAddress->importCustomerAddressData($addressService->getById($shippingAddress->getId()));
 
         /** @var array $billingAddressOverride */
@@ -602,12 +605,12 @@ class SetupUtil
         /** @var  \Magento\Customer\Model\Address $billingAddress */
         $billingAddress = $this->createCustomerAddress($billingAddressOverride, $customer->getId());
 
-        /** @var \Magento\Sales\Model\Quote\Address $quoteBillingAddress */
-        $quoteBillingAddress = $this->objectManager->create('Magento\Sales\Model\Quote\Address');
+        /** @var \Magento\Quote\Model\Quote\Address $quoteBillingAddress */
+        $quoteBillingAddress = $this->objectManager->create('Magento\Quote\Model\Quote\Address');
         $quoteBillingAddress->importCustomerAddressData($addressService->getById($billingAddress->getId()));
 
-        /** @var \Magento\Sales\Model\Quote $quote */
-        $quote = $this->objectManager->create('Magento\Sales\Model\Quote');
+        /** @var \Magento\Quote\Model\Quote $quote */
+        $quote = $this->objectManager->create('Magento\Quote\Model\Quote');
         $quote->setStoreId(1)
             ->setIsActive(true)
             ->setIsMultiShipping(false)
@@ -621,7 +624,7 @@ class SetupUtil
     /**
      * Add products to quote
      *
-     * @param \Magento\Sales\Model\Quote $quote
+     * @param \Magento\Quote\Model\Quote $quote
      * @param array $itemsData
      * @return $this
      */
@@ -644,7 +647,7 @@ class SetupUtil
      * Create a quote based on given data
      *
      * @param array $quoteData
-     * @return \Magento\Sales\Model\Quote
+     * @return \Magento\Quote\Model\Quote
      */
     public function setupQuote($quoteData)
     {
diff --git a/dev/tests/integration/testsuite/Magento/Tax/Model/Sales/Total/Quote/SubtotalTest.php b/dev/tests/integration/testsuite/Magento/Tax/Model/Sales/Total/Quote/SubtotalTest.php
index b91ca4a5a3bc115ee1b574cd3e4f4da0cde8526c..cd731795215d0bf9f049576684f167634af2e53c 100644
--- a/dev/tests/integration/testsuite/Magento/Tax/Model/Sales/Total/Quote/SubtotalTest.php
+++ b/dev/tests/integration/testsuite/Magento/Tax/Model/Sales/Total/Quote/SubtotalTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Tax\Model\Sales\Total\Quote;
 
 use Magento\Tax\Model\ClassModel;
@@ -77,13 +79,13 @@ class SubtotalTest extends \PHPUnit_Framework_TestCase
 
         $quoteShippingAddressDataObject = $this->getShippingAddressDataObject($fixtureCustomerId);
 
-        /** @var \Magento\Sales\Model\Quote\Address $quoteShippingAddress */
-        $quoteShippingAddress = $this->objectManager->create('Magento\Sales\Model\Quote\Address');
+        /** @var \Magento\Quote\Model\Quote\Address $quoteShippingAddress */
+        $quoteShippingAddress = $this->objectManager->create('Magento\Quote\Model\Quote\Address');
         $quoteShippingAddress->importCustomerAddressData($quoteShippingAddressDataObject);
         $quantity = 2;
 
-        /** @var \Magento\Sales\Model\Quote $quote */
-        $quote = $this->objectManager->create('Magento\Sales\Model\Quote');
+        /** @var \Magento\Quote\Model\Quote $quote */
+        $quote = $this->objectManager->create('Magento\Quote\Model\Quote');
         $quote->setStoreId(
                 1
             )->setIsActive(
@@ -106,8 +108,8 @@ class SubtotalTest extends \PHPUnit_Framework_TestCase
             );
         $address = $quote->getShippingAddress();
 
-        /** @var \Magento\Sales\Model\Quote\Address\Total\Subtotal $addressSubtotalCollector */
-        $addressSubtotalCollector = $this->objectManager->create('Magento\Sales\Model\Quote\Address\Total\Subtotal');
+        /** @var \Magento\Quote\Model\Quote\Address\Total\Subtotal $addressSubtotalCollector */
+        $addressSubtotalCollector = $this->objectManager->create('Magento\Quote\Model\Quote\Address\Total\Subtotal');
         $addressSubtotalCollector->collect($address);
 
         /** @var \Magento\Tax\Model\Sales\Total\Quote\Subtotal $subtotalCollector */
@@ -118,7 +120,7 @@ class SubtotalTest extends \PHPUnit_Framework_TestCase
         $this->assertEquals($expected['subtotal'] + $expected['tax_amount'], $address->getSubtotalInclTax());
         $this->assertEquals($expected['discount_amount'], $address->getDiscountAmount());
         $items = $address->getAllItems();
-        /** @var \Magento\Sales\Model\Quote\Address\Item $item */
+        /** @var \Magento\Quote\Model\Quote\Address\Item $item */
         $item = $items[0];
         $this->assertEquals($expected['items'][0]['price'], $item->getPrice());
         $this->assertEquals($expected['items'][0]['price_incl_tax'], $item->getPriceInclTax());
@@ -192,13 +194,13 @@ class SubtotalTest extends \PHPUnit_Framework_TestCase
 
         $quoteShippingAddressDataObject = $this->getShippingAddressDataObject($fixtureCustomerId);
 
-        /** @var \Magento\Sales\Model\Quote\Address $quoteShippingAddress */
-        $quoteShippingAddress = $this->objectManager->create('Magento\Sales\Model\Quote\Address');
+        /** @var \Magento\Quote\Model\Quote\Address $quoteShippingAddress */
+        $quoteShippingAddress = $this->objectManager->create('Magento\Quote\Model\Quote\Address');
         $quoteShippingAddress->importCustomerAddressData($quoteShippingAddressDataObject);
         $quantity = 2;
 
-        /** @var \Magento\Sales\Model\Quote $quote */
-        $quote = $this->objectManager->create('Magento\Sales\Model\Quote');
+        /** @var \Magento\Quote\Model\Quote $quote */
+        $quote = $this->objectManager->create('Magento\Quote\Model\Quote');
         $quote->setStoreId(
                 1
             )->setIsActive(
@@ -221,8 +223,8 @@ class SubtotalTest extends \PHPUnit_Framework_TestCase
             );
         $address = $quote->getShippingAddress();
 
-        /** @var \Magento\Sales\Model\Quote\Address\Total\Subtotal $addressSubtotalCollector */
-        $addressSubtotalCollector = $this->objectManager->create('Magento\Sales\Model\Quote\Address\Total\Subtotal');
+        /** @var \Magento\Quote\Model\Quote\Address\Total\Subtotal $addressSubtotalCollector */
+        $addressSubtotalCollector = $this->objectManager->create('Magento\Quote\Model\Quote\Address\Total\Subtotal');
         $addressSubtotalCollector->collect($address);
 
         /** @var \Magento\Tax\Model\Sales\Total\Quote\Subtotal $subtotalCollector */
@@ -233,7 +235,7 @@ class SubtotalTest extends \PHPUnit_Framework_TestCase
         $this->assertEquals($expected['subtotal'] + $expected['tax_amount'], $address->getSubtotalInclTax());
         $this->assertEquals($expected['discount_amount'], $address->getDiscountAmount());
         $items = $address->getAllItems();
-        /** @var \Magento\Sales\Model\Quote\Address\Item $item */
+        /** @var \Magento\Quote\Model\Quote\Address\Item $item */
         $item = $items[0];
         $this->assertEquals($expected['items'][0]['price'], $item->getPrice());
         $this->assertEquals($expected['items'][0]['price_incl_tax'], $item->getPriceInclTax());
diff --git a/dev/tests/integration/testsuite/Magento/Tax/Model/Sales/Total/Quote/TaxTest.php b/dev/tests/integration/testsuite/Magento/Tax/Model/Sales/Total/Quote/TaxTest.php
index 72d5b48d39509b514def331219e0693f8ec46f33..6d8592bc316705e46055b9befc8eab89f3fc9442 100644
--- a/dev/tests/integration/testsuite/Magento/Tax/Model/Sales/Total/Quote/TaxTest.php
+++ b/dev/tests/integration/testsuite/Magento/Tax/Model/Sales/Total/Quote/TaxTest.php
@@ -67,16 +67,16 @@ class TaxTest extends \PHPUnit_Framework_TestCase
         $customerAddress = $objectManager->create('Magento\Customer\Model\Address')->load($fixtureCustomerId);
         /** Set data which corresponds tax class fixture */
         $customerAddress->setCountryId('US')->setRegionId(12)->save();
-        /** @var \Magento\Sales\Model\Quote\Address $quoteShippingAddress */
-        $quoteShippingAddress = $objectManager->create('Magento\Sales\Model\Quote\Address');
+        /** @var \Magento\Quote\Model\Quote\Address $quoteShippingAddress */
+        $quoteShippingAddress = $objectManager->create('Magento\Quote\Model\Quote\Address');
         /** @var \Magento\Customer\Api\AddressRepositoryInterface $addressRepository */
         $addressRepository = $objectManager->create('Magento\Customer\Api\AddressRepositoryInterface');
         $quoteShippingAddress->importCustomerAddressData($addressRepository->getById($fixtureCustomerAddressId));
 
         /** @var \Magento\Customer\Api\CustomerRepositoryInterface $customerRepository */
         $customerRepository = $objectManager->create('Magento\Customer\Api\CustomerRepositoryInterface');
-        /** @var \Magento\Sales\Model\Quote $quote */
-        $quote = $objectManager->create('Magento\Sales\Model\Quote');
+        /** @var \Magento\Quote\Model\Quote $quote */
+        $quote = $objectManager->create('Magento\Quote\Model\Quote');
         $quote->setStoreId(1)
             ->setIsActive(true)
             ->setIsMultiShipping(false)
@@ -111,7 +111,7 @@ class TaxTest extends \PHPUnit_Framework_TestCase
     /**
      * Verify fields in quote item
      *
-     * @param \Magento\Sales\Model\Quote\Address\Item $item
+     * @param \Magento\Quote\Model\Quote\Address\Item $item
      * @param array $expectedItemData
      * @return $this
      */
@@ -179,7 +179,7 @@ class TaxTest extends \PHPUnit_Framework_TestCase
     /**
      * Verify fields in quote address
      *
-     * @param \Magento\Sales\Model\Quote\Address $quoteAddress
+     * @param \Magento\Quote\Model\Quote\Address $quoteAddress
      * @param array $expectedAddressData
      * @return $this
      */
@@ -199,7 +199,7 @@ class TaxTest extends \PHPUnit_Framework_TestCase
     /**
      * Verify fields in quote address and quote item are correct
      *
-     * @param \Magento\Sales\Model\Quote\Address $quoteAddress
+     * @param \Magento\Quote\Model\Quote\Address $quoteAddress
      * @param array $expectedResults
      * @return $this
      */
@@ -211,7 +211,7 @@ class TaxTest extends \PHPUnit_Framework_TestCase
 
         $quoteItems = $quoteAddress->getAllItems();
         foreach ($quoteItems as $item) {
-            /** @var  \Magento\Sales\Model\Quote\Address\Item $item */
+            /** @var  \Magento\Quote\Model\Quote\Address\Item $item */
             $sku = $item->getProduct()->getSku();
             $expectedItemData = $expectedResults['items_data'][$sku];
             $this->verifyItem($item, $expectedItemData);
diff --git a/dev/tests/integration/testsuite/Magento/Tax/Pricing/AdjustmentTest.php b/dev/tests/integration/testsuite/Magento/Tax/Pricing/AdjustmentTest.php
index e1fa1b0d22374666dcdf207a7172961043972b17..2f1d00c08c99e2b86cc3807e4028d66f8dd49447 100644
--- a/dev/tests/integration/testsuite/Magento/Tax/Pricing/AdjustmentTest.php
+++ b/dev/tests/integration/testsuite/Magento/Tax/Pricing/AdjustmentTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Tax\Pricing;
 
 class AdjustmentTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/integration/testsuite/Magento/TaxImportExport/Model/Rate/CsvImportHandlerTest.php b/dev/tests/integration/testsuite/Magento/TaxImportExport/Model/Rate/CsvImportHandlerTest.php
index de8fa89724500d947fec6e2d01fe3f121863aa40..465309edf17721e36d7caaadbdba747d587f736f 100644
--- a/dev/tests/integration/testsuite/Magento/TaxImportExport/Model/Rate/CsvImportHandlerTest.php
+++ b/dev/tests/integration/testsuite/Magento/TaxImportExport/Model/Rate/CsvImportHandlerTest.php
@@ -8,7 +8,7 @@ namespace Magento\TaxImportExport\Model\Rate;
 class CsvImportHandlerTest extends \PHPUnit_Framework_TestCase
 {
     /**
-     * @var \Magento\Tax\Model\Rate\CsvImportHandler
+     * @var \Magento\TaxImportExport\Model\Rate\CsvImportHandler
      */
     protected $_importHandler;
 
diff --git a/dev/tests/integration/testsuite/Magento/Test/Integrity/LayoutTest.php b/dev/tests/integration/testsuite/Magento/Test/Integrity/LayoutTest.php
index 0ba4b440cfa637179a911ff82eb1aadb2b5c2a0e..0529cf8577a6f2580ac498424d64e0dab7b60e48 100644
--- a/dev/tests/integration/testsuite/Magento/Test/Integrity/LayoutTest.php
+++ b/dev/tests/integration/testsuite/Magento/Test/Integrity/LayoutTest.php
@@ -5,6 +5,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Test\Integrity;
 
 class LayoutTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/integration/testsuite/Magento/Test/Integrity/Modular/TemplateFilesTest.php b/dev/tests/integration/testsuite/Magento/Test/Integrity/Modular/TemplateFilesTest.php
index fa3ba33cdd0783140a9b910971e082bc0c1e3a49..b3a71c7e530fb006c4ef758a74960543c6d79564 100644
--- a/dev/tests/integration/testsuite/Magento/Test/Integrity/Modular/TemplateFilesTest.php
+++ b/dev/tests/integration/testsuite/Magento/Test/Integrity/Modular/TemplateFilesTest.php
@@ -43,6 +43,7 @@ class TemplateFilesTest extends \Magento\TestFramework\TestCase\AbstractIntegrit
 
     /**
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function allTemplatesDataProvider()
     {
diff --git a/dev/tests/integration/testsuite/Magento/Test/Integrity/StaticFilesTest.php b/dev/tests/integration/testsuite/Magento/Test/Integrity/StaticFilesTest.php
index c677d8fabe8a2b17ed37f70cb9c16cb2d4c6706b..3fdd9a54e8ab0fb514e09f845c9127d4afb83596 100644
--- a/dev/tests/integration/testsuite/Magento/Test/Integrity/StaticFilesTest.php
+++ b/dev/tests/integration/testsuite/Magento/Test/Integrity/StaticFilesTest.php
@@ -31,6 +31,11 @@ class StaticFilesTest extends \PHPUnit_Framework_TestCase
      */
     private $design;
 
+    /**
+     * @var \Magento\Framework\View\Design\ThemeInterface
+     */
+    private $baseTheme;
+
     protected function setUp()
     {
         $om = \Magento\TestFramework\Helper\Bootstrap::getObjectmanager();
@@ -38,6 +43,7 @@ class StaticFilesTest extends \PHPUnit_Framework_TestCase
         $this->explicitFallback = $om->get('Magento\Framework\View\Design\FileResolution\Fallback\Resolver\Simple');
         $this->themeRepo = $om->get('Magento\Framework\View\Design\Theme\FlyweightFactory');
         $this->design = $om->get('Magento\Framework\View\DesignInterface');
+        $this->baseTheme = $om->get('Magento\Framework\View\Design\ThemeInterface');
     }
 
     /**
@@ -126,6 +132,9 @@ class StaticFilesTest extends \PHPUnit_Framework_TestCase
      */
     private function getStaticFile($area, $theme, $locale, $filePath, $module, $isExplicit = false)
     {
+        if ($area == 'base') {
+            $theme = $this->baseTheme;
+        }
         if (!is_object($theme)) {
             $themePath = $theme ?: $this->getDefaultThemePath($area);
             $theme = $this->themeRepo->create($themePath, $area);
diff --git a/dev/tests/integration/testsuite/Magento/Test/Integrity/Theme/TemplateFilesTest.php b/dev/tests/integration/testsuite/Magento/Test/Integrity/Theme/TemplateFilesTest.php
index 7461e380b7967aa5661f522af9dfdb260b309005..af6e3cd1cb7e6271e3cb2cd4d1263b7162ad71aa 100644
--- a/dev/tests/integration/testsuite/Magento/Test/Integrity/Theme/TemplateFilesTest.php
+++ b/dev/tests/integration/testsuite/Magento/Test/Integrity/Theme/TemplateFilesTest.php
@@ -62,6 +62,7 @@ class TemplateFilesTest extends \Magento\TestFramework\TestCase\AbstractIntegrit
      *
      * @param  \SimpleXMLElement $layoutXml
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _getLayoutTemplates($layoutXml)
     {
diff --git a/dev/tests/integration/testsuite/Magento/User/Controller/Adminhtml/User/InvalidateTokenTest.php b/dev/tests/integration/testsuite/Magento/User/Controller/Adminhtml/User/InvalidateTokenTest.php
index 0d80739d9b45725820475fb555b33282b4083a86..65c7948cd5a8ba7157d215373aa30d316f00f011 100644
--- a/dev/tests/integration/testsuite/Magento/User/Controller/Adminhtml/User/InvalidateTokenTest.php
+++ b/dev/tests/integration/testsuite/Magento/User/Controller/Adminhtml/User/InvalidateTokenTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\User\Controller\Adminhtml\User;
 
 use Magento\Framework\Message\MessageInterface;
diff --git a/dev/tests/integration/testsuite/Magento/User/Model/UserTest.php b/dev/tests/integration/testsuite/Magento/User/Model/UserTest.php
index b91b15f6e961e170294cecf76fe0829d055eec6d..08648da473c851fe13211ba5ef7700b9fd1320c9 100644
--- a/dev/tests/integration/testsuite/Magento/User/Model/UserTest.php
+++ b/dev/tests/integration/testsuite/Magento/User/Model/UserTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\User\Model;
 
 /**
diff --git a/dev/tests/integration/testsuite/Magento/Weee/Model/TaxTest.php b/dev/tests/integration/testsuite/Magento/Weee/Model/TaxTest.php
index 8a94168c895cfee1b71ed87a68946413116e7410..bc287e21e45b11b2bee282f38ab70c5250327966 100644
--- a/dev/tests/integration/testsuite/Magento/Weee/Model/TaxTest.php
+++ b/dev/tests/integration/testsuite/Magento/Weee/Model/TaxTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Weee\Model;
 
 use Magento\Customer\Api\Data\CustomerDataBuilder;
@@ -67,8 +70,8 @@ class TaxTest extends \PHPUnit_Framework_TestCase
         /** @var \Magento\Customer\Model\Group $group */
         $group = Bootstrap::getObjectManager()->create('Magento\Customer\Model\Group');
         $fixtureGroupId = $group->load($fixtureGroupCode, 'customer_group_code')->getId();
-        /** @var \Magento\Sales\Model\Quote $quote */
-        $quote = Bootstrap::getObjectManager()->create('Magento\Sales\Model\Quote');
+        /** @var \Magento\Quote\Model\Quote $quote */
+        $quote = Bootstrap::getObjectManager()->create('Magento\Quote\Model\Quote');
         $quote->setCustomerGroupId($fixtureGroupId);
         $quote->setCustomerTaxClassId($fixtureTaxClassId);
         $quote->setCustomer($customerDataSet);
diff --git a/dev/tests/integration/testsuite/Magento/Widget/Model/Config/ReaderTest.php b/dev/tests/integration/testsuite/Magento/Widget/Model/Config/ReaderTest.php
index 9f15a97686b6233c26e1945a2a79f91b4c3d9d91..60099ca1a352254869aee777fbfea1c2c4b7be51 100644
--- a/dev/tests/integration/testsuite/Magento/Widget/Model/Config/ReaderTest.php
+++ b/dev/tests/integration/testsuite/Magento/Widget/Model/Config/ReaderTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Widget\Model\Config;
 
 use Magento\TestFramework\Helper\Bootstrap;
diff --git a/dev/tests/integration/testsuite/Magento/Wishlist/Helper/RssTest.php b/dev/tests/integration/testsuite/Magento/Wishlist/Helper/RssTest.php
index 2d5cb31d0e4f8deee4f58b2fb431e91f11f0e902..72264a8ccf60d40c0a06515cdfc02b31e26e3297 100644
--- a/dev/tests/integration/testsuite/Magento/Wishlist/Helper/RssTest.php
+++ b/dev/tests/integration/testsuite/Magento/Wishlist/Helper/RssTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Wishlist\Helper;
 
 class RssTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/static/framework/Magento/TestFramework/CodingStandard/Tool/BlacklistInterface.php b/dev/tests/static/framework/Magento/TestFramework/CodingStandard/Tool/BlacklistInterface.php
new file mode 100644
index 0000000000000000000000000000000000000000..a87c8afb8126863eff1a568451fcadbf941ab1b9
--- /dev/null
+++ b/dev/tests/static/framework/Magento/TestFramework/CodingStandard/Tool/BlacklistInterface.php
@@ -0,0 +1,20 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+
+// @codingStandardsIgnoreFile
+
+namespace Magento\TestFramework\CodingStandard\Tool;
+
+interface BlacklistInterface
+{
+    /**
+     * Set list of paths to be excluded from tool run
+     *
+     * @param array $blackList
+     * @return void
+     */
+    public function setBlackList(array $blackList);
+}
diff --git a/dev/tests/static/framework/Magento/TestFramework/CodingStandard/Tool/CodeMessDetector.php b/dev/tests/static/framework/Magento/TestFramework/CodingStandard/Tool/CodeMessDetector.php
index ecbc37577bdf99af054153e8d547f4fab884aa1c..ed5c2b33fdb300f95da2efff0e1ceb3835ad1575 100644
--- a/dev/tests/static/framework/Magento/TestFramework/CodingStandard/Tool/CodeMessDetector.php
+++ b/dev/tests/static/framework/Magento/TestFramework/CodingStandard/Tool/CodeMessDetector.php
@@ -9,21 +9,23 @@
  */
 namespace Magento\TestFramework\CodingStandard\Tool;
 
-class CodeMessDetector implements \Magento\TestFramework\CodingStandard\ToolInterface
+use \Magento\TestFramework\CodingStandard\ToolInterface;
+
+class CodeMessDetector implements ToolInterface
 {
     /**
      * Ruleset directory
      *
      * @var string
      */
-    protected $_rulesetFile;
+    private $rulesetFile;
 
     /**
      * Report file
      *
      * @var string
      */
-    protected $_reportFile;
+    private $reportFile;
 
     /**
      * Constructor
@@ -33,8 +35,8 @@ class CodeMessDetector implements \Magento\TestFramework\CodingStandard\ToolInte
      */
     public function __construct($rulesetFile, $reportFile)
     {
-        $this->_reportFile = $reportFile;
-        $this->_rulesetFile = $rulesetFile;
+        $this->reportFile = $reportFile;
+        $this->rulesetFile = $rulesetFile;
     }
 
     /**
@@ -44,35 +46,31 @@ class CodeMessDetector implements \Magento\TestFramework\CodingStandard\ToolInte
      */
     public function canRun()
     {
-        return class_exists('PHP_PMD_TextUI_Command');
+        return class_exists('PHPMD\TextUI\Command');
     }
 
     /**
-     * Run tool for files specified
-     *
-     * @param array $whiteList Files/directories to be inspected
-     * @param array $blackList Files/directories to be excluded from the inspection
-     * @param array $extensions Array of alphanumeric strings, for example: 'php', 'xml', 'phtml', 'css'...
-     *
-     * @return int
+     * {@inheritdoc}
      */
-    public function run(array $whiteList, array $blackList = [], array $extensions = [])
+    public function run(array $whiteList)
     {
+        if (empty($whiteList)) {
+            return \PHPMD\TextUI\Command::EXIT_SUCCESS;
+        }
+
         $commandLineArguments = [
             'run_file_mock', //emulate script name in console arguments
             implode(',', $whiteList),
             'xml', //report format
-            $this->_rulesetFile,
-            '--exclude',
-            implode(',', $blackList),
+            $this->rulesetFile,
             '--reportfile',
-            $this->_reportFile,
+            $this->reportFile,
         ];
 
-        $options = new \PHP_PMD_TextUI_CommandLineOptions($commandLineArguments);
+        $options = new \PHPMD\TextUI\CommandLineOptions($commandLineArguments);
 
-        $command = new \PHP_PMD_TextUI_Command();
+        $command = new \PHPMD\TextUI\Command();
 
-        return $command->run($options, new \PHP_PMD_RuleSetFactory());
+        return $command->run($options, new \PHPMD\RuleSetFactory());
     }
 }
diff --git a/dev/tests/static/framework/Magento/TestFramework/CodingStandard/Tool/CodeSniffer.php b/dev/tests/static/framework/Magento/TestFramework/CodingStandard/Tool/CodeSniffer.php
index 75807b3d1d84e214cf9edb9565819fe77670b4ea..8fad6ea044f991990631bfc98b90822e7875ff3f 100644
--- a/dev/tests/static/framework/Magento/TestFramework/CodingStandard/Tool/CodeSniffer.php
+++ b/dev/tests/static/framework/Magento/TestFramework/CodingStandard/Tool/CodeSniffer.php
@@ -12,28 +12,35 @@ namespace Magento\TestFramework\CodingStandard\Tool;
 use Magento\TestFramework\CodingStandard\Tool\CodeSniffer\Wrapper;
 use Magento\TestFramework\CodingStandard\ToolInterface;
 
-class CodeSniffer implements ToolInterface
+class CodeSniffer implements ToolInterface, ExtensionInterface
 {
     /**
      * Ruleset directory
      *
      * @var string
      */
-    protected $rulesetDir;
+    private $rulesetDir;
 
     /**
      * Report file
      *
      * @var string
      */
-    protected $reportFile;
+    private $reportFile;
 
     /**
      * PHPCS cli tool wrapper
      *
      * @var Wrapper
      */
-    protected $wrapper;
+    private $wrapper;
+
+    /**
+     * List of extensions for tool run
+     *
+     * @var array
+     */
+    private $extensions = ['php'];
 
     /**
      * Constructor
@@ -50,64 +57,41 @@ class CodeSniffer implements ToolInterface
     }
 
     /**
-     * Whether the tool can be ran on the current environment
-     *
-     * @return bool
+     * {@inheritdoc}
      */
-    public function canRun()
+    public function setExtensions(array $extensions)
     {
-        return class_exists('PHP_CodeSniffer_CLI');
+        $this->extensions = $extensions;
     }
 
     /**
-     * Return the version of code sniffer found
+     * Whether the tool can be ran on the current environment
      *
-     * @return string
+     * @return bool
      */
-    public function version()
+    public function canRun()
     {
-        return $this->wrapper->version();
+        return class_exists('PHP_CodeSniffer_CLI');
     }
 
     /**
-     * Run tool for files specified
-     *
-     * @param array $whiteList Files/directories to be inspected
-     * @param array $blackList Files/directories to be excluded from the inspection
-     * @param array $extensions Array of alphanumeric strings, for example: 'php', 'xml', 'phtml', 'css'...
-     * @param int $warningSeverity Severity level of warnings, default is 0
-     *
-     * @return int
+     * {@inheritdoc}
      */
-    public function run(
-        array $whiteList,
-        array $blackList = [],
-        array $extensions = [],
-        $warningSeverity = 0
-    ) {
-        $whiteList = array_map(
-            function ($item) {
-                return $item;
-            },
-            $whiteList
-        );
-
-        $blackList = array_map(
-            function ($item) {
-                return preg_quote($item);
-            },
-            $blackList
-        );
+    public function run(array $whiteList)
+    {
+        if (empty($whiteList)) {
+            return 0;
+        }
 
         $this->wrapper->checkRequirements();
         $settings = $this->wrapper->getDefaults();
         $settings['files'] = $whiteList;
         $settings['standard'] = [$this->rulesetDir];
-        $settings['ignored'] = $blackList;
-        $settings['extensions'] = $extensions;
+        $settings['extensions'] = $this->extensions;
         $settings['reportFile'] = $this->reportFile;
-        $settings['warningSeverity'] = $warningSeverity;
+        $settings['warningSeverity'] = 0;
         $settings['reports']['checkstyle'] = null;
+
         $this->wrapper->setValues($settings);
 
         ob_start();
@@ -116,14 +100,4 @@ class CodeSniffer implements ToolInterface
 
         return $result;
     }
-
-    /**
-     * Get report file
-     *
-     * @return string
-     */
-    public function getReportFile()
-    {
-        return $this->reportFile;
-    }
 }
diff --git a/dev/tests/static/framework/Magento/TestFramework/CodingStandard/Tool/CopyPasteDetector.php b/dev/tests/static/framework/Magento/TestFramework/CodingStandard/Tool/CopyPasteDetector.php
index 67b9a1ca31842d22f9a647497f5baf8d2e9fbcd2..7d3b1a991127a5d06c2f8214efc15a283b70bc40 100644
--- a/dev/tests/static/framework/Magento/TestFramework/CodingStandard/Tool/CopyPasteDetector.php
+++ b/dev/tests/static/framework/Magento/TestFramework/CodingStandard/Tool/CopyPasteDetector.php
@@ -4,19 +4,30 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * PHP Copy Paste Detector v1.4.0 tool wrapper
  */
 namespace Magento\TestFramework\CodingStandard\Tool;
 
-class CopyPasteDetector implements \Magento\TestFramework\CodingStandard\ToolInterface
+use Magento\TestFramework\CodingStandard\ToolInterface;
+
+class CopyPasteDetector implements ToolInterface, BlacklistInterface
 {
     /**
      * Report file
      *
      * @var string
      */
-    protected $_reportFile;
+    private $reportFile;
+
+    /**
+     * List of paths to be excluded from tool run
+     *
+     * @var array
+     */
+    private $blacklist;
 
     /**
      * Constructor
@@ -25,7 +36,15 @@ class CopyPasteDetector implements \Magento\TestFramework\CodingStandard\ToolInt
      */
     public function __construct($reportFile)
     {
-        $this->_reportFile = $reportFile;
+        $this->reportFile = $reportFile;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function setBlackList(array $blackList)
+    {
+        $this->blacklist = $blackList;
     }
 
     /**
@@ -45,17 +64,14 @@ class CopyPasteDetector implements \Magento\TestFramework\CodingStandard\ToolInt
      * Run tool for files specified
      *
      * @param array $whiteList Files/directories to be inspected
-     * @param array $blackList Files/directories to be excluded from the inspection
-     * @param array $extensions Array of alphanumeric strings, for example: 'php', 'xml', 'phtml', 'css'...
+     * @return int
      *
      * @SuppressWarnings(PHPMD.UnusedLocalVariable)
-     *
-     * @return int
      */
-    public function run(array $whiteList, array $blackList = [], array $extensions = [])
+    public function run(array $whiteList)
     {
         $blackListStr = ' ';
-        foreach ($blackList as $file) {
+        foreach ($this->blacklist as $file) {
             $file = escapeshellarg(trim($file));
             if (!$file) {
                 continue;
@@ -64,8 +80,8 @@ class CopyPasteDetector implements \Magento\TestFramework\CodingStandard\ToolInt
         }
 
         $command = 'phpcpd' . ' --log-pmd ' . escapeshellarg(
-            $this->_reportFile
-        ) . ' --min-lines 13' . $blackListStr . ' ' . BP;
+                $this->reportFile
+            ) . ' --min-lines 13' . $blackListStr . ' ' . implode(' ', $whiteList);
 
         exec($command, $output, $exitCode);
 
diff --git a/dev/tests/static/framework/Magento/TestFramework/CodingStandard/Tool/ExtensionInterface.php b/dev/tests/static/framework/Magento/TestFramework/CodingStandard/Tool/ExtensionInterface.php
new file mode 100644
index 0000000000000000000000000000000000000000..8d8f8e966f23e65c5d41c8f35a126c10881be467
--- /dev/null
+++ b/dev/tests/static/framework/Magento/TestFramework/CodingStandard/Tool/ExtensionInterface.php
@@ -0,0 +1,19 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+
+namespace Magento\TestFramework\CodingStandard\Tool;
+
+interface ExtensionInterface
+{
+    /**
+     * Set extensions for tool to run
+     * Example: 'php', 'xml', 'phtml', 'css'
+     *
+     * @param array $extensions
+     * @return void
+     */
+    public function setExtensions(array $extensions);
+}
diff --git a/dev/tests/static/framework/Magento/TestFramework/CodingStandard/ToolInterface.php b/dev/tests/static/framework/Magento/TestFramework/CodingStandard/ToolInterface.php
index 43967eac691bc8b917ef606ebee3a32dd79d7e77..41cf691cdf9e240f8894f9d985807db3018d14d0 100644
--- a/dev/tests/static/framework/Magento/TestFramework/CodingStandard/ToolInterface.php
+++ b/dev/tests/static/framework/Magento/TestFramework/CodingStandard/ToolInterface.php
@@ -19,13 +19,10 @@ interface ToolInterface
     public function canRun();
 
     /**
-     * Run tool for files cpecified
+     * Run tool for files specified
      *
      * @param array $whiteList Files/directories to be inspected
-     * @param array $blackList Files/directories to be excluded from the inspection
-     * @param array $extensions Array of alphanumeric strings, for example: 'php', 'xml', 'phtml', 'css'...
-     *
      * @return int
      */
-    public function run(array $whiteList, array $blackList = [], array $extensions = []);
+    public function run(array $whiteList);
 }
diff --git a/dev/tests/static/framework/Magento/TestFramework/Inspection/WordsFinder.php b/dev/tests/static/framework/Magento/TestFramework/Inspection/WordsFinder.php
index e84bcd7df3f13c4c62b47d03268ddd3a9710cbf7..c54d302515b5643cd4b0b208249595b703572466 100644
--- a/dev/tests/static/framework/Magento/TestFramework/Inspection/WordsFinder.php
+++ b/dev/tests/static/framework/Magento/TestFramework/Inspection/WordsFinder.php
@@ -18,7 +18,7 @@ class WordsFinder
      */
     protected $_binaryExtensions = [
         'jpg', 'jpeg', 'png', 'gif', 'swf', 'mp3', 'avi', 'mov', 'flv', 'jar', 'zip',
-        'eot', 'ttf', 'woff', 'ico', 'svg',
+        'eot', 'ttf', 'woff', 'woff2', 'ico', 'svg',
     ];
 
     /**
diff --git a/dev/tests/static/framework/Magento/TestFramework/Utility/ChangedFiles.php b/dev/tests/static/framework/Magento/TestFramework/Utility/ChangedFiles.php
index 4ed93a6e9bb3b134566559d12db5101deef36fbe..d513da4dc16777bdb7223e38c8c0068feb58570c 100644
--- a/dev/tests/static/framework/Magento/TestFramework/Utility/ChangedFiles.php
+++ b/dev/tests/static/framework/Magento/TestFramework/Utility/ChangedFiles.php
@@ -6,6 +6,8 @@
 
 namespace Magento\TestFramework\Utility;
 
+use Magento\Framework\Test\Utility\Files;
+
 /**
  * A helper to gather various changed files
  * if INCREMENTAL_BUILD env variable is set by CI build infrastructure, only files changed in the
@@ -22,16 +24,14 @@ class ChangedFiles
     public static function getPhpFiles($changedFilesList)
     {
         $fileHelper = \Magento\Framework\Test\Utility\Files::init();
-        $allPhpFiles = $fileHelper->getPhpFiles();
         if (isset($_ENV['INCREMENTAL_BUILD'])) {
-            $phpFiles = file($changedFilesList, FILE_IGNORE_NEW_LINES);
-            foreach ($phpFiles as $key => $phpFile) {
-                $phpFiles[$key] = $fileHelper->getPathToSource() . '/' . $phpFile;
+            $phpFiles = Files::readLists($changedFilesList);
+            if (!empty($phpFiles)) {
+                $phpFiles = \Magento\Framework\Test\Utility\Files::composeDataSets($phpFiles);
+                $phpFiles = array_intersect_key($phpFiles, $fileHelper->getPhpFiles());
             }
-            $phpFiles = \Magento\Framework\Test\Utility\Files::composeDataSets($phpFiles);
-            $phpFiles = array_intersect_key($phpFiles, $allPhpFiles);
         } else {
-            $phpFiles = $allPhpFiles;
+            $phpFiles = $fileHelper->getPhpFiles();
         }
 
         return $phpFiles;
diff --git a/dev/tests/static/framework/tests/unit/testsuite/Magento/TestFramework/CodingStandard/Tool/CodeSnifferTest.php b/dev/tests/static/framework/tests/unit/testsuite/Magento/TestFramework/CodingStandard/Tool/CodeSnifferTest.php
index fec684fd4c0cef81ee58855b1d480cb64be43407..8f71637e829994b74f55a926b80e2a68bc3e2789 100644
--- a/dev/tests/static/framework/tests/unit/testsuite/Magento/TestFramework/CodingStandard/Tool/CodeSnifferTest.php
+++ b/dev/tests/static/framework/tests/unit/testsuite/Magento/TestFramework/CodingStandard/Tool/CodeSnifferTest.php
@@ -40,7 +40,6 @@ class CodeSnifferTest extends \PHPUnit_Framework_TestCase
     public function testRun()
     {
         $whiteList = ['test' . rand(), 'test' . rand()];
-        $blackList = ['test' . rand(), 'test' . rand()];
         $extensions = ['test' . rand(), 'test' . rand()];
 
         $this->_wrapper->expects($this->once())->method('getDefaults')->will($this->returnValue([]));
@@ -48,22 +47,18 @@ class CodeSnifferTest extends \PHPUnit_Framework_TestCase
         $expectedCliEmulation = [
             'files' => $whiteList,
             'standard' => [self::RULE_SET],
-            'ignored' => $blackList,
             'extensions' => $extensions,
             'reportFile' => self::REPORT_FILE,
             'warningSeverity' => 0,
             'reports' => ['checkstyle' => null],
         ];
 
+        $this->_tool->setExtensions($extensions);
+
         $this->_wrapper->expects($this->once())->method('setValues')->with($this->equalTo($expectedCliEmulation));
 
         $this->_wrapper->expects($this->once())->method('process');
 
-        $this->_tool->run($whiteList, $blackList, $extensions);
-    }
-
-    public function testGetReportFile()
-    {
-        $this->assertEquals(self::REPORT_FILE, $this->_tool->getReportFile());
+        $this->_tool->run($whiteList);
     }
 }
diff --git a/dev/tests/static/testsuite/Magento/Test/Integrity/ComposerTest.php b/dev/tests/static/testsuite/Magento/Test/Integrity/ComposerTest.php
new file mode 100644
index 0000000000000000000000000000000000000000..97039e891351231f60d6c028e57585596dfd78aa
--- /dev/null
+++ b/dev/tests/static/testsuite/Magento/Test/Integrity/ComposerTest.php
@@ -0,0 +1,439 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+namespace Magento\Test\Integrity;
+
+use Magento\Framework\Composer\MagentoComponent;
+use Magento\Framework\Test\Utility\Files;
+use Magento\Framework\Shell;
+use Magento\Framework\Exception;
+
+/**
+ * A test that enforces validity of composer.json files and any other conventions in Magento components
+ */
+class ComposerTest extends \PHPUnit_Framework_TestCase
+{
+    /**
+     * @var \Magento\Framework\Shell
+     */
+    private static $shell;
+
+    /**
+     * @var bool
+     */
+    private static $isComposerAvailable;
+
+    /**
+     * @var string
+     */
+    private static $root;
+
+    /**
+     * @var \stdClass
+     */
+    private static $rootJson;
+
+    /**
+     * @var array
+     */
+    private static $dependencies;
+
+    /**
+     * @var string
+     */
+    private static $composerPath = 'composer';
+
+    public static function setUpBeforeClass()
+    {
+        if (defined('TESTS_COMPOSER_PATH')) {
+            self::$composerPath = TESTS_COMPOSER_PATH;
+        }
+        self::$shell = self::createShell();
+        self::$isComposerAvailable = self::isComposerAvailable();
+        self::$root = Files::init()->getPathToSource();
+        self::$rootJson = json_decode(file_get_contents(self::$root . '/composer.json'), true);
+        self::$dependencies = [];
+    }
+
+    public function testValidComposerJson()
+    {
+        $invoker = new \Magento\Framework\Test\Utility\AggregateInvoker($this);
+        $invoker(
+        /**
+         * @param string $dir
+         * @param string $packageType
+         */
+            function ($dir, $packageType) {
+                $this->assertComposerAvailable();
+                $file = $dir . '/composer.json';
+                $this->assertFileExists($file);
+                self::$shell->execute(self::$composerPath . ' validate --working-dir=%s', [$dir]);
+                $contents = file_get_contents($file);
+                $json = json_decode($contents);
+                $this->assertCodingStyle($contents);
+                $this->assertMagentoConventions($dir, $packageType, $json);
+            },
+            $this->validateComposerJsonDataProvider()
+        );
+    }
+
+    /**
+     * @return array
+     */
+    public function validateComposerJsonDataProvider()
+    {
+        $root = \Magento\Framework\Test\Utility\Files::init()->getPathToSource();
+        $result = [];
+        foreach (glob("{$root}/app/code/Magento/*", GLOB_ONLYDIR) as $dir) {
+            $result[$dir] = [$dir, 'magento2-module'];
+        }
+        foreach (glob("{$root}/app/i18n/magento/*", GLOB_ONLYDIR) as $dir) {
+            $result[$dir] = [$dir, 'magento2-language'];
+        }
+        foreach (glob("{$root}/app/design/adminhtml/Magento/*", GLOB_ONLYDIR) as $dir) {
+            $result[$dir] = [$dir, 'magento2-theme'];
+        }
+        foreach (glob("{$root}/app/design/frontend/Magento/*", GLOB_ONLYDIR) as $dir) {
+            $result[$dir] = [$dir, 'magento2-theme'];
+        }
+        foreach (glob("{$root}/lib/internal/Magento/*", GLOB_ONLYDIR) as $dir) {
+            $result[$dir] = [$dir, 'magento2-library'];
+        }
+        $result[$root] = [$root, 'project'];
+
+        return $result;
+    }
+
+    /**
+     * Some of coding style conventions
+     *
+     * @param string $contents
+     */
+    private function assertCodingStyle($contents)
+    {
+        $this->assertNotRegExp('/" :\s*["{]/', $contents, 'Coding style: no space before colon.');
+        $this->assertNotRegExp('/":["{]/', $contents, 'Coding style: a space is necessary after colon.');
+    }
+
+    /**
+     * Enforce Magento-specific conventions to a composer.json file
+     *
+     * @param string $dir
+     * @param string $packageType
+     * @param \StdClass $json
+     * @throws \InvalidArgumentException
+     */
+    private function assertMagentoConventions($dir, $packageType, \StdClass $json)
+    {
+        $this->assertObjectHasAttribute('name', $json);
+        $this->assertObjectHasAttribute('license', $json);
+        $this->assertObjectHasAttribute('type', $json);
+        $this->assertObjectHasAttribute('version', $json);
+        $this->assertVersionInSync($json->name, $json->version);
+        $this->assertObjectHasAttribute('require', $json);
+        $this->assertEquals($packageType, $json->type);
+        if ($packageType !== 'project') {
+            self::$dependencies[] = $json->name;
+            $this->assertHasMap($json);
+            $this->assertMapConsistent($dir, $json);
+        }
+        switch ($packageType) {
+            case 'magento2-module':
+                $xml = simplexml_load_file("$dir/etc/module.xml");
+                $this->assertConsistentModuleName($xml, $json->name);
+                $this->assertDependsOnPhp($json->require);
+                $this->assertDependsOnFramework($json->require);
+                $this->assertDependsOnInstaller($json->require);
+                $this->assertRequireInSync($json);
+                break;
+            case 'magento2-language':
+                $this->assertRegExp('/^magento\/language\-[a-z]{2}_[a-z]{2}$/', $json->name);
+                $this->assertDependsOnFramework($json->require);
+                $this->assertDependsOnInstaller($json->require);
+                $this->assertRequireInSync($json);
+                break;
+            case 'magento2-theme':
+                $this->assertRegExp('/^magento\/theme-(?:adminhtml|frontend)(\-[a-z0-9_]+)+$/', $json->name);
+                $this->assertDependsOnPhp($json->require);
+                $this->assertDependsOnFramework($json->require);
+                $this->assertDependsOnInstaller($json->require);
+                $this->assertRequireInSync($json);
+                break;
+            case 'magento2-library':
+                $this->assertDependsOnPhp($json->require);
+                $this->assertRegExp('/^magento\/framework$/', $json->name);
+                $this->assertDependsOnInstaller($json->require);
+                $this->assertRequireInSync($json);
+                break;
+            case 'project':
+                sort(self::$dependencies);
+                $dependenciesListed = [];
+                foreach (array_keys((array)self::$rootJson['replace']) as $key) {
+                    if (MagentoComponent::matchMagentoComponent($key)) {
+                        $dependenciesListed[] = $key;
+                    }
+                }
+                sort($dependenciesListed);
+                $nonDeclaredDependencies = array_diff(self::$dependencies, $dependenciesListed);
+                $nonexistentDependencies = array_diff($dependenciesListed, self::$dependencies);
+                $this->assertEmpty(
+                    $nonDeclaredDependencies,
+                    'Following dependencies are not declared in the root composer.json: '
+                    . join(', ', $nonDeclaredDependencies)
+                );
+                $this->assertEmpty(
+                    $nonexistentDependencies,
+                    'Following dependencies declared in the root composer.json do not exist: '
+                    . join(', ', $nonexistentDependencies)
+                );
+                break;
+            default:
+                throw new \InvalidArgumentException("Unknown package type {$packageType}");
+        }
+    }
+
+    /**
+     * Assert that there is map in specified composer json
+     *
+     * @param \StdClass $json
+     */
+    private function assertHasMap(\StdClass $json)
+    {
+        $error = 'There must be an "extra->map" node in composer.json of each Magento component.';
+        $this->assertObjectHasAttribute('extra', $json, $error);
+        $this->assertObjectHasAttribute('map', $json->extra, $error);
+        $this->assertInternalType('array', $json->extra->map, $error);
+    }
+
+    /**
+     * Assert that component directory name and mapping information are consistent
+     *
+     * @param string $dir
+     * @param \StdClass $json
+     */
+    private function assertMapConsistent($dir, $json)
+    {
+        preg_match('/^.+\/(.+)\/(.+)$/', $dir, $matches);
+        list(, $vendor, $name) = $matches;
+        $map = $json->extra->map;
+        $this->assertArrayHasKey(0, $map);
+        $this->assertArrayHasKey(1, $map[0]);
+        $this->assertRegExp(
+            "/{$vendor}\\/{$name}$/",
+            $map[0][1],
+            'Mapping info is inconsistent with the directory structure'
+        );
+    }
+
+    /**
+     * Enforce package naming conventions for modules
+     *
+     * @param \SimpleXMLElement $xml
+     * @param string $packageName
+     */
+    private function assertConsistentModuleName(\SimpleXMLElement $xml, $packageName)
+    {
+        $moduleName = (string)$xml->module->attributes()->name;
+        $this->assertEquals(
+            $packageName,
+            $this->convertModuleToPackageName($moduleName),
+            "For the module '{$moduleName}', the expected package name is '{$packageName}'"
+        );
+    }
+
+    /**
+     * Make sure a component depends on php version
+     *
+     * @param \StdClass $json
+     */
+    private function assertDependsOnPhp(\StdClass $json)
+    {
+        $this->assertObjectHasAttribute('php', $json, 'This component is expected to depend on certain PHP version(s)');
+    }
+
+    /**
+     * Make sure a component depends on magento/framework component
+     *
+     * @param \StdClass $json
+     */
+    private function assertDependsOnFramework(\StdClass $json)
+    {
+        $this->assertObjectHasAttribute(
+            'magento/framework',
+            $json,
+            'This component is expected to depend on magento/framework'
+        );
+    }
+
+    /**
+     * Make sure a component depends on Magento Composer Installer component
+     *
+     * @param \StdClass $json
+     */
+    private function assertDependsOnInstaller(\StdClass $json)
+    {
+        $this->assertObjectHasAttribute(
+            'magento/magento-composer-installer',
+            $json,
+            'This component is expected to depend on magento/magento-composer-installer'
+        );
+    }
+
+    /**
+     * Assert that versions in root composer.json and Magento component's composer.json are not out of sync
+     *
+     * @param string $name
+     * @param string $version
+     */
+    private function assertVersionInSync($name, $version)
+    {
+        $this->assertEquals(
+            self::$rootJson['version'],
+            $version,
+            "Version {$version} in component {$name} is inconsistent with version "
+            . self::$rootJson['version'] . ' in root composer.json'
+        );
+    }
+
+    /**
+     * Make sure requirements of components are reflected in root composer.json
+     *
+     * @param \StdClass $json
+     */
+    private function assertRequireInSync(\StdClass $json)
+    {
+        $name = $json->name;
+        if (isset($json->require)) {
+            $errors = [];
+            foreach (array_keys((array)$json->require) as $depName) {
+                if ($depName == 'magento/magento-composer-installer') {
+                    // Magento Composer Installer is not needed for already existing components
+                    continue;
+                }
+                if (!isset(self::$rootJson['require-dev'][$depName]) && !isset(self::$rootJson['require'][$depName])
+                    && !isset(self::$rootJson['replace'][$depName])) {
+                    $errors[] = "'$name' depends on '$depName'";
+                }
+            }
+            if (!empty($errors)) {
+                $this->fail(
+                    "The following dependencies are missing in root 'composer.json',"
+                    . " while declared in child components.\n"
+                    . "Consider adding them to 'require-dev' section (if needed for child components only),"
+                    . " to 'replace' section (if they are present in the project),"
+                    . " to 'require' section (if needed for the skeleton).\n"
+                    . join("\n", $errors)
+                );
+            }
+        }
+    }
+
+    /**
+     * Convert a fully qualified module name to a composer package name according to conventions
+     *
+     * @param string $moduleName
+     * @return string
+     */
+    private function convertModuleToPackageName($moduleName)
+    {
+        list($vendor, $name) = explode('_', $moduleName, 2);
+        $package = 'module';
+        foreach (preg_split('/([A-Z][a-z\d]+)/', $name, -1, PREG_SPLIT_DELIM_CAPTURE) as $chunk) {
+            $package .= $chunk ? "-{$chunk}" : '';
+        }
+        return strtolower("{$vendor}/{$package}");
+    }
+
+    /**
+     * Create shell wrapper
+     *
+     * @return \Magento\Framework\Shell
+     */
+    private static function createShell()
+    {
+        return new Shell(new Shell\CommandRenderer, null);
+    }
+
+    /**
+     * Check if composer command is available in the environment
+     *
+     * @return bool
+     */
+    private static function isComposerAvailable()
+    {
+        try {
+            self::$shell->execute(self::$composerPath . ' --version');
+        } catch (Exception $e) {
+            return false;
+        }
+        return true;
+    }
+
+    /**
+     * Skip the test if composer is unavailable
+     */
+    private function assertComposerAvailable()
+    {
+        if (!self::$isComposerAvailable) {
+            $this->markTestSkipped();
+        }
+    }
+
+    public function testComponentPathsInRoot()
+    {
+        if (!isset(self::$rootJson['extra']) || !isset(self::$rootJson['extra']['component_paths'])) {
+            $this->markTestSkipped("The root composer.json file doesn't mention any extra component paths information");
+        }
+        $this->assertArrayHasKey(
+            'replace',
+            self::$rootJson,
+            "If there are any component paths specified, then they must be reflected in 'replace' section"
+        );
+        $flat = $this->getFlatPathsInfo(self::$rootJson['extra']['component_paths']);
+        while (list(, list($component, $path)) = each($flat)) {
+            $this->assertFileExists(
+                self::$root . '/' . $path,
+                "Missing or invalid component path: {$component} -> {$path}"
+            );
+            $this->assertArrayHasKey(
+                $component,
+                self::$rootJson['replace'],
+                "The {$component} is specified in 'extra->component_paths', but missing in 'replace' section"
+            );
+        }
+        foreach (array_keys(self::$rootJson['replace']) as $replace) {
+            if (!MagentoComponent::matchMagentoComponent($replace)) {
+                $this->assertArrayHasKey(
+                    $replace,
+                    self::$rootJson['extra']['component_paths'],
+                    "The {$replace} is specified in 'replace', but missing in 'extra->component_paths' section"
+                );
+            }
+        }
+    }
+
+    /**
+     * @param array $info
+     * @return array
+     * @throws \Exception
+     */
+    private function getFlatPathsInfo(array $info)
+    {
+        $flat = [];
+        foreach ($info as $key => $element) {
+            if (is_string($element)) {
+                $flat[] = [$key, $element];
+            } elseif (is_array($element)) {
+                foreach ($element as $path) {
+                    $flat[] = [$key, $path];
+                }
+            } else {
+                throw new \Exception("Unexpected element 'in extra->component_paths' section");
+            }
+        }
+
+        return $flat;
+    }
+}
diff --git a/dev/tests/static/testsuite/Magento/Test/Integrity/_files/blacklist/reference.txt b/dev/tests/static/testsuite/Magento/Test/Integrity/_files/blacklist/reference.txt
index c6bac2ba9f3b3dd5970b717f88acea5427bb38bb..29a6687221a578eec95394ebb2161c46ceba331f 100644
--- a/dev/tests/static/testsuite/Magento/Test/Integrity/_files/blacklist/reference.txt
+++ b/dev/tests/static/testsuite/Magento/Test/Integrity/_files/blacklist/reference.txt
@@ -51,3 +51,17 @@ Model3
 \Magento\TestModule2\Service\V1\Entity\ItemBuilder
 \Magento\TestModule4\Service\V1\Entity\DataObjectResponse
 \Magento\TestModule4\Service\V1\Entity\DataObjectRequest
+\Magento\Mtf\ObjectManager\Config\Mapper\Dom
+\Magento\Mtf\Data\Argument\Interpreter\Constant
+\Magento\Mtf\Data\Argument\Interpreter\Boolean
+\Magento\Mtf\Data\Argument\Interpreter\String
+\Magento\Mtf\Data\Argument\Interpreter\Number
+\Magento\Mtf\Data\Argument\Interpreter\NullType
+\Magento\Mtf\Data\Argument\Interpreter\Object
+\Magento\Mtf\Data\Argument\Interpreter\Argument
+\Magento\Mtf\Data\Argument\Interpreter\ArrayType
+\Magento\Mtf\Data\Argument\InterpreterInterface
+\Magento\Mtf\Util\Generate\GenerateResult
+\Magento\Mtf\Util\Generate\Repository\Resource
+\Magento\Mtf\Client\Element
+\Magento\Mtf\TestSuite\AppState
\ No newline at end of file
diff --git a/dev/tests/static/testsuite/Magento/Test/Integrity/_files/dependency_test/tables_ce.php b/dev/tests/static/testsuite/Magento/Test/Integrity/_files/dependency_test/tables_ce.php
index de34be9d65c8d037c55cb3f543b1e88c844facb5..980e001c02481a266e4262f54984caa02ddf216e 100644
--- a/dev/tests/static/testsuite/Magento/Test/Integrity/_files/dependency_test/tables_ce.php
+++ b/dev/tests/static/testsuite/Magento/Test/Integrity/_files/dependency_test/tables_ce.php
@@ -261,13 +261,13 @@ return [
     'sales_order_status_state' => 'Magento_Sales',
     'sales_order_tax' => 'Magento_Tax',
     'sales_payment_transaction' => 'Magento_Sales',
-    'sales_quote' => 'Magento_Sales',
-    'sales_quote_address' => 'Magento_Sales',
-    'sales_quote_address_item' => 'Magento_Sales',
-    'sales_quote_shipping_rate' => 'Magento_Sales',
-    'sales_quote_item' => 'Magento_Sales',
-    'sales_quote_item_option' => 'Magento_Sales',
-    'sales_quote_payment' => 'Magento_Sales',
+    'quote' => 'Magento_Quote',
+    'quote_address' => 'Magento_Quote',
+    'quote_address_item' => 'Magento_Quote',
+    'quote_shipping_rate' => 'Magento_Quote',
+    'quote_item' => 'Magento_Quote',
+    'quote_item_option' => 'Magento_Quote',
+    'quote_payment' => 'Magento_Quote',
     'sales_refunded_aggregated' => 'Magento_Sales',
     'sales_refunded_aggregated_order' => 'Magento_Sales',
     'sales_shipment' => 'Magento_Sales',
@@ -277,8 +277,8 @@ return [
     'sales_shipment_track' => 'Magento_Sales',
     'sales_shipping_aggregated' => 'Magento_Sales',
     'sales_shipping_aggregated_order' => 'Magento_Sales',
-    'sales_quote_entity' => 'Magento_Sales',
-    'sales_quote_temp' => 'Magento_Sales',
+    'quote_entity' => 'Magento_Quote',
+    'quote_temp' => 'Magento_Quote',
     'salesrule_coupon' => 'Magento_SalesRule',
     'coupon_aggregated' => 'Magento_SalesRule',
     'coupon_aggregated_order' => 'Magento_SalesRule',
diff --git a/dev/tests/static/testsuite/Magento/Test/Legacy/ObsoleteCodeTest.php b/dev/tests/static/testsuite/Magento/Test/Legacy/ObsoleteCodeTest.php
index 17b1064d56f0893e4a57ad9eeb4c0512871f3467..dcb1b59726ce23c2a6deb25bba29b854908bac19 100644
--- a/dev/tests/static/testsuite/Magento/Test/Legacy/ObsoleteCodeTest.php
+++ b/dev/tests/static/testsuite/Magento/Test/Legacy/ObsoleteCodeTest.php
@@ -130,7 +130,7 @@ class ObsoleteCodeTest extends \PHPUnit_Framework_TestCase
                 $this->_testObsoleteConstants($content);
                 $this->_testObsoletePropertySkipCalculate($content);
             },
-            \Magento\TestFramework\Utility\ChangedFiles::getPhpFiles(__DIR__ . '/_files/changed_files.txt')
+            \Magento\TestFramework\Utility\ChangedFiles::getPhpFiles(__DIR__ . '/_files/changed_files*')
         );
     }
 
diff --git a/dev/tests/static/testsuite/Magento/Test/Legacy/_files/obsolete_classes.php b/dev/tests/static/testsuite/Magento/Test/Legacy/_files/obsolete_classes.php
index 5081d8b97e99db128630a1beafb9d1caa7415b31..f12e7d360fea297c329082f978afe83b0d77d3db 100644
--- a/dev/tests/static/testsuite/Magento/Test/Legacy/_files/obsolete_classes.php
+++ b/dev/tests/static/testsuite/Magento/Test/Legacy/_files/obsolete_classes.php
@@ -1302,6 +1302,7 @@ return [
     ['Magento\Core\Controller\Varien\DispatchableInterface'],
     ['Magento\Core\Controller\Varien\Front', 'Magento\Framework\App\FrontController'],
     ['Magento\Core\Controller\FrontInterface', 'Magento\Framework\App\FrontControllerInterface'],
+    ['Magento\Core\Model\App\Emulation', 'Magento\Store\Model\App\Emulation'],
     ['Magento\Core\Model\App\Handler'],
     ['Magento\Core\Model\App\Proxy'],
     ['Magento\Core\Model\Event\Config\SchemaLocator', 'Magento\Framework\Event\Config\SchemaLocator'],
@@ -1362,7 +1363,7 @@ return [
     ['Magento\Sales\Model\Resource\Order\Creditmemo\Attribute\Backend\Parent'],
     ['Magento\Sales\Model\Resource\Order\Invoice\Attribute\Backend\Parent'],
     ['Magento\Sales\Model\Resource\Order\Shipment\Attribute\Backend\Parent'],
-    ['Magento\Sales\Model\Resource\Quote\Address\Attribute\Backend\Parent'],
+    ['Magento\Quote\Model\Resource\Quote\Address\Attribute\Backend\Parent'],
     ['Magento\Core\Helper\Http'],
     ['Magento\Core\Model\ThemeInterface', 'Magento\Framework\View\Design\ThemeInterface'],
     ['Magento\Core\Model\View\DesignInterface', 'Magento\Framework\View\DesignInterface'],
@@ -1876,15 +1877,15 @@ return [
     ['CollFactory', 'CollectionFactory'], // no need to shorten anymore
     [
         'Magento\Shipping\Model\Rate\Result\AbstractResult',
-        'Magento\Sales\Model\Quote\Address\RateResult\AbstractResult'
+        'Magento\Quote\Model\Quote\Address\RateResult\AbstractResult'
     ],
-    ['Magento\Shipping\Model\Rate\Result\Error', 'Magento\Sales\Model\Quote\Address\RateResult\Error'],
-    ['Magento\Shipping\Model\Rate\Result\Method', 'Magento\Sales\Model\Quote\Address\RateResult\Method'],
+    ['Magento\Shipping\Model\Rate\Result\Error', 'Magento\Quote\Model\Quote\Address\RateResult\Error'],
+    ['Magento\Shipping\Model\Rate\Result\Method', 'Magento\Quote\Model\Quote\Address\RateResult\Method'],
     [
         'Magento\Shipping\Model\Rate\AbstractRate',
-        'Magento\Sales\Model\Quote\Address\Rate + Magento\Shipping\Model\CarrierFactory'
+        'Magento\Quote\Model\Quote\Address\Rate + Magento\Shipping\Model\CarrierFactory'
     ],
-    ['Magento\Shipping\Model\Rate\Request', 'Magento\Sales\Model\Quote\Address\RateRequest'],
+    ['Magento\Shipping\Model\Rate\Request', 'Magento\Quote\Model\Quote\Address\RateRequest'],
     ['Magento\PageCache\Block\Adminhtml\Cache\Additional'],
     ['Magento\PageCache\Model\Control\ControlInterface'],
     ['Magento\PageCache\Model\Control\Zend'],
@@ -2684,7 +2685,7 @@ return [
     ['Magento\Catalog\Block\Product'],
     ['\Magento\Sales\Model\Observer'],
     ['\Magento\Install\Block\Begin'],
-    ['\Magento\Checkout\Service\V1\QuoteLoader', '\Magento\Sales\Model\QuoteRepository'],
+    ['\Magento\Checkout\Service\V1\QuoteLoader', '\Magento\Quote\Model\QuoteRepository'],
     ['Magento\PageCache\Model\Observer'],
     ['Magento\Catalog\Model\Layer\Filter\Price\Algorithm', 'Magento\Framework\Search\Dynamic\Algorithm'],
     ['Magento\Rss\Block\Order\Info\Buttons\Rss'],
@@ -2853,4 +2854,5 @@ return [
     ['Magento\Sales\Model\Quote\Address\Total\Nominal\Collector'],
     ['Magento\Sales\Model\Quote\Address\Total\Nominal\Shipping'],
     ['Magento\Sales\Model\Quote\Address\Total\Nominal\Subtotal'],
+    ['Magento\Core\Model\Validator\Factory', 'Magento\Framework\Validator\Factory'],
 ];
diff --git a/dev/tests/static/testsuite/Magento/Test/Legacy/_files/obsolete_config_nodes.php b/dev/tests/static/testsuite/Magento/Test/Legacy/_files/obsolete_config_nodes.php
index b95d28b99a422540e1f10574288f93ee2d8fcf59..724512ff417f5ce5c635e1c8ba45328e61d11284 100644
--- a/dev/tests/static/testsuite/Magento/Test/Legacy/_files/obsolete_config_nodes.php
+++ b/dev/tests/static/testsuite/Magento/Test/Legacy/_files/obsolete_config_nodes.php
@@ -7,6 +7,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 return [
     '/config/global/fieldsets' => '',
     '/config/global/cache/betatypes' => '',
@@ -80,7 +83,7 @@ return [
     '/config/*/layout' => 'Use convention for layout files placement instead of configuration',
     '/config/frontend/product/collection/attributes' => 'Use /config/group[@name="catalog_product"] of catalog_attributes.xml',
     '/config/frontend/category/collection/attributes' => 'Use /config/group[@name="catalog_category"] of catalog_attributes.xml',
-    '/config/global/sales/quote/item/product_attributes' => 'Use /config/group[@name="sales_quote_item"] of catalog_attributes.xml',
+    '/config/global/sales/quote/item/product_attributes' => 'Use /config/group[@name="quote_item"] of catalog_attributes.xml',
     '/config/global/wishlist/item/product_attributes' => 'Use /config/group[@name="wishlist_item"] of catalog_attributes.xml',
     '/config/global/catalog/product/flat/attribute_nodes' => 'Use /config/global/catalog/product/flat/attribute_groups',
     '/config/global/customer/address/formats' => 'Use /config/format of address_formats.xml',
diff --git a/dev/tests/static/testsuite/Magento/Test/Legacy/_files/obsolete_constants.php b/dev/tests/static/testsuite/Magento/Test/Legacy/_files/obsolete_constants.php
index ad56d8ab44429c1aa0e21fbef8084fbe95e9c7e2..a648097786fb8e93016e61b84a4612753a0eab63 100644
--- a/dev/tests/static/testsuite/Magento/Test/Legacy/_files/obsolete_constants.php
+++ b/dev/tests/static/testsuite/Magento/Test/Legacy/_files/obsolete_constants.php
@@ -7,6 +7,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 return [
     ['ADMIN_STORE_ID', 'Magento\Framework\AppInterface'],
     ['BACKORDERS_BELOW'],
@@ -181,7 +184,7 @@ return [
     ['XML_PATH_LOCALE_INHERITANCE', 'Mage_Core_Model_Translate'],
     ['XML_PATH_PRODUCT_ATTRIBUTES', 'Magento\Wishlist\Model\Config'],
     ['XML_PATH_PRODUCT_COLLECTION_ATTRIBUTES', 'Magento\Catalog\Model\Config'],
-    ['XML_PATH_QUOTE_PRODUCT_ATTRIBUTES', 'Magento\Sales\Model\Quote\Config'],
+    ['XML_PATH_QUOTE_PRODUCT_ATTRIBUTES', 'Magento\Quote\Model\Quote\Config'],
     ['XML_PATH_SENDING_SET_RETURN_PATH', 'Mage_Newsletter_Model_Subscriber'],
     [
         'XML_PATH_SKIP_PROCESS_MODULES_UPDATES',
diff --git a/dev/tests/static/testsuite/Magento/Test/Legacy/_files/obsolete_methods.php b/dev/tests/static/testsuite/Magento/Test/Legacy/_files/obsolete_methods.php
index d3bd171fec9b73ac78437c89a45d7f1241259d67..d2109ce14c60e1dba38d7630429f04b048a02124 100644
--- a/dev/tests/static/testsuite/Magento/Test/Legacy/_files/obsolete_methods.php
+++ b/dev/tests/static/testsuite/Magento/Test/Legacy/_files/obsolete_methods.php
@@ -5,6 +5,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 return [
     ['__get', 'Magento\Framework\Object'],
     ['__set', 'Magento\Framework\Object'],
@@ -36,7 +39,7 @@ return [
     ['_getIsActiveAttributeId', 'Magento\Catalog\Model\Resource\Category\Tree', 'Magento\Catalog\Model\Resource\Category::getIsActiveAttributeId'],
     ['_getIsActiveAttributeId', 'Magento\Catalog\Model\Resource\Category', 'Magento\Catalog\Model\Resource\Category::getIsActiveAttributeId'],
     ['_bytesToMbytes', 'Magento\Catalog\Model\Product\Option\Type\File'],
-    ['_calculatePrice', 'Magento\Sales\Model\Quote\Item\AbstractItem'],
+    ['_calculatePrice', 'Magento\Quote\Model\Quote\Item\AbstractItem'],
     ['_canBeStoreCodeInUrl', 'Magento\Framework\App\Request\Http'],
     ['_canShowField', 'Magento\Backend\Block\System\Config\Form'],
     ['_canUseCacheForInit', 'Magento\Core\Model\Config'],
@@ -181,18 +184,18 @@ return [
     ['_sort', 'Magento\Backend\Model\Config\Structure\Converter'],
     [
         'submitOrder',
-        'Magento\Sales\Model\Service\Quote',
-        'Magento\Sales\Model\Service\Quote::submitOrderWithDataObject'
+        'Magento\Quote\Model\Service\Quote',
+        'Magento\Quote\Model\Service\Quote::submitOrderWithDataObject'
     ],
     [
         'submitAll',
-        'Magento\Sales\Model\Service\Quote',
-        'Magento\Sales\Model\Service\Quote::submitAllWithDataObject'
+        'Magento\Quote\Model\Service\Quote',
+        'Magento\Quote\Model\Service\Quote::submitAllWithDataObject'
     ],
     [
         'exportCustomerAddress',
-        'Magento\Sales\Model\Quote\Address',
-        'Magento\Sales\Model\Quote\Address::exportCustomerAddressData'
+        'Magento\Quote\Model\Quote\Address',
+        'Magento\Quote\Model\Quote\Address::exportCustomerAddressData'
     ],
     ['_toHtml', 'Magento\Backend\Block\Widget\Container'],
     ['_unhookQueries', 'Magento\Core\Model\Resource\Setup'],
@@ -273,7 +276,7 @@ return [
     ['authFrontend'],
     ['authValidate', '', '\Magento\Framework\HTTP\Authentication::getCredentials'],
     ['bundlesAction', 'Magento\Catalog\Controller\Adminhtml\Product'],
-    ['calcTaxAmount', 'Magento\Sales\Model\Quote\Item\AbstractItem'],
+    ['calcTaxAmount', 'Magento\Quote\Model\Quote\Item\AbstractItem'],
     ['callbackQueryHook', 'Magento\Core\Model\Resource\Setup'],
     ['canCreateUser', 'Magento\User\Model\Resource\User'],
     ['canPrint', 'Magento\Checkout\Block\Onepage\Success'],
@@ -387,7 +390,7 @@ return [
     ['getAttributeDataModelFactory', 'Magento\Eav\Model\Validator\Attribute\Data'],
     ['getAttributes', 'Magento\Customer\Helper\Address'],
     ['getAttributesJson', 'Magento\Backend\Block\Catalog\Product\Edit\Tab\Super\Config', 'getAttributes'],
-    ['getBaseTaxAmount', 'Magento\Sales\Model\Quote\Item\AbstractItem'],
+    ['getBaseTaxAmount', 'Magento\Quote\Model\Quote\Item\AbstractItem'],
     ['getBlockClassName', 'Magento\Core\Model\Config'],
     ['getButtonsHtml', 'Magento_Bundle_Block_Adminhtml_Catalog_Product_Edit_Tab_Bundle_Option_Search'],
     ['getCache', 'Magento\Core\Model\Config'],
@@ -615,8 +618,9 @@ return [
         'Magento\Framework\App\CacheInterface',
         'Magento_Cache_Frontend_Decorator_TagScope::getTag()'
     ],
-    ['getTaxAmount', 'Magento\Sales\Model\Quote\Item\AbstractItem'],
+    ['getTaxAmount', 'Magento\Quote\Model\Quote\Item\AbstractItem'],
     ['getTaxRatesByProductClass', '', '_getAllRatesByProductClass'],
+    ['getThemeVersion', '\Magento\Framework\Config\Theme'],
     ['getAllRatesByProductClass', 'Magento\Tax\Helper\Data'],
     [
         'getTemplateProcessor',
@@ -631,9 +635,9 @@ return [
         'Magento\Core\Model\Design\Source\Design',
         'Magento_Core_Model_Theme::getThemeCollectionOptionArray'
     ],
-    ['getTotalModels', 'Magento\Sales\Model\Quote\Address'],
-    ['importCustomerAddress', 'Magento\Sales\Model\Quote\Address'],
-    ['getTotalModels', 'Magento\Sales\Model\Quote\Config'],
+    ['getTotalModels', 'Magento\Quote\Model\Quote\Address'],
+    ['importCustomerAddress', 'Magento\Quote\Model\Quote\Address'],
+    ['getTotalModels', 'Magento\Quote\Model\Quote\Config'],
     ['getTrackId', 'Magento\Shipping\Block\Tracking\Popup'],
     ['getTrackingInfoByOrder', 'Magento\Shipping\Block\Tracking\Popup'],
     ['getTrackingInfoByShip', 'Magento\Shipping\Block\Tracking\Popup'],
@@ -687,7 +691,7 @@ return [
     ['insertProductPrice', 'Magento\Catalog\Model\Resource\Product\Attribute\Backend\Tierprice'],
     ['isAbsolutePath'],
     ['isAdmin', 'Magento\Store\Model\Store'],
-    ['isAllowedGuestCheckout', 'Magento\Sales\Model\Quote'],
+    ['isAllowedGuestCheckout', 'Magento\Quote\Model\Quote'],
     ['isApplicableToQuote', 'Magento\Payment\Model\Method\AbstractMethod'],
     ['isCheckoutAvailable', 'Magento\Multishipping\Model\Checkout\Type\Multishipping'],
     ['isDirectOutput', 'Magento\Framework\View\Layout'],
@@ -1230,7 +1234,7 @@ return [
     [
         'changeQuoteCustomerGroupId',
         '\Magento\Sales\Model\Observer',
-        '\Magento\Sales\Model\Observer\Frontend\Quote\Address\CollectTotals::dispatch'
+        '\Magento\Quote\Model\Observer\Frontend\Quote\Address\CollectTotals::dispatch'
     ],
     [
         'getEncryptedSessionId',
@@ -1734,7 +1738,7 @@ return [
         'Magento\Eav\Model\Entity\Attribute\Source\AbstractSource',
         'Magento\Eav\Model\Entity\Attribute\Source\AbstractSource::getFlatColumns'
     ],
-    ['addProductAdvanced', '\Magento\Sales\Model\Quote'],
+    ['addProductAdvanced', '\Magento\Quote\Model\Quote'],
     ['translateArray', 'Magento\Framework\App\Helper\AbstractHelper'],
     ['getCalculator', '\Magento\Tax\Helper\Data'],
     ['getRatesForAllProductTaxClasses', 'Magento\Tax\Model\Calculation'],
@@ -1960,7 +1964,7 @@ return [
     ['getModule', 'Magento\Framework\Module\ModuleListInterface', 'getOne'],
     ['_getNewConditionModelInstance', 'Magento\Rule\Model\Condition\Combine'],
     ['getItemsRandomCollection', 'Magento\Sales\Model\Order'],
-    ['importOrderAddress', 'Magento\Sales\Model\Quote\Address', 'Magento\Sales\Model\Quote\Address::importCustomerAddressData'],
+    ['importOrderAddress', 'Magento\Quote\Model\Quote\Address', 'Magento\Quote\Model\Quote\Address::importCustomerAddressData'],
     ['_getUsedAttributes', 'Magento\SalesRule\Model\Rule'],
     ['getDefaultCustomerGroupId', 'Magento\Customer\Model\Vat', 'Magento\Customer\Api\GroupManagementInterface::getDefaultGroup'],
     [
@@ -2026,5 +2030,7 @@ return [
     ['getAllNonNominalItems', 'Magento\Sales\Model\Quote\Address'],
     ['getAllNominalItems', 'Magento\Sales\Model\Quote\Address'],
     ['isNominal', 'Magento\Sales\Model\Order\Item'],
-    ['getIsNominal', 'Magento\Sales\Model\Quote\Item\AbbstractItem']
+    ['getIsNominal', 'Magento\Sales\Model\Quote\Item\AbbstractItem'],
+    ['checkQuoteAmount', 'Magento\Sales\Helper\Data'],
+    ['getEntityTypeId', 'Magento\Customer\Model\Customer']
 ];
diff --git a/dev/tests/static/testsuite/Magento/Test/Legacy/_files/obsolete_properties.php b/dev/tests/static/testsuite/Magento/Test/Legacy/_files/obsolete_properties.php
index c16cc293b2336908f811809591705f9831266048..07abf20721f22a252052d45b745506477b9b3a5b 100644
--- a/dev/tests/static/testsuite/Magento/Test/Legacy/_files/obsolete_properties.php
+++ b/dev/tests/static/testsuite/Magento/Test/Legacy/_files/obsolete_properties.php
@@ -7,6 +7,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 return [
     ['_addresses', 'Magento\Customer\Model\Customer'],
     ['_addMinimalPrice', 'Magento\Catalog\Model\Resource\Product\Collection'],
@@ -126,7 +129,7 @@ return [
     ['_messageFactory', 'Magento\Core\Model\Session\Context', 'messagesFactory'],
     ['_sessionQuote', 'Magento\Sales\Block\Adminhtml\Order\Create\Messages', 'sessionQuote'],
     ['_coreRegistry', 'Magento\Sales\Block\Adminhtml\Order\View\Messages', 'coreRegistry'],
-    ['_message', 'Magento\Sales\Model\Quote', 'messageFactory'],
+    ['_message', 'Magento\Quote\Model\Quote', 'messageFactory'],
     ['_encryptedSessionId', '\Magento\Core\Model\Session\AbstractSession'],
     ['_skipSessionIdFlag', '\Magento\Core\Model\Session\AbstractSession'],
     ['_url', '\Magento\Core\Model\Session\AbstractSession'],
diff --git a/dev/tests/static/testsuite/Magento/Test/Php/Exemplar/CodeStyleTest/phpcs/input/coding_style/classes/normal_class.php b/dev/tests/static/testsuite/Magento/Test/Php/Exemplar/CodeStyleTest/phpcs/input/coding_style/classes/normal_class.php
index 4ec266905e67125178983f212a4d1ff27cc07690..657908ba8229ca498fb7ab8816843bf783c8ac7f 100644
--- a/dev/tests/static/testsuite/Magento/Test/Php/Exemplar/CodeStyleTest/phpcs/input/coding_style/classes/normal_class.php
+++ b/dev/tests/static/testsuite/Magento/Test/Php/Exemplar/CodeStyleTest/phpcs/input/coding_style/classes/normal_class.php
@@ -3,8 +3,11 @@
  * Doc block for this file
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Doc block for this class
+ * @SuppressWarnings(PHPMD.UnusedPrivateField)
  */
 class Magento_Test_Php_Exemplar_CodeStyleTest_phpcs_input_coding_style_classes_normal_class
 {
diff --git a/dev/tests/static/testsuite/Magento/Test/Php/Exemplar/CodeStyleTest/phpcs/input/coding_style/functions/method_without_scope.php b/dev/tests/static/testsuite/Magento/Test/Php/Exemplar/CodeStyleTest/phpcs/input/coding_style/functions/method_without_scope.php
index 146fae12ef89eb36dcece820c81f30f315090c77..368e768525ff3b4f4803e99989f77e71b4127b23 100644
--- a/dev/tests/static/testsuite/Magento/Test/Php/Exemplar/CodeStyleTest/phpcs/input/coding_style/functions/method_without_scope.php
+++ b/dev/tests/static/testsuite/Magento/Test/Php/Exemplar/CodeStyleTest/phpcs/input/coding_style/functions/method_without_scope.php
@@ -3,6 +3,8 @@
  * Doc block for this file
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Doc block for this class
  */
diff --git a/dev/tests/static/testsuite/Magento/Test/Php/Exemplar/CodeStyleTest/phpcs/input/coding_style/functions/multiline_wrong_declaration.php b/dev/tests/static/testsuite/Magento/Test/Php/Exemplar/CodeStyleTest/phpcs/input/coding_style/functions/multiline_wrong_declaration.php
index 750b756fa073fc6862255aaf0c32c2f04ecca7b9..f70fe08470a7f4db321ecd41ffb1c67f39de3bbc 100644
--- a/dev/tests/static/testsuite/Magento/Test/Php/Exemplar/CodeStyleTest/phpcs/input/coding_style/functions/multiline_wrong_declaration.php
+++ b/dev/tests/static/testsuite/Magento/Test/Php/Exemplar/CodeStyleTest/phpcs/input/coding_style/functions/multiline_wrong_declaration.php
@@ -8,7 +8,11 @@
  * @param int $moreEvenLongerParamForAllThatRoutineStuff
  * @param float $andThereGoesOneParameter
  * @return string
+ * @SuppressWarnings(PHPMD.UnusedFormalParameter)
  */
+
+// @codingStandardsIgnoreFile
+
 function thereGoesFunc($someLongParam, $anotherLongParam, $moreEvenLongerParamForAllThatRoutineStuff,
     $andThereGoesOneParameter
 ) {
@@ -27,6 +31,7 @@ function thereGoesFunc($someLongParam, $anotherLongParam, $moreEvenLongerParamFo
  * @param int $moreEvenLongerParamForAllThatRoutineStuff
  * @param float $andThereGoesOneParameter
  * @return string
+ * @SuppressWarnings(PHPMD.UnusedFormalParameter)
  */
 function thereGoesAnotherFunc($someLongParam, $anotherLongParam, $moreEvenLongerParamForAllThatRoutineStuff,
     $andThereGoesOneParameter
@@ -46,6 +51,7 @@ function thereGoesAnotherFunc($someLongParam, $anotherLongParam, $moreEvenLonger
  * @param int $moreEvenLongerParamForAllThatRoutineStuff
  * @param float $andThereGoesOneParameter
  * @return string
+ * @SuppressWarnings(PHPMD.UnusedFormalParameter)
  */
 function thereGoesThirdFunc($someLongParam, $anotherLongParam, $moreEvenLongerParamForAllThatRoutineStuff,
     $andThereGoesOneParameter
@@ -65,6 +71,7 @@ function thereGoesThirdFunc($someLongParam, $anotherLongParam, $moreEvenLongerPa
  * @param int $moreEvenLongerParamForAllThatRoutineStuff
  * @param float $andThereGoesOneParameter
  * @return string
+ * @SuppressWarnings(PHPMD.UnusedFormalParameter)
  */
 function thereGoesFourthFunc($someLongParam, $anotherLongParam, $moreEvenLongerParamForAllThatRoutineStuff,
     $andThereGoesOneParameter)
@@ -84,6 +91,7 @@ function thereGoesFourthFunc($someLongParam, $anotherLongParam, $moreEvenLongerP
  * @param int $moreEvenLongerParamForAllThatRoutineStuff
  * @param float $andThereGoesOneParameter
  * @return string
+ * @SuppressWarnings(PHPMD.UnusedFormalParameter)
  */
 function thereGoesFifthFunc($someLongParam, $anotherLongParam, $moreEvenLongerParamForAllThatRoutineStuff,
     $andThereGoesOneParameter)
diff --git a/dev/tests/static/testsuite/Magento/Test/Php/Exemplar/CodeStyleTest/phpcs/input/coding_style/functions/normal_func.php b/dev/tests/static/testsuite/Magento/Test/Php/Exemplar/CodeStyleTest/phpcs/input/coding_style/functions/normal_func.php
index acd5360c0f161dc225ef3748c94dd6693d6eaaac..72c8cc4ad1c9fdb81ea4d3b2a61c57dbb317269b 100644
--- a/dev/tests/static/testsuite/Magento/Test/Php/Exemplar/CodeStyleTest/phpcs/input/coding_style/functions/normal_func.php
+++ b/dev/tests/static/testsuite/Magento/Test/Php/Exemplar/CodeStyleTest/phpcs/input/coding_style/functions/normal_func.php
@@ -6,6 +6,9 @@
  * @param string|null $inParam
  * @return string
  */
+
+// @codingStandardsIgnoreFile
+
 function someFunc($inParam)
 {
     if ($inParam === null) {
@@ -23,6 +26,8 @@ function someFunc($inParam)
  * @param int $moreEvenLongerParamForAllThatRoutineStuff
  * @param float $andThereGoesOneParameter
  * @return string
+ * @SuppressWarnings(PHPMD.UnusedFormalParameter)
+ * @SuppressWarnings(PHPMD.UnusedLocalVariable)
  */
 function anotherFunc($someLongParam, $anotherLongParam, $moreEvenLongerParamForAllThatRoutineStuff,
     $andThereGoesOneParameter
diff --git a/dev/tests/static/testsuite/Magento/Test/Php/Exemplar/CodeStyleTest/phpcs/input/coding_style/functions/unneeded_multiline.php b/dev/tests/static/testsuite/Magento/Test/Php/Exemplar/CodeStyleTest/phpcs/input/coding_style/functions/unneeded_multiline.php
index c32855bbeb647f6bc8dab3d2ba69ba0f6ddbc6ff..b5f9052441eee9687e6e5f2e63d2a1f653b2f1dc 100644
--- a/dev/tests/static/testsuite/Magento/Test/Php/Exemplar/CodeStyleTest/phpcs/input/coding_style/functions/unneeded_multiline.php
+++ b/dev/tests/static/testsuite/Magento/Test/Php/Exemplar/CodeStyleTest/phpcs/input/coding_style/functions/unneeded_multiline.php
@@ -6,7 +6,11 @@
  * @param string|null $a
  * @param bool $b
  * @return string
+ * @SuppressWarnings(PHPMD.UnusedFormalParameter)
  */
+
+// @codingStandardsIgnoreFile
+
 function thereGoesFunc($a,
     $b
 ) {
diff --git a/dev/tests/static/testsuite/Magento/Test/Php/Exemplar/CodeStyleTest/phpcs/input/coding_style/inline_doc/format/wrong_align.php b/dev/tests/static/testsuite/Magento/Test/Php/Exemplar/CodeStyleTest/phpcs/input/coding_style/inline_doc/format/wrong_align.php
index 312abd2e855cabb2556117f24650fb6d442b93c3..1c80b5708e93f60cca4910aaabc8a1351e5b6d65 100644
--- a/dev/tests/static/testsuite/Magento/Test/Php/Exemplar/CodeStyleTest/phpcs/input/coding_style/inline_doc/format/wrong_align.php
+++ b/dev/tests/static/testsuite/Magento/Test/Php/Exemplar/CodeStyleTest/phpcs/input/coding_style/inline_doc/format/wrong_align.php
@@ -8,6 +8,9 @@
  * @copyright   ...
  * @license     ...
  */
+
+// @codingStandardsIgnoreFile
+
 class Magento_Test_Php_Exemplar_CodeStyleTest_phpcs_input_coding_style_inline_doc_format_wrong_align
 {
     /**
diff --git a/dev/tests/static/testsuite/Magento/Test/Php/Exemplar/CodeStyleTest/phpcs/input/coding_style/inline_doc/normal.php b/dev/tests/static/testsuite/Magento/Test/Php/Exemplar/CodeStyleTest/phpcs/input/coding_style/inline_doc/normal.php
index de702f43d38cba8b1ee4347eeed15c95cb7b93d4..15c44b8e07818e1d57b0d8e284aebb7fc716ceaa 100644
--- a/dev/tests/static/testsuite/Magento/Test/Php/Exemplar/CodeStyleTest/phpcs/input/coding_style/inline_doc/normal.php
+++ b/dev/tests/static/testsuite/Magento/Test/Php/Exemplar/CodeStyleTest/phpcs/input/coding_style/inline_doc/normal.php
@@ -7,6 +7,9 @@
  * @copyright   ...
  * @license     ...
  */
+
+// @codingStandardsIgnoreFile
+
 class Magento_Test_Php_Exemplar_CodeStyleTest_phpcs_input_coding_style_inline_doc_normal
 {
     /**
diff --git a/dev/tests/static/testsuite/Magento/Test/Php/Exemplar/CodeStyleTest/phpcs/input/naming/property/normal_underscore.php b/dev/tests/static/testsuite/Magento/Test/Php/Exemplar/CodeStyleTest/phpcs/input/naming/property/normal_underscore.php
index eaae02799752c6abc612f8fb6f1e0c06cc5be318..ff4ac13b9d000ac7e66839c8856b564184faea6f 100644
--- a/dev/tests/static/testsuite/Magento/Test/Php/Exemplar/CodeStyleTest/phpcs/input/naming/property/normal_underscore.php
+++ b/dev/tests/static/testsuite/Magento/Test/Php/Exemplar/CodeStyleTest/phpcs/input/naming/property/normal_underscore.php
@@ -1,4 +1,10 @@
 <?php
+/**
+ * @SuppressWarnings(PHPMD.UnusedPrivateField)
+ */
+
+// @codingStandardsIgnoreFile
+
 class Magento_Test_Php_Exemplar_CodeStyleTest_phpcs_input_naming_property_normal_underscore
 {
     private $_private = 1;
diff --git a/dev/tests/static/testsuite/Magento/Test/Php/LiveCodeTest.php b/dev/tests/static/testsuite/Magento/Test/Php/LiveCodeTest.php
index 977450de7cb1fde2403a98b083c03291f3060b85..2a24060a14dd0a5e99f9bbc5be4783dfc58ddc47 100644
--- a/dev/tests/static/testsuite/Magento/Test/Php/LiveCodeTest.php
+++ b/dev/tests/static/testsuite/Magento/Test/Php/LiveCodeTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Test\Php;
 
 use Magento\Framework\Test\Utility;
@@ -10,7 +13,7 @@ use Magento\TestFramework\CodingStandard\Tool\CodeMessDetector;
 use Magento\TestFramework\CodingStandard\Tool\CodeSniffer;
 use Magento\TestFramework\CodingStandard\Tool\CodeSniffer\Wrapper;
 use Magento\TestFramework\CodingStandard\Tool\CopyPasteDetector;
-use PHP_PMD_TextUI_Command;
+use PHPMD\TextUI\Command;
 use PHPUnit_Framework_TestCase;
 use Magento\Framework\Test\Utility\Files;
 
@@ -29,16 +32,6 @@ class LiveCodeTest extends PHPUnit_Framework_TestCase
      */
     protected static $pathToSource = '';
 
-    /**
-     * @var array
-     */
-    protected static $whiteList = [];
-
-    /**
-     * @var array
-     */
-    protected static $blackList = [];
-
     /**
      * Setup basics for all tests
      *
@@ -51,22 +44,40 @@ class LiveCodeTest extends PHPUnit_Framework_TestCase
         if (!is_dir(self::$reportDir)) {
             mkdir(self::$reportDir, 0777);
         }
-        self::setupFileLists();
     }
 
     /**
-     * Helper method to setup the black and white lists
+     * Returns whitelist based on blacklist and git changed files
      *
-     * @param string $type
-     * @return void
+     * @param array $fileTypes
+     * @return array
      */
-    public static function setupFileLists($type = '')
+    public static function getWhitelist($fileTypes = ['php'])
     {
-        if ($type != '' && !preg_match('/\/$/', $type)) {
-            $type = $type . '/';
+        $directoriesToCheck = file(__DIR__ . '/_files/whitelist/common.txt', FILE_IGNORE_NEW_LINES);
+
+        $changedFiles = array_filter(
+            Utility\Files::readLists(__DIR__ . '/_files/changed_files*'),
+            function ($path) use ($directoriesToCheck) {
+                foreach ($directoriesToCheck as $directory) {
+                    if (strpos($path, BP . '/' . $directory) === 0) {
+                        return true;
+                    }
+                }
+                return false;
+            }
+        );
+
+        if (!empty($fileTypes)) {
+            $changedFiles = array_filter(
+                $changedFiles,
+                function ($path) use ($fileTypes) {
+                    return in_array(pathinfo($path, PATHINFO_EXTENSION), $fileTypes);
+                }
+            );
         }
-        self::$whiteList = Utility\Files::readLists(__DIR__ . '/_files/' . $type . 'whitelist/*.txt');
-        self::$blackList = Utility\Files::readLists(__DIR__ . '/_files/' . $type . 'blacklist/*.txt');
+
+        return $changedFiles;
     }
 
     /**
@@ -83,15 +94,12 @@ class LiveCodeTest extends PHPUnit_Framework_TestCase
         if (!$codeSniffer->canRun()) {
             $this->markTestSkipped('PHP Code Sniffer is not installed.');
         }
-        if (version_compare($codeSniffer->version(), '1.4.7') === -1) {
+        if (version_compare($wrapper->version(), '1.4.7') === -1) {
             $this->markTestSkipped('PHP Code Sniffer Build Too Old.');
         }
-        self::setupFileLists('phpcs');
-        $result = $codeSniffer->run(self::$whiteList, self::$blackList, ['php']);
-        $this->assertFileExists(
-            $reportFile,
-            'Expected ' . $reportFile . ' to be created by phpcs run with PSR2 standard'
-        );
+
+        $result = $codeSniffer->run(self::getWhitelist());
+
         $this->assertEquals(
             0,
             $result,
@@ -112,8 +120,8 @@ class LiveCodeTest extends PHPUnit_Framework_TestCase
         if (!$codeSniffer->canRun()) {
             $this->markTestSkipped('PHP Code Sniffer is not installed.');
         }
-        self::setupFileLists();
-        $result = $codeSniffer->run(self::$whiteList, self::$blackList, ['php', 'phtml']);
+        $codeSniffer->setExtensions(['php', 'phtml']);
+        $result = $codeSniffer->run(self::getWhitelist(['php', 'phtml']));
         $this->assertEquals(
             0,
             $result,
@@ -139,12 +147,11 @@ class LiveCodeTest extends PHPUnit_Framework_TestCase
         if (!$codeSniffer->canRun()) {
             $this->markTestSkipped('PHP Code Sniffer is not installed.');
         }
-        self::setupFileLists('phpcs');
 
-        $severity = 0; // Change to 5 to see the warnings
+        $result = $codeSniffer->run(self::getWhitelist(['php']));
         $this->assertEquals(
             0,
-            $result = $codeSniffer->run(self::$whiteList, self::$blackList, ['php'], $severity),
+            $result,
             "PHP Code Sniffer has found {$result} error(s): See detailed report in {$reportFile}"
         );
     }
@@ -152,18 +159,11 @@ class LiveCodeTest extends PHPUnit_Framework_TestCase
     /**
      * Run mess detector on code
      *
-     * @param array $whiteList
      * @return void
-     * @dataProvider whiteListDataProvider
      */
-    public function testCodeMess($whiteList)
+    public function testCodeMess()
     {
-        if (count($whiteList) == 1) {
-            $formattedPath = preg_replace('~/~', '_', preg_replace('~' . self::$pathToSource . '~', '', $whiteList[0]));
-        } else {
-            $formattedPath = '_app_lib';
-        }
-        $reportFile = self::$reportDir . '/phpmd_report' . $formattedPath . '.xml';
+        $reportFile = self::$reportDir . '/phpmd_report.xml';
         $codeMessDetector = new CodeMessDetector(realpath(__DIR__ . '/_files/phpmd/ruleset.xml'), $reportFile);
 
         if (!$codeMessDetector->canRun()) {
@@ -171,40 +171,15 @@ class LiveCodeTest extends PHPUnit_Framework_TestCase
         }
 
         $this->assertEquals(
-            PHP_PMD_TextUI_Command::EXIT_SUCCESS,
-            $codeMessDetector->run($whiteList, self::$blackList),
+            Command::EXIT_SUCCESS,
+            $codeMessDetector->run(self::getWhitelist(['php'])),
             "PHP Code Mess has found error(s): See detailed report in {$reportFile}"
         );
 
         // delete empty reports
-        unlink($reportFile);
-    }
-
-    /**
-     * To improve the test execution performance the whitelist is split into smaller parts:
-     *  - in case of dev code (tests, tools, etc) each whitelist entry is fed separately to phpmd
-     *  - app/lib code is still being executed within a single whitelist to make sure that all design
-     *    metrics (depth of inheritance, number of children, etc.) are being calculated in a correct way.
-     * @return array
-     */
-    public function whiteListDataProvider()
-    {
-        $whiteList = [];
-        $testCodePattern = '~' . self::$pathToSource . '/dev/~';
-        $nonTestCode = [];
-
-        self::setupFileLists();
-
-        foreach (self::$whiteList as $path) {
-            if (!preg_match($testCodePattern, $path)) {
-                $nonTestCode[] = $path;
-            } else {
-                $whiteList[] = [[$path]];
-            }
+        if (file_exists($reportFile)) {
+            unlink($reportFile);
         }
-        $whiteList[] = [$nonTestCode];
-
-        return $whiteList;
     }
 
     /**
@@ -221,14 +196,15 @@ class LiveCodeTest extends PHPUnit_Framework_TestCase
             $this->markTestSkipped('PHP Copy/Paste Detector is not available.');
         }
 
-        self::setupFileLists();
         $blackList = [];
         foreach (glob(__DIR__ . '/_files/phpcpd/blacklist/*.txt') as $list) {
             $blackList = array_merge($blackList, file($list, FILE_IGNORE_NEW_LINES));
         }
 
+        $copyPasteDetector->setBlackList($blackList);
+
         $this->assertTrue(
-            $copyPasteDetector->run([], $blackList),
+            $copyPasteDetector->run([BP]),
             "PHP Copy/Paste Detector has found error(s): See detailed report in {$reportFile}"
         );
     }
diff --git a/dev/tests/static/testsuite/Magento/Test/Php/_files/blacklist/common.txt b/dev/tests/static/testsuite/Magento/Test/Php/_files/blacklist/common.txt
deleted file mode 100644
index 8b0e96b4500ba4c14ddb1afce061f51d3c2f6cfc..0000000000000000000000000000000000000000
--- a/dev/tests/static/testsuite/Magento/Test/Php/_files/blacklist/common.txt
+++ /dev/null
@@ -1,118 +0,0 @@
-# Files or directories that are excluded from static code analysis for any reason
-# Glob patterns are supported
-# Overrides the white list
-#
-app/code/Magento/Backend/Model/Config.php
-app/code/Magento/Backend/Model/Config/Structure/Converter.php
-app/code/Magento/Backend/Model/Menu/Config.php
-app/code/Magento/Backend/Block/Widget/Grid
-app/code/Magento/Backend/view
-app/code/Magento/ConfigurableProduct/view
-app/code/Magento/DesignEditor/view
-app/code/Magento/Email/view
-app/code/Magento/Integration/view
-app/code/Magento/Msrp/view
-app/code/Magento/Theme/view
-app/code/Magento/User/view
-app/code/Magento/Webapi/view
-app/code/Magento/GroupedProduct/view
-app/code/Magento/Rss/view
-app/code/Magento/UrlRewrite/view
-dev/tests/integration/framework/Magento/TestFramework/Db/Mysql.php
-dev/tests/integration/framework/Magento/TestFramework/Db/Adapter/Mysql.php
-dev/tests/integration/framework/Magento/TestFramework/Db/ConnectionAdapter.php
-dev/tests/integration/testsuite/Magento/Framework/DB/Adapter/Pdo/MysqlTest.php
-dev/tests/integration/testsuite/Magento/Test/Integrity/Modular/TemplateFilesTest.php
-dev/tests/integration/testsuite/Magento/Test/Integrity/Theme/TemplateFilesTest.php
-dev/tests/integration/testsuite/Magento/Backend/Block/System/Config/FormStub.php
-dev/tests/integration/testsuite/Magento/Framework/Interception/Fixture
-dev/tests/integration/testsuite/Magento/Framework/Code/_expected
-dev/tests/integration/tmp
-dev/tests/static/testsuite/Magento/Test/Php/Exemplar/CodeMessTest/phpmd/input
-dev/tests/static/testsuite/Magento/Test/Php/Exemplar/CodeStyleTest/phpcs/input
-dev/tests/static/testsuite/Magento/Test/Php/Exemplar/CodeStyleTest/phpcs/expected
-dev/tests/static/testsuite/Magento/Test/Legacy/_files
-dev/tests/unit/testsuite/Magento/Core/Model/Resource/Db/AbstractTest.php
-dev/tests/unit/testsuite/Magento/Framework/Code/Validator/_files
-dev/tests/unit/testsuite/Magento/Framework/Session/ConfigTest.php
-dev/tests/unit/testsuite/Magento/Framework/View/TemplateEngine/_files
-lib/internal/Magento/Framework/App/Config/Element.php
-lib/internal/Magento/Framework/Archive
-lib/internal/Magento/Framework/Backup
-lib/internal/Magento/Framework/Cache/Backend/Database.php
-lib/internal/Magento/Framework/Cache/Backend/Eaccelerator.php
-lib/internal/Magento/Framework/Cache/Backend/Memcached.php
-lib/internal/Magento/Framework/Cache/Core.php
-lib/internal/Magento/Framework/Data/Collection.php
-lib/internal/Magento/Framework/Data/Collection/Db.php
-lib/internal/Magento/Framework/Data/Collection/Db/FetchStrategy/Cache.php
-lib/internal/Magento/Framework/Data/Collection/Db/FetchStrategy/Query.php
-lib/internal/Magento/Framework/Data/Collection/Db/FetchStrategyInterface.php
-lib/internal/Magento/Framework/Data/Collection/Filesystem.php
-lib/internal/Magento/Framework/Data/Form.php
-lib/internal/Magento/Framework/Data/Form/AbstractForm.php
-lib/internal/Magento/Framework/Data/Form/Element/AbstractElement.php
-lib/internal/Magento/Framework/Data/Form/Element/Button.php
-lib/internal/Magento/Framework/Data/Form/Element/Checkbox.php
-lib/internal/Magento/Framework/Data/Form/Element/Checkboxes.php
-lib/internal/Magento/Framework/Data/Form/Element/Collection.php
-lib/internal/Magento/Framework/Data/Form/Element/Column.php
-lib/internal/Magento/Framework/Data/Form/Element/Date.php
-lib/internal/Magento/Framework/Data/Form/Element/Editablemultiselect.php
-lib/internal/Magento/Framework/Data/Form/Element/Editor.php
-lib/internal/Magento/Framework/Data/Form/Element/Fieldset.php
-lib/internal/Magento/Framework/Data/Form/Element/File.php
-lib/internal/Magento/Framework/Data/Form/Element/Gallery.php
-lib/internal/Magento/Framework/Data/Form/Element/Hidden.php
-lib/internal/Magento/Framework/Data/Form/Element/Image.php
-lib/internal/Magento/Framework/Data/Form/Element/Imagefile.php
-lib/internal/Magento/Framework/Data/Form/Element/Label.php
-lib/internal/Magento/Framework/Data/Form/Element/Link.php
-lib/internal/Magento/Framework/Data/Form/Element/Multiline.php
-lib/internal/Magento/Framework/Data/Form/Element/Multiselect.php
-lib/internal/Magento/Framework/Data/Form/Element/Note.php
-lib/internal/Magento/Framework/Data/Form/Element/Obscure.php
-lib/internal/Magento/Framework/Data/Form/Element/Password.php
-lib/internal/Magento/Framework/Data/Form/Element/Radio.php
-lib/internal/Magento/Framework/Data/Form/Element/Radios.php
-lib/internal/Magento/Framework/Data/Form/Element/Renderer/RendererInterface.php
-lib/internal/Magento/Framework/Data/Form/Element/Reset.php
-lib/internal/Magento/Framework/Data/Form/Element/Select.php
-lib/internal/Magento/Framework/Data/Form/Element/Submit.php
-lib/internal/Magento/Framework/Data/Form/Element/Text.php
-lib/internal/Magento/Framework/Data/Form/Element/Textarea.php
-lib/internal/Magento/Framework/Data/Form/Element/Time.php
-lib/internal/Magento/Framework/Data/Form/Filter/Date.php
-lib/internal/Magento/Framework/Data/Form/Filter/Escapehtml.php
-lib/internal/Magento/Framework/Data/Form/Filter/FilterInterface.php
-lib/internal/Magento/Framework/Data/Form/Filter/Striptags.php
-lib/internal/Magento/Framework/Data/Tree.php
-lib/internal/Magento/Framework/Data/Tree/Db.php
-lib/internal/Magento/Framework/Data/Tree/Dbp.php
-lib/internal/Magento/Framework/Data/Tree/Node.php
-lib/internal/Magento/Framework/Data/Tree/Node/Collection.php
-lib/internal/Magento/Framework/DB
-lib/internal/Magento/Framework/Stdlib/DateTime.php
-lib/internal/Magento/Framework/Debug.php
-lib/internal/Magento/Framework/Event.php
-lib/internal/Magento/Framework/Event
-lib/internal/Magento/Framework/File/Csv.php
-lib/internal/Magento/Framework/File/CsvMulty.php
-lib/internal/Magento/Framework/File/Transfer/Adapter/Http.php
-lib/internal/Magento/Framework/File/Uploader.php
-lib/internal/Magento/Framework/Gdata
-lib/internal/Magento/Framework/HTTP/Adapter/Curl.php
-lib/internal/Magento/Framework/HTTP/Client.php
-lib/internal/Magento/Framework/HTTP/Client/Curl.php
-lib/internal/Magento/Framework/HTTP/Client/Socket.php
-lib/internal/Magento/Framework/HTTP/ClientInterface.php
-lib/internal/Magento/Framework/Image
-lib/internal/Magento/Framework/Image.php
-lib/internal/Magento/Framework/Io
-lib/internal/Magento/Framework/Object
-lib/internal/Magento/Framework/Object.php
-lib/internal/Magento/Framework/Simplexml
-lib/internal/Magento/Framework/System
-lib/internal/Magento/Framework/Util.php
-lib/internal/Magento/Framework/Xml
-vendor
diff --git a/dev/tests/static/testsuite/Magento/Test/Php/_files/phpcpd/blacklist/common.txt b/dev/tests/static/testsuite/Magento/Test/Php/_files/phpcpd/blacklist/common.txt
index ccd0a6929c4673645fe51df0f3c359f5addf5a17..a8c9b77df27fcf8e40eb285820462cf08933752f 100644
--- a/dev/tests/static/testsuite/Magento/Test/Php/_files/phpcpd/blacklist/common.txt
+++ b/dev/tests/static/testsuite/Magento/Test/Php/_files/phpcpd/blacklist/common.txt
@@ -85,7 +85,7 @@ Magento/Rule
 Magento/Sales/Block/Adminhtml/Order
 Magento/Shipping/Block/Adminhtml/View
 Magento/Sales/Model/Resource
-Magento/Sales/Model/Quote/Address/Total
+Magento/Quote/Model/Quote/Address/Total
 Magento/Sales/Model/Resource/Report/Order
 Magento/SalesRule/Block/Adminhtml/Promo/Quote/Edit/Tab
 Magento/Search/Block/Adminhtml/Dashboard
@@ -143,3 +143,4 @@ Magento/Catalog/Model/ProductLink
 Magento/GroupedProduct/Model/Resource/Product/Type/Grouped
 lib/internal/Magento/Framework/Interception/ObjectManager/Config
 app/code/Magento/OfflinePayments/Model
+Magento/Weee/Model/Resource
diff --git a/dev/tests/static/testsuite/Magento/Test/Php/_files/phpcs/blacklist/common.txt b/dev/tests/static/testsuite/Magento/Test/Php/_files/phpcs/blacklist/common.txt
deleted file mode 100644
index 0e230d6265703550fb3222212211dc0d207d3c99..0000000000000000000000000000000000000000
--- a/dev/tests/static/testsuite/Magento/Test/Php/_files/phpcs/blacklist/common.txt
+++ /dev/null
@@ -1,41 +0,0 @@
-# Files or directories that are excluded from static code analysis for any reason
-# Glob patterns are supported
-# Overrides the white list
-#
-# Formatter introduces long line
-app/bootstrap.php
-# Formatter introduces long line
-app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/NewCategory.php
-# Formatter introduces long line
-app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Attributes/Search.php
-# Formatter introduces long line
-app/code/Magento/Catalog/Block/Adminhtml/Product/Helper/Form/Category.php
-# Formatter introduces long line
-app/code/Magento/Catalog/Block/Adminhtml/Product/Helper/Form/Weight.php
-# Formatter introduces long line
-app/code/Magento/Catalog/Block/Adminhtml/Product/Options/Ajax.php
-# Formatter introduces long line
-app/code/Magento/Cms/Block/Adminhtml/Page/Edit/Tab/Design.php
-# Formatter introduces long line
-app/code/Magento/Backend/Block/Page/System/Config/Robots/Reset.php
-# Formatter introduces long line
-app/code/Magento/Backend/Block/System/Store/Edit.php
-# Not magento code
-dev/tools/layout
-# PSR-1 not applied to
-dev/tests/js
-# Example files that are expected to fail code sniffer
-dev/tests/static/testsuite/Magento/Test/Php/Exemplar/CodeStyleTest/phpcs/input
-# Example files that are expected to fail code mess detector
-dev/tests/static/testsuite/Magento/Test/Php/Exemplar/CodeMessTest/phpmd/input
-# __ method for Translate cannot be in camelCase
-lib/internal/Magento/Framework/Translate/Adapter.php
-# __ method for Translate cannot be in camelCase
-lib/internal/Magento/Framework/Translate/AdapterInterface.php
-# Exclude unit, integration, and api-functional tests from PSR-X code style check
-dev/tests/api-functional
-dev/tests/integration
-dev/tests/unit
-# Newer version of phpcs does not complain about spacing issue.  This appears to be a bug in the phpcs version that is currently run in bamboo.
-app/code/Magento/Sales/Model/Order/Payment/Transaction.php
-vendor
diff --git a/dev/tests/static/testsuite/Magento/Test/Php/_files/phpcs/whitelist/common.txt b/dev/tests/static/testsuite/Magento/Test/Php/_files/phpcs/whitelist/common.txt
deleted file mode 100644
index bd9a1028a5ede1523e4f9b691a9fdbac68e25b3f..0000000000000000000000000000000000000000
--- a/dev/tests/static/testsuite/Magento/Test/Php/_files/phpcs/whitelist/common.txt
+++ /dev/null
@@ -1,8 +0,0 @@
-# Files or directories that are included into php code sniffer analysis
-# Glob patterns are supported
-#
-app
-dev
-index.php
-lib/internal/Magento
-pub
diff --git a/dev/tests/static/testsuite/Magento/Test/Php/_files/phpmd/ruleset.xml b/dev/tests/static/testsuite/Magento/Test/Php/_files/phpmd/ruleset.xml
index c6cdc91d42f8d4882a2bcbafd5d031684070d780..8252342c83817d451b00a48bb645ca7ed4f2ce93 100644
--- a/dev/tests/static/testsuite/Magento/Test/Php/_files/phpmd/ruleset.xml
+++ b/dev/tests/static/testsuite/Magento/Test/Php/_files/phpmd/ruleset.xml
@@ -28,11 +28,19 @@
     <rule ref="rulesets/unusedcode.xml" />
 
     <!-- Code design rules -->
-    <rule ref="rulesets/design.xml" />
+    <rule ref="rulesets/design.xml/ExitExpression" />
+    <rule ref="rulesets/design.xml/EvalExpression" />
+    <rule ref="rulesets/design.xml/GotoStatement" />
+    <rule ref="rulesets/design.xml/NumberOfChildren" />
+    <rule ref="rulesets/design.xml/DepthOfInheritance">
+        <properties>
+            <property name="minimum" value="8" />
+        </properties>
+    </rule>
+    <rule ref="rulesets/design.xml/CouplingBetweenObjects" />
 
     <!-- Naming Rules -->
     <rule ref="rulesets/naming.xml/ShortMethodName" />
-    <rule ref="rulesets/naming.xml/ConstructorWithNameAsEnclosingClass" />
     <rule ref="rulesets/naming.xml/ConstantNamingConventions" />
     <rule ref="rulesets/naming.xml/BooleanGetMethodName" />
 </ruleset>
diff --git a/dev/tests/static/testsuite/Magento/Test/Php/_files/whitelist/common.txt b/dev/tests/static/testsuite/Magento/Test/Php/_files/whitelist/common.txt
index 1d53a6375572089a5d16a37d7f85d14bd45a71c5..ef69654a548bdbb4894794ce817bacaf32c88ae5 100644
--- a/dev/tests/static/testsuite/Magento/Test/Php/_files/whitelist/common.txt
+++ b/dev/tests/static/testsuite/Magento/Test/Php/_files/whitelist/common.txt
@@ -1,148 +1,9 @@
-# Files or directories that are included into static code analysis
-# Glob patterns are supported
-#
-app/bootstrap.php
-app/code/Magento/Backend/Block/Page/System/Config/Robots/Reset.php
-app/code/Magento/Backend/Block/System/Store/Edit
-app/code/Magento/Backend/Block/System/Store/Edit.php
-app/code/Magento/Backend/Model/Observer.php
-app/code/Magento/Bundle/Model/Plugin
-app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/NewCategory.php
-app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Attributes/Search.php
-app/code/Magento/Catalog/Block/Adminhtml/Product/Edit/Tab/Options/Popup/Grid.php
-app/code/Magento/Catalog/Block/Adminhtml/Product/Helper/Form/Category.php
-app/code/Magento/Catalog/Block/Adminhtml/Product/Helper/Form/Weight.php
-app/code/Magento/Catalog/Block/Adminhtml/Product/Options/Ajax.php
-app/code/Magento/Catalog/Block/Product/TemplateSelector.php
-app/code/Magento/Catalog/Block/Product/View/BaseImage.php
-app/code/Magento/Catalog/Block/Product/View/Gallery.php
-app/code/Magento/Catalog/Block/Product/View/Tabs.php
-app/code/Magento/Catalog/Model/Attribute/Config
-app/code/Magento/Catalog/Model/Attribute/Config.php
-app/code/Magento/Catalog/Model/Resource/Category/Collection
-app/code/Magento/Catalog/Model/Product/Type.php
-app/code/Magento/Catalog/Model/ProductOptions
-app/code/Magento/Catalog/Model/ProductTypes
-app/code/Magento/Catalog/Model/Plugin
-app/code/Magento/CatalogInventory/Block/Adminhtml/Form/Field/Stock.php
-app/code/Magento/Centinel/Model/State/Jcb.php
-app/code/Magento/Checkout/Block/Cart/Link.php
-app/code/Magento/Checkout/Block/Link.php
-app/code/Magento/Cms/Block/Adminhtml/Page/Edit/Tab/Design.php
-app/code/Magento/Cms/Controller/Router.php
-app/code/Magento/Cms/Model/Template/FilterProvider.php
-app/code/Magento/ConfigurableImportExport
-app/code/Magento/ConfigurableProduct
-app/code/Magento/Core/data
-app/code/Magento/Core/Model/Design.php
-app/code/Magento/Core/Model/Layout/Update.php
-app/code/Magento/Core/Model/Resource/Theme
-app/code/Magento/Core/Model/Resource/Theme.php
-app/code/Magento/Core/Model/Theme
-app/code/Magento/Core/Model/Theme.php
-app/code/Magento/Core/Model/Url/SecurityInfo.php
-app/code/Magento/Cron/Model/Config/Converter
-app/code/Magento/Cron/Model/Config/Reader
-app/code/Magento/Cron/Model/Config/Data.php
-app/code/Magento/Cron/Model/Config/SchemaLocator.php
-app/code/Magento/Cron/Model/Config.php
-app/code/Magento/Cron/Model/ConfigInterface.php
-app/code/Magento/Directory/Helper
-app/code/Magento/Customer/Block
-app/code/Magento/Customer/Controller
-app/code/Magento/Customer/Helper
-app/code/Magento/Customer/Model/Visitor.php
-app/code/Magento/Customer/Model/Resource/Visitor.php
-app/code/Magento/Customer/Model/Address/Config
-app/code/Magento/Customer/Model/Address/Config.php
-app/code/Magento/CustomerImportExport/Model/Import/CustomerComposite.php
-app/code/Magento/CustomerImportExport/Model/Resource/Import/Customer/Storage.php
-app/code/Magento/CustomerImportExport/Model/Resource/Import/CustomerComposite/Data.php
-app/code/Magento/Directory/Model/Currency/DefaultLocator.php
-app/code/Magento/Directory/Model/Resource/Region
-app/code/Magento/Eav/Model/Cache/Type.php
-app/code/Magento/GiftMessage/Model/Plugin
-app/code/Magento/GiftMessage/Model/Type/Plugin
-app/code/Magento/GiftMessage/Service
-app/code/Magento/GoogleShopping/Block/SiteVerification.php
-app/code/Magento/GoogleShopping/Model/AttributeFactory.php
-app/code/Magento/GroupedImportExport
-app/code/Magento/Eav/Model/Entity/Attribute/Config
-app/code/Magento/Eav/Model/Entity/Attribute/Config.php
-app/code/Magento/Email
-app/code/Magento/ImportExport/Model/Export/Config
-app/code/Magento/ImportExport/Model/Export/Config.php
-app/code/Magento/ImportExport/Model/Export/ConfigInterface.php
-app/code/Magento/ImportExport/Model/Import/Config
-app/code/Magento/ImportExport/Model/Import/Config.php
-app/code/Magento/ImportExport/Model/Import/ConfigInterface.php
-app/code/Magento/ImportExport/Controller/Adminhtml/Import.php
-app/code/Magento/Integration
-app/code/Magento/Log/Model/Resource/Helper.php
-app/code/Magento/Log/Model/Resource/Shell.php
-app/code/Magento/Log/Model/Shell.php
-app/code/Magento/Log/Model/Shell
-app/code/Magento/Msrp
-app/code/Magento/ProductAlert/Block/Product/View
-app/code/Magento/Reports/Block/Adminhtml/Customer
-app/code/Magento/Reports/Block/Adminhtml/Product
-app/code/Magento/Reports/Controller/Adminhtml/Report/Customer.php
-app/code/Magento/Reports/Controller/Adminhtml/Report/Product.php
-app/code/Magento/Reports/Model/Plugin
-app/code/Magento/Reports/Model/Resource/Accounts
-app/code/Magento/Reports/Model/Resource/Customer
-app/code/Magento/Reports/Model/Resource/Report/Collection.php
-app/code/Magento/Sales/Block/Guest/Link.php
-app/code/Magento/Sales/Block/Order/Link.php
-app/code/Magento/Sales/Block/Order/Info/Buttons/Rss.php
-app/code/Magento/Sales/Block/Adminhtml/Order/Details.php
-app/code/Magento/Sales/Model/Order/Pdf/Config
-app/code/Magento/Sales/Model/Order/Pdf/Config.php
-app/code/Magento/Sales/Model/Order/Pdf/Total/Factory.php
-app/code/Magento/Sales/Model/Observer
-app/code/Magento/Sales/Model/Quote/Address/*Interface.php
-app/code/Magento/Sales/Model/Quote/Address/*Interface.php
-app/code/Magento/Sales/Model/Resource/Order/Rss/OrderStatus.php
-app/code/Magento/Sales/Model/Rss/NewOrder.php
-app/code/Magento/Sales/Model/Rss/OrderStatus.php
-app/code/Magento/SalesRule/Model/Plugin
-app/code/Magento/Sendfriend/Block/Plugin/Catalog/Product/View.php
-app/code/Magento/Shipping/Block/Adminhtml/Order/Tracking/Invoice.php
-app/code/Magento/Shipping/Model/Observer.php
-app/code/Magento/Shipping/Model/Order/Track.php
-app/code/Magento/Shipping/Model/CarrierFactory.php
-app/code/Magento/Shipping/Model/Resource/Order
-app/code/Magento/Theme
-app/code/Magento/Webapi
-app/code/Magento/GroupedProduct
-app/code/Magento/Rss
-app/code/Magento/CatalogUrlRewrite
-app/code/Magento/CmsUrlRewrite
-app/code/Magento/UrlRewrite
-app/code/Magento/Wishlist/Block/Link.php
-app/code/Magento/Wishlist/Block/Rss
-app/code/Magento/Wishlist/Model/Rss/Wishlist.php
-dev/shell
+app/code/Magento
+lib/internal/Magento/Framework
+dev/tools/Magento
+dev/tests/api-functional
 dev/tests/functional
-dev/tests/integration/*
-dev/tests/js
+dev/tests/integration
 dev/tests/performance
 dev/tests/static
-dev/tests/unit/framework
-dev/tests/unit/testsuite/Magento/*
-dev/tools
-lib/internal/Magento/Framework/App
-lib/internal/Magento/Framework/Backup/Db
-lib/internal/Magento/Framework/Backup/Factory.php
-lib/internal/Magento/Framework/Cache/Core.php
-lib/internal/Magento/Framework/Convert
-lib/internal/Magento/Framework/Exception
-lib/internal/Magento/Framework/Stdlib/DateTime.php
-lib/internal/Magento/Framework/Object.php
-lib/internal/Magento/Framework/Data/Argument
-lib/internal/Magento/Framework/ObjectManager
-lib/internal/Magento/Framework/Api
-lib/internal/Magento/Framework/Url/SecurityInfoInterface.php
-lib/internal/Magento/Framework/View
-lib/internal/Magento/Framework/Locale/Validator.php
-lib/internal/Magento/Framework/Notification
+dev/tests/unit
diff --git a/dev/tests/unit/testsuite/Magento/AdminNotification/Block/ToolbarEntryTest.php b/dev/tests/unit/testsuite/Magento/AdminNotification/Block/ToolbarEntryTest.php
index 683b1dee5850d8c70224d1d654da1d67383291f9..2c408ae1aa635035b8a725adf14327931f56950d 100644
--- a/dev/tests/unit/testsuite/Magento/AdminNotification/Block/ToolbarEntryTest.php
+++ b/dev/tests/unit/testsuite/Magento/AdminNotification/Block/ToolbarEntryTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Test class for \Magento\AdminNotification\Block\ToolbarEntry
  */
diff --git a/dev/tests/unit/testsuite/Magento/Backend/Block/System/Config/Form/Field/ImageTest.php b/dev/tests/unit/testsuite/Magento/Backend/Block/System/Config/Form/Field/ImageTest.php
index 7da41c293028ecf40bda13b890caf393de5d9cac..7b971cdb97f81cac457f630fd2d91795e9e05b6d 100644
--- a/dev/tests/unit/testsuite/Magento/Backend/Block/System/Config/Form/Field/ImageTest.php
+++ b/dev/tests/unit/testsuite/Magento/Backend/Block/System/Config/Form/Field/ImageTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Tests for \Magento\Framework\Data\Form\Element\Image
  */
diff --git a/dev/tests/unit/testsuite/Magento/Backend/Block/System/Config/FormTest.php b/dev/tests/unit/testsuite/Magento/Backend/Block/System/Config/FormTest.php
index a273fb5b3fb41fcaf7af5821fa87fdfd7921a4bf..0a697297a03beedf9c1e86562069235829331f38 100644
--- a/dev/tests/unit/testsuite/Magento/Backend/Block/System/Config/FormTest.php
+++ b/dev/tests/unit/testsuite/Magento/Backend/Block/System/Config/FormTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Backend\Block\System\Config;
 
 class FormTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Backend/Block/Widget/Grid/ColumnSetTest.php b/dev/tests/unit/testsuite/Magento/Backend/Block/Widget/Grid/ColumnSetTest.php
index 389f5054d8826b89257b3fd043ee71e71050e510..c6f1264a4bf780a03da397d75119b3b92c1d7aba 100644
--- a/dev/tests/unit/testsuite/Magento/Backend/Block/Widget/Grid/ColumnSetTest.php
+++ b/dev/tests/unit/testsuite/Magento/Backend/Block/Widget/Grid/ColumnSetTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Backend\Block\Widget\Grid;
 
 class ColumnSetTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Backend/Controller/Adminhtml/Cache/CleanMediaTest.php b/dev/tests/unit/testsuite/Magento/Backend/Controller/Adminhtml/Cache/CleanMediaTest.php
index f8dc96754c3c083ae84c93f54413626b54d28dd3..f790cefacb9d61c383d49e970949406b5128baab 100644
--- a/dev/tests/unit/testsuite/Magento/Backend/Controller/Adminhtml/Cache/CleanMediaTest.php
+++ b/dev/tests/unit/testsuite/Magento/Backend/Controller/Adminhtml/Cache/CleanMediaTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Backend\Controller\Adminhtml\Cache;
 
 class CleanMediaTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Backend/Controller/Adminhtml/Dashboard/AbstractTestCase.php b/dev/tests/unit/testsuite/Magento/Backend/Controller/Adminhtml/Dashboard/AbstractTestCase.php
index 03f7337a5cf486d20a82f276c5640b6d59834669..628361d81f6a3d89cf320ae43fa1b01e0be1ed88 100644
--- a/dev/tests/unit/testsuite/Magento/Backend/Controller/Adminhtml/Dashboard/AbstractTestCase.php
+++ b/dev/tests/unit/testsuite/Magento/Backend/Controller/Adminhtml/Dashboard/AbstractTestCase.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Backend\Controller\Adminhtml\Dashboard;
 
 /**
@@ -47,4 +50,4 @@ class AbstractTestCase extends \PHPUnit_Framework_TestCase
         $result = $controller->execute();
         $this->assertInstanceOf('Magento\Framework\Controller\Result\Raw', $result);
     }
-}
\ No newline at end of file
+}
diff --git a/dev/tests/unit/testsuite/Magento/Backend/Controller/Adminhtml/Dashboard/CustomersMostTest.php b/dev/tests/unit/testsuite/Magento/Backend/Controller/Adminhtml/Dashboard/CustomersMostTest.php
index db0953e5722d085028cfa27646750a0f3f7dfdff..f5e8faa95a9be8a04eb291f52bb80574c848e9de 100644
--- a/dev/tests/unit/testsuite/Magento/Backend/Controller/Adminhtml/Dashboard/CustomersMostTest.php
+++ b/dev/tests/unit/testsuite/Magento/Backend/Controller/Adminhtml/Dashboard/CustomersMostTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Backend\Controller\Adminhtml\Dashboard;
 
 /**
@@ -17,4 +20,4 @@ class CustomersMostTest extends AbstractTestCase
             'Magento\Backend\Block\Dashboard\Tab\Customers\Most'
         );
     }
-}
\ No newline at end of file
+}
diff --git a/dev/tests/unit/testsuite/Magento/Backend/Controller/Adminhtml/Dashboard/CustomersNewestTest.php b/dev/tests/unit/testsuite/Magento/Backend/Controller/Adminhtml/Dashboard/CustomersNewestTest.php
index 659cfb0e7eee10e821b8a28f8c8f69ea6e44a3ff..ae26588381e0ffb254c6dd996d0bceee3c22538c 100644
--- a/dev/tests/unit/testsuite/Magento/Backend/Controller/Adminhtml/Dashboard/CustomersNewestTest.php
+++ b/dev/tests/unit/testsuite/Magento/Backend/Controller/Adminhtml/Dashboard/CustomersNewestTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Backend\Controller\Adminhtml\Dashboard;
 
 /**
@@ -17,4 +20,4 @@ class CustomersNewestTest extends AbstractTestCase
             'Magento\Backend\Block\Dashboard\Tab\Customers\Newest'
         );
     }
-}
\ No newline at end of file
+}
diff --git a/dev/tests/unit/testsuite/Magento/Backend/Controller/Adminhtml/Dashboard/ProductsViewedTest.php b/dev/tests/unit/testsuite/Magento/Backend/Controller/Adminhtml/Dashboard/ProductsViewedTest.php
index a596b5601e1ad355b992642ca11fd13173f2f4eb..58c718b8e190b1efe189ad7045a5a574811a3819 100644
--- a/dev/tests/unit/testsuite/Magento/Backend/Controller/Adminhtml/Dashboard/ProductsViewedTest.php
+++ b/dev/tests/unit/testsuite/Magento/Backend/Controller/Adminhtml/Dashboard/ProductsViewedTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Backend\Controller\Adminhtml\Dashboard;
 
 /**
@@ -17,4 +20,4 @@ class ProductsViewedTest extends AbstractTestCase
             'Magento\Backend\Block\Dashboard\Tab\Products\Viewed'
         );
     }
-}
\ No newline at end of file
+}
diff --git a/dev/tests/unit/testsuite/Magento/Backend/Model/Config/Backend/Cookie/LifetimeTest.php b/dev/tests/unit/testsuite/Magento/Backend/Model/Config/Backend/Cookie/LifetimeTest.php
index 996b6678266e7b56110ed29738c9e2fafd7c5202..48669c595a16d13b8579d43886cfbdfa34b60648 100644
--- a/dev/tests/unit/testsuite/Magento/Backend/Model/Config/Backend/Cookie/LifetimeTest.php
+++ b/dev/tests/unit/testsuite/Magento/Backend/Model/Config/Backend/Cookie/LifetimeTest.php
@@ -5,6 +5,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Backend\Model\Config\Backend\Cookie;
 
 use Magento\Framework\Session\Config\Validator\CookieLifetimeValidator;
diff --git a/dev/tests/unit/testsuite/Magento/Backend/Model/Config/Backend/Cookie/PathTest.php b/dev/tests/unit/testsuite/Magento/Backend/Model/Config/Backend/Cookie/PathTest.php
index be9207e5c6fe8e3f904fc72d09047eb49c63a6ad..80535bd3a7a8e5750418770dfb53a34352508e73 100644
--- a/dev/tests/unit/testsuite/Magento/Backend/Model/Config/Backend/Cookie/PathTest.php
+++ b/dev/tests/unit/testsuite/Magento/Backend/Model/Config/Backend/Cookie/PathTest.php
@@ -5,6 +5,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Backend\Model\Config\Backend\Cookie;
 
 use Magento\Framework\Session\Config\Validator\CookiePathValidator;
diff --git a/dev/tests/unit/testsuite/Magento/Backend/Model/Config/Source/Storage/Media/DatabaseTest.php b/dev/tests/unit/testsuite/Magento/Backend/Model/Config/Source/Storage/Media/DatabaseTest.php
index 1ce3008588eb202ea59850c5eab1365494038ab7..ea9b0305958526150fa48ff9bb77f539315723e8 100644
--- a/dev/tests/unit/testsuite/Magento/Backend/Model/Config/Source/Storage/Media/DatabaseTest.php
+++ b/dev/tests/unit/testsuite/Magento/Backend/Model/Config/Source/Storage/Media/DatabaseTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Backend\Model\Config\Source\Storage\Media;
 
 use Magento\Framework\App\DeploymentConfig\ResourceConfig;
diff --git a/dev/tests/unit/testsuite/Magento/Backend/Model/Config/StructureTest.php b/dev/tests/unit/testsuite/Magento/Backend/Model/Config/StructureTest.php
index 8295bf4373e12a1588d3e0c94b68932179e94fbd..a7b8c95fb8dabfa13773461c44be29de7308b159 100644
--- a/dev/tests/unit/testsuite/Magento/Backend/Model/Config/StructureTest.php
+++ b/dev/tests/unit/testsuite/Magento/Backend/Model/Config/StructureTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Backend\Model\Config;
 
 class StructureTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Backend/Model/Session/QuoteTest.php b/dev/tests/unit/testsuite/Magento/Backend/Model/Session/QuoteTest.php
index acc18388687eef952831af445eff361fa263acd7..ac801cd35c338ef38ae42c970d6bed179b8b6b8e 100644
--- a/dev/tests/unit/testsuite/Magento/Backend/Model/Session/QuoteTest.php
+++ b/dev/tests/unit/testsuite/Magento/Backend/Model/Session/QuoteTest.php
@@ -7,6 +7,7 @@ namespace Magento\Backend\Model\Session;
 
 /**
  * Class QuoteTest
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class QuoteTest extends \PHPUnit_Framework_TestCase
 {
@@ -71,7 +72,7 @@ class QuoteTest extends \PHPUnit_Framework_TestCase
     protected $scopeConfigMock;
 
     /**
-     * @var \Magento\Sales\Model\QuoteFactory|\PHPUnit_Framework_MockObject_MockObject
+     * @var \Magento\Quote\Model\QuoteFactory|\PHPUnit_Framework_MockObject_MockObject
      */
     protected $quoteRepositoryMock;
 
@@ -89,6 +90,7 @@ class QuoteTest extends \PHPUnit_Framework_TestCase
      * Set up
      *
      * @return void
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function setUp()
     {
@@ -121,7 +123,7 @@ class QuoteTest extends \PHPUnit_Framework_TestCase
             ['getValue']
         );
         $this->quoteRepositoryMock = $this->getMock(
-            'Magento\Sales\Model\QuoteRepository',
+            'Magento\Quote\Model\QuoteRepository',
             ['create', 'save', 'get'],
             [],
             '',
@@ -223,7 +225,7 @@ class QuoteTest extends \PHPUnit_Framework_TestCase
         $customerId = 66;
 
         $quoteMock = $this->getMock(
-            'Magento\Sales\Model\Quote',
+            'Magento\Quote\Model\Quote',
             [
                 'setStoreId',
                 'setCustomerGroupId',
@@ -312,7 +314,7 @@ class QuoteTest extends \PHPUnit_Framework_TestCase
         $customerId = 66;
 
         $quoteMock = $this->getMock(
-            'Magento\Sales\Model\Quote',
+            'Magento\Quote\Model\Quote',
             [
                 'setStoreId',
                 'setCustomerGroupId',
diff --git a/dev/tests/unit/testsuite/Magento/Backend/Model/UrlTest.php b/dev/tests/unit/testsuite/Magento/Backend/Model/UrlTest.php
index d2fcc6cd2408a2382c939faae45b12bb5e100aec..ab47208132cd1273112c856feb5ed4e045f02873 100644
--- a/dev/tests/unit/testsuite/Magento/Backend/Model/UrlTest.php
+++ b/dev/tests/unit/testsuite/Magento/Backend/Model/UrlTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Test class for \Magento\Backend\Model\Url
  */
diff --git a/dev/tests/unit/testsuite/Magento/Bundle/Block/Catalog/Product/View/Type/Bundle/OptionTest.php b/dev/tests/unit/testsuite/Magento/Bundle/Block/Catalog/Product/View/Type/Bundle/OptionTest.php
index 597f5a58b436d33ebbe216f9272a7d0d7e7bc460..c6f2121e63cdc5e47e74b92a47a86e799f6517e5 100644
--- a/dev/tests/unit/testsuite/Magento/Bundle/Block/Catalog/Product/View/Type/Bundle/OptionTest.php
+++ b/dev/tests/unit/testsuite/Magento/Bundle/Block/Catalog/Product/View/Type/Bundle/OptionTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Bundle\Block\Catalog\Product\View\Type\Bundle;
 
 class OptionTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Bundle/Block/Catalog/Product/View/Type/BundleTest.php b/dev/tests/unit/testsuite/Magento/Bundle/Block/Catalog/Product/View/Type/BundleTest.php
index fc0e35d8a2496d6885bb79c83c870efec1bbd560..0ab5f8cd9e8d5fd87f5ff61829d2559c72b4d91d 100644
--- a/dev/tests/unit/testsuite/Magento/Bundle/Block/Catalog/Product/View/Type/BundleTest.php
+++ b/dev/tests/unit/testsuite/Magento/Bundle/Block/Catalog/Product/View/Type/BundleTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Bundle\Block\Catalog\Product\View\Type;
 
 use Magento\Bundle\Block\Catalog\Product\View\Type\Bundle as BundleBlock;
diff --git a/dev/tests/unit/testsuite/Magento/Bundle/Helper/Catalog/Product/ConfigurationTest.php b/dev/tests/unit/testsuite/Magento/Bundle/Helper/Catalog/Product/ConfigurationTest.php
index e29a266dde3e96fbc66d16caa074a1da6eb47d88..515088bd08d8e8e91428f4dfeb1249837629d0cf 100644
--- a/dev/tests/unit/testsuite/Magento/Bundle/Helper/Catalog/Product/ConfigurationTest.php
+++ b/dev/tests/unit/testsuite/Magento/Bundle/Helper/Catalog/Product/ConfigurationTest.php
@@ -151,7 +151,7 @@ class ConfigurationTest extends \PHPUnit_Framework_TestCase
         $priceModel =
             $this->getMock('Magento\Bundle\Model\Product\Price', ['getSelectionFinalTotalPrice'], [], '', false);
         $selectionQty =
-            $this->getMock('Magento\Sales\Model\Quote\Item\Option', ['getValue', '__wakeup'], [], '', false);
+            $this->getMock('Magento\Quote\Model\Quote\Item\Option', ['getValue', '__wakeup'], [], '', false);
         $bundleOption =
             $this->getMock('Magento\Bundle\Model\Option', ['getSelections', 'getTitle', '__wakeup'], [], '', false);
         $selectionOption =
diff --git a/dev/tests/unit/testsuite/Magento/Bundle/Model/LinkManagementTest.php b/dev/tests/unit/testsuite/Magento/Bundle/Model/LinkManagementTest.php
index 3d35555c256ffe6b4ba3513012b35e36afa2d676..723814408cadc4b7889116c6403c9e6e4aa2557a 100644
--- a/dev/tests/unit/testsuite/Magento/Bundle/Model/LinkManagementTest.php
+++ b/dev/tests/unit/testsuite/Magento/Bundle/Model/LinkManagementTest.php
@@ -5,6 +5,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Bundle\Model;
 
 use Magento\TestFramework\Helper\ObjectManager;
diff --git a/dev/tests/unit/testsuite/Magento/Bundle/Model/OptionRepositoryTest.php b/dev/tests/unit/testsuite/Magento/Bundle/Model/OptionRepositoryTest.php
index b8ad6a8a2fb1c345c88291752484bc6e44016552..7bff3de04713e455b38ba66d0e10c9d2f4fa8a11 100644
--- a/dev/tests/unit/testsuite/Magento/Bundle/Model/OptionRepositoryTest.php
+++ b/dev/tests/unit/testsuite/Magento/Bundle/Model/OptionRepositoryTest.php
@@ -339,6 +339,9 @@ class OptionRepositoryTest extends \PHPUnit_Framework_TestCase
         $this->assertEquals($optionId, $this->model->save($productMock, $optionMock));
     }
 
+    /**
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
+     */
     public function testUpdate()
     {
         $productId = 1;
diff --git a/dev/tests/unit/testsuite/Magento/Bundle/Model/Plugin/QuoteItemTest.php b/dev/tests/unit/testsuite/Magento/Bundle/Model/Plugin/QuoteItemTest.php
index 5d5347419368d2c46144e0ed7719fb92a45c47a7..2e38fedc4ea585269d6b3620bdb8f7abd0e0144d 100644
--- a/dev/tests/unit/testsuite/Magento/Bundle/Model/Plugin/QuoteItemTest.php
+++ b/dev/tests/unit/testsuite/Magento/Bundle/Model/Plugin/QuoteItemTest.php
@@ -29,12 +29,12 @@ class QuoteItemTest extends \PHPUnit_Framework_TestCase
     protected function setUp()
     {
         $this->orderItemMock = $this->getMock('Magento\Sales\Model\Order\Item', [], [], '', false);
-        $this->quoteItemMock = $this->getMock('Magento\Sales\Model\Quote\Item', [], [], '', false);
+        $this->quoteItemMock = $this->getMock('Magento\Quote\Model\Quote\Item', [], [], '', false);
         $orderItem = $this->orderItemMock;
         $this->closureMock = function () use ($orderItem) {
             return $orderItem;
         };
-        $this->subjectMock = $this->getMock('Magento\Sales\Model\Convert\Quote', [], [], '', false);
+        $this->subjectMock = $this->getMock('Magento\Quote\Model\Quote\Item\ToOrderItem', [], [], '', false);
         $this->model = new \Magento\Bundle\Model\Plugin\QuoteItem();
     }
 
@@ -60,7 +60,7 @@ class QuoteItemTest extends \PHPUnit_Framework_TestCase
         $this->quoteItemMock->expects($this->once())->method('getProduct')->will($this->returnValue($productMock));
         $this->orderItemMock->expects($this->once())->method('setProductOptions');
 
-        $orderItem = $this->model->aroundItemToOrderItem($this->subjectMock, $this->closureMock, $this->quoteItemMock);
+        $orderItem = $this->model->aroundConvert($this->subjectMock, $this->closureMock, $this->quoteItemMock, []);
         $this->assertSame($this->orderItemMock, $orderItem);
     }
 
@@ -79,7 +79,7 @@ class QuoteItemTest extends \PHPUnit_Framework_TestCase
         $this->quoteItemMock->expects($this->once())->method('getProduct')->will($this->returnValue($productMock));
         $this->orderItemMock->expects($this->never())->method('setProductOptions');
 
-        $orderItem = $this->model->aroundItemToOrderItem($this->subjectMock, $this->closureMock, $this->quoteItemMock);
+        $orderItem = $this->model->aroundConvert($this->subjectMock, $this->closureMock, $this->quoteItemMock, []);
         $this->assertSame($this->orderItemMock, $orderItem);
     }
 }
diff --git a/dev/tests/unit/testsuite/Magento/Bundle/Pricing/Adjustment/CalculatorTest.php b/dev/tests/unit/testsuite/Magento/Bundle/Pricing/Adjustment/CalculatorTest.php
index d50ffb47b6fa24815bb1bfac38987067bbb7df38..e86ce9938c915cbdf8f6e3799369ef15da055fcd 100644
--- a/dev/tests/unit/testsuite/Magento/Bundle/Pricing/Adjustment/CalculatorTest.php
+++ b/dev/tests/unit/testsuite/Magento/Bundle/Pricing/Adjustment/CalculatorTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Bundle\Pricing\Adjustment;
 
 use Magento\Bundle\Model\Product\Price as ProductPrice;
diff --git a/dev/tests/unit/testsuite/Magento/Bundle/Pricing/Price/BundleSelectionPriceTest.php b/dev/tests/unit/testsuite/Magento/Bundle/Pricing/Price/BundleSelectionPriceTest.php
index 716dbd625882a45c5b98d346a66b71ca42910681..ff9c9373125981f67ac32d6309ffcd2729c0a59e 100644
--- a/dev/tests/unit/testsuite/Magento/Bundle/Pricing/Price/BundleSelectionPriceTest.php
+++ b/dev/tests/unit/testsuite/Magento/Bundle/Pricing/Price/BundleSelectionPriceTest.php
@@ -164,6 +164,7 @@ class BundleSelectionPriceTest extends \PHPUnit_Framework_TestCase
      *
      * @param bool $useRegularPrice
      * @dataProvider useRegularPriceDataProvider
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function testGetValueTypeDynamic($useRegularPrice)
     {
diff --git a/dev/tests/unit/testsuite/Magento/Bundle/Pricing/Price/DiscountCalculatorTest.php b/dev/tests/unit/testsuite/Magento/Bundle/Pricing/Price/DiscountCalculatorTest.php
index 46abdf85c13bfcda31c12644a64377dacef5747f..90d9ecf56f2387de963e7197590c06a56b0a2645 100644
--- a/dev/tests/unit/testsuite/Magento/Bundle/Pricing/Price/DiscountCalculatorTest.php
+++ b/dev/tests/unit/testsuite/Magento/Bundle/Pricing/Price/DiscountCalculatorTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Bundle\Pricing\Price;
 
 use Magento\Catalog\Pricing\Price\FinalPrice;
diff --git a/dev/tests/unit/testsuite/Magento/Bundle/Pricing/Price/GroupPriceTest.php b/dev/tests/unit/testsuite/Magento/Bundle/Pricing/Price/GroupPriceTest.php
index 5265166b22ce14e3a29a08b6387b1b66222439b5..f57db1fc2ba47beae2a5e6ee1cf8b88b0ae6c43c 100644
--- a/dev/tests/unit/testsuite/Magento/Bundle/Pricing/Price/GroupPriceTest.php
+++ b/dev/tests/unit/testsuite/Magento/Bundle/Pricing/Price/GroupPriceTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Bundle\Pricing\Price;
 
 class GroupPriceTest extends \PHPUnit_Framework_TestCase
@@ -43,7 +46,7 @@ class GroupPriceTest extends \PHPUnit_Framework_TestCase
     protected $attributeMock;
 
     /**
-     * @var \Magento\Catalog\Model\Product\Attribute\Backend\Groupprice|\PHPUnit_Framework_MockObject_MockObject
+     * @var \Magento\Catalog\Model\Product\Attribute\Backend\GroupPrice|\PHPUnit_Framework_MockObject_MockObject
      */
     protected $backendMock;
 
@@ -110,7 +113,7 @@ class GroupPriceTest extends \PHPUnit_Framework_TestCase
             false
         );
         $this->backendMock = $this->getMock(
-            'Magento\Catalog\Model\Product\Attribute\Backend\Groupprice',
+            'Magento\Catalog\Model\Product\Attribute\Backend\GroupPrice',
             [],
             [],
             '',
diff --git a/dev/tests/unit/testsuite/Magento/Catalog/Block/Adminhtml/Category/AbstractCategoryTest.php b/dev/tests/unit/testsuite/Magento/Catalog/Block/Adminhtml/Category/AbstractCategoryTest.php
index cd333f1084e3cff0d28d1bdfa84ff1dfd2447265..067a798dec8dc8a001a76435698acf630677bdae 100644
--- a/dev/tests/unit/testsuite/Magento/Catalog/Block/Adminhtml/Category/AbstractCategoryTest.php
+++ b/dev/tests/unit/testsuite/Magento/Catalog/Block/Adminhtml/Category/AbstractCategoryTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Block\Adminhtml\Category;
 
 class AbstractCategoryTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Catalog/Block/Layer/ViewTest.php b/dev/tests/unit/testsuite/Magento/Catalog/Block/Layer/ViewTest.php
index 2dbbedd282848d4a8a1b1bf201c64b63e424b42b..c210938a5655d4b3800c3deb0d34f9eae01005b6 100644
--- a/dev/tests/unit/testsuite/Magento/Catalog/Block/Layer/ViewTest.php
+++ b/dev/tests/unit/testsuite/Magento/Catalog/Block/Layer/ViewTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Block\Layer;
 
 class ViewTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Catalog/Block/Product/AbstractProductTest.php b/dev/tests/unit/testsuite/Magento/Catalog/Block/Product/AbstractProductTest.php
index bd0a63848a01e8e69c9d7db0a963913724715b5d..8489f90f8d4e53f0dfe818b56f11408101ec5be5 100644
--- a/dev/tests/unit/testsuite/Magento/Catalog/Block/Product/AbstractProductTest.php
+++ b/dev/tests/unit/testsuite/Magento/Catalog/Block/Product/AbstractProductTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Block\Product;
 
 /**
diff --git a/dev/tests/unit/testsuite/Magento/Catalog/Block/Product/ViewTest.php b/dev/tests/unit/testsuite/Magento/Catalog/Block/Product/ViewTest.php
index 07939b4af2997ff94e5426f516d66ceb2f856f72..a24913f94e3f91f9b86f6cff3c5d7ae351358fda 100644
--- a/dev/tests/unit/testsuite/Magento/Catalog/Block/Product/ViewTest.php
+++ b/dev/tests/unit/testsuite/Magento/Catalog/Block/Product/ViewTest.php
@@ -5,6 +5,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Block\Product;
 
 class ViewTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Catalog/Block/Rss/Product/SpecialTest.php b/dev/tests/unit/testsuite/Magento/Catalog/Block/Rss/Product/SpecialTest.php
index 1a082b1e81485cf4d5ac836cb18eb9429f752d0f..49707aaca9b3351b1c52a7bcb149033bc5f3d361 100644
--- a/dev/tests/unit/testsuite/Magento/Catalog/Block/Rss/Product/SpecialTest.php
+++ b/dev/tests/unit/testsuite/Magento/Catalog/Block/Rss/Product/SpecialTest.php
@@ -73,6 +73,11 @@ class SpecialTest extends \PHPUnit_Framework_TestCase
      */
     protected $request;
 
+    /**
+     * @var \Magento\Framework\Stdlib\DateTime\DateFactory|\PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $dateFactory;
+
     protected function setUp()
     {
         $this->request = $this->getMock('Magento\Framework\App\RequestInterface');
@@ -101,6 +106,7 @@ class SpecialTest extends \PHPUnit_Framework_TestCase
         $this->scopeConfig->expects($this->any())->method('getValue')->will($this->returnValue('en_US'));
 
         $this->localeDate = $this->getMock('\Magento\Framework\Stdlib\DateTime\TimezoneInterface');
+        $this->dateFactory = $this->getMock('Magento\Framework\Stdlib\DateTime\DateFactory', ['create'], [], '', false);
 
         $objectManagerHelper = new ObjectManagerHelper($this);
         $this->block = $objectManagerHelper->getObject(
@@ -116,7 +122,8 @@ class SpecialTest extends \PHPUnit_Framework_TestCase
                 'rssUrlBuilder' => $this->rssUrlBuilder,
                 'storeManager' => $this->storeManager,
                 'scopeConfig' => $this->scopeConfig,
-                'localeDate' => $this->localeDate
+                'localeDate' => $this->localeDate,
+                'dateFactory' => $this->dateFactory
             ]
         );
     }
@@ -130,6 +137,7 @@ class SpecialTest extends \PHPUnit_Framework_TestCase
         $this->rssModel->expects($this->once())->method('getProductsCollection')
             ->will($this->returnValue([$item]));
         $this->msrpHelper->expects($this->once())->method('canApplyMsrp')->will($this->returnValue(false));
+        $this->dateFactory->expects($this->once())->method('create');
         $this->localeDate->expects($this->once())->method('formatDate')->will($this->returnValue(date('Y-m-d')));
 
         $this->priceCurrency->expects($this->any())->method('convertAndFormat')->will($this->returnArgument(0));
diff --git a/dev/tests/unit/testsuite/Magento/Catalog/Controller/Adminhtml/Category/SaveTest.php b/dev/tests/unit/testsuite/Magento/Catalog/Controller/Adminhtml/Category/SaveTest.php
index 268dc23b7c20b3f6cf6fa9d28b34307b8f350632..9e484f562bb08123cadec8eddd78dd23d956beaf 100644
--- a/dev/tests/unit/testsuite/Magento/Catalog/Controller/Adminhtml/Category/SaveTest.php
+++ b/dev/tests/unit/testsuite/Magento/Catalog/Controller/Adminhtml/Category/SaveTest.php
@@ -7,6 +7,7 @@ namespace Magento\Catalog\Controller\Adminhtml\Category;
 
 /**
  * Class SaveTest
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class SaveTest extends \PHPUnit_Framework_TestCase
 {
@@ -79,6 +80,7 @@ class SaveTest extends \PHPUnit_Framework_TestCase
      * Set up
      *
      * @return void
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function setUp()
     {
@@ -208,6 +210,7 @@ class SaveTest extends \PHPUnit_Framework_TestCase
      * @return void
      *
      * @dataProvider dataProviderExecute
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public function testExecute($categoryId, $storeId, $activeTabId, $parentId)
     {
diff --git a/dev/tests/unit/testsuite/Magento/Catalog/Controller/Adminhtml/Category/Widget/CategoriesJsonTest.php b/dev/tests/unit/testsuite/Magento/Catalog/Controller/Adminhtml/Category/Widget/CategoriesJsonTest.php
index 73cb35cd910c4b8e12cda9294a04807b96547152..13653fcab211b966830e17e652903415833a0c0a 100644
--- a/dev/tests/unit/testsuite/Magento/Catalog/Controller/Adminhtml/Category/Widget/CategoriesJsonTest.php
+++ b/dev/tests/unit/testsuite/Magento/Catalog/Controller/Adminhtml/Category/Widget/CategoriesJsonTest.php
@@ -4,6 +4,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Controller\Adminhtml\Category\Widget;
 
 class CategoriesJsonTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Catalog/Controller/Adminhtml/Category/Widget/ChooserTest.php b/dev/tests/unit/testsuite/Magento/Catalog/Controller/Adminhtml/Category/Widget/ChooserTest.php
index a9341574976c6e8c2e50929ef21e0bda6479f003..e8fbd0e48984574c4777584a8d6b3e17207ee017 100644
--- a/dev/tests/unit/testsuite/Magento/Catalog/Controller/Adminhtml/Category/Widget/ChooserTest.php
+++ b/dev/tests/unit/testsuite/Magento/Catalog/Controller/Adminhtml/Category/Widget/ChooserTest.php
@@ -4,6 +4,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Controller\Adminhtml\Category\Widget;
 
 class ChooserTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Catalog/Controller/Product/Compare/IndexTest.php b/dev/tests/unit/testsuite/Magento/Catalog/Controller/Product/Compare/IndexTest.php
index 8651eeddaeee9fd0fffd04af7ed694aec1db03c6..4fbc2520073e6ae996e19915e3867e0054b62aa2 100644
--- a/dev/tests/unit/testsuite/Magento/Catalog/Controller/Product/Compare/IndexTest.php
+++ b/dev/tests/unit/testsuite/Magento/Catalog/Controller/Product/Compare/IndexTest.php
@@ -4,10 +4,17 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Controller\Product\Compare;
 
 use Magento\Catalog\Model\Resource\Product\Compare\Item;
 
+/**
+ * @SuppressWarnings(PHPMD.TooManyFields)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class IndexTest extends \PHPUnit_Framework_TestCase
 {
     /** @var \Magento\Catalog\Controller\Product\Compare\Index */
diff --git a/dev/tests/unit/testsuite/Magento/Catalog/Model/App/Action/ContextPluginTest.php b/dev/tests/unit/testsuite/Magento/Catalog/Model/App/Action/ContextPluginTest.php
index 6438e226925a5c989a5fe1e7a3270fe6d6c7a397..0b75edb91339b417287023ed54db3bc08c440e2c 100644
--- a/dev/tests/unit/testsuite/Magento/Catalog/Model/App/Action/ContextPluginTest.php
+++ b/dev/tests/unit/testsuite/Magento/Catalog/Model/App/Action/ContextPluginTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Model\App\Action;
 
 /**
diff --git a/dev/tests/unit/testsuite/Magento/Catalog/Model/Attribute/Backend/CustomlayoutupdateTest.php b/dev/tests/unit/testsuite/Magento/Catalog/Model/Attribute/Backend/CustomlayoutupdateTest.php
index f0172f61760bdbe472e76e366d7833d15ad6bd11..d81f994ac651139f5d067f2d1fbecabf0980858b 100644
--- a/dev/tests/unit/testsuite/Magento/Catalog/Model/Attribute/Backend/CustomlayoutupdateTest.php
+++ b/dev/tests/unit/testsuite/Magento/Catalog/Model/Attribute/Backend/CustomlayoutupdateTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Model\Attribute\Backend;
 
 use Magento\Framework\Object;
diff --git a/dev/tests/unit/testsuite/Magento/Catalog/Model/Category/Attribute/Backend/SortbyTest.php b/dev/tests/unit/testsuite/Magento/Catalog/Model/Category/Attribute/Backend/SortbyTest.php
index b70e8603cf355c52c48265e83084f2054479cccf..2b53761a3e69ba8d4a736ffcce49883ededa169f 100644
--- a/dev/tests/unit/testsuite/Magento/Catalog/Model/Category/Attribute/Backend/SortbyTest.php
+++ b/dev/tests/unit/testsuite/Magento/Catalog/Model/Category/Attribute/Backend/SortbyTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Model\Category\Attribute\Backend;
 
 class SortbyTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Catalog/Model/Category/AttributeRepositoryTest.php b/dev/tests/unit/testsuite/Magento/Catalog/Model/Category/AttributeRepositoryTest.php
index 033aac16b2a35cee51994a18f891353f6cffc1b2..6d732839032ba270ab53d7dfd3199dd5ef86bb9c 100644
--- a/dev/tests/unit/testsuite/Magento/Catalog/Model/Category/AttributeRepositoryTest.php
+++ b/dev/tests/unit/testsuite/Magento/Catalog/Model/Category/AttributeRepositoryTest.php
@@ -5,6 +5,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Model\Category;
 
 class AttributeRepositoryTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Catalog/Model/Category/TreeTest.php b/dev/tests/unit/testsuite/Magento/Catalog/Model/Category/TreeTest.php
index 7cd636423f6d8aa2ab36ad1e24fb9d3118733698..8b38af7d56cf11789780bb23e96598f7e90ec2cf 100644
--- a/dev/tests/unit/testsuite/Magento/Catalog/Model/Category/TreeTest.php
+++ b/dev/tests/unit/testsuite/Magento/Catalog/Model/Category/TreeTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Model\Category;
 
 class TreeTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Catalog/Model/CategoryTest.php b/dev/tests/unit/testsuite/Magento/Catalog/Model/CategoryTest.php
index f2acac23f6346625626f088664ccc01d72849e7b..b6c02ba81cfe5261b5d83435b7725a0cd186c952 100644
--- a/dev/tests/unit/testsuite/Magento/Catalog/Model/CategoryTest.php
+++ b/dev/tests/unit/testsuite/Magento/Catalog/Model/CategoryTest.php
@@ -4,8 +4,14 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Model;
 
+/**
+ * @SuppressWarnings(PHPMD.TooManyFields)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class CategoryTest extends \PHPUnit_Framework_TestCase
 {
     /** @var \Magento\Catalog\Model\Category */
diff --git a/dev/tests/unit/testsuite/Magento/Catalog/Model/Indexer/Category/AffectCacheTest.php b/dev/tests/unit/testsuite/Magento/Catalog/Model/Indexer/Category/AffectCacheTest.php
index e85a96138433567d9a28323d49efba28d7a646e4..0c429ca3b0d307f134f4c5a1c68383aaf01c45ed 100644
--- a/dev/tests/unit/testsuite/Magento/Catalog/Model/Indexer/Category/AffectCacheTest.php
+++ b/dev/tests/unit/testsuite/Magento/Catalog/Model/Indexer/Category/AffectCacheTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Model\Indexer\Category;
 
 class AffectCacheTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Catalog/Model/Indexer/Product/AffectCacheTest.php b/dev/tests/unit/testsuite/Magento/Catalog/Model/Indexer/Product/AffectCacheTest.php
index b64b75a231673b668b1e4c87b9312edce0b9223e..3cc1ea6c9a7d9406173b79dec63690bca0772c41 100644
--- a/dev/tests/unit/testsuite/Magento/Catalog/Model/Indexer/Product/AffectCacheTest.php
+++ b/dev/tests/unit/testsuite/Magento/Catalog/Model/Indexer/Product/AffectCacheTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Model\Indexer\Product;
 
 class AffectCacheTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Catalog/Model/Indexer/Product/Flat/Action/EraserTest.php b/dev/tests/unit/testsuite/Magento/Catalog/Model/Indexer/Product/Flat/Action/EraserTest.php
index 22356c44c90b82d814a058f18c149ee00399e340..c666bd8fe562aea22d4df06cc205bb1497bea873 100644
--- a/dev/tests/unit/testsuite/Magento/Catalog/Model/Indexer/Product/Flat/Action/EraserTest.php
+++ b/dev/tests/unit/testsuite/Magento/Catalog/Model/Indexer/Product/Flat/Action/EraserTest.php
@@ -5,6 +5,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Model\Indexer\Product\Flat\Action;
 
 class EraserTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Catalog/Model/Indexer/Product/Flat/Action/RowTest.php b/dev/tests/unit/testsuite/Magento/Catalog/Model/Indexer/Product/Flat/Action/RowTest.php
index 57639149f1fd15f0eca6354ac51fa7d94d1d3e5a..70146267648875adab1acefe84c4b871c907e9c5 100644
--- a/dev/tests/unit/testsuite/Magento/Catalog/Model/Indexer/Product/Flat/Action/RowTest.php
+++ b/dev/tests/unit/testsuite/Magento/Catalog/Model/Indexer/Product/Flat/Action/RowTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Model\Indexer\Product\Flat\Action;
 
 use Magento\TestFramework\Helper\ObjectManager;
diff --git a/dev/tests/unit/testsuite/Magento/Catalog/Model/Indexer/Product/Flat/Action/RowsTest.php b/dev/tests/unit/testsuite/Magento/Catalog/Model/Indexer/Product/Flat/Action/RowsTest.php
index d986cd69e08306de668d68de552ee619d5343c7f..0789115e201847cc1ea7cb953f864047e81aafad 100644
--- a/dev/tests/unit/testsuite/Magento/Catalog/Model/Indexer/Product/Flat/Action/RowsTest.php
+++ b/dev/tests/unit/testsuite/Magento/Catalog/Model/Indexer/Product/Flat/Action/RowsTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Model\Indexer\Product\Flat\Action;
 
 use Magento\TestFramework\Helper\ObjectManager;
diff --git a/dev/tests/unit/testsuite/Magento/Catalog/Model/Indexer/Product/Price/Plugin/CustomerGroupTest.php b/dev/tests/unit/testsuite/Magento/Catalog/Model/Indexer/Product/Price/Plugin/CustomerGroupTest.php
index a81e075e87ec9499a462aac0f0f449e1c544dae9..9918a2a5aabe6f4fb30215b273836e604432afd0 100644
--- a/dev/tests/unit/testsuite/Magento/Catalog/Model/Indexer/Product/Price/Plugin/CustomerGroupTest.php
+++ b/dev/tests/unit/testsuite/Magento/Catalog/Model/Indexer/Product/Price/Plugin/CustomerGroupTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Model\Indexer\Product\Price\Plugin;
 
 class CustomerGroupTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Catalog/Model/Layer/Category/AvailabilityFlagTest.php b/dev/tests/unit/testsuite/Magento/Catalog/Model/Layer/Category/AvailabilityFlagTest.php
index db49b44bf81a2d42993513299c831989f24c2355..cc6bf85af0a54d84390fa245d1b8b0cb15c663f1 100644
--- a/dev/tests/unit/testsuite/Magento/Catalog/Model/Layer/Category/AvailabilityFlagTest.php
+++ b/dev/tests/unit/testsuite/Magento/Catalog/Model/Layer/Category/AvailabilityFlagTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Model\Layer\Category;
 
 class AvailabilityFlagTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Catalog/Model/Layer/Category/CollectionFilterTest.php b/dev/tests/unit/testsuite/Magento/Catalog/Model/Layer/Category/CollectionFilterTest.php
index 99311ea2d28f379fc85d332d889edb0aaa6305fa..99ff6566e00ffaad403427189c44837d9ed08f0b 100644
--- a/dev/tests/unit/testsuite/Magento/Catalog/Model/Layer/Category/CollectionFilterTest.php
+++ b/dev/tests/unit/testsuite/Magento/Catalog/Model/Layer/Category/CollectionFilterTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Model\Layer\Category;
 
 class CollectionFilterTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Catalog/Model/Layer/Category/FilterableAttributeListTest.php b/dev/tests/unit/testsuite/Magento/Catalog/Model/Layer/Category/FilterableAttributeListTest.php
index f822e76b4069805d76d04a1d9a9e1c780d251ae7..dae378983bc9369da81837fd2e629605034e1494 100644
--- a/dev/tests/unit/testsuite/Magento/Catalog/Model/Layer/Category/FilterableAttributeListTest.php
+++ b/dev/tests/unit/testsuite/Magento/Catalog/Model/Layer/Category/FilterableAttributeListTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Model\Layer\Category;
 
 class FilterableAttributeListTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Catalog/Model/Layer/Filter/AttributeTest.php b/dev/tests/unit/testsuite/Magento/Catalog/Model/Layer/Filter/AttributeTest.php
index 8ffb53ffbd420a855a59b3e21a6e480130990de8..74725687834c145cdc0e3676272f0eed0a8d3364 100644
--- a/dev/tests/unit/testsuite/Magento/Catalog/Model/Layer/Filter/AttributeTest.php
+++ b/dev/tests/unit/testsuite/Magento/Catalog/Model/Layer/Filter/AttributeTest.php
@@ -9,6 +9,9 @@ namespace Magento\Catalog\Model\Layer\Filter;
 use Magento\TestFramework\Helper\ObjectManager as ObjectManagerHelper;
 use PHPUnit_Framework_MockObject_MockObject as MockObject;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class AttributeTest extends \PHPUnit_Framework_TestCase
 {
     /** @var  \Magento\Catalog\Model\Resource\Layer\Filter\Attribute|MockObject */
@@ -46,6 +49,9 @@ class AttributeTest extends \PHPUnit_Framework_TestCase
     /** @var  \Magento\Catalog\Model\Layer\Filter\Item\DataBuilder|MockObject */
     private $itemDataBuilder;
 
+    /**
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
+     */
     protected function setUp()
     {
         /** @var \Magento\Catalog\Model\Layer\Filter\ItemFactory $filterItemFactory */
diff --git a/dev/tests/unit/testsuite/Magento/Catalog/Model/Layer/Filter/DataProvider/CategoryTest.php b/dev/tests/unit/testsuite/Magento/Catalog/Model/Layer/Filter/DataProvider/CategoryTest.php
index b131668677b1b0616b3d26d3e85fce0a83a36ec6..387c212cf3808a29c4fcf98c23cdcd4fc30ae665 100644
--- a/dev/tests/unit/testsuite/Magento/Catalog/Model/Layer/Filter/DataProvider/CategoryTest.php
+++ b/dev/tests/unit/testsuite/Magento/Catalog/Model/Layer/Filter/DataProvider/CategoryTest.php
@@ -34,6 +34,9 @@ class CategoryTest extends \PHPUnit_Framework_TestCase
      */
     private $target;
 
+    /**
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
+     */
     protected function setUp()
     {
         /** @var \Magento\Framework\Registry $var */
diff --git a/dev/tests/unit/testsuite/Magento/Catalog/Model/Layer/Filter/PriceTest.php b/dev/tests/unit/testsuite/Magento/Catalog/Model/Layer/Filter/PriceTest.php
index 13e4651c380cebd7f5d0a908c107bf26b30d374b..e3cc7a3095c652a02d953ead43f7d1eba7bbd2f2 100644
--- a/dev/tests/unit/testsuite/Magento/Catalog/Model/Layer/Filter/PriceTest.php
+++ b/dev/tests/unit/testsuite/Magento/Catalog/Model/Layer/Filter/PriceTest.php
@@ -11,6 +11,7 @@ use PHPUnit_Framework_MockObject_MockObject as MockObject;
 
 /**
  * Test for \Magento\Catalog\Model\Layer\Filter\Price
+ * @SuppressWarnings(PHPMD.UnusedPrivateField)
  */
 class PriceTest extends \PHPUnit_Framework_TestCase
 {
@@ -50,6 +51,9 @@ class PriceTest extends \PHPUnit_Framework_TestCase
     /** @var  \Magento\Catalog\Model\Layer\State|MockObject */
     private $state;
 
+    /**
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
+     */
     protected function setUp()
     {
         $this->request = $this->getMockBuilder('\Magento\Framework\App\RequestInterface')
diff --git a/dev/tests/unit/testsuite/Magento/Catalog/Model/Layer/FilterListTest.php b/dev/tests/unit/testsuite/Magento/Catalog/Model/Layer/FilterListTest.php
index a9597d643e96a3fc419f9a88b80df9c7ca7af935..4da641bc12ab3e75e33bb6b98d0843a74d6754fe 100644
--- a/dev/tests/unit/testsuite/Magento/Catalog/Model/Layer/FilterListTest.php
+++ b/dev/tests/unit/testsuite/Magento/Catalog/Model/Layer/FilterListTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Model\Layer;
 
 class FilterListTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Catalog/Model/Layer/Search/FilterableAttributeListTest.php b/dev/tests/unit/testsuite/Magento/Catalog/Model/Layer/Search/FilterableAttributeListTest.php
index 4c2b9e41b2d6c2d0266ac79524dba406af2bb518..2afb8894af13f6b52dcbd0cb8086abf1e88498d1 100644
--- a/dev/tests/unit/testsuite/Magento/Catalog/Model/Layer/Search/FilterableAttributeListTest.php
+++ b/dev/tests/unit/testsuite/Magento/Catalog/Model/Layer/Search/FilterableAttributeListTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Model\Layer\Search;
 
 class FilterableAttributeListTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Catalog/Model/LayerTest.php b/dev/tests/unit/testsuite/Magento/Catalog/Model/LayerTest.php
index ed43f9df57fdd64cf2a76584e14d093ef7530007..10a9fad9e999486018759af27d1f192ed99e2795 100644
--- a/dev/tests/unit/testsuite/Magento/Catalog/Model/LayerTest.php
+++ b/dev/tests/unit/testsuite/Magento/Catalog/Model/LayerTest.php
@@ -10,6 +10,7 @@ use Magento\TestFramework\Helper\ObjectManager;
 
 /**
  * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ * @SuppressWarnings(PHPMD.TooManyFields)
  */
 class LayerTest extends \PHPUnit_Framework_TestCase
 {
diff --git a/dev/tests/unit/testsuite/Magento/Catalog/Model/Layout/DepersonalizePluginTest.php b/dev/tests/unit/testsuite/Magento/Catalog/Model/Layout/DepersonalizePluginTest.php
index 402a945b676423da15a45630fd87c93f5f92c8b4..e3785dc0597438b0d723a5cfe4ffe143a504d6c5 100644
--- a/dev/tests/unit/testsuite/Magento/Catalog/Model/Layout/DepersonalizePluginTest.php
+++ b/dev/tests/unit/testsuite/Magento/Catalog/Model/Layout/DepersonalizePluginTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Model\Layout;
 
 use Magento\TestFramework\Helper\ObjectManager;
diff --git a/dev/tests/unit/testsuite/Magento/Catalog/Model/Plugin/QuoteItemProductOptionTest.php b/dev/tests/unit/testsuite/Magento/Catalog/Model/Plugin/QuoteItemProductOptionTest.php
index 08bfe27c1eb9e9c4a03bb14fe3c24733f8967121..68f2991dc499e50a31384148679ebd2bd48533f1 100644
--- a/dev/tests/unit/testsuite/Magento/Catalog/Model/Plugin/QuoteItemProductOptionTest.php
+++ b/dev/tests/unit/testsuite/Magento/Catalog/Model/Plugin/QuoteItemProductOptionTest.php
@@ -29,9 +29,9 @@ class QuoteItemProductOptionTest extends \PHPUnit_Framework_TestCase
     protected function setUp()
     {
         $this->orderItemMock = $this->getMock('Magento\Sales\Model\Order\Item', [], [], '', false);
-        $this->quoteItemMock = $this->getMock('Magento\Sales\Model\Quote\Item', [], [], '', false);
+        $this->quoteItemMock = $this->getMock('Magento\Quote\Model\Quote\Item', [], [], '', false);
         $orderItem = $this->orderItemMock;
-        $this->subjectMock = $this->getMock('Magento\Sales\Model\Convert\Quote', [], [], '', false);
+        $this->subjectMock = $this->getMock('Magento\Quote\Model\Quote\Item\ToOrderItem', [], [], '', false);
         $this->closureMock = function () use ($orderItem) {
             return $orderItem;
         };
@@ -42,14 +42,14 @@ class QuoteItemProductOptionTest extends \PHPUnit_Framework_TestCase
     {
         $this->quoteItemMock->expects($this->exactly(2))->method('getOptions')->will($this->returnValue([]));
 
-        $orderItem = $this->model->aroundItemToOrderItem($this->subjectMock, $this->closureMock, $this->quoteItemMock);
+        $orderItem = $this->model->aroundConvert($this->subjectMock, $this->closureMock, $this->quoteItemMock, []);
         $this->assertSame($this->orderItemMock, $orderItem);
     }
 
     public function testAroundItemToOrderItemWithOptions()
     {
         $itemOption = $this->getMock(
-            'Magento\Sales\Model\Quote\Item\Option',
+            'Magento\Quote\Model\Quote\Item\Option',
             ['getCode', '__wakeup'],
             [],
             '',
@@ -74,7 +74,7 @@ class QuoteItemProductOptionTest extends \PHPUnit_Framework_TestCase
 
         $this->quoteItemMock->expects($this->once())->method('getProduct')->will($this->returnValue($productMock));
 
-        $orderItem = $this->model->aroundItemToOrderItem($this->subjectMock, $this->closureMock, $this->quoteItemMock);
+        $orderItem = $this->model->aroundConvert($this->subjectMock, $this->closureMock, $this->quoteItemMock, []);
         $this->assertSame($this->orderItemMock, $orderItem);
     }
 }
diff --git a/dev/tests/unit/testsuite/Magento/Catalog/Model/Product/Attribute/Backend/Groupprice/AbstractTest.php b/dev/tests/unit/testsuite/Magento/Catalog/Model/Product/Attribute/Backend/GroupPrice/AbstractTest.php
similarity index 96%
rename from dev/tests/unit/testsuite/Magento/Catalog/Model/Product/Attribute/Backend/Groupprice/AbstractTest.php
rename to dev/tests/unit/testsuite/Magento/Catalog/Model/Product/Attribute/Backend/GroupPrice/AbstractTest.php
index f2445205ecdfb1b08ec7fab7ddcd40682d804068..67f5e0b62d3e4b4b810c88e0d359d2533593db47 100644
--- a/dev/tests/unit/testsuite/Magento/Catalog/Model/Product/Attribute/Backend/Groupprice/AbstractTest.php
+++ b/dev/tests/unit/testsuite/Magento/Catalog/Model/Product/Attribute/Backend/GroupPrice/AbstractTest.php
@@ -3,12 +3,12 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Catalog\Model\Product\Attribute\Backend\Groupprice;
+namespace Magento\Catalog\Model\Product\Attribute\Backend\GroupPrice;
 
 class AbstractTest extends \PHPUnit_Framework_TestCase
 {
     /**
-     * @var \Magento\Catalog\Model\Resource\Product\Attribute\Backend\Groupprice\AbstractGroupprice
+     * @var \Magento\Catalog\Model\Resource\Product\Attribute\Backend\GroupPrice\AbstractGroupPrice
      */
     protected $_model;
 
@@ -31,7 +31,7 @@ class AbstractTest extends \PHPUnit_Framework_TestCase
         $groupManagement = $this->getMock('Magento\Customer\Api\GroupManagementInterface', [], [], '', false);
 
         $this->_model = $this->getMockForAbstractClass(
-            'Magento\Catalog\Model\Product\Attribute\Backend\Groupprice\AbstractGroupprice',
+            'Magento\Catalog\Model\Product\Attribute\Backend\GroupPrice\AbstractGroupPrice',
             [
                 'currencyFactory' => $currencyFactoryMock,
                 'storeManager' => $storeManagerMock,
diff --git a/dev/tests/unit/testsuite/Magento/Catalog/Model/Product/Attribute/ManagementTest.php b/dev/tests/unit/testsuite/Magento/Catalog/Model/Product/Attribute/ManagementTest.php
index 9e557abe38c4f133a5533d61f5c3c8e660503d9a..eed3bbd143def33e8f46d8c6968e9f47cf79c233 100644
--- a/dev/tests/unit/testsuite/Magento/Catalog/Model/Product/Attribute/ManagementTest.php
+++ b/dev/tests/unit/testsuite/Magento/Catalog/Model/Product/Attribute/ManagementTest.php
@@ -4,6 +4,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Model\Product\Attribute;
 
 class ManagementTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Catalog/Model/Product/Attribute/RepositoryTest.php b/dev/tests/unit/testsuite/Magento/Catalog/Model/Product/Attribute/RepositoryTest.php
index e2b722a6467564aeaa678150909faf1f0bb4ab66..8cecb48fe4deead0a9b775ed82ce97377a44cbf3 100644
--- a/dev/tests/unit/testsuite/Magento/Catalog/Model/Product/Attribute/RepositoryTest.php
+++ b/dev/tests/unit/testsuite/Magento/Catalog/Model/Product/Attribute/RepositoryTest.php
@@ -5,6 +5,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Model\Product\Attribute;
 
 class RepositoryTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Catalog/Model/Product/Attribute/Source/StatusTest.php b/dev/tests/unit/testsuite/Magento/Catalog/Model/Product/Attribute/Source/StatusTest.php
index 4a0a5f9c58899a16da698bbfd3a3aa2d50a94f07..e60e93c25a433e30b2ddd54ad448f464d9cffdd9 100644
--- a/dev/tests/unit/testsuite/Magento/Catalog/Model/Product/Attribute/Source/StatusTest.php
+++ b/dev/tests/unit/testsuite/Magento/Catalog/Model/Product/Attribute/Source/StatusTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Model\Product\Attribute\Source;
 
 use Magento\TestFramework\Helper\ObjectManager as ObjectManagerHelper;
diff --git a/dev/tests/unit/testsuite/Magento/Catalog/Model/Product/Attribute/TypesListTest.php b/dev/tests/unit/testsuite/Magento/Catalog/Model/Product/Attribute/TypesListTest.php
index c9e3f52e0a5e6315a4cf12188c6222dd9950958d..e8ddde956122fedf3571fc65bdff631f624f332b 100644
--- a/dev/tests/unit/testsuite/Magento/Catalog/Model/Product/Attribute/TypesListTest.php
+++ b/dev/tests/unit/testsuite/Magento/Catalog/Model/Product/Attribute/TypesListTest.php
@@ -5,6 +5,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Model\Product\Attribute;
 
 class TypesListTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Catalog/Model/Product/LinkTypeProviderTest.php b/dev/tests/unit/testsuite/Magento/Catalog/Model/Product/LinkTypeProviderTest.php
index 095253b7ed2dafbd49f0c7757ae02fc1ea21d03a..33f854d885c7bc13e8a4a593bb2ea7ef9bdba848 100644
--- a/dev/tests/unit/testsuite/Magento/Catalog/Model/Product/LinkTypeProviderTest.php
+++ b/dev/tests/unit/testsuite/Magento/Catalog/Model/Product/LinkTypeProviderTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Model\Product;
 
 class LinkTypeProviderTest extends \PHPUnit_Framework_TestCase
@@ -66,6 +69,9 @@ class LinkTypeProviderTest extends \PHPUnit_Framework_TestCase
         );
     }
 
+    /**
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
+     */
     public function testGetItems()
     {
         $expectedResult = [];
diff --git a/dev/tests/unit/testsuite/Magento/Catalog/Model/Product/Option/Validator/PoolTest.php b/dev/tests/unit/testsuite/Magento/Catalog/Model/Product/Option/Validator/PoolTest.php
index c49f3f2cbbac3600ce57d96efd64ee3887928f40..3474b5c24848e0bf0a3f3fab7c79accfc47ae74d 100644
--- a/dev/tests/unit/testsuite/Magento/Catalog/Model/Product/Option/Validator/PoolTest.php
+++ b/dev/tests/unit/testsuite/Magento/Catalog/Model/Product/Option/Validator/PoolTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Model\Product\Option\Validator;
 
 class PoolTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Catalog/Model/Product/PriceModifierTest.php b/dev/tests/unit/testsuite/Magento/Catalog/Model/Product/PriceModifierTest.php
index fe291a1c4ca11068d8f9521bbd39110410156233..9feb30c610fea1787ff97aba8e820b24d77b1346 100644
--- a/dev/tests/unit/testsuite/Magento/Catalog/Model/Product/PriceModifierTest.php
+++ b/dev/tests/unit/testsuite/Magento/Catalog/Model/Product/PriceModifierTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Model\Product;
 
 class PriceModifierTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Catalog/Model/Product/TierPriceManagementTest.php b/dev/tests/unit/testsuite/Magento/Catalog/Model/Product/TierPriceManagementTest.php
index 9f63916000aeeb4e6cb06aeacaaeb3a5f11fb304..42e114740a7ace570859a3a2b7659ce25c16c62e 100644
--- a/dev/tests/unit/testsuite/Magento/Catalog/Model/Product/TierPriceManagementTest.php
+++ b/dev/tests/unit/testsuite/Magento/Catalog/Model/Product/TierPriceManagementTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Model\Product;
 
 use Magento\Customer\Model\GroupManagement;
diff --git a/dev/tests/unit/testsuite/Magento/Catalog/Model/ProductTest.php b/dev/tests/unit/testsuite/Magento/Catalog/Model/ProductTest.php
index 5706d834dfd2a4cade0a9fcc91a5d2c8ab2ca29f..1dc92b950212b39003fed8943591093a4fd0247c 100644
--- a/dev/tests/unit/testsuite/Magento/Catalog/Model/ProductTest.php
+++ b/dev/tests/unit/testsuite/Magento/Catalog/Model/ProductTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Model;
 
 use Magento\TestFramework\Helper\ObjectManager as ObjectManagerHelper;
@@ -424,10 +427,16 @@ class ProductTest extends \PHPUnit_Framework_TestCase
      */
     public function testSetQty()
     {
-        $this->productTypeInstanceMock->expects($this->once())
+        $this->productTypeInstanceMock->expects($this->exactly(2))
             ->method('getPriceInfo')
             ->with($this->equalTo($this->model))
             ->will($this->returnValue($this->_priceInfoMock));
+
+        //initialize the priceInfo field
+        $this->model->getPriceInfo();
+        //Calling setQty will reset the priceInfo field
+        $this->assertEquals($this->model, $this->model->setQty(1));
+        //Call the setQty method with the same qty, getPriceInfo should not be called this time
         $this->assertEquals($this->model, $this->model->setQty(1));
         $this->assertEquals($this->model->getPriceInfo(), $this->_priceInfoMock);
     }
diff --git a/dev/tests/unit/testsuite/Magento/Catalog/Model/Resource/Category/TreeTest.php b/dev/tests/unit/testsuite/Magento/Catalog/Model/Resource/Category/TreeTest.php
index 480ffdde0eb181845215de5d3d0c77410fa782c6..a9421ac5ce0cc73ffac53060695692526b654e9d 100644
--- a/dev/tests/unit/testsuite/Magento/Catalog/Model/Resource/Category/TreeTest.php
+++ b/dev/tests/unit/testsuite/Magento/Catalog/Model/Resource/Category/TreeTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Model\Resource\Category;
 
 class TreeTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Catalog/Model/Resource/Eav/AttributeTest.php b/dev/tests/unit/testsuite/Magento/Catalog/Model/Resource/Eav/AttributeTest.php
index 7612c2559d051079e60ffc642f21320871d33e62..f0eb9f0193f318c39e16f1c810a0e97f9b2def40 100644
--- a/dev/tests/unit/testsuite/Magento/Catalog/Model/Resource/Eav/AttributeTest.php
+++ b/dev/tests/unit/testsuite/Magento/Catalog/Model/Resource/Eav/AttributeTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Model\Resource\Eav;
 
 class AttributeTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Catalog/Model/Resource/Product/Attribute/Backend/MediaTest.php b/dev/tests/unit/testsuite/Magento/Catalog/Model/Resource/Product/Attribute/Backend/MediaTest.php
index f71dd5afe0878a1714d0912b9d69b75afd5383f1..77c9104daf06f5653d116d9483a636b96a7c4b8d 100644
--- a/dev/tests/unit/testsuite/Magento/Catalog/Model/Resource/Product/Attribute/Backend/MediaTest.php
+++ b/dev/tests/unit/testsuite/Magento/Catalog/Model/Resource/Product/Attribute/Backend/MediaTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Model\Resource\Product\Attribute\Backend;
 
 /**
diff --git a/dev/tests/unit/testsuite/Magento/Catalog/Model/Resource/Product/Option/CollectionTest.php b/dev/tests/unit/testsuite/Magento/Catalog/Model/Resource/Product/Option/CollectionTest.php
index 3bdd598dc475c63dbd2b281a7907a0617b2f03e6..8ab0bf35a4b57062def707f55c4af7534902ef0a 100644
--- a/dev/tests/unit/testsuite/Magento/Catalog/Model/Resource/Product/Option/CollectionTest.php
+++ b/dev/tests/unit/testsuite/Magento/Catalog/Model/Resource/Product/Option/CollectionTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Model\Resource\Product\Option;
 
 class CollectionTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Catalog/Model/Rss/CategoryTest.php b/dev/tests/unit/testsuite/Magento/Catalog/Model/Rss/CategoryTest.php
index 5207893b9360ccbcdf6821e4175443699ec82123..1b316834f8c73764001a11ee8a1a791b05085bbc 100644
--- a/dev/tests/unit/testsuite/Magento/Catalog/Model/Rss/CategoryTest.php
+++ b/dev/tests/unit/testsuite/Magento/Catalog/Model/Rss/CategoryTest.php
@@ -87,6 +87,9 @@ class CategoryTest extends \PHPUnit_Framework_TestCase
         );
     }
 
+    /**
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
+     */
     public function testGetProductCollection()
     {
         $storeId = 1;
diff --git a/dev/tests/unit/testsuite/Magento/Catalog/Pricing/Price/BasePriceTest.php b/dev/tests/unit/testsuite/Magento/Catalog/Pricing/Price/BasePriceTest.php
index a3b8171283f65251df8d0ba28ef92faac8c65bad..e6b127982df8bf8e440020d8613ff001b022fd1f 100644
--- a/dev/tests/unit/testsuite/Magento/Catalog/Pricing/Price/BasePriceTest.php
+++ b/dev/tests/unit/testsuite/Magento/Catalog/Pricing/Price/BasePriceTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Pricing\Price;
 
 /**
diff --git a/dev/tests/unit/testsuite/Magento/Catalog/Pricing/Price/GroupPriceTest.php b/dev/tests/unit/testsuite/Magento/Catalog/Pricing/Price/GroupPriceTest.php
index af64271e3b09965d6c5cf9cafc700a2428f13c90..504c34b5318dabdc5f078c3b11b4683b0e4dc3c7 100644
--- a/dev/tests/unit/testsuite/Magento/Catalog/Pricing/Price/GroupPriceTest.php
+++ b/dev/tests/unit/testsuite/Magento/Catalog/Pricing/Price/GroupPriceTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Pricing\Price;
 
 /**
@@ -47,7 +49,7 @@ class GroupPriceTest extends \PHPUnit_Framework_TestCase
     protected $attributeMock;
 
     /**
-     * @var \Magento\Catalog\Model\Product\Attribute\Backend\Groupprice|\PHPUnit_Framework_MockObject_MockObject
+     * @var \Magento\Catalog\Model\Product\Attribute\Backend\GroupPrice|\PHPUnit_Framework_MockObject_MockObject
      */
     protected $backendMock;
 
@@ -104,7 +106,7 @@ class GroupPriceTest extends \PHPUnit_Framework_TestCase
             false
         );
         $this->backendMock = $this->getMock(
-            'Magento\Catalog\Model\Product\Attribute\Backend\Groupprice',
+            'Magento\Catalog\Model\Product\Attribute\Backend\GroupPrice',
             [],
             [],
             '',
diff --git a/dev/tests/unit/testsuite/Magento/Catalog/Pricing/Price/TierPriceTest.php b/dev/tests/unit/testsuite/Magento/Catalog/Pricing/Price/TierPriceTest.php
index 5d5065baf36c2de8d2703faa0595a32ebd3d6234..e323dcce39eaeee6758cf2099f9e7c461ce7ed9b 100644
--- a/dev/tests/unit/testsuite/Magento/Catalog/Pricing/Price/TierPriceTest.php
+++ b/dev/tests/unit/testsuite/Magento/Catalog/Pricing/Price/TierPriceTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Catalog\Pricing\Price;
 
 use Magento\Customer\Model\Group;
diff --git a/dev/tests/unit/testsuite/Magento/CatalogInventory/Model/ObserverTest.php b/dev/tests/unit/testsuite/Magento/CatalogInventory/Model/ObserverTest.php
index af7e7ce0f0c3acb4647bb2ae4a27297db89f7e78..069a87d165de4724a0137efd56900409da28057b 100644
--- a/dev/tests/unit/testsuite/Magento/CatalogInventory/Model/ObserverTest.php
+++ b/dev/tests/unit/testsuite/Magento/CatalogInventory/Model/ObserverTest.php
@@ -85,6 +85,9 @@ class ObserverTest extends \PHPUnit_Framework_TestCase
      */
     protected $eventObserver;
 
+    /**
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
+     */
     protected function setUp()
     {
         $this->stockStatus = $this->getMockBuilder('Magento\CatalogInventory\Model\Stock\Status')
@@ -331,7 +334,7 @@ class ObserverTest extends \PHPUnit_Framework_TestCase
         $itemsToReindex = [];
 
         $quote = $this->getMock(
-            '\Magento\Sales\Model\Quote',
+            '\Magento\Quote\Model\Quote',
             ['getInventoryProcessed', 'setInventoryProcessed', 'getAllItems', 'getStore', '__wakeup'],
             [],
             '',
diff --git a/dev/tests/unit/testsuite/Magento/CatalogInventory/Model/Quote/Item/QuantityValidator/Initializer/OptionTest.php b/dev/tests/unit/testsuite/Magento/CatalogInventory/Model/Quote/Item/QuantityValidator/Initializer/OptionTest.php
index 62356f990ae5d374953cb0945411d00924284703..93ff42281d74a7476e3a47780b5f5beb8812b140 100644
--- a/dev/tests/unit/testsuite/Magento/CatalogInventory/Model/Quote/Item/QuantityValidator/Initializer/OptionTest.php
+++ b/dev/tests/unit/testsuite/Magento/CatalogInventory/Model/Quote/Item/QuantityValidator/Initializer/OptionTest.php
@@ -80,7 +80,7 @@ class OptionTest extends \PHPUnit_Framework_TestCase
             '__wakeup',
         ];
         $this->optionMock = $this->getMock(
-            'Magento\Sales\Model\Quote\Item\Option',
+            'Magento\Quote\Model\Quote\Item\Option',
             $optionMethods,
             [],
             '',
@@ -97,7 +97,7 @@ class OptionTest extends \PHPUnit_Framework_TestCase
         $store->expects($this->any())->method('getWebsiteId')->willReturn($this->websiteId);
 
         $methods = ['getQtyToAdd', '__wakeup', 'getId', 'updateQtyOption', 'setData', 'getQuoteId', 'getStore'];
-        $this->quoteItemMock = $this->getMock('Magento\Sales\Model\Quote\Item', $methods, [], '', false);
+        $this->quoteItemMock = $this->getMock('Magento\Quote\Model\Quote\Item', $methods, [], '', false);
         $this->quoteItemMock->expects($this->any())->method('getStore')->willReturn($store);
 
         $stockItemMethods = [
diff --git a/dev/tests/unit/testsuite/Magento/CatalogInventory/Model/Quote/Item/QuantityValidator/Initializer/QtyProcessorTest.php b/dev/tests/unit/testsuite/Magento/CatalogInventory/Model/Quote/Item/QuantityValidator/Initializer/QtyProcessorTest.php
index db495e4291d96a01e2065b1e42911a1b4971e87e..578b5f7691887593a96cea501039b0fa3fae6b62 100644
--- a/dev/tests/unit/testsuite/Magento/CatalogInventory/Model/Quote/Item/QuantityValidator/Initializer/QtyProcessorTest.php
+++ b/dev/tests/unit/testsuite/Magento/CatalogInventory/Model/Quote/Item/QuantityValidator/Initializer/QtyProcessorTest.php
@@ -30,7 +30,7 @@ class QtyProcessorTest extends \PHPUnit_Framework_TestCase
             ->disableOriginalConstructor()
             ->getMock();
         $this->qtyProcessor = new QtyProcessor($this->quoteItemQtyList);
-        $this->itemMock = $this->getMockBuilder('Magento\Sales\Model\Quote\Item')
+        $this->itemMock = $this->getMockBuilder('Magento\Quote\Model\Quote\Item')
             ->disableOriginalConstructor()
             ->setMethods(['getParentItem', 'getProduct', '__wakeup'])
             ->getMock();
@@ -38,7 +38,7 @@ class QtyProcessorTest extends \PHPUnit_Framework_TestCase
 
     public function testSetItem()
     {
-        $itemMock = $this->getMockBuilder('Magento\Sales\Model\Quote\Item')
+        $itemMock = $this->getMockBuilder('Magento\Quote\Model\Quote\Item')
             ->disableOriginalConstructor()
             ->getMock();
 
@@ -52,10 +52,10 @@ class QtyProcessorTest extends \PHPUnit_Framework_TestCase
     {
         $qty = 1;
 
-        $itemMock = $this->getMockBuilder('Magento\Sales\Model\Quote\Item')
+        $itemMock = $this->getMockBuilder('Magento\Quote\Model\Quote\Item')
             ->disableOriginalConstructor()
             ->getMock();
-        $parentItemMock = $this->getMockBuilder('Magento\Sales\Model\Quote\Item')
+        $parentItemMock = $this->getMockBuilder('Magento\Quote\Model\Quote\Item')
             ->disableOriginalConstructor()
             ->getMock();
         $itemMock->expects($this->any())
@@ -83,7 +83,7 @@ class QtyProcessorTest extends \PHPUnit_Framework_TestCase
         $productMock->expects($this->once())
             ->method('getId')
             ->willReturn($productId);
-        $itemMock = $this->getMockBuilder('Magento\Sales\Model\Quote\Item')
+        $itemMock = $this->getMockBuilder('Magento\Quote\Model\Quote\Item')
             ->disableOriginalConstructor()
             ->getMock();
         $itemMock->expects($this->any())
@@ -110,7 +110,7 @@ class QtyProcessorTest extends \PHPUnit_Framework_TestCase
         $productMock->expects($this->once())
             ->method('getId')
             ->willReturn($productId);
-        $parentItemMock = $this->getMockBuilder('Magento\Sales\Model\Quote\Item')
+        $parentItemMock = $this->getMockBuilder('Magento\Quote\Model\Quote\Item')
             ->disableOriginalConstructor()
             ->getMock();
         $this->itemMock->expects($this->any())
diff --git a/dev/tests/unit/testsuite/Magento/CatalogInventory/Model/Quote/Item/QuantityValidator/Initializer/StockItemTest.php b/dev/tests/unit/testsuite/Magento/CatalogInventory/Model/Quote/Item/QuantityValidator/Initializer/StockItemTest.php
index 92355ecc9125c90040b062267f26b66d936333d4..322101b957fb7f2b7ea95d47b751710eef543c5a 100644
--- a/dev/tests/unit/testsuite/Magento/CatalogInventory/Model/Quote/Item/QuantityValidator/Initializer/StockItemTest.php
+++ b/dev/tests/unit/testsuite/Magento/CatalogInventory/Model/Quote/Item/QuantityValidator/Initializer/StockItemTest.php
@@ -71,7 +71,7 @@ class StockItemTest extends \PHPUnit_Framework_TestCase
             '',
             false
         );
-        $quoteItem = $this->getMockBuilder('Magento\Sales\Model\Quote\Item')
+        $quoteItem = $this->getMockBuilder('Magento\Quote\Model\Quote\Item')
             ->setMethods(
                 [
                     'getParentItem',
@@ -88,7 +88,7 @@ class StockItemTest extends \PHPUnit_Framework_TestCase
             )
             ->disableOriginalConstructor()
             ->getMock();
-        $parentItem = $this->getMockBuilder('Magento\Sales\Model\Quote\Item')
+        $parentItem = $this->getMockBuilder('Magento\Quote\Model\Quote\Item')
             ->setMethods(['getQty', 'setIsQtyDecimal', 'getProduct', '__wakeup'])
             ->disableOriginalConstructor()
             ->getMock();
@@ -196,7 +196,7 @@ class StockItemTest extends \PHPUnit_Framework_TestCase
         $storeMock->expects($this->any())
             ->method('getWebsiteId')
             ->willReturn($websiteId);
-        $quoteItem = $this->getMockBuilder('Magento\Sales\Model\Quote\Item')
+        $quoteItem = $this->getMockBuilder('Magento\Quote\Model\Quote\Item')
             ->setMethods(['getProduct', 'getParentItem', 'getQtyToAdd', 'getId', 'getQuoteId', '__wakeup'])
             ->disableOriginalConstructor()
             ->getMock();
diff --git a/dev/tests/unit/testsuite/Magento/CatalogInventory/Model/Spi/StockRegistryProviderTest.php b/dev/tests/unit/testsuite/Magento/CatalogInventory/Model/Spi/StockRegistryProviderTest.php
index d8ed93ae763d33abf20de459a8894aecf950fabb..e6b3676c654765855eb011bffc39014dc4b98a93 100644
--- a/dev/tests/unit/testsuite/Magento/CatalogInventory/Model/Spi/StockRegistryProviderTest.php
+++ b/dev/tests/unit/testsuite/Magento/CatalogInventory/Model/Spi/StockRegistryProviderTest.php
@@ -102,6 +102,9 @@ class StockRegistryProviderTest extends \PHPUnit_Framework_TestCase
     protected $productSku = 'simple';
     protected $websiteId = 111;
 
+    /**
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
+     */
     protected function setUp()
     {
         $this->objectManagerHelper = new ObjectManagerHelper($this);
diff --git a/dev/tests/unit/testsuite/Magento/CatalogRule/Model/CronTest.php b/dev/tests/unit/testsuite/Magento/CatalogRule/Model/CronTest.php
index 60006335bf3e89dc2fa7d195c5ce910efe984ff6..03f996e09940ca502279302190f3c7da3125f7cc 100644
--- a/dev/tests/unit/testsuite/Magento/CatalogRule/Model/CronTest.php
+++ b/dev/tests/unit/testsuite/Magento/CatalogRule/Model/CronTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\CatalogRule\Model;
 
 use Magento\TestFramework\Helper\ObjectManager;
diff --git a/dev/tests/unit/testsuite/Magento/CatalogRule/Plugin/Indexer/CategoryTest.php b/dev/tests/unit/testsuite/Magento/CatalogRule/Plugin/Indexer/CategoryTest.php
index 9a2c294a8e47ef32eff44e22c75303b6627335c5..0a8fa28cf0e7e823c0934f5268c63fbc3b214173 100644
--- a/dev/tests/unit/testsuite/Magento/CatalogRule/Plugin/Indexer/CategoryTest.php
+++ b/dev/tests/unit/testsuite/Magento/CatalogRule/Plugin/Indexer/CategoryTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\CatalogRule\Plugin\Indexer;
 
 use Magento\TestFramework\Helper\ObjectManager;
diff --git a/dev/tests/unit/testsuite/Magento/CatalogRule/Plugin/Indexer/CustomerGroupTest.php b/dev/tests/unit/testsuite/Magento/CatalogRule/Plugin/Indexer/CustomerGroupTest.php
index 46604676dcdf076b98b25085dc8a00f56212ac8a..bf6ac53ee909ac047bfcd28668d9c8719cdaa6e6 100644
--- a/dev/tests/unit/testsuite/Magento/CatalogRule/Plugin/Indexer/CustomerGroupTest.php
+++ b/dev/tests/unit/testsuite/Magento/CatalogRule/Plugin/Indexer/CustomerGroupTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\CatalogRule\Plugin\Indexer;
 
 use Magento\TestFramework\Helper\ObjectManager;
diff --git a/dev/tests/unit/testsuite/Magento/CatalogRule/Plugin/Indexer/ImportExportTest.php b/dev/tests/unit/testsuite/Magento/CatalogRule/Plugin/Indexer/ImportExportTest.php
index 37b5f00dd658cddc089568874bb04f23bc6f2a09..304707fb2204dfd2d3f6a95af188291e71d0524a 100644
--- a/dev/tests/unit/testsuite/Magento/CatalogRule/Plugin/Indexer/ImportExportTest.php
+++ b/dev/tests/unit/testsuite/Magento/CatalogRule/Plugin/Indexer/ImportExportTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\CatalogRule\Plugin\Indexer;
 
 use Magento\TestFramework\Helper\ObjectManager;
diff --git a/dev/tests/unit/testsuite/Magento/CatalogRule/Plugin/Indexer/WebsiteTest.php b/dev/tests/unit/testsuite/Magento/CatalogRule/Plugin/Indexer/WebsiteTest.php
index 8a1609efa93fa666a69a0f822619e6ffb59884dc..c5645a8599abc0e9eb8de7dee5994961f91399ee 100644
--- a/dev/tests/unit/testsuite/Magento/CatalogRule/Plugin/Indexer/WebsiteTest.php
+++ b/dev/tests/unit/testsuite/Magento/CatalogRule/Plugin/Indexer/WebsiteTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\CatalogRule\Plugin\Indexer;
 
 use Magento\TestFramework\Helper\ObjectManager;
diff --git a/dev/tests/unit/testsuite/Magento/CatalogSearch/Model/Adapter/Mysql/Filter/PreprocessorTest.php b/dev/tests/unit/testsuite/Magento/CatalogSearch/Model/Adapter/Mysql/Filter/PreprocessorTest.php
index 870a89f5cec29fbc7affdcb12895378c43f278d1..656d52726e05c40c39f9c989afb93fdecf4b3e62 100644
--- a/dev/tests/unit/testsuite/Magento/CatalogSearch/Model/Adapter/Mysql/Filter/PreprocessorTest.php
+++ b/dev/tests/unit/testsuite/Magento/CatalogSearch/Model/Adapter/Mysql/Filter/PreprocessorTest.php
@@ -10,6 +10,9 @@ use Magento\Framework\DB\Select;
 use Magento\TestFramework\Helper\ObjectManager as ObjectManagerHelper;
 use PHPUnit_Framework_MockObject_MockObject as MockObject;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class PreprocessorTest extends \PHPUnit_Framework_TestCase
 {
     /**
diff --git a/dev/tests/unit/testsuite/Magento/CatalogSearch/Model/Layer/Filter/AttributeTest.php b/dev/tests/unit/testsuite/Magento/CatalogSearch/Model/Layer/Filter/AttributeTest.php
index a07a8f57944171f130c634c5bc89a9c6d9635782..32ee450a8f41c247e4efac52822f14b11bd523cd 100644
--- a/dev/tests/unit/testsuite/Magento/CatalogSearch/Model/Layer/Filter/AttributeTest.php
+++ b/dev/tests/unit/testsuite/Magento/CatalogSearch/Model/Layer/Filter/AttributeTest.php
@@ -9,6 +9,9 @@ namespace Magento\CatalogSearch\Model\Layer\Filter;
 use Magento\TestFramework\Helper\ObjectManager as ObjectManagerHelper;
 use PHPUnit_Framework_MockObject_MockObject as MockObject;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class AttributeTest extends \PHPUnit_Framework_TestCase
 {
     /**
@@ -230,6 +233,9 @@ class AttributeTest extends \PHPUnit_Framework_TestCase
         $this->assertEquals($expectedFilterItems, $result);
     }
 
+    /**
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
+     */
     public function testGetItemsWithoutApply()
     {
         $attributeCode = 'attributeCode';
diff --git a/dev/tests/unit/testsuite/Magento/CatalogSearch/Model/Layer/Filter/CategoryTest.php b/dev/tests/unit/testsuite/Magento/CatalogSearch/Model/Layer/Filter/CategoryTest.php
index bf6f97d3ba0d5946eb32dbdc7c9ba1d27a350bf0..eec5ad1b215e3e312d31578bf3a31eea6099b84f 100644
--- a/dev/tests/unit/testsuite/Magento/CatalogSearch/Model/Layer/Filter/CategoryTest.php
+++ b/dev/tests/unit/testsuite/Magento/CatalogSearch/Model/Layer/Filter/CategoryTest.php
@@ -227,6 +227,9 @@ class CategoryTest extends \PHPUnit_Framework_TestCase
         $this->target->apply($this->request);
     }
 
+    /**
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
+     */
     public function testGetItems()
     {
         $this->category->expects($this->any())
diff --git a/dev/tests/unit/testsuite/Magento/CatalogSearch/Model/Layer/Filter/PriceTest.php b/dev/tests/unit/testsuite/Magento/CatalogSearch/Model/Layer/Filter/PriceTest.php
index a3e127c566488fa300031248b8d47d4bd591924f..8b831e591e0f5658f53dce04611c4735b69bf17c 100644
--- a/dev/tests/unit/testsuite/Magento/CatalogSearch/Model/Layer/Filter/PriceTest.php
+++ b/dev/tests/unit/testsuite/Magento/CatalogSearch/Model/Layer/Filter/PriceTest.php
@@ -11,6 +11,7 @@ use PHPUnit_Framework_MockObject_MockObject as MockObject;
 
 /**
  * Test for \Magento\CatalogSearch\Model\Layer\Filter\Price
+ * @SuppressWarnings(PHPMD.UnusedPrivateField)
  */
 class PriceTest extends \PHPUnit_Framework_TestCase
 {
diff --git a/dev/tests/unit/testsuite/Magento/CatalogWidget/Block/Product/ProductsListTest.php b/dev/tests/unit/testsuite/Magento/CatalogWidget/Block/Product/ProductsListTest.php
index 2984882436fa62301995afc2a538ee7453faee52..2a2886db769f865ebc6bbd98ad2b25684beece55 100644
--- a/dev/tests/unit/testsuite/Magento/CatalogWidget/Block/Product/ProductsListTest.php
+++ b/dev/tests/unit/testsuite/Magento/CatalogWidget/Block/Product/ProductsListTest.php
@@ -11,6 +11,7 @@ use Magento\Catalog\Model\Product\Visibility;
 
 /**
  * Class ProductsListTest
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class ProductsListTest extends \PHPUnit_Framework_TestCase
 {
diff --git a/dev/tests/unit/testsuite/Magento/Checkout/Block/Cart/Item/RendererTest.php b/dev/tests/unit/testsuite/Magento/Checkout/Block/Cart/Item/RendererTest.php
index 2bf712e729a16413d1926a844975d6240e00e46d..ecd5d2668bd3135953413d9feba5a5cef94f266f 100644
--- a/dev/tests/unit/testsuite/Magento/Checkout/Block/Cart/Item/RendererTest.php
+++ b/dev/tests/unit/testsuite/Magento/Checkout/Block/Cart/Item/RendererTest.php
@@ -87,8 +87,8 @@ class RendererTest extends \PHPUnit_Framework_TestCase
         );
         $product->expects($this->any())->method('getName')->will($this->returnValue('Parent Product'));
 
-        /** @var \Magento\Sales\Model\Quote\Item|\PHPUnit_Framework_MockObject_MockObject $item */
-        $item = $this->getMock('Magento\Sales\Model\Quote\Item', [], [], '', false);
+        /** @var \Magento\Quote\Model\Quote\Item|\PHPUnit_Framework_MockObject_MockObject $item */
+        $item = $this->getMock('Magento\Quote\Model\Quote\Item', [], [], '', false);
         $item->expects($this->any())->method('getProduct')->will($this->returnValue($product));
 
         $this->_renderer->setItem($item);
diff --git a/dev/tests/unit/testsuite/Magento/Checkout/Block/Cart/ShippingTest.php b/dev/tests/unit/testsuite/Magento/Checkout/Block/Cart/ShippingTest.php
index 8077066614b4236c2146c99851ee76b7d127c156..b52e186023c5af6982cc8aea4b375cfe6d5f8060 100644
--- a/dev/tests/unit/testsuite/Magento/Checkout/Block/Cart/ShippingTest.php
+++ b/dev/tests/unit/testsuite/Magento/Checkout/Block/Cart/ShippingTest.php
@@ -19,7 +19,7 @@ class ShippingTest extends \PHPUnit_Framework_TestCase
 
     public function testGetShippingPriceHtml()
     {
-        $shippingRateMock = $this->getMockBuilder('\Magento\Sales\Model\Quote\Address\Rate')
+        $shippingRateMock = $this->getMockBuilder('\Magento\Quote\Model\Quote\Address\Rate')
             ->disableOriginalConstructor()
             ->getMock();
 
diff --git a/dev/tests/unit/testsuite/Magento/Checkout/Block/Cart/Sidebar/TotalsTest.php b/dev/tests/unit/testsuite/Magento/Checkout/Block/Cart/Sidebar/TotalsTest.php
index 5e6647a52b56557c4cb7a403b920d82474c16753..7b90f4076dd7f239ce4f15a25d7f1d73913abe50 100644
--- a/dev/tests/unit/testsuite/Magento/Checkout/Block/Cart/Sidebar/TotalsTest.php
+++ b/dev/tests/unit/testsuite/Magento/Checkout/Block/Cart/Sidebar/TotalsTest.php
@@ -17,7 +17,7 @@ class TotalsTest extends \PHPUnit_Framework_TestCase
     protected $totalsObj;
 
     /**
-     * @var \Magento\Sales\Model\Quote|\PHPUnit_Framework_MockObject_MockObject
+     * @var \Magento\Quote\Model\Quote|\PHPUnit_Framework_MockObject_MockObject
      */
     protected $quote;
 
@@ -26,7 +26,7 @@ class TotalsTest extends \PHPUnit_Framework_TestCase
         parent::setUp();
         $objectManager = new \Magento\TestFramework\Helper\ObjectManager($this);
 
-        $this->quote = $this->getMockBuilder('Magento\Sales\Model\Quote')
+        $this->quote = $this->getMockBuilder('Magento\Quote\Model\Quote')
             ->disableOriginalConstructor()
             ->setMethods(['getTotals', '__wakeup'])
             ->getMock();
diff --git a/dev/tests/unit/testsuite/Magento/Checkout/Block/Cart/SidebarTest.php b/dev/tests/unit/testsuite/Magento/Checkout/Block/Cart/SidebarTest.php
index 6efae0542a735ae6fc3b76c00c9218ae75c2647f..0363496c054b725f73e25af8d55001bd06d8608f 100644
--- a/dev/tests/unit/testsuite/Magento/Checkout/Block/Cart/SidebarTest.php
+++ b/dev/tests/unit/testsuite/Magento/Checkout/Block/Cart/SidebarTest.php
@@ -100,12 +100,12 @@ class SidebarTest extends \PHPUnit_Framework_TestCase
             ->method('getIdentities')
             ->will($this->returnValue($identities));
 
-        /** @var \Magento\Sales\Model\Quote\Item|\PHPUnit_Framework_MockObject_MockObject $item */
-        $item = $this->getMock('Magento\Sales\Model\Quote\Item', [], [], '', false);
+        /** @var \Magento\Quote\Model\Quote\Item|\PHPUnit_Framework_MockObject_MockObject $item */
+        $item = $this->getMock('Magento\Quote\Model\Quote\Item', [], [], '', false);
         $item->expects($this->once())->method('getProduct')->will($this->returnValue($product));
 
-        /** @var \Magento\Sales\Model\Quote|\PHPUnit_Framework_MockObject_MockObject $quote */
-        $quote = $this->getMock('Magento\Sales\Model\Quote', [], [], '', false);
+        /** @var \Magento\Quote\Model\Quote|\PHPUnit_Framework_MockObject_MockObject $quote */
+        $quote = $this->getMock('Magento\Quote\Model\Quote', [], [], '', false);
         $quote->expects($this->once())->method('getAllVisibleItems')->will($this->returnValue([$item]));
 
         $block->setData('custom_quote', $quote);
diff --git a/dev/tests/unit/testsuite/Magento/Checkout/Block/Item/Price/RendererTest.php b/dev/tests/unit/testsuite/Magento/Checkout/Block/Item/Price/RendererTest.php
index 257fc6a38446a9922b161ff6344eee0c96e4524e..662ca2a097cbbbef90f796448917f3ebc362a08d 100644
--- a/dev/tests/unit/testsuite/Magento/Checkout/Block/Item/Price/RendererTest.php
+++ b/dev/tests/unit/testsuite/Magento/Checkout/Block/Item/Price/RendererTest.php
@@ -24,7 +24,7 @@ class RendererTest extends \PHPUnit_Framework_TestCase
 
     public function testSetItem()
     {
-        $item = $this->getMockBuilder('Magento\Sales\Model\Quote\Item\AbstractItem')
+        $item = $this->getMockBuilder('Magento\Quote\Model\Quote\Item\AbstractItem')
             ->disableOriginalConstructor()
             ->getMock();
 
diff --git a/dev/tests/unit/testsuite/Magento/Checkout/Block/Onepage/AbstractOnepageTest.php b/dev/tests/unit/testsuite/Magento/Checkout/Block/Onepage/AbstractOnepageTest.php
index a9dc956f85609fded75cee6af294b639dcaa8613..b5e582281cafdfdfcfa7bf9bf9590724978dc1ce 100644
--- a/dev/tests/unit/testsuite/Magento/Checkout/Block/Onepage/AbstractOnepageTest.php
+++ b/dev/tests/unit/testsuite/Magento/Checkout/Block/Onepage/AbstractOnepageTest.php
@@ -19,7 +19,7 @@ class AbstractOnepageTest extends \PHPUnit_Framework_TestCase
 
     public function testGetShippingPriceHtml()
     {
-        $shippingRateMock = $this->getMockBuilder('\Magento\Sales\Model\Quote\Address\Rate')
+        $shippingRateMock = $this->getMockBuilder('\Magento\Quote\Model\Quote\Address\Rate')
             ->disableOriginalConstructor()
             ->getMock();
 
diff --git a/dev/tests/unit/testsuite/Magento/Checkout/Block/Onepage/ProgressTest.php b/dev/tests/unit/testsuite/Magento/Checkout/Block/Onepage/ProgressTest.php
index 44537e2b25dac1c3c6d07f3ae629edcb9b51c860..a21b02889d096d7a3c5ed8337858f2fa280e3605 100644
--- a/dev/tests/unit/testsuite/Magento/Checkout/Block/Onepage/ProgressTest.php
+++ b/dev/tests/unit/testsuite/Magento/Checkout/Block/Onepage/ProgressTest.php
@@ -51,7 +51,7 @@ class ProgressTest extends \PHPUnit_Framework_TestCase
     protected $taxHelper;
 
     /**
-     * @var \Magento\Sales\Model\Quote\Address|\PHPUnit_Framework_MockObject_MockObject
+     * @var \Magento\Quote\Model\Quote\Address|\PHPUnit_Framework_MockObject_MockObject
      */
     protected $shippingAddress;
 
@@ -66,14 +66,14 @@ class ProgressTest extends \PHPUnit_Framework_TestCase
             ['resourceSession' => $this->checkoutSession, 'taxData' => $this->taxHelper]
         );
         $this->shippingAddress = $this->getMock(
-            'Magento\Sales\Model\Quote\Address',
+            'Magento\Quote\Model\Quote\Address',
             ['getShippingRateByCode', '__wakeup'],
             [],
             '',
             false
         );
         $this->store = $this->getMock('Magento\Store\Model\Store', [], [], '', false);
-        $quote = $this->getMock('Magento\Sales\Model\Quote', [], [], '', false);
+        $quote = $this->getMock('Magento\Quote\Model\Quote', [], [], '', false);
         $quote->expects($this->any())->method('getShippingAddress')->will($this->returnValue($this->shippingAddress));
         $quote->expects($this->any())->method('getStore')->will($this->returnValue($this->store));
         $this->checkoutSession->expects($this->any())->method('getQuote')->will($this->returnValue($quote));
@@ -84,7 +84,7 @@ class ProgressTest extends \PHPUnit_Framework_TestCase
      */
     public function testGetShippingRate()
     {
-        $rate = $this->getMock('Magento\Sales\Model\Quote\Address\Rate', ['__wakeup'], [], '', false);
+        $rate = $this->getMock('Magento\Quote\Model\Quote\Address\Rate', ['__wakeup'], [], '', false);
         $this->shippingAddress->setShippingMethod(self::SHIPPING_METHOD);
         $this->shippingAddress->expects($this->once())
             ->method('getShippingRateByCode')
diff --git a/dev/tests/unit/testsuite/Magento/Checkout/Block/Shipping/PriceTest.php b/dev/tests/unit/testsuite/Magento/Checkout/Block/Shipping/PriceTest.php
index af9b2828490f471092576c09e8b6f4d736dd9ddf..efc70eac5f69f233ab7694d7a39368f97a8e6f88 100644
--- a/dev/tests/unit/testsuite/Magento/Checkout/Block/Shipping/PriceTest.php
+++ b/dev/tests/unit/testsuite/Magento/Checkout/Block/Shipping/PriceTest.php
@@ -16,7 +16,7 @@ class PriceTest extends \PHPUnit_Framework_TestCase
     protected $priceObj;
 
     /**
-     * @var \Magento\Sales\Model\Quote|\PHPUnit_Framework_MockObject_MockObject
+     * @var \Magento\Quote\Model\Quote|\PHPUnit_Framework_MockObject_MockObject
      */
     protected $quote;
 
@@ -47,7 +47,7 @@ class PriceTest extends \PHPUnit_Framework_TestCase
         $shippingPrice = 5;
         $convertedPrice = "$5";
 
-        $shippingRateMock = $this->getMockBuilder('\Magento\Sales\Model\Quote\Address\Rate')
+        $shippingRateMock = $this->getMockBuilder('\Magento\Quote\Model\Quote\Address\Rate')
             ->disableOriginalConstructor()
             ->setMethods(['getPrice', '__wakeup'])
             ->getMock();
diff --git a/dev/tests/unit/testsuite/Magento/Checkout/Controller/Cart/ConfigureTest.php b/dev/tests/unit/testsuite/Magento/Checkout/Controller/Cart/ConfigureTest.php
new file mode 100644
index 0000000000000000000000000000000000000000..716661bd022b1c8f81e0fa397bb1bf4f48ae5232
--- /dev/null
+++ b/dev/tests/unit/testsuite/Magento/Checkout/Controller/Cart/ConfigureTest.php
@@ -0,0 +1,250 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+namespace Magento\Checkout\Controller\Cart;
+
+/**
+ * Shopping cart edit tests
+ */
+class ConfigureTest extends \PHPUnit_Framework_TestCase
+{
+
+    /**
+     * @var \Magento\Framework\ObjectManagerInterface | \PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $objectManagerMock;
+
+    /**
+     * @var \Magento\Framework\View\Result\PageFactory | \PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $resultPageFactoryMock;
+
+    /**
+     * @var \Magento\Framework\App\ResponseInterface | \PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $responseMock;
+
+    /**
+     * @var \Magento\Framework\App\RequestInterface | \PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $requestMock;
+
+    /**
+     * @var \Magento\Framework\Message\ManagerInterface | \PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $messageManagerMock;
+
+    /**
+     * @var \Magento\Framework\App\Response\RedirectInterface | \PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $redirectMock;
+
+    /**
+     * @var \Magento\Checkout\Controller\Cart\Configure | \PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $configureController;
+
+    /**
+     * @var \Magento\Framework\App\Action\Context | \PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $contextMock;
+
+    /**
+     * @var \Magento\Checkout\Model\Cart | \PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $cartMock;
+
+    public function setUp()
+    {
+        $eventManagerMock = $this->getMockBuilder('Magento\Framework\Event\ManagerInterface')
+            ->disableOriginalConstructor()
+            ->setMethods([])
+            ->getMockForAbstractClass();
+        $urlMock = $this->getMockBuilder('Magento\Framework\UrlInterface')
+            ->disableOriginalConstructor()
+            ->setMethods([])
+            ->getMockForAbstractClass();
+        $actionFlagMock = $this->getMockBuilder('Magento\Framework\App\ActionFlag')
+            ->disableOriginalConstructor()
+            ->setMethods([])
+            ->getMockForAbstractClass();
+        $viewMock = $this->getMockBuilder('Magento\Framework\App\ViewInterface')
+            ->disableOriginalConstructor()
+            ->setMethods([])
+            ->getMockForAbstractClass();
+        $this->objectManagerMock = $this->getMockBuilder('Magento\Framework\ObjectManagerInterface')
+            ->disableOriginalConstructor()
+            ->setMethods([])
+            ->getMockForAbstractClass();
+        $this->responseMock = $this->getMockBuilder('Magento\Framework\App\ResponseInterface')
+            ->disableOriginalConstructor()
+            ->setMethods([])
+            ->getMockForAbstractClass();
+        $this->requestMock = $this->getMockBuilder('Magento\Framework\App\RequestInterface')
+            ->disableOriginalConstructor()
+            ->setMethods(['getParam'])
+            ->getMockForAbstractClass();
+        $this->messageManagerMock = $this->getMockBuilder('Magento\Framework\Message\ManagerInterface')
+            ->disableOriginalConstructor()
+            ->setMethods([])
+            ->getMockForAbstractClass();
+        $this->redirectMock = $this->getMockBuilder('Magento\Framework\App\Response\RedirectInterface')
+            ->disableOriginalConstructor()
+            ->setMethods([])
+            ->getMock();
+
+        $this->contextMock = $this->getMockBuilder('Magento\Framework\App\Action\Context')
+            ->setConstructorArgs(
+                [
+                    $this->requestMock,
+                    $this->responseMock,
+                    $this->objectManagerMock,
+                    $eventManagerMock,
+                    $urlMock,
+                    $this->redirectMock,
+                    $actionFlagMock,
+                    $viewMock,
+                    $this->messageManagerMock
+                ]
+            )
+            ->setMethods([])
+            ->getMock();
+        $this->contextMock->expects($this->any())->method('getObjectManager')->willReturn($this->objectManagerMock);
+        $this->contextMock->expects($this->any())->method('getRequest')->willReturn($this->requestMock);
+        $this->contextMock->expects($this->any())->method('getResponse')->willReturn($this->responseMock);
+        $this->contextMock->expects($this->any())->method('getMessageManager')->willReturn($this->messageManagerMock);
+        $this->contextMock->expects($this->any())->method('getRedirect')->willReturn($this->redirectMock);
+        $scopeConfig = $this->getMockBuilder('Magento\Framework\App\Config\ScopeConfigInterface')
+            ->disableOriginalConstructor()
+            ->getMock();
+        $session = $this->getMockBuilder('Magento\Checkout\Model\Session')
+            ->disableOriginalConstructor()
+            ->getMock();
+        $storeManager = $this->getMockBuilder('Magento\Store\Model\StoreManagerInterface')
+            ->disableOriginalConstructor()
+            ->getMockForAbstractClass();
+        $formKeyValidator = $this->getMockBuilder('Magento\Core\App\Action\FormKeyValidator')
+            ->disableOriginalConstructor()
+            ->getMockForAbstractClass();
+        $this->cartMock = $this->getMockBuilder('Magento\Checkout\Model\Cart')
+            ->disableOriginalConstructor()
+            ->getMock();
+        $this->resultPageFactoryMock = $this->getMockBuilder('Magento\Framework\View\Result\PageFactory')
+            ->disableOriginalConstructor()
+            ->getMock();
+
+        $this->configureController = new \Magento\Checkout\Controller\Cart\Configure(
+            $this->contextMock,
+            $scopeConfig,
+            $session,
+            $storeManager,
+            $formKeyValidator,
+            $this->cartMock,
+            $this->resultPageFactoryMock
+        );
+    }
+
+    /**
+     * Test checks controller call product view and send parameter to it
+     *
+     * @return void
+     */
+    public function testPrepareAndRenderCall()
+    {
+        $quoteId = 1;
+        $actualProductId = 1;
+        $quoteMock = $this->getMockBuilder('Magento\Quote\Model\Quote')
+            ->disableOriginalConstructor()
+            ->getMock();
+        $quoteItemMock = $this->getMockBuilder('Magento\Quote\Model\Quote\Item')
+            ->disableOriginalConstructor()
+            ->getMock();
+        $productMock = $this->getMockBuilder('Magento\Catalog\Model\Product')
+            ->disableOriginalConstructor()
+            ->getMock();
+        $viewMock = $this->getMockBuilder('Magento\Catalog\Helper\Product\View')
+            ->disableOriginalConstructor()
+            ->getMock();
+        $pageMock = $this->getMockBuilder('Magento\Framework\View\Result\Page')
+            ->disableOriginalConstructor()
+            ->getMock();
+        $buyRequestMock = $this->getMockBuilder('Magento\Framework\Object')
+            ->disableOriginalConstructor()
+            ->getMock();
+        //expects
+        $this->requestMock->expects($this->at(0))
+            ->method('getParam')
+            ->with('id')
+            ->willReturn($quoteId);
+        $this->requestMock->expects($this->at(1))
+            ->method('getParam')
+            ->with('product_id')
+            ->willReturn($actualProductId);
+        $this->cartMock->expects($this->any())->method('getQuote')->willReturn($quoteMock);
+
+        $quoteItemMock->expects($this->exactly(1))->method('getBuyRequest')->willReturn($buyRequestMock);
+
+        $this->resultPageFactoryMock->expects($this->once())->method('create')->willReturn($pageMock);
+        $this->objectManagerMock->expects($this->at(0))
+            ->method('get')
+            ->with('Magento\Catalog\Helper\Product\View')
+            ->willReturn($viewMock);
+
+        $viewMock->expects($this->once())->method('prepareAndRender')->with(
+            $pageMock,
+            $actualProductId,
+            $this->configureController,
+            $this->callback(
+                function ($subject) use ($buyRequestMock) {
+                    return $subject->getBuyRequest() === $buyRequestMock;
+                }
+            )
+        )->willReturn($pageMock);
+
+        $quoteMock->expects($this->once())->method('getItemById')->willReturn($quoteItemMock);
+        $quoteItemMock->expects($this->exactly(2))->method('getProduct')->willReturn($productMock);
+
+        $productMock->expects($this->exactly(2))->method('getId')->willReturn($actualProductId);
+
+        $this->assertSame($pageMock, $this->configureController->execute());
+    }
+
+    /**
+     * Test checks controller redirect user to cart
+     * if user request product id in cart edit page is not same as quota product id
+     *
+     * @return void
+     */
+    public function testRedirectWithWrongProductId()
+    {
+        $quotaId = 1;
+        $productIdInQuota = 1;
+        $productIdInRequest = null;
+        $quoteItemMock = $this->getMockBuilder('Magento\Quote\Model\Quote\Item')
+            ->disableOriginalConstructor()
+            ->getMock();
+        $quoteMock = $this->getMockBuilder('Magento\Quote\Model\Quote')
+            ->disableOriginalConstructor()
+            ->getMock();
+        $productMock = $this->getMockBuilder('Magento\Catalog\Model\Product')
+            ->disableOriginalConstructor()
+            ->getMock();
+        $this->requestMock->expects($this->at(0))
+            ->method('getParam')
+            ->with('id')
+            ->willReturn($quotaId);
+        $this->requestMock->expects($this->at(1))
+            ->method('getParam')
+            ->with('product_id')
+            ->willReturn($productIdInRequest);
+        $this->cartMock->expects($this->any())->method('getQuote')->willReturn($quoteMock);
+        $quoteMock->expects($this->once())->method('getItemById')->willReturn($quoteItemMock);
+        $quoteItemMock->expects($this->exactly(1))->method('getProduct')->willReturn($productMock);
+        $productMock->expects($this->exactly(1))->method('getId')->willReturn($productIdInQuota);
+        $this->messageManagerMock->expects($this->once())->method('addError');
+        $this->redirectMock->expects($this->once())->method('redirect')->with($this->responseMock, 'checkout/cart', []);
+        $this->configureController->execute();
+    }
+}
diff --git a/dev/tests/unit/testsuite/Magento/Checkout/Controller/Onepage/IndexTest.php b/dev/tests/unit/testsuite/Magento/Checkout/Controller/Onepage/IndexTest.php
index 13c4b8d73cb3e7c9fc07e6337c4036336828bb1e..1fd79006a5b2246281f0eead91c956d616fd6b5a 100644
--- a/dev/tests/unit/testsuite/Magento/Checkout/Controller/Onepage/IndexTest.php
+++ b/dev/tests/unit/testsuite/Magento/Checkout/Controller/Onepage/IndexTest.php
@@ -10,6 +10,9 @@ namespace Magento\Checkout\Controller\Onepage;
 
 use Magento\TestFramework\Helper\ObjectManager as ObjectManager;
 
+/**
+ * @SuppressWarnings(PHPMD.TooManyFields)
+ */
 class IndexTest extends \PHPUnit_Framework_TestCase
 {
     /**
@@ -98,7 +101,7 @@ class IndexTest extends \PHPUnit_Framework_TestCase
         $this->objectManager = new ObjectManager($this);
         $this->objectManagerMock = $this->basicMock('\Magento\Framework\ObjectManagerInterface');
         $this->dataMock = $this->basicMock('Magento\Checkout\Helper\Data');
-        $this->quoteMock = $this->basicMock('\Magento\Sales\Model\Quote');
+        $this->quoteMock = $this->basicMock('\Magento\Quote\Model\Quote');
         $this->contextMock = $this->basicMock('\Magento\Framework\App\Action\Context');
         $this->sessionMock = $this->basicMock('\Magento\Customer\Model\Session');
         $this->onepageMock = $this->basicMock('\Magento\Checkout\Model\Type\Onepage');
diff --git a/dev/tests/unit/testsuite/Magento/Checkout/Controller/Onepage/SaveBillingTest.php b/dev/tests/unit/testsuite/Magento/Checkout/Controller/Onepage/SaveBillingTest.php
index 41a0efc3c1aa2b974cb80fe26cfa44df722ada9a..f94a6f7a7165928a593dee7774344b23c26c0921 100644
--- a/dev/tests/unit/testsuite/Magento/Checkout/Controller/Onepage/SaveBillingTest.php
+++ b/dev/tests/unit/testsuite/Magento/Checkout/Controller/Onepage/SaveBillingTest.php
@@ -38,7 +38,7 @@ class SaveBillingTest extends \PHPUnit_Framework_TestCase
     protected $response;
 
     /**
-     * @var \Magento\Sales\Model\Quote | \PHPUnit_Framework_MockObject_MockObject
+     * @var \Magento\Quote\Model\Quote | \PHPUnit_Framework_MockObject_MockObject
      */
     protected $quote;
 
@@ -87,7 +87,7 @@ class SaveBillingTest extends \PHPUnit_Framework_TestCase
         $this->response = $this->getMock('Magento\Framework\App\Response\Http', [], [], '', false);
         $this->view = $this->getMock('Magento\Framework\App\View', [], [], '', false);
         $this->quote = $this->getMock(
-            'Magento\Sales\Model\Quote',
+            'Magento\Quote\Model\Quote',
             ['__wakeup', 'getHasError', 'hasItems', 'validateMinimumAmount', 'isVirtual', 'getStoreId'],
             [],
             '',
diff --git a/dev/tests/unit/testsuite/Magento/Checkout/Controller/Onepage/SaveShippingTest.php b/dev/tests/unit/testsuite/Magento/Checkout/Controller/Onepage/SaveShippingTest.php
index ae1fcda598d788c84fd0d849c59b62c5a0153378..a7f0903aee63dfbfff00aef50de9838781a5108d 100644
--- a/dev/tests/unit/testsuite/Magento/Checkout/Controller/Onepage/SaveShippingTest.php
+++ b/dev/tests/unit/testsuite/Magento/Checkout/Controller/Onepage/SaveShippingTest.php
@@ -38,7 +38,7 @@ class SaveShippingTest extends \PHPUnit_Framework_TestCase
     protected $response;
 
     /**
-     * @var \Magento\Sales\Model\Quote | \PHPUnit_Framework_MockObject_MockObject
+     * @var \Magento\Quote\Model\Quote | \PHPUnit_Framework_MockObject_MockObject
      */
     protected $quote;
 
@@ -87,7 +87,7 @@ class SaveShippingTest extends \PHPUnit_Framework_TestCase
         $this->response = $this->getMock('Magento\Framework\App\Response\Http', [], [], '', false);
         $this->view = $this->getMock('Magento\Framework\App\View', [], [], '', false);
         $this->quote = $this->getMock(
-            'Magento\Sales\Model\Quote',
+            'Magento\Quote\Model\Quote',
             ['__wakeup', 'getHasError', 'hasItems', 'validateMinimumAmount', 'isVirtual', 'getStoreId'],
             [],
             '',
diff --git a/dev/tests/unit/testsuite/Magento/Checkout/Controller/OnepageTest.php b/dev/tests/unit/testsuite/Magento/Checkout/Controller/OnepageTest.php
index 44f0585af14802cac3967c7fc0f3d3b29c155c0b..2177d9754981ac6f8fc3e2ea50058e3c65a54511 100644
--- a/dev/tests/unit/testsuite/Magento/Checkout/Controller/OnepageTest.php
+++ b/dev/tests/unit/testsuite/Magento/Checkout/Controller/OnepageTest.php
@@ -37,7 +37,7 @@ class OnepageTest extends \PHPUnit_Framework_TestCase
     protected $response;
 
     /**
-     * @var \Magento\Sales\Model\Quote | \PHPUnit_Framework_MockObject_MockObject
+     * @var \Magento\Quote\Model\Quote | \PHPUnit_Framework_MockObject_MockObject
      */
     protected $quote;
 
@@ -52,7 +52,7 @@ class OnepageTest extends \PHPUnit_Framework_TestCase
 
         $this->request = $this->getMock('Magento\Framework\App\Request\Http', [], [], '', false);
         $this->response = $this->getMock('Magento\Framework\App\Response\Http', [], [], '', false);
-        $this->quote = $this->getMock('Magento\Sales\Model\Quote', [], [], '', false);
+        $this->quote = $this->getMock('Magento\Quote\Model\Quote', [], [], '', false);
         $this->eventManager = $this->getMock('Magento\Framework\Event\Manager', [], [], '', false);
         $this->customerSession = $this->getMock('Magento\Customer\Model\Session', [], [], '', false);
         $this->checkoutSession = $this->getMock('Magento\Checkout\Model\Session', [], [], '', false);
diff --git a/dev/tests/unit/testsuite/Magento/Checkout/Helper/CartTest.php b/dev/tests/unit/testsuite/Magento/Checkout/Helper/CartTest.php
index 01a2c059426bcb3a1de3115bb88e5e9e91ca7931..c01449d988414ee12b160f2281910f6a9efed3e6 100644
--- a/dev/tests/unit/testsuite/Magento/Checkout/Helper/CartTest.php
+++ b/dev/tests/unit/testsuite/Magento/Checkout/Helper/CartTest.php
@@ -3,11 +3,14 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Checkout\Helper;
 
 use Magento\Framework\App\Action\Action;
 use Magento\Framework\Object;
-use Magento\Sales\Model\Quote\Item;
+use Magento\Quote\Model\Quote\Item;
 
 class CartTest extends \PHPUnit_Framework_TestCase
 {
@@ -100,7 +103,7 @@ class CartTest extends \PHPUnit_Framework_TestCase
     public function testGetRemoveUrl()
     {
         $quoteItemId = 1;
-        $quoteItemMock = $this->getMock('\Magento\Sales\Model\Quote\Item', [], [], '', false);
+        $quoteItemMock = $this->getMock('\Magento\Quote\Model\Quote\Item', [], [], '', false);
         $quoteItemMock->expects($this->any())->method('getId')->will($this->returnValue($quoteItemId));
         $currentUrl = 'http://www.example.com/';
         $this->urlBuilderMock->expects($this->any())->method('getCurrentUrl')->will($this->returnValue($currentUrl));
@@ -120,7 +123,7 @@ class CartTest extends \PHPUnit_Framework_TestCase
 
     public function testGetQuote()
     {
-        $quoteMock = $this->getMock('\Magento\Sales\Model\Quote', [], [], '', false);
+        $quoteMock = $this->getMock('\Magento\Quote\Model\Quote', [], [], '', false);
         $this->checkoutSessionMock->expects($this->once())->method('getQuote')->will($this->returnValue($quoteMock));
         $this->assertEquals($quoteMock, $this->helper->getQuote());
     }
@@ -149,7 +152,7 @@ class CartTest extends \PHPUnit_Framework_TestCase
     public function testGetIsVirtualQuote()
     {
         $isVirtual = true;
-        $quoteMock = $this->getMock('\Magento\Sales\Model\Quote', [], [], '', false);
+        $quoteMock = $this->getMock('\Magento\Quote\Model\Quote', [], [], '', false);
         $this->checkoutSessionMock->expects($this->once())->method('getQuote')->will($this->returnValue($quoteMock));
         $quoteMock->expects($this->any())->method('isVirtual')->will($this->returnValue($isVirtual));
         $this->assertEquals($isVirtual, $this->helper->getIsVirtualQuote());
@@ -201,6 +204,7 @@ class CartTest extends \PHPUnit_Framework_TestCase
      * @param string $expectedPostData
      *
      * @dataProvider deletePostJsonDataProvider
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function testGetDeletePostJson($id, $url, $isAjax, $expectedPostData)
     {
@@ -219,7 +223,7 @@ class CartTest extends \PHPUnit_Framework_TestCase
             ->method('getUrlEncoder')
             ->willReturn($this->urlEncoder);
 
-        $item = $this->getMock('Magento\Sales\Model\Quote\Item', [], [], '', false);
+        $item = $this->getMock('Magento\Quote\Model\Quote\Item', [], [], '', false);
         $request = $this->getMock('\Magento\Framework\App\Request\Http', [], [], '', false);
         $context->expects($this->once())
             ->method('getRequest')
diff --git a/dev/tests/unit/testsuite/Magento/Checkout/Helper/DataTest.php b/dev/tests/unit/testsuite/Magento/Checkout/Helper/DataTest.php
index cd3712bf7042cbf27220274085aedfa7c05a3384..9e88e7178acf602aaff791e8baed99a763aa46c0 100644
--- a/dev/tests/unit/testsuite/Magento/Checkout/Helper/DataTest.php
+++ b/dev/tests/unit/testsuite/Magento/Checkout/Helper/DataTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Checkout\Helper;
 
 use Magento\TestFramework\Helper\ObjectManager;
@@ -281,7 +284,7 @@ class DataTest extends \PHPUnit_Framework_TestCase
 
     public function testGetQuote()
     {
-        $quoteMock = $this->getMock('\Magento\Sales\Model\Quote', [], [], '', false);
+        $quoteMock = $this->getMock('\Magento\Quote\Model\Quote', [], [], '', false);
         $this->_checkoutSession->expects($this->once())->method('getQuote')->will($this->returnValue($quoteMock));
         $this->assertEquals($quoteMock, $this->_helper->getQuote());
     }
@@ -289,7 +292,7 @@ class DataTest extends \PHPUnit_Framework_TestCase
     public function testFormatPrice()
     {
         $price = 5.5;
-        $quoteMock = $this->getMock('\Magento\Sales\Model\Quote', [], [], '', false);
+        $quoteMock = $this->getMock('\Magento\Quote\Model\Quote', [], [], '', false);
         $storeMock = $this->getMock(
             'Magento\Store\Model\Store',
             ['formatPrice', '__wakeup'],
@@ -468,7 +471,7 @@ class DataTest extends \PHPUnit_Framework_TestCase
 
     public function testIsAllowedGuestCheckoutWithoutStore()
     {
-        $quoteMock = $this->getMock('\Magento\Sales\Model\Quote', [], [], '', false);
+        $quoteMock = $this->getMock('\Magento\Quote\Model\Quote', [], [], '', false);
         $store = null;
         $quoteMock->expects($this->once())->method('getStoreId')->will($this->returnValue(1));
         $this->_scopeConfig->expects($this->once())
diff --git a/dev/tests/unit/testsuite/Magento/Checkout/Model/CartTest.php b/dev/tests/unit/testsuite/Magento/Checkout/Model/CartTest.php
index 10a2e0555be58f83c25d78cc6cff82f5a4c23176..60df3067b5e9f5da9a656218fe2e77f65958aa65 100644
--- a/dev/tests/unit/testsuite/Magento/Checkout/Model/CartTest.php
+++ b/dev/tests/unit/testsuite/Magento/Checkout/Model/CartTest.php
@@ -36,7 +36,7 @@ class CartTest extends \PHPUnit_Framework_TestCase
     protected $scopeConfigMock;
 
     /**
-     * @var \Magento\Sales\Model\Quote|\PHPUnit_Framework_MockObject_MockObject
+     * @var \Magento\Quote\Model\Quote|\PHPUnit_Framework_MockObject_MockObject
      */
     protected $quoteMock;
 
@@ -84,7 +84,7 @@ class CartTest extends \PHPUnit_Framework_TestCase
         $this->stockRegistry->expects($this->any())
             ->method('getStockItem')
             ->will($this->returnValue($this->stockItemMock));
-        $this->quoteMock = $this->getMock('Magento\Sales\Model\Quote', [], [], '', false);
+        $this->quoteMock = $this->getMock('Magento\Quote\Model\Quote', [], [], '', false);
         $this->eventManagerMock = $this->getMock('Magento\Framework\Event\ManagerInterface');
 
         $this->objectManagerHelper = new ObjectManagerHelper($this);
@@ -206,7 +206,7 @@ class CartTest extends \PHPUnit_Framework_TestCase
                 return false;
         }
 
-        $quoteItem = $this->getMock('Magento\Sales\Model\Quote\Item', [], [], '', false);
+        $quoteItem = $this->getMock('Magento\Quote\Model\Quote\Item', [], [], '', false);
         $quoteItem->expects($this->once())
             ->method('getProduct')
             ->will($this->returnValue($product));
@@ -222,7 +222,7 @@ class CartTest extends \PHPUnit_Framework_TestCase
         $quoteId = 1;
         $itemsCount = 1;
         $quoteMock = $this->getMock(
-            'Magento\Sales\Model\Quote',
+            'Magento\Quote\Model\Quote',
             ['getItemsCount', 'getItemsQty', '__wakeup'],
             [],
             '',
diff --git a/dev/tests/unit/testsuite/Magento/Checkout/Model/Layout/DepersonalizePluginTest.php b/dev/tests/unit/testsuite/Magento/Checkout/Model/Layout/DepersonalizePluginTest.php
index d01b6aa2d648fdc1143956c3b019333d6967a0b0..b09e0f6a6867208536a7a0b226935a9f86cdb129 100644
--- a/dev/tests/unit/testsuite/Magento/Checkout/Model/Layout/DepersonalizePluginTest.php
+++ b/dev/tests/unit/testsuite/Magento/Checkout/Model/Layout/DepersonalizePluginTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Checkout\Model\Layout;
 
 /**
diff --git a/dev/tests/unit/testsuite/Magento/Checkout/Model/Session/SuccessValidatorTest.php b/dev/tests/unit/testsuite/Magento/Checkout/Model/Session/SuccessValidatorTest.php
index dddf04a83b204f335a995b5e4310a5be0ad6616a..c67c90800a943e33625f6a0904a0afaa761370dd 100644
--- a/dev/tests/unit/testsuite/Magento/Checkout/Model/Session/SuccessValidatorTest.php
+++ b/dev/tests/unit/testsuite/Magento/Checkout/Model/Session/SuccessValidatorTest.php
@@ -9,16 +9,12 @@ use Magento\TestFramework\Helper\ObjectManager as ObjectManagerHelper;
 
 class SuccessValidatorTest extends \PHPUnit_Framework_TestCase
 {
-    /** @var SuccessValidator|\PHPUnit_Framework_MockObject_MockObject */
-    protected $object;
-
     /** @var ObjectManagerHelper */
     protected $objectManagerHelper;
 
     protected function setUp()
     {
         $this->objectManagerHelper = new ObjectManagerHelper($this);
-        $this->object = $this->objectManagerHelper->getObject('Magento\Checkout\Model\Session\SuccessValidator');
     }
 
     public function testIsValid()
@@ -26,7 +22,7 @@ class SuccessValidatorTest extends \PHPUnit_Framework_TestCase
         $checkoutSession = $this->getMockBuilder(
             '\Magento\Checkout\Model\Session'
         )->disableOriginalConstructor()->getMock();
-        $this->assertFalse($this->object->isValid($checkoutSession));
+        $this->assertFalse($this->createSuccessValidator($checkoutSession)->isValid($checkoutSession));
     }
 
     public function testIsValidWithNotEmptyGetLastSuccessQuoteId()
@@ -47,7 +43,7 @@ class SuccessValidatorTest extends \PHPUnit_Framework_TestCase
 
         $checkoutSession->expects($this->at(1))->method('__call')->with('getLastQuoteId')->will($this->returnValue(0));
 
-        $this->assertFalse($this->object->isValid($checkoutSession));
+        $this->assertFalse($this->createSuccessValidator($checkoutSession)->isValid($checkoutSession));
     }
 
     public function testIsValidWithEmptyQuoteAndOrder()
@@ -69,7 +65,7 @@ class SuccessValidatorTest extends \PHPUnit_Framework_TestCase
 
         $checkoutSession->expects($this->at(2))->method('__call')->with('getLastOrderId')->will($this->returnValue(0));
 
-        $this->assertFalse($this->object->isValid($checkoutSession));
+        $this->assertFalse($this->createSuccessValidator($checkoutSession)->isValid($checkoutSession));
     }
 
     public function testIsValidTrue()
@@ -91,6 +87,13 @@ class SuccessValidatorTest extends \PHPUnit_Framework_TestCase
 
         $checkoutSession->expects($this->at(2))->method('__call')->with('getLastOrderId')->will($this->returnValue(1));
 
-        $this->assertTrue($this->object->isValid($checkoutSession));
+        $this->assertTrue($this->createSuccessValidator($checkoutSession)->isValid($checkoutSession));
+    }
+
+    protected function createSuccessValidator(\PHPUnit_Framework_MockObject_MockObject $checkoutSession)
+    {
+        return $this->objectManagerHelper->getObject(
+            'Magento\Checkout\Model\Session\SuccessValidator', ['checkoutSession' => $checkoutSession]
+        );
     }
 }
diff --git a/dev/tests/unit/testsuite/Magento/Checkout/Model/SessionTest.php b/dev/tests/unit/testsuite/Magento/Checkout/Model/SessionTest.php
index 23814a5eb5c94bc0e6ab04074971e8b28f87d665..4151d9b246801171593acec670da372c0d8d9dc1 100644
--- a/dev/tests/unit/testsuite/Magento/Checkout/Model/SessionTest.php
+++ b/dev/tests/unit/testsuite/Magento/Checkout/Model/SessionTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Test class for \Magento\Checkout\Model\Session
  */
@@ -45,7 +47,7 @@ class SessionTest extends \PHPUnit_Framework_TestCase
             'Magento\Framework\Message\CollectionFactory'
         )->disableOriginalConstructor()->getMock();
         $quoteRepository = $this->getMockBuilder(
-            'Magento\Sales\Model\QuoteRepository'
+            'Magento\Quote\Model\QuoteRepository'
         )->disableOriginalConstructor()->getMock();
 
         $appState = $this->getMock('\Magento\Framework\App\State', [], [], '', false);
@@ -157,7 +159,7 @@ class SessionTest extends \PHPUnit_Framework_TestCase
         $orderFactory = $this->getMock('Magento\Sales\Model\OrderFactory', ['create'], [], '', false);
         $orderFactory->expects($this->once())->method('create')->will($this->returnValue($order));
         $quoteRepository = $this->getMock(
-            'Magento\Sales\Model\QuoteRepository',
+            'Magento\Quote\Model\QuoteRepository',
             ['get', 'save'],
             [],
             '',
@@ -189,7 +191,7 @@ class SessionTest extends \PHPUnit_Framework_TestCase
         if ($hasOrderId) {
             $order->setQuoteId($quoteId);
             $quote = $this->getMock(
-                'Magento\Sales\Model\Quote',
+                'Magento\Quote\Model\Quote',
                 ['setIsActive', 'getId', 'setReservedOrderId', '__wakeup'],
                 [],
                 '',
@@ -264,7 +266,7 @@ class SessionTest extends \PHPUnit_Framework_TestCase
 
     public function testHasQuote()
     {
-        $quote = $this->getMockBuilder('Magento\Sales\Model\Quote')
+        $quote = $this->getMockBuilder('Magento\Quote\Model\Quote')
             ->disableOriginalConstructor()
             ->getMock();
         $session = $this->_helper->getObject('Magento\Checkout\Model\Session', ['quote' => $quote]);
@@ -289,7 +291,7 @@ class SessionTest extends \PHPUnit_Framework_TestCase
             ->method('getStore')
             ->will($this->returnValue($store));
 
-        $quote = $this->getMockBuilder('Magento\Sales\Model\Quote')
+        $quote = $this->getMockBuilder('Magento\Quote\Model\Quote')
             ->disableOriginalConstructor()
             ->getMock();
         $quote->expects($this->once())
diff --git a/dev/tests/unit/testsuite/Magento/Checkout/Model/Type/OnepageTest.php b/dev/tests/unit/testsuite/Magento/Checkout/Model/Type/OnepageTest.php
index 1030fee677e52249f49c978c378111b4e378adad..7b46a4a2c8eef0639e6cd0fd6665ed2182fc854d 100644
--- a/dev/tests/unit/testsuite/Magento/Checkout/Model/Type/OnepageTest.php
+++ b/dev/tests/unit/testsuite/Magento/Checkout/Model/Type/OnepageTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Checkout\Model\Type;
 
 use Magento\TestFramework\Helper\ObjectManager as ObjectManagerHelper;
@@ -54,7 +56,7 @@ class OnepageTest extends \PHPUnit_Framework_TestCase
     protected $customerFactoryMock;
 
     /** @var \PHPUnit_Framework_MockObject_MockObject */
-    protected $quoteFactoryMock;
+    protected $quoteManagementMock;
 
     /** @var \PHPUnit_Framework_MockObject_MockObject */
     protected $orderFactoryMock;
@@ -86,7 +88,7 @@ class OnepageTest extends \PHPUnit_Framework_TestCase
     /** @var \Magento\Customer\Api\CustomerRepositoryInterface|\PHPUnit_Framework_MockObject_MockObject */
     protected $customerRepositoryMock;
 
-    /** @var \Magento\Sales\Model\QuoteRepository|\PHPUnit_Framework_MockObject_MockObject */
+    /** @var \Magento\Quote\Model\QuoteRepository|\PHPUnit_Framework_MockObject_MockObject */
     protected $quoteRepositoryMock;
 
     /**
@@ -97,6 +99,9 @@ class OnepageTest extends \PHPUnit_Framework_TestCase
     /** @var \Magento\Framework\Api\ExtensibleDataObjectConverter|\PHPUnit_Framework_MockObject_MockObject */
     protected $extensibleDataObjectConverterMock;
 
+    /**
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
+     */
     protected function setUp()
     {
         $this->addressRepositoryMock = $this->getMockForAbstractClass(
@@ -137,7 +142,7 @@ class OnepageTest extends \PHPUnit_Framework_TestCase
         $this->addressFactoryMock = $this->getMock('Magento\Customer\Model\AddressFactory', [], [], '', false);
         $this->formFactoryMock = $this->getMock('Magento\Customer\Model\Metadata\FormFactory', [], [], '', false);
         $this->customerFactoryMock = $this->getMock('Magento\Customer\Model\CustomerFactory', [], [], '', false);
-        $this->quoteFactoryMock = $this->getMock('Magento\Sales\Model\Service\QuoteFactory', [], [], '', false);
+        $this->quoteManagementMock = $this->getMock('Magento\Quote\Model\QuoteManagement', [], [], '', false);
         $this->orderFactoryMock = $this->getMock('Magento\Sales\Model\OrderFactory', ['create'], [], '', false);
         $this->copyMock = $this->getMock('Magento\Framework\Object\Copy', [], [], '', false);
         $this->messageManagerMock = $this->getMock('Magento\Framework\Message\ManagerInterface');
@@ -185,7 +190,7 @@ class OnepageTest extends \PHPUnit_Framework_TestCase
         );
 
         $this->quoteRepositoryMock = $this->getMock(
-            'Magento\Sales\Model\QuoteRepository',
+            'Magento\Quote\Model\QuoteRepository',
             [],
             [],
             '',
@@ -215,7 +220,6 @@ class OnepageTest extends \PHPUnit_Framework_TestCase
                 'customrAddrFactory' => $this->addressFactoryMock,
                 'customerFormFactory' => $this->customerFormFactoryMock,
                 'customerFactory' => $this->customerFactoryMock,
-                'serviceQuoteFactory' => $this->quoteFactoryMock,
                 'orderFactory' => $this->orderFactoryMock,
                 'objectCopyService' => $this->copyMock,
                 'messageManager' => $this->messageManagerMock,
@@ -229,7 +233,8 @@ class OnepageTest extends \PHPUnit_Framework_TestCase
                 'orderSenderMock' => $orderSenderMock,
                 'customerRepository' => $this->customerRepositoryMock,
                 'extensibleDataObjectConverter' => $this->extensibleDataObjectConverterMock,
-                'quoteRepository' => $this->quoteRepositoryMock
+                'quoteRepository' => $this->quoteRepositoryMock,
+                'quoteManagement' => $this->quoteManagementMock
             ]
         );
     }
@@ -243,8 +248,8 @@ class OnepageTest extends \PHPUnit_Framework_TestCase
 
     public function testSetQuote()
     {
-        /** @var \Magento\Sales\Model\Quote $quoteMock */
-        $quoteMock = $this->getMock('Magento\Sales\Model\Quote', [], [], '', false);
+        /** @var \Magento\Quote\Model\Quote $quoteMock */
+        $quoteMock = $this->getMock('Magento\Quote\Model\Quote', [], [], '', false);
         $this->onepage->setQuote($quoteMock);
         $this->assertEquals($quoteMock, $this->onepage->getQuote());
     }
@@ -260,9 +265,9 @@ class OnepageTest extends \PHPUnit_Framework_TestCase
             '',
             false
         );
-        /** @var \Magento\Sales\Model\Quote|\PHPUnit_Framework_MockObject_MockObject $quoteMock */
+        /** @var \Magento\Quote\Model\Quote|\PHPUnit_Framework_MockObject_MockObject $quoteMock */
         $quoteMock = $this->getMock(
-            'Magento\Sales\Model\Quote',
+            'Magento\Quote\Model\Quote',
             [
                 'isMultipleShippingAddresses',
                 'removeAllAddresses',
@@ -323,8 +328,8 @@ class OnepageTest extends \PHPUnit_Framework_TestCase
     public function testGetCheckoutMethod($isLoggedIn, $quoteCheckoutMethod, $isAllowedGuestCheckout, $expected)
     {
         $this->customerSessionMock->expects($this->once())->method('isLoggedIn')->will($this->returnValue($isLoggedIn));
-        /** @var \Magento\Sales\Model\Quote|\PHPUnit_Framework_MockObject_MockObject $quoteMock */
-        $quoteMock = $this->getMock('Magento\Sales\Model\Quote', [], [], '', false);
+        /** @var \Magento\Quote\Model\Quote|\PHPUnit_Framework_MockObject_MockObject $quoteMock */
+        $quoteMock = $this->getMock('Magento\Quote\Model\Quote', [], [], '', false);
         $quoteMock->expects($this->any())->method('setCheckoutMethod')->with($expected);
 
         $quoteMock->expects($this->any())
@@ -354,9 +359,9 @@ class OnepageTest extends \PHPUnit_Framework_TestCase
     public function testSaveCheckoutMethod()
     {
         $this->assertEquals(['error' => -1, 'message' => 'Invalid data'], $this->onepage->saveCheckoutMethod(null));
-        /** @var \Magento\Sales\Model\Quote|\PHPUnit_Framework_MockObject_MockObject $quoteMock */
+        /** @var \Magento\Quote\Model\Quote|\PHPUnit_Framework_MockObject_MockObject $quoteMock */
         $quoteMock = $this->getMock(
-            'Magento\Sales\Model\Quote',
+            'Magento\Quote\Model\Quote',
             ['setCheckoutMethod', '__wakeup'],
             [],
             '',
@@ -379,6 +384,8 @@ class OnepageTest extends \PHPUnit_Framework_TestCase
      * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function testSaveBilling(
         $data,
@@ -425,9 +432,9 @@ class OnepageTest extends \PHPUnit_Framework_TestCase
             ->expects($this->any())
             ->method('isEmailAvailable')
             ->will($this->returnValue($isEmailAvailable));
-        /** @var \Magento\Sales\Model\Quote|\PHPUnit_Framework_MockObject_MockObject $quoteMock */
+        /** @var \Magento\Quote\Model\Quote|\PHPUnit_Framework_MockObject_MockObject $quoteMock */
         $quoteMock = $this->getMock(
-            'Magento\Sales\Model\Quote',
+            'Magento\Quote\Model\Quote',
             [
                 'getData',
                 'getCustomerId',
@@ -456,14 +463,15 @@ class OnepageTest extends \PHPUnit_Framework_TestCase
             ['__toArray']
         );
         $shippingAddressMock = $this->getMock(
-            'Magento\Sales\Model\Quote\Address',
+            'Magento\Quote\Model\Quote\Address',
             [
                 'setSameAsBilling',
                 'save',
                 'collectTotals',
                 'addData',
                 'setShippingMethod',
-                'setCollectShippingRates'
+                'setCollectShippingRates',
+                '__wakeup'
             ],
             [],
             '',
@@ -504,7 +512,7 @@ class OnepageTest extends \PHPUnit_Framework_TestCase
         $quoteMock->expects($this->any())->method('isVirtual')->will($this->returnValue($isVirtual));
 
         $addressMock = $this->getMock(
-            'Magento\Sales\Model\Quote\Address',
+            'Magento\Quote\Model\Quote\Address',
             [
                 'setSaveInAddressBook',
                 'getData',
diff --git a/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Address/Billing/ReadServiceTest.php b/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Address/Billing/ReadServiceTest.php
index 832e689a3d6a66e059eddb5159d7f86c6c8ddff6..bfe221961b52867e07b751c20336a15f763cb52c 100644
--- a/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Address/Billing/ReadServiceTest.php
+++ b/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Address/Billing/ReadServiceTest.php
@@ -26,7 +26,7 @@ class ReadServiceTest extends \PHPUnit_Framework_TestCase
 
     protected function setUp()
     {
-        $this->quoteRepositoryMock = $this->getMock('\Magento\Sales\Model\QuoteRepository', [], [], '', false);
+        $this->quoteRepositoryMock = $this->getMock('\Magento\Quote\Model\QuoteRepository', [], [], '', false);
         $this->converterMock = $this->getMock('\Magento\Checkout\Service\V1\Address\Converter', [], [], '', false);
 
         $this->service = new ReadService($this->quoteRepositoryMock, $this->converterMock);
@@ -34,11 +34,11 @@ class ReadServiceTest extends \PHPUnit_Framework_TestCase
 
     public function testGetAddress()
     {
-        $quoteMock = $this->getMock('\Magento\Sales\Model\Quote', [], [], '', false);
+        $quoteMock = $this->getMock('\Magento\Quote\Model\Quote', [], [], '', false);
         $this->quoteRepositoryMock->expects($this->once())->method('getActive')
             ->with('cartId')->will($this->returnValue($quoteMock));
 
-        $addressMock = $this->getMock('\Magento\Sales\Model\Quote\Address', [], [], '', false);
+        $addressMock = $this->getMock('\Magento\Quote\Model\Quote\Address', [], [], '', false);
         $quoteMock->expects($this->any())->method('getBillingAddress')->will($this->returnValue($addressMock));
 
         $this->converterMock->expects($this->once())->method('convertModelToDataObject')
diff --git a/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Address/Billing/WriteServiceTest.php b/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Address/Billing/WriteServiceTest.php
index 81f27b49d52360f970d8948080738d9821bd1107..58e217926cce6342968f95136b76e44728188a43 100644
--- a/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Address/Billing/WriteServiceTest.php
+++ b/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Address/Billing/WriteServiceTest.php
@@ -5,6 +5,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Checkout\Service\V1\Address\Billing;
 
 class WriteServiceTest extends \PHPUnit_Framework_TestCase
@@ -46,13 +48,13 @@ class WriteServiceTest extends \PHPUnit_Framework_TestCase
 
     protected function setUp()
     {
-        $this->quoteRepositoryMock = $this->getMock('\Magento\Sales\Model\QuoteRepository', [], [], '', false);
+        $this->quoteRepositoryMock = $this->getMock('\Magento\Quote\Model\QuoteRepository', [], [], '', false);
         $this->addressFactoryMock = $this->getMock(
-            '\Magento\Sales\Model\Quote\AddressFactory', ['create', '__wakeup'], [], '', false
+            '\Magento\Quote\Model\Quote\AddressFactory', ['create', '__wakeup'], [], '', false
         );
 
         $this->quoteAddressMock = $this->getMock(
-            '\Magento\Sales\Model\Quote\Address',
+            '\Magento\Quote\Model\Quote\Address',
             ['getCustomerId', 'load', 'getData', 'setData', 'setStreet', 'setRegionId', 'setRegion', '__wakeup'],
             [],
             '',
@@ -87,7 +89,7 @@ class WriteServiceTest extends \PHPUnit_Framework_TestCase
      */
     public function testSetAddressValidationFailed()
     {
-        $quoteMock = $this->getMock('\Magento\Sales\Model\Quote', [], [], '', false);
+        $quoteMock = $this->getMock('\Magento\Quote\Model\Quote', [], [], '', false);
         $this->quoteRepositoryMock->expects($this->once())
             ->method('getActive')
             ->with('cartId')
@@ -101,7 +103,7 @@ class WriteServiceTest extends \PHPUnit_Framework_TestCase
 
     public function testSetAddress()
     {
-        $quoteMock = $this->getMock('\Magento\Sales\Model\Quote', [], [], '', false);
+        $quoteMock = $this->getMock('\Magento\Quote\Model\Quote', [], [], '', false);
         $this->quoteRepositoryMock->expects($this->once())
             ->method('getActive')
             ->with('cartId')
@@ -132,7 +134,7 @@ class WriteServiceTest extends \PHPUnit_Framework_TestCase
         $quoteMock->expects($this->once())->method('setDataChanges')->with(true);
         $this->quoteRepositoryMock->expects($this->once())->method('save')->with($quoteMock);
         $addressId = 1;
-        $billingAddressMock = $this->getMock('\Magento\Sales\Model\Quote\Address', [], [], '', false);
+        $billingAddressMock = $this->getMock('\Magento\Quote\Model\Quote\Address', [], [], '', false);
         $billingAddressMock->expects($this->once())->method('getId')->will($this->returnValue($addressId));
         $quoteMock->expects($this->once())->method('getBillingAddress')
             ->will($this->returnValue($billingAddressMock));
@@ -146,7 +148,7 @@ class WriteServiceTest extends \PHPUnit_Framework_TestCase
      */
     public function testSetAddressWithInabilityToSaveQuote()
     {
-        $quoteMock = $this->getMock('\Magento\Sales\Model\Quote', [], [], '', false);
+        $quoteMock = $this->getMock('\Magento\Quote\Model\Quote', [], [], '', false);
         $this->quoteRepositoryMock->expects($this->once())
             ->method('getActive')
             ->with('cartId')
diff --git a/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Address/ConverterTest.php b/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Address/ConverterTest.php
index a6d09b177d1fa893d38c92356126b79e67921ee9..3ee1ac05273836fd91952ae922c1d7a9bec9bc7e 100644
--- a/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Address/ConverterTest.php
+++ b/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Address/ConverterTest.php
@@ -5,6 +5,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Checkout\Service\V1\Address;
 
 use Magento\Checkout\Service\V1\Data\Cart\Address;
@@ -51,7 +53,7 @@ class ConverterTest extends \PHPUnit_Framework_TestCase
             'getStreet', 'getCompany', 'getTelephone', 'getFax', 'getPostcode', 'getFirstname', 'getMiddlename',
             'getLastname', 'getPrefix', 'getSuffix', 'getEmail', 'getVatId', 'getCustomField', 'getCity', '__wakeup',
         ];
-        $addressMock = $this->getMock('\Magento\Sales\Model\Quote\Address', $addressMockMethods, [], '', false);
+        $addressMock = $this->getMock('\Magento\Quote\Model\Quote\Address', $addressMockMethods, [], '', false);
 
         $addressMock->expects($this->atLeastOnce())->method('getCountryId')->will($this->returnValue(1));
         $addressMock->expects($this->atLeastOnce())->method('getId')->will($this->returnValue(2));
@@ -118,7 +120,7 @@ class ConverterTest extends \PHPUnit_Framework_TestCase
     {
         $dataObjectMock = $this->getMock('Magento\Checkout\Service\V1\Data\Cart\Address', [], [], '', false);
         $methods = ['setData', 'setStreet', 'setRegionId', 'setRegion', '__wakeUp'];
-        $addressMock = $this->getMock('Magento\Sales\Model\Quote\Address', $methods, [], '', false);
+        $addressMock = $this->getMock('Magento\Quote\Model\Quote\Address', $methods, [], '', false);
         $attributeValueMock = $this->getMock('\Magento\Framework\Api\AttributeValue', [], [], '', false);
         $attributeValueMock->expects($this->once())->method('getAttributeCode')->will($this->returnValue('value_code'));
         $attributeValueMock->expects($this->once())->method('getValue')->will($this->returnValue('value'));
diff --git a/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Address/Shipping/ReadServiceTest.php b/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Address/Shipping/ReadServiceTest.php
index a411d31af4e4d86575ba0637db3189690f748230..54700a7b9c3bda0192ca91715da0d9235689409b 100644
--- a/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Address/Shipping/ReadServiceTest.php
+++ b/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Address/Shipping/ReadServiceTest.php
@@ -26,7 +26,7 @@ class ReadServiceTest extends \PHPUnit_Framework_TestCase
 
     protected function setUp()
     {
-        $this->quoteRepositoryMock = $this->getMock('\Magento\Sales\Model\QuoteRepository', [], [], '', false);
+        $this->quoteRepositoryMock = $this->getMock('\Magento\Quote\Model\QuoteRepository', [], [], '', false);
         $this->converterMock = $this->getMock('\Magento\Checkout\Service\V1\Address\Converter', [], [], '', false);
 
         $this->service = new ReadService($this->quoteRepositoryMock, $this->converterMock);
@@ -34,12 +34,12 @@ class ReadServiceTest extends \PHPUnit_Framework_TestCase
 
     public function testGetAddress()
     {
-        $quoteMock = $this->getMock('\Magento\Sales\Model\Quote', [], [], '', false);
+        $quoteMock = $this->getMock('\Magento\Quote\Model\Quote', [], [], '', false);
         $this->quoteRepositoryMock->expects($this->once())->method('getActive')->with('cartId')->will(
             $this->returnValue($quoteMock)
         );
 
-        $addressMock = $this->getMock('\Magento\Sales\Model\Quote\Address', [], [], '', false);
+        $addressMock = $this->getMock('\Magento\Quote\Model\Quote\Address', [], [], '', false);
         $quoteMock->expects($this->any())->method('getShippingAddress')->will($this->returnValue($addressMock));
         $quoteMock->expects($this->any())->method('isVirtual')->will($this->returnValue(false));
 
@@ -55,7 +55,7 @@ class ReadServiceTest extends \PHPUnit_Framework_TestCase
      */
     public function testGetAddressOfQuoteWithVirtualProducts()
     {
-        $quoteMock = $this->getMock('\Magento\Sales\Model\Quote', [], [], '', false);
+        $quoteMock = $this->getMock('\Magento\Quote\Model\Quote', [], [], '', false);
         $this->quoteRepositoryMock->expects($this->once())->method('getActive')->with('cartId')->will(
             $this->returnValue($quoteMock)
         );
diff --git a/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Address/Shipping/WriteServiceTest.php b/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Address/Shipping/WriteServiceTest.php
index 5e52695e76c26e27b85aa1f198f4bd23f7605d33..bd1cc59450f48748eb4bd2319461dd3e328328a6 100644
--- a/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Address/Shipping/WriteServiceTest.php
+++ b/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Address/Shipping/WriteServiceTest.php
@@ -5,6 +5,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Checkout\Service\V1\Address\Shipping;
 
 class WriteServiceTest extends \PHPUnit_Framework_TestCase
@@ -46,14 +48,14 @@ class WriteServiceTest extends \PHPUnit_Framework_TestCase
 
     protected function setUp()
     {
-        $this->quoteRepositoryMock = $this->getMock('\Magento\Sales\Model\QuoteRepository', [], [], '', false);
+        $this->quoteRepositoryMock = $this->getMock('\Magento\Quote\Model\QuoteRepository', [], [], '', false);
         $this->addressFactoryMock = $this->getMock(
-            '\Magento\Sales\Model\Quote\AddressFactory', ['create', '__wakeup'], [], '', false
+            '\Magento\Quote\Model\Quote\AddressFactory', ['create', '__wakeup'], [], '', false
         );
 
         $this->objectManager = new \Magento\TestFramework\Helper\ObjectManager($this);
         $this->quoteAddressMock = $this->getMock(
-            '\Magento\Sales\Model\Quote\Address',
+            '\Magento\Quote\Model\Quote\Address',
             ['getCustomerId', 'load', 'getData', 'setData', 'setStreet', 'setRegionId', 'setRegion', '__wakeup'],
             [],
             '',
@@ -88,7 +90,7 @@ class WriteServiceTest extends \PHPUnit_Framework_TestCase
      */
     public function testSetAddressValidationFailed()
     {
-        $quoteMock = $this->getMock('\Magento\Sales\Model\Quote', [], [], '', false);
+        $quoteMock = $this->getMock('\Magento\Quote\Model\Quote', [], [], '', false);
         $this->quoteRepositoryMock->expects($this->once())
             ->method('getActive')
             ->with('cart654')
@@ -102,7 +104,7 @@ class WriteServiceTest extends \PHPUnit_Framework_TestCase
 
     public function testSetAddress()
     {
-        $quoteMock = $this->getMock('\Magento\Sales\Model\Quote', [], [], '', false);
+        $quoteMock = $this->getMock('\Magento\Quote\Model\Quote', [], [], '', false);
         $this->quoteRepositoryMock->expects($this->once())
             ->method('getActive')
             ->with('cart867')
@@ -135,7 +137,7 @@ class WriteServiceTest extends \PHPUnit_Framework_TestCase
         $this->quoteRepositoryMock->expects($this->once())->method('save')->with($quoteMock);
 
         $addressId = 1;
-        $shippingAddressMock = $this->getMock('\Magento\Sales\Model\Quote\Address', [], [], '', false);
+        $shippingAddressMock = $this->getMock('\Magento\Quote\Model\Quote\Address', [], [], '', false);
         $shippingAddressMock->expects($this->once())->method('getId')->will($this->returnValue($addressId));
         $quoteMock->expects($this->once())->method('getShippingAddress')
             ->will($this->returnValue($shippingAddressMock));
@@ -149,7 +151,7 @@ class WriteServiceTest extends \PHPUnit_Framework_TestCase
      */
     public function testSetAddressForVirtualProduct()
     {
-        $quoteMock = $this->getMock('\Magento\Sales\Model\Quote', [], [], '', false);
+        $quoteMock = $this->getMock('\Magento\Quote\Model\Quote', [], [], '', false);
         $this->quoteRepositoryMock->expects($this->once())
             ->method('getActive')
             ->with('cart867')
@@ -183,7 +185,7 @@ class WriteServiceTest extends \PHPUnit_Framework_TestCase
      */
     public function testSetAddressWithInabilityToSaveQuote()
     {
-        $quoteMock = $this->getMock('\Magento\Sales\Model\Quote', [], [], '', false);
+        $quoteMock = $this->getMock('\Magento\Quote\Model\Quote', [], [], '', false);
         $this->quoteRepositoryMock->expects($this->once())
             ->method('getActive')
             ->with('cart867')
diff --git a/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Address/ValidatorTest.php b/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Address/ValidatorTest.php
index 96d412bd3d5c5f25c99cf863ce436df2879b7fb7..2ba21342fb7c80d51ce612702e64233fb4695444 100644
--- a/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Address/ValidatorTest.php
+++ b/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Address/ValidatorTest.php
@@ -5,6 +5,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Checkout\Service\V1\Address;
 
 use Magento\Checkout\Service\V1\Data\Cart\Address;
@@ -51,10 +53,10 @@ class ValidatorTest extends \PHPUnit_Framework_TestCase
         $this->objectManager = new \Magento\TestFramework\Helper\ObjectManager($this);
 
         $this->addressFactoryMock = $this->getMock(
-            '\Magento\Sales\Model\Quote\AddressFactory', ['create', '__wakeup'], [], '', false
+            '\Magento\Quote\Model\Quote\AddressFactory', ['create', '__wakeup'], [], '', false
         );
         $this->quoteAddressMock = $this->getMock(
-            '\Magento\Sales\Model\Quote\Address',
+            '\Magento\Quote\Model\Quote\Address',
             ['getCustomerId', 'load', 'getId', '__wakeup'],
             [],
             '',
diff --git a/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Cart/PaymentMethod/BuilderTest.php b/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Cart/PaymentMethod/BuilderTest.php
index 15d354416444052349662d108ba910c8ec6b579e..a8263d45545b8b6c656c07c903baaed588dfa926 100644
--- a/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Cart/PaymentMethod/BuilderTest.php
+++ b/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Cart/PaymentMethod/BuilderTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Checkout\Service\V1\Cart\PaymentMethod;
 
 class BuilderTest extends \PHPUnit_Framework_TestCase
@@ -39,13 +41,13 @@ class BuilderTest extends \PHPUnit_Framework_TestCase
             ->method('getPaymentDetails')
             ->will($this->returnValue(serialize(['paymentDetailsTest'])));
 
-        $paymentMock = $this->getMock('\Magento\Sales\Model\Quote\Payment', [], [], '', false);
+        $paymentMock = $this->getMock('\Magento\Quote\Model\Quote\Payment', [], [], '', false);
         $paymentMock->expects($this->once())
             ->method('importData')
             ->with($this->contains('checkmo'))
             ->will($this->returnSelf());
 
-        $quoteMock = $this->getMock('\Magento\Sales\Model\Quote', [], [], '', false);
+        $quoteMock = $this->getMock('\Magento\Quote\Model\Quote', [], [], '', false);
         $quoteMock->expects($this->once())->method('getPayment')->will($this->returnValue($paymentMock));
 
         $this->assertEquals($paymentMock, $this->builder->build($paymentMethodMock, $quoteMock));
@@ -68,7 +70,7 @@ class BuilderTest extends \PHPUnit_Framework_TestCase
             ->method('getPaymentDetails')
             ->will($this->returnValue(['paymentDetailsTest']));
 
-        $paymentMock = $this->getMock('\Magento\Sales\Model\Quote\Payment', [], [], '', false);
+        $paymentMock = $this->getMock('\Magento\Quote\Model\Quote\Payment', [], [], '', false);
         $paymentMock->expects($this->once())
             ->method('importData')
             ->with($this->contains('notAvailableMethod'))
@@ -76,7 +78,7 @@ class BuilderTest extends \PHPUnit_Framework_TestCase
                 new \Magento\Framework\Exception\LocalizedException('The requested Payment Method is not available.'))
             );
 
-        $quoteMock = $this->getMock('\Magento\Sales\Model\Quote', [], [], '', false);
+        $quoteMock = $this->getMock('\Magento\Quote\Model\Quote', [], [], '', false);
         $quoteMock->expects($this->once())->method('getPayment')->will($this->returnValue($paymentMock));
 
         $this->assertEquals($paymentMock, $this->builder->build($paymentMethodMock, $quoteMock));
diff --git a/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Cart/PaymentMethod/ConverterTest.php b/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Cart/PaymentMethod/ConverterTest.php
index 343932f5d2ef796abe0c19d19f8fca7abe20abc6..f048bcee73581aff98024601c0fbc360cf7cd57d 100644
--- a/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Cart/PaymentMethod/ConverterTest.php
+++ b/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Cart/PaymentMethod/ConverterTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Checkout\Service\V1\Cart\PaymentMethod;
 
 use Magento\Checkout\Service\V1\Data\Cart\PaymentMethod;
@@ -46,7 +48,7 @@ class ConverterTest extends \PHPUnit_Framework_TestCase
 
     public function testConvertQuotePaymentObjectToPaymentDataObject()
     {
-        $paymentMock = $this->getMock('\Magento\Sales\Model\Quote\Payment',
+        $paymentMock = $this->getMock('\Magento\Quote\Model\Quote\Payment',
             [
                 'getMethod', 'getPoNumber', 'getCcOwner', 'getCcNumber',
                 'getCcType', 'getCcExpYear', 'getCcExpMonth', 'getAdditionalData', '__wakeup'
diff --git a/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Cart/ReadServiceTest.php b/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Cart/ReadServiceTest.php
index d544349bf196c6eb80c9d749e04bfc9492391ab8..f1798271d892555039d2100e4c3173889db2a518 100644
--- a/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Cart/ReadServiceTest.php
+++ b/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Cart/ReadServiceTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Checkout\Service\V1\Cart;
 
 use Magento\Framework\Api\SearchCriteria;
@@ -46,7 +48,7 @@ class ReadServiceTest extends \PHPUnit_Framework_TestCase
     protected function setUp()
     {
         $objectManager = new \Magento\TestFramework\Helper\ObjectManager($this);
-        $this->quoteRepositoryMock = $this->getMock('\Magento\Sales\Model\QuoteRepository', [], [], '', false);
+        $this->quoteRepositoryMock = $this->getMock('\Magento\Quote\Model\QuoteRepository', [], [], '', false);
         $methods = [
             'getId', 'getStoreId', 'getCreatedAt', 'getUpdatedAt', 'getConvertedAt',
             'getIsActive', 'getIsVirtual', 'getItemsCount', 'getItemsQty', 'getCheckoutMethod', 'getReservedOrderId',
@@ -59,9 +61,9 @@ class ReadServiceTest extends \PHPUnit_Framework_TestCase
             'getStoreToBaseRate', 'getStoreToQuoteRate', 'getBaseToGlobalRate', 'getBaseToQuoteRate', 'setStoreId',
             'getShippingAddress', 'getAllItems',
         ];
-        $this->quoteMock = $this->getMock('\Magento\Sales\Model\Quote', $methods, [], '', false);
+        $this->quoteMock = $this->getMock('\Magento\Quote\Model\Quote', $methods, [], '', false);
         $this->quoteCollectionMock = $objectManager->getCollectionMock(
-            'Magento\Sales\Model\Resource\Quote\Collection', [$this->quoteMock]);
+            'Magento\Quote\Model\Resource\Quote\Collection', [$this->quoteMock]);
         $this->searchResultsBuilderMock =
             $this->getMock('\Magento\Checkout\Service\V1\Data\CartSearchResultsBuilder', [], [], '', false);
         $this->cartMapperMock = $this->getMock('\Magento\Checkout\Service\V1\Data\CartMapper', ['map'], [], '', false);
diff --git a/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Cart/TotalsServiceTest.php b/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Cart/TotalsServiceTest.php
index c31715c588fecf5a36d35e516cc13d88252b2a2e..88a8d47d4b82f50215e5163008381c14cabc8d36 100644
--- a/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Cart/TotalsServiceTest.php
+++ b/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Cart/TotalsServiceTest.php
@@ -4,6 +4,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Checkout\Service\V1\Cart;
 
 class TotalsServiceTest extends \PHPUnit_Framework_TestCase
@@ -41,7 +44,7 @@ class TotalsServiceTest extends \PHPUnit_Framework_TestCase
     public function setUp()
     {
         $this->quoteMock = $this->getMock(
-            'Magento\Sales\Model\Quote', [], [], '', false
+            'Magento\Quote\Model\Quote', [], [], '', false
         );
         $this->totalsBuilderMock = $this->getMock(
             'Magento\Checkout\Service\V1\Data\Cart\TotalsBuilder',
@@ -54,7 +57,7 @@ class TotalsServiceTest extends \PHPUnit_Framework_TestCase
             'Magento\Checkout\Service\V1\Data\Cart\TotalsMapper', [], [], '', false
         );
         $this->quoteRepositoryMock = $this->getMock(
-            'Magento\Sales\Model\QuoteRepository', [], [], '', false
+            'Magento\Quote\Model\QuoteRepository', [], [], '', false
         );
         $this->itemTotalsMapperMock = $this->getMock(
             'Magento\Checkout\Service\V1\Data\Cart\Totals\ItemMapper', ['extractDto'], [], '', false
@@ -79,7 +82,7 @@ class TotalsServiceTest extends \PHPUnit_Framework_TestCase
             ->with($this->quoteMock)
             ->will($this->returnValue(['test']));
 
-        $item = $this->getMock('Magento\Sales\Model\Quote\Item', [], [], '', false);
+        $item = $this->getMock('Magento\Quote\Model\Quote\Item', [], [], '', false);
         $this->quoteMock->expects($this->once())->method('getAllItems')->will($this->returnValue([$item]));
         $this->service->getTotals($cartId);
     }
diff --git a/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Cart/WriteServiceTest.php b/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Cart/WriteServiceTest.php
index f3bf2a34d994708a97bb44bc4561b4a13128e13d..dbddf607aef71273db4661f10a546ae7f68911c1 100644
--- a/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Cart/WriteServiceTest.php
+++ b/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Cart/WriteServiceTest.php
@@ -4,6 +4,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Checkout\Service\V1\Cart;
 
 use Magento\Framework\Exception\CouldNotSaveException;
@@ -68,12 +71,12 @@ class WriteServiceTest extends \PHPUnit_Framework_TestCase
     {
         $this->objectManager = new ObjectManager($this);
         $this->storeManagerMock = $this->getMock('\Magento\Store\Model\StoreManagerInterface');
-        $this->quoteRepositoryMock = $this->getMock('\Magento\Sales\Model\QuoteRepository', [], [], '', false);
+        $this->quoteRepositoryMock = $this->getMock('\Magento\Quote\Model\QuoteRepository', [], [], '', false);
         $this->userContextMock = $this->getMock('\Magento\Authorization\Model\UserContextInterface');
 
         $this->storeMock = $this->getMock('\Magento\Store\Model\Store', [], [], '', false);
         $this->quoteMock =
-            $this->getMock('\Magento\Sales\Model\Quote',
+            $this->getMock('\Magento\Quote\Model\Quote',
                 [
                     'setStoreId',
                     'getId',
@@ -98,8 +101,8 @@ class WriteServiceTest extends \PHPUnit_Framework_TestCase
         );
 
         $this->quoteServiceFactory = $this->getMock(
-            'Magento\Sales\Model\Service\QuoteFactory',
-            ['create'],
+            'Magento\Quote\Model\QuoteManagement',
+            [],
             [],
             '',
             false
@@ -165,7 +168,7 @@ class WriteServiceTest extends \PHPUnit_Framework_TestCase
             ->will($this->returnValue($this->storeMock));
         $this->storeMock->expects($this->once())->method('getId')->will($this->returnValue($storeId));
 
-        $customerQuoteMock = $this->getMock('\Magento\Sales\Model\Quote',
+        $customerQuoteMock = $this->getMock('\Magento\Quote\Model\Quote',
             [
                 'getIsActive',
                 'getId',
@@ -353,7 +356,7 @@ class WriteServiceTest extends \PHPUnit_Framework_TestCase
             ->willReturnSelf();
         $this->quoteMock->expects($this->once())->method('getCustomerId')->will($this->returnValue(null));
 
-        $customerQuoteMock = $this->getMock('\Magento\Sales\Model\Quote', [], [], '', false);
+        $customerQuoteMock = $this->getMock('\Magento\Quote\Model\Quote', [], [], '', false);
         $this->quoteRepositoryMock->expects($this->once())
             ->method('getForCustomer')
             ->with($customerId)
@@ -413,14 +416,11 @@ class WriteServiceTest extends \PHPUnit_Framework_TestCase
     public function testOrder()
     {
         $cartId = 123;
-        $quoteService = $this->getMock('Magento\Sales\Model\Service\Quote', [], [], '', false);
         $this->quoteRepositoryMock->expects($this->once())->method('getActive')->with($cartId)
             ->will($this->returnValue($this->quoteMock));
-        $this->quoteServiceFactory->expects($this->once())->method('create')->with(['quote' => $this->quoteMock])
-            ->will($this->returnValue($quoteService));
         $orderMock = $this->getMock('Magento\Sales\Model\Order', [], [], '', false);
         $orderMock->expects($this->any())->method('getId')->will($this->returnValue(5));
-        $quoteService->expects($this->once())->method('submitOrderWithDataObject')
+        $this->quoteServiceFactory->expects($this->once())->method('submit')->with($this->quoteMock)
             ->will($this->returnValue($orderMock));
         $this->assertEquals(5, $this->service->order($cartId));
     }
diff --git a/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Coupon/ReadServiceTest.php b/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Coupon/ReadServiceTest.php
index 4b40572d837cb92b1a392d625d3b35140f6fbd0f..d22275df465db4b253bb51721b22cf8a697e4f8c 100644
--- a/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Coupon/ReadServiceTest.php
+++ b/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Coupon/ReadServiceTest.php
@@ -5,6 +5,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Checkout\Service\V1\Coupon;
 
 use Magento\Checkout\Service\V1\Data\Cart\Coupon as Coupon;
@@ -29,7 +31,7 @@ class ReadServiceTest extends \PHPUnit_Framework_TestCase
     protected function setUp()
     {
         $objectManager = new \Magento\TestFramework\Helper\ObjectManager($this);
-        $this->quoteRepositoryMock = $this->getMock('\Magento\Sales\Model\QuoteRepository', [], [], '', false);
+        $this->quoteRepositoryMock = $this->getMock('\Magento\Quote\Model\QuoteRepository', [], [], '', false);
         $this->couponBuilderMock = $this->getMock(
             '\Magento\Checkout\Service\V1\Data\Cart\CouponBuilder', [], [], '', false
         );
@@ -47,7 +49,7 @@ class ReadServiceTest extends \PHPUnit_Framework_TestCase
         $cartId = 11;
         $couponCode = 'test_coupon_code';
 
-        $quoteMock = $this->getMock('\Magento\Sales\Model\Quote', ['getCouponCode', '__wakeup'], [], '', false);
+        $quoteMock = $this->getMock('\Magento\Quote\Model\Quote', ['getCouponCode', '__wakeup'], [], '', false);
         $quoteMock->expects($this->any())->method('getCouponCode')->will($this->returnValue($couponCode));
 
         $this->quoteRepositoryMock->expects($this->once())
diff --git a/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Coupon/WriteServiceTest.php b/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Coupon/WriteServiceTest.php
index 5335ce98e73c785ddec54bea972d1e802ccfba70..005ae2f751719b25cee035e1aa72e12ef9e0825c 100644
--- a/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Coupon/WriteServiceTest.php
+++ b/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Coupon/WriteServiceTest.php
@@ -5,6 +5,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Checkout\Service\V1\Coupon;
 
 class WriteServiceTest extends \PHPUnit_Framework_TestCase
@@ -47,12 +49,12 @@ class WriteServiceTest extends \PHPUnit_Framework_TestCase
     protected function setUp()
     {
         $objectManager = new \Magento\TestFramework\Helper\ObjectManager($this);
-        $this->quoteRepositoryMock = $this->getMock('\Magento\Sales\Model\QuoteRepository', [], [], '', false);
+        $this->quoteRepositoryMock = $this->getMock('\Magento\Quote\Model\QuoteRepository', [], [], '', false);
         $this->couponBuilderMock =
             $this->getMock('\Magento\Checkout\Service\V1\Data\Cart\CouponBuilder', [], [], '', false);
         $this->storeMock = $this->getMock('\Magento\Store\Model\Store', [], [], '', false);
         $this->quoteMock = $this->getMock(
-            '\Magento\Sales\Model\Quote',
+            '\Magento\Quote\Model\Quote',
             [
                 'getItemsCount',
                 'setCouponCode',
@@ -68,7 +70,7 @@ class WriteServiceTest extends \PHPUnit_Framework_TestCase
         );
         $this->couponCodeDataMock = $this->getMock('\Magento\Checkout\Service\V1\Data\Cart\Coupon', [], [], '', false);
         $this->quoteAddressMock = $this->getMock(
-            '\Magento\Sales\Model\Quote\Address',
+            '\Magento\Quote\Model\Quote\Address',
             [
                 'setCollectShippingRates',
                 '__wakeup'
diff --git a/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Data/Cart/CustomerMapperTest.php b/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Data/Cart/CustomerMapperTest.php
index efeceee9119dc3467d7ff04e5256f8b78c904786..599757e903d3479080741bfb6c370912ad7c9ce5 100644
--- a/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Data/Cart/CustomerMapperTest.php
+++ b/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Data/Cart/CustomerMapperTest.php
@@ -23,7 +23,7 @@ class CustomerMapperTest extends \PHPUnit_Framework_TestCase
             'getCustomerPrefix', 'getCustomerFirstname', 'getCustomerMiddlename', 'getCustomerLastname',
             'getCustomerSuffix', 'getCustomerDob', 'getCustomerNote', 'getCustomerNoteNotify',
             'getCustomerIsGuest', 'getCustomerGender', 'getCustomerTaxvat', '__wakeUp', ];
-        $quoteMock = $this->getMock('Magento\Sales\Model\Quote', $methods, [], '', false);
+        $quoteMock = $this->getMock('Magento\Quote\Model\Quote', $methods, [], '', false);
         $expected = [
             Customer::ID => 10,
             Customer::EMAIL => 'customer@example.com',
diff --git a/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Data/Cart/ShippingMethodConverterTest.php b/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Data/Cart/ShippingMethodConverterTest.php
index fae8d9c90ff92d7f49854f952b6cf883f45c48ce..129fecea0aa042da157ed2a745d3abef24b15a47 100644
--- a/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Data/Cart/ShippingMethodConverterTest.php
+++ b/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Data/Cart/ShippingMethodConverterTest.php
@@ -5,6 +5,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Checkout\Service\V1\Data\Cart;
 
 class ShippingMethodConverterTest extends \PHPUnit_Framework_TestCase
@@ -58,7 +60,7 @@ class ShippingMethodConverterTest extends \PHPUnit_Framework_TestCase
         $this->currencyMock = $this->getMock('\Magento\Directory\Model\Currency', [], [], '', false);
         $this->shippingMethodMock =
             $this->getMock('\Magento\Checkout\Service\V1\Data\Cart\ShippingMethod', [], [], '', false);
-        $this->rateModelMock = $this->getMock('\Magento\Sales\Model\Quote\Address\Rate',
+        $this->rateModelMock = $this->getMock('\Magento\Quote\Model\Quote\Address\Rate',
             [
                 'getPrice',
                 'getCarrier',
diff --git a/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Data/Cart/TotalsMapperTest.php b/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Data/Cart/TotalsMapperTest.php
index 1b6335dad5f38238ebd7d79be5400f582a099057..0519c7928d2b172746f88187917cf578e9e673b8 100644
--- a/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Data/Cart/TotalsMapperTest.php
+++ b/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Data/Cart/TotalsMapperTest.php
@@ -22,7 +22,7 @@ class TotalsMapperTest extends \PHPUnit_Framework_TestCase
         $methods = ['getBaseGrandTotal', 'getGrandTotal', 'getBaseSubtotal', 'getSubtotal','getBaseCurrencyCode',
             'getBaseSubtotalWithDiscount', 'getSubtotalWithDiscount', 'getShippingAddress', '__wakeUp',
             'getQuoteCurrencyCode', ];
-        $quoteMock = $this->getMock('Magento\Sales\Model\Quote', $methods, [], '', false);
+        $quoteMock = $this->getMock('Magento\Quote\Model\Quote', $methods, [], '', false);
         $methods = [
             'getDiscountAmount', 'getBaseDiscountAmount', 'getShippingAmount', 'getBaseShippingAmount',
             'getShippingDiscountAmount', 'getBaseShippingDiscountAmount', 'getTaxAmount', 'getBaseTaxAmount',
@@ -30,7 +30,7 @@ class TotalsMapperTest extends \PHPUnit_Framework_TestCase
             'getShippingInclTax', 'getBaseShippingInclTax', 'getId', '__wakeUp',
         ];
 
-        $shippingAddressMock = $this->getMock('\Magento\Sales\Model\Quote\Address', $methods, [], '', false);
+        $shippingAddressMock = $this->getMock('\Magento\Quote\Model\Quote\Address', $methods, [], '', false);
 
         $quoteMock->expects($this->any())->method('getShippingAddress')
             ->will($this->returnValue($shippingAddressMock));
diff --git a/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Data/CartMapperTest.php b/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Data/CartMapperTest.php
index 890f9ddd8aded2e96f74d72477784d843fc722b8..19c4d479363d410e42aaf787a6fb7970ded51dc5 100644
--- a/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Data/CartMapperTest.php
+++ b/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Data/CartMapperTest.php
@@ -109,8 +109,8 @@ class CartMapperTest extends \PHPUnit_Framework_TestCase
         $methods = ['getId', 'getStoreId', 'getCreatedAt','getUpdatedAt', 'getConvertedAt', 'getIsActive',
             'getIsVirtual', 'getItemsCount', 'getItemsQty', 'getCheckoutMethod', 'getReservedOrderId', 'getOrigOrderId',
             'getAllItems', '__wakeUp', ];
-        $quoteMock = $this->getMock('Magento\Sales\Model\Quote', $methods, [], '', false);
-        $itemMock = $this->getMock('Magento\Sales\Model\Quote\Item', [], [], '', false);
+        $quoteMock = $this->getMock('Magento\Quote\Model\Quote', $methods, [], '', false);
+        $itemMock = $this->getMock('Magento\Quote\Model\Quote\Item', [], [], '', false);
         $quoteMock->expects($this->once())->method('getAllItems')->will($this->returnValue([$itemMock]));
         $expected = [
             Cart::ID => 12,
diff --git a/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Data/PaymentMethod/ConverterTest.php b/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Data/PaymentMethod/ConverterTest.php
index e20603f39db3d13af4df67614ea2e1e51a1774d2..db797717aca25c8d6f6cca034302c7d174015863 100644
--- a/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Data/PaymentMethod/ConverterTest.php
+++ b/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Data/PaymentMethod/ConverterTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Checkout\Service\V1\Data\PaymentMethod;
 
 use Magento\Checkout\Service\V1\Data\PaymentMethod;
diff --git a/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Item/ReaderServiceTest.php b/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Item/ReaderServiceTest.php
index d131a00be26b329222023f2450e4377199731cf9..c69f3100bb813c29babe09e10ff58d2765439dc0 100644
--- a/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Item/ReaderServiceTest.php
+++ b/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Item/ReaderServiceTest.php
@@ -5,6 +5,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Checkout\Service\V1\Item;
 
 use Magento\Checkout\Service\V1\Data\Cart\Item as Item;
@@ -28,7 +30,7 @@ class ReaderServiceTest extends \PHPUnit_Framework_TestCase
 
     protected function setUp()
     {
-        $this->quoteRepositoryMock = $this->getMock('Magento\Sales\Model\QuoteRepository', [], [], '', false);
+        $this->quoteRepositoryMock = $this->getMock('Magento\Quote\Model\QuoteRepository', [], [], '', false);
         $this->itemMapperMock =
             $this->getMock('\Magento\Checkout\Service\V1\Data\Cart\ItemMapper', ['extractDto'], [], '', false);
         $this->service = new ReadService($this->quoteRepositoryMock, $this->itemMapperMock);
@@ -36,11 +38,11 @@ class ReaderServiceTest extends \PHPUnit_Framework_TestCase
 
     public function testGetList()
     {
-        $quoteMock = $this->getMock('Magento\Sales\Model\Quote', [], [], '', false);
+        $quoteMock = $this->getMock('Magento\Quote\Model\Quote', [], [], '', false);
         $this->quoteRepositoryMock->expects($this->once())->method('getActive')
             ->with(33)
             ->will($this->returnValue($quoteMock));
-        $itemMock = $this->getMock('\Magento\Sales\Model\Quote\Item',
+        $itemMock = $this->getMock('\Magento\Quote\Model\Quote\Item',
             ['getSku', 'getName', 'getPrice', 'getQty', 'getProductType', '__wakeup'], [], '', false);
         $quoteMock->expects($this->any())->method('getAllItems')->will($this->returnValue([$itemMock]));
         $testData = [
diff --git a/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Item/WriteServiceTest.php b/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Item/WriteServiceTest.php
index 760b4f468a307c6eba0aba922f89e2a6ebc80527..ee0069f41359e8d5f15c443096f0fc12df2e3fc4 100644
--- a/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Item/WriteServiceTest.php
+++ b/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/Item/WriteServiceTest.php
@@ -47,14 +47,14 @@ class WriteServiceTest extends \PHPUnit_Framework_TestCase
     protected function setUp()
     {
         $this->quoteRepositoryMock =
-            $this->getMock('\Magento\Sales\Model\QuoteRepository', [], [], '', false);
+            $this->getMock('\Magento\Quote\Model\QuoteRepository', [], [], '', false);
         $this->productRepositoryMock =
             $this->getMock('Magento\Catalog\Api\ProductRepositoryInterface', [], [], '', false);
         $this->dataMock = $this->getMock('\Magento\Checkout\Service\V1\Data\Cart\Item', [], [], '', false);
-        $this->quoteMock = $this->getMock('\Magento\Sales\Model\Quote', [], [], '', false);
+        $this->quoteMock = $this->getMock('\Magento\Quote\Model\Quote', [], [], '', false);
         $this->productMock = $this->getMock('\Magento\Catalog\Model\Product', [], [], '', false);
         $this->quoteItemMock =
-            $this->getMock('\Magento\Sales\Model\Quote\Item', ['getId', 'setData', '__wakeUp'], [], '', false);
+            $this->getMock('\Magento\Quote\Model\Quote\Item', ['getId', 'setData', '__wakeUp'], [], '', false);
 
         $this->service = new WriteService($this->quoteRepositoryMock, $this->productRepositoryMock);
     }
diff --git a/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/PaymentMethod/ReadServiceTest.php b/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/PaymentMethod/ReadServiceTest.php
index e27f34b2d8db901fd1060af294af516e517d9ad5..f512c563edc02f8cdcd32798bd98841ba1b78d64 100644
--- a/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/PaymentMethod/ReadServiceTest.php
+++ b/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/PaymentMethod/ReadServiceTest.php
@@ -5,6 +5,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Checkout\Service\V1\PaymentMethod;
 
 class ReadServiceTest extends \PHPUnit_Framework_TestCase
@@ -41,7 +43,7 @@ class ReadServiceTest extends \PHPUnit_Framework_TestCase
     protected function setUp()
     {
         $this->objectManager = new \Magento\TestFramework\Helper\ObjectManager($this);
-        $this->quoteRepositoryMock = $this->getMock('\Magento\Sales\Model\QuoteRepository', [], [], '', false);
+        $this->quoteRepositoryMock = $this->getMock('\Magento\Quote\Model\QuoteRepository', [], [], '', false);
         $this->quoteMethodConverterMock = $this->getMock(
             '\Magento\Checkout\Service\V1\Data\Cart\PaymentMethod\Converter', [], [], '', false
         );
@@ -64,8 +66,8 @@ class ReadServiceTest extends \PHPUnit_Framework_TestCase
     public function testGetPaymentIfPaymentMethodNotSet()
     {
         $cartId = 11;
-        $quoteMock = $this->getMock('\Magento\Sales\Model\Quote', [], [], '', false);
-        $paymentMock = $this->getMock('\Magento\Sales\Model\Quote\Payment', [], [], '', false);
+        $quoteMock = $this->getMock('\Magento\Quote\Model\Quote', [], [], '', false);
+        $paymentMock = $this->getMock('\Magento\Quote\Model\Quote\Payment', [], [], '', false);
         $quoteMock->expects($this->once())->method('getPayment')->will($this->returnValue($paymentMock));
         $paymentMock->expects($this->once())->method('getId')->will($this->returnValue(null));
 
@@ -81,10 +83,10 @@ class ReadServiceTest extends \PHPUnit_Framework_TestCase
     {
         $cartId = 11;
 
-        $paymentMock = $this->getMock('\Magento\Sales\Model\Quote\Payment', [], [], '', false);
+        $paymentMock = $this->getMock('\Magento\Quote\Model\Quote\Payment', [], [], '', false);
         $paymentMock->expects($this->once())->method('getId')->will($this->returnValue(1));
 
-        $quoteMock = $this->getMock('\Magento\Sales\Model\Quote', [], [], '', false);
+        $quoteMock = $this->getMock('\Magento\Quote\Model\Quote', [], [], '', false);
         $quoteMock->expects($this->once())->method('getPayment')->will($this->returnValue($paymentMock));
 
         $this->quoteRepositoryMock->expects($this->once())
@@ -105,7 +107,7 @@ class ReadServiceTest extends \PHPUnit_Framework_TestCase
     public function testGetList()
     {
         $cartId = 10;
-        $quoteMock = $this->getMock('\Magento\Sales\Model\Quote', [], [], '', false);
+        $quoteMock = $this->getMock('\Magento\Quote\Model\Quote', [], [], '', false);
 
         $this->quoteRepositoryMock->expects($this->once())
             ->method('getActive')
diff --git a/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/PaymentMethod/WriteServiceTest.php b/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/PaymentMethod/WriteServiceTest.php
index 70fe67f4fa0577c95a3d95d0f3774fc82f3b59a0..b56618360da33ca5a9da58ce56503db33119ef80 100644
--- a/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/PaymentMethod/WriteServiceTest.php
+++ b/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/PaymentMethod/WriteServiceTest.php
@@ -5,6 +5,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Checkout\Service\V1\PaymentMethod;
 
 class WriteServiceTest extends \PHPUnit_Framework_TestCase
@@ -42,7 +44,7 @@ class WriteServiceTest extends \PHPUnit_Framework_TestCase
     protected function setUp()
     {
         $this->objectManager = new \Magento\TestFramework\Helper\ObjectManager($this);
-        $this->quoteRepositoryMock = $this->getMock('\Magento\Sales\Model\QuoteRepository', [], [], '', false);
+        $this->quoteRepositoryMock = $this->getMock('\Magento\Quote\Model\QuoteRepository', [], [], '', false);
         $this->paymentMethodBuilderMock = $this->getMock(
             '\Magento\Checkout\Service\V1\Data\Cart\PaymentMethod\Builder', [], [], '', false
         );
@@ -72,13 +74,13 @@ class WriteServiceTest extends \PHPUnit_Framework_TestCase
             '\Magento\Eav\Model\Entity\Collection\AbstractCollection', [], [], '', false
         );
 
-        $quoteMock = $this->getMock('\Magento\Sales\Model\Quote', [], [], '', false);
+        $quoteMock = $this->getMock('\Magento\Quote\Model\Quote', [], [], '', false);
         $quoteMock->expects($this->any())
             ->method('getPaymentsCollection')
             ->will($this->returnValue($paymentsCollectionMock));
         $quoteMock->expects($this->any())->method('isVirtual')->will($this->returnValue(true));
 
-        $billingAddressMock = $this->getMock('\Magento\Sales\Model\Quote\Address', [], [], '', false);
+        $billingAddressMock = $this->getMock('\Magento\Quote\Model\Quote\Address', [], [], '', false);
         $quoteMock->expects($this->any())->method('getBillingAddress')->will($this->returnValue($billingAddressMock));
 
         $this->quoteRepositoryMock->expects($this->once())
@@ -100,7 +102,7 @@ class WriteServiceTest extends \PHPUnit_Framework_TestCase
         );
 
         $quoteMock = $this->getMock(
-            '\Magento\Sales\Model\Quote',
+            '\Magento\Quote\Model\Quote',
             [
                 'setTotalsCollectedFlag', '__wakeup', 'getPaymentsCollection', 'getPayment',
                 'getItemsCollection', 'isVirtual', 'getBillingAddress', 'collectTotals', 'save'
@@ -112,14 +114,14 @@ class WriteServiceTest extends \PHPUnit_Framework_TestCase
         $quoteMock->expects($this->any())->method('isVirtual')->will($this->returnValue(true));
 
         $billingAddressMock =
-            $this->getMock('\Magento\Sales\Model\Quote\Address', ['getCountryId', '__wakeup'], [], '', false);
+            $this->getMock('\Magento\Quote\Model\Quote\Address', ['getCountryId', '__wakeup'], [], '', false);
         $billingAddressMock->expects($this->once())->method('getCountryId')->will($this->returnValue(1));
         $quoteMock->expects($this->any())->method('getBillingAddress')->will($this->returnValue($billingAddressMock));
 
         $quoteMock->expects($this->once())->method('setTotalsCollectedFlag')->will($this->returnSelf());
         $quoteMock->expects($this->once())->method('collectTotals')->will($this->returnSelf());
 
-        $paymentMock = $this->getMock('Magento\Sales\Model\Quote\Payment', [], [], '', false);
+        $paymentMock = $this->getMock('Magento\Quote\Model\Quote\Payment', [], [], '', false);
         $paymentMock->expects($this->once())->method('getId')->will($this->returnValue($paymentId));
 
         $methodMock = $this->getMockForAbstractClass(
@@ -160,7 +162,7 @@ class WriteServiceTest extends \PHPUnit_Framework_TestCase
         );
 
         $quoteMock = $this->getMock(
-            '\Magento\Sales\Model\Quote',
+            '\Magento\Quote\Model\Quote',
             [
                 'setTotalsCollectedFlag', '__wakeup', 'getPaymentsCollection', 'getPayment',
                 'getItemsCollection', 'isVirtual', 'getBillingAddress', 'collectTotals'
@@ -172,14 +174,14 @@ class WriteServiceTest extends \PHPUnit_Framework_TestCase
         $quoteMock->expects($this->any())->method('isVirtual')->will($this->returnValue(true));
 
         $billingAddressMock =
-            $this->getMock('\Magento\Sales\Model\Quote\Address', ['getCountryId', '__wakeup'], [], '', false);
+            $this->getMock('\Magento\Quote\Model\Quote\Address', ['getCountryId', '__wakeup'], [], '', false);
         $billingAddressMock->expects($this->once())->method('getCountryId')->will($this->returnValue(1));
         $quoteMock->expects($this->any())->method('getBillingAddress')->will($this->returnValue($billingAddressMock));
 
         $quoteMock->expects($this->never())->method('setTotalsCollectedFlag');
         $quoteMock->expects($this->never())->method('collectTotals');
 
-        $paymentMock = $this->getMock('Magento\Sales\Model\Quote\Payment', [], [], '', false);
+        $paymentMock = $this->getMock('Magento\Quote\Model\Quote\Payment', [], [], '', false);
         $paymentMock->expects($this->never())->method('getId');
 
         $methodMock = $this->getMockForAbstractClass(
@@ -215,7 +217,7 @@ class WriteServiceTest extends \PHPUnit_Framework_TestCase
     {
         $cartId = 11;
         $quoteMock = $this->getMock(
-            '\Magento\Sales\Model\Quote',
+            '\Magento\Quote\Model\Quote',
             ['__wakeup', 'getPaymentsCollection', 'isVirtual', 'getShippingAddress'], [], '', false
         );
 
@@ -229,7 +231,7 @@ class WriteServiceTest extends \PHPUnit_Framework_TestCase
         $quoteMock->expects($this->any())->method('isVirtual')->will($this->returnValue(false));
         $quoteMock->expects($this->any())
             ->method('getShippingAddress')
-            ->will($this->returnValue($this->getMock('\Magento\Sales\Model\Quote\Address', [], [], '', false)));
+            ->will($this->returnValue($this->getMock('\Magento\Quote\Model\Quote\Address', [], [], '', false)));
 
         $this->quoteRepositoryMock->expects($this->once())
             ->method('getActive')
@@ -237,7 +239,7 @@ class WriteServiceTest extends \PHPUnit_Framework_TestCase
             ->will($this->returnValue($quoteMock));
 
         $paymentMethodMock = $this->getMock('\Magento\Checkout\Service\V1\Data\Cart\PaymentMethod', [], [], '', false);
-        $paymentMock = $this->getMock('Magento\Sales\Model\Quote\Payment', [], [], '', false);
+        $paymentMock = $this->getMock('Magento\Quote\Model\Quote\Payment', [], [], '', false);
 
         $this->paymentMethodBuilderMock->expects($this->once())
             ->method('build')
@@ -257,7 +259,7 @@ class WriteServiceTest extends \PHPUnit_Framework_TestCase
         );
 
         $quoteMock = $this->getMock(
-            '\Magento\Sales\Model\Quote',
+            '\Magento\Quote\Model\Quote',
             [
                 'setTotalsCollectedFlag', '__wakeup', 'getPaymentsCollection', 'getPayment',
                 'getItemsCollection', 'isVirtual', 'getShippingAddress', 'collectTotals', 'save'
@@ -269,14 +271,14 @@ class WriteServiceTest extends \PHPUnit_Framework_TestCase
         $quoteMock->expects($this->any())->method('isVirtual')->will($this->returnValue(false));
 
         $shippingAddressMock =
-            $this->getMock('\Magento\Sales\Model\Quote\Address', ['getCountryId', '__wakeup'], [], '', false);
+            $this->getMock('\Magento\Quote\Model\Quote\Address', ['getCountryId', '__wakeup'], [], '', false);
         $shippingAddressMock->expects($this->once())->method('getCountryId')->will($this->returnValue(1));
         $quoteMock->expects($this->any())->method('getShippingAddress')->will($this->returnValue($shippingAddressMock));
 
         $quoteMock->expects($this->once())->method('setTotalsCollectedFlag')->will($this->returnSelf());
         $quoteMock->expects($this->once())->method('collectTotals')->will($this->returnSelf());
 
-        $paymentMock = $this->getMock('Magento\Sales\Model\Quote\Payment', [], [], '', false);
+        $paymentMock = $this->getMock('Magento\Quote\Model\Quote\Payment', [], [], '', false);
         $paymentMock->expects($this->once())->method('getId')->will($this->returnValue($paymentId));
 
         $methodMock = $this->getMockForAbstractClass(
diff --git a/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/ShippingMethod/ReadServiceTest.php b/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/ShippingMethod/ReadServiceTest.php
index 432c2ec91afbe50ba267441fe4c993ed1c6f1596..196f0db3ceb025f82061bbdaaa17ceea3a2b34d9 100644
--- a/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/ShippingMethod/ReadServiceTest.php
+++ b/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/ShippingMethod/ReadServiceTest.php
@@ -50,7 +50,7 @@ class ReadServiceTest extends \PHPUnit_Framework_TestCase
     protected function setUp()
     {
         $this->objectManager = new ObjectManager($this);
-        $this->quoteRepositoryMock = $this->getMock('\Magento\Sales\Model\QuoteRepository', [], [], '', false);
+        $this->quoteRepositoryMock = $this->getMock('\Magento\Quote\Model\QuoteRepository', [], [], '', false);
         $this->methodBuilderMock = $this->getMock(
             '\Magento\Checkout\Service\V1\Data\Cart\ShippingMethodBuilder',
             ['populateWithArray', 'create'],
@@ -60,7 +60,7 @@ class ReadServiceTest extends \PHPUnit_Framework_TestCase
         );
         $this->storeMock = $this->getMock('\Magento\Store\Model\Store', [], [], '', false);
         $this->quoteMock = $this->getMock(
-            '\Magento\Sales\Model\Quote',
+            '\Magento\Quote\Model\Quote',
             [
                 'getShippingAddress',
                 'isVirtual',
@@ -73,7 +73,7 @@ class ReadServiceTest extends \PHPUnit_Framework_TestCase
             false
         );
         $this->shippingAddressMock = $this->getMock(
-            '\Magento\Sales\Model\Quote\Address',
+            '\Magento\Quote\Model\Quote\Address',
             [
                 'getCountryId',
                 'getShippingMethod',
@@ -249,7 +249,7 @@ class ReadServiceTest extends \PHPUnit_Framework_TestCase
             ->method('getShippingAddress')->will($this->returnValue($this->shippingAddressMock));
         $this->shippingAddressMock->expects($this->once())->method('getCountryId')->will($this->returnValue(345));
         $this->shippingAddressMock->expects($this->once())->method('collectShippingRates');
-        $shippingRateMock = $this->getMock('\Magento\Sales\Model\Quote\Address\Rate', [], [], '', false);
+        $shippingRateMock = $this->getMock('\Magento\Quote\Model\Quote\Address\Rate', [], [], '', false);
         $this->shippingAddressMock->expects($this->once())
             ->method('getGroupedAllShippingRates')
             ->will($this->returnValue([[$shippingRateMock]]));
diff --git a/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/ShippingMethod/WriteServiceTest.php b/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/ShippingMethod/WriteServiceTest.php
index 1b66c82862f73859bfd6e1eafc23560beda04753..5d2de490851aab61f9546e27e10ea08114877eb9 100644
--- a/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/ShippingMethod/WriteServiceTest.php
+++ b/dev/tests/unit/testsuite/Magento/Checkout/Service/V1/ShippingMethod/WriteServiceTest.php
@@ -37,10 +37,10 @@ class WriteServiceTest extends \PHPUnit_Framework_TestCase
     protected function setUp()
     {
         $objectManager = new \Magento\TestFramework\Helper\ObjectManager($this);
-        $this->addressFactoryMock = $this->getMock('\Magento\Sales\Model\Quote\AddressFactory', [], [], '', false);
-        $this->quoteRepositoryMock = $this->getMock('\Magento\Sales\Model\QuoteRepository', [], [], '', false);
+        $this->addressFactoryMock = $this->getMock('\Magento\Quote\Model\Quote\AddressFactory', [], [], '', false);
+        $this->quoteRepositoryMock = $this->getMock('\Magento\Quote\Model\QuoteRepository', [], [], '', false);
         $this->quoteMock = $this->getMock(
-            '\Magento\Sales\Model\Quote',
+            '\Magento\Quote\Model\Quote',
             [
                 'getItemsCount',
                 'isVirtual',
@@ -56,7 +56,7 @@ class WriteServiceTest extends \PHPUnit_Framework_TestCase
         );
 
         $this->shippingAddressMock = $this->getMock(
-            '\Magento\Sales\Model\Quote\Address',
+            '\Magento\Quote\Model\Quote\Address',
             [
                 'setShippingMethod',
                 'requestShippingRates',
@@ -153,7 +153,7 @@ class WriteServiceTest extends \PHPUnit_Framework_TestCase
         $this->shippingAddressMock->expects($this->once())
             ->method('getCountryId')->will($this->returnValue($countryId));
         $billingAddressMock = $this->getMock(
-            '\Magento\Sales\Model\Quote\Address',
+            '\Magento\Quote\Model\Quote\Address',
             ['getCountryId', '__wakeup'],
             [],
             '',
@@ -183,7 +183,7 @@ class WriteServiceTest extends \PHPUnit_Framework_TestCase
         $this->quoteMock->expects($this->once())
             ->method('getShippingAddress')->will($this->returnValue($this->shippingAddressMock));
         $billingAddressMock = $this->getMock(
-            '\Magento\Sales\Model\Quote\Address',
+            '\Magento\Quote\Model\Quote\Address',
             ['getCountryId', '__wakeup'],
             [],
             '',
@@ -223,7 +223,7 @@ class WriteServiceTest extends \PHPUnit_Framework_TestCase
         $this->shippingAddressMock->expects($this->once())
             ->method('getCountryId')->will($this->returnValue($countryId));
         $billingAddressMock = $this->getMock(
-            '\Magento\Sales\Model\Quote\Address',
+            '\Magento\Quote\Model\Quote\Address',
             [
                 'getCountryId',
                 '__wakeup'
@@ -282,7 +282,7 @@ class WriteServiceTest extends \PHPUnit_Framework_TestCase
         $this->quoteMock->expects($this->once())
             ->method('getShippingAddress')->will($this->returnValue($this->shippingAddressMock));
         $billingAddressMock = $this->getMock(
-            '\Magento\Sales\Model\Quote\Address',
+            '\Magento\Quote\Model\Quote\Address',
             [
                 'getCountryId',
                 '__wakeup'
diff --git a/dev/tests/unit/testsuite/Magento/Cms/Controller/Adminhtml/Wysiwyg/DirectiveTest.php b/dev/tests/unit/testsuite/Magento/Cms/Controller/Adminhtml/Wysiwyg/DirectiveTest.php
index 021506cdbb6349e2f36d92280f51637d0ed6359f..ffd990dfc3bfbc2b084c699cdc090269c08b5ec1 100644
--- a/dev/tests/unit/testsuite/Magento/Cms/Controller/Adminhtml/Wysiwyg/DirectiveTest.php
+++ b/dev/tests/unit/testsuite/Magento/Cms/Controller/Adminhtml/Wysiwyg/DirectiveTest.php
@@ -7,6 +7,7 @@ namespace Magento\Cms\Controller\Adminhtml\Wysiwyg;
 
 /**
  * @covers \Magento\Cms\Controller\Adminhtml\Wysiwyg\Directive
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class DirectiveTest extends \PHPUnit_Framework_TestCase
 {
diff --git a/dev/tests/unit/testsuite/Magento/ConfigurableImportExport/Model/Export/RowCustomizerTest.php b/dev/tests/unit/testsuite/Magento/ConfigurableImportExport/Model/Export/RowCustomizerTest.php
index fe6b17f7b64945a7735936c72a22f623821a4ebe..f0c1ec9543a98ddce7eea519f16d85ab9abb01d6 100644
--- a/dev/tests/unit/testsuite/Magento/ConfigurableImportExport/Model/Export/RowCustomizerTest.php
+++ b/dev/tests/unit/testsuite/Magento/ConfigurableImportExport/Model/Export/RowCustomizerTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\ConfigurableImportExport\Model\Export;
 
 class RowCustomizerTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/ConfigurableProduct/Block/Cart/Item/Renderer/ConfigurableTest.php b/dev/tests/unit/testsuite/Magento/ConfigurableProduct/Block/Cart/Item/Renderer/ConfigurableTest.php
index 7f30708f34e3fa461d88cc69131ba8d462a3b4cc..22b148c34f0d3e58ee166dbe11cac143a1e043ef 100644
--- a/dev/tests/unit/testsuite/Magento/ConfigurableProduct/Block/Cart/Item/Renderer/ConfigurableTest.php
+++ b/dev/tests/unit/testsuite/Magento/ConfigurableProduct/Block/Cart/Item/Renderer/ConfigurableTest.php
@@ -98,7 +98,7 @@ class ConfigurableTest extends \PHPUnit_Framework_TestCase
             ),
             'productFactory' => $this->getMock('Magento\Catalog\Model\ProductFactory', [], [], '', false),
             'itemOptionFactory' => $this->getMock(
-                'Magento\Sales\Model\Quote\Item\OptionFactory',
+                'Magento\Quote\Model\Quote\Item\OptionFactory',
                 [],
                 [],
                 '',
@@ -106,10 +106,10 @@ class ConfigurableTest extends \PHPUnit_Framework_TestCase
             ),
             'priceCurrency' => $this->getMockBuilder('Magento\Framework\Pricing\PriceCurrencyInterface')->getMock(),
         ];
-        $childItem = $objectManagerHelper->getObject('Magento\Sales\Model\Quote\Item', $arguments);
+        $childItem = $objectManagerHelper->getObject('Magento\Quote\Model\Quote\Item', $arguments);
         $childItem->setData('product', $childProduct);
 
-        $item = $objectManagerHelper->getObject('Magento\Sales\Model\Quote\Item', $arguments);
+        $item = $objectManagerHelper->getObject('Magento\Quote\Model\Quote\Item', $arguments);
         $item->setData('product', $product);
         $item->addChild($childItem);
 
@@ -211,11 +211,11 @@ class ConfigurableTest extends \PHPUnit_Framework_TestCase
         $childProduct->expects($this->any())->method('getThumbnail')->will($this->returnValue($childThumbnail));
 
         /** Mock methods which return parent and child products */
-        /** @var \Magento\Sales\Model\Quote\Item\Option|\PHPUnit_Framework_MockObject_MockObject $itemOption */
-        $itemOption = $this->getMock('Magento\Sales\Model\Quote\Item\Option', [], [], '', false);
+        /** @var \Magento\Quote\Model\Quote\Item\Option|\PHPUnit_Framework_MockObject_MockObject $itemOption */
+        $itemOption = $this->getMock('Magento\Quote\Model\Quote\Item\Option', [], [], '', false);
         $itemOption->expects($this->any())->method('getProduct')->will($this->returnValue($childProduct));
-        /** @var \Magento\Sales\Model\Quote\Item|\PHPUnit_Framework_MockObject_MockObject $item */
-        $item = $this->getMock('Magento\Sales\Model\Quote\Item', [], [], '', false);
+        /** @var \Magento\Quote\Model\Quote\Item|\PHPUnit_Framework_MockObject_MockObject $item */
+        $item = $this->getMock('Magento\Quote\Model\Quote\Item', [], [], '', false);
         $item->expects($this->any())->method('getProduct')->will($this->returnValue($parentProduct));
         $item->expects(
             $this->any()
@@ -233,7 +233,7 @@ class ConfigurableTest extends \PHPUnit_Framework_TestCase
 
     public function testGetOptionList()
     {
-        $itemMock = $this->getMock('Magento\Sales\Model\Quote\Item\AbstractItem', [], [], '', false);
+        $itemMock = $this->getMock('Magento\Quote\Model\Quote\Item\AbstractItem', [], [], '', false);
         $this->_renderer->setItem($itemMock);
         $this->productConfigMock->expects($this->once())->method('getOptions')->with($itemMock);
         $this->_renderer->getOptionList();
@@ -244,7 +244,7 @@ class ConfigurableTest extends \PHPUnit_Framework_TestCase
         $productTags = ['catalog_product_1'];
         $product = $this->getMock('Magento\Catalog\Model\Product', [], [], '', false);
         $product->expects($this->exactly(2))->method('getIdentities')->will($this->returnValue($productTags));
-        $item = $this->getMock('Magento\Sales\Model\Quote\Item', [], [], '', false);
+        $item = $this->getMock('Magento\Quote\Model\Quote\Item', [], [], '', false);
         $item->expects($this->exactly(2))->method('getProduct')->will($this->returnValue($product));
         $this->_renderer->setItem($item);
         $this->assertEquals(array_merge($productTags, $productTags), $this->_renderer->getIdentities());
diff --git a/dev/tests/unit/testsuite/Magento/ConfigurableProduct/Controller/Adminhtml/Product/Builder/PluginTest.php b/dev/tests/unit/testsuite/Magento/ConfigurableProduct/Controller/Adminhtml/Product/Builder/PluginTest.php
index ba37c8252369683fa63604a4c9f9f73c312aea22..75c0d3ba583e2656d47dafaabeced7bab8b95cbb 100644
--- a/dev/tests/unit/testsuite/Magento/ConfigurableProduct/Controller/Adminhtml/Product/Builder/PluginTest.php
+++ b/dev/tests/unit/testsuite/Magento/ConfigurableProduct/Controller/Adminhtml/Product/Builder/PluginTest.php
@@ -111,7 +111,7 @@ class PluginTest extends \PHPUnit_Framework_TestCase
             false
         );
         $this->frontendAttrMock = $this->getMock(
-            'Magento\Sales\Model\Resource\Quote\Address\Attribute\Frontend',
+            'Magento\Quote\Model\Resource\Quote\Address\Attribute\Frontend',
             [],
             [],
             '',
diff --git a/dev/tests/unit/testsuite/Magento/ConfigurableProduct/Helper/DataTest.php b/dev/tests/unit/testsuite/Magento/ConfigurableProduct/Helper/DataTest.php
index 1a66db756cb41875afc40b1a7dd87e9e90befa9c..a311d556f3db678b722e53ad62132a128cec0a77 100644
--- a/dev/tests/unit/testsuite/Magento/ConfigurableProduct/Helper/DataTest.php
+++ b/dev/tests/unit/testsuite/Magento/ConfigurableProduct/Helper/DataTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\ConfigurableProduct\Helper;
 
 class DataTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/ConfigurableProduct/Model/Product/Type/ConfigurableTest.php b/dev/tests/unit/testsuite/Magento/ConfigurableProduct/Model/Product/Type/ConfigurableTest.php
index afbc22d2ab4fa4eaafafb1f2ad685774e2038ccc..3c42dda177637b1bea20b69162de4b84957d7f50 100644
--- a/dev/tests/unit/testsuite/Magento/ConfigurableProduct/Model/Product/Type/ConfigurableTest.php
+++ b/dev/tests/unit/testsuite/Magento/ConfigurableProduct/Model/Product/Type/ConfigurableTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\ConfigurableProduct\Model\Product\Type;
 
 /**
diff --git a/dev/tests/unit/testsuite/Magento/ConfigurableProduct/Model/Product/Type/PluginTest.php b/dev/tests/unit/testsuite/Magento/ConfigurableProduct/Model/Product/Type/PluginTest.php
index efdb6f3b60ea7e8b6e47cb93d99e3e91d21601b7..252e24e70f3ebca45cf8aa2385cea834615a2e89 100644
--- a/dev/tests/unit/testsuite/Magento/ConfigurableProduct/Model/Product/Type/PluginTest.php
+++ b/dev/tests/unit/testsuite/Magento/ConfigurableProduct/Model/Product/Type/PluginTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\ConfigurableProduct\Model\Product\Type;
 
 /**
diff --git a/dev/tests/unit/testsuite/Magento/ConfigurableProduct/Model/Product/Validator/PluginTest.php b/dev/tests/unit/testsuite/Magento/ConfigurableProduct/Model/Product/Validator/PluginTest.php
index e53e31a9e71bfbf6d003bb72410a13269f1e5fcf..618adb2c0ec09339a101f0640564de29766c9adf 100644
--- a/dev/tests/unit/testsuite/Magento/ConfigurableProduct/Model/Product/Validator/PluginTest.php
+++ b/dev/tests/unit/testsuite/Magento/ConfigurableProduct/Model/Product/Validator/PluginTest.php
@@ -326,6 +326,7 @@ class PluginTest extends \PHPUnit_Framework_TestCase
      * @param bool $isValid
      * @internal param array $attributes
      * @return \PHPUnit_Framework_MockObject_MockObject|\Magento\Catalog\Model\Product
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     private function createProduct($index, $id, $isValid = true)
     {
diff --git a/dev/tests/unit/testsuite/Magento/ConfigurableProduct/Model/Quote/Item/QuantityValidator/Initializer/Option/Plugin/ConfigurableProductTest.php b/dev/tests/unit/testsuite/Magento/ConfigurableProduct/Model/Quote/Item/QuantityValidator/Initializer/Option/Plugin/ConfigurableProductTest.php
index d7b65babca1ef9c219a4efbf3276b995122298b5..63fe1758344e6d932500f5f342e2146c7ec5f0a8 100644
--- a/dev/tests/unit/testsuite/Magento/ConfigurableProduct/Model/Quote/Item/QuantityValidator/Initializer/Option/Plugin/ConfigurableProductTest.php
+++ b/dev/tests/unit/testsuite/Magento/ConfigurableProduct/Model/Quote/Item/QuantityValidator/Initializer/Option/Plugin/ConfigurableProductTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\ConfigurableProduct\Model\Quote\Item\QuantityValidator\Initializer\Option\Plugin;
 
 class ConfigurableProductTest extends \PHPUnit_Framework_TestCase
@@ -22,7 +25,7 @@ class ConfigurableProductTest extends \PHPUnit_Framework_TestCase
         );
 
         $quoteItemMock = $this->getMock(
-            'Magento\Sales\Model\Quote\Item', ['getProductType', '__wakeup'], [], '', false
+            'Magento\Quote\Model\Quote\Item', ['getProductType', '__wakeup'], [], '', false
         );
         $quoteItemMock->expects($this->once())
             ->method('getProductType')
@@ -36,7 +39,7 @@ class ConfigurableProductTest extends \PHPUnit_Framework_TestCase
             ->method('setProductName');
 
         $optionMock = $this->getMock(
-            'Magento\Sales\Model\Quote\Item\Option', ['getProduct', '__wakeup'], [], '', false
+            'Magento\Quote\Model\Quote\Item\Option', ['getProduct', '__wakeup'], [], '', false
         );
 
         $proceed = function () use ($stockItemMock) {
diff --git a/dev/tests/unit/testsuite/Magento/ConfigurableProduct/Model/SuggestedAttributeListTest.php b/dev/tests/unit/testsuite/Magento/ConfigurableProduct/Model/SuggestedAttributeListTest.php
index b3fced22ce5914c36ee2002b5c7591fa4da34cf9..7d41bd7f67a3918f9b8dc3135e7ccae6eec7ea61 100644
--- a/dev/tests/unit/testsuite/Magento/ConfigurableProduct/Model/SuggestedAttributeListTest.php
+++ b/dev/tests/unit/testsuite/Magento/ConfigurableProduct/Model/SuggestedAttributeListTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\ConfigurableProduct\Model;
 
 class SuggestedAttributeListTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/ConfigurableProduct/Pricing/Price/AttributePriceTest.php b/dev/tests/unit/testsuite/Magento/ConfigurableProduct/Pricing/Price/AttributePriceTest.php
index 6211a2b8d6d4c5bc3a878831c7a440ea7271591f..5d88d7b9e3158528d6d018c023e34d48c8fae2eb 100644
--- a/dev/tests/unit/testsuite/Magento/ConfigurableProduct/Pricing/Price/AttributePriceTest.php
+++ b/dev/tests/unit/testsuite/Magento/ConfigurableProduct/Pricing/Price/AttributePriceTest.php
@@ -126,6 +126,9 @@ class AttributePriceTest extends \PHPUnit_Framework_TestCase
         $this->assertInstanceOf('Magento\ConfigurableProduct\Pricing\Price\AttributePrice', $object);
     }
 
+    /**
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
+     */
     public function testPrepareJsonAttributes()
     {
         $options = [];
diff --git a/dev/tests/unit/testsuite/Magento/Contact/Controller/Index/IndexTest.php b/dev/tests/unit/testsuite/Magento/Contact/Controller/Index/IndexTest.php
index 9a65b3dc4a24a6ec0555dd69d503e8956bf35585..77f1a5a81b5d889dd8948326df68e4ade00ef482 100644
--- a/dev/tests/unit/testsuite/Magento/Contact/Controller/Index/IndexTest.php
+++ b/dev/tests/unit/testsuite/Magento/Contact/Controller/Index/IndexTest.php
@@ -4,6 +4,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Contact\Controller\Index;
 
 class IndexTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Contact/Controller/IndexTest.php b/dev/tests/unit/testsuite/Magento/Contact/Controller/IndexTest.php
index 9ff953a0b0c84a81760bb145986f069b4f75fa06..26e655449859b80fca1855cd426d19c7e0a2db1e 100644
--- a/dev/tests/unit/testsuite/Magento/Contact/Controller/IndexTest.php
+++ b/dev/tests/unit/testsuite/Magento/Contact/Controller/IndexTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Contact\Controller;
 
 class IndexTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Contact/Helper/DataTest.php b/dev/tests/unit/testsuite/Magento/Contact/Helper/DataTest.php
index 3a4d656ce9349701e6ffeedb2199d148f0f01bb6..4fc132525ddb93cea4edb92969785eb3605688f9 100644
--- a/dev/tests/unit/testsuite/Magento/Contact/Helper/DataTest.php
+++ b/dev/tests/unit/testsuite/Magento/Contact/Helper/DataTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Contact\Helper;
 
 class DataTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Core/App/Router/NoRouteHandlerTest.php b/dev/tests/unit/testsuite/Magento/Core/App/Router/NoRouteHandlerTest.php
index e07bb630bb156116d2b95041e9e17ecc6acd19b5..e8abb1785539627d7bc6a824ba188bdcac9a60fb 100644
--- a/dev/tests/unit/testsuite/Magento/Core/App/Router/NoRouteHandlerTest.php
+++ b/dev/tests/unit/testsuite/Magento/Core/App/Router/NoRouteHandlerTest.php
@@ -5,6 +5,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Core\App\Router;
 
 class NoRouteHandlerTest extends \Magento\Test\BaseTestCase
diff --git a/dev/tests/unit/testsuite/Magento/Core/Helper/ThemeTest.php b/dev/tests/unit/testsuite/Magento/Core/Helper/ThemeTest.php
index f1e3d0e740a013b254136380f0778658f88ee7a3..49618259aed696df8ecfd7d4ed472a15ad294574 100644
--- a/dev/tests/unit/testsuite/Magento/Core/Helper/ThemeTest.php
+++ b/dev/tests/unit/testsuite/Magento/Core/Helper/ThemeTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Core\Helper;
 
 class ThemeTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Core/Model/Asset/ConfigTest.php b/dev/tests/unit/testsuite/Magento/Core/Model/Asset/ConfigTest.php
index ce6b16735417918a11753b6051e71f197a8d6a01..c4d8376d265f93a8d1d95edd2d6f13d2068239fb 100644
--- a/dev/tests/unit/testsuite/Magento/Core/Model/Asset/ConfigTest.php
+++ b/dev/tests/unit/testsuite/Magento/Core/Model/Asset/ConfigTest.php
@@ -5,6 +5,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Core\Model\Asset;
 
 class ConfigTest extends \Magento\Test\BaseTestCase
diff --git a/dev/tests/unit/testsuite/Magento/Core/Model/Asset/Plugin/CleanMergedJsCssTest.php b/dev/tests/unit/testsuite/Magento/Core/Model/Asset/Plugin/CleanMergedJsCssTest.php
index a017e16ad47497bcaa5581dc4b9b9ea04143eb43..38bbd0585dab14c286a7b85c543f9cc828a66ae3 100644
--- a/dev/tests/unit/testsuite/Magento/Core/Model/Asset/Plugin/CleanMergedJsCssTest.php
+++ b/dev/tests/unit/testsuite/Magento/Core/Model/Asset/Plugin/CleanMergedJsCssTest.php
@@ -5,6 +5,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Core\Model\Asset\Plugin;
 
 use Magento\Framework\App\Filesystem\DirectoryList;
diff --git a/dev/tests/unit/testsuite/Magento/Core/Model/Layout/DepersonalizePluginTest.php b/dev/tests/unit/testsuite/Magento/Core/Model/Layout/DepersonalizePluginTest.php
index 67d0ba772c37d8fd184a41c21c7e4cf501f74cf9..9f9fa70be441ebce8409c996fbd80078a26ecbee 100644
--- a/dev/tests/unit/testsuite/Magento/Core/Model/Layout/DepersonalizePluginTest.php
+++ b/dev/tests/unit/testsuite/Magento/Core/Model/Layout/DepersonalizePluginTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Core\Model\Layout;
 
 /**
diff --git a/dev/tests/unit/testsuite/Magento/Core/Model/Theme/Domain/VirtualTest.php b/dev/tests/unit/testsuite/Magento/Core/Model/Theme/Domain/VirtualTest.php
index 368c98444ee742074428993651ab994319fbe871..dd9477d7c90abc6ba113aa97baff7b0832fe4137 100644
--- a/dev/tests/unit/testsuite/Magento/Core/Model/Theme/Domain/VirtualTest.php
+++ b/dev/tests/unit/testsuite/Magento/Core/Model/Theme/Domain/VirtualTest.php
@@ -73,7 +73,6 @@ class VirtualTest extends \PHPUnit_Framework_TestCase
         $theme->setData(
             [
                 'id' => 'fixture_theme_id',
-                'theme_version' => 'fixture_theme_version',
                 'theme_title' => 'fixture_theme_title',
                 'preview_image' => 'fixture_preview_image',
                 'is_featured' => 'fixture_is_featured',
@@ -98,7 +97,6 @@ class VirtualTest extends \PHPUnit_Framework_TestCase
             [
                 'parent_id' => 'fixture_theme_id',
                 'theme_path' => null,
-                'theme_version' => 'fixture_theme_version',
                 'theme_title' => 'fixture_theme_title - Staging',
                 'preview_image' => 'fixture_preview_image',
                 'is_featured' => 'fixture_is_featured',
diff --git a/dev/tests/unit/testsuite/Magento/Core/Model/Theme/Image/PathTest.php b/dev/tests/unit/testsuite/Magento/Core/Model/Theme/Image/PathTest.php
index 73dd5f28bcb09cf5269ddb8be1827182e5a71016..0946f99a4428673dc048d988e4c9d277119018b5 100644
--- a/dev/tests/unit/testsuite/Magento/Core/Model/Theme/Image/PathTest.php
+++ b/dev/tests/unit/testsuite/Magento/Core/Model/Theme/Image/PathTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Test of image path model
  */
diff --git a/dev/tests/unit/testsuite/Magento/Core/Model/Theme/ValidationTest.php b/dev/tests/unit/testsuite/Magento/Core/Model/Theme/ValidationTest.php
index 2b582b9777c382edce782b95a966f09c55fda7be..5aaea8f25c2c8627e5e6b3276dc5fd2915898c2f 100644
--- a/dev/tests/unit/testsuite/Magento/Core/Model/Theme/ValidationTest.php
+++ b/dev/tests/unit/testsuite/Magento/Core/Model/Theme/ValidationTest.php
@@ -38,7 +38,6 @@ class ValidationTest extends \PHPUnit_Framework_TestCase
                 [
                     'theme_code' => 'Magento/iphone',
                     'theme_title' => 'Iphone',
-                    'theme_version' => '2.0.0',
                     'parent_theme' => ['default', 'default'],
                     'theme_path' => 'Magento/iphone',
                     'preview_image' => 'images/preview.png',
@@ -46,32 +45,16 @@ class ValidationTest extends \PHPUnit_Framework_TestCase
                 true,
                 [],
             ],
-            [
-                [
-                    'theme_code' => 'iphone#theme!!!!',
-                    'theme_title' => 'Iphone',
-                    'theme_version' => 'last theme version',
-                    'parent_theme' => ['default', 'default'],
-                    'theme_path' => 'magento_iphone',
-                    'preview_image' => 'images/preview.png',
-                ],
-                false,
-                [
-                    'theme_version' => ['Theme version has not compatible format.']
-                ],
-            ],
             [
                 [
                     'theme_code' => 'iphone#theme!!!!',
                     'theme_title' => '',
-                    'theme_version' => '',
                     'parent_theme' => ['default', 'default'],
                     'theme_path' => 'magento_iphone',
                     'preview_image' => 'images/preview.png',
                 ],
                 false,
                 [
-                    'theme_version' => ['Field can\'t be empty'],
                     'theme_title' => ['Field title can\'t be empty']
                 ],
             ],
diff --git a/dev/tests/unit/testsuite/Magento/Core/Model/View/DesignTest.php b/dev/tests/unit/testsuite/Magento/Core/Model/View/DesignTest.php
index d8e6b26db1304ee971360ad089b24b7369b10578..1d39b20dce769fcb868335b36e1d67250f85bed6 100644
--- a/dev/tests/unit/testsuite/Magento/Core/Model/View/DesignTest.php
+++ b/dev/tests/unit/testsuite/Magento/Core/Model/View/DesignTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Core\Model\View;
 
 class DesignTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Customer/Block/Account/Dashboard/InfoTest.php b/dev/tests/unit/testsuite/Magento/Customer/Block/Account/Dashboard/InfoTest.php
index 494a059576145e8ea0574974e2113005003081ec..1dff9e68fa72c5c0116b974ba13bdebaaeeff725 100644
--- a/dev/tests/unit/testsuite/Magento/Customer/Block/Account/Dashboard/InfoTest.php
+++ b/dev/tests/unit/testsuite/Magento/Customer/Block/Account/Dashboard/InfoTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Customer\Block\Account\Dashboard;
 
 use Magento\Framework\Exception\NoSuchEntityException;
diff --git a/dev/tests/unit/testsuite/Magento/Customer/Block/Adminhtml/Edit/Tab/AccountTest.php b/dev/tests/unit/testsuite/Magento/Customer/Block/Adminhtml/Edit/Tab/AccountTest.php
index c815cf90e997ef68bedbe9b5b085acba601cce6f..bba967cdbf8d8ebacb85c2b415430493e1708349 100644
--- a/dev/tests/unit/testsuite/Magento/Customer/Block/Adminhtml/Edit/Tab/AccountTest.php
+++ b/dev/tests/unit/testsuite/Magento/Customer/Block/Adminhtml/Edit/Tab/AccountTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Customer\Block\Adminhtml\Edit\Tab;
 
 use Magento\Customer\Api\AccountManagementInterface;
diff --git a/dev/tests/unit/testsuite/Magento/Customer/Block/Widget/DobTest.php b/dev/tests/unit/testsuite/Magento/Customer/Block/Widget/DobTest.php
index 8a25a5dfab295f43f1460fe7f7f1151a556ea63f..7c491edfbfc483b64455583ab66d7fb9bee88a9d 100644
--- a/dev/tests/unit/testsuite/Magento/Customer/Block/Widget/DobTest.php
+++ b/dev/tests/unit/testsuite/Magento/Customer/Block/Widget/DobTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Customer\Block\Widget;
 
 use Magento\Framework\Exception\NoSuchEntityException;
diff --git a/dev/tests/unit/testsuite/Magento/Customer/Block/Widget/GenderTest.php b/dev/tests/unit/testsuite/Magento/Customer/Block/Widget/GenderTest.php
index 5e5ac45b3f10c2a4731f009feb5960893cece448..5976f3033d9563c4aa83008744ddf1768a6cb4a5 100644
--- a/dev/tests/unit/testsuite/Magento/Customer/Block/Widget/GenderTest.php
+++ b/dev/tests/unit/testsuite/Magento/Customer/Block/Widget/GenderTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Customer\Block\Widget;
 
 use Magento\Customer\Api\Data\CustomerInterface;
diff --git a/dev/tests/unit/testsuite/Magento/Customer/Block/Widget/NameTest.php b/dev/tests/unit/testsuite/Magento/Customer/Block/Widget/NameTest.php
index cd2be564342facebf3a2ae3d40eb28736845ad48..4986a88c4ab0452cb8dbf920ceaeae6dedbb0ad6 100644
--- a/dev/tests/unit/testsuite/Magento/Customer/Block/Widget/NameTest.php
+++ b/dev/tests/unit/testsuite/Magento/Customer/Block/Widget/NameTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Customer\Block\Widget;
 
 use Magento\Customer\Api\Data\AttributeMetadataInterface;
@@ -409,6 +412,7 @@ class NameTest extends \PHPUnit_Framework_TestCase
      * Helper method for testing all show*() methods.
      *
      * @param array $data Customer attribute(s)
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     private function _setUpShowAttribute(array $data)
     {
diff --git a/dev/tests/unit/testsuite/Magento/Customer/Block/Widget/TaxvatTest.php b/dev/tests/unit/testsuite/Magento/Customer/Block/Widget/TaxvatTest.php
index 625a2af8f2a31edb6e811206de61952a5f85eb76..9ec8f85628191dab80c851b05ca82a118a500839 100644
--- a/dev/tests/unit/testsuite/Magento/Customer/Block/Widget/TaxvatTest.php
+++ b/dev/tests/unit/testsuite/Magento/Customer/Block/Widget/TaxvatTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Customer\Block\Widget;
 
 use Magento\Framework\Exception\NoSuchEntityException;
diff --git a/dev/tests/unit/testsuite/Magento/Customer/Controller/Account/ConfirmTest.php b/dev/tests/unit/testsuite/Magento/Customer/Controller/Account/ConfirmTest.php
index 32fb9e96846ec6a16298eeb58ee6961016f9ac67..bd6a6616f385a0f6f13473a854a5cb660c2f3dcf 100644
--- a/dev/tests/unit/testsuite/Magento/Customer/Controller/Account/ConfirmTest.php
+++ b/dev/tests/unit/testsuite/Magento/Customer/Controller/Account/ConfirmTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Customer\Controller\Account;
 
 use Magento\Customer\Helper\Address;
diff --git a/dev/tests/unit/testsuite/Magento/Customer/Controller/Account/CreatePostTest.php b/dev/tests/unit/testsuite/Magento/Customer/Controller/Account/CreatePostTest.php
index cfef2f2111e7720a0875907fbf31c374a2e6eb48..326dfd3427c802ef3116a8d3bb9c205804abb746 100644
--- a/dev/tests/unit/testsuite/Magento/Customer/Controller/Account/CreatePostTest.php
+++ b/dev/tests/unit/testsuite/Magento/Customer/Controller/Account/CreatePostTest.php
@@ -4,6 +4,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Customer\Controller\Account;
 
 use Magento\Customer\Api\AccountManagementInterface;
@@ -117,6 +120,9 @@ class CreatePostTest extends \PHPUnit_Framework_TestCase
      */
     protected $messageManagerMock;
 
+    /**
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
+     */
     protected function setUp()
     {
         /**
diff --git a/dev/tests/unit/testsuite/Magento/Customer/Controller/Account/CreateTest.php b/dev/tests/unit/testsuite/Magento/Customer/Controller/Account/CreateTest.php
index 6cf60dea206b516d11f52c634d7dfd3825e92640..202d2a4319c55eb67c7d120beb7c3dfa1b4f33c4 100644
--- a/dev/tests/unit/testsuite/Magento/Customer/Controller/Account/CreateTest.php
+++ b/dev/tests/unit/testsuite/Magento/Customer/Controller/Account/CreateTest.php
@@ -4,6 +4,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Customer\Controller\Account;
 
 class CreateTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Customer/Controller/Adminhtml/Index/ResetPasswordTest.php b/dev/tests/unit/testsuite/Magento/Customer/Controller/Adminhtml/Index/ResetPasswordTest.php
index 6b4df762a7ecd4f7135d33c7d6c566324192fec3..7dd5138256e04848cf3b09f898b9c4a1b4101caa 100644
--- a/dev/tests/unit/testsuite/Magento/Customer/Controller/Adminhtml/Index/ResetPasswordTest.php
+++ b/dev/tests/unit/testsuite/Magento/Customer/Controller/Adminhtml/Index/ResetPasswordTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Customer\Controller\Adminhtml\Index;
 
 use Magento\Customer\Api\Data\CustomerInterface;
diff --git a/dev/tests/unit/testsuite/Magento/Customer/Controller/Ajax/LoginTest.php b/dev/tests/unit/testsuite/Magento/Customer/Controller/Ajax/LoginTest.php
index 69f47ec3290bb937af368a4b73e46e8e3edfba52..0d8bb159011e8c08e5a0c2a37633c309c8286363 100644
--- a/dev/tests/unit/testsuite/Magento/Customer/Controller/Ajax/LoginTest.php
+++ b/dev/tests/unit/testsuite/Magento/Customer/Controller/Ajax/LoginTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Test customer ajax login controller
  */
diff --git a/dev/tests/unit/testsuite/Magento/Customer/Helper/Session/CurrentCustomerTest.php b/dev/tests/unit/testsuite/Magento/Customer/Helper/Session/CurrentCustomerTest.php
index 48425e87cefc42eaeb88abd0577737f734118c43..587ab8ec24e233d80d96870ffdf5a30443b82069 100644
--- a/dev/tests/unit/testsuite/Magento/Customer/Helper/Session/CurrentCustomerTest.php
+++ b/dev/tests/unit/testsuite/Magento/Customer/Helper/Session/CurrentCustomerTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Customer\Helper\Session;
 
 class CurrentCustomerTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Customer/Model/AddressTest.php b/dev/tests/unit/testsuite/Magento/Customer/Model/AddressTest.php
index e4260f8e45281e805b62e62d35a93178cd4004de..a55ada97b10de39c2f9669395df6def374b5029b 100644
--- a/dev/tests/unit/testsuite/Magento/Customer/Model/AddressTest.php
+++ b/dev/tests/unit/testsuite/Magento/Customer/Model/AddressTest.php
@@ -31,6 +31,12 @@ class AddressTest extends \PHPUnit_Framework_TestCase
      */
     protected $customerFactory;
 
+    /**
+     * @var \Magento\Customer\Model\Resource\Address | \PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $resource;
+
+
     public function setUp()
     {
         $this->objectManager = new \Magento\TestFramework\Helper\ObjectManager($this);
@@ -111,6 +117,12 @@ class AddressTest extends \PHPUnit_Framework_TestCase
         $this->assertEquals($resultValue, $this->address->getAttributes());
     }
 
+    public function testRegionId()
+    {
+        $this->address->setRegionId(1);
+        $this->assertEquals(1, $this->address->getRegionId());
+    }
+
     public function testGetEntityTypeId()
     {
         $mockEntityType = $this->getMockBuilder('Magento\Eav\Model\Entity\Type')
@@ -126,10 +138,4 @@ class AddressTest extends \PHPUnit_Framework_TestCase
 
         $this->assertEquals(self::ORIG_CUSTOMER_ID, $this->address->getEntityTypeId());
     }
-
-    public function testRegionId()
-    {
-        $this->address->setRegionId(1);
-        $this->assertEquals(1, $this->address->getRegionId());
-    }
 }
diff --git a/dev/tests/unit/testsuite/Magento/Customer/Model/Resource/AddressTest.php b/dev/tests/unit/testsuite/Magento/Customer/Model/Resource/AddressTest.php
index f87981471b7ae6cef2451d916fca40edbb119ed4..ec8a8a50763b4690bc405c8403869b560111cb87 100644
--- a/dev/tests/unit/testsuite/Magento/Customer/Model/Resource/AddressTest.php
+++ b/dev/tests/unit/testsuite/Magento/Customer/Model/Resource/AddressTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Customer\Model\Resource;
 
 use Magento\TestFramework\Helper\ObjectManager as ObjectManagerHelper;
@@ -230,7 +232,7 @@ class AddressTest extends \PHPUnit_Framework_TestCase
     /**
      * Prepare validator mock object
      *
-     * @return \Magento\Core\Model\Validator\Factory|\PHPUnit_Framework_MockObject_MockObject
+     * @return \Magento\Framework\Validator\Factory|\PHPUnit_Framework_MockObject_MockObject
      */
     protected function prepareValidatorFactory()
     {
@@ -240,7 +242,7 @@ class AddressTest extends \PHPUnit_Framework_TestCase
             ->willReturn(true);
 
         $validatorFactory = $this->getMock(
-            'Magento\Core\Model\Validator\Factory',
+            'Magento\Framework\Validator\Factory',
             ['createValidator'],
             [],
             '',
diff --git a/dev/tests/unit/testsuite/Magento/Customer/Model/Resource/GroupTest.php b/dev/tests/unit/testsuite/Magento/Customer/Model/Resource/GroupTest.php
index 018bd82a1946b219b9bb3e2924017a6d0b8d2a80..496164e7d3e30925c54ba828ba4ddfa13f555d6d 100644
--- a/dev/tests/unit/testsuite/Magento/Customer/Model/Resource/GroupTest.php
+++ b/dev/tests/unit/testsuite/Magento/Customer/Model/Resource/GroupTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Customer\Model\Resource;
 
 use Magento\TestFramework\Helper\ObjectManager as ObjectManagerHelper;
diff --git a/dev/tests/unit/testsuite/Magento/CustomerImportExport/Model/Import/CustomerCompositeTest.php b/dev/tests/unit/testsuite/Magento/CustomerImportExport/Model/Import/CustomerCompositeTest.php
index 77f0be04722cabd12d0fe0e0d737294fc5510cfa..9766f8b4dfb4b8e823af840884910c510549f15e 100644
--- a/dev/tests/unit/testsuite/Magento/CustomerImportExport/Model/Import/CustomerCompositeTest.php
+++ b/dev/tests/unit/testsuite/Magento/CustomerImportExport/Model/Import/CustomerCompositeTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\CustomerImportExport\Model\Import;
 
 use Magento\Framework\Filesystem\Driver\File;
diff --git a/dev/tests/unit/testsuite/Magento/CustomerImportExport/Model/Import/CustomerTest.php b/dev/tests/unit/testsuite/Magento/CustomerImportExport/Model/Import/CustomerTest.php
index 9a9ebcaf3c39c577af3227008e0962896289c818..8e8cd46c46f7ad1e67de38db515c7a61381b853c 100644
--- a/dev/tests/unit/testsuite/Magento/CustomerImportExport/Model/Import/CustomerTest.php
+++ b/dev/tests/unit/testsuite/Magento/CustomerImportExport/Model/Import/CustomerTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Test class for \Magento\CustomerImportExport\Model\Import\Customer
  */
diff --git a/dev/tests/unit/testsuite/Magento/DesignEditor/Controller/Varien/Router/StandardTest.php b/dev/tests/unit/testsuite/Magento/DesignEditor/Controller/Varien/Router/StandardTest.php
index eb66ffaa0a512b744641e3c1e23c81ab15ac8113..2eb10c274c9b316fe2f959d2b69cd3733b941bc7 100644
--- a/dev/tests/unit/testsuite/Magento/DesignEditor/Controller/Varien/Router/StandardTest.php
+++ b/dev/tests/unit/testsuite/Magento/DesignEditor/Controller/Varien/Router/StandardTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\DesignEditor\Controller\Varien\Router;
 
 class StandardTest extends \PHPUnit_Framework_TestCase
@@ -72,6 +75,7 @@ class StandardTest extends \PHPUnit_Framework_TestCase
      * Data provider for testMatch
      *
      * @return array
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public function matchDataProvider()
     {
diff --git a/dev/tests/unit/testsuite/Magento/Dhl/Model/CarrierTest.php b/dev/tests/unit/testsuite/Magento/Dhl/Model/CarrierTest.php
index abf0876872780d474d47bb0e17eeed6a25658f77..804432d89a236a9bb7c398f93fec79960940b1a3 100644
--- a/dev/tests/unit/testsuite/Magento/Dhl/Model/CarrierTest.php
+++ b/dev/tests/unit/testsuite/Magento/Dhl/Model/CarrierTest.php
@@ -76,12 +76,12 @@ class CarrierTest extends \PHPUnit_Framework_TestCase
 
         // rate method factory
         $rateMethodFactory = $this->getMockBuilder(
-            '\Magento\Sales\Model\Quote\Address\RateResult\MethodFactory'
+            '\Magento\Quote\Model\Quote\Address\RateResult\MethodFactory'
         )->disableOriginalConstructor()->setMethods(
             ['create']
         )->getMock();
         $rateMethod = $this->getMockBuilder(
-            'Magento\Sales\Model\Quote\Address\RateResult\Method'
+            'Magento\Quote\Model\Quote\Address\RateResult\Method'
         )->disableOriginalConstructor()->setMethods(
             ['setPrice']
         )->getMock();
@@ -239,7 +239,7 @@ class CarrierTest extends \PHPUnit_Framework_TestCase
         );
         // for setRequest
         $request = $this->_helper->getObject(
-            'Magento\Sales\Model\Quote\Address\RateRequest',
+            'Magento\Quote\Model\Quote\Address\RateRequest',
             require __DIR__ . '/_files/rates_request_data_dhl.php'
         );
         $this->assertNotEmpty($this->_model->collectRates($request)->getAllRates());
diff --git a/dev/tests/unit/testsuite/Magento/Directory/Model/Resource/Country/CollectionTest.php b/dev/tests/unit/testsuite/Magento/Directory/Model/Resource/Country/CollectionTest.php
index 5fce71af34260d55fac021ba92acadae7223d565..6ed2d9637585b8ac5f6066de6e7d5a8e8b9311c9 100644
--- a/dev/tests/unit/testsuite/Magento/Directory/Model/Resource/Country/CollectionTest.php
+++ b/dev/tests/unit/testsuite/Magento/Directory/Model/Resource/Country/CollectionTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Directory\Model\Resource\Country;
 
 class CollectionTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Downloadable/Model/ObserverTest.php b/dev/tests/unit/testsuite/Magento/Downloadable/Model/ObserverTest.php
index 728a3a42d5f0aaa2d6a3707787985c9bedfe6f6e..bfb071dabc7f76411ee5c987ec188fcc4be77cad 100644
--- a/dev/tests/unit/testsuite/Magento/Downloadable/Model/ObserverTest.php
+++ b/dev/tests/unit/testsuite/Magento/Downloadable/Model/ObserverTest.php
@@ -179,7 +179,7 @@ class ObserverTest extends \PHPUnit_Framework_TestCase
             ->method('getTypeId')
             ->willReturn($productType);
 
-        $item = $this->getMockBuilder('\Magento\Sales\Model\Quote\Item')
+        $item = $this->getMockBuilder('\Magento\Quote\Model\Quote\Item')
             ->disableOriginalConstructor()
             ->setMethods(['getProduct'])
             ->getMock();
@@ -188,7 +188,7 @@ class ObserverTest extends \PHPUnit_Framework_TestCase
             ->method('getProduct')
             ->willReturn($product);
 
-        $quote = $this->getMockBuilder('\Magento\Sales\Model\Quote')
+        $quote = $this->getMockBuilder('\Magento\Quote\Model\Quote')
             ->disableOriginalConstructor()
             ->setMethods(['getAllItems'])
             ->getMock();
diff --git a/dev/tests/unit/testsuite/Magento/Eav/Model/Attribute/Data/AbstractDataTest.php b/dev/tests/unit/testsuite/Magento/Eav/Model/Attribute/Data/AbstractDataTest.php
index dcd0396c8c4075bdac0395c7be4d08b00e4778b5..2be45254f3253432c3be106afce8cc3318b54730 100644
--- a/dev/tests/unit/testsuite/Magento/Eav/Model/Attribute/Data/AbstractDataTest.php
+++ b/dev/tests/unit/testsuite/Magento/Eav/Model/Attribute/Data/AbstractDataTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Eav\Model\Attribute\Data;
 
 class AbstractDataTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Eav/Model/Attribute/Data/FileTest.php b/dev/tests/unit/testsuite/Magento/Eav/Model/Attribute/Data/FileTest.php
index cfd756727b44aeaaadfcf9b83ef37dd96d4327e8..861eaad796a58e9fe1fd438d43742dba0eff5ea2 100644
--- a/dev/tests/unit/testsuite/Magento/Eav/Model/Attribute/Data/FileTest.php
+++ b/dev/tests/unit/testsuite/Magento/Eav/Model/Attribute/Data/FileTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Eav\Model\Attribute\Data;
 
 class FileTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Eav/Model/Attribute/Data/ImageTest.php b/dev/tests/unit/testsuite/Magento/Eav/Model/Attribute/Data/ImageTest.php
index 062f984267f962f7b186ce8c9a15dc43b2b54703..cee50b4230c7aa6d1e2d60de11b2193a3f212f43 100644
--- a/dev/tests/unit/testsuite/Magento/Eav/Model/Attribute/Data/ImageTest.php
+++ b/dev/tests/unit/testsuite/Magento/Eav/Model/Attribute/Data/ImageTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Eav\Model\Attribute\Data;
 
 class ImageTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Eav/Model/AttributeManagementTest.php b/dev/tests/unit/testsuite/Magento/Eav/Model/AttributeManagementTest.php
index fed7d5d977bc3e855a2d4e087f02815d74f203f8..62a1032d5bc738117c0e428bf64b004f9f65cc05 100644
--- a/dev/tests/unit/testsuite/Magento/Eav/Model/AttributeManagementTest.php
+++ b/dev/tests/unit/testsuite/Magento/Eav/Model/AttributeManagementTest.php
@@ -5,6 +5,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Eav\Model;
 
 use Magento\Framework\Exception\NoSuchEntityException;
diff --git a/dev/tests/unit/testsuite/Magento/Eav/Model/Entity/Attribute/Source/BooleanTest.php b/dev/tests/unit/testsuite/Magento/Eav/Model/Entity/Attribute/Source/BooleanTest.php
index f35715418935e9ab835d30b4fab40ad8ed479739..a9a07a925c3708a8b61a1c0e64bc35020d989e3e 100644
--- a/dev/tests/unit/testsuite/Magento/Eav/Model/Entity/Attribute/Source/BooleanTest.php
+++ b/dev/tests/unit/testsuite/Magento/Eav/Model/Entity/Attribute/Source/BooleanTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Eav\Model\Entity\Attribute\Source;
 
 use Magento\TestFramework\Helper\ObjectManager;
diff --git a/dev/tests/unit/testsuite/Magento/Eav/Model/Resource/Attribute/CollectionTest.php b/dev/tests/unit/testsuite/Magento/Eav/Model/Resource/Attribute/CollectionTest.php
index 8b4d1557541a9f1b8db1b90431573dd1488fe6d0..dcbb61434b3e9db4636cad53128e555319ebac04 100644
--- a/dev/tests/unit/testsuite/Magento/Eav/Model/Resource/Attribute/CollectionTest.php
+++ b/dev/tests/unit/testsuite/Magento/Eav/Model/Resource/Attribute/CollectionTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Eav\Model\Resource\Attribute;
 
 class CollectionTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Eav/Model/Resource/Entity/AttributeTest.php b/dev/tests/unit/testsuite/Magento/Eav/Model/Resource/Entity/AttributeTest.php
index bb9e4f7e1f4096a567615019ea2a1b7e867b58d1..1b18f8abfaffcf87efa4e7ca17172272782f69d8 100644
--- a/dev/tests/unit/testsuite/Magento/Eav/Model/Resource/Entity/AttributeTest.php
+++ b/dev/tests/unit/testsuite/Magento/Eav/Model/Resource/Entity/AttributeTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Eav\Model\Resource\Entity;
 
 class AttributeTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Eav/Plugin/Model/Resource/Entity/AttributeTest.php b/dev/tests/unit/testsuite/Magento/Eav/Plugin/Model/Resource/Entity/AttributeTest.php
index c33f650d7870b2958d8ba96bbe3893d490c87d53..595d38f50566191e9dae58822e12d29dfef27445 100644
--- a/dev/tests/unit/testsuite/Magento/Eav/Plugin/Model/Resource/Entity/AttributeTest.php
+++ b/dev/tests/unit/testsuite/Magento/Eav/Plugin/Model/Resource/Entity/AttributeTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Eav\Plugin\Model\Resource\Entity;
 
 use Magento\TestFramework\Helper\ObjectManager;
diff --git a/dev/tests/unit/testsuite/Magento/Email/Block/Adminhtml/Template/PreviewTest.php b/dev/tests/unit/testsuite/Magento/Email/Block/Adminhtml/Template/PreviewTest.php
index 47cfc50804c01194f1dc8a703831a78ee0c711f1..fe240f2422bde4758f769f8d73f56257fff19446 100644
--- a/dev/tests/unit/testsuite/Magento/Email/Block/Adminhtml/Template/PreviewTest.php
+++ b/dev/tests/unit/testsuite/Magento/Email/Block/Adminhtml/Template/PreviewTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Email\Block\Adminhtml\Template;
 
 class PreviewTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Email/Model/TemplateTest.php b/dev/tests/unit/testsuite/Magento/Email/Model/TemplateTest.php
index 7ff2358c4f2418b84133c905af8d97a756a2532c..f63b91e5ea668c01c7e135ebc1affea073fc133f 100644
--- a/dev/tests/unit/testsuite/Magento/Email/Model/TemplateTest.php
+++ b/dev/tests/unit/testsuite/Magento/Email/Model/TemplateTest.php
@@ -30,7 +30,7 @@ class TemplateTest extends \PHPUnit_Framework_TestCase
                 $this->getMock('Magento\Framework\Model\Context', [], [], '', false),
                 $this->getMock('Magento\Core\Model\View\Design', [], [], '', false),
                 $this->getMock('Magento\Framework\Registry', [], [], '', false),
-                $this->getMock('Magento\Core\Model\App\Emulation', [], [], '', false),
+                $this->getMock('Magento\Store\Model\App\Emulation', [], [], '', false),
                 $this->getMock('Magento\Store\Model\StoreManager', [], [], '', false),
                 $this->getMock('Magento\Framework\Filesystem', [], [], '', false),
                 $this->getMock('Magento\Framework\View\Asset\Repository', [], [], '', false),
diff --git a/dev/tests/unit/testsuite/Magento/Fedex/Model/CarrierTest.php b/dev/tests/unit/testsuite/Magento/Fedex/Model/CarrierTest.php
index 250c4274b614d53a2ae15c501e1fec4dc20474db..a9c8534c2f270114c6076a6c7f02dd254097192a 100644
--- a/dev/tests/unit/testsuite/Magento/Fedex/Model/CarrierTest.php
+++ b/dev/tests/unit/testsuite/Magento/Fedex/Model/CarrierTest.php
@@ -59,12 +59,12 @@ class CarrierTest extends \PHPUnit_Framework_TestCase
                 }
             );
         $rateMethod = $this->getMock(
-            'Magento\Sales\Model\Quote\Address\RateResult\Method',
+            'Magento\Quote\Model\Quote\Address\RateResult\Method',
             null,
             ['priceCurrency' => $priceCurrency]
         );
         $rateMethodFactory = $this->getMock(
-            'Magento\Sales\Model\Quote\Address\RateResult\MethodFactory',
+            'Magento\Quote\Model\Quote\Address\RateResult\MethodFactory',
             ['create'],
             [],
             '',
@@ -77,7 +77,7 @@ class CarrierTest extends \PHPUnit_Framework_TestCase
             [
                 'scopeConfig' => $scopeConfig,
                 'rateErrorFactory' =>
-                    $this->getMock('Magento\Sales\Model\Quote\Address\RateResult\ErrorFactory', [], [], '', false),
+                    $this->getMock('Magento\Quote\Model\Quote\Address\RateResult\ErrorFactory', [], [], '', false),
                 'logger' => $this->getMock('Psr\Log\LoggerInterface'),
                 'xmlElFactory' => $this->getMock('Magento\Shipping\Model\Simplexml\ElementFactory', [], [], '', false),
                 'rateFactory' => $rateFactory,
@@ -128,7 +128,7 @@ class CarrierTest extends \PHPUnit_Framework_TestCase
         $this->_model->expects($this->any())->method('_getCachedQuotes')->will(
             $this->returnValue(serialize($response))
         );
-        $request = $this->getMock('Magento\Sales\Model\Quote\Address\RateRequest', [], [], '', false);
+        $request = $this->getMock('Magento\Quote\Model\Quote\Address\RateRequest', [], [], '', false);
         foreach ($this->_model->collectRates($request)->getAllRates() as $allRates) {
             $this->assertEquals($expected, $allRates->getData('cost'));
         }
diff --git a/dev/tests/unit/testsuite/Magento/Framework/App/Action/ActionTest.php b/dev/tests/unit/testsuite/Magento/Framework/App/Action/ActionTest.php
index fe97c3493894a6a36ad5344231f0d932c9bad783..ff35c7bc3f63f1db13d0dd109e406caa6cd08824 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/App/Action/ActionTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/App/Action/ActionTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\App\Action;
 
 use Magento\TestFramework\Helper\ObjectManager as ObjectManagerHelper;
diff --git a/dev/tests/unit/testsuite/Magento/Framework/App/AreaListTest.php b/dev/tests/unit/testsuite/Magento/Framework/App/AreaListTest.php
index 4e5fbf432dcdd1bb26af8d69229ccbcd72be9818..7ff04a056c152b287132740763511918b7017a1a 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/App/AreaListTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/App/AreaListTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\App;
 
 class AreaListTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Framework/App/BootstrapTest.php b/dev/tests/unit/testsuite/Magento/Framework/App/BootstrapTest.php
index 8b6623f6a15e5d24553fb4b96b4fc809cc814a28..e75b7b92ca79545033c66d3ece84f9eeb97cd4b2 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/App/BootstrapTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/App/BootstrapTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\App;
 
 use Magento\Framework\App\Filesystem\DirectoryList;
diff --git a/dev/tests/unit/testsuite/Magento/Framework/App/Cache/ManagerAppTest.php b/dev/tests/unit/testsuite/Magento/Framework/App/Cache/ManagerAppTest.php
index 0fb3c1c84d2a96462bd39cb368df311844c35017..e382ad0ebc5ffadbc155ec66df3f5face5073123 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/App/Cache/ManagerAppTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/App/Cache/ManagerAppTest.php
@@ -32,13 +32,17 @@ class ManagerAppTest extends \PHPUnit_Framework_TestCase
 
     public function testLaunchStatus()
     {
+        $requestArgs = [
+            ManagerApp::KEY_STATUS => true
+        ];
+
         $this->response->expects($this->once())
             ->method('setBody')
             ->with(
                 $this->matches("Current status:%afoo: 1%abar: 1%abaz: 0")
             );
 
-        $model = new ManagerApp($this->cacheManager, $this->response, []);
+        $model = new ManagerApp($this->cacheManager, $this->response, $requestArgs);
         $model->launch();
     }
 
@@ -58,7 +62,7 @@ class ManagerAppTest extends \PHPUnit_Framework_TestCase
         $this->response->expects($this->once())
             ->method('setBody')
             ->with(
-                $this->matches("Changed cache status:%abaz: 0 -> 1%aCleaned cache types: baz%a")
+                $this->matches("Changed cache status:\n%abaz: 0 -> 1\nCleaned cache types:\nbaz")
             );
 
         $model = new ManagerApp($this->cacheManager, $this->response, $requestArgs);
@@ -80,7 +84,7 @@ class ManagerAppTest extends \PHPUnit_Framework_TestCase
         $this->response->expects($this->once())
             ->method('setBody')
             ->with(
-                $this->matches("Changed cache status:%abaz: 1 -> 0%a%a")
+                $this->matches("Changed cache status:\n%abaz: 1 -> 0\n")
             );
 
         $model = new ManagerApp($this->cacheManager, $this->response, $requestArgs);
@@ -103,7 +107,7 @@ class ManagerAppTest extends \PHPUnit_Framework_TestCase
         $this->response->expects($this->once())
             ->method('setBody')
             ->with(
-                $this->matches("Flushed cache types: foo, bar%a")
+                $this->matches("Flushed cache types:\nfoo\nbar")
             );
 
         $model = new ManagerApp($this->cacheManager, $this->response, $requestArgs);
@@ -126,7 +130,7 @@ class ManagerAppTest extends \PHPUnit_Framework_TestCase
         $this->response->expects($this->once())
             ->method('setBody')
             ->with(
-                $this->matches("Cleaned cache types: foo, bar%a")
+                $this->matches("Cleaned cache types:\nfoo\nbar")
             );
 
         $model = new ManagerApp($this->cacheManager, $this->response, $requestArgs);
@@ -152,7 +156,7 @@ class ManagerAppTest extends \PHPUnit_Framework_TestCase
         $this->response->expects($this->once())
             ->method('setBody')
             ->with(
-                $this->matches("Changed cache status:%afoo: 0 -> 1%aCleaned cache types: foo, bar%a")
+                $this->matches("Changed cache status:\n%afoo: 0 -> 1\nCleaned cache types:\nfoo\nbar")
             );
 
         $model = new ManagerApp($this->cacheManager, $this->response, $requestArgs);
@@ -179,7 +183,7 @@ class ManagerAppTest extends \PHPUnit_Framework_TestCase
         $this->response->expects($this->once())
             ->method('setBody')
             ->with(
-                $this->matches("Changed cache status:%abaz: 0 -> 1%aFlushed cache types: foo, baz%a")
+                $this->matches("Changed cache status:\n%abaz: 0 -> 1%aFlushed cache types:\nfoo\nbaz")
             );
 
         $model = new ManagerApp($this->cacheManager, $this->response, $requestArgs);
diff --git a/dev/tests/unit/testsuite/Magento/Framework/App/ObjectManager/ConfigLoaderTest.php b/dev/tests/unit/testsuite/Magento/Framework/App/ObjectManager/ConfigLoaderTest.php
index 7df5ce2fd7fc620d78114555d99ace847470a125..8b0716f74fefc290a6fce2957651c5a76d7a245f 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/App/ObjectManager/ConfigLoaderTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/App/ObjectManager/ConfigLoaderTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\App\ObjectManager;
 
 class ConfigLoaderTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Framework/App/Request/HttpTest.php b/dev/tests/unit/testsuite/Magento/Framework/App/Request/HttpTest.php
index d8c55f972051af092a12da2fabbe918853bb7fc4..06eb42dde552fcc622baab9ef2675604e46cdccd 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/App/Request/HttpTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/App/Request/HttpTest.php
@@ -4,6 +4,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\App\Request;
 
 use Magento\Framework\App\Request\Http as Request;
diff --git a/dev/tests/unit/testsuite/Magento/Framework/App/ResourceTest.php b/dev/tests/unit/testsuite/Magento/Framework/App/ResourceTest.php
index 3c3b5ee00004a7b49b31e1b1dd573f5b5a1aebdb..a46c8e31ab9fd275a3b3c9f83de46c5f4c72c028 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/App/ResourceTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/App/ResourceTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\App;
 
 class ResourceTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Framework/App/StaticResourceTest.php b/dev/tests/unit/testsuite/Magento/Framework/App/StaticResourceTest.php
index b00c2f73bbd42acd76fd4a633d45296f520bca15..96f474e92fa55bd016c6ab1866d7ca1d9f10df65 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/App/StaticResourceTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/App/StaticResourceTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\App;
 
 class StaticResourceTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Framework/App/View/Asset/PublisherTest.php b/dev/tests/unit/testsuite/Magento/Framework/App/View/Asset/PublisherTest.php
index 4b3658be21981a6966f106cddeb526eee19a55ea..6d5c40ea63d013761e9fe36364cee1db4d29c641 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/App/View/Asset/PublisherTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/App/View/Asset/PublisherTest.php
@@ -7,6 +7,7 @@
 namespace Magento\Framework\App\View\Asset;
 
 use Magento\Framework\App\Filesystem\DirectoryList;
+use Magento\Framework\Filesystem\DriverPool;
 
 class PublisherTest extends \PHPUnit_Framework_TestCase
 {
@@ -56,8 +57,8 @@ class PublisherTest extends \PHPUnit_Framework_TestCase
         $this->filesystem->expects($this->any())
             ->method('getDirectoryWrite')
             ->will($this->returnValueMap([
-                [DirectoryList::ROOT, $this->rootDirWrite],
-                [DirectoryList::STATIC_VIEW, $this->staticDirWrite],
+                [DirectoryList::ROOT, DriverPool::FILE, $this->rootDirWrite],
+                [DirectoryList::STATIC_VIEW, DriverPool::FILE, $this->staticDirWrite],
             ]));
     }
 
diff --git a/dev/tests/unit/testsuite/Magento/Framework/Autoload/ClassLoaderWrapperTest.php b/dev/tests/unit/testsuite/Magento/Framework/Autoload/ClassLoaderWrapperTest.php
index 50bd31912845fb71434905f96322cb383c9c4207..bac8e50c417f27cff857ad1cbb694a4c0d0f79ee 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/Autoload/ClassLoaderWrapperTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/Autoload/ClassLoaderWrapperTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Autoload;
 
 use Composer\Autoload\ClassLoader;
diff --git a/dev/tests/unit/testsuite/Magento/Framework/Cache/CoreTest.php b/dev/tests/unit/testsuite/Magento/Framework/Cache/CoreTest.php
index c0aed68861414402364d001cae1ae0e8d6cd79a5..ebf8885193066e14252f630f7150964c7ea23240 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/Cache/CoreTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/Cache/CoreTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * \Magento\Framework\Cache\Core test case
  */
diff --git a/dev/tests/unit/testsuite/Magento/Framework/Code/Reader/_files/ClassesForArgumentsReader.php b/dev/tests/unit/testsuite/Magento/Framework/Code/Reader/_files/ClassesForArgumentsReader.php
index 58c4d4761d89b98ba8b42f3b9b4ffec34d0c9a33..9987087c3d3ee84189eccab7a076f3ec2dc51972 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/Code/Reader/_files/ClassesForArgumentsReader.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/Code/Reader/_files/ClassesForArgumentsReader.php
@@ -4,6 +4,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 class ClassWithAllArgumentTypes
 {
     const DEFAULT_VALUE = 'Const Value';
diff --git a/dev/tests/unit/testsuite/Magento/Framework/Code/Validator/ConstructorArgumentTypesTest.php b/dev/tests/unit/testsuite/Magento/Framework/Code/Validator/ConstructorArgumentTypesTest.php
index 0de3d403d5885e1c0bc2fca674fece3b5b8b069e..090f0e015985c42b63fab89c8632103016e18601 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/Code/Validator/ConstructorArgumentTypesTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/Code/Validator/ConstructorArgumentTypesTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Code\Validator;
 
 class ConstructorArgumentTypesTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Framework/Code/Validator/_files/ClassesForArgumentSequence.php b/dev/tests/unit/testsuite/Magento/Framework/Code/Validator/_files/ClassesForArgumentSequence.php
index 4374a707577e8bc40a0dfb6b934ad2a72b9ae252..2351fea354730611502c147b1e455d956d6ef622 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/Code/Validator/_files/ClassesForArgumentSequence.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/Code/Validator/_files/ClassesForArgumentSequence.php
@@ -4,6 +4,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace ArgumentSequence;
 
 class ContextObject implements \Magento\Framework\ObjectManager\ContextInterface
diff --git a/dev/tests/unit/testsuite/Magento/Framework/Code/Validator/_files/ClassesForConstructorIntegrity.php b/dev/tests/unit/testsuite/Magento/Framework/Code/Validator/_files/ClassesForConstructorIntegrity.php
index 0a4e6d30be129e70c0f1973a8d37d7bf4d006da6..a2a0dca965eefa392e9623a658c3667b0696389b 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/Code/Validator/_files/ClassesForConstructorIntegrity.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/Code/Validator/_files/ClassesForConstructorIntegrity.php
@@ -4,6 +4,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 class ClassA
 {
 }
diff --git a/dev/tests/unit/testsuite/Magento/Framework/Code/Validator/_files/ClassesForContextAggregation.php b/dev/tests/unit/testsuite/Magento/Framework/Code/Validator/_files/ClassesForContextAggregation.php
index 40f13a0ae358a99148840327f5d60466df13c336..93cb41d540a7142106392eee6400f587f76769f7 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/Code/Validator/_files/ClassesForContextAggregation.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/Code/Validator/_files/ClassesForContextAggregation.php
@@ -4,6 +4,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 class ClassFirst
 {
 }
diff --git a/dev/tests/unit/testsuite/Magento/Framework/Code/Validator/_files/ClassesForTypeDuplication.php b/dev/tests/unit/testsuite/Magento/Framework/Code/Validator/_files/ClassesForTypeDuplication.php
index e6d060cf06419cd9d28e2150e133e3d1a7414df9..ff245498d073626dc411c088b1de05f3a3db82f9 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/Code/Validator/_files/ClassesForTypeDuplication.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/Code/Validator/_files/ClassesForTypeDuplication.php
@@ -4,6 +4,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace TypeDuplication;
 
 interface ArgumentInterface
diff --git a/dev/tests/unit/testsuite/Magento/Framework/Config/Composer/PackageTest.php b/dev/tests/unit/testsuite/Magento/Framework/Config/Composer/PackageTest.php
index d03df69dee1d9ec97b85fd9fbc23d58a35e9dab4..f932a3ea151fcfb1635b950782577ac45ad1a69f 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/Config/Composer/PackageTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/Config/Composer/PackageTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Config\Composer;
 
 class PackageTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Framework/Config/DataTest.php b/dev/tests/unit/testsuite/Magento/Framework/Config/DataTest.php
index 90be29ca4621e472238cb5f51f03d434aca937f8..ef432cbfd3c7aa374dadbae4ca9884b6e4bf5cca 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/Config/DataTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/Config/DataTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Config;
 
 class DataTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Framework/Config/ThemeTest.php b/dev/tests/unit/testsuite/Magento/Framework/Config/ThemeTest.php
index 2a91e6d5452e110978cf512daf51c06b0fef3c80..862406123e8ea12f4c19997a28b10dd63f09b6b2 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/Config/ThemeTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/Config/ThemeTest.php
@@ -63,7 +63,6 @@ class ThemeTest extends \PHPUnit_Framework_TestCase
                 'configContent' => file_get_contents(__DIR__ . '/_files/area/' . $themePath . '/theme.xml')
             ]
         );
-        $this->assertSame($expected['version'], $config->getThemeVersion());
         $this->assertSame($expected['media'], $config->getMedia());
         $this->assertSame($expected['title'], $config->getThemeTitle());
         $this->assertSame($expected['parent'], $config->getParentTheme());
@@ -78,7 +77,6 @@ class ThemeTest extends \PHPUnit_Framework_TestCase
             [
                 'default_default',
                 [[
-                    'version' => '0.1.0',
                     'media' => ['preview_image' => 'media/default_default.jpg'],
                     'title' => 'Default',
                     'parent' => null,
@@ -86,7 +84,6 @@ class ThemeTest extends \PHPUnit_Framework_TestCase
             [
                 'default_test',
                 [[
-                    'version' => '0.1.1',
                     'media' => ['preview_image' => ''],
                     'title' => 'Test',
                     'parent' => ['default_default'],
@@ -94,7 +91,6 @@ class ThemeTest extends \PHPUnit_Framework_TestCase
             [
                 'default_test2',
                 [[
-                    'version' => '0.1.2',
                     'media' => ['preview_image' => ''],
                     'title' => 'Test2',
                     'parent' => ['default_test'],
@@ -102,7 +98,6 @@ class ThemeTest extends \PHPUnit_Framework_TestCase
             [
                 'test_default',
                 [[
-                    'version' => '0.1.3',
                     'media' => ['preview_image' => 'media/test_default.jpg'],
                     'title' => 'Default',
                     'parent' => null,
@@ -110,7 +105,6 @@ class ThemeTest extends \PHPUnit_Framework_TestCase
             [
                 'test_external_package_descendant',
                 [[
-                    'version' => '0.1.4',
                     'media' => ['preview_image' => ''],
                     'title' => 'Default',
                     'parent' => ['default_test2'],
diff --git a/dev/tests/unit/testsuite/Magento/Framework/Config/XsdTest.php b/dev/tests/unit/testsuite/Magento/Framework/Config/XsdTest.php
index 8431032e83cea2e18559792004c09c910a3550b6..45bee3e23a9679cb39622fe20068a023308e0eaf 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/Config/XsdTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/Config/XsdTest.php
@@ -34,6 +34,6 @@ class XsdTest extends \PHPUnit_Framework_TestCase
      */
     public function invalidXmlFileDataProvider()
     {
-        return [['view.xsd', 'view_invalid.xml', 1], ['theme.xsd', 'theme_invalid.xml', 0]];
+        return [['view.xsd', 'view_invalid.xml', 1], ['theme.xsd', 'theme_invalid.xml', 1]];
     }
 }
diff --git a/dev/tests/unit/testsuite/Magento/Framework/Config/_files/area/default_default/theme.xml b/dev/tests/unit/testsuite/Magento/Framework/Config/_files/area/default_default/theme.xml
index 3930fb335bec8a7c7f36c3137553337b9d34395d..f4d680fbb1926d82712f874db24c0fc7c36e79b9 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/Config/_files/area/default_default/theme.xml
+++ b/dev/tests/unit/testsuite/Magento/Framework/Config/_files/area/default_default/theme.xml
@@ -7,7 +7,6 @@
 -->
 <theme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../../../../../lib/internal/Magento/Framework/Config/etc/theme.xsd">
     <title>Default</title>
-    <version>0.1.0</version>
     <media>
         <preview_image>media/default_default.jpg</preview_image>
     </media>
diff --git a/dev/tests/unit/testsuite/Magento/Framework/Config/_files/area/default_test/theme.xml b/dev/tests/unit/testsuite/Magento/Framework/Config/_files/area/default_test/theme.xml
index a8692cd4646dc63be9535f12d4437459fc83ed93..ff8150ba5a531728a5c631caa8dd1a3b074a0ed3 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/Config/_files/area/default_test/theme.xml
+++ b/dev/tests/unit/testsuite/Magento/Framework/Config/_files/area/default_test/theme.xml
@@ -7,7 +7,6 @@
 -->
 <theme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../../../../../lib/internal/Magento/Framework/Config/etc/theme.xsd">
     <title>Test</title>
-    <version>0.1.1</version>
     <parent>default_default</parent>
     <media>
         <preview_image />
diff --git a/dev/tests/unit/testsuite/Magento/Framework/Config/_files/area/default_test2/theme.xml b/dev/tests/unit/testsuite/Magento/Framework/Config/_files/area/default_test2/theme.xml
index 706a0bc5de051ff6481c51908c5c5e6e70467ae4..20544c5878ee96f623d0839c89cfb5cae521aa36 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/Config/_files/area/default_test2/theme.xml
+++ b/dev/tests/unit/testsuite/Magento/Framework/Config/_files/area/default_test2/theme.xml
@@ -7,6 +7,5 @@
 -->
 <theme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../../../../../lib/internal/Magento/Framework/Config/etc/theme.xsd">
     <title>Test2</title>
-    <version>0.1.2</version>
     <parent>default_test</parent>
 </theme>
diff --git a/dev/tests/unit/testsuite/Magento/Framework/Config/_files/area/test_default/theme.xml b/dev/tests/unit/testsuite/Magento/Framework/Config/_files/area/test_default/theme.xml
index f2aaf72742db16c8e1efb10f09217907e44e40c4..5e1f675373a7db9ea587b5e9d31837cad5afa57b 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/Config/_files/area/test_default/theme.xml
+++ b/dev/tests/unit/testsuite/Magento/Framework/Config/_files/area/test_default/theme.xml
@@ -7,7 +7,6 @@
 -->
 <theme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../../../../../lib/internal/Magento/Framework/Config/etc/theme.xsd">
     <title>Default</title>
-    <version>0.1.3</version>
     <media>
         <preview_image>media/test_default.jpg</preview_image>
     </media>
diff --git a/dev/tests/unit/testsuite/Magento/Framework/Config/_files/area/test_external_package_descendant/theme.xml b/dev/tests/unit/testsuite/Magento/Framework/Config/_files/area/test_external_package_descendant/theme.xml
index e608e62cdaebd82bc0af281feb0d4c96fcc2aa69..c0c8d6b4ce5f98f8de98921f0d9a149c7ed01554 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/Config/_files/area/test_external_package_descendant/theme.xml
+++ b/dev/tests/unit/testsuite/Magento/Framework/Config/_files/area/test_external_package_descendant/theme.xml
@@ -7,6 +7,5 @@
 -->
 <theme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../../../../../lib/internal/Magento/Framework/Config/etc/theme.xsd">
     <title>Default</title>
-    <version>0.1.4</version>
     <parent>default_test2</parent>
 </theme>
diff --git a/dev/tests/unit/testsuite/Magento/Framework/DB/AbstractMapperTest.php b/dev/tests/unit/testsuite/Magento/Framework/DB/AbstractMapperTest.php
index e28c03d36106e46bcde357a81c5cf768512fff9d..be23023b85c89a6b5f342c1f73b854c70a2cd7e5 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/DB/AbstractMapperTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/DB/AbstractMapperTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\DB;
 
 /**
diff --git a/dev/tests/unit/testsuite/Magento/Framework/DB/Adapter/Pdo/MysqlTest.php b/dev/tests/unit/testsuite/Magento/Framework/DB/Adapter/Pdo/MysqlTest.php
index e22d3a334d854ea01de5b7869c472d5b8e03d874..1b1c50685df127ea3859602291c8b4307de93588 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/DB/Adapter/Pdo/MysqlTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/DB/Adapter/Pdo/MysqlTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * \Magento\Framework\DB\Adapter\Pdo\Mysql class test
  */
diff --git a/dev/tests/unit/testsuite/Magento/Framework/Data/Collection/DbTest.php b/dev/tests/unit/testsuite/Magento/Framework/Data/Collection/DbTest.php
index e4e04f216a07226c21fe1e5e02d83edb11acd764..3bbb57d093b01d4f70463a7de19fd5b335043238 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/Data/Collection/DbTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/Data/Collection/DbTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Data\Collection;
 
 class DbTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Framework/Data/Form/Element/AbstractElementTest.php b/dev/tests/unit/testsuite/Magento/Framework/Data/Form/Element/AbstractElementTest.php
index 06608c1f43bc22671c3760cd5d6a5eba02ebe997..a65be33f106bd60b7b771e24eba4fb05908c2e3e 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/Data/Form/Element/AbstractElementTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/Data/Form/Element/AbstractElementTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Tests for \Magento\Framework\Data\Form\Element\AbstractElement
  */
diff --git a/dev/tests/unit/testsuite/Magento/Framework/File/CsvTest.php b/dev/tests/unit/testsuite/Magento/Framework/File/CsvTest.php
index f013ad13cfb7ce5b4f2a7ef451b46fda5c906d05..80c360d50d854bafd11c2186a53ce3f782761b04 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/File/CsvTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/File/CsvTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Test class for \Magento\Framework\File\Csv.
  */
diff --git a/dev/tests/unit/testsuite/Magento/Framework/Filesystem/Directory/ReadTest.php b/dev/tests/unit/testsuite/Magento/Framework/Filesystem/Directory/ReadTest.php
index b84c08e9a72c529606b33a3d4fdf4a857700222c..640724c6bb59081771f676b8a4bc27cf35985b90 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/Filesystem/Directory/ReadTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/Filesystem/Directory/ReadTest.php
@@ -77,7 +77,7 @@ class ReadTest extends \PHPUnit_Framework_TestCase
         $this->assertEquals(['some-stat-data'], $this->read->stat('correct-path'));
     }
 
-    public function testReadFileNoProtocol()
+    public function testReadFile()
     {
         $path = 'filepath';
         $flag = 'flag';
@@ -95,32 +95,4 @@ class ReadTest extends \PHPUnit_Framework_TestCase
 
         $this->assertEquals($contents, $this->read->readFile($path, $flag, $context));
     }
-
-    public function testReadFileCustomProtocol()
-    {
-        $path = 'filepath';
-        $flag = 'flag';
-        $context = 'context';
-        $protocol = 'ftp';
-        $contents = 'contents';
-
-        $fileMock = $this->getMock('Magento\Framework\Filesystem\File\Read', [], [], '', false);
-        $fileMock->expects($this->once())
-            ->method('readAll')
-            ->with($flag, $context)
-            ->will($this->returnValue($contents));
-
-        $this->driver->expects($this->once())
-            ->method('getAbsolutePath')
-            ->with($this->path, $path, $protocol)
-            ->will($this->returnValue($path));
-        $this->driver->expects($this->never())
-            ->method('fileGetContents');
-        $this->fileFactory->expects($this->once())
-            ->method('create')
-            ->with($path, $protocol, $this->driver)
-            ->will($this->returnValue($fileMock));
-
-        $this->assertEquals($contents, $this->read->readFile($path, $flag, $context, $protocol));
-    }
 }
diff --git a/dev/tests/unit/testsuite/Magento/Framework/Filesystem/File/ReadFactoryTest.php b/dev/tests/unit/testsuite/Magento/Framework/Filesystem/File/ReadFactoryTest.php
index f41817b6cf3c459859461727f6362df7ece8599c..41f52ea79834c3be4f8369397fb79afebf2e50c5 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/Filesystem/File/ReadFactoryTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/Filesystem/File/ReadFactoryTest.php
@@ -12,45 +12,25 @@ use Magento\Framework\Filesystem\DriverPool;
  */
 class ReadFactoryTest extends \PHPUnit_Framework_TestCase
 {
-    /**
-     * @param string|null $protocol
-     * @param \PHPUnit_Framework_MockObject_MockObject|null $driver
-     * @dataProvider createProvider
-     */
-    public function testCreate($protocol, $driver)
+    public function testCreate()
     {
         $driverPool = $this->getMock('Magento\Framework\Filesystem\DriverPool', ['getDriver']);
-        if ($protocol) {
-            $driverMock = $this->getMockForAbstractClass('Magento\Framework\Filesystem\DriverInterface');
-            $driverMock->expects($this->any())->method('isExists')->willReturn(true);
-            $driverPool->expects($this->once())->method('getDriver')->willReturn($driverMock);
-        } else {
-            $driverPool->expects($this->never())->method('getDriver');
-        }
-        $factory = new ReadFactory($driverPool);
-        $result = $factory->create('path', $protocol, $driver);
-        $this->assertInstanceOf('Magento\Framework\Filesystem\File\Read', $result);
-    }
-
-    /**
-     * @return array
-     */
-    public function createProvider()
-    {
+        $driverPool->expects($this->never())->method('getDriver');
         $driver = $this->getMockForAbstractClass('Magento\Framework\Filesystem\DriverInterface');
         $driver->expects($this->any())->method('isExists')->willReturn(true);
-        return [
-            [null, $driver],
-            ['custom_protocol', null]
-        ];
+        $factory = new ReadFactory($driverPool);
+        $result = $factory->create('path', $driver);
+        $this->assertInstanceOf('Magento\Framework\Filesystem\File\Read', $result);
     }
 
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testCreateException()
+    public function testCreateWithDriverCode()
     {
-        $factory = new ReadFactory(new DriverPool());
-        $factory->create('path');
+        $driverPool = $this->getMock('Magento\Framework\Filesystem\DriverPool', ['getDriver']);
+        $driverMock = $this->getMockForAbstractClass('Magento\Framework\Filesystem\DriverInterface');
+        $driverMock->expects($this->any())->method('isExists')->willReturn(true);
+        $driverPool->expects($this->once())->method('getDriver')->willReturn($driverMock);
+        $factory = new ReadFactory($driverPool);
+        $result = $factory->create('path', 'driverCode');
+        $this->assertInstanceOf('Magento\Framework\Filesystem\File\Read', $result);
     }
 }
diff --git a/dev/tests/unit/testsuite/Magento/Framework/Filesystem/File/WriteFactoryTest.php b/dev/tests/unit/testsuite/Magento/Framework/Filesystem/File/WriteFactoryTest.php
index 256dbf1a7c36cafa19e4e23d17d24bc0c32cf341..bd9c483346ecffd4cc09b1a63e7dd55f2c6d9a03 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/Filesystem/File/WriteFactoryTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/Filesystem/File/WriteFactoryTest.php
@@ -5,63 +5,41 @@
  */
 namespace Magento\Framework\Filesystem\File;
 
-use Magento\Framework\Filesystem\DriverPool;
-
 /**
  * Class WriteFactoryTest
  */
 class WriteFactoryTest extends \PHPUnit_Framework_TestCase
 {
-    /**
-     * @param string|null $protocol
-     * @param \PHPUnit_Framework_MockObject_MockObject|null $driver
-     * @dataProvider createProvider
-     */
-    public function testCreate($protocol, $driver)
+    public function testCreate()
     {
         $driverPool = $this->getMock('Magento\Framework\Filesystem\DriverPool', ['getDriver']);
-        if ($protocol) {
-            $driverMock = $this->getMockForAbstractClass('Magento\Framework\Filesystem\DriverInterface');
-            $driverMock->expects($this->any())->method('isExists')->willReturn(true);
-            $driverPool->expects($this->once())->method('getDriver')->willReturn($driverMock);
-        } else {
-            $driverPool->expects($this->never())->method('getDriver');
-        }
+        $driverPool->expects($this->never())->method('getDriver');
         $factory = new WriteFactory($driverPool);
-        $result = $factory->create('path', $protocol, $driver);
-        $this->assertInstanceOf('Magento\Framework\Filesystem\File\Write', $result);
-    }
-
-    /**
-     * @return array
-     */
-    public function createProvider()
-    {
         $driver = $this->getMockForAbstractClass('Magento\Framework\Filesystem\DriverInterface');
         $driver->expects($this->any())->method('isExists')->willReturn(true);
-        return [
-            [null, $driver],
-            ['custom_protocol', null]
-        ];
+        $result = $factory->create('path', $driver);
+        $this->assertInstanceOf('Magento\Framework\Filesystem\File\Write', $result);
     }
 
-    /**
-     * @expectedException \InvalidArgumentException
-     */
-    public function testCreateException()
+    public function testCreateWithDriverCode()
     {
-        $factory = new WriteFactory(new DriverPool());
-        $factory->create('path');
+        $driverPool = $this->getMock('Magento\Framework\Filesystem\DriverPool', ['getDriver']);
+        $driverMock = $this->getMockForAbstractClass('Magento\Framework\Filesystem\DriverInterface');
+        $driverMock->expects($this->any())->method('isExists')->willReturn(true);
+        $driverPool->expects($this->once())->method('getDriver')->willReturn($driverMock);
+        $factory = new WriteFactory($driverPool);
+        $result = $factory->create('path', 'driverCode');
+        $this->assertInstanceOf('Magento\Framework\Filesystem\File\Write', $result);
     }
 
     public function testCreateWithMode()
     {
-        $driver = $this->getMockForAbstractClass('Magento\Framework\Filesystem\DriverInterface');
-        $driver->expects($this->any())->method('isExists')->willReturn(false);
         $driverPool = $this->getMock('Magento\Framework\Filesystem\DriverPool', ['getDriver']);
-        $driverPool->expects($this->once())->method('getDriver')->with('protocol')->willReturn($driver);
+        $driverPool->expects($this->never())->method('getDriver');
+        $driver = $this->getMockForAbstractClass('Magento\Framework\Filesystem\DriverInterface');
+        $driver->expects($this->any())->method('isExists')->willReturn(true);
         $factory = new WriteFactory($driverPool);
-        $result = $factory->create('path', 'protocol', null, 'a+');
+        $result = $factory->create('path', $driver, 'a+');
         $this->assertInstanceOf('Magento\Framework\Filesystem\File\Write', $result);
     }
 }
diff --git a/dev/tests/unit/testsuite/Magento/Framework/Image/Adapter/AbstractTest.php b/dev/tests/unit/testsuite/Magento/Framework/Image/Adapter/AbstractTest.php
index b4939e544571423190129283ad94233bab417ad3..874b2dca3dae1f116c66cf249b8ce01f4e1f117d 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/Image/Adapter/AbstractTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/Image/Adapter/AbstractTest.php
@@ -26,6 +26,11 @@ class AbstractTest extends \PHPUnit_Framework_TestCase
      */
     protected $filesystemMock;
 
+    /**
+     * @var \PHPUnit_Framework_MockObject_MockObject |\Psr\Log\LoggerInterface
+     */
+    protected $loggerMock;
+
     protected function setUp()
     {
         $this->directoryWriteMock = $this->getMock(
@@ -49,10 +54,11 @@ class AbstractTest extends \PHPUnit_Framework_TestCase
         )->will(
             $this->returnValue($this->directoryWriteMock)
         );
+        $this->loggerMock = $this->getMockBuilder( 'Psr\Log\LoggerInterface')->getMock();
 
         $this->_model = $this->getMockForAbstractClass(
             'Magento\Framework\Image\Adapter\AbstractAdapter',
-            [$this->filesystemMock]
+            [$this->filesystemMock, $this->loggerMock]
         );
     }
 
@@ -61,6 +67,7 @@ class AbstractTest extends \PHPUnit_Framework_TestCase
         $this->directoryWriteMock = null;
         $this->_model = null;
         $this->filesystemMock = null;
+        $this->loggerMock = null;
     }
 
     /**
diff --git a/dev/tests/unit/testsuite/Magento/Framework/Image/Adapter/ImageMagickTest.php b/dev/tests/unit/testsuite/Magento/Framework/Image/Adapter/ImageMagickTest.php
index 90d38545b9a3e3ca1b1b92ca38cc70053b04b14f..45d5f52e4f04d26ab730c36dec63197fb5703d38 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/Image/Adapter/ImageMagickTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/Image/Adapter/ImageMagickTest.php
@@ -5,18 +5,63 @@
  */
 namespace Magento\Framework\Image\Adapter;
 
+use Magento\Framework\Filesystem\FilesystemException;
+use Magento\TestFramework\Helper\ObjectManager;
+
 class ImageMagickTest extends \PHPUnit_Framework_TestCase
 {
     /**
+     * @var \PHPUnit_Framework_MockObject_MockObject |\Magento\Framework\Filesystem
+     */
+    protected $filesystemMock;
+
+    /**
+     * @var \PHPUnit_Framework_MockObject_MockObject |\Psr\Log\LoggerInterface
+     */
+    protected $loggerMock;
+
+    /**
+     * @var \PHPUnit_Framework_MockObject_MockObject | \Magento\Framework\Filesystem\Directory\WriteInterface
+     */
+    protected $writeMock;
+    /**
+     * @var \Magento\Framework\Image\Adapter\ImageMagick
+     */
+    protected $imageMagic;
+
+    public function setup()
+    {
+        $objectManager = new ObjectManager($this);
+        $this->loggerMock = $this->getMockBuilder( 'Psr\Log\LoggerInterface')->getMock();
+        $this->writeMock =  $this->getMockBuilder('Magento\Framework\Filesystem\Directory\WriteInterface')->getMock();
+        $this->filesystemMock = $this->getMock(
+            'Magento\Framework\Filesystem',
+            ['getDirectoryWrite'],
+            [],
+            '',
+            false
+        );
+        $this->filesystemMock
+            ->expects($this->once())
+            ->method('getDirectoryWrite')
+            ->will($this->returnValue(  $this->writeMock));
+
+        $this->imageMagic = $objectManager
+            ->getObject(
+                'Magento\Framework\Image\Adapter\ImageMagick',
+                ['filesystem' => $this->filesystemMock,
+                    'logger' => $this->loggerMock]
+            );
+    }
+    /**
+     * @param string $imagePath
+     * @param string $expectedMessage
      * @dataProvider watermarkDataProvider
      */
     public function testWatermark($imagePath, $expectedMessage)
     {
-        $filesystem =
-            $this->getMockBuilder('Magento\Framework\Filesystem')->disableOriginalConstructor()->getMock();
         $this->setExpectedException('LogicException', $expectedMessage);
-        $object = new \Magento\Framework\Image\Adapter\ImageMagick($filesystem);
-        $object->watermark($imagePath);
+        $this->imageMagic->watermark($imagePath);
     }
 
     /**
@@ -33,4 +78,16 @@ class ImageMagickTest extends \PHPUnit_Framework_TestCase
             ]
         ];
     }
+
+    /**
+     * @expectedException \Exception
+     * @expectedExceptionMessage Unable to write file into directory product/cache. Access forbidden.
+     */
+    public function testSaveWithException()
+    {
+        $exception = new FilesystemException();
+        $this->writeMock->method('create')->will($this->throwException($exception));
+        $this->loggerMock->expects($this->once())->method('critical')->with($exception);
+        $this->imageMagic->save('product/cache', 'sample.jpg');
+    }
 }
diff --git a/dev/tests/unit/testsuite/Magento/Framework/Interception/Code/Generator/InterceptorTest.php b/dev/tests/unit/testsuite/Magento/Framework/Interception/Code/Generator/InterceptorTest.php
index f9684ec960e0cee2284345502c112ac1ec1b4907..5fb90c588b2b03d5671e86bc637225fd8c0e62c8 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/Interception/Code/Generator/InterceptorTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/Interception/Code/Generator/InterceptorTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Interception\Code\Generator;
 
 class InterceptorTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Framework/Interception/Code/InterfaceValidatorTest.php b/dev/tests/unit/testsuite/Magento/Framework/Interception/Code/InterfaceValidatorTest.php
index a457e5d6479f666ada1d018553c1d82dfad3a27c..3585187b57c1c04ef22f177839cb719e0ecb2741 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/Interception/Code/InterfaceValidatorTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/Interception/Code/InterfaceValidatorTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Interception\Code;
 
 class InterfaceValidatorTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Framework/Interception/Custom/Module/Model/InterfaceValidator/ItemPlugin/ExtraParameters.php b/dev/tests/unit/testsuite/Magento/Framework/Interception/Custom/Module/Model/InterfaceValidator/ItemPlugin/ExtraParameters.php
index 199fefa92fcbeff11f9d5ec2e894d18e9e4ff953..6b3aedde8310af79d8a1902c17992eb137dbdab1 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/Interception/Custom/Module/Model/InterfaceValidator/ItemPlugin/ExtraParameters.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/Interception/Custom/Module/Model/InterfaceValidator/ItemPlugin/ExtraParameters.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Interception\Custom\Module\Model\InterfaceValidator\ItemPlugin;
 
 class ExtraParameters
diff --git a/dev/tests/unit/testsuite/Magento/Framework/Interception/Custom/Module/Model/InterfaceValidator/ItemPlugin/IncompatibleArgumentsCount.php b/dev/tests/unit/testsuite/Magento/Framework/Interception/Custom/Module/Model/InterfaceValidator/ItemPlugin/IncompatibleArgumentsCount.php
index e7f1488d7829e75d2ff36c0c19e468874b3f786f..f6de307fb9c7ee9304679b3c18d1f56db50b4da0 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/Interception/Custom/Module/Model/InterfaceValidator/ItemPlugin/IncompatibleArgumentsCount.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/Interception/Custom/Module/Model/InterfaceValidator/ItemPlugin/IncompatibleArgumentsCount.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Interception\Custom\Module\Model\InterfaceValidator\ItemPlugin;
 
 class IncompatibleArgumentsCount
diff --git a/dev/tests/unit/testsuite/Magento/Framework/Interception/Custom/Module/Model/InterfaceValidator/ItemPlugin/IncompatibleArgumentsType.php b/dev/tests/unit/testsuite/Magento/Framework/Interception/Custom/Module/Model/InterfaceValidator/ItemPlugin/IncompatibleArgumentsType.php
index c4ae623ef39805ccbb06dc582dd43a6cf41e28eb..6b104b2a0b0184896908f9700999a1c76dd1b97b 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/Interception/Custom/Module/Model/InterfaceValidator/ItemPlugin/IncompatibleArgumentsType.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/Interception/Custom/Module/Model/InterfaceValidator/ItemPlugin/IncompatibleArgumentsType.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Interception\Custom\Module\Model\InterfaceValidator\ItemPlugin;
 
 class IncompatibleArgumentsType
diff --git a/dev/tests/unit/testsuite/Magento/Framework/Interception/Custom/Module/Model/InterfaceValidator/ItemPlugin/InvalidProceed.php b/dev/tests/unit/testsuite/Magento/Framework/Interception/Custom/Module/Model/InterfaceValidator/ItemPlugin/InvalidProceed.php
index a75b305865ce0e4abb4a382e6a9c2dc108a0a3f8..07ed13934f6728a6f577d5257de516fb8fddffbd 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/Interception/Custom/Module/Model/InterfaceValidator/ItemPlugin/InvalidProceed.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/Interception/Custom/Module/Model/InterfaceValidator/ItemPlugin/InvalidProceed.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Interception\Custom\Module\Model\InterfaceValidator\ItemPlugin;
 
 class InvalidProceed
diff --git a/dev/tests/unit/testsuite/Magento/Framework/Interception/Custom/Module/Model/InterfaceValidator/ItemPlugin/ValidPlugin.php b/dev/tests/unit/testsuite/Magento/Framework/Interception/Custom/Module/Model/InterfaceValidator/ItemPlugin/ValidPlugin.php
index 748f08235968a1994dd6339e98d23ceb7ea6be42..9a51d1a894a17a92b27f79c832b9b77705637939 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/Interception/Custom/Module/Model/InterfaceValidator/ItemPlugin/ValidPlugin.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/Interception/Custom/Module/Model/InterfaceValidator/ItemPlugin/ValidPlugin.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Interception\Custom\Module\Model\InterfaceValidator\ItemPlugin;
 
 class ValidPlugin
diff --git a/dev/tests/unit/testsuite/Magento/Framework/Less/File/Collector/LibraryTest.php b/dev/tests/unit/testsuite/Magento/Framework/Less/File/Collector/LibraryTest.php
index f5d9ef63f16d5055d26f70e4a269a641e4f348be..396fad99d70d6ff501dfe7d3b6d6af1718c5de64 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/Less/File/Collector/LibraryTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/Less/File/Collector/LibraryTest.php
@@ -72,8 +72,8 @@ class LibraryTest extends \PHPUnit_Framework_TestCase
             ->will(
                 $this->returnValueMap(
                     [
-                        [DirectoryList::LIB_WEB, $this->libraryDirectoryMock],
-                        [DirectoryList::THEMES, $this->themesDirectoryMock],
+                        [DirectoryList::LIB_WEB, Filesystem\DriverPool::FILE, $this->libraryDirectoryMock],
+                        [DirectoryList::THEMES, Filesystem\DriverPool::FILE, $this->themesDirectoryMock],
                     ]
                 )
             );
diff --git a/dev/tests/unit/testsuite/Magento/Framework/Less/FileGeneratorTest.php b/dev/tests/unit/testsuite/Magento/Framework/Less/FileGeneratorTest.php
index 5dd7159b993b6931cee0f8f5826ad99d46ef4a55..cae64ac721c4bd98446e99cb74269463a3e2967a 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/Less/FileGeneratorTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/Less/FileGeneratorTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Less;
 
 use Magento\Framework\App\Filesystem\DirectoryList;
diff --git a/dev/tests/unit/testsuite/Magento/Framework/Less/PreProcessor/Instruction/ImportTest.php b/dev/tests/unit/testsuite/Magento/Framework/Less/PreProcessor/Instruction/ImportTest.php
index 3c12c8e9d90eaae85a8b41d0b981c876b76a9334..e15630ee028561a826ff21ce60eca12038283369 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/Less/PreProcessor/Instruction/ImportTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/Less/PreProcessor/Instruction/ImportTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Less\PreProcessor\Instruction;
 
 class ImportTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Framework/Less/PreProcessor/Instruction/MagentoImportTest.php b/dev/tests/unit/testsuite/Magento/Framework/Less/PreProcessor/Instruction/MagentoImportTest.php
index 07ad34a5fa1bfc96d74c70ff6f16350db3115acf..c70ac5bd6bdc16dc90107b5440153843f3ba8949 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/Less/PreProcessor/Instruction/MagentoImportTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/Less/PreProcessor/Instruction/MagentoImportTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Less\PreProcessor\Instruction;
 
 class MagentoImportTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Framework/Locale/ConfigTest.php b/dev/tests/unit/testsuite/Magento/Framework/Locale/ConfigTest.php
index 166fcc537c0b2f19bc794a0372d795e32da97b1e..9699274f56ead8e25034e5d19edef5393e3454bb 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/Locale/ConfigTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/Locale/ConfigTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Locale;
 
 class ConfigTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Framework/Locale/CurrencyTest.php b/dev/tests/unit/testsuite/Magento/Framework/Locale/CurrencyTest.php
index c7b313e2e8eb13ac4129ad1be84cebce5036e843..c04b01b2d4f9744692d86f4a597a1aba8b6a9914 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/Locale/CurrencyTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/Locale/CurrencyTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Locale;
 
 
diff --git a/dev/tests/unit/testsuite/Magento/Framework/Message/ManagerTest.php b/dev/tests/unit/testsuite/Magento/Framework/Message/ManagerTest.php
index 3b17dcd35592942814d81df0dba8c4ff063d2b19..6fee9007cc8f21b64d48759334bf3a27e99d6186 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/Message/ManagerTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/Message/ManagerTest.php
@@ -168,6 +168,9 @@ class ManagerTest extends \PHPUnit_Framework_TestCase
         $this->assertEquals($messageCollection, $this->model->getMessages(true));
     }
 
+    /**
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
+     */
     public function testAddException()
     {
         $exceptionMessage = 'exception message';
diff --git a/dev/tests/unit/testsuite/Magento/Framework/Model/Resource/Db/AbstractDbTest.php b/dev/tests/unit/testsuite/Magento/Framework/Model/Resource/Db/AbstractDbTest.php
index e3199a3c30f485ac18ad2d4f89fd002c423c18be..f7c3c49ea5e686b0f59533c352d5940e9ca68ced 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/Model/Resource/Db/AbstractDbTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/Model/Resource/Db/AbstractDbTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Model\Resource\Db;
 
 class AbstractDbTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Framework/Model/Resource/Db/Collection/AbstractCollectionTest.php b/dev/tests/unit/testsuite/Magento/Framework/Model/Resource/Db/Collection/AbstractCollectionTest.php
index 6127434681775f7433f5231739b24fda6ddbf2c1..3a883fbb7a4caf681fa67fbbc636b0b116849669 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/Model/Resource/Db/Collection/AbstractCollectionTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/Model/Resource/Db/Collection/AbstractCollectionTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Model\Resource\Db\Collection;
 
 use Magento\Framework\Object as MagentoObject;
diff --git a/dev/tests/unit/testsuite/Magento/Framework/Mview/Config/Data/ProxyTest.php b/dev/tests/unit/testsuite/Magento/Framework/Mview/Config/Data/ProxyTest.php
index 7e400b5e607938cd3c51362de8e2c97f49259d21..40270d32b8de3aba3d821ffec6677d5bc33b3a86 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/Mview/Config/Data/ProxyTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/Mview/Config/Data/ProxyTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Mview\Config\Data;
 
 class ProxyTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Framework/Mview/ConfigTest.php b/dev/tests/unit/testsuite/Magento/Framework/Mview/ConfigTest.php
index 138b0d412f4379aea9c7349c27e0abd2663cd12c..7ba95225f3112f244d16315e33245aac02f6f15a 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/Mview/ConfigTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/Mview/ConfigTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Mview;
 
 class ConfigTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Framework/Mview/View/CollectionTest.php b/dev/tests/unit/testsuite/Magento/Framework/Mview/View/CollectionTest.php
index 3ce52356f96a5c6844022ea157d56cc21ed264ce..b7e41b0b644f8a592c71e310af1aa774e668d0f3 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/Mview/View/CollectionTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/Mview/View/CollectionTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Mview\View;
 
 class CollectionTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Framework/Mview/View/SubscriptionFactoryTest.php b/dev/tests/unit/testsuite/Magento/Framework/Mview/View/SubscriptionFactoryTest.php
index 810b0658ea3da389f0314bbea8430533e342cf94..4f0e5c342340f69cc241e88ebf310aa0b9062e78 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/Mview/View/SubscriptionFactoryTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/Mview/View/SubscriptionFactoryTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Mview\View;
 
 class SubscriptionFactoryTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Framework/Mview/View/SubscriptionTest.php b/dev/tests/unit/testsuite/Magento/Framework/Mview/View/SubscriptionTest.php
index 7534fe8248a776006d1f00a400a9b388d0acb4cf..be2fd374c0650e689414585e2d6eb9bd27b4855c 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/Mview/View/SubscriptionTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/Mview/View/SubscriptionTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Mview\View;
 
 class SubscriptionTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Framework/ObjectManager/Config/Reader/_files/ConfigDomMock.php b/dev/tests/unit/testsuite/Magento/Framework/ObjectManager/Config/Reader/_files/ConfigDomMock.php
index 3fb090231b82439919d76a8d91890d27490961f6..492fbab7633205c23ebd1afb384bbc7492a2af9e 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/ObjectManager/Config/Reader/_files/ConfigDomMock.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/ObjectManager/Config/Reader/_files/ConfigDomMock.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 class ConfigDomMock extends \PHPUnit_Framework_TestCase
 {
     /**
diff --git a/dev/tests/unit/testsuite/Magento/Framework/Phrase/Renderer/CompositeTest.php b/dev/tests/unit/testsuite/Magento/Framework/Phrase/Renderer/CompositeTest.php
index 5240391806c6923ef2c16d5e365df1b0e747755f..7d7799da50ad76b27c78b1698c0a4fdb432f5f44 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/Phrase/Renderer/CompositeTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/Phrase/Renderer/CompositeTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Phrase\Renderer;
 
 class CompositeTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Framework/Pricing/Price/CollectionTest.php b/dev/tests/unit/testsuite/Magento/Framework/Pricing/Price/CollectionTest.php
index 4b495ba6e0162a162c2b6ed9998e6603418963af..8c007c762bbfcc065f37562c78849adcfb1bf707 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/Pricing/Price/CollectionTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/Pricing/Price/CollectionTest.php
@@ -80,6 +80,8 @@ class CollectionTest extends \PHPUnit_Framework_TestCase
             )
             ->will($this->returnValue($this->priceMock));
         $this->assertEquals($this->priceMock, $this->collection->get('regular_price'));
+        //Calling the get method again with the same code, cached copy should be used
+        $this->assertEquals($this->priceMock, $this->collection->get('regular_price'));
     }
 
     /**
diff --git a/dev/tests/unit/testsuite/Magento/Framework/Session/ConfigTest.php b/dev/tests/unit/testsuite/Magento/Framework/Session/ConfigTest.php
index 7cf2c23ac1f70c3611aa594daf822e8c58c1e6dc..e51b345024e437f48a4fe454538ee3ecc5fdb550 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/Session/ConfigTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/Session/ConfigTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Test class for \Magento\Framework\Session\Config
  */
diff --git a/dev/tests/unit/testsuite/Magento/Framework/ShellTest.php b/dev/tests/unit/testsuite/Magento/Framework/ShellTest.php
index fdb1ecc39edb145da37c22ed9b7785ea99def227..d2d5ba75e69097eabd633d796ce0cca4bafaca50 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/ShellTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/ShellTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework;
 
 class ShellTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Framework/Stdlib/Cookie/CookieScopeTest.php b/dev/tests/unit/testsuite/Magento/Framework/Stdlib/Cookie/CookieScopeTest.php
index b55e6bedcf03bb8a347d773dc1803fe02047eb54..ea06bde7734e323f8341b3af8e86f5b6d491ab74 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/Stdlib/Cookie/CookieScopeTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/Stdlib/Cookie/CookieScopeTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Stdlib\Cookie;
 
 use Magento\TestFramework\Helper\ObjectManager;
diff --git a/dev/tests/unit/testsuite/Magento/Framework/Stdlib/Cookie/PhpCookieManagerTest.php b/dev/tests/unit/testsuite/Magento/Framework/Stdlib/Cookie/PhpCookieManagerTest.php
index fd54f64bc406f3c571c3955bce7aff5b2733c62a..f731e2c8f2375db109ded7415078054b116e56ab 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/Stdlib/Cookie/PhpCookieManagerTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/Stdlib/Cookie/PhpCookieManagerTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 // @codingStandardsIgnoreStart
 namespace {
     $mockTranslateSetCookie = false;
diff --git a/dev/tests/unit/testsuite/Magento/Framework/Test/Utility/FilesTest.php b/dev/tests/unit/testsuite/Magento/Framework/Test/Utility/FilesTest.php
index 480dc93a159a7087ffbff3e41cc0009709b58542..9c7dccdfd0e347ccfcd753f8a6ae9e00566c5044 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/Test/Utility/FilesTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/Test/Utility/FilesTest.php
@@ -44,21 +44,21 @@ class FilesTest extends \PHPUnit_Framework_TestCase
         $this->assertSame([], Files::init()->readLists(__DIR__ . '/_files/no_good.txt'));
     }
 
-    /**
-     * @expectedException \Exception
-     * @expectedExceptionMessage The glob() pattern 'bar/unknown' didn't return any result.
-     */
     public function testReadListsCorruptedDir()
     {
-        Files::init()->readLists(__DIR__ . '/_files/list_corrupted_dir.txt');
+        $result = Files::init()->readLists(__DIR__ . '/_files/list_corrupted_dir.txt');
+
+        foreach ($result as $path) {
+            $this->assertNotContains('bar/unknown', $path);
+        }
     }
 
-    /**
-     * @expectedException \Exception
-     * @expectedExceptionMessage The glob() pattern 'unknown.txt' didn't return any result.
-     */
     public function testReadListsCorruptedFile()
     {
-        Files::init()->readLists(__DIR__ . '/_files/list_corrupted_file.txt');
+        $result = Files::init()->readLists(__DIR__ . '/_files/list_corrupted_file.txt');
+
+        foreach ($result as $path) {
+            $this->assertNotContains('unknown.txt', $path);
+        }
     }
 }
diff --git a/dev/tests/unit/testsuite/Magento/Framework/UrlTest.php b/dev/tests/unit/testsuite/Magento/Framework/UrlTest.php
index 2270de236ddc972fccd64c11dd8abc2ec33fa95f..916d0154e9f85139bcf00c1c709c1e066d31dae5 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/UrlTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/UrlTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework;
 
 /**
diff --git a/dev/tests/unit/testsuite/Magento/Core/Model/Validator/FactoryTest.php b/dev/tests/unit/testsuite/Magento/Framework/Validator/FactoryTest.php
similarity index 94%
rename from dev/tests/unit/testsuite/Magento/Core/Model/Validator/FactoryTest.php
rename to dev/tests/unit/testsuite/Magento/Framework/Validator/FactoryTest.php
index 2ad8b19d563dcc38632187c3c99975f500d3c70e..649ad967473afc3a7d961029f56eb907e229d66b 100644
--- a/dev/tests/unit/testsuite/Magento/Core/Model/Validator/FactoryTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/Validator/FactoryTest.php
@@ -1,11 +1,11 @@
 <?php
 /**
- * Unit test for \Magento\Core\Model\Validator\Factory
+ * Unit test for \Magento\Framework\Validator\Factory
  *
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Core\Model\Validator;
+namespace Magento\Framework\Validator;
 
 class FactoryTest extends \PHPUnit_Framework_TestCase
 {
@@ -104,7 +104,7 @@ class FactoryTest extends \PHPUnit_Framework_TestCase
      */
     public function testGetValidatorConfig()
     {
-        $factory = new \Magento\Core\Model\Validator\Factory(
+        $factory = new \Magento\Framework\Validator\Factory(
             $this->_objectManager,
             $this->_config,
             $this->_translateAdapter
@@ -144,7 +144,7 @@ class FactoryTest extends \PHPUnit_Framework_TestCase
                 $objectManager->getObject('Magento\Framework\Validator\Builder', ['constraints' => []])
             )
         );
-        $factory = new \Magento\Core\Model\Validator\Factory(
+        $factory = new \Magento\Framework\Validator\Factory(
             $this->_objectManager,
             $this->_config,
             $this->_translateAdapter
@@ -171,7 +171,7 @@ class FactoryTest extends \PHPUnit_Framework_TestCase
         )->will(
             $this->returnValue(new \Magento\Framework\Validator())
         );
-        $factory = new \Magento\Core\Model\Validator\Factory(
+        $factory = new \Magento\Framework\Validator\Factory(
             $this->_objectManager,
             $this->_config,
             $this->_translateAdapter
diff --git a/dev/tests/unit/testsuite/Magento/Framework/ValidatorFactoryTest.php b/dev/tests/unit/testsuite/Magento/Framework/ValidatorFactoryTest.php
index 2f6a092034376adc39dc1bc6c0b924735c7faa73..aa48533df8654bef4834cf990b979775dfd6c763 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/ValidatorFactoryTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/ValidatorFactoryTest.php
@@ -5,6 +5,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework;
 
 use Magento\TestFramework\Helper\ObjectManager;
diff --git a/dev/tests/unit/testsuite/Magento/Framework/View/Asset/MergedTest.php b/dev/tests/unit/testsuite/Magento/Framework/View/Asset/MergedTest.php
index d69b1755ea46cd665051c9e23e6a74a75b749de6..63d7fd42fb261a0d44d8405126989eebb57f0fce 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/View/Asset/MergedTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/View/Asset/MergedTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\View\Asset;
 
 class MergedTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Framework/View/Asset/MinifiedTest.php b/dev/tests/unit/testsuite/Magento/Framework/View/Asset/MinifiedTest.php
index 7b501992bca1fcbb3efed587558e9008a53a836b..50e39edc08a4a7a48ac4e7c314ae60a36ff9c492 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/View/Asset/MinifiedTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/View/Asset/MinifiedTest.php
@@ -6,6 +6,7 @@
 namespace Magento\Framework\View\Asset;
 
 use Magento\Framework\App\Filesystem\DirectoryList;
+use Magento\Framework\Filesystem\DriverPool;
 
 class MinifiedTest extends \PHPUnit_Framework_TestCase
 {
@@ -62,8 +63,8 @@ class MinifiedTest extends \PHPUnit_Framework_TestCase
         $this->_filesystem->expects($this->any())
             ->method('getDirectoryRead')
             ->will($this->returnValueMap([
-                [DirectoryList::STATIC_VIEW, $this->_staticViewDir],
-                [DirectoryList::ROOT, $this->_rootDir],
+                [DirectoryList::STATIC_VIEW, DriverPool::FILE, $this->_staticViewDir],
+                [DirectoryList::ROOT, DriverPool::FILE, $this->_rootDir],
             ]));
         $this->_filesystem->expects($this->any())
             ->method('getDirectoryWrite')
diff --git a/dev/tests/unit/testsuite/Magento/Framework/View/Asset/ModuleNotation/ResolverTest.php b/dev/tests/unit/testsuite/Magento/Framework/View/Asset/ModuleNotation/ResolverTest.php
index 74b7cb4eb897eafe231076df6185d4153c95f45a..fb4cfe1cb1463c1d0977506bad59e11d10c6324d 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/View/Asset/ModuleNotation/ResolverTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/View/Asset/ModuleNotation/ResolverTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\View\Asset\ModuleNotation;
 
 class ResolverTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Framework/View/Asset/PreProcessor/ModuleNotationTest.php b/dev/tests/unit/testsuite/Magento/Framework/View/Asset/PreProcessor/ModuleNotationTest.php
index a4ce6ba4138df47399618cd85efd2f0eb313d3be..414d21796ee70394aff0fde22e20091d38d22ca5 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/View/Asset/PreProcessor/ModuleNotationTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/View/Asset/PreProcessor/ModuleNotationTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\View\Asset\PreProcessor;
 
 class ModuleNotationTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Framework/View/Asset/RepositoryTest.php b/dev/tests/unit/testsuite/Magento/Framework/View/Asset/RepositoryTest.php
index 2b698915516e81e4b7ffe32e9cb7bb3dfbaaf481..b5cd4b03b9994136cd0e841d5be558c0a3a869d0 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/View/Asset/RepositoryTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/View/Asset/RepositoryTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\View\Asset;
 
 class RepositoryTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Framework/View/Asset/SourceTest.php b/dev/tests/unit/testsuite/Magento/Framework/View/Asset/SourceTest.php
index 09c0ac59216d9d4dd2764a28acc340019e54b4f2..8afbb1a372982dff4b35450415aa29aae4c30580 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/View/Asset/SourceTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/View/Asset/SourceTest.php
@@ -4,9 +4,12 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\View\Asset;
 
 use Magento\Framework\App\Filesystem\DirectoryList;
+use Magento\Framework\Filesystem\DriverPool;
 
 /**
  * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
@@ -245,9 +248,9 @@ class SourceTest extends \PHPUnit_Framework_TestCase
         $this->varDir = $this->getMockForAbstractClass('Magento\Framework\Filesystem\Directory\WriteInterface');
 
         $readDirMap = [
-            [DirectoryList::ROOT, $this->rootDirRead],
-            [DirectoryList::STATIC_VIEW, $this->staticDirRead],
-            [DirectoryList::VAR_DIR, $this->varDir],
+            [DirectoryList::ROOT, DriverPool::FILE, $this->rootDirRead],
+            [DirectoryList::STATIC_VIEW, DriverPool::FILE, $this->staticDirRead],
+            [DirectoryList::VAR_DIR, DriverPool::FILE, $this->varDir],
         ];
 
         $this->filesystem->expects($this->any())
diff --git a/dev/tests/unit/testsuite/Magento/Framework/View/BlockPoolTest.php b/dev/tests/unit/testsuite/Magento/Framework/View/BlockPoolTest.php
index daf08c3bdaf40c85d0af1392fc52374ba9463bfc..5146fc9abf73fe2ea6749b5af29fe41d93ce47a7 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/View/BlockPoolTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/View/BlockPoolTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\View;
 
 /**
diff --git a/dev/tests/unit/testsuite/Magento/Framework/View/DataSourcePoolTest.php b/dev/tests/unit/testsuite/Magento/Framework/View/DataSourcePoolTest.php
index db8d5747b3abcf0912347cae2ab8f2b604601d64..c7b73cbd2e3eceb7f208b40da8b046841cef555d 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/View/DataSourcePoolTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/View/DataSourcePoolTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\View;
 
 /**
diff --git a/dev/tests/unit/testsuite/Magento/Framework/View/Design/FileResolution/Fallback/CacheData/FlatTest.php b/dev/tests/unit/testsuite/Magento/Framework/View/Design/FileResolution/Fallback/CacheData/FlatTest.php
index e08eda12a3fe802e209df5073f071b32747430df..be64df60fb07b467d9e1e9c7e888adfab5a222c0 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/View/Design/FileResolution/Fallback/CacheData/FlatTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/View/Design/FileResolution/Fallback/CacheData/FlatTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\View\Design\FileResolution\Fallback\CacheData;
 
 class FlatTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Framework/View/Design/FileResolution/Fallback/CacheData/GroupedTest.php b/dev/tests/unit/testsuite/Magento/Framework/View/Design/FileResolution/Fallback/CacheData/GroupedTest.php
index d578a5097b544fbca242548926dd39106bc01505..c3bf25cde02a0c4232e9ab91c3a0fee5da1f7b21 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/View/Design/FileResolution/Fallback/CacheData/GroupedTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/View/Design/FileResolution/Fallback/CacheData/GroupedTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\View\Design\FileResolution\Fallback\CacheData;
 
 class GroupedTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Framework/View/Design/FileResolution/Fallback/Resolver/AlternativeTest.php b/dev/tests/unit/testsuite/Magento/Framework/View/Design/FileResolution/Fallback/Resolver/AlternativeTest.php
index f9bba6e60a7427ace3be74f7af3c0e5bdebacd92..80441a9e29524b018a95facf41170b6b8cbbd18b 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/View/Design/FileResolution/Fallback/Resolver/AlternativeTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/View/Design/FileResolution/Fallback/Resolver/AlternativeTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\View\Design\FileResolution\Fallback\Resolver;
 
 use Magento\Framework\App\Filesystem\DirectoryList;
diff --git a/dev/tests/unit/testsuite/Magento/Framework/View/Design/FileResolution/Fallback/Resolver/SimpleTest.php b/dev/tests/unit/testsuite/Magento/Framework/View/Design/FileResolution/Fallback/Resolver/SimpleTest.php
index d09fc77758cf3303e7fd6411b2a51c9bce7177cd..8d630c2b35f6819ed8b20541b51aa2fd33d86977 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/View/Design/FileResolution/Fallback/Resolver/SimpleTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/View/Design/FileResolution/Fallback/Resolver/SimpleTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\View\Design\FileResolution\Fallback\Resolver;
 
 use Magento\Framework\App\Filesystem\DirectoryList;
diff --git a/dev/tests/unit/testsuite/Magento/Framework/View/Design/Theme/ImageTest.php b/dev/tests/unit/testsuite/Magento/Framework/View/Design/Theme/ImageTest.php
index 6997945dfc982a37b04aed6d1dcdbf45ece072c2..fc283081345933b25bf8c224640bcd24bbcacf2b 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/View/Design/Theme/ImageTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/View/Design/Theme/ImageTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Test theme image model
  */
diff --git a/dev/tests/unit/testsuite/Magento/Framework/View/Element/TemplateTest.php b/dev/tests/unit/testsuite/Magento/Framework/View/Element/TemplateTest.php
index 3a3fd0e8709e7d36305e35aecd68ec313b05a143..59f6568e91e8cb8668b08e1836833d4d6a74758e 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/View/Element/TemplateTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/View/Element/TemplateTest.php
@@ -5,6 +5,8 @@
  */
 namespace Magento\Framework\View\Element;
 
+use Magento\Framework\Filesystem\DriverPool;
+
 class TemplateTest extends \PHPUnit_Framework_TestCase
 {
     /**
@@ -50,9 +52,9 @@ class TemplateTest extends \PHPUnit_Framework_TestCase
         $this->_filesystem->expects($this->any())
             ->method('getDirectoryRead')
             ->will($this->returnValueMap([
-                [\Magento\Framework\App\Filesystem\DirectoryList::THEMES, $themesDirMock],
-                [\Magento\Framework\App\Filesystem\DirectoryList::APP, $appDirMock],
-                [\Magento\Framework\App\Filesystem\DirectoryList::ROOT, $this->rootDirMock],
+                [\Magento\Framework\App\Filesystem\DirectoryList::THEMES, DriverPool::FILE, $themesDirMock],
+                [\Magento\Framework\App\Filesystem\DirectoryList::APP, DriverPool::FILE, $appDirMock],
+                [\Magento\Framework\App\Filesystem\DirectoryList::ROOT, DriverPool::FILE, $this->rootDirMock],
             ]));
 
         $this->_templateEngine = $this->getMock(
diff --git a/dev/tests/unit/testsuite/Magento/Framework/View/File/Collector/Decorator/ModuleDependencyTest.php b/dev/tests/unit/testsuite/Magento/Framework/View/File/Collector/Decorator/ModuleDependencyTest.php
index 3d3460610062f0c9104aa91d88cb7fe8494ce18b..ce7742dba428b379712ccded86c4e70b46d3f7c5 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/View/File/Collector/Decorator/ModuleDependencyTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/View/File/Collector/Decorator/ModuleDependencyTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\View\File\Collector\Decorator;
 
 class ModuleDependencyTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Framework/View/File/Collector/Decorator/ModuleOutputTest.php b/dev/tests/unit/testsuite/Magento/Framework/View/File/Collector/Decorator/ModuleOutputTest.php
index 86f54dbfefaf57dec964a41d8e3a360e717cac14..89fd9fa7429f0c28a1d7bb29acc40faae8ca4c70 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/View/File/Collector/Decorator/ModuleOutputTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/View/File/Collector/Decorator/ModuleOutputTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\View\File\Collector\Decorator;
 
 class ModuleOutputTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Framework/View/File/Collector/Override/BaseTest.php b/dev/tests/unit/testsuite/Magento/Framework/View/File/Collector/Override/BaseTest.php
index 49fe2c1aaa215194111d9c492cbf1f1754d77d1b..f6d2297afef60b532bbd2179193fffd9a3f9bd8a 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/View/File/Collector/Override/BaseTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/View/File/Collector/Override/BaseTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\View\File\Collector\Override;
 
 use Magento\Framework\App\Filesystem\DirectoryList;
diff --git a/dev/tests/unit/testsuite/Magento/Framework/View/File/Collector/Override/ThemeModularTest.php b/dev/tests/unit/testsuite/Magento/Framework/View/File/Collector/Override/ThemeModularTest.php
index 279077eb85440ccbb55de7458c87ad5811ba8944..01c7e203617bbb10f8e4245836054231bbc54736 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/View/File/Collector/Override/ThemeModularTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/View/File/Collector/Override/ThemeModularTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\View\File\Collector\Override;
 
 use Magento\Framework\App\Filesystem\DirectoryList;
diff --git a/dev/tests/unit/testsuite/Magento/Framework/View/File/FileListTest.php b/dev/tests/unit/testsuite/Magento/Framework/View/File/FileListTest.php
index 5a5249cf105f1d403a75107a3aac48047d3b7367..fcab2e2c5bc7ce360827be7775f22450ceb80eea 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/View/File/FileListTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/View/File/FileListTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\View\File;
 
 class FileListTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Framework/View/FileSystemTest.php b/dev/tests/unit/testsuite/Magento/Framework/View/FileSystemTest.php
index 6750319c542f3d85681d09d65c8532448699b4f9..a473e5ae8fd0169dd97ef516f7d747dc5a085612 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/View/FileSystemTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/View/FileSystemTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Test for view filesystem model
  */
diff --git a/dev/tests/unit/testsuite/Magento/Framework/View/Layout/Reader/MoveTest.php b/dev/tests/unit/testsuite/Magento/Framework/View/Layout/Reader/MoveTest.php
index c5703cbde8bb9d5f7572523fa760cef227a9906f..9f85c1d86826bca62c09a8148b6c725337fbfb34 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/View/Layout/Reader/MoveTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/View/Layout/Reader/MoveTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\View\Layout\Reader;
 
 use Magento\Framework\View\Layout\ScheduledStructure;
diff --git a/dev/tests/unit/testsuite/Magento/Framework/View/Layout/Reader/UiComponentTest.php b/dev/tests/unit/testsuite/Magento/Framework/View/Layout/Reader/UiComponentTest.php
index 0a147c46697a3e1dcf867e0fafb94fdaa7ddc0cf..a5b295ecd5c7bd2ea7d66d3ed069abc10cf60372 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/View/Layout/Reader/UiComponentTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/View/Layout/Reader/UiComponentTest.php
@@ -66,9 +66,9 @@ class UiComponentTest extends \PHPUnit_Framework_TestCase
      *
      * @param \Magento\Framework\View\Layout\Element $element
      *
-     * @dataProvider processDataProvider
+     * @dataProvider interpretDataProvider
      */
-    public function testProcess($element)
+    public function testInterpret($element)
     {
         $scope = $this->getMock('Magento\Framework\App\ScopeInterface', [], [], '', false);
         $this->scopeResolver->expects($this->any())->method('getScope')->will($this->returnValue($scope));
@@ -85,14 +85,14 @@ class UiComponentTest extends \PHPUnit_Framework_TestCase
             $element->getParent()
         )->willReturn($element->getAttribute('name'));
 
-        $this->helper->expects($this->any())->method('setStructureElementData')->with(
+        $scheduleStructure->expects($this->once())->method('setStructureElementData')->with(
             $element->getAttribute('name'),
             ['attributes' => ['group' => '', 'component' => 'listing']]
         );
         $this->model->interpret($this->context, $element);
     }
 
-    public function processDataProvider()
+    public function interpretDataProvider()
     {
         return [
             [
diff --git a/dev/tests/unit/testsuite/Magento/Framework/View/Result/LayoutTest.php b/dev/tests/unit/testsuite/Magento/Framework/View/Result/LayoutTest.php
index b9dc7d0afbf4eb802b4c5123385e61dad1b88b7e..99537b2c7814d0e0a2beba20e12fc34516f726d1 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/View/Result/LayoutTest.php
+++ b/dev/tests/unit/testsuite/Magento/Framework/View/Result/LayoutTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\View\Result;
 
 /**
diff --git a/dev/tests/unit/testsuite/Magento/Framework/View/TemplateEngine/_files/simple.phtml b/dev/tests/unit/testsuite/Magento/Framework/View/TemplateEngine/_files/simple.phtml
index 2d3052dbfd4cefabec43e63861aa094666e441d7..3747449c2c33a4c3a8f057a4294797ef7fa52e47 100644
--- a/dev/tests/unit/testsuite/Magento/Framework/View/TemplateEngine/_files/simple.phtml
+++ b/dev/tests/unit/testsuite/Magento/Framework/View/TemplateEngine/_files/simple.phtml
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 ?>
 <html><?php
 $this->testMethod();
diff --git a/dev/tests/unit/testsuite/Magento/GiftMessage/Model/GiftMessageManagerTest.php b/dev/tests/unit/testsuite/Magento/GiftMessage/Model/GiftMessageManagerTest.php
index 4154e00fa45941460ee95d4762d9449342770809..0ad00b485f0fc293423874b01525299c875d446b 100644
--- a/dev/tests/unit/testsuite/Magento/GiftMessage/Model/GiftMessageManagerTest.php
+++ b/dev/tests/unit/testsuite/Magento/GiftMessage/Model/GiftMessageManagerTest.php
@@ -5,6 +5,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\GiftMessage\Model;
 
 class GiftMessageManagerTest extends \PHPUnit_Framework_TestCase
@@ -49,7 +51,7 @@ class GiftMessageManagerTest extends \PHPUnit_Framework_TestCase
         $this->messageFactoryMock =
             $this->getMock('\Magento\GiftMessage\Model\MessageFactory', ['create', '__wakeup'], [], '', false);
 
-        $this->quoteMock = $this->getMock('\Magento\Sales\Model\Quote',
+        $this->quoteMock = $this->getMock('\Magento\Quote\Model\Quote',
             [
                 'setGiftMessageId',
                 'getGiftMessageId',
@@ -60,7 +62,7 @@ class GiftMessageManagerTest extends \PHPUnit_Framework_TestCase
             [],
             '',
             false);
-        $this->quoteItemMock = $this->getMock('\Magento\Sales\Model\Quote\Item',
+        $this->quoteItemMock = $this->getMock('\Magento\Quote\Model\Quote\Item',
             [
                 'setGiftMessageId',
                 'getGiftMessageId',
@@ -71,7 +73,7 @@ class GiftMessageManagerTest extends \PHPUnit_Framework_TestCase
             '',
             false);
 
-        $this->quoteAddressMock = $this->getMock('Magento\Sales\Model\Quote\Address',
+        $this->quoteAddressMock = $this->getMock('Magento\Quote\Model\Quote\Address',
             [
                 'getGiftMessageId',
                 'setGiftMessageId',
@@ -84,7 +86,7 @@ class GiftMessageManagerTest extends \PHPUnit_Framework_TestCase
             false);
 
         $this->quoteAddressItemMock = $this->getMock(
-            '\Magento\Sales\Model\Quote\Address\Item',
+            '\Magento\Quote\Model\Quote\Address\Item',
             [
                 'getGiftMessageId',
                 'setGiftMessageId',
diff --git a/dev/tests/unit/testsuite/Magento/GiftMessage/Model/Plugin/QuoteItemTest.php b/dev/tests/unit/testsuite/Magento/GiftMessage/Model/Plugin/QuoteItemTest.php
index 2815a8ad1d1048e331d0809a38483cf1f0ea82ca..5b0a27b6f18c002388be48b57d24657edeaf72e5 100644
--- a/dev/tests/unit/testsuite/Magento/GiftMessage/Model/Plugin/QuoteItemTest.php
+++ b/dev/tests/unit/testsuite/Magento/GiftMessage/Model/Plugin/QuoteItemTest.php
@@ -10,7 +10,7 @@ class QuoteItemTest extends \PHPUnit_Framework_TestCase
     /**
      * @var \Magento\Bundle\Model\Plugin\QuoteItem
      */
-    protected $_model;
+    protected $model;
 
     /**
      * @var \PHPUnit_Framework_MockObject_MockObject
@@ -47,7 +47,7 @@ class QuoteItemTest extends \PHPUnit_Framework_TestCase
             false
         );
         $this->quoteItemMock = $this->getMock(
-            'Magento\Sales\Model\Quote\Item',
+            'Magento\Quote\Model\Quote\Item',
             ['getGiftMessageId', 'getStoreId', '__wakeup'],
             [],
             '',
@@ -57,7 +57,7 @@ class QuoteItemTest extends \PHPUnit_Framework_TestCase
         $this->closureMock = function () use ($orderItems) {
             return $orderItems;
         };
-        $this->subjectMock = $this->getMock('Magento\Sales\Model\Convert\Quote', [], [], '', false);
+        $this->subjectMock = $this->getMock('Magento\Quote\Model\Quote\Item\ToOrderItem', [], [], '', false);
         $this->helperMock = $this->getMock(
             'Magento\GiftMessage\Helper\Message',
             ['setGiftMessageId', 'isMessagesAvailable'],
@@ -99,7 +99,7 @@ class QuoteItemTest extends \PHPUnit_Framework_TestCase
 
         $this->assertSame(
             $this->orderItemMock,
-            $this->model->aroundItemToOrderItem($this->subjectMock, $this->closureMock, $this->quoteItemMock)
+            $this->model->aroundConvert($this->subjectMock, $this->closureMock, $this->quoteItemMock, [])
         );
     }
 }
diff --git a/dev/tests/unit/testsuite/Magento/GiftMessage/Model/Type/Plugin/MultishippingTest.php b/dev/tests/unit/testsuite/Magento/GiftMessage/Model/Type/Plugin/MultishippingTest.php
index 0405d135c1611e2fd8e021c0fe659ed222049f0a..16b8847439eda04d67ef0d88b44eec7c789a9fdc 100644
--- a/dev/tests/unit/testsuite/Magento/GiftMessage/Model/Type/Plugin/MultishippingTest.php
+++ b/dev/tests/unit/testsuite/Magento/GiftMessage/Model/Type/Plugin/MultishippingTest.php
@@ -46,7 +46,7 @@ class MultishippingTest extends \PHPUnit_Framework_TestCase
             ->with('giftmessage')
             ->will($this->returnValue('Expected Value'));
         $subjectMock = $this->getMock('\Magento\Multishipping\Model\Checkout\Type\Multishipping', [], [], '', false);
-        $quoteMock = $this->getMock('\Magento\Sales\Model\Quote', [], [], '', false);
+        $quoteMock = $this->getMock('\Magento\Quote\Model\Quote', [], [], '', false);
         $subjectMock->expects($this->once())->method('getQuote')->will($this->returnValue($quoteMock));
         $this->messageMock->expects($this->once())->method('add')->with('Expected Value', $quoteMock);
 
diff --git a/dev/tests/unit/testsuite/Magento/GiftMessage/Model/Type/Plugin/OnepageTest.php b/dev/tests/unit/testsuite/Magento/GiftMessage/Model/Type/Plugin/OnepageTest.php
index 8a71e7fdc90bdb0c1d6f93ab2cf27411076e0cba..a2d5d278ed302a5a879db95dac9b543409adfec1 100644
--- a/dev/tests/unit/testsuite/Magento/GiftMessage/Model/Type/Plugin/OnepageTest.php
+++ b/dev/tests/unit/testsuite/Magento/GiftMessage/Model/Type/Plugin/OnepageTest.php
@@ -5,6 +5,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\GiftMessage\Model\Type\Plugin;
 
 class OnepageTest extends \PHPUnit_Framework_TestCase
@@ -46,7 +48,7 @@ class OnepageTest extends \PHPUnit_Framework_TestCase
             ->method('getParam')
             ->with('giftmessage')
             ->will($this->returnValue('giftMessage'));
-        $quoteMock = $this->getMock('\Magento\Sales\Model\Quote', [], [], '', false);
+        $quoteMock = $this->getMock('\Magento\Quote\Model\Quote', [], [], '', false);
         $subjectMock->expects($this->once())->method('getQuote')->will($this->returnValue($quoteMock));
         $this->messageMock->expects($this->once())->method('add')->with('giftMessage', $quoteMock);
 
diff --git a/dev/tests/unit/testsuite/Magento/GiftMessage/Service/V1/ReadServiceTest.php b/dev/tests/unit/testsuite/Magento/GiftMessage/Service/V1/ReadServiceTest.php
index df030943ecc39de2ba12461f5d2899626affba92..5a2d3f90ea095d3e4660d388e0bea277f9879605 100644
--- a/dev/tests/unit/testsuite/Magento/GiftMessage/Service/V1/ReadServiceTest.php
+++ b/dev/tests/unit/testsuite/Magento/GiftMessage/Service/V1/ReadServiceTest.php
@@ -5,6 +5,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\GiftMessage\Service\V1;
 
 class ReadServiceTest extends \PHPUnit_Framework_TestCase
@@ -53,7 +55,7 @@ class ReadServiceTest extends \PHPUnit_Framework_TestCase
     {
         $objectManager = new \Magento\TestFramework\Helper\ObjectManager($this);
         $this->cardId = 13;
-        $this->quoteRepositoryMock = $this->getMock('\Magento\Sales\Model\QuoteRepository', [], [], '', false);
+        $this->quoteRepositoryMock = $this->getMock('\Magento\Quote\Model\QuoteRepository', [], [], '', false);
         $this->messageFactoryMock = $this->getMock(
             '\Magento\GiftMessage\Model\MessageFactory',
             [
@@ -74,7 +76,7 @@ class ReadServiceTest extends \PHPUnit_Framework_TestCase
             false);
         $this->messageMock = $this->getMock('\Magento\GiftMessage\Model\Message', [], [], '', false);
         $this->quoteItemMock = $this->getMock(
-            '\Magento\Sales\Model\Quote\Item',
+            '\Magento\Quote\Model\Quote\Item',
             [
                 'getGiftMessageId',
                 '__wakeup'
@@ -83,7 +85,7 @@ class ReadServiceTest extends \PHPUnit_Framework_TestCase
             '',
             false);
         $this->quoteMock = $this->getMock(
-            '\Magento\Sales\Model\Quote',
+            '\Magento\Quote\Model\Quote',
             [
                 'getGiftMessageId',
                 'getItemById',
diff --git a/dev/tests/unit/testsuite/Magento/GiftMessage/Service/V1/WriteServiceTest.php b/dev/tests/unit/testsuite/Magento/GiftMessage/Service/V1/WriteServiceTest.php
index da75a87de87ea2a6b63fec7e00bc71c210726c06..08a34847fdde6c3f4519bfafdf9574d4a14e151d 100644
--- a/dev/tests/unit/testsuite/Magento/GiftMessage/Service/V1/WriteServiceTest.php
+++ b/dev/tests/unit/testsuite/Magento/GiftMessage/Service/V1/WriteServiceTest.php
@@ -63,14 +63,14 @@ class WriteServiceTest extends \PHPUnit_Framework_TestCase
     {
         $objectManager = new \Magento\TestFramework\Helper\ObjectManager($this);
 
-        $this->quoteRepositoryMock = $this->getMock('\Magento\Sales\Model\QuoteRepository', [], [], '', false);
+        $this->quoteRepositoryMock = $this->getMock('\Magento\Quote\Model\QuoteRepository', [], [], '', false);
         $this->storeManagerMock = $this->getMock('\Magento\Store\Model\StoreManagerInterface');
         $this->giftMessageManagerMock =
             $this->getMock('\Magento\GiftMessage\Model\GiftMessageManager', [], [], '', false);
         $this->helperMock = $this->getMock('\Magento\GiftMessage\Helper\Message', [], [], '', false);
         $this->giftMessageMock = $this->getMock('\Magento\GiftMessage\Service\V1\Data\Message', [], [], '', false);
         $this->quoteMock = $this->getMock(
-            '\Magento\Sales\Model\Quote',
+            '\Magento\Quote\Model\Quote',
             [
                 'getItemsCount',
                 'isVirtual',
@@ -84,9 +84,9 @@ class WriteServiceTest extends \PHPUnit_Framework_TestCase
             false
         );
         $this->billingAddressMock =
-            $this->getMock('\Magento\Sales\Model\Quote\Address', ['getCountryId', '__wakeup'], [], '', false);
+            $this->getMock('\Magento\Quote\Model\Quote\Address', ['getCountryId', '__wakeup'], [], '', false);
         $this->shippingAddressMock =
-            $this->getMock('\Magento\Sales\Model\Quote\Address', ['getCountryId', '__wakeup'], [], '', false);
+            $this->getMock('\Magento\Quote\Model\Quote\Address', ['getCountryId', '__wakeup'], [], '', false);
         $this->storeMock = $this->getMock('\Magento\Store\Model\Store', [], [], '', false);
 
         $this->service = $objectManager->getObject(
@@ -206,7 +206,7 @@ class WriteServiceTest extends \PHPUnit_Framework_TestCase
             ->method('getActive')
             ->with($cartId)
             ->will($this->returnValue($this->quoteMock));
-        $quoteItem = $this->getMock('\Magento\Sales\Model\Quote\Item', ['getIsVirtual', '__wakeup'], [], '', false);
+        $quoteItem = $this->getMock('\Magento\Quote\Model\Quote\Item', ['getIsVirtual', '__wakeup'], [], '', false);
         $this->quoteMock->expects($this->once())
             ->method('getItemById')
             ->with($itemId)
@@ -225,7 +225,7 @@ class WriteServiceTest extends \PHPUnit_Framework_TestCase
             ->method('getActive')
             ->with($cartId)
             ->will($this->returnValue($this->quoteMock));
-        $quoteItem = $this->getMock('\Magento\Sales\Model\Quote\Item', ['getIsVirtual', '__wakeup'], [], '', false);
+        $quoteItem = $this->getMock('\Magento\Quote\Model\Quote\Item', ['getIsVirtual', '__wakeup'], [], '', false);
         $this->quoteMock->expects($this->once())
             ->method('getItemById')
             ->with($itemId)
diff --git a/dev/tests/unit/testsuite/Magento/GoogleShopping/Model/ObserverTest.php b/dev/tests/unit/testsuite/Magento/GoogleShopping/Model/ObserverTest.php
index 930c52facbf964cb51021e13ba693a051e2160c4..3ce39e7517b55d79fd0d7e074a3a862550be10b8 100644
--- a/dev/tests/unit/testsuite/Magento/GoogleShopping/Model/ObserverTest.php
+++ b/dev/tests/unit/testsuite/Magento/GoogleShopping/Model/ObserverTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\GoogleShopping\Model;
 
 use Magento\TestFramework\Helper\ObjectManager as ObjectManagerHelper;
diff --git a/dev/tests/unit/testsuite/Magento/GroupedProduct/Block/Cart/Item/Renderer/GroupedTest.php b/dev/tests/unit/testsuite/Magento/GroupedProduct/Block/Cart/Item/Renderer/GroupedTest.php
index 586c1401573da397cb6e8a84b070858f1eff37a6..96ea6051454b28c373a33b1d12db066e9c9a29be 100644
--- a/dev/tests/unit/testsuite/Magento/GroupedProduct/Block/Cart/Item/Renderer/GroupedTest.php
+++ b/dev/tests/unit/testsuite/Magento/GroupedProduct/Block/Cart/Item/Renderer/GroupedTest.php
@@ -119,11 +119,11 @@ class GroupedTest extends \PHPUnit_Framework_TestCase
         $childProduct->expects($this->any())->method('getThumbnail')->will($this->returnValue($childThumbnail));
 
         /** Mock methods which return parent and child products */
-        /** @var \Magento\Sales\Model\Quote\Item\Option|\PHPUnit_Framework_MockObject_MockObject $itemOption */
-        $itemOption = $this->getMock('Magento\Sales\Model\Quote\Item\Option', [], [], '', false);
+        /** @var \Magento\Quote\Model\Quote\Item\Option|\PHPUnit_Framework_MockObject_MockObject $itemOption */
+        $itemOption = $this->getMock('Magento\Quote\Model\Quote\Item\Option', [], [], '', false);
         $itemOption->expects($this->any())->method('getProduct')->will($this->returnValue($parentProduct));
-        /** @var \Magento\Sales\Model\Quote\Item|\PHPUnit_Framework_MockObject_MockObject $item */
-        $item = $this->getMock('Magento\Sales\Model\Quote\Item', [], [], '', false);
+        /** @var \Magento\Quote\Model\Quote\Item|\PHPUnit_Framework_MockObject_MockObject $item */
+        $item = $this->getMock('Magento\Quote\Model\Quote\Item', [], [], '', false);
         $item->expects($this->any())->method('getProduct')->will($this->returnValue($childProduct));
         $item->expects(
             $this->any()
@@ -144,7 +144,7 @@ class GroupedTest extends \PHPUnit_Framework_TestCase
         $productTags = ['catalog_product_1'];
         $product = $this->getMock('Magento\Catalog\Model\Product', [], [], '', false);
         $product->expects($this->exactly(2))->method('getIdentities')->will($this->returnValue($productTags));
-        $item = $this->getMock('Magento\Sales\Model\Quote\Item', [], [], '', false);
+        $item = $this->getMock('Magento\Quote\Model\Quote\Item', [], [], '', false);
         $item->expects($this->exactly(2))->method('getProduct')->will($this->returnValue($product));
         $this->_renderer->setItem($item);
         $this->assertEquals(array_merge($productTags, $productTags), $this->_renderer->getIdentities());
diff --git a/dev/tests/unit/testsuite/Magento/GroupedProduct/Model/Product/Type/GroupedTest.php b/dev/tests/unit/testsuite/Magento/GroupedProduct/Model/Product/Type/GroupedTest.php
index 486805b85499162d34c1596e3b2b5a2618c72c46..5e4f8bbeffa32d7e834e3c05abe048e1b7f89576 100644
--- a/dev/tests/unit/testsuite/Magento/GroupedProduct/Model/Product/Type/GroupedTest.php
+++ b/dev/tests/unit/testsuite/Magento/GroupedProduct/Model/Product/Type/GroupedTest.php
@@ -284,6 +284,9 @@ class GroupedTest extends \PHPUnit_Framework_TestCase
         ];
     }
 
+    /**
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
+     */
     public function testGetChildrenMsrpWhenNoChildrenWithMsrp()
     {
         $key = '_cache_instance_associated_products';
diff --git a/dev/tests/unit/testsuite/Magento/Indexer/Model/Processor/InvalidateCacheTest.php b/dev/tests/unit/testsuite/Magento/Indexer/Model/Processor/InvalidateCacheTest.php
index cdbd873935a3a7a8bff2d348200815516c90d29d..03c205112f2b71d490a98664e9765b583bacca57 100644
--- a/dev/tests/unit/testsuite/Magento/Indexer/Model/Processor/InvalidateCacheTest.php
+++ b/dev/tests/unit/testsuite/Magento/Indexer/Model/Processor/InvalidateCacheTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Indexer\Model\Processor;
 
 class InvalidateCacheTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Integration/Controller/Adminhtml/Integration/DeleteTest.php b/dev/tests/unit/testsuite/Magento/Integration/Controller/Adminhtml/Integration/DeleteTest.php
index 8c8193f3422c4756658d7e776a6d4f7b946fb2eb..c21cdcf35af3e7e5e94c99dd8eefc88e2fcbf7c8 100644
--- a/dev/tests/unit/testsuite/Magento/Integration/Controller/Adminhtml/Integration/DeleteTest.php
+++ b/dev/tests/unit/testsuite/Magento/Integration/Controller/Adminhtml/Integration/DeleteTest.php
@@ -4,6 +4,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Integration\Controller\Adminhtml\Integration;
 
 use Magento\Integration\Block\Adminhtml\Integration\Edit\Tab\Info;
diff --git a/dev/tests/unit/testsuite/Magento/Integration/Controller/Adminhtml/Integration/EditTest.php b/dev/tests/unit/testsuite/Magento/Integration/Controller/Adminhtml/Integration/EditTest.php
index 6a9471ebc758f0adaa4a18786aade1501bea73cc..f4d5d880d82cf653fc7168ba8c71f9a10f8ac12c 100644
--- a/dev/tests/unit/testsuite/Magento/Integration/Controller/Adminhtml/Integration/EditTest.php
+++ b/dev/tests/unit/testsuite/Magento/Integration/Controller/Adminhtml/Integration/EditTest.php
@@ -4,6 +4,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Integration\Controller\Adminhtml\Integration;
 
 use Magento\Integration\Block\Adminhtml\Integration\Edit\Tab\Info;
diff --git a/dev/tests/unit/testsuite/Magento/Integration/Controller/Adminhtml/Integration/NewActionTest.php b/dev/tests/unit/testsuite/Magento/Integration/Controller/Adminhtml/Integration/NewActionTest.php
index b988a9ce154d2dc150a3487e4ecc28ea855c9e49..1c734a594f765a57e9716ee87cdbfb1a93726bc2 100644
--- a/dev/tests/unit/testsuite/Magento/Integration/Controller/Adminhtml/Integration/NewActionTest.php
+++ b/dev/tests/unit/testsuite/Magento/Integration/Controller/Adminhtml/Integration/NewActionTest.php
@@ -4,6 +4,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Integration\Controller\Adminhtml\Integration;
 
 class NewActionTest extends \Magento\Integration\Controller\Adminhtml\IntegrationTest
diff --git a/dev/tests/unit/testsuite/Magento/Integration/Controller/Adminhtml/Integration/PermissionsDialogTest.php b/dev/tests/unit/testsuite/Magento/Integration/Controller/Adminhtml/Integration/PermissionsDialogTest.php
index 9854d3bc6d28bd63635afd599cb0e6818b6b2820..38bbda5638eec13073d0faca9c8916157e3c17eb 100644
--- a/dev/tests/unit/testsuite/Magento/Integration/Controller/Adminhtml/Integration/PermissionsDialogTest.php
+++ b/dev/tests/unit/testsuite/Magento/Integration/Controller/Adminhtml/Integration/PermissionsDialogTest.php
@@ -4,6 +4,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Integration\Controller\Adminhtml\Integration;
 
 use Magento\Framework\View\Layout\Element as LayoutElement;
diff --git a/dev/tests/unit/testsuite/Magento/Integration/Controller/Adminhtml/Integration/SaveTest.php b/dev/tests/unit/testsuite/Magento/Integration/Controller/Adminhtml/Integration/SaveTest.php
index 32e8b0f5450dddcfc800c40d4b432fb5462b18ea..f737bddb816ca2ae77ae3e40d4100706ed8c3742 100644
--- a/dev/tests/unit/testsuite/Magento/Integration/Controller/Adminhtml/Integration/SaveTest.php
+++ b/dev/tests/unit/testsuite/Magento/Integration/Controller/Adminhtml/Integration/SaveTest.php
@@ -4,6 +4,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Integration\Controller\Adminhtml\Integration;
 
 use Magento\Integration\Block\Adminhtml\Integration\Edit\Tab\Info;
diff --git a/dev/tests/unit/testsuite/Magento/Integration/Controller/Adminhtml/Integration/TokensDialogTest.php b/dev/tests/unit/testsuite/Magento/Integration/Controller/Adminhtml/Integration/TokensDialogTest.php
index 2fd35e1e5925ff2e7fbf9e28bd97b8cf36e08430..1153951fb30b523de4a25bdd5047a7bf32a8fadb 100644
--- a/dev/tests/unit/testsuite/Magento/Integration/Controller/Adminhtml/Integration/TokensDialogTest.php
+++ b/dev/tests/unit/testsuite/Magento/Integration/Controller/Adminhtml/Integration/TokensDialogTest.php
@@ -4,6 +4,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Integration\Controller\Adminhtml\Integration;
 
 
diff --git a/dev/tests/unit/testsuite/Magento/Integration/Oauth/OauthTest.php b/dev/tests/unit/testsuite/Magento/Integration/Oauth/OauthTest.php
index 82de98bfa27d44d2ad33ac4520c8d1b31a0c5b47..24785d1098a71fe9ed63b514d5dee3aa920c0bb9 100644
--- a/dev/tests/unit/testsuite/Magento/Integration/Oauth/OauthTest.php
+++ b/dev/tests/unit/testsuite/Magento/Integration/Oauth/OauthTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Integration\Oauth;
 
 /**
diff --git a/dev/tests/unit/testsuite/Magento/Integration/Service/V1/AdminTokenServiceTest.php b/dev/tests/unit/testsuite/Magento/Integration/Service/V1/AdminTokenServiceTest.php
index d05b834df31109b51546fbc1a75442693a7737ec..322c4fa49c8320183f8b92188aa1315fcc87d876 100644
--- a/dev/tests/unit/testsuite/Magento/Integration/Service/V1/AdminTokenServiceTest.php
+++ b/dev/tests/unit/testsuite/Magento/Integration/Service/V1/AdminTokenServiceTest.php
@@ -6,6 +6,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Integration\Service\V1;
 
 use Magento\Integration\Model\Integration;
diff --git a/dev/tests/unit/testsuite/Magento/Msrp/Helper/DataTest.php b/dev/tests/unit/testsuite/Magento/Msrp/Helper/DataTest.php
index 3100a5bbca24484022afc1c05a3f5a25b99d1623..c7a073466ed0cee9073852f2f22c320e026f6c5b 100644
--- a/dev/tests/unit/testsuite/Magento/Msrp/Helper/DataTest.php
+++ b/dev/tests/unit/testsuite/Magento/Msrp/Helper/DataTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Msrp\Helper;
 
 
diff --git a/dev/tests/unit/testsuite/Magento/Msrp/Model/Observer/Frontend/Quote/SetCanApplyMsrpTest.php b/dev/tests/unit/testsuite/Magento/Msrp/Model/Observer/Frontend/Quote/SetCanApplyMsrpTest.php
index bf09763dbeaf91894fcbb12d93ed2b4696f324a5..6916c5fbcfaadc9c3e550dcf40e42b6cceee7f4f 100644
--- a/dev/tests/unit/testsuite/Magento/Msrp/Model/Observer/Frontend/Quote/SetCanApplyMsrpTest.php
+++ b/dev/tests/unit/testsuite/Magento/Msrp/Model/Observer/Frontend/Quote/SetCanApplyMsrpTest.php
@@ -5,7 +5,7 @@
  */
 namespace Magento\Msrp\Model\Observer\Frontend\Quote;
 
-use Magento\Sales\Model\Quote\Address;
+use Magento\Quote\Model\Quote\Address;
 use Magento\TestFramework\Helper\ObjectManager;
 
 /**
@@ -47,7 +47,7 @@ class SetCanApplyMsrpTest extends \PHPUnit_Framework_TestCase
             ->disableOriginalConstructor()
             ->setMethods(['getQuote'])
             ->getMock();
-        $quoteMock = $this->getMockBuilder('Magento\Sales\Model\Quote')
+        $quoteMock = $this->getMockBuilder('Magento\Quote\Model\Quote')
             ->disableOriginalConstructor()
             ->setMethods(['__wakeup', 'setCanApplyMsrp', 'getAllAddresses'])
             ->getMock();
diff --git a/dev/tests/unit/testsuite/Magento/Multishipping/Block/Checkout/Address/SelectTest.php b/dev/tests/unit/testsuite/Magento/Multishipping/Block/Checkout/Address/SelectTest.php
index 4f06e8d537f5e280b8a3602ca15d04783d91af47..a9f6fb059d287b7e676a61bf2e11d3e7cb414f5b 100644
--- a/dev/tests/unit/testsuite/Magento/Multishipping/Block/Checkout/Address/SelectTest.php
+++ b/dev/tests/unit/testsuite/Magento/Multishipping/Block/Checkout/Address/SelectTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Multishipping\Block\Checkout\Address;
 
 use Magento\TestFramework\Helper\ObjectManager;
diff --git a/dev/tests/unit/testsuite/Magento/Multishipping/Block/Checkout/OverviewTest.php b/dev/tests/unit/testsuite/Magento/Multishipping/Block/Checkout/OverviewTest.php
index 120da3cf914bfbbf1ce7893676a5f631c1716713..6e27ebf3ad9917b963fdc77dba25ccc974bc7c6d 100644
--- a/dev/tests/unit/testsuite/Magento/Multishipping/Block/Checkout/OverviewTest.php
+++ b/dev/tests/unit/testsuite/Magento/Multishipping/Block/Checkout/OverviewTest.php
@@ -5,9 +5,11 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Multishipping\Block\Checkout;
 
-use Magento\Sales\Model\Quote\Address;
+use Magento\Quote\Model\Quote\Address;
 
 class OverviewTest extends \PHPUnit_Framework_TestCase
 {
@@ -31,7 +33,7 @@ class OverviewTest extends \PHPUnit_Framework_TestCase
         $objectManager = new \Magento\TestFramework\Helper\ObjectManager($this);
 
         $this->addressMock = $this->getMock(
-            'Magento\Sales\Model\Quote\Address',
+            'Magento\Quote\Model\Quote\Address',
             [
                 'getShippingMethod',
                 'getShippingRateByCode',
@@ -55,7 +57,7 @@ class OverviewTest extends \PHPUnit_Framework_TestCase
 
     public function testGetShippingRateByCode()
     {
-        $rateMock = $this->getMock('Magento\Sales\Model\Quote\Address\Rate', [], [], '', false);
+        $rateMock = $this->getMock('Magento\Quote\Model\Quote\Address\Rate', [], [], '', false);
         $this->addressMock->expects($this->once())
             ->method('getShippingMethod')->will($this->returnValue('shipping method'));
         $this->addressMock->expects($this->once())
diff --git a/dev/tests/unit/testsuite/Magento/Multishipping/Block/Checkout/Payment/InfoTest.php b/dev/tests/unit/testsuite/Magento/Multishipping/Block/Checkout/Payment/InfoTest.php
index 7b926fe9ce3a5911fb724efba59f845b98ed51c1..83cc63d851dcdf959e5a06e85e305febbf9094d2 100644
--- a/dev/tests/unit/testsuite/Magento/Multishipping/Block/Checkout/Payment/InfoTest.php
+++ b/dev/tests/unit/testsuite/Magento/Multishipping/Block/Checkout/Payment/InfoTest.php
@@ -5,6 +5,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Multishipping\Block\Checkout\Payment;
 
 class InfoTest extends \PHPUnit_Framework_TestCase
@@ -33,7 +35,7 @@ class InfoTest extends \PHPUnit_Framework_TestCase
 
     public function testGetPaymentInfo()
     {
-        $quoteMock = $this->getMock('Magento\Sales\Model\Quote', [], [], '', false);
+        $quoteMock = $this->getMock('Magento\Quote\Model\Quote', [], [], '', false);
         $paymentInfoMock = $this->getMock('Magento\Payment\Model\Info', [], [], '', false);
         $this->multiShippingMock->expects($this->once())->method('getQuote')->willReturn($quoteMock);
         $quoteMock->expects($this->once())->method('getPayment')->willReturn($paymentInfoMock);
diff --git a/dev/tests/unit/testsuite/Magento/Multishipping/Block/Checkout/ShippingTest.php b/dev/tests/unit/testsuite/Magento/Multishipping/Block/Checkout/ShippingTest.php
index 2ef3136a290e0bc054ea69fb9918f54c54a79a0f..931c92190cb8d621371c405e7f4c3cdbc053919c 100644
--- a/dev/tests/unit/testsuite/Magento/Multishipping/Block/Checkout/ShippingTest.php
+++ b/dev/tests/unit/testsuite/Magento/Multishipping/Block/Checkout/ShippingTest.php
@@ -5,6 +5,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Multishipping\Block\Checkout;
 
 use Magento\Framework\Pricing\PriceCurrencyInterface;
@@ -58,7 +60,7 @@ class ShippingTest extends \PHPUnit_Framework_TestCase
 
     public function testGetAddresses()
     {
-        $quoteMock = $this->getMock('Magento\Sales\Model\Quote', [], [], '', false);
+        $quoteMock = $this->getMock('Magento\Quote\Model\Quote', [], [], '', false);
         $this->multiShippingMock->expects($this->once())->method('getQuote')->will($this->returnValue($quoteMock));
         $quoteMock->expects($this->once())
             ->method('getAllShippingAddresses')->will($this->returnValue(['expected array']));
@@ -68,7 +70,7 @@ class ShippingTest extends \PHPUnit_Framework_TestCase
     public function testGetAddressShippingMethod()
     {
         $addressMock = $this->getMock(
-            'Magento\Sales\Model\Quote\Address',
+            'Magento\Quote\Model\Quote\Address',
             ['getShippingMethod', '__wakeup'],
             [],
             '',
@@ -82,7 +84,7 @@ class ShippingTest extends \PHPUnit_Framework_TestCase
     public function testGetShippingRates()
     {
         $addressMock = $this->getMock(
-            'Magento\Sales\Model\Quote\Address',
+            'Magento\Quote\Model\Quote\Address',
             ['getGroupedAllShippingRates', '__wakeup'],
             [],
             '',
@@ -116,13 +118,13 @@ class ShippingTest extends \PHPUnit_Framework_TestCase
     public function testGetShippingPrice()
     {
         $addressMock = $this->getMock(
-            'Magento\Sales\Model\Quote\Address',
+            'Magento\Quote\Model\Quote\Address',
             ['getQuote', '__wakeup'],
             [],
             '',
             false
         );
-        $quoteMock = $this->getMock('Magento\Sales\Model\Quote', [], [], '', false);
+        $quoteMock = $this->getMock('Magento\Quote\Model\Quote', [], [], '', false);
         $storeMock = $this->getMock('Magento\Store\Model\Store', [], [], '', false);
         $price = 100;
         $flag = true;
diff --git a/dev/tests/unit/testsuite/Magento/Multishipping/Block/Checkout/StateTest.php b/dev/tests/unit/testsuite/Magento/Multishipping/Block/Checkout/StateTest.php
index 0c407b9b6a5346f397cf52034fa2740675fcd066..d07fcdd7fecfb9caaafe4e1f489ed0153a4c8550 100644
--- a/dev/tests/unit/testsuite/Magento/Multishipping/Block/Checkout/StateTest.php
+++ b/dev/tests/unit/testsuite/Magento/Multishipping/Block/Checkout/StateTest.php
@@ -5,6 +5,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Multishipping\Block\Checkout;
 
 class StateTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Multishipping/Block/Checkout/SuccessTest.php b/dev/tests/unit/testsuite/Magento/Multishipping/Block/Checkout/SuccessTest.php
index b28feaab72584a1e42daea63dcac17d26e322ed4..411eaaa51d40aabd62361670a293902ec914f7df 100644
--- a/dev/tests/unit/testsuite/Magento/Multishipping/Block/Checkout/SuccessTest.php
+++ b/dev/tests/unit/testsuite/Magento/Multishipping/Block/Checkout/SuccessTest.php
@@ -5,6 +5,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Multishipping\Block\Checkout;
 
 class SuccessTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Multishipping/Controller/Checkout/Address/EditAddressTest.php b/dev/tests/unit/testsuite/Magento/Multishipping/Controller/Checkout/Address/EditAddressTest.php
index 618ccb352cde31d3fbe2abdd05dc270ee05c8d83..bbe3cfe2425740431f05c1695e4d24964969420f 100644
--- a/dev/tests/unit/testsuite/Magento/Multishipping/Controller/Checkout/Address/EditAddressTest.php
+++ b/dev/tests/unit/testsuite/Magento/Multishipping/Controller/Checkout/Address/EditAddressTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Multishipping\Controller\Checkout\Address;
 
 use Magento\TestFramework\Helper\ObjectManager;
diff --git a/dev/tests/unit/testsuite/Magento/Multishipping/Controller/Checkout/Address/EditBillingTest.php b/dev/tests/unit/testsuite/Magento/Multishipping/Controller/Checkout/Address/EditBillingTest.php
index f66930101e89a652bee4230d6ac90416a4bcee4a..c178364067e7122e6a4dfa029773ca08dedfd714 100644
--- a/dev/tests/unit/testsuite/Magento/Multishipping/Controller/Checkout/Address/EditBillingTest.php
+++ b/dev/tests/unit/testsuite/Magento/Multishipping/Controller/Checkout/Address/EditBillingTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Multishipping\Controller\Checkout\Address;
 
 use Magento\TestFramework\Helper\ObjectManager;
diff --git a/dev/tests/unit/testsuite/Magento/Multishipping/Controller/Checkout/Address/EditShippingTest.php b/dev/tests/unit/testsuite/Magento/Multishipping/Controller/Checkout/Address/EditShippingTest.php
index f1430495082550a6251de47ed9e1a4a6e26a1ecc..15dfbd50095bd6ae8213cd65c5deb8eb76e3f9b1 100644
--- a/dev/tests/unit/testsuite/Magento/Multishipping/Controller/Checkout/Address/EditShippingTest.php
+++ b/dev/tests/unit/testsuite/Magento/Multishipping/Controller/Checkout/Address/EditShippingTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Multishipping\Controller\Checkout\Address;
 
 use Magento\TestFramework\Helper\ObjectManager;
diff --git a/dev/tests/unit/testsuite/Magento/Multishipping/Controller/Checkout/Address/NewBillingTest.php b/dev/tests/unit/testsuite/Magento/Multishipping/Controller/Checkout/Address/NewBillingTest.php
index cbd350b1c34b6bb5eb8aa00cfcb031d4af36346a..4ea11e167fad8340bd90d770789314811eace7c7 100644
--- a/dev/tests/unit/testsuite/Magento/Multishipping/Controller/Checkout/Address/NewBillingTest.php
+++ b/dev/tests/unit/testsuite/Magento/Multishipping/Controller/Checkout/Address/NewBillingTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Multishipping\Controller\Checkout\Address;
 
 use Magento\TestFramework\Helper\ObjectManager;
diff --git a/dev/tests/unit/testsuite/Magento/Multishipping/Controller/Checkout/Address/NewShippingTest.php b/dev/tests/unit/testsuite/Magento/Multishipping/Controller/Checkout/Address/NewShippingTest.php
index e860f2c7f25c46a764e590bfbb044f737084fb52..a03519add7ece1f993e182cfb586ba7ec43779c6 100644
--- a/dev/tests/unit/testsuite/Magento/Multishipping/Controller/Checkout/Address/NewShippingTest.php
+++ b/dev/tests/unit/testsuite/Magento/Multishipping/Controller/Checkout/Address/NewShippingTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Multishipping\Controller\Checkout\Address;
 
 use Magento\TestFramework\Helper\ObjectManager;
diff --git a/dev/tests/unit/testsuite/Magento/Multishipping/Controller/Checkout/PluginTest.php b/dev/tests/unit/testsuite/Magento/Multishipping/Controller/Checkout/PluginTest.php
index 37ddce2f6501ef52cbdf47cb05f9c0daf74b0f71..f400e9826c276a4062a1c9583539e2a84e488fe7 100644
--- a/dev/tests/unit/testsuite/Magento/Multishipping/Controller/Checkout/PluginTest.php
+++ b/dev/tests/unit/testsuite/Magento/Multishipping/Controller/Checkout/PluginTest.php
@@ -27,7 +27,7 @@ class PluginTest extends \PHPUnit_Framework_TestCase
     {
         $this->cartMock = $this->getMock('Magento\Checkout\Model\Cart', [], [], '', false);
         $this->quoteMock = $this->getMock(
-            'Magento\Sales\Model\Quote',
+            'Magento\Quote\Model\Quote',
             ['__wakeUp', 'setIsMultiShipping'],
             [],
             '',
diff --git a/dev/tests/unit/testsuite/Magento/Multishipping/Helper/DataTest.php b/dev/tests/unit/testsuite/Magento/Multishipping/Helper/DataTest.php
index 7e9e1810bcb9dc2d298accbd8b70d0e53ee1ca39..e5013ea8adcc218da346ee39e25ce256eac13573 100644
--- a/dev/tests/unit/testsuite/Magento/Multishipping/Helper/DataTest.php
+++ b/dev/tests/unit/testsuite/Magento/Multishipping/Helper/DataTest.php
@@ -34,7 +34,7 @@ class DataTest extends \PHPUnit_Framework_TestCase
     /**
      * Quote mock
      *
-     * @var \PHPUnit_Framework_MockObject_MockObject|\Magento\Sales\Model\Quote
+     * @var \PHPUnit_Framework_MockObject_MockObject|\Magento\Quote\Model\Quote
      */
     protected $quoteMock;
 
@@ -50,7 +50,7 @@ class DataTest extends \PHPUnit_Framework_TestCase
         $this->contextMock = $this->getMock('Magento\Framework\App\Helper\Context', [], [], '', false);
         $this->scopeConfigMock = $this->getMock('\Magento\Framework\App\Config\ScopeConfigInterface');
         $this->checkoutSessionMock = $this->getMock('\Magento\Checkout\Model\Session', [], [], '', false);
-        $this->quoteMock = $this->getMock('\Magento\Sales\Model\Quote', [], [], '', false);
+        $this->quoteMock = $this->getMock('\Magento\Quote\Model\Quote', [], [], '', false);
 
         $objectManager = new \Magento\TestFramework\Helper\ObjectManager($this);
         $this->helper = $objectManager->getObject(
diff --git a/dev/tests/unit/testsuite/Magento/Newsletter/Controller/Manage/SaveTest.php b/dev/tests/unit/testsuite/Magento/Newsletter/Controller/Manage/SaveTest.php
index 94d6344cc75021cd3d58cf914e5d4f26b46d07dd..124efe1c353af5af3434cd21a6c271a583f3cd79 100644
--- a/dev/tests/unit/testsuite/Magento/Newsletter/Controller/Manage/SaveTest.php
+++ b/dev/tests/unit/testsuite/Magento/Newsletter/Controller/Manage/SaveTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Newsletter\Controller\Manage;
 
 use Magento\Framework\Exception\NoSuchEntityException;
diff --git a/dev/tests/unit/testsuite/Magento/Newsletter/Model/TemplateTest.php b/dev/tests/unit/testsuite/Magento/Newsletter/Model/TemplateTest.php
index ca617c4f218d65db0ae07bc944463333e1724a90..617131882a610b46a53c729557a28741fae9b448 100644
--- a/dev/tests/unit/testsuite/Magento/Newsletter/Model/TemplateTest.php
+++ b/dev/tests/unit/testsuite/Magento/Newsletter/Model/TemplateTest.php
@@ -40,7 +40,7 @@ class TemplateTest extends \PHPUnit_Framework_TestCase
         }
 
         $filter = $this->getMock('Magento\Newsletter\Model\Template\Filter', [], [], '', false);
-        $appEmulation = $this->getMock('Magento\Core\Model\App\Emulation', [], [], '', false);
+        $appEmulation = $this->getMock('Magento\Store\Model\App\Emulation', [], [], '', false);
         $filter->expects($this->once())->method('setStoreId')->with('test_id');
         $filter->expects($this->once())->method('setIncludeProcessor')->will($this->returnSelf());
         $filter->expects(
diff --git a/dev/tests/unit/testsuite/Magento/OfflinePayments/Block/Form/AbstractInstructionTest.php b/dev/tests/unit/testsuite/Magento/OfflinePayments/Block/Form/AbstractInstructionTest.php
new file mode 100644
index 0000000000000000000000000000000000000000..a6ef83d4f0e1184643c0f34a8cef525b6eaf94e3
--- /dev/null
+++ b/dev/tests/unit/testsuite/Magento/OfflinePayments/Block/Form/AbstractInstructionTest.php
@@ -0,0 +1,40 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+namespace Magento\OfflinePayments\Block\Form;
+
+class AbstractInstructionTest extends \PHPUnit_Framework_TestCase
+{
+    /**
+     * @var \Magento\OfflinePayments\Block\Form\AbstractInstruction
+     */
+    protected $_model;
+
+    protected function setUp()
+    {
+        $context = $this->getMock('Magento\Framework\View\Element\Template\Context', [], [], '', false);
+        $this->_model = $this->getMockForAbstractClass(
+            'Magento\OfflinePayments\Block\Form\AbstractInstruction',
+            ['context' => $context]
+        );
+    }
+
+    public function testGetInstructions()
+    {
+        $method = $this->getMock(
+            'Magento\Payment\Model\MethodInterface',
+            ['getInstructions', 'getCode', 'getFormBlockType', 'getTitle'],
+            [],
+            '',
+            false
+        );
+        $method->expects($this->once())
+            ->method('getInstructions')
+            ->willReturn('instructions');
+        $this->_model->setData('method', $method);
+
+        $this->assertEquals('instructions', $this->_model->getInstructions());
+    }
+}
diff --git a/dev/tests/unit/testsuite/Magento/OfflinePayments/Block/Info/CheckmoTest.php b/dev/tests/unit/testsuite/Magento/OfflinePayments/Block/Info/CheckmoTest.php
new file mode 100644
index 0000000000000000000000000000000000000000..04748038a9c2d60dd98a8f42c8e92db1dfc9f123
--- /dev/null
+++ b/dev/tests/unit/testsuite/Magento/OfflinePayments/Block/Info/CheckmoTest.php
@@ -0,0 +1,85 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+namespace Magento\OfflinePayments\Block\Info;
+
+class CheckmoTest extends \PHPUnit_Framework_TestCase
+{
+    /**
+     * @var \Magento\OfflinePayments\Block\Info\Checkmo
+     */
+    protected $_model;
+
+    protected function setUp()
+    {
+        $context = $this->getMock('Magento\Framework\View\Element\Template\Context', [], [], '', false);
+        $this->_model = new \Magento\OfflinePayments\Block\Info\Checkmo($context);
+    }
+
+    /**
+     * @dataProvider getPayableToDataProvider
+     */
+    public function testGetPayableTo($details, $expected)
+    {
+        $info = $this->getMock('Magento\Payment\Model\Info', ['getAdditionalData'], [], '', false);
+        $info->expects($this->once())
+            ->method('getAdditionalData')
+            ->willReturn(serialize($details));
+        $this->_model->setData('info', $info);
+
+        $this->assertEquals($expected, $this->_model->getPayableTo());
+    }
+
+    /**
+     * @return array
+     */
+    public function getPayableToDataProvider()
+    {
+        return [
+            [['payable_to' => 'payable'], 'payable'],
+            ['', '']
+        ];
+    }
+
+    /**
+     * @dataProvider getMailingAddressDataProvider
+     */
+    public function testGetMailingAddress($details, $expected)
+    {
+        $info = $this->getMock('Magento\Payment\Model\Info', ['getAdditionalData'], [], '', false);
+        $info->expects($this->once())
+            ->method('getAdditionalData')
+            ->willReturn(serialize($details));
+        $this->_model->setData('info', $info);
+
+        $this->assertEquals($expected, $this->_model->getMailingAddress());
+    }
+
+    /**
+     * @return array
+     */
+    public function getMailingAddressDataProvider()
+    {
+        return [
+            [['mailing_address' => 'blah@blah.com'], 'blah@blah.com'],
+            ['', '']
+        ];
+    }
+
+    public function testConvertAdditionalDataIsNeverCalled()
+    {
+        $info = $this->getMock('Magento\Payment\Model\Info', ['getAdditionalData'], [], '', false);
+        $info->expects($this->once())
+            ->method('getAdditionalData')
+            ->willReturn(serialize(['mailing_address' => 'blah@blah.com']));
+        $this->_model->setData('info', $info);
+
+        // First we set the property $this->_mailingAddress
+        $this->_model->getMailingAddress();
+
+        // And now we get already setted property $this->_mailingAddress
+        $this->assertEquals('blah@blah.com', $this->_model->getMailingAddress());
+    }
+}
diff --git a/dev/tests/unit/testsuite/Magento/OfflinePayments/Model/BanktransferTest.php b/dev/tests/unit/testsuite/Magento/OfflinePayments/Model/BanktransferTest.php
index 7dbc702c60f2c83658f7e3afc3be1518b1a5228e..18fb24e1ae8e9e67ddb04735302a0eefd64084dc 100644
--- a/dev/tests/unit/testsuite/Magento/OfflinePayments/Model/BanktransferTest.php
+++ b/dev/tests/unit/testsuite/Magento/OfflinePayments/Model/BanktransferTest.php
@@ -12,18 +12,23 @@ class BanktransferTest extends \PHPUnit_Framework_TestCase
      */
     protected $_object;
 
+    /**
+     * @var \PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $_scopeConfig;
+
     protected function setUp()
     {
         $objectManagerHelper = new \Magento\TestFramework\Helper\ObjectManager($this);
         $eventManager = $this->getMock('Magento\Framework\Event\ManagerInterface', [], [], '', false);
         $paymentDataMock = $this->getMock('Magento\Payment\Helper\Data', [], [], '', false);
-        $scopeConfig = $this->getMock('Magento\Framework\App\Config\ScopeConfigInterface');
+        $this->_scopeConfig = $this->getMock('Magento\Framework\App\Config\ScopeConfigInterface', [], [], '', false);
         $this->_object = $objectManagerHelper->getObject(
             'Magento\OfflinePayments\Model\Banktransfer',
             [
                 'eventManager' => $eventManager,
                 'paymentData' => $paymentDataMock,
-                'scopeConfig' => $scopeConfig,
+                'scopeConfig' => $this->_scopeConfig,
             ]
         );
     }
diff --git a/dev/tests/unit/testsuite/Magento/OfflinePayments/Model/CashondeliveryTest.php b/dev/tests/unit/testsuite/Magento/OfflinePayments/Model/CashondeliveryTest.php
index e0f11d0283bfea5f4c2a8ee5fa3f835f54ea6079..cd4d60d27533e2421f7b68d12d16cc84da178be6 100644
--- a/dev/tests/unit/testsuite/Magento/OfflinePayments/Model/CashondeliveryTest.php
+++ b/dev/tests/unit/testsuite/Magento/OfflinePayments/Model/CashondeliveryTest.php
@@ -12,6 +12,11 @@ class CashondeliveryTest extends \PHPUnit_Framework_TestCase
      */
     protected $_object;
 
+    /**
+     * @var \PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $_scopeConfig;
+
     protected function setUp()
     {
         $helper = new \Magento\TestFramework\Helper\ObjectManager($this);
@@ -19,13 +24,13 @@ class CashondeliveryTest extends \PHPUnit_Framework_TestCase
         $eventManager = $this->getMock('Magento\Framework\Event\ManagerInterface', [], [], '', false);
         $paymentDataMock = $this->getMock('Magento\Payment\Helper\Data', [], [], '', false);
 
-        $scopeConfig = $this->getMock('Magento\Framework\App\Config\ScopeConfigInterface');
+        $this->_scopeConfig = $this->getMock('Magento\Framework\App\Config\ScopeConfigInterface', [], [], '', false);
         $this->_object = $helper->getObject(
             'Magento\OfflinePayments\Model\Cashondelivery',
             [
                 'eventManager' => $eventManager,
                 'paymentData' => $paymentDataMock,
-                'scopeConfig' => $scopeConfig,
+                'scopeConfig' => $this->_scopeConfig,
             ]
         );
     }
diff --git a/dev/tests/unit/testsuite/Magento/OfflinePayments/Model/CheckmoTest.php b/dev/tests/unit/testsuite/Magento/OfflinePayments/Model/CheckmoTest.php
new file mode 100644
index 0000000000000000000000000000000000000000..b6aee65b11e3e53bd8b94f17c304e743108ea89e
--- /dev/null
+++ b/dev/tests/unit/testsuite/Magento/OfflinePayments/Model/CheckmoTest.php
@@ -0,0 +1,80 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+namespace Magento\OfflinePayments\Model;
+
+class CheckmoTest extends \PHPUnit_Framework_TestCase
+{
+    /**
+     * @var \Magento\OfflinePayments\Model\Checkmo
+     */
+    protected $_object;
+
+    /**
+     * @var \PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $_scopeConfig;
+
+    protected function setUp()
+    {
+        $objectManagerHelper = new \Magento\TestFramework\Helper\ObjectManager($this);
+        $eventManager = $this->getMock('Magento\Framework\Event\ManagerInterface', [], [], '', false);
+        $paymentDataMock = $this->getMock('Magento\Payment\Helper\Data', [], [], '', false);
+        $this->_scopeConfig = $this->getMock(
+            'Magento\Framework\App\Config\ScopeConfigInterface',
+            ['getValue', 'isSetFlag'],
+            [],
+            '',
+            false
+        );
+        $this->_object = $objectManagerHelper->getObject(
+            'Magento\OfflinePayments\Model\Checkmo',
+            [
+                'eventManager' => $eventManager,
+                'paymentData' => $paymentDataMock,
+                'scopeConfig' => $this->_scopeConfig,
+            ]
+        );
+    }
+
+    public function testGetPayableTo()
+    {
+        $this->_object->setStore(1);
+        $this->_scopeConfig->expects($this->once())
+            ->method('getValue')
+            ->with('payment/checkmo/payable_to', 'store', 1)
+            ->willReturn('payable');
+        $this->assertEquals('payable', $this->_object->getPayableTo());
+    }
+
+    public function testGetMailingAddress()
+    {
+        $this->_object->setStore(1);
+        $this->_scopeConfig->expects($this->once())
+            ->method('getValue')
+            ->with('payment/checkmo/mailing_address', 'store', 1)
+            ->willReturn('blah@blah.com');
+        $this->assertEquals('blah@blah.com', $this->_object->getMailingAddress());
+    }
+
+    public function testAssignData()
+    {
+        $details['payable_to'] = 'payable';
+        $details['mailing_address'] = 'blah@blah.com';
+        $this->_object->setStore(1);
+        $this->_scopeConfig->expects($this->any())
+            ->method('getValue')
+            ->willReturnMap([
+                ['payment/checkmo/payable_to', 'store', 1, 'payable'],
+                ['payment/checkmo/mailing_address', 'store', 1, 'blah@blah.com']
+            ]);
+        $instance = $this->getMock('Magento\Payment\Model\Info', ['setAdditionalData'], [], '', false);
+        $instance->expects($this->once())
+            ->method('setAdditionalData')
+            ->with(serialize($details));
+        $this->_object->setData('info_instance', $instance);
+        $this->_object->assignData('');
+    }
+}
diff --git a/dev/tests/unit/testsuite/Magento/OfflinePayments/Model/ObserverTest.php b/dev/tests/unit/testsuite/Magento/OfflinePayments/Model/ObserverTest.php
new file mode 100644
index 0000000000000000000000000000000000000000..708b25093f52be0cb438d79411931480af7ac1c3
--- /dev/null
+++ b/dev/tests/unit/testsuite/Magento/OfflinePayments/Model/ObserverTest.php
@@ -0,0 +1,84 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+namespace Magento\OfflinePayments\Model;
+
+class ObserverTest extends \PHPUnit_Framework_TestCase
+{
+    /**
+     * @var \Magento\OfflinePayments\Model\Observer
+     */
+    protected $_model;
+
+    protected function setUp()
+    {
+        $objectManagerHelper = new \Magento\TestFramework\Helper\ObjectManager($this);
+        $this->_model = $objectManagerHelper->getObject('Magento\OfflinePayments\Model\Observer');
+    }
+
+    public function testBeforeOrderPaymentSave()
+    {
+        $observer = $this->getMock('Magento\Framework\Event\Observer', ['getEvent'], [], '', false);
+        $event = $this->getMock('Magento\Framework\Event', ['getPayment'], [], '', false);
+        $payment = $this->getMock(
+            'Magento\Sales\Model\Order\Payment',
+            ['getMethod', 'setAdditionalInformation', 'getMethodInstance'],
+            [],
+            '',
+            false
+        );
+        $payment->expects($this->once())
+            ->method('getMethod')
+            ->willReturn('banktransfer');
+        $payment->expects($this->once())
+            ->method('setAdditionalInformation')
+            ->with('instructions', 'payment configuration');
+        $method = $this->getMock(
+            'Magento\Payment\Model\MethodInterface',
+            ['getConfigData', 'getFormBlockType', 'getTitle', 'getCode'],
+            [],
+            '',
+            false
+        );
+        $method->expects($this->once())
+            ->method('getConfigData')
+            ->willReturn('payment configuration');
+        $payment->expects($this->once())
+            ->method('getMethodInstance')
+            ->willReturn($method);
+        $event->expects($this->once())
+            ->method('getPayment')
+            ->willReturn($payment);
+        $observer->expects($this->once())
+            ->method('getEvent')
+            ->willReturn($event);
+        $this->_model->beforeOrderPaymentSave($observer);
+    }
+
+    public function testBeforeOrderPaymentSaveNoBanktransfer()
+    {
+        $observer = $this->getMock('Magento\Framework\Event\Observer', ['getEvent'], [], '', false);
+        $event = $this->getMock('Magento\Framework\Event', ['getPayment'], [], '', false);
+        $payment = $this->getMock(
+            'Magento\Sales\Model\Order\Payment',
+            ['getMethod', 'setAdditionalInformation', 'getMethodInstance'],
+            [],
+            '',
+            false
+        );
+        $payment->expects($this->once())
+            ->method('getMethod')
+            ->willReturn('somepaymentmethod');
+        $payment->expects($this->never())
+            ->method('setAdditionalInformation');
+        $event->expects($this->once())
+            ->method('getPayment')
+            ->willReturn($payment);
+        $observer->expects($this->once())
+            ->method('getEvent')
+            ->willReturn($event);
+        $this->_model->beforeOrderPaymentSave($observer);
+    }
+}
diff --git a/dev/tests/unit/testsuite/Magento/OfflinePayments/Model/PurchaseorderTest.php b/dev/tests/unit/testsuite/Magento/OfflinePayments/Model/PurchaseorderTest.php
new file mode 100644
index 0000000000000000000000000000000000000000..fb08707e9e4b9d44d89c6e5d2dd7488cbe806835
--- /dev/null
+++ b/dev/tests/unit/testsuite/Magento/OfflinePayments/Model/PurchaseorderTest.php
@@ -0,0 +1,52 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+namespace Magento\OfflinePayments\Model;
+
+class PurchaseorderTest extends \PHPUnit_Framework_TestCase
+{
+    /**
+     * @var \Magento\OfflinePayments\Model\Purchaseorder
+     */
+    protected $_object;
+
+    /**
+     * @var \PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $_scopeConfig;
+
+    protected function setUp()
+    {
+        $objectManagerHelper = new \Magento\TestFramework\Helper\ObjectManager($this);
+        $eventManager = $this->getMock('Magento\Framework\Event\ManagerInterface', [], [], '', false);
+        $paymentDataMock = $this->getMock('Magento\Payment\Helper\Data', [], [], '', false);
+        $this->_scopeConfig = $this->getMock(
+            'Magento\Framework\App\Config\ScopeConfigInterface',
+            ['getValue', 'isSetFlag'],
+            [],
+            '',
+            false
+        );
+        $this->_object = $objectManagerHelper->getObject(
+            'Magento\OfflinePayments\Model\Purchaseorder',
+            [
+                'eventManager' => $eventManager,
+                'paymentData' => $paymentDataMock,
+                'scopeConfig' => $this->_scopeConfig,
+            ]
+        );
+    }
+
+    public function testAssignData()
+    {
+        $data = new \Magento\Framework\Object([
+            'po_number' => '12345'
+        ]);
+
+        $instance = $this->getMock('Magento\Payment\Model\Info', [], [], '', false);
+        $this->_object->setData('info_instance', $instance);
+        $this->_object->assignData($data);
+    }
+}
diff --git a/dev/tests/unit/testsuite/Magento/OfflineShipping/Block/Adminhtml/Carrier/Tablerate/GridTest.php b/dev/tests/unit/testsuite/Magento/OfflineShipping/Block/Adminhtml/Carrier/Tablerate/GridTest.php
new file mode 100644
index 0000000000000000000000000000000000000000..09434687725e98ae388fb66f649e57ed92a31ff8
--- /dev/null
+++ b/dev/tests/unit/testsuite/Magento/OfflineShipping/Block/Adminhtml/Carrier/Tablerate/GridTest.php
@@ -0,0 +1,127 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+namespace Magento\OfflineShipping\Block\Adminhtml\Carrier\Tablerate;
+
+class GridTest extends \PHPUnit_Framework_TestCase
+{
+    /**
+     * @var \Magento\OfflineShipping\Block\Adminhtml\Carrier\Tablerate\Grid
+     */
+    protected $model;
+
+    /**
+     * @var \Magento\Store\Model\StoreManagerInterface|\PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $storeManagerMock;
+
+    /**
+     * @var \Magento\Backend\Helper\Data|\PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $backendHelperMock;
+
+    /**
+     * @var \PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $tablerateMock;
+
+    /**
+     * @var \PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $context;
+
+    /**
+     * @var \PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $collectionFactoryMock;
+
+    protected function setUp()
+    {
+        $objectManager = new \Magento\TestFramework\Helper\ObjectManager($this);
+
+        $this->storeManagerMock = $this->getMockBuilder('Magento\Store\Model\StoreManagerInterface')
+            ->disableOriginalConstructor()
+            ->getMock();
+
+        $this->context = $objectManager->getObject('Magento\Backend\Block\Template\Context', [
+            'storeManager' => $this->storeManagerMock
+        ]);
+
+        $this->backendHelperMock = $this->getMockBuilder('\Magento\Backend\Helper\Data')
+            ->disableOriginalConstructor()
+            ->getMock();
+
+        $this->collectionFactoryMock =
+            $this->getMockBuilder('\Magento\OfflineShipping\Model\Resource\Carrier\Tablerate\CollectionFactory')
+            ->disableOriginalConstructor()
+            ->getMock();
+
+        $this->tablerateMock = $this->getMockBuilder('Magento\OfflineShipping\Model\Carrier\Tablerate')
+            ->disableOriginalConstructor()
+            ->getMock();
+
+        $this->model = new \Magento\OfflineShipping\Block\Adminhtml\Carrier\Tablerate\Grid(
+            $this->context,
+            $this->backendHelperMock,
+            $this->collectionFactoryMock,
+            $this->tablerateMock
+        );
+    }
+
+    public function testSetWebsiteId()
+    {
+        $websiteId = 1;
+
+        $websiteMock = $this->getMockBuilder('Magento\Store\Model\Website')
+            ->setMethods(['getId'])
+            ->disableOriginalConstructor()
+            ->getMock();
+
+        $this->storeManagerMock->expects($this->once())
+            ->method('getWebsite')
+            ->with($websiteId)
+            ->willReturn($websiteMock);
+
+        $websiteMock->expects($this->once())
+            ->method('getId')
+            ->willReturn($websiteId);
+
+        $this->assertSame($this->model, $this->model->setWebsiteId($websiteId));
+        $this->assertEquals($websiteId, $this->model->getWebsiteId());
+    }
+
+    public function testGetWebsiteId()
+    {
+        $websiteId = 10;
+
+        $websiteMock = $this->getMockBuilder('Magento\Store\Model\Website')
+            ->disableOriginalConstructor()
+            ->setMethods(['getId'])
+            ->getMock();
+
+        $websiteMock->expects($this->once())
+            ->method('getId')
+            ->willReturn($websiteId);
+
+        $this->storeManagerMock->expects($this->once())
+            ->method('getWebsite')
+            ->willReturn($websiteMock);
+
+        $this->assertEquals($websiteId, $this->model->getWebsiteId());
+
+        $this->storeManagerMock->expects($this->never())
+            ->method('getWebsite')
+            ->willReturn($websiteMock);
+
+        $this->assertEquals($websiteId, $this->model->getWebsiteId());
+    }
+
+    public function testSetAndGetConditionName()
+    {
+        $conditionName = 'someName';
+        $this->assertEquals($this->model, $this->model->setConditionName($conditionName));
+        $this->assertEquals($conditionName, $this->model->getConditionName());
+    }
+}
diff --git a/dev/tests/unit/testsuite/Magento/OfflineShipping/Model/Config/Backend/TablerateTest.php b/dev/tests/unit/testsuite/Magento/OfflineShipping/Model/Config/Backend/TablerateTest.php
new file mode 100644
index 0000000000000000000000000000000000000000..16ff0b107650fb8371f8bc90c03ffa4ddbdeb28c
--- /dev/null
+++ b/dev/tests/unit/testsuite/Magento/OfflineShipping/Model/Config/Backend/TablerateTest.php
@@ -0,0 +1,51 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+namespace Magento\OfflineShipping\Model\Config\Backend;
+
+class TablerateTest extends \PHPUnit_Framework_TestCase
+{
+    /**
+     * @var \Magento\OfflineShipping\Model\Config\Backend\Tablerate
+     */
+    protected $model;
+
+    /**
+     * @var \Magento\OfflineShipping\Model\Resource\Carrier\TablerateFactory|\PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $tableateFactoryMock;
+
+    protected function setUp()
+    {
+        $this->tableateFactoryMock =
+            $this->getMockBuilder('Magento\OfflineShipping\Model\Resource\Carrier\TablerateFactory')
+            ->disableOriginalConstructor()
+            ->setMethods(['create'])
+            ->getMock();
+
+        $helper = new \Magento\TestFramework\Helper\ObjectManager($this);
+        $this->model = $helper->getObject('\Magento\OfflineShipping\Model\Config\Backend\Tablerate', [
+            'tablerateFactory' => $this->tableateFactoryMock
+        ]);
+    }
+
+    public function testAfterSave()
+    {
+        $tablerateMock = $this->getMockBuilder('Magento\OfflineShipping\Model\Resource\Carrier\Tablerate')
+            ->disableOriginalConstructor()
+            ->setMethods(['uploadAndImport'])
+            ->getMock();
+
+        $this->tableateFactoryMock->expects($this->once())
+            ->method('create')
+            ->willReturn($tablerateMock);
+
+        $tablerateMock->expects($this->once())
+            ->method('uploadAndImport')
+            ->with($this->model);
+
+        $this->model->afterSave();
+    }
+}
diff --git a/dev/tests/unit/testsuite/Magento/OfflineShipping/Model/Config/Source/FlatrateTest.php b/dev/tests/unit/testsuite/Magento/OfflineShipping/Model/Config/Source/FlatrateTest.php
new file mode 100644
index 0000000000000000000000000000000000000000..c133cd1e07d79ca79ff22e5d5eb0ef8060e76568
--- /dev/null
+++ b/dev/tests/unit/testsuite/Magento/OfflineShipping/Model/Config/Source/FlatrateTest.php
@@ -0,0 +1,30 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+namespace Magento\OfflineShipping\Model\Config\Source;
+
+class FlatrateTest extends \PHPUnit_Framework_TestCase
+{
+    /**
+     * @var \Magento\OfflineShipping\Model\Config\Source\Flatrate
+     */
+    protected $model;
+
+    protected function setUp()
+    {
+        $this->model = new Flatrate();
+    }
+
+    public function testToOptionArray()
+    {
+        $expected = [
+            ['value' => '', 'label' => __('None')],
+            ['value' => 'O', 'label' => __('Per Order')],
+            ['value' => 'I', 'label' => __('Per Item')]
+        ];
+
+        $this->assertEquals($expected, $this->model->toOptionArray());
+    }
+}
diff --git a/dev/tests/unit/testsuite/Magento/OfflineShipping/Model/Config/Source/TablerateTest.php b/dev/tests/unit/testsuite/Magento/OfflineShipping/Model/Config/Source/TablerateTest.php
new file mode 100644
index 0000000000000000000000000000000000000000..8eea5073c3f3ecfca6593ad497b5201f83efcc03
--- /dev/null
+++ b/dev/tests/unit/testsuite/Magento/OfflineShipping/Model/Config/Source/TablerateTest.php
@@ -0,0 +1,47 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+namespace Magento\OfflineShipping\Model\Config\Source;
+
+class TablerateTest extends \PHPUnit_Framework_TestCase
+{
+    /**
+     * @var \Magento\OfflineShipping\Model\Config\Source\Tablerate
+     */
+    protected $model;
+
+    /**
+     * @var \Magento\OfflineShipping\Model\Carrier\Tablerate|\PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $carrierTablerateMock;
+
+    protected function setUp()
+    {
+        $this->carrierTablerateMock = $this->getMockBuilder('\Magento\OfflineShipping\Model\Carrier\Tablerate')
+            ->disableOriginalConstructor()
+            ->setMethods(['getCode'])
+            ->getMock();
+
+        $helper = new \Magento\TestFramework\Helper\ObjectManager($this);
+        $this->model = $helper->getObject('Magento\OfflineShipping\Model\Config\Source\Tablerate', [
+            'carrierTablerate' => $this->carrierTablerateMock
+        ]);
+    }
+
+    public function testToOptionArray()
+    {
+        $codes = [1, 2, 3, 4, 5];
+        $expected = [];
+        foreach ($codes as $k => $v) {
+            $expected[] = ['value' => $k, 'label' => $v];
+        }
+
+        $this->carrierTablerateMock->expects($this->once())
+            ->method('getCode')
+            ->willReturn($codes);
+
+        $this->assertEquals($expected, $this->model->toOptionArray());
+    }
+}
diff --git a/dev/tests/unit/testsuite/Magento/OfflineShipping/Model/Observer/SalesRule/ActionsTabTest.php b/dev/tests/unit/testsuite/Magento/OfflineShipping/Model/Observer/SalesRule/ActionsTabTest.php
new file mode 100644
index 0000000000000000000000000000000000000000..751faf0cf82c8c1c32b78e51918136fc4c943018
--- /dev/null
+++ b/dev/tests/unit/testsuite/Magento/OfflineShipping/Model/Observer/SalesRule/ActionsTabTest.php
@@ -0,0 +1,70 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+namespace Magento\OfflineShipping\Model\Observer\SalesRule;
+
+use Magento\OfflineShipping\Model\SalesRule\Rule;
+
+class ActionsTabTest extends \PHPUnit_Framework_TestCase
+{
+    /**
+     * @var \Magento\OfflineShipping\Model\Observer\SalesRule\ActionsTab
+     */
+    protected $model;
+
+    protected function setUp()
+    {
+        $this->model = new ActionsTab();
+    }
+
+    public function testPrepareForm()
+    {
+        $observerMock = $this->getMockBuilder('\Magento\Framework\Event\Observer')
+            ->disableOriginalConstructor()
+            ->setMethods(['getForm'])
+            ->getMock();
+
+        $formMock = $this->getMockBuilder('\Magento\Framework\Data\Form')
+            ->disableOriginalConstructor()
+            ->setMethods(['getElements'])
+            ->getMock();
+
+        $elementMock = $this->getMockBuilder('\Magento\Framework\Data\Form\Element\AbstractElement')
+            ->disableOriginalConstructor()
+            ->setMethods(['getId', 'addField'])
+            ->getMock();
+
+        $elementMock->expects($this->once())
+            ->method('getId')
+            ->willReturn('action_fieldset');
+
+        $elementMock->expects($this->once())
+            ->method('addField')
+            ->with(
+                'simple_free_shipping',
+                'select',
+                [
+                    'label' => __('Free Shipping'),
+                    'title' => __('Free Shipping'),
+                    'name' => 'simple_free_shipping',
+                    'options' => [
+                        0 => __('No'),
+                        Rule::FREE_SHIPPING_ITEM => __('For matching items only'),
+                        Rule::FREE_SHIPPING_ADDRESS => __('For shipment with matching items'),
+                    ]
+                ]
+            );
+
+        $formMock->expects($this->once())
+            ->method('getElements')
+            ->willReturn([$elementMock]);
+
+        $observerMock->expects($this->once())
+            ->method('getForm')
+            ->willReturn($formMock);
+
+        $this->model->prepareForm($observerMock);
+    }
+}
diff --git a/dev/tests/unit/testsuite/Magento/OfflineShipping/Model/Plugin/Checkout/Block/Cart/ShippingTest.php b/dev/tests/unit/testsuite/Magento/OfflineShipping/Model/Plugin/Checkout/Block/Cart/ShippingTest.php
new file mode 100644
index 0000000000000000000000000000000000000000..0fc0f97fbb760e440c728169b047e2788d04f397
--- /dev/null
+++ b/dev/tests/unit/testsuite/Magento/OfflineShipping/Model/Plugin/Checkout/Block/Cart/ShippingTest.php
@@ -0,0 +1,74 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+namespace Magento\OfflineShipping\Model\Plugin\Checkout\Block\Cart;
+
+class ShippingTest extends \PHPUnit_Framework_TestCase
+{
+    /**
+     * @var \Magento\OfflineShipping\Model\Plugin\Checkout\Block\Cart\Shipping
+     */
+    protected $model;
+
+    /**
+     * @var \Magento\Framework\App\Config\ScopeConfigInterface|\PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $scopeConfigMock;
+
+    protected function setUp()
+    {
+        $helper = new \Magento\TestFramework\Helper\ObjectManager($this);
+
+        $this->scopeConfigMock = $this->getMockBuilder('\Magento\Framework\App\Config\ScopeConfigInterface')
+            ->disableOriginalConstructor()
+            ->setMethods([
+                'getValue',
+                'isSetFlag'
+            ])
+            ->getMock();
+
+        $this->model = $helper->getObject('\Magento\OfflineShipping\Model\Plugin\Checkout\Block\Cart\Shipping', [
+            'scopeConfig' => $this->scopeConfigMock
+        ]);
+    }
+
+    /**
+     * @dataProvider afterGetStateActiveDataProvider
+     */
+    public function testAfterGetStateActive($scopeConfigMockReturnValue, $result, $assertResult)
+    {
+        /** @var \Magento\Checkout\Block\Cart\Shipping $subjectMock */
+        $subjectMock = $this->getMockBuilder('Magento\Checkout\Block\Cart\Shipping')
+            ->disableOriginalConstructor()
+            ->getMock();
+
+        $this->scopeConfigMock->expects($result ? $this->never() : $this->once())
+            ->method('getValue')
+            ->willReturn($scopeConfigMockReturnValue);
+
+        $this->assertEquals($assertResult, $this->model->afterGetStateActive($subjectMock, $result));
+    }
+
+    public function afterGetStateActiveDataProvider()
+    {
+        return [
+            [
+                true,
+                true,
+                true
+            ],
+            [
+                true,
+                false,
+                true
+            ],
+            [
+                false,
+                false,
+                false
+            ]
+        ];
+    }
+}
diff --git a/dev/tests/unit/testsuite/Magento/OfflineShipping/Model/SalesRule/CalculatorTest.php b/dev/tests/unit/testsuite/Magento/OfflineShipping/Model/SalesRule/CalculatorTest.php
index b70631f2e42b33e408ced0fe7e3ff581894fbd54..2b1434dc4365e4a1740dfdae9eceef7e1d69f648 100644
--- a/dev/tests/unit/testsuite/Magento/OfflineShipping/Model/SalesRule/CalculatorTest.php
+++ b/dev/tests/unit/testsuite/Magento/OfflineShipping/Model/SalesRule/CalculatorTest.php
@@ -26,7 +26,7 @@ class CalculatorTest extends \PHPUnit_Framework_TestCase
 
     public function testProcessFreeShipping()
     {
-        $item = $this->getMock('Magento\Sales\Model\Quote\Item', ['getAddress', '__wakeup'], [], '', false);
+        $item = $this->getMock('Magento\Quote\Model\Quote\Item', ['getAddress', '__wakeup'], [], '', false);
         $item->expects($this->once())->method('getAddress')->will($this->returnValue(true));
 
         $this->assertInstanceOf(
diff --git a/dev/tests/unit/testsuite/Magento/PageCache/Controller/Block/EsiTest.php b/dev/tests/unit/testsuite/Magento/PageCache/Controller/Block/EsiTest.php
index c07eee4e5a6b19083832f63324172a298f5655a7..fb490f17e4b460575b5ac011879918b801bb32ca 100644
--- a/dev/tests/unit/testsuite/Magento/PageCache/Controller/Block/EsiTest.php
+++ b/dev/tests/unit/testsuite/Magento/PageCache/Controller/Block/EsiTest.php
@@ -4,6 +4,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\PageCache\Controller\Block;
 
 class EsiTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/PageCache/Controller/Block/RenderTest.php b/dev/tests/unit/testsuite/Magento/PageCache/Controller/Block/RenderTest.php
index ebe45e119033dddaae96f8a915d6db235c1a289a..62071ae2df7394d402986ab91528fba0de579697 100644
--- a/dev/tests/unit/testsuite/Magento/PageCache/Controller/Block/RenderTest.php
+++ b/dev/tests/unit/testsuite/Magento/PageCache/Controller/Block/RenderTest.php
@@ -5,6 +5,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\PageCache\Controller\Block;
 
 class RenderTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/PageCache/Model/Controller/Result/BuiltinPluginTest.php b/dev/tests/unit/testsuite/Magento/PageCache/Model/Controller/Result/BuiltinPluginTest.php
index 622c154601a2b8515d3c5cf2d9b6bccbfecc26f1..f1d4b5ce27727172b946fa46c1dd3addc9f2f468 100644
--- a/dev/tests/unit/testsuite/Magento/PageCache/Model/Controller/Result/BuiltinPluginTest.php
+++ b/dev/tests/unit/testsuite/Magento/PageCache/Model/Controller/Result/BuiltinPluginTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\PageCache\Model\Controller\Result;
 
 class BuiltinPluginTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/PageCache/Model/Observer/FlushAllCacheTest.php b/dev/tests/unit/testsuite/Magento/PageCache/Model/Observer/FlushAllCacheTest.php
index 7a5e532dc98e0cb2cfa05fbf6a435741386d4214..b5c7e0acd2ac1eda176b8faf8c6da69fd9d548a8 100644
--- a/dev/tests/unit/testsuite/Magento/PageCache/Model/Observer/FlushAllCacheTest.php
+++ b/dev/tests/unit/testsuite/Magento/PageCache/Model/Observer/FlushAllCacheTest.php
@@ -4,6 +4,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\PageCache\Model\Observer;
 
 class FlushAllCacheTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/PageCache/Model/Observer/FlushCacheByTagsTest.php b/dev/tests/unit/testsuite/Magento/PageCache/Model/Observer/FlushCacheByTagsTest.php
index e3a5f10919a5fa605145508d9c39195e7e479108..ebd5665cee7371e32f9fc224dce3dd7d52dc5eab 100644
--- a/dev/tests/unit/testsuite/Magento/PageCache/Model/Observer/FlushCacheByTagsTest.php
+++ b/dev/tests/unit/testsuite/Magento/PageCache/Model/Observer/FlushCacheByTagsTest.php
@@ -4,6 +4,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\PageCache\Model\Observer;
 
 class FlushCacheByTagsTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/PageCache/Model/Observer/ProcessLayoutRenderElementTest.php b/dev/tests/unit/testsuite/Magento/PageCache/Model/Observer/ProcessLayoutRenderElementTest.php
index 06959e3421356034fc22a08e7bc38d8f8286a680..b307760aad42a7918956541e9ee45c985529ae1c 100644
--- a/dev/tests/unit/testsuite/Magento/PageCache/Model/Observer/ProcessLayoutRenderElementTest.php
+++ b/dev/tests/unit/testsuite/Magento/PageCache/Model/Observer/ProcessLayoutRenderElementTest.php
@@ -4,6 +4,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\PageCache\Model\Observer;
 
 class ProcessLayoutRenderElementTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Payment/Block/FormTest.php b/dev/tests/unit/testsuite/Magento/Payment/Block/FormTest.php
index c8039c60332dbcb27991bd8e64a2b7a79476ced7..d523a8443e54922e69afae43d97e9ce163ec389c 100644
--- a/dev/tests/unit/testsuite/Magento/Payment/Block/FormTest.php
+++ b/dev/tests/unit/testsuite/Magento/Payment/Block/FormTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Payment\Block;
 
 use Magento\Framework\Object;
diff --git a/dev/tests/unit/testsuite/Magento/Payment/Block/Info/InstructionsTest.php b/dev/tests/unit/testsuite/Magento/Payment/Block/Info/InstructionsTest.php
index 43528a3ce3970a9aa067fc1739a2e67bf32196ea..7c035de52c8a1866e0ab4faff8599b8442c9229e 100644
--- a/dev/tests/unit/testsuite/Magento/Payment/Block/Info/InstructionsTest.php
+++ b/dev/tests/unit/testsuite/Magento/Payment/Block/Info/InstructionsTest.php
@@ -12,12 +12,7 @@ namespace Magento\Payment\Block\Info;
 class InstructionsTest extends \PHPUnit_Framework_TestCase
 {
     /**
-     * @var \Magento\Framework\Object
-     */
-    protected $_method;
-
-    /**
-     * @var \Magento\Payment\Model\Info
+     * @var \Magento\Payment\Model\Info|\PHPUnit_Framework_MockObject_MockObject
      */
     protected $_info;
 
@@ -28,28 +23,44 @@ class InstructionsTest extends \PHPUnit_Framework_TestCase
 
     protected function setUp()
     {
-        $objectManagerHelper = new \Magento\TestFramework\Helper\ObjectManager($this);
-        $this->_method = new \Magento\Framework\Object();
-        $this->_info = $objectManagerHelper->getObject('Magento\Payment\Model\Info');
-        $this->_instructions = $objectManagerHelper->getObject('Magento\Payment\Block\Info\Instructions');
-
-        $this->_info->setMethodInstance($this->_method);
-        $this->_instructions->setInfo($this->_info);
+        $context = $this->getMock('Magento\Framework\View\Element\Template\Context', [], [], '', false);
+        $this->_instructions = new \Magento\Payment\Block\Info\Instructions($context);
+        $this->_info = $this->getMock('Magento\Payment\Model\Info', [], [], '', false);
+        $this->_instructions->setData('info', $this->_info);
     }
 
-    public function testGetInstructionsSetInstructions()
+    public function testGetInstructionAdditionalInformation()
     {
-        $this->assertNull($this->_instructions->getInstructions());
-        $testInstruction = 'first test';
-        $this->_method->setInstructions($testInstruction);
-        $this->assertEquals($testInstruction, $this->_instructions->getInstructions());
+        $this->_info->expects($this->once())
+            ->method('getAdditionalInformation')
+            ->with('instructions')
+            ->willReturn('get the instruction here');
+        $this->assertEquals('get the instruction here', $this->_instructions->getInstructions());
+
+        // And we get the already setted param $this->_instructions
+        $this->assertEquals('get the instruction here', $this->_instructions->getInstructions());
     }
 
-    public function testGetInstructionsSetInformation()
+    public function testGetInstruction()
     {
-        $this->assertNull($this->_instructions->getInstructions());
-        $testInstruction = 'second test';
-        $this->_info->setAdditionalInformation('instructions', $testInstruction);
-        $this->assertEquals($testInstruction, $this->_instructions->getInstructions());
+        $methodInstance = $this->getMock(
+            'Magento\Payment\Model\MethodInterface',
+            ['getConfigData', 'getCode', 'getFormBlockType', 'getTitle'],
+            [],
+            '',
+            false
+        );
+        $methodInstance->expects($this->once())
+            ->method('getConfigData')
+            ->with('instructions')
+            ->willReturn('get the instruction here');
+        $this->_info->expects($this->once())
+            ->method('getAdditionalInformation')
+            ->with('instructions')
+            ->willReturn(false);
+        $this->_info->expects($this->once())
+            ->method('getMethodInstance')
+            ->willReturn($methodInstance);
+        $this->assertEquals('get the instruction here', $this->_instructions->getInstructions());
     }
 }
diff --git a/dev/tests/unit/testsuite/Magento/Payment/Block/Info/SubstitutionTest.php b/dev/tests/unit/testsuite/Magento/Payment/Block/Info/SubstitutionTest.php
index 8322174e45ef960f60f95c6e42ff3ed4559f3a4b..82ad3a3460298fb8e902b4c6cd435284ca41ca2f 100644
--- a/dev/tests/unit/testsuite/Magento/Payment/Block/Info/SubstitutionTest.php
+++ b/dev/tests/unit/testsuite/Magento/Payment/Block/Info/SubstitutionTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Payment\Block\Info;
 
 class SubstitutionTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Payment/Helper/DataTest.php b/dev/tests/unit/testsuite/Magento/Payment/Helper/DataTest.php
index f2ae8359ac89d28e21520d34c8c128bd08db6da0..0c3371787ecc978d2c0ff5b782d136227c27317c 100644
--- a/dev/tests/unit/testsuite/Magento/Payment/Helper/DataTest.php
+++ b/dev/tests/unit/testsuite/Magento/Payment/Helper/DataTest.php
@@ -42,7 +42,7 @@ class DataTest extends \PHPUnit_Framework_TestCase
         $layoutFactoryMock->expects($this->once())->method('create')->willReturn($this->layoutMock);
 
         $this->methodFactory = $this->getMock('Magento\Payment\Model\Method\Factory', [], [], '', false);
-        $this->appEmulation = $this->getMock('Magento\Core\Model\App\Emulation', [], [], '', false);
+        $this->appEmulation = $this->getMock('Magento\Store\Model\App\Emulation', [], [], '', false);
         $paymentConfig = $this->getMock('Magento\Payment\Model\Config', [], [], '', false);
         $this->initialConfig = $this->getMock('Magento\Framework\App\Config\Initial', [], [], '', false);
 
diff --git a/dev/tests/unit/testsuite/Magento/Payment/Model/Cart/SalesModel/FactoryTest.php b/dev/tests/unit/testsuite/Magento/Payment/Model/Cart/SalesModel/FactoryTest.php
index 362dcc28a631500a8655d3f8304f16bdc34b4a00..266522ad42801a14ee8e477d9f85e734a3dcf31e 100644
--- a/dev/tests/unit/testsuite/Magento/Payment/Model/Cart/SalesModel/FactoryTest.php
+++ b/dev/tests/unit/testsuite/Magento/Payment/Model/Cart/SalesModel/FactoryTest.php
@@ -43,7 +43,7 @@ class FactoryTest extends \PHPUnit_Framework_TestCase
     public function createDataProvider()
     {
         return [
-            ['Magento\Sales\Model\Quote', 'Magento\Payment\Model\Cart\SalesModel\Quote'],
+            ['Magento\Quote\Model\Quote', 'Magento\Payment\Model\Cart\SalesModel\Quote'],
             ['Magento\Sales\Model\Order', 'Magento\Payment\Model\Cart\SalesModel\Order']
         ];
     }
diff --git a/dev/tests/unit/testsuite/Magento/Payment/Model/Cart/SalesModel/QuoteTest.php b/dev/tests/unit/testsuite/Magento/Payment/Model/Cart/SalesModel/QuoteTest.php
index 22a37fafbf4048cf22f99d79c3cc17a8b8dcf86c..ae99a904900cdaa71fd3021d46a065499a8fab98 100644
--- a/dev/tests/unit/testsuite/Magento/Payment/Model/Cart/SalesModel/QuoteTest.php
+++ b/dev/tests/unit/testsuite/Magento/Payment/Model/Cart/SalesModel/QuoteTest.php
@@ -10,12 +10,12 @@ class QuoteTest extends \PHPUnit_Framework_TestCase
     /** @var \Magento\Payment\Model\Cart\SalesModel\Quote */
     protected $_model;
 
-    /** @var \Magento\Sales\Model\Quote|\PHPUnit_Framework_MockObject_MockObject */
+    /** @var \Magento\Quote\Model\Quote|\PHPUnit_Framework_MockObject_MockObject */
     protected $_quoteMock;
 
     protected function setUp()
     {
-        $this->_quoteMock = $this->getMock('Magento\Sales\Model\Quote', [], [], '', false);
+        $this->_quoteMock = $this->getMock('Magento\Quote\Model\Quote', [], [], '', false);
         $this->_model = new \Magento\Payment\Model\Cart\SalesModel\Quote($this->_quoteMock);
     }
 
@@ -64,7 +64,7 @@ class QuoteTest extends \PHPUnit_Framework_TestCase
      */
     public function testGetAllItems($pItem, $name, $qty, $price)
     {
-        $itemMock = $this->getMock('Magento\Sales\Model\Quote\Item\AbstractItem', [], [], '', false);
+        $itemMock = $this->getMock('Magento\Quote\Model\Quote\Item\AbstractItem', [], [], '', false);
         $itemMock->expects($this->any())->method('getParentItem')->will($this->returnValue($pItem));
         $itemMock->expects($this->once())->method('__call')->with('getName')->will($this->returnValue($name));
         $itemMock->expects($this->any())->method('getTotalQty')->will($this->returnValue($qty));
@@ -114,7 +114,7 @@ class QuoteTest extends \PHPUnit_Framework_TestCase
      */
     public function testGetter($isVirtual, $getterMethod)
     {
-        $address = $this->getMock('Magento\Sales\Model\Quote\Address', [], [], '', false);
+        $address = $this->getMock('Magento\Quote\Model\Quote\Address', [], [], '', false);
         $address->expects(
             $this->any()
         )->method(
@@ -124,7 +124,7 @@ class QuoteTest extends \PHPUnit_Framework_TestCase
         )->will(
             $this->returnValue($getterMethod)
         );
-        $quoteMock = $this->getMock('Magento\Sales\Model\Quote', [], [], '', false);
+        $quoteMock = $this->getMock('Magento\Quote\Model\Quote', [], [], '', false);
         $quoteMock->expects($this->any())->method('getIsVirtual')->will($this->returnValue($isVirtual));
         $method = 'getShippingAddress';
         if ($isVirtual) {
diff --git a/dev/tests/unit/testsuite/Magento/Payment/Model/Checks/CanUseCheckoutTest.php b/dev/tests/unit/testsuite/Magento/Payment/Model/Checks/CanUseCheckoutTest.php
index a322ea4ceab5713a0329f9edac66a18a086843c1..7027b327ba145ba7dcd71189bf774d8cf199c28e 100644
--- a/dev/tests/unit/testsuite/Magento/Payment/Model/Checks/CanUseCheckoutTest.php
+++ b/dev/tests/unit/testsuite/Magento/Payment/Model/Checks/CanUseCheckoutTest.php
@@ -24,7 +24,7 @@ class CanUseCheckoutTest extends \PHPUnit_Framework_TestCase
      */
     public function testIsApplicable($expectation)
     {
-        $quote = $this->getMockBuilder('Magento\Sales\Model\Quote')->disableOriginalConstructor()->setMethods(
+        $quote = $this->getMockBuilder('Magento\Quote\Model\Quote')->disableOriginalConstructor()->setMethods(
             []
         )->getMock();
         $paymentMethod = $this->getMockBuilder(
diff --git a/dev/tests/unit/testsuite/Magento/Payment/Model/Checks/CanUseForCountryTest.php b/dev/tests/unit/testsuite/Magento/Payment/Model/Checks/CanUseForCountryTest.php
index dfaddc3b8a5db74dcac5f0be937a148075d23e78..48b65c72257d2eb2c8acdb01e6d4651040d1bd07 100644
--- a/dev/tests/unit/testsuite/Magento/Payment/Model/Checks/CanUseForCountryTest.php
+++ b/dev/tests/unit/testsuite/Magento/Payment/Model/Checks/CanUseForCountryTest.php
@@ -29,11 +29,11 @@ class CanUseForCountryTest extends \PHPUnit_Framework_TestCase
      */
     public function testIsApplicable($expectation)
     {
-        $quoteMock = $this->getMockBuilder('Magento\Sales\Model\Quote')->disableOriginalConstructor()->setMethods(
+        $quoteMock = $this->getMockBuilder('Magento\Quote\Model\Quote')->disableOriginalConstructor()->setMethods(
             []
         )->getMock();
         $billingAddressMock = $this->getMockBuilder(
-            'Magento\Sales\Model\Quote\Address'
+            'Magento\Quote\Model\Quote\Address'
         )->disableOriginalConstructor()->setMethods([])->getMock();
         $billingAddressMock->expects($this->once())->method('getCountry')->will(
             $this->returnValue(self::EXPECTED_COUNTRY_ID)
diff --git a/dev/tests/unit/testsuite/Magento/Payment/Model/Checks/CanUseForCurrencyTest.php b/dev/tests/unit/testsuite/Magento/Payment/Model/Checks/CanUseForCurrencyTest.php
index 2bfa1c0c345a98b268e97e3028281317539b236d..1d19b0585a8c244c9be2a27d2ef820cc94268dec 100644
--- a/dev/tests/unit/testsuite/Magento/Payment/Model/Checks/CanUseForCurrencyTest.php
+++ b/dev/tests/unit/testsuite/Magento/Payment/Model/Checks/CanUseForCurrencyTest.php
@@ -36,7 +36,7 @@ class CanUseForCurrencyTest extends \PHPUnit_Framework_TestCase
             self::EXPECTED_CURRENCY_CODE
         )->will($this->returnValue($expectation));
 
-        $quoteMock = $this->getMockBuilder('Magento\Sales\Model\Quote')->disableOriginalConstructor()->setMethods(
+        $quoteMock = $this->getMockBuilder('Magento\Quote\Model\Quote')->disableOriginalConstructor()->setMethods(
             []
         )->getMock();
         $store = $this->getMockBuilder(
diff --git a/dev/tests/unit/testsuite/Magento/Payment/Model/Checks/CanUseInternalTest.php b/dev/tests/unit/testsuite/Magento/Payment/Model/Checks/CanUseInternalTest.php
index f29fbf0f9df5b33af0e33ea65512b47ae046fccc..44f72bbb92fb6da9f41ca022b1c15de8766e9c3f 100644
--- a/dev/tests/unit/testsuite/Magento/Payment/Model/Checks/CanUseInternalTest.php
+++ b/dev/tests/unit/testsuite/Magento/Payment/Model/Checks/CanUseInternalTest.php
@@ -24,7 +24,7 @@ class CanUseInternalTest extends \PHPUnit_Framework_TestCase
      */
     public function testIsApplicable($expectation)
     {
-        $quote = $this->getMockBuilder('Magento\Sales\Model\Quote')->disableOriginalConstructor()->setMethods(
+        $quote = $this->getMockBuilder('Magento\Quote\Model\Quote')->disableOriginalConstructor()->setMethods(
             []
         )->getMock();
         $paymentMethod = $this->getMockBuilder(
diff --git a/dev/tests/unit/testsuite/Magento/Payment/Model/Checks/CompositeTest.php b/dev/tests/unit/testsuite/Magento/Payment/Model/Checks/CompositeTest.php
index 9f2641d8fd0e1200a1a6f24a6f3a0c481f16cfec..3e68f37eb5d03a7a6c5201d5f508e4925272fcc8 100644
--- a/dev/tests/unit/testsuite/Magento/Payment/Model/Checks/CompositeTest.php
+++ b/dev/tests/unit/testsuite/Magento/Payment/Model/Checks/CompositeTest.php
@@ -14,7 +14,7 @@ class CompositeTest extends \PHPUnit_Framework_TestCase
      */
     public function testIsApplicable($expectation)
     {
-        $quote = $this->getMockBuilder('Magento\Sales\Model\Quote')->disableOriginalConstructor()->setMethods(
+        $quote = $this->getMockBuilder('Magento\Quote\Model\Quote')->disableOriginalConstructor()->setMethods(
             []
         )->getMock();
         $paymentMethod = $this->getMockBuilder(
diff --git a/dev/tests/unit/testsuite/Magento/Payment/Model/Checks/TotalMinMaxTest.php b/dev/tests/unit/testsuite/Magento/Payment/Model/Checks/TotalMinMaxTest.php
index b2ea8ea4d5525724a8e26171e957d9857b2ce3e8..a61881acea4cf857cc39d1787a9f2acadcea4d73 100644
--- a/dev/tests/unit/testsuite/Magento/Payment/Model/Checks/TotalMinMaxTest.php
+++ b/dev/tests/unit/testsuite/Magento/Payment/Model/Checks/TotalMinMaxTest.php
@@ -35,7 +35,7 @@ class TotalMinMaxTest extends \PHPUnit_Framework_TestCase
             TotalMinMax::MAX_ORDER_TOTAL
         )->will($this->returnValue(self::PAYMENT_MAX_TOTAL));
 
-        $quote = $this->getMockBuilder('Magento\Sales\Model\Quote')->disableOriginalConstructor()->setMethods(
+        $quote = $this->getMockBuilder('Magento\Quote\Model\Quote')->disableOriginalConstructor()->setMethods(
             ['getBaseGrandTotal', '__wakeup']
         )->getMock();
         $quote->expects($this->once())->method('getBaseGrandTotal')->will($this->returnValue($baseGrandTotal));
diff --git a/dev/tests/unit/testsuite/Magento/Payment/Model/Checks/ZeroTotalTest.php b/dev/tests/unit/testsuite/Magento/Payment/Model/Checks/ZeroTotalTest.php
index b58781b785142388ca944c6d6c20016cbb6ec937..58f8cdff43d0535b029bb4b24e54e96275e02efe 100644
--- a/dev/tests/unit/testsuite/Magento/Payment/Model/Checks/ZeroTotalTest.php
+++ b/dev/tests/unit/testsuite/Magento/Payment/Model/Checks/ZeroTotalTest.php
@@ -27,7 +27,7 @@ class ZeroTotalTest extends \PHPUnit_Framework_TestCase
                 ->will($this->returnValue($code));
         }
 
-        $quote = $this->getMockBuilder('Magento\Sales\Model\Quote')
+        $quote = $this->getMockBuilder('Magento\Quote\Model\Quote')
             ->disableOriginalConstructor()
             ->setMethods(['getBaseGrandTotal', '__wakeup'])
             ->getMock();
diff --git a/dev/tests/unit/testsuite/Magento/Payment/Model/Config/Source/AllmethodsTest.php b/dev/tests/unit/testsuite/Magento/Payment/Model/Config/Source/AllmethodsTest.php
index 2cd8f13ab78d8c503f461ad4e4f26570bfd41bce..dfcc3b59ee82cdd74f245b8de4c3c76967d10512 100644
--- a/dev/tests/unit/testsuite/Magento/Payment/Model/Config/Source/AllmethodsTest.php
+++ b/dev/tests/unit/testsuite/Magento/Payment/Model/Config/Source/AllmethodsTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Payment\Model\Config\Source;
 
 class AllmethodsTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Payment/Model/ConfigTest.php b/dev/tests/unit/testsuite/Magento/Payment/Model/ConfigTest.php
index 4bcd1783e086f84b9e62f2a782c65cfb8c672753..d62c4c2b960f6854c0c5861bc54b15b155e548b6 100644
--- a/dev/tests/unit/testsuite/Magento/Payment/Model/ConfigTest.php
+++ b/dev/tests/unit/testsuite/Magento/Payment/Model/ConfigTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Payment\Model;
 
 use Magento\Store\Model\ScopeInterface;
diff --git a/dev/tests/unit/testsuite/Magento/Payment/Model/Method/FreeTest.php b/dev/tests/unit/testsuite/Magento/Payment/Model/Method/FreeTest.php
index ebf109fcb4e005152f58cd897f121527907b7a46..f3d5527baad36d2fe1f2056f5427123e1ec01e99 100644
--- a/dev/tests/unit/testsuite/Magento/Payment/Model/Method/FreeTest.php
+++ b/dev/tests/unit/testsuite/Magento/Payment/Model/Method/FreeTest.php
@@ -64,7 +64,7 @@ class FreeTest extends \PHPUnit_Framework_TestCase
     {
         $quote = null;
         if ($notEmptyQuote) {
-            $quote = $this->getMock('Magento\Sales\Model\Quote', [], [], '', false);
+            $quote = $this->getMock('Magento\Quote\Model\Quote', [], [], '', false);
             $quote->expects($this->any())
                 ->method('__call')
                 ->with($this->equalTo('getGrandTotal'))
diff --git a/dev/tests/unit/testsuite/Magento/Payment/Model/MethodListTest.php b/dev/tests/unit/testsuite/Magento/Payment/Model/MethodListTest.php
index e31eeebabefa1a607c61768c6619589a24012f54..7442764bd5c7faeafb91a1ed9cb527e376f5dad0 100644
--- a/dev/tests/unit/testsuite/Magento/Payment/Model/MethodListTest.php
+++ b/dev/tests/unit/testsuite/Magento/Payment/Model/MethodListTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Payment\Model;
 
 class MethodListTest extends \PHPUnit_Framework_TestCase
@@ -47,11 +49,11 @@ class MethodListTest extends \PHPUnit_Framework_TestCase
     public function testGetAvailableMethods()
     {
         $storeId = 1;
-        $quoteMock = $this->getMock('\Magento\Sales\Model\Quote', [], [], '', false);
+        $quoteMock = $this->getMock('\Magento\Quote\Model\Quote', [], [], '', false);
         $quoteMock->expects($this->once())->method('getStoreId')->will($this->returnValue($storeId));
         $quoteMock->expects($this->atLeastOnce())
             ->method('getPayment')
-            ->will($this->returnValue($this->getMock('\Magento\Sales\Model\Quote\Payment', [], [], '', false)));
+            ->will($this->returnValue($this->getMock('\Magento\Quote\Model\Quote\Payment', [], [], '', false)));
 
         $methodMock = $this->getMock('Magento\Payment\Model\Method\AbstractMethod', ['setInfoInstance'], [], '', false);
 
@@ -74,7 +76,7 @@ class MethodListTest extends \PHPUnit_Framework_TestCase
 
         $methodMock->expects($this->atLeastOnce())
             ->method('setInfoInstance')
-            ->with($this->getMock('\Magento\Sales\Model\Quote\Payment', [], [], '', false))
+            ->with($this->getMock('\Magento\Quote\Model\Quote\Payment', [], [], '', false))
             ->will($this->returnSelf());
 
         $this->assertEquals([$methodMock], $this->methodList->getAvailableMethods($quoteMock));
diff --git a/dev/tests/unit/testsuite/Magento/Persistent/Block/Header/AdditionalTest.php b/dev/tests/unit/testsuite/Magento/Persistent/Block/Header/AdditionalTest.php
index 6666c8c0938d6561df24bdf47c5fa9068eb7afc5..2b7241c10ef7bb09d84f5f85a3454156b8009bc5 100644
--- a/dev/tests/unit/testsuite/Magento/Persistent/Block/Header/AdditionalTest.php
+++ b/dev/tests/unit/testsuite/Magento/Persistent/Block/Header/AdditionalTest.php
@@ -7,6 +7,7 @@ namespace Magento\Persistent\Block\Header;
 
 /**
  * Class AdditionalTest
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class AdditionalTest extends \PHPUnit_Framework_TestCase
 {
@@ -86,6 +87,7 @@ class AdditionalTest extends \PHPUnit_Framework_TestCase
      * Set up
      *
      * @return void
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function setUp()
     {
diff --git a/dev/tests/unit/testsuite/Magento/Persistent/Model/Observer/ApplyBlockPersistentDataTest.php b/dev/tests/unit/testsuite/Magento/Persistent/Model/Observer/ApplyBlockPersistentDataTest.php
index 2284e94e455bddfbda4a9d40c95993f177d9c948..246c8a83cbbded6b27d6fd6d24bcde5a3c7cc743 100644
--- a/dev/tests/unit/testsuite/Magento/Persistent/Model/Observer/ApplyBlockPersistentDataTest.php
+++ b/dev/tests/unit/testsuite/Magento/Persistent/Model/Observer/ApplyBlockPersistentDataTest.php
@@ -4,6 +4,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Persistent\Model\Observer;
 
 class ApplyBlockPersistentDataTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Persistent/Model/Observer/EmulateQuoteTest.php b/dev/tests/unit/testsuite/Magento/Persistent/Model/Observer/EmulateQuoteTest.php
index e753f05d9edf27cb5ea6e48ebd9a5f07ab244a8f..8b4abf5f978f703d07781a93cd35b10b98647b05 100644
--- a/dev/tests/unit/testsuite/Magento/Persistent/Model/Observer/EmulateQuoteTest.php
+++ b/dev/tests/unit/testsuite/Magento/Persistent/Model/Observer/EmulateQuoteTest.php
@@ -152,7 +152,7 @@ class EmulateQuoteTest extends \PHPUnit_Framework_TestCase
     public function testExecuteWhenShoppingCartIsPersistent()
     {
         $customerId = 1;
-        $quoteMock = $this->getMock('\Magento\Sales\Model\Quote', [], [], '', false);
+        $quoteMock = $this->getMock('\Magento\Quote\Model\Quote', [], [], '', false);
         $this->helperMock
             ->expects($this->once())
             ->method('canProcess')
diff --git a/dev/tests/unit/testsuite/Magento/Persistent/Model/Observer/RemovePersistentCookieTest.php b/dev/tests/unit/testsuite/Magento/Persistent/Model/Observer/RemovePersistentCookieTest.php
index 1f1d3f29960edb6dadbe2224d0b54988a5178ed2..127be1b927955424ebb7b2fd09c5c4cec195ddc0 100644
--- a/dev/tests/unit/testsuite/Magento/Persistent/Model/Observer/RemovePersistentCookieTest.php
+++ b/dev/tests/unit/testsuite/Magento/Persistent/Model/Observer/RemovePersistentCookieTest.php
@@ -5,6 +5,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Persistent\Model\Observer;
 
 class RemovePersistentCookieTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Persistent/Model/Observer/SetQuotePersistentDataTest.php b/dev/tests/unit/testsuite/Magento/Persistent/Model/Observer/SetQuotePersistentDataTest.php
index 3dd0a766b806ca8e7e596b9ca2877613541d7e0e..e6912935e4444ebc98c127eb6fa587f6a09a3f75 100644
--- a/dev/tests/unit/testsuite/Magento/Persistent/Model/Observer/SetQuotePersistentDataTest.php
+++ b/dev/tests/unit/testsuite/Magento/Persistent/Model/Observer/SetQuotePersistentDataTest.php
@@ -53,7 +53,7 @@ class SetQuotePersistentDataTest extends \PHPUnit_Framework_TestCase
     {
         $quoteMethods = ['setIsActive', 'setIsPersistent', '__wakeUp'];
         $eventMethods = ['getQuote', '__wakeUp'];
-        $this->quoteMock = $this->getMock('Magento\Sales\Model\Quote', $quoteMethods, [], '', false);
+        $this->quoteMock = $this->getMock('Magento\Quote\Model\Quote', $quoteMethods, [], '', false);
         $this->helperMock = $this->getMock('Magento\Persistent\Helper\Data', [], [], '', false);
         $this->sessionHelperMock = $this->getMock('Magento\Persistent\Helper\Session', [], [], '', false);
         $this->eventManagerMock = $this->getMock('\Magento\Framework\Event', $eventMethods, [], '', false);
diff --git a/dev/tests/unit/testsuite/Magento/Persistent/Model/Observer/UpdateCustomerCookiesTest.php b/dev/tests/unit/testsuite/Magento/Persistent/Model/Observer/UpdateCustomerCookiesTest.php
index e2b4b31f80147d8bab44a1b5d33fb56f8259d529..8602aef31ded170bce40f2b97c873532d2e1ae55 100644
--- a/dev/tests/unit/testsuite/Magento/Persistent/Model/Observer/UpdateCustomerCookiesTest.php
+++ b/dev/tests/unit/testsuite/Magento/Persistent/Model/Observer/UpdateCustomerCookiesTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Persistent\Model\Observer;
 
 /**
diff --git a/dev/tests/unit/testsuite/Magento/Persistent/Model/QuoteManagerTest.php b/dev/tests/unit/testsuite/Magento/Persistent/Model/QuoteManagerTest.php
index 95f3c15a7b0d70419cbc7182b5215fae145b0da5..160b1451b5952424a21940c204f18680e8be2f2b 100644
--- a/dev/tests/unit/testsuite/Magento/Persistent/Model/QuoteManagerTest.php
+++ b/dev/tests/unit/testsuite/Magento/Persistent/Model/QuoteManagerTest.php
@@ -5,6 +5,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Persistent\Model;
 
 class QuoteManagerTest extends \PHPUnit_Framework_TestCase
@@ -73,9 +75,9 @@ class QuoteManagerTest extends \PHPUnit_Framework_TestCase
             $this->getMock('Magento\Eav\Model\Entity\Collection\AbstractCollection', [], [], '', false);
 
         $this->quoteRepositoryMock =
-            $this->getMock('Magento\Sales\Model\QuoteRepository', [], [], '', false);
+            $this->getMock('Magento\Quote\Model\QuoteRepository', [], [], '', false);
 
-        $this->quoteMock = $this->getMock('Magento\Sales\Model\Quote',
+        $this->quoteMock = $this->getMock('Magento\Quote\Model\Quote',
             [
                 'getId',
                 'getIsPersistent',
@@ -181,7 +183,7 @@ class QuoteManagerTest extends \PHPUnit_Framework_TestCase
             ->method('setIsPersistent')->with(false)->will($this->returnValue($this->quoteMock));
         $this->quoteMock->expects($this->once())
             ->method('removeAllAddresses')->will($this->returnValue($this->quoteMock));
-        $quoteAddressMock = $this->getMock('Magento\Sales\Model\Quote\Address', [], [], '', false);
+        $quoteAddressMock = $this->getMock('Magento\Quote\Model\Quote\Address', [], [], '', false);
         $this->quoteMock->expects($this->once())
             ->method('getShippingAddress')->will($this->returnValue($quoteAddressMock));
         $this->quoteMock->expects($this->once())
diff --git a/dev/tests/unit/testsuite/Magento/Quote/Model/CustomerManagementTest.php b/dev/tests/unit/testsuite/Magento/Quote/Model/CustomerManagementTest.php
new file mode 100644
index 0000000000000000000000000000000000000000..c1d8178494aa3c78d391830bf3937f12d288a8e2
--- /dev/null
+++ b/dev/tests/unit/testsuite/Magento/Quote/Model/CustomerManagementTest.php
@@ -0,0 +1,176 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+namespace Magento\Quote\Model;
+
+/**
+ * Class CustomerManagementTest
+ */
+class CustomerManagementTest extends \PHPUnit_Framework_TestCase
+{
+    /**
+     * @var \Magento\Quote\Model\CustomerManagement
+     */
+    protected $customerManagement;
+    /**
+     * @var \Magento\Customer\Api\CustomerRepositoryInterface|\PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $customerRepositoryMock;
+    /**
+     * @var \Magento\Customer\Api\AccountManagementInterface|\PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $customerAddressRepositoryMock;
+    /**
+     * @var \Magento\Customer\Api\Data\CustomerDataBuilder|\PHPUnit_Framework_MockObject_MockObject
+     *
+     */
+    protected $accountManagementMock;
+    /**
+     * @var \Magento\Customer\Api\AddressRepositoryInterface|\PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $customerBuilderMock;
+    /**
+     * @var \Magento\Quote\Model\Quote|\PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $quoteMock;
+    /**
+     * @var \Magento\Quote\Model\Quote\Address|\PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $quoteAddressMock;
+
+    /**
+     * @var \Magento\Customer\Api\Data\CustomerInterface|\PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $customerMock;
+
+    /**
+     * @var \Magento\Customer\Api\Data\AddressInterface|\PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $customerAddressMock;
+
+    public function setUp()
+    {
+        $this->customerRepositoryMock = $this->getMockForAbstractClass(
+            'Magento\Customer\Api\CustomerRepositoryInterface',
+            [],
+            '',
+            false,
+            true,
+            true,
+            ['getById']
+        );
+        $this->customerAddressRepositoryMock = $this->getMockForAbstractClass(
+            'Magento\Customer\Api\AddressRepositoryInterface',
+            [],
+            '',
+            false,
+            true,
+            true,
+            ['getById']
+        );
+        $this->accountManagementMock = $this->getMockForAbstractClass(
+            'Magento\Customer\Api\AccountManagementInterface',
+            [],
+            '',
+            false,
+            true,
+            true,
+            []
+        );
+        $this->customerBuilderMock = $this->getMock(
+            'Magento\Customer\Api\Data\CustomerDataBuilder',
+            ['populate', 'create'],
+            [],
+            '',
+            false
+        );
+        $this->quoteMock = $this->getMock(
+            'Magento\Quote\Model\Quote',
+            ['getId', 'getCustomer', 'getBillingAddress', 'getShippingAddress', 'setCustomer', 'getPasswordHash'],
+            [],
+            '',
+            false
+        );
+        $this->quoteAddressMock = $this->getMock(
+            'Magento\Quote\Model\Quote\Address',
+            [],
+            [],
+            '',
+            false
+        );
+        $this->customerMock = $this->getMockForAbstractClass(
+            'Magento\Customer\Api\Data\CustomerInterface',
+            [],
+            '',
+            false,
+            true,
+            true,
+            ['getId', 'getDefaultBilling']
+        );
+        $this->customerAddressMock = $this->getMockForAbstractClass(
+            'Magento\Customer\Api\Data\AddressInterface',
+            [],
+            '',
+            false,
+            true,
+            true,
+            []
+        );
+        $this->customerManagement = new \Magento\Quote\Model\CustomerManagement(
+            $this->customerRepositoryMock,
+            $this->customerAddressRepositoryMock,
+            $this->accountManagementMock,
+            $this->customerBuilderMock
+        );
+    }
+
+    public function testPopulateCustomerInfo()
+    {
+        $this->quoteMock->expects($this->once())
+            ->method('getCustomer')
+            ->willReturn($this->customerMock);
+        $this->customerMock->expects($this->atLeastOnce())
+            ->method('getId')
+            ->willReturn(null);
+        $this->customerBuilderMock->expects($this->once())
+            ->method('populate')
+            ->with($this->customerMock)
+            ->willReturnSelf();
+        $this->customerMock->expects($this->atLeastOnce())
+            ->method('getDefaultBilling')
+            ->willReturn(100500);
+        $this->customerBuilderMock->expects($this->once())
+            ->method('create')
+            ->willReturn($this->customerMock);
+        $this->quoteMock->expects($this->atLeastOnce())
+            ->method('getBillingAddress')
+            ->willReturn($this->quoteAddressMock);
+        $this->quoteMock->expects($this->atLeastOnce())
+            ->method('getShippingAddress')
+            ->willReturn($this->quoteAddressMock);
+        $this->quoteMock->expects($this->atLeastOnce())
+            ->method('setCustomer')
+            ->with($this->customerMock)
+            ->willReturnSelf();
+        $this->quoteMock->expects($this->once())
+            ->method('getPasswordHash')
+            ->willReturn('password hash');
+        $this->quoteAddressMock->expects($this->atLeastOnce())
+            ->method('getId')
+            ->willReturn(null);
+        $this->customerAddressRepositoryMock->expects($this->atLeastOnce())
+            ->method('getById')
+            ->with(100500)
+            ->willReturn($this->customerAddressMock);
+        $this->quoteAddressMock->expects($this->atLeastOnce())
+            ->method('importCustomerAddressData')
+            ->willReturnSelf();
+        $this->accountManagementMock->expects($this->once())
+            ->method('createAccountWithPasswordHash')
+            ->with($this->customerMock, 'password hash')
+            ->willReturn($this->customerMock);
+        $this->customerManagement->populateCustomerInfo($this->quoteMock);
+    }
+}
diff --git a/dev/tests/unit/testsuite/Magento/Sales/Model/Observer/Backend/CustomerQuoteTest.php b/dev/tests/unit/testsuite/Magento/Quote/Model/Observer/Backend/CustomerQuoteTest.php
similarity index 95%
rename from dev/tests/unit/testsuite/Magento/Sales/Model/Observer/Backend/CustomerQuoteTest.php
rename to dev/tests/unit/testsuite/Magento/Quote/Model/Observer/Backend/CustomerQuoteTest.php
index b418149cc0744b0580c227abd1f3aa51ec5a69af..c1e59dbfd91ce85f9c1bea837717f40fa19583ce 100644
--- a/dev/tests/unit/testsuite/Magento/Sales/Model/Observer/Backend/CustomerQuoteTest.php
+++ b/dev/tests/unit/testsuite/Magento/Quote/Model/Observer/Backend/CustomerQuoteTest.php
@@ -3,7 +3,10 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Observer\Backend;
+
+// @codingStandardsIgnoreFile
+
+namespace Magento\Quote\Model\Observer\Backend;
 
 class CustomerQuoteTest extends \PHPUnit_Framework_TestCase
 {
@@ -23,7 +26,7 @@ class CustomerQuoteTest extends \PHPUnit_Framework_TestCase
     protected $configMock;
 
     /**
-     * @var \PHPUnit_Framework_MockObject_MockObject|\\Magento\Sales\Model\QuoteRepository
+     * @var \PHPUnit_Framework_MockObject_MockObject|\\Magento\Quote\Model\QuoteRepository
      */
     protected $quoteRepositoryMock;
 
@@ -45,7 +48,7 @@ class CustomerQuoteTest extends \PHPUnit_Framework_TestCase
         $this->configMock = $this->getMockBuilder('Magento\Customer\Model\Config\Share')
             ->disableOriginalConstructor()
             ->getMock();
-        $this->quoteRepositoryMock = $this->getMockBuilder('\Magento\Sales\Model\QuoteRepository')
+        $this->quoteRepositoryMock = $this->getMockBuilder('\Magento\Quote\Model\QuoteRepository')
             ->disableOriginalConstructor()
             ->setMethods(['getForCustomer', 'save'])
             ->getMock();
@@ -59,7 +62,7 @@ class CustomerQuoteTest extends \PHPUnit_Framework_TestCase
         $this->observerMock->expects($this->any())->method('getEvent')->will($this->returnValue($this->eventMock));
         $objectManager = new \Magento\TestFramework\Helper\ObjectManager($this);
         $this->customerQuote = $objectManager->getObject(
-            'Magento\Sales\Model\Observer\Backend\CustomerQuote',
+            'Magento\Quote\Model\Observer\Backend\CustomerQuote',
             [
                 'storeManager' => $this->storeManagerMock,
                 'config' => $this->configMock,
@@ -137,9 +140,9 @@ class CustomerQuoteTest extends \PHPUnit_Framework_TestCase
         $this->eventMock->expects($this->any())
             ->method('getOrigCustomerDataObject')
             ->will($this->returnValue($origCustomerDataObjectMock));
-        /** @var \PHPUnit_Framework_MockObject_MockObject|\Magento\Sales\Model\Quote $quoteMock */
+        /** @var \PHPUnit_Framework_MockObject_MockObject|\Magento\Quote\Model\Quote $quoteMock */
         $quoteMock = $this->getMockBuilder(
-            'Magento\Sales\Model\Quote'
+            'Magento\Quote\Model\Quote'
         )->setMethods(
                 [
                     'setWebsite',
diff --git a/dev/tests/unit/testsuite/Magento/Sales/Model/Observer/Frontend/Quote/Address/CollectTotalsTest.php b/dev/tests/unit/testsuite/Magento/Quote/Model/Observer/Frontend/Quote/Address/CollectTotalsTest.php
similarity index 95%
rename from dev/tests/unit/testsuite/Magento/Sales/Model/Observer/Frontend/Quote/Address/CollectTotalsTest.php
rename to dev/tests/unit/testsuite/Magento/Quote/Model/Observer/Frontend/Quote/Address/CollectTotalsTest.php
index 1cb69909ce8a5b972844f4a4ccec292fbee063a8..efdb5bfdb222557169ece9d4aea60df7363c4edb 100644
--- a/dev/tests/unit/testsuite/Magento/Sales/Model/Observer/Frontend/Quote/Address/CollectTotalsTest.php
+++ b/dev/tests/unit/testsuite/Magento/Quote/Model/Observer/Frontend/Quote/Address/CollectTotalsTest.php
@@ -3,7 +3,10 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Observer\Frontend\Quote\Address;
+
+// @codingStandardsIgnoreFile
+
+namespace Magento\Quote\Model\Observer\Frontend\Quote\Address;
 
 /**
  * Class CollectTotalsTest
@@ -11,7 +14,7 @@ namespace Magento\Sales\Model\Observer\Frontend\Quote\Address;
 class CollectTotalsTest extends \PHPUnit_Framework_TestCase
 {
     /**
-     * @var \Magento\Sales\Model\Observer\Frontend\Quote\Address\CollectTotals
+     * @var \Magento\Quote\Model\Observer\Frontend\Quote\Address\CollectTotals
      */
     protected $model;
 
@@ -75,6 +78,9 @@ class CollectTotalsTest extends \PHPUnit_Framework_TestCase
      */
     protected $groupInterfaceMock;
 
+    /**
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
+     */
     protected function setUp()
     {
         $this->objectManager = new \Magento\TestFramework\Helper\ObjectManager($this);
@@ -98,7 +104,7 @@ class CollectTotalsTest extends \PHPUnit_Framework_TestCase
             false
         );
         $this->vatValidatorMock = $this->getMock(
-            'Magento\Sales\Model\Observer\Frontend\Quote\Address\VatValidator',
+            'Magento\Quote\Model\Observer\Frontend\Quote\Address\VatValidator',
             [],
             [],
             '',
@@ -113,7 +119,7 @@ class CollectTotalsTest extends \PHPUnit_Framework_TestCase
         );
 
         $this->quoteAddressMock = $this->getMock(
-            'Magento\Sales\Model\Quote\Address',
+            'Magento\Quote\Model\Quote\Address',
             ['getCountryId', 'getVatId', 'getQuote', 'setPrevQuoteCustomerGroupId', '__wakeup'],
             [],
             '',
@@ -122,7 +128,7 @@ class CollectTotalsTest extends \PHPUnit_Framework_TestCase
         );
 
         $this->quoteMock = $this->getMock(
-            'Magento\Sales\Model\Quote',
+            'Magento\Quote\Model\Quote',
             ['setCustomerGroupId', 'getCustomerGroupId', 'getCustomer', '__wakeup', 'setCustomer'],
             [],
             '',
@@ -165,7 +171,7 @@ class CollectTotalsTest extends \PHPUnit_Framework_TestCase
         $this->customerMock->expects($this->any())->method('getStoreId')->will($this->returnValue($this->storeId));
 
         $this->model = $this->objectManager->getObject(
-            'Magento\Sales\Model\Observer\Frontend\Quote\Address\CollectTotals',
+            'Magento\Quote\Model\Observer\Frontend\Quote\Address\CollectTotals',
             [
                 'customerAddressHelper' => $this->customerAddressMock,
                 'customerVat' => $this->customerVatMock,
@@ -191,6 +197,9 @@ class CollectTotalsTest extends \PHPUnit_Framework_TestCase
         $this->model->dispatch($this->observerMock);
     }
 
+    /**
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
+     */
     public function testDispatchWithCustomerCountryNotInEUAndNotLoggedCustomerInGroup()
     {
         $this->groupManagementMock->expects($this->once())
diff --git a/dev/tests/unit/testsuite/Magento/Sales/Model/Observer/Frontend/Quote/Address/VatValidatorTest.php b/dev/tests/unit/testsuite/Magento/Quote/Model/Observer/Frontend/Quote/Address/VatValidatorTest.php
similarity index 97%
rename from dev/tests/unit/testsuite/Magento/Sales/Model/Observer/Frontend/Quote/Address/VatValidatorTest.php
rename to dev/tests/unit/testsuite/Magento/Quote/Model/Observer/Frontend/Quote/Address/VatValidatorTest.php
index 76a3611e15c35f6efa54510ecf6d3b96f46f8965..b34ec9cdde6f3922c680f2fb0b05bb4ec1d4c1c5 100644
--- a/dev/tests/unit/testsuite/Magento/Sales/Model/Observer/Frontend/Quote/Address/VatValidatorTest.php
+++ b/dev/tests/unit/testsuite/Magento/Quote/Model/Observer/Frontend/Quote/Address/VatValidatorTest.php
@@ -3,12 +3,12 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Observer\Frontend\Quote\Address;
+namespace Magento\Quote\Model\Observer\Frontend\Quote\Address;
 
 class VatValidatorTest extends \PHPUnit_Framework_TestCase
 {
     /**
-     * @var \Magento\Sales\Model\Observer\Frontend\Quote\Address\VatValidator
+     * @var \Magento\Quote\Model\Observer\Frontend\Quote\Address\VatValidator
      */
     protected $model;
 
@@ -56,7 +56,7 @@ class VatValidatorTest extends \PHPUnit_Framework_TestCase
         $this->storeMock = $this->getMock('Magento\Store\Model\Store', [], [], '', false);
 
         $this->quoteAddressMock = $this->getMock(
-            'Magento\Sales\Model\Quote\Address',
+            'Magento\Quote\Model\Quote\Address',
             [
                 'getCountryId',
                 'getVatId',
@@ -116,7 +116,7 @@ class VatValidatorTest extends \PHPUnit_Framework_TestCase
 
         $this->validationResult = new \Magento\Framework\Object($this->testData);
 
-        $this->model = new \Magento\Sales\Model\Observer\Frontend\Quote\Address\VatValidator(
+        $this->model = new \Magento\Quote\Model\Observer\Frontend\Quote\Address\VatValidator(
             $this->customerAddressMock,
             $this->customerVatMock
         );
diff --git a/dev/tests/unit/testsuite/Magento/Quote/Model/Quote/Address/ToOrderAddressTest.php b/dev/tests/unit/testsuite/Magento/Quote/Model/Quote/Address/ToOrderAddressTest.php
new file mode 100644
index 0000000000000000000000000000000000000000..107b72ac88e4027f984211f56c42cd3d8955b656
--- /dev/null
+++ b/dev/tests/unit/testsuite/Magento/Quote/Model/Quote/Address/ToOrderAddressTest.php
@@ -0,0 +1,77 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+namespace Magento\Quote\Model\Quote\Address;
+
+use Magento\TestFramework\Helper\ObjectManager;
+
+/**
+ * Tests Address convert to order
+ */
+class ToOrderAddressTest extends \PHPUnit_Framework_TestCase
+{
+    /**
+     * @var \Magento\Framework\Object\Copy | \PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $objectCopyMock;
+
+    /**
+     * @var \Magento\Sales\Api\Data\OrderAddressDataBuilder | \PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $orderAddressBuilderMock;
+
+    /**
+     * @var \Magento\Sales\Api\Data\OrderInterface | \PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $orderInterfaceMock;
+
+    /**
+     * @var \Magento\Quote\Model\Quote\Address\ToOrder
+     */
+    protected $converter;
+
+    protected function setUp()
+    {
+        $this->orderAddressBuilderMock = $this->getMock(
+            'Magento\Sales\Api\Data\OrderAddressDataBuilder',
+            ['populateWithArray', 'create'],
+            [],
+            '',
+            false
+        );
+        $this->objectCopyMock = $this->getMock('Magento\Framework\Object\Copy', [], [], '', false);
+        $this->orderInterfaceMock = $this->getMock('Magento\Sales\Api\Data\OrderInterface', [], [], '', false);
+        $objectManager = new ObjectManager($this);
+        $this->converter = $objectManager->getObject(
+            'Magento\Quote\Model\Quote\Address\ToOrderAddress',
+            [
+                'orderAddressBuilder' => $this->orderAddressBuilderMock,
+                'objectCopyService' => $this->objectCopyMock
+            ]
+        );
+    }
+
+    public function testConvert()
+    {
+        $orderData = ['test' => 'test1'];
+        $data = ['test' => 'beer'];
+        /**
+         * @var \Magento\Quote\Model\Quote\Address $object
+         */
+        $object = $this->getMock('Magento\Quote\Model\Quote\Address', [], [], '', false);
+        $this->objectCopyMock->expects($this->once())->method('getDataFromFieldset')->with(
+            'quote_convert_address',
+            'to_order_address',
+            $object
+        )->willReturn($orderData);
+        $this->orderAddressBuilderMock->expects($this->once())->method('populateWithArray')
+            ->with(['test' => 'beer'])
+            ->willReturnSelf();
+        $this->orderAddressBuilderMock->expects($this->once())
+            ->method('create')
+            ->willReturn($this->orderInterfaceMock);
+        $this->assertSame($this->orderInterfaceMock, $this->converter->convert($object, $data));
+    }
+}
diff --git a/dev/tests/unit/testsuite/Magento/Quote/Model/Quote/Address/ToOrderTest.php b/dev/tests/unit/testsuite/Magento/Quote/Model/Quote/Address/ToOrderTest.php
new file mode 100644
index 0000000000000000000000000000000000000000..108ff28201532fd4b5fe7a8e71e5dff5fbb824ac
--- /dev/null
+++ b/dev/tests/unit/testsuite/Magento/Quote/Model/Quote/Address/ToOrderTest.php
@@ -0,0 +1,91 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+namespace Magento\Quote\Model\Quote\Address;
+
+use Magento\TestFramework\Helper\ObjectManager;
+
+/**
+ * Tests Address convert to order address
+ */
+class ToOrderTest extends \PHPUnit_Framework_TestCase
+{
+    /**
+     * @var \Magento\Framework\Object\Copy | \PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $objectCopyMock;
+
+    /**
+     * @var \Magento\Sales\Api\Data\OrderDataBuilder | \PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $orderDataBuilderMock;
+
+    /**
+     * @var \Magento\Sales\Api\Data\OrderInterface | \PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $orderInterfaceMock;
+
+    /**
+     * @var \Magento\Quote\Model\Quote\Address\ToOrder
+     */
+    protected $converter;
+
+    /**
+     * @var \PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $eventManagerMock;
+
+    protected function setUp()
+    {
+        $this->orderDataBuilderMock = $this->getMock(
+            'Magento\Sales\Api\Data\OrderDataBuilder',
+            ['populateWithArray', 'create', 'setStoreId', 'setQuoteId'],
+            [],
+            '',
+            false
+        );
+        $this->objectCopyMock = $this->getMock('Magento\Framework\Object\Copy', [], [], '', false);
+        $this->orderInterfaceMock = $this->getMock('Magento\Sales\Api\Data\OrderInterface', [], [], '', false);
+        $this->eventManagerMock = $this->getMock('Magento\Framework\Event\ManagerInterface', [], [], '', false);
+        $objectManager = new ObjectManager($this);
+        $this->converter = $objectManager->getObject(
+            'Magento\Quote\Model\Quote\Address\ToOrder',
+            [
+                'orderBuilder' => $this->orderDataBuilderMock,
+                'objectCopyService' => $this->objectCopyMock,
+                'eventManager' => $this->eventManagerMock
+            ]
+        );
+    }
+
+    public function testConvert()
+    {
+        $orderData = ['test' => 'test1'];
+        $data = ['test' => 'beer'];
+        $quoteId = 1;
+        $storeId = 777;
+
+        $object = $this->getMock('Magento\Quote\Model\Quote\Address', [], [], '', false);
+        $quote = $this->getMock('Magento\Quote\Model\Quote', [], [], '', false);
+        $object->expects($this->exactly(4))->method('getQuote')->willReturn($quote);
+        $quote->expects($this->once())->method('getId')->willReturn($quoteId);
+        $quote->expects($this->once())->method('getStoreId')->willReturn($storeId);
+        $this->objectCopyMock->expects($this->once())->method('getDataFromFieldset')->with(
+            'quote_convert_address',
+            'to_order',
+            $object
+        )->willReturn($orderData);
+        $this->orderDataBuilderMock->expects($this->once())->method('populateWithArray')
+            ->with(['test' => 'beer'])
+            ->willReturnSelf();
+        $this->orderDataBuilderMock->expects($this->once())->method('setStoreId')->with($storeId)->willReturnSelf();
+        $this->orderDataBuilderMock->expects($this->once())->method('setQuoteId')->with($quoteId)->willReturnSelf();
+        $this->orderDataBuilderMock->expects($this->once())->method('create')->willReturn($this->orderInterfaceMock);
+        $this->eventManagerMock->expects($this->once())
+            ->method('dispatch')
+            ->with('sales_convert_quote_to_order', ['order' => $this->orderInterfaceMock, 'quote' => $quote]);
+        $this->assertSame($this->orderInterfaceMock, $this->converter->convert($object, $data));
+    }
+}
diff --git a/dev/tests/unit/testsuite/Magento/Sales/Model/Quote/Address/Total/ShippingTest.php b/dev/tests/unit/testsuite/Magento/Quote/Model/Quote/Address/Total/ShippingTest.php
similarity index 90%
rename from dev/tests/unit/testsuite/Magento/Sales/Model/Quote/Address/Total/ShippingTest.php
rename to dev/tests/unit/testsuite/Magento/Quote/Model/Quote/Address/Total/ShippingTest.php
index e0d47cc7b95c34a94caee58a3a01bc392b962b8e..880c7f9c7432a9adf180889a83271c3cba6c2ba7 100644
--- a/dev/tests/unit/testsuite/Magento/Sales/Model/Quote/Address/Total/ShippingTest.php
+++ b/dev/tests/unit/testsuite/Magento/Quote/Model/Quote/Address/Total/ShippingTest.php
@@ -3,19 +3,19 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Quote\Address\Total;
+namespace Magento\Quote\Model\Quote\Address\Total;
 
 class ShippingTest extends \PHPUnit_Framework_TestCase
 {
     /**
-     * @var \Magento\Sales\Model\Quote\Address\Total\Shipping
+     * @var \Magento\Quote\Model\Quote\Address\Total\Shipping
      */
     protected $shippingModel;
 
     protected function setUp()
     {
         $objectManager = new \Magento\TestFramework\Helper\ObjectManager($this);
-        $this->shippingModel = $objectManager->getObject('Magento\Sales\Model\Quote\Address\Total\Shipping');
+        $this->shippingModel = $objectManager->getObject('Magento\Quote\Model\Quote\Address\Total\Shipping');
     }
 
     /**
@@ -24,7 +24,7 @@ class ShippingTest extends \PHPUnit_Framework_TestCase
     public function testFetch($shippingAmount, $shippingDescription, $expectedTotal)
     {
         $address = $this->getMock(
-            'Magento\Sales\Model\Quote\Address',
+            'Magento\Quote\Model\Quote\Address',
             ['getShippingAmount', 'getShippingDescription', 'addTotal', '__wakeup'],
             [],
             '',
diff --git a/dev/tests/unit/testsuite/Magento/Sales/Model/Quote/Address/Total/SubtotalTest.php b/dev/tests/unit/testsuite/Magento/Quote/Model/Quote/Address/Total/SubtotalTest.php
similarity index 90%
rename from dev/tests/unit/testsuite/Magento/Sales/Model/Quote/Address/Total/SubtotalTest.php
rename to dev/tests/unit/testsuite/Magento/Quote/Model/Quote/Address/Total/SubtotalTest.php
index 195b73360c971608465c02a5bdff466dd8e636c4..b9d2d9906886a22357dd0bc78482558ee4faefdc 100644
--- a/dev/tests/unit/testsuite/Magento/Sales/Model/Quote/Address/Total/SubtotalTest.php
+++ b/dev/tests/unit/testsuite/Magento/Quote/Model/Quote/Address/Total/SubtotalTest.php
@@ -3,11 +3,11 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Quote\Address\Total;
+namespace Magento\Quote\Model\Quote\Address\Total;
 
 /**
  * Class SubtotalTest
- * @package Magento\Sales\Model\Quote\Address\Total
+ * @package Magento\Quote\Model\Quote\Address\Total
  * TODO refactor me
  */
 class SubtotalTest extends \PHPUnit_Framework_TestCase
@@ -18,7 +18,7 @@ class SubtotalTest extends \PHPUnit_Framework_TestCase
     protected $objectManager;
 
     /**
-     * @var \Magento\Sales\Model\Quote\Address\Total\Subtotal
+     * @var \Magento\Quote\Model\Quote\Address\Total\Subtotal
      */
     protected $subtotalModel;
 
@@ -33,7 +33,7 @@ class SubtotalTest extends \PHPUnit_Framework_TestCase
     protected function setUp()
     {
         $this->objectManager = new \Magento\TestFramework\Helper\ObjectManager($this);
-        $this->subtotalModel = $this->objectManager->getObject('Magento\Sales\Model\Quote\Address\Total\Subtotal');
+        $this->subtotalModel = $this->objectManager->getObject('Magento\Quote\Model\Quote\Address\Total\Subtotal');
     }
 
     public function collectDataProvider()
@@ -83,17 +83,17 @@ class SubtotalTest extends \PHPUnit_Framework_TestCase
             ->willReturn(1231313);
             //@todo this is a wrong test and it does not check methods. Any digital value will be correct
 
-        /** @var \Magento\Sales\Model\Quote\Item|\PHPUnit_Framework_MockObject_MockObject $quoteItem */
+        /** @var \Magento\Quote\Model\Quote\Item|\PHPUnit_Framework_MockObject_MockObject $quoteItem */
         $quoteItem = $this->objectManager->getObject(
-            'Magento\Sales\Model\Quote\Item',
+            'Magento\Quote\Model\Quote\Item',
             [
                 'stockRegistry' => $this->stockRegistry,
                 'priceCurrency' => $priceCurrency,
             ]
         );
-        /** @var \Magento\Sales\Model\Quote\Address|\PHPUnit_Framework_MockObject_MockObject $address */
+        /** @var \Magento\Quote\Model\Quote\Address|\PHPUnit_Framework_MockObject_MockObject $address */
         $address = $this->getMock(
-            'Magento\Sales\Model\Quote\Address',
+            'Magento\Quote\Model\Quote\Address',
             [],
             [],
             '',
@@ -112,9 +112,9 @@ class SubtotalTest extends \PHPUnit_Framework_TestCase
             false
         );
         $product->expects($this->any())->method('getPrice')->will($this->returnValue($originalPrice));
-        /** @var \Magento\Sales\Model\Quote|\PHPUnit_Framework_MockObject_MockObject $quote */
+        /** @var \Magento\Quote\Model\Quote|\PHPUnit_Framework_MockObject_MockObject $quote */
         $quote = $this->getMock(
-            'Magento\Sales\Model\Quote',
+            'Magento\Quote\Model\Quote',
             [],
             [],
             '',
@@ -144,7 +144,7 @@ class SubtotalTest extends \PHPUnit_Framework_TestCase
         $parentQuoteItem = false;
         if ($itemHasParent) {
             $parentQuoteItem = $this->getMock(
-                'Magento\Sales\Model\Quote\Item',
+                'Magento\Quote\Model\Quote\Item',
                 [],
                 [],
                 '',
diff --git a/dev/tests/unit/testsuite/Magento/Sales/Model/Quote/Address/ValidatorTest.php b/dev/tests/unit/testsuite/Magento/Quote/Model/Quote/Address/ValidatorTest.php
similarity index 96%
rename from dev/tests/unit/testsuite/Magento/Sales/Model/Quote/Address/ValidatorTest.php
rename to dev/tests/unit/testsuite/Magento/Quote/Model/Quote/Address/ValidatorTest.php
index 56acca5992324e3acebf96ef14a01d39b7dc0d9a..eaa2d924f6e5f71740e95a3229761f803e2f0fe8 100644
--- a/dev/tests/unit/testsuite/Magento/Sales/Model/Quote/Address/ValidatorTest.php
+++ b/dev/tests/unit/testsuite/Magento/Quote/Model/Quote/Address/ValidatorTest.php
@@ -4,7 +4,7 @@
  * See COPYING.txt for license details.
  */
 
-namespace Magento\Sales\Model\Quote\Address;
+namespace Magento\Quote\Model\Quote\Address;
 
 use Magento\TestFramework\Helper\ObjectManager;
 
@@ -36,7 +36,7 @@ class ValidatorTest extends \PHPUnit_Framework_TestCase
         $this->countryFactoryMock = $this->getMock('\Magento\Directory\Model\CountryFactory', [], [], '', false);
         $this->countryMock = $this->getMock('\Magento\Directory\Model\Country', [], [], '', false);
         $this->itemMock = $this->getMock(
-            '\Magento\Sales\Model\Quote\Address',
+            '\Magento\Quote\Model\Quote\Address',
             ['getCountryId', 'getEmail'],
             [],
             '',
@@ -47,7 +47,7 @@ class ValidatorTest extends \PHPUnit_Framework_TestCase
             ->method('create')
             ->will($this->returnValue($this->countryMock));
         $this->model = $objectManager->getObject(
-            'Magento\Sales\Model\Quote\Address\Validator',
+            'Magento\Quote\Model\Quote\Address\Validator',
             [
                 'countryFactory' => $this->countryFactoryMock,
             ]
diff --git a/dev/tests/unit/testsuite/Magento/Sales/Model/Quote/AddressTest.php b/dev/tests/unit/testsuite/Magento/Quote/Model/Quote/AddressTest.php
similarity index 94%
rename from dev/tests/unit/testsuite/Magento/Sales/Model/Quote/AddressTest.php
rename to dev/tests/unit/testsuite/Magento/Quote/Model/Quote/AddressTest.php
index 24821a04221a89896fa553ca263e791c5bba0766..6d45948f758f97ab288da9546093ae7b1d8eb97c 100644
--- a/dev/tests/unit/testsuite/Magento/Sales/Model/Quote/AddressTest.php
+++ b/dev/tests/unit/testsuite/Magento/Quote/Model/Quote/AddressTest.php
@@ -3,7 +3,10 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Quote;
+
+// @codingStandardsIgnoreFile
+
+namespace Magento\Quote\Model\Quote;
 
 use Magento\Store\Model\ScopeInterface;
 
@@ -18,7 +21,7 @@ class AddressTest extends \PHPUnit_Framework_TestCase
     private $address;
 
     /**
-     * @var \Magento\Sales\Model\Quote | \PHPUnit_Framework_MockObject_MockObject
+     * @var \Magento\Quote\Model\Quote | \PHPUnit_Framework_MockObject_MockObject
      */
     private $quote;
 
@@ -34,12 +37,12 @@ class AddressTest extends \PHPUnit_Framework_TestCase
         $this->scopeConfig = $this->getMock('Magento\Framework\App\Config', [], [], '', false);
 
         $this->address = $objectManager->getObject(
-                'Magento\Sales\Model\Quote\Address',
+                'Magento\Quote\Model\Quote\Address',
                 [
                     'scopeConfig' => $this->scopeConfig
                 ]
             );
-        $this->quote = $this->getMock('Magento\Sales\Model\Quote', [], [], '', false);
+        $this->quote = $this->getMock('Magento\Quote\Model\Quote', [], [], '', false);
         $this->address->setQuote($this->quote);
     }
 
diff --git a/dev/tests/unit/testsuite/Magento/Sales/Model/Quote/ConfigTest.php b/dev/tests/unit/testsuite/Magento/Quote/Model/Quote/ConfigTest.php
similarity index 84%
rename from dev/tests/unit/testsuite/Magento/Sales/Model/Quote/ConfigTest.php
rename to dev/tests/unit/testsuite/Magento/Quote/Model/Quote/ConfigTest.php
index d4a7df45e7ba493c8196fc74c4cb72534496e5d6..93a64a14b135fef0c1289e3a82bcd6035e2880bc 100644
--- a/dev/tests/unit/testsuite/Magento/Sales/Model/Quote/ConfigTest.php
+++ b/dev/tests/unit/testsuite/Magento/Quote/Model/Quote/ConfigTest.php
@@ -3,12 +3,12 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Quote;
+namespace Magento\Quote\Model\Quote;
 
 class ConfigTest extends \PHPUnit_Framework_TestCase
 {
     /**
-     * @var \Magento\Sales\Model\Quote\Config
+     * @var \Magento\Quote\Model\Quote\Config
      */
     protected $_model;
 
@@ -26,7 +26,7 @@ class ConfigTest extends \PHPUnit_Framework_TestCase
             '',
             false
         );
-        $this->_model = new \Magento\Sales\Model\Quote\Config($this->_attributeConfig);
+        $this->_model = new \Magento\Quote\Model\Quote\Config($this->_attributeConfig);
     }
 
     public function testGetProductAttributes()
@@ -37,7 +37,7 @@ class ConfigTest extends \PHPUnit_Framework_TestCase
         )->method(
             'getAttributeNames'
         )->with(
-            'sales_quote_item'
+            'quote_item'
         )->will(
             $this->returnValue($attributes)
         );
diff --git a/dev/tests/unit/testsuite/Magento/Sales/Model/Quote/Item/AbstractItemTest.php b/dev/tests/unit/testsuite/Magento/Quote/Model/Quote/Item/AbstractItemTest.php
similarity index 93%
rename from dev/tests/unit/testsuite/Magento/Sales/Model/Quote/Item/AbstractItemTest.php
rename to dev/tests/unit/testsuite/Magento/Quote/Model/Quote/Item/AbstractItemTest.php
index 476f9c5f870b5b2fcc222874f57dbd8b907cbf7d..3c3360880d467d98292cddf41029063944976c53 100644
--- a/dev/tests/unit/testsuite/Magento/Sales/Model/Quote/Item/AbstractItemTest.php
+++ b/dev/tests/unit/testsuite/Magento/Quote/Model/Quote/Item/AbstractItemTest.php
@@ -3,7 +3,7 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Quote\Item;
+namespace Magento\Quote\Model\Quote\Item;
 
 /**
  * Class AbstractItemTest
@@ -22,7 +22,7 @@ class AbstractItemTest extends \PHPUnit_Framework_TestCase
     public function testGetTotalDiscountAmount($expectedDiscountAmount, $children, $calculated, $myDiscountAmount)
     {
         $abstractItemMock = $this->getMockForAbstractClass(
-            '\Magento\Sales\Model\Quote\Item\AbstractItem',
+            '\Magento\Quote\Model\Quote\Item\AbstractItem',
             [],
             '',
             false,
@@ -51,7 +51,7 @@ class AbstractItemTest extends \PHPUnit_Framework_TestCase
     {
         $childOneDiscountAmount = 1000;
         $childOneItemMock = $this->getMockForAbstractClass(
-            '\Magento\Sales\Model\Quote\Item\AbstractItem',
+            '\Magento\Quote\Model\Quote\Item\AbstractItem',
             [],
             '',
             false,
@@ -65,7 +65,7 @@ class AbstractItemTest extends \PHPUnit_Framework_TestCase
 
         $childTwoDiscountAmount = 50;
         $childTwoItemMock = $this->getMockForAbstractClass(
-            '\Magento\Sales\Model\Quote\Item\AbstractItem',
+            '\Magento\Quote\Model\Quote\Item\AbstractItem',
             [],
             '',
             false,
diff --git a/dev/tests/unit/testsuite/Magento/Sales/Helper/Quote/Item/CompareTest.php b/dev/tests/unit/testsuite/Magento/Quote/Model/Quote/Item/CompareTest.php
similarity index 91%
rename from dev/tests/unit/testsuite/Magento/Sales/Helper/Quote/Item/CompareTest.php
rename to dev/tests/unit/testsuite/Magento/Quote/Model/Quote/Item/CompareTest.php
index 026a4fd1a0ead34b10487c780fbe1306bacf20d7..866f647b8e0e067c3193403fec0384f59868af54 100644
--- a/dev/tests/unit/testsuite/Magento/Sales/Helper/Quote/Item/CompareTest.php
+++ b/dev/tests/unit/testsuite/Magento/Quote/Model/Quote/Item/CompareTest.php
@@ -4,7 +4,9 @@
  * See COPYING.txt for license details.
  */
 
-namespace Magento\Sales\Helper\Quote\Item;
+// @codingStandardsIgnoreFile
+
+namespace Magento\Quote\Model\Quote\Item;
 
 /**
  * Class CompareTest
@@ -12,22 +14,22 @@ namespace Magento\Sales\Helper\Quote\Item;
 class CompareTest extends \PHPUnit_Framework_TestCase
 {
     /**
-     * @var \Magento\Sales\Helper\Quote\Item\Compare
+     * @var \Magento\Quote\Model\Quote\Item\Compare
      */
     protected $helper;
 
     /**
-     * @var \Magento\Sales\Model\Quote\Item|\PHPUnit_Framework_MockObject_MockObject
+     * @var \Magento\Quote\Model\Quote\Item|\PHPUnit_Framework_MockObject_MockObject
      */
     protected $itemMock;
 
     /**
-     * @var \Magento\Sales\Model\Quote\Item|\PHPUnit_Framework_MockObject_MockObject
+     * @var \Magento\Quote\Model\Quote\Item|\PHPUnit_Framework_MockObject_MockObject
      */
     protected $comparedMock;
 
     /**
-     * @var \Magento\Sales\Model\Quote\Item\Option|\PHPUnit_Framework_MockObject_MockObject
+     * @var \Magento\Quote\Model\Quote\Item\Option|\PHPUnit_Framework_MockObject_MockObject
      */
     protected $optionMock;
 
@@ -37,28 +39,28 @@ class CompareTest extends \PHPUnit_Framework_TestCase
     public function setUp()
     {
         $this->itemMock = $this->getMock(
-            'Magento\Sales\Model\Quote\Item',
+            'Magento\Quote\Model\Quote\Item',
             ['__wakeup', 'getProductId', 'getOptions'],
             [],
             '',
             false
         );
         $this->comparedMock = $this->getMock(
-            'Magento\Sales\Model\Quote\Item',
+            'Magento\Quote\Model\Quote\Item',
             ['__wakeup', 'getProductId', 'getOptions'],
             [],
             '',
             false
         );
         $this->optionMock = $this->getMock(
-            'Magento\Sales\Model\Quote\Item\Option',
+            'Magento\Quote\Model\Quote\Item\Option',
             ['__wakeup', 'getCode', 'getValue'],
             [],
             '',
             false
         );
 
-        $this->helper = new \Magento\Sales\Helper\Quote\Item\Compare();
+        $this->helper = new \Magento\Quote\Model\Quote\Item\Compare();
     }
 
     /**
diff --git a/dev/tests/unit/testsuite/Magento/Sales/Model/Quote/Item/ProcessorTest.php b/dev/tests/unit/testsuite/Magento/Quote/Model/Quote/Item/ProcessorTest.php
similarity index 96%
rename from dev/tests/unit/testsuite/Magento/Sales/Model/Quote/Item/ProcessorTest.php
rename to dev/tests/unit/testsuite/Magento/Quote/Model/Quote/Item/ProcessorTest.php
index d2b2fdfba4df435e2f3b70f0bc7dc6ee353d7e74..940dd0f57106e35b41c542d7896b6beb8bf05d18 100644
--- a/dev/tests/unit/testsuite/Magento/Sales/Model/Quote/Item/ProcessorTest.php
+++ b/dev/tests/unit/testsuite/Magento/Quote/Model/Quote/Item/ProcessorTest.php
@@ -3,18 +3,18 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Quote\Item;
+namespace Magento\Quote\Model\Quote\Item;
 
-use Magento\Catalog\Model\Product;
-use Magento\Sales\Model\Quote\ItemFactory;
-use Magento\Sales\Model\Quote\Item;
+use \Magento\Catalog\Model\Product;
+use Magento\Quote\Model\Quote\ItemFactory;
+use Magento\Quote\Model\Quote\Item;
 use Magento\Store\Model\StoreManagerInterface;
 use Magento\Store\Model\Store;
 use Magento\Framework\App\State;
 use Magento\Framework\Object;
 
 /**
- * Tests for Magento\Sales\Model\Service\Quote\Processor
+ * Tests for Magento\Quote\Model\Service\Quote\Processor
  */
 class ProcessorTest extends \PHPUnit_Framework_TestCase
 {
@@ -61,7 +61,7 @@ class ProcessorTest extends \PHPUnit_Framework_TestCase
     protected function setUp()
     {
         $this->quoteItemFactoryMock = $this->getMock(
-            'Magento\Sales\Model\Quote\ItemFactory',
+            'Magento\Quote\Model\Quote\ItemFactory',
             ['create'],
             [],
             '',
@@ -69,7 +69,7 @@ class ProcessorTest extends \PHPUnit_Framework_TestCase
         );
 
         $this->itemMock = $this->getMock(
-            'Magento\Sales\Model\Quote\Item',
+            'Magento\Quote\Model\Quote\Item',
             ['getId', 'setOptions', '__wakeup', 'setProduct', 'addQty', 'setCustomPrice', 'setOriginalCustomPrice'],
             [],
             '',
diff --git a/dev/tests/unit/testsuite/Magento/Sales/Model/Quote/Item/RelatedProductsTest.php b/dev/tests/unit/testsuite/Magento/Quote/Model/Quote/Item/RelatedProductsTest.php
similarity index 83%
rename from dev/tests/unit/testsuite/Magento/Sales/Model/Quote/Item/RelatedProductsTest.php
rename to dev/tests/unit/testsuite/Magento/Quote/Model/Quote/Item/RelatedProductsTest.php
index f257cd8220e4d8c912a6ed4e7354afdb7f3070cf..6403e1054d93e1ed3888deb2a3e2d00c172e8ef5 100644
--- a/dev/tests/unit/testsuite/Magento/Sales/Model/Quote/Item/RelatedProductsTest.php
+++ b/dev/tests/unit/testsuite/Magento/Quote/Model/Quote/Item/RelatedProductsTest.php
@@ -3,12 +3,12 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Quote\Item;
+namespace Magento\Quote\Model\Quote\Item;
 
 class RelatedProductsTest extends \PHPUnit_Framework_TestCase
 {
     /**
-     * @var \Magento\Sales\Model\Quote\Item\RelatedProducts
+     * @var \Magento\Quote\Model\Quote\Item\RelatedProducts
      */
     protected $model;
 
@@ -20,7 +20,7 @@ class RelatedProductsTest extends \PHPUnit_Framework_TestCase
     protected function setUp()
     {
         $this->relatedProductTypes = ['type1', 'type2', 'type3'];
-        $this->model = new \Magento\Sales\Model\Quote\Item\RelatedProducts($this->relatedProductTypes);
+        $this->model = new \Magento\Quote\Model\Quote\Item\RelatedProducts($this->relatedProductTypes);
     }
 
     /**
@@ -28,14 +28,14 @@ class RelatedProductsTest extends \PHPUnit_Framework_TestCase
      * @param int|bool $productId
      * @param array $expectedResult
      *
-     * @covers \Magento\Sales\Model\Quote\Item\RelatedProducts::getRelatedProductIds
+     * @covers \Magento\Quote\Model\Quote\Item\RelatedProducts::getRelatedProductIds
      * @dataProvider getRelatedProductIdsDataProvider
      */
     public function testGetRelatedProductIds($optionValue, $productId, $expectedResult)
     {
-        $quoteItemMock = $this->getMock('\Magento\Sales\Model\Quote\Item', [], [], '', false);
+        $quoteItemMock = $this->getMock('\Magento\Quote\Model\Quote\Item', [], [], '', false);
         $itemOptionMock = $this->getMock(
-            '\Magento\Sales\Model\Quote\Item\Option',
+            '\Magento\Quote\Model\Quote\Item\Option',
             ['getValue', 'getProductId', '__wakeup'],
             [],
             '',
@@ -75,11 +75,11 @@ class RelatedProductsTest extends \PHPUnit_Framework_TestCase
     }
 
     /**
-     * @covers \Magento\Sales\Model\Quote\Item\RelatedProducts::getRelatedProductIds
+     * @covers \Magento\Quote\Model\Quote\Item\RelatedProducts::getRelatedProductIds
      */
     public function testGetRelatedProductIdsNoOptions()
     {
-        $quoteItemMock = $this->getMock('\Magento\Sales\Model\Quote\Item', [], [], '', false);
+        $quoteItemMock = $this->getMock('\Magento\Quote\Model\Quote\Item', [], [], '', false);
 
         $quoteItemMock->expects(
             $this->once()
diff --git a/dev/tests/unit/testsuite/Magento/Quote/Model/Quote/Item/ToOrderItemTest.php b/dev/tests/unit/testsuite/Magento/Quote/Model/Quote/Item/ToOrderItemTest.php
new file mode 100644
index 0000000000000000000000000000000000000000..0318e1409c69d0545e2b6923cfff869c7ce3cd0e
--- /dev/null
+++ b/dev/tests/unit/testsuite/Magento/Quote/Model/Quote/Item/ToOrderItemTest.php
@@ -0,0 +1,130 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+namespace Magento\Quote\Model\Quote\Item;
+
+/**
+ * Class ToOrderItemTest
+ */
+class ToOrderItemTest extends \PHPUnit_Framework_TestCase
+{
+    /**
+     * @var \Magento\Quote\Model\Quote\Item\ToOrderItem
+     */
+    protected $converter;
+
+    /**
+     * @var \Magento\Sales\Api\Data\OrderItemDataBuilder|\PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $orderItemBuilderMock;
+
+    /**
+     * @var \Magento\Framework\Object\Copy|\PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $objectCopyServiceMock;
+
+    /**
+     * @var \Magento\Quote\Model\Quote\Item|\PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $quoteItemMock;
+
+    /**
+     * @var \Magento\Catalog\Model\Product|\PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $productMock;
+
+    /**
+     * @var \Magento\Catalog\Model\Product\Type\Simple|\PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $productTypeMock;
+
+    /**
+     * @var \Magento\Sales\Api\Data\OrderItemInterface|\PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $orderItemMock;
+
+    public function setUp()
+    {
+        $this->orderItemBuilderMock = $this->getMock(
+            'Magento\Sales\Api\Data\OrderItemDataBuilder',
+            ['populateWithArray', 'create', 'setProductOptions'],
+            [],
+            '',
+            false
+        );
+        $this->objectCopyServiceMock = $this->getMock(
+            'Magento\Framework\Object\Copy',
+            [],
+            [],
+            '',
+            false
+        );
+        $this->quoteItemMock = $this->getMock(
+            'Magento\Quote\Model\Quote\Item',
+            [],
+            [],
+            '',
+            false
+        );
+        $this->productMock = $this->getMock(
+            'Magento\Catalog\Model\Product',
+            [],
+            [],
+            '',
+            false
+        );
+        $this->productTypeMock = $this->getMock(
+            'Magento\Catalog\Model\Product\Type\Simple',
+            [],
+            [],
+            '',
+            false
+        );
+        $this->orderItemMock = $this->getMock(
+            'Magento\Sales\Model\Order\Item',
+            [],
+            [],
+            '',
+            false
+        );
+
+        $this->converter = new \Magento\Quote\Model\Quote\Item\ToOrderItem(
+            $this->orderItemBuilderMock,
+            $this->objectCopyServiceMock
+        );
+    }
+
+    /**
+     * test for convert method
+     */
+    public function testConvert()
+    {
+        $this->quoteItemMock->expects($this->exactly(2))
+            ->method('getProduct')
+            ->willReturn($this->productMock);
+        $this->productMock->expects($this->once())
+            ->method('getTypeInstance')
+            ->willReturn($this->productTypeMock);
+        $this->productTypeMock->expects($this->once())
+            ->method('getOrderOptions')
+            ->with($this->productMock)
+            ->willReturn(['option']);
+        $this->objectCopyServiceMock->expects($this->at(0))
+            ->method('getDataFromFieldset')
+            ->with('quote_convert_item', 'to_order_item', $this->quoteItemMock)
+            ->willReturn([]);
+        $this->objectCopyServiceMock->expects($this->at(1))
+            ->method('getDataFromFieldset')
+            ->with('quote_convert_item', 'to_order_item_discount', $this->quoteItemMock)
+            ->willReturn([]);
+        $this->orderItemBuilderMock->expects($this->once())
+            ->method('create')
+            ->willReturn($this->orderItemMock);
+        $this->assertInstanceOf(
+            'Magento\Sales\Model\Order\Item',
+            $this->converter->convert($this->quoteItemMock, [])
+        );
+    }
+}
diff --git a/dev/tests/unit/testsuite/Magento/Sales/Model/Quote/Item/UpdaterTest.php b/dev/tests/unit/testsuite/Magento/Quote/Model/Quote/Item/UpdaterTest.php
similarity index 97%
rename from dev/tests/unit/testsuite/Magento/Sales/Model/Quote/Item/UpdaterTest.php
rename to dev/tests/unit/testsuite/Magento/Quote/Model/Quote/Item/UpdaterTest.php
index 144113286860098df2e01280028c1bec16f17a8b..35e0a6dfde00b15e7aaf233dff58390eefb6d73c 100644
--- a/dev/tests/unit/testsuite/Magento/Sales/Model/Quote/Item/UpdaterTest.php
+++ b/dev/tests/unit/testsuite/Magento/Quote/Model/Quote/Item/UpdaterTest.php
@@ -3,23 +3,23 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Quote\Item;
+namespace Magento\Quote\Model\Quote\Item;
 
 use Magento\TestFramework\Helper\ObjectManager;
 
 /**
- * Tests  for Magento\Sales\Model\Service\Quote\Updater
+ * Tests  for Magento\Quote\Model\Service\Quote\Updater
  *
  */
 class UpdaterTest extends \PHPUnit_Framework_TestCase
 {
     /**
-     * @var \Magento\Sales\Model\Quote\Item\Updater |\PHPUnit_Framework_MockObject_MockObject
+     * @var \Magento\Quote\Model\Quote\Item\Updater |\PHPUnit_Framework_MockObject_MockObject
      */
     protected $object;
 
     /**
-     * @var \Magento\Sales\Model\Quote\Item |\PHPUnit_Framework_MockObject_MockObject
+     * @var \Magento\Quote\Model\Quote\Item |\PHPUnit_Framework_MockObject_MockObject
      */
     protected $itemMock;
 
@@ -64,7 +64,7 @@ class UpdaterTest extends \PHPUnit_Framework_TestCase
         );
 
         $this->itemMock = $this->getMock(
-            'Magento\Sales\Model\Quote\Item',
+            'Magento\Quote\Model\Quote\Item',
             [
                 'updateItem',
                 'getProduct',
@@ -97,7 +97,7 @@ class UpdaterTest extends \PHPUnit_Framework_TestCase
 
         $this->object = (new ObjectManager($this))
             ->getObject(
-                'Magento\Sales\Model\Quote\Item\Updater',
+                'Magento\Quote\Model\Quote\Item\Updater',
                 [
                     'localeFormat' => $this->localeFormat
                 ]
diff --git a/dev/tests/unit/testsuite/Magento/Sales/Model/Quote/ItemTest.php b/dev/tests/unit/testsuite/Magento/Quote/Model/Quote/ItemTest.php
similarity index 96%
rename from dev/tests/unit/testsuite/Magento/Sales/Model/Quote/ItemTest.php
rename to dev/tests/unit/testsuite/Magento/Quote/Model/Quote/ItemTest.php
index f42e445931b1857c6537b10e02e253347842c69a..131ec74296564e732039ca6e4fc3322c048b6021 100644
--- a/dev/tests/unit/testsuite/Magento/Sales/Model/Quote/ItemTest.php
+++ b/dev/tests/unit/testsuite/Magento/Quote/Model/Quote/ItemTest.php
@@ -3,12 +3,15 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model\Quote;
+
+// @codingStandardsIgnoreFile
+
+namespace Magento\Quote\Model\Quote;
 
 class ItemTest extends \PHPUnit_Framework_TestCase
 {
     /**
-     * @var \Magento\Sales\Model\Quote\Item
+     * @var \Magento\Quote\Model\Quote\Item
      */
     private $model;
 
@@ -33,7 +36,7 @@ class ItemTest extends \PHPUnit_Framework_TestCase
     private $errorInfos;
 
     /**
-     * @var \Magento\Sales\Model\Quote\Item\OptionFactory
+     * @var \Magento\Quote\Model\Quote\Item\OptionFactory
      */
     private $itemOptionFactory;
 
@@ -43,7 +46,7 @@ class ItemTest extends \PHPUnit_Framework_TestCase
     private $objectManagerHelper;
 
     /**
-     * @var \Magento\Sales\Helper\Quote\Item\Compare|\PHPUnit_Framework_MockObject_MockObject
+     * @var \Magento\Quote\Model\Quote\Item\Compare|\PHPUnit_Framework_MockObject_MockObject
      */
     protected $compareHelper;
 
@@ -99,13 +102,13 @@ class ItemTest extends \PHPUnit_Framework_TestCase
             ->method('create')
             ->will($this->returnValue($this->errorInfos));
 
-        $this->itemOptionFactory = $this->getMockBuilder('Magento\Sales\Model\Quote\Item\OptionFactory')
+        $this->itemOptionFactory = $this->getMockBuilder('Magento\Quote\Model\Quote\Item\OptionFactory')
             ->disableOriginalConstructor()
             ->setMethods(['create'])
             ->getMock();
 
         $this->compareHelper = $this->getMock(
-            'Magento\Sales\Helper\Quote\Item\Compare',
+            'Magento\Quote\Model\Quote\Item\Compare',
             [],
             [],
             '',
@@ -129,13 +132,13 @@ class ItemTest extends \PHPUnit_Framework_TestCase
             ->will($this->returnValue($this->stockItemMock));
 
         $this->model = $this->objectManagerHelper->getObject(
-            '\Magento\Sales\Model\Quote\Item',
+            '\Magento\Quote\Model\Quote\Item',
             [
                 'localeFormat' => $this->localeFormat,
                 'context' => $this->modelContext,
                 'statusListFactory' => $statusListFactory,
                 'itemOptionFactory' => $this->itemOptionFactory,
-                'compareHelper' => $this->compareHelper,
+                'quoteItemCompare' => $this->compareHelper,
                 'stockRegistry' => $this->stockRegistry
             ]
         );
@@ -143,7 +146,7 @@ class ItemTest extends \PHPUnit_Framework_TestCase
 
     public function testGetAddress()
     {
-        $quote = $this->getMockBuilder('Magento\Sales\Model\Quote')
+        $quote = $this->getMockBuilder('Magento\Quote\Model\Quote')
             ->setMethods(['getShippingAddress', 'getBillingAddress', 'getStoreId', '__wakeup'])
             ->disableOriginalConstructor()
             ->getMock();
@@ -172,7 +175,7 @@ class ItemTest extends \PHPUnit_Framework_TestCase
     {
         $idValue = "id_value";
 
-        $quote = $this->getMockBuilder('Magento\Sales\Model\Quote')
+        $quote = $this->getMockBuilder('Magento\Quote\Model\Quote')
             ->setMethods(['getId', 'getStoreId', '__wakeup'])
             ->disableOriginalConstructor()
             ->getMock();
@@ -223,7 +226,7 @@ class ItemTest extends \PHPUnit_Framework_TestCase
         $existingQuantity = 2;
         $quantityToAdd = 3;
 
-        $parentItemMock = $this->getMockBuilder('Magento\Sales\Model\Quote\Item')
+        $parentItemMock = $this->getMockBuilder('Magento\Quote\Model\Quote\Item')
             ->setMethods(['addChild', '__wakeup'])
             ->disableOriginalConstructor()
             ->getMock();
@@ -269,7 +272,7 @@ class ItemTest extends \PHPUnit_Framework_TestCase
             ->with($quantityToAdd)
             ->will($this->returnValue($preparedQuantityToAdd));
 
-        $quoteMock = $this->getMockBuilder('Magento\Sales\Model\Quote')
+        $quoteMock = $this->getMockBuilder('Magento\Quote\Model\Quote')
             ->disableOriginalConstructor()
             ->setMethods(['getIgnoreOldQty', 'getStoreId', '__wakeup'])
             ->getMock();
@@ -376,7 +379,7 @@ class ItemTest extends \PHPUnit_Framework_TestCase
 
         $storeId = 15;
         $customerGroupId = 11;
-        $quoteMock = $this->getMockBuilder('Magento\Sales\Model\Quote')
+        $quoteMock = $this->getMockBuilder('Magento\Quote\Model\Quote')
             ->disableOriginalConstructor()
             ->setMethods(['getStoreId', 'getCustomerGroupId', '__wakeup'])
             ->getMock();
@@ -502,7 +505,7 @@ class ItemTest extends \PHPUnit_Framework_TestCase
             self::PRODUCT_COST
         );
 
-        $parentItemMock = $this->getMockBuilder('Magento\Sales\Model\Quote\Item')
+        $parentItemMock = $this->getMockBuilder('Magento\Quote\Model\Quote\Item')
             ->setMethods(['addChild', '__wakeup'])
             ->disableOriginalConstructor()
             ->getMock();
@@ -529,7 +532,7 @@ class ItemTest extends \PHPUnit_Framework_TestCase
             self::PRODUCT_COST
         );
 
-        $parentItemMock = $this->getMockBuilder('Magento\Sales\Model\Quote\Item')
+        $parentItemMock = $this->getMockBuilder('Magento\Quote\Model\Quote\Item')
             ->setMethods(['addChild', '__wakeup'])
             ->disableOriginalConstructor()
             ->getMock();
@@ -572,7 +575,7 @@ class ItemTest extends \PHPUnit_Framework_TestCase
             self::PRODUCT_COST
         );
 
-        $parentItemMock = $this->getMockBuilder('Magento\Sales\Model\Quote\Item')
+        $parentItemMock = $this->getMockBuilder('Magento\Quote\Model\Quote\Item')
             ->setMethods(['addChild', '__wakeup'])
             ->disableOriginalConstructor()
             ->getMock();
@@ -615,7 +618,7 @@ class ItemTest extends \PHPUnit_Framework_TestCase
             self::PRODUCT_COST
         );
 
-        $parentItemMock = $this->getMockBuilder('Magento\Sales\Model\Quote\Item')
+        $parentItemMock = $this->getMockBuilder('Magento\Quote\Model\Quote\Item')
             ->setMethods(['addChild', '__wakeup'])
             ->disableOriginalConstructor()
             ->getMock();
@@ -651,7 +654,7 @@ class ItemTest extends \PHPUnit_Framework_TestCase
      */
     public function testCompare()
     {
-        $itemMock = $this->getMock('Magento\Sales\Model\Quote\Item',
+        $itemMock = $this->getMock('Magento\Quote\Model\Quote\Item',
             [],
             [],
             '',
@@ -840,7 +843,7 @@ class ItemTest extends \PHPUnit_Framework_TestCase
 
     private function createOptionMock($optionCode, $optionData = [])
     {
-        $optionMock = $this->getMockBuilder('Magento\Sales\Model\Quote\Item\Option')
+        $optionMock = $this->getMockBuilder('Magento\Quote\Model\Quote\Item\Option')
             ->setMethods(['setData', 'setItem', 'getCode', '__wakeup', 'isDeleted', 'getValue', 'getProduct'])
             ->disableOriginalConstructor()
             ->getMock();
@@ -864,7 +867,7 @@ class ItemTest extends \PHPUnit_Framework_TestCase
         $optionCode = 1234;
         $optionData = ['product' => 'test', 'code' => $optionCode];
 
-        $optionMock = $this->getMockBuilder('Magento\Sales\Model\Quote\Item\Option')
+        $optionMock = $this->getMockBuilder('Magento\Quote\Model\Quote\Item\Option')
             ->setMethods(['setData', 'setItem', 'getCode', '__wakeup', 'isDeleted'])
             ->disableOriginalConstructor()
             ->getMock();
@@ -936,7 +939,7 @@ class ItemTest extends \PHPUnit_Framework_TestCase
     {
         $optionCode = 1234;
 
-        $optionMock = $this->getMockBuilder('Magento\Sales\Model\Quote\Item\Option')
+        $optionMock = $this->getMockBuilder('Magento\Quote\Model\Quote\Item\Option')
             ->setMethods(['setItem', 'getCode', '__wakeup', 'isDeleted'])
             ->disableOriginalConstructor()
             ->getMock();
@@ -973,7 +976,7 @@ class ItemTest extends \PHPUnit_Framework_TestCase
     {
         $optionCode = 1234;
 
-        $optionMock = $this->getMockBuilder('Magento\Sales\Model\Quote\Item\Option')
+        $optionMock = $this->getMockBuilder('Magento\Quote\Model\Quote\Item\Option')
             ->setMethods(['setItem', 'getCode', '__wakeup', 'isDeleted'])
             ->disableOriginalConstructor()
             ->getMock();
@@ -997,7 +1000,7 @@ class ItemTest extends \PHPUnit_Framework_TestCase
     {
         $optionCode = 1234;
 
-        $optionMock = $this->getMockBuilder('Magento\Sales\Model\Quote\Item\Option')
+        $optionMock = $this->getMockBuilder('Magento\Quote\Model\Quote\Item\Option')
             ->setMethods(['setItem', 'getCode', '__wakeup', 'isDeleted'])
             ->disableOriginalConstructor()
             ->getMock();
@@ -1035,7 +1038,7 @@ class ItemTest extends \PHPUnit_Framework_TestCase
     {
         $optionCode = "info_buyRequest";
         $buyRequestQuantity = 23;
-        $optionMock = $this->getMockBuilder('Magento\Sales\Model\Quote\Item\Option')
+        $optionMock = $this->getMockBuilder('Magento\Quote\Model\Quote\Item\Option')
             ->setMethods(['setItem', 'getCode', '__wakeup', 'getValue'])
             ->disableOriginalConstructor()
             ->getMock();
diff --git a/dev/tests/unit/testsuite/Magento/Quote/Model/Quote/Payment/ToOrderPaymentTest.php b/dev/tests/unit/testsuite/Magento/Quote/Model/Quote/Payment/ToOrderPaymentTest.php
new file mode 100644
index 0000000000000000000000000000000000000000..0406acaf7cc4a4bba6413db6871106e560a732f1
--- /dev/null
+++ b/dev/tests/unit/testsuite/Magento/Quote/Model/Quote/Payment/ToOrderPaymentTest.php
@@ -0,0 +1,122 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+
+namespace Magento\Quote\Model\Quote\Payment;
+
+use Magento\Payment\Model\Method\Substitution;
+use Magento\TestFramework\Helper\ObjectManager;
+
+/**
+ * Class ToOrderPaymentTest tests converter to order payment
+ */
+class ToOrderPaymentTest extends \PHPUnit_Framework_TestCase
+{
+    /**
+     * @var \Magento\Sales\Api\Data\OrderPaymentDataBuilder | \PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $orderPaymentBuilderMock;
+
+    /**
+     * @var \Magento\Framework\Object\Copy | \PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $objectCopyMock;
+
+    /**
+     * @var \Magento\Quote\Model\Quote\Payment | \PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $paymentMock;
+
+    /**
+     * @var \Magento\Quote\Model\Quote\Payment\ToOrderPayment
+     */
+    protected $converter;
+
+    public function setUp()
+    {
+        $this->paymentMock = $this->getMock(
+            'Magento\Quote\Model\Quote\Payment',
+            ['getCcNumber', 'getCcCid', 'getMethodInstance', 'getAdditionalInformation'],
+            [],
+            '',
+            false
+        );
+        $this->objectCopyMock = $this->getMock('Magento\Framework\Object\Copy', [], [], '', false);
+        $this->orderPaymentBuilderMock = $this->getMock(
+            'Magento\Sales\Api\Data\OrderPaymentDataBuilder',
+            ['populateWithArray', 'create', 'setAdditionalInformation'],
+            [],
+            '',
+            false
+        );
+        $objectManager = new ObjectManager($this);
+        $this->converter = $objectManager->getObject(
+            'Magento\Quote\Model\Quote\Payment\ToOrderPayment',
+            [
+                'orderPaymentBuilder' => $this->orderPaymentBuilderMock,
+                'objectCopyService' => $this->objectCopyMock
+            ]
+        );
+    }
+
+    /**
+     * Tests Convert method in payment to order payment converter
+     */
+    public function testConvert()
+    {
+        $methodInterface = $this->getMock('Magento\Payment\Model\MethodInterface', [], [], '', false);
+        $orderPayment = $this->getMockForAbstractClass(
+            'Magento\Sales\Api\Data\OrderPaymentInterface',
+            [],
+            '',
+            false,
+            true,
+            true,
+            ['setCcNumber', 'setCcCid']
+        );
+        $paymentData = ['test' => 'test2'];
+        $data = ['some_id' => 1];
+        $paymentMethodTitle = 'TestTitle';
+        $additionalInfo = ['token' => 'TOKEN-123'];
+        $this->paymentMock->expects($this->once())->method('getMethodInstance')->willReturn($methodInterface);
+        $methodInterface->expects($this->once())->method('getTitle')->willReturn($paymentMethodTitle);
+        $this->objectCopyMock->expects($this->once())->method('getDataFromFieldset')->with(
+            'quote_convert_payment',
+            'to_order_payment',
+            $this->paymentMock
+        )->willReturn($paymentData);
+        $this->orderPaymentBuilderMock->expects($this->once())
+            ->method('populateWithArray')
+            ->with(array_merge($paymentData, $data))
+            ->willReturnSelf();
+
+        $this->paymentMock->expects($this->once())
+            ->method('getAdditionalInformation')
+            ->willReturn($additionalInfo);
+        $ccNumber = 123456798;
+        $ccCid = 1234;
+        $this->paymentMock->expects($this->once())
+            ->method('getCcNumber')
+            ->willReturn($ccNumber);
+        $this->paymentMock->expects($this->once())
+            ->method('getCcCid')
+            ->willReturn($ccCid);
+
+        $this->orderPaymentBuilderMock->expects($this->once())
+            ->method('setAdditionalInformation')
+            ->with(serialize(array_merge($additionalInfo, [Substitution::INFO_KEY_TITLE => $paymentMethodTitle])))
+            ->willReturnSelf();
+        $this->orderPaymentBuilderMock->expects($this->once())->method('create')->willReturn($orderPayment);
+        $orderPayment->expects($this->once())
+            ->method('setCcNumber')
+            ->with($ccNumber)
+            ->willReturnSelf();
+        $orderPayment->expects($this->once())
+            ->method('setCcCid')
+            ->with($ccCid)
+            ->willReturnSelf();
+        $this->assertSame($orderPayment, $this->converter->convert($this->paymentMock, $data));
+    }
+}
diff --git a/dev/tests/unit/testsuite/Magento/Quote/Model/QuoteManagementTest.php b/dev/tests/unit/testsuite/Magento/Quote/Model/QuoteManagementTest.php
new file mode 100644
index 0000000000000000000000000000000000000000..bcb93755ebf3e6adfaa3c990a0e0fb71d618fd35
--- /dev/null
+++ b/dev/tests/unit/testsuite/Magento/Quote/Model/QuoteManagementTest.php
@@ -0,0 +1,334 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+
+namespace Magento\Quote\Model;
+
+class QuoteManagementTest extends \PHPUnit_Framework_TestCase
+{
+    /**
+     * @var QuoteManagement
+     */
+    protected $model;
+
+    /**
+     * @var \Magento\Quote\Model\QuoteValidator|\PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $quoteValidator;
+
+    /**
+     * @var \Magento\Framework\Event\ManagerInterface|\PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $eventManager;
+
+    /**
+     * @var \Magento\Sales\Api\Data\OrderDataBuilder|\PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $orderBuilder;
+
+    /**
+     * @var \Magento\Quote\Model\Quote\Address\ToOrder|\PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $quoteAddressToOrder;
+
+    /**
+     * @var \Magento\Quote\Model\Quote\Payment\ToOrderPayment|\PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $quotePaymentToOrderPayment;
+
+    /**
+     * @var \Magento\Quote\Model\Quote\Address\ToOrderAddress|\PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $quoteAddressToOrderAddress;
+
+    /**
+     * @var \Magento\Quote\Model\Quote\Item\ToOrderItem|\PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $quoteItemToOrderItem;
+
+    /**
+     * @var \Magento\Quote\Model\Quote\Payment\ToOrderPayment|\PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $orderManagement;
+
+    /**
+     * @var CustomerManagement
+     */
+    protected $customerManagement;
+
+    protected function setUp()
+    {
+        $objectManager = new \Magento\TestFramework\Helper\ObjectManager($this);
+
+        $this->quoteValidator = $this->getMock('Magento\Quote\Model\QuoteValidator', [], [], '', false);
+        $this->eventManager = $this->getMockForAbstractClass('Magento\Framework\Event\ManagerInterface');
+        $this->orderBuilder = $this->getMock(
+            'Magento\Sales\Api\Data\OrderDataBuilder',
+            [
+                'populate', 'setShippingAddress', 'setBillingAddress', 'setAddresses', 'setPayments',
+                'setItems', 'setCustomerId', 'setQuoteId', 'create', 'setCustomerEmail', 'setCustomerFirstname',
+                'setCustomerMiddlename', 'setCustomerLastname'
+            ],
+            [],
+            '',
+            false
+        );
+        $this->quoteAddressToOrder = $this->getMock(
+            'Magento\Quote\Model\Quote\Address\ToOrder',
+            [],
+            [],
+            '',
+            false
+        );
+        $this->quotePaymentToOrderPayment = $this->getMock(
+            'Magento\Quote\Model\Quote\Payment\ToOrderPayment',
+            [],
+            [],
+            '',
+            false
+        );
+        $this->quoteAddressToOrderAddress = $this->getMock(
+            'Magento\Quote\Model\Quote\Address\ToOrderAddress',
+            [],
+            [],
+            '',
+            false
+        );
+        $this->quoteItemToOrderItem = $this->getMock('Magento\Quote\Model\Quote\Item\ToOrderItem', [], [], '', false);
+        $this->orderManagement = $this->getMock('Magento\Sales\Api\OrderManagementInterface', [], [], '', false);
+        $this->customerManagement = $this->getMock('Magento\Quote\Model\CustomerManagement', [], [], '', false);
+
+        $this->model = $objectManager->getObject(
+            'Magento\Quote\Model\QuoteManagement',
+            [
+                'quoteValidator' => $this->quoteValidator,
+                'eventManager' => $this->eventManager,
+                'orderBuilder' => $this->orderBuilder,
+                'orderManagement' => $this->orderManagement,
+                'customerManagement' => $this->customerManagement,
+                'quoteAddressToOrder' => $this->quoteAddressToOrder,
+                'quoteAddressToOrderAddress' => $this->quoteAddressToOrderAddress,
+                'quoteItemToOrderItem' => $this->quoteItemToOrderItem,
+                'quotePaymentToOrderPayment' => $this->quotePaymentToOrderPayment
+            ]
+        );
+    }
+
+    public function testSubmit()
+    {
+        $orderData = [];
+        $isGuest = true;
+        $isVirtual = false;
+        $customerId = 1;
+        $quoteId = 1;
+        $quoteItem = $this->getMock('Magento\Quote\Model\Quote\Item', [], [], '', false);
+
+        $billingAddress = $this->getMock('Magento\Quote\Model\Quote\Address', [], [], '', false);
+        $shippingAddress = $this->getMock('Magento\Quote\Model\Quote\Address', [], [], '', false);
+        $payment = $this->getMock('Magento\Quote\Model\Quote\Payment', [], [], '', false);
+
+        $baseOrder = $this->getMock('Magento\Sales\Api\Data\OrderInterface', [], [], '', false);
+        $convertedBillingAddress = $this->getMock('Magento\Sales\Api\Data\OrderAddressInterface', [], [], '', false);
+        $convertedShippingAddress = $this->getMock('Magento\Sales\Api\Data\OrderAddressInterface', [], [], '', false);
+        $convertedPayment = $this->getMock('Magento\Sales\Api\Data\OrderPaymentInterface', [], [], '', false);
+        $convertedQuoteItem = $this->getMock('Magento\Sales\Api\Data\OrderItemInterface', [], [], '', false);
+
+        $addresses = [$convertedShippingAddress, $convertedBillingAddress];
+        $payments = [$convertedPayment];
+        $quoteItems = [$quoteItem];
+        $convertedItems = [$convertedQuoteItem];
+
+        $quote = $this->getQuote(
+            $isGuest,
+            $isVirtual,
+            $billingAddress,
+            $payment,
+            $customerId,
+            $quoteId,
+            $quoteItems,
+            $shippingAddress
+        );
+
+        $this->quoteValidator->expects($this->once())
+            ->method('validateBeforeSubmit')
+            ->with($quote);
+
+        $this->quoteAddressToOrder->expects($this->once())
+            ->method('convert')
+            ->with($shippingAddress, $orderData)
+            ->willReturn($baseOrder);
+        $this->quoteAddressToOrderAddress->expects($this->at(0))
+            ->method('convert')
+            ->with($shippingAddress,
+                [
+                    'address_type' => 'shipping',
+                    'email' => 'customer@example.com'
+                ]
+            )
+            ->willReturn($convertedShippingAddress);
+        $this->quoteAddressToOrderAddress->expects($this->at(1))
+            ->method('convert')
+            ->with($billingAddress,
+                [
+                    'address_type' => 'billing',
+                    'email' => 'customer@example.com'
+                ]
+            )
+            ->willReturn($convertedBillingAddress);
+        $this->quoteItemToOrderItem->expects($this->once())
+            ->method('convert')
+            ->with($quoteItem, ['parent_item' => null])
+            ->willReturn($convertedQuoteItem);
+        $this->quotePaymentToOrderPayment->expects($this->once())
+            ->method('convert')
+            ->with($payment)
+            ->willReturn($convertedPayment);
+
+        $order = $this->prepareOrderBuilder(
+            $baseOrder,
+            $convertedBillingAddress,
+            $addresses,
+            $payments,
+            $convertedItems,
+            $quoteId,
+            $convertedShippingAddress
+        );
+
+        $this->orderManagement->expects($this->once())
+            ->method('place')
+            ->with($order)
+            ->willReturn($order);
+
+        $this->eventManager->expects($this->at(0))
+            ->method('dispatch')
+            ->with('sales_model_service_quote_submit_before', ['order' => $order, 'quote' => $quote]);
+        $this->eventManager->expects($this->at(1))
+            ->method('dispatch')
+            ->with('sales_model_service_quote_submit_success', ['order' => $order, 'quote' => $quote]);
+
+        $this->assertEquals($order, $this->model->submit($quote, $orderData));
+    }
+
+    protected function getQuote(
+        $isGuest,
+        $isVirtual,
+        \Magento\Quote\Model\Quote\Address $billingAddress,
+        \Magento\Quote\Model\Quote\Payment $payment,
+        $customerId,
+        $id,
+        array $quoteItems,
+        \Magento\Quote\Model\Quote\Address $shippingAddress = null
+    ) {
+        $quote = $this->getMock(
+            'Magento\Quote\Model\Quote',
+            [
+                'setIsActive',
+                'getCustomerEmail',
+                'getAllVisibleItems',
+                'getCustomerIsGuest',
+                'isVirtual',
+                'getBillingAddress',
+                'getShippingAddress',
+                'getId',
+                'getCustomer',
+                'getAllItems',
+                'getPayment'
+            ],
+            [],
+            '',
+            false
+        );
+        $quote->expects($this->once())
+            ->method('setIsActive')
+            ->with(false);
+        $quote->expects($this->any())
+            ->method('getAllVisibleItems')
+            ->willReturn($quoteItems);
+        $quote->expects($this->once())
+            ->method('getAllItems')
+            ->willReturn($quoteItems);
+        $quote->expects($this->once())
+            ->method('getCustomerIsGuest')
+            ->willReturn($isGuest);
+        $quote->expects($this->once())
+            ->method('isVirtual')
+            ->willReturn($isVirtual);
+        if ($shippingAddress) {
+            $quote->expects($this->exactly(2))
+                ->method('getShippingAddress')
+                ->willReturn($shippingAddress);
+        }
+        $quote->expects($this->once())
+            ->method('getBillingAddress')
+            ->willReturn($billingAddress);
+        $quote->expects($this->once())
+            ->method('getPayment')
+            ->willReturn($payment);
+
+        $customer = $this->getMock('Magento\Customer\Model\Customer', [], [], '', false);
+        $customer->expects($this->once())
+            ->method('getId')
+            ->willReturn($customerId);
+        $quote->expects($this->atLeastOnce())
+            ->method('getCustomerEmail')
+            ->willReturn('customer@example.com');
+        $quote->expects($this->any())
+            ->method('getCustomer')
+            ->willReturn($customer);
+        $quote->expects($this->once())
+            ->method('getId')
+            ->willReturn($id);
+
+        return $quote;
+    }
+
+    protected function prepareOrderBuilder(
+        \Magento\Sales\Api\Data\OrderInterface $baseOrder,
+        \Magento\Sales\Api\Data\OrderAddressInterface $billingAddress,
+        array $addresses,
+        array $payments,
+        array $items,
+        $quoteId,
+        \Magento\Sales\Api\Data\OrderAddressInterface $shippingAddress = null,
+        $customerId = null
+    ) {
+        $this->orderBuilder->expects($this->once())
+            ->method('populate')
+            ->with($baseOrder);
+        if ($shippingAddress) {
+            $this->orderBuilder->expects($this->once())
+                ->method('setShippingAddress')
+                ->with($shippingAddress);
+        }
+        $this->orderBuilder->expects($this->once())
+            ->method('setBillingAddress')
+            ->with($billingAddress);
+        $this->orderBuilder->expects($this->once())
+            ->method('setAddresses')
+            ->with($addresses);
+        $this->orderBuilder->expects($this->once())
+            ->method('setPayments')
+            ->with($payments);
+        $this->orderBuilder->expects($this->once())
+            ->method('setItems')
+            ->with($items);
+        if ($customerId) {
+            $this->orderBuilder->expects($this->once())
+                ->method('setCustomerId')
+                ->with($customerId);
+        }
+        $this->orderBuilder->expects($this->once())
+            ->method('setQuoteId')
+            ->with($quoteId);
+
+        $order = $this->getMock('Magento\Sales\Model\Order', [], [], '', false);
+
+        $this->orderBuilder->expects($this->once())
+            ->method('create')
+            ->willReturn($order);
+
+        return $order;
+    }
+}
diff --git a/dev/tests/unit/testsuite/Magento/Sales/Model/QuoteRepositoryTest.php b/dev/tests/unit/testsuite/Magento/Quote/Model/QuoteRepositoryTest.php
similarity index 98%
rename from dev/tests/unit/testsuite/Magento/Sales/Model/QuoteRepositoryTest.php
rename to dev/tests/unit/testsuite/Magento/Quote/Model/QuoteRepositoryTest.php
index 11e6b619b66c5d11e2732e701543d7d0b8a87ffe..0f1d190d36381995d9407c3f0b9757e70d34044b 100644
--- a/dev/tests/unit/testsuite/Magento/Sales/Model/QuoteRepositoryTest.php
+++ b/dev/tests/unit/testsuite/Magento/Quote/Model/QuoteRepositoryTest.php
@@ -5,7 +5,9 @@
  * See COPYING.txt for license details.
  */
 
-namespace Magento\Sales\Model;
+namespace Magento\Quote\Model;
+
+use Magento\Quote\Model\QuoteRepository;
 
 class QuoteRepositoryTest extends \PHPUnit_Framework_TestCase
 {
@@ -38,10 +40,10 @@ class QuoteRepositoryTest extends \PHPUnit_Framework_TestCase
     {
         $objectManager = new \Magento\TestFramework\Helper\ObjectManager($this);
 
-        $this->quoteFactoryMock = $this->getMock('\Magento\Sales\Model\QuoteFactory', ['create'], [], '', false);
+        $this->quoteFactoryMock = $this->getMock('\Magento\Quote\Model\QuoteFactory', ['create'], [], '', false);
         $this->storeManagerMock = $this->getMock('\Magento\Store\Model\StoreManagerInterface');
         $this->quoteMock = $this->getMock(
-            '\Magento\Sales\Model\Quote',
+            '\Magento\Quote\Model\Quote',
             ['load', 'loadByCustomer', 'getIsActive', 'getId', '__wakeup', 'setSharedStoreIds', 'save', 'delete',
                 'getCustomerId'],
             [],
@@ -50,7 +52,7 @@ class QuoteRepositoryTest extends \PHPUnit_Framework_TestCase
         );
         $this->storeMock = $this->getMock('\Magento\Store\Model\Store', [], [], '', false);
         $this->model = $objectManager->getObject(
-            'Magento\Sales\Model\QuoteRepository',
+            'Magento\Quote\Model\QuoteRepository',
             [
                 'quoteFactory' => $this->quoteFactoryMock,
                 'storeManager' => $this->storeManagerMock,
diff --git a/dev/tests/unit/testsuite/Magento/Sales/Model/QuoteTest.php b/dev/tests/unit/testsuite/Magento/Quote/Model/QuoteTest.php
similarity index 94%
rename from dev/tests/unit/testsuite/Magento/Sales/Model/QuoteTest.php
rename to dev/tests/unit/testsuite/Magento/Quote/Model/QuoteTest.php
index 4a212d2d86cd791c368a11eebb17dbde46b9e142..4956334694371ba507536dc8c3fe06c499d1e8cb 100644
--- a/dev/tests/unit/testsuite/Magento/Sales/Model/QuoteTest.php
+++ b/dev/tests/unit/testsuite/Magento/Quote/Model/QuoteTest.php
@@ -3,31 +3,35 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Sales\Model;
 
-use Magento\Sales\Model\Quote\Address;
+// @codingStandardsIgnoreFile
+
+namespace Magento\Quote\Model;
+
+use Magento\Quote\Model\Quote\Address;
 use Magento\Store\Model\ScopeInterface;
 use Magento\TestFramework\Helper\ObjectManager;
 
 /**
- * Test class for \Magento\Sales\Model\Order
+ * Test class for \Magento\Quote\Model
  *
  * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ * @SuppressWarnings(PHPMD.TooManyFields)
  */
 class QuoteTest extends \PHPUnit_Framework_TestCase
 {
     /**
-     * @var \Magento\Sales\Model\Quote\AddressFactory|\PHPUnit_Framework_MockObject_MockObject
+     * @var \Magento\Quote\Model\Quote\AddressFactory|\PHPUnit_Framework_MockObject_MockObject
      */
     protected $quoteAddressFactoryMock;
 
     /**
-     * @var \Magento\Sales\Model\Quote\Address|\PHPUnit_Framework_MockObject_MockObject
+     * @var \Magento\Quote\Model\Quote\Address|\PHPUnit_Framework_MockObject_MockObject
      */
     protected $quoteAddressMock;
 
     /**
-     * @var \Magento\Sales\Model\Resource\Quote\Address\Collection|\PHPUnit_Framework_MockObject_MockObject
+     * @var \Magento\Quote\Model\Resource\Quote\Address\Collection|\PHPUnit_Framework_MockObject_MockObject
      */
     protected $quoteAddressCollectionMock;
 
@@ -62,7 +66,7 @@ class QuoteTest extends \PHPUnit_Framework_TestCase
     protected $groupRepositoryMock;
 
     /**
-     * @var \Magento\Sales\Model\Quote
+     * @var \Magento\Quote\Model\Quote
      */
     protected $quote;
 
@@ -77,17 +81,17 @@ class QuoteTest extends \PHPUnit_Framework_TestCase
     protected $objectFactoryMock;
 
     /**
-     * @var \Magento\Sales\Model\Resource\Quote\Item\CollectionFactory|\PHPUnit_Framework_MockObject_MockObject
+     * @var \Magento\Quote\Model\Resource\Quote\Item\CollectionFactory|\PHPUnit_Framework_MockObject_MockObject
      */
     protected $quoteItemCollectionFactoryMock;
 
     /**
-     * @var \Magento\Sales\Model\Quote\PaymentFactory
+     * @var \Magento\Quote\Model\Quote\PaymentFactory
      */
     protected $paymentFactoryMock;
 
     /**
-     * @var \Magento\Sales\Model\Resource\Quote\Payment\CollectionFactory
+     * @var \Magento\Quote\Model\Resource\Quote\Payment\CollectionFactory
      */
     protected $quotePaymentCollectionFactoryMock;
 
@@ -142,14 +146,14 @@ class QuoteTest extends \PHPUnit_Framework_TestCase
     protected function setUp()
     {
         $this->quoteAddressFactoryMock = $this->getMock(
-            'Magento\Sales\Model\Quote\AddressFactory',
+            'Magento\Quote\Model\Quote\AddressFactory',
             ['create'],
             [],
             '',
             false
         );
         $this->quoteAddressMock = $this->getMock(
-            'Magento\Sales\Model\Quote\Address',
+            'Magento\Quote\Model\Quote\Address',
             [
                 'isDeleted', 'getCollection', 'getId', 'getCustomerAddressId',
                 '__wakeup', 'getAddressType', 'getDeleteImmediately', 'validateMinimumAmount'
@@ -159,7 +163,7 @@ class QuoteTest extends \PHPUnit_Framework_TestCase
             false
         );
         $this->quoteAddressCollectionMock = $this->getMock(
-            'Magento\Sales\Model\Resource\Quote\Address\Collection',
+            'Magento\Quote\Model\Resource\Quote\Address\Collection',
             [],
             [],
             '',
@@ -210,7 +214,7 @@ class QuoteTest extends \PHPUnit_Framework_TestCase
         $this->storeManagerMock = $this->getMockBuilder('Magento\Store\Model\StoreManager')
             ->disableOriginalConstructor()
             ->getMock();
-        $this->resourceMock = $this->getMockBuilder('Magento\Sales\Model\Resource\Quote')
+        $this->resourceMock = $this->getMockBuilder('Magento\Quote\Model\Resource\Quote')
             ->disableOriginalConstructor()
             ->getMock();
         $this->contextMock = $this->getMockBuilder('Magento\Framework\Model\Context')
@@ -227,21 +231,21 @@ class QuoteTest extends \PHPUnit_Framework_TestCase
             ->method('getEventDispatcher')
             ->will($this->returnValue($this->eventManagerMock));
         $this->quoteItemCollectionFactoryMock = $this->getMock(
-            'Magento\Sales\Model\Resource\Quote\Item\CollectionFactory',
+            'Magento\Quote\Model\Resource\Quote\Item\CollectionFactory',
             ['create'],
             [],
             '',
             false
         );
         $this->quotePaymentCollectionFactoryMock = $this->getMock(
-            'Magento\Sales\Model\Resource\Quote\Payment\CollectionFactory',
+            'Magento\Quote\Model\Resource\Quote\Payment\CollectionFactory',
             ['create'],
             [],
             '',
             false
         );
         $this->paymentFactoryMock = $this->getMock(
-            'Magento\Sales\Model\Quote\PaymentFactory',
+            'Magento\Quote\Model\Quote\PaymentFactory',
             ['create'],
             [],
             '',
@@ -277,7 +281,7 @@ class QuoteTest extends \PHPUnit_Framework_TestCase
 
         $this->quote = (new ObjectManager($this))
             ->getObject(
-                'Magento\Sales\Model\Quote',
+                'Magento\Quote\Model\Quote',
                 [
                     'quoteAddressFactory' => $this->quoteAddressFactoryMock,
                     'storeManager' => $this->storeManagerMock,
@@ -376,7 +380,7 @@ class QuoteTest extends \PHPUnit_Framework_TestCase
     protected function getAddressMock($type)
     {
         $shippingAddressMock = $this->getMock(
-            'Magento\Sales\Model\Quote\Address',
+            'Magento\Quote\Model\Quote\Address',
             ['getAddressType', '__wakeup'],
             [],
             '',
@@ -441,7 +445,7 @@ class QuoteTest extends \PHPUnit_Framework_TestCase
             ->will($this->returnValue($storeId));
 
         $result = $this->quote->setStore($storeMock);
-        $this->assertInstanceOf('Magento\Sales\Model\Quote', $result);
+        $this->assertInstanceOf('Magento\Quote\Model\Quote', $result);
     }
 
     public function testGetSharedWebsiteStoreIds()
@@ -505,7 +509,7 @@ class QuoteTest extends \PHPUnit_Framework_TestCase
             ->method('dispatch');
 
         $result = $this->quote->loadActive($quoteId);
-        $this->assertInstanceOf('Magento\Sales\Model\Quote', $result);
+        $this->assertInstanceOf('Magento\Quote\Model\Quote', $result);
     }
 
     public function testloadByIdWithoutStore()
@@ -520,9 +524,12 @@ class QuoteTest extends \PHPUnit_Framework_TestCase
             ->method('dispatch');
 
         $result = $this->quote->loadByIdWithoutStore($quoteId);
-        $this->assertInstanceOf('Magento\Sales\Model\Quote', $result);
+        $this->assertInstanceOf('Magento\Quote\Model\Quote', $result);
     }
 
+    /**
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
+     */
     public function testSetCustomerAddressData()
     {
         $customerId = 1;
@@ -579,7 +586,7 @@ class QuoteTest extends \PHPUnit_Framework_TestCase
             ->with('customer_account', 'to_quote', 'return-value', $this->quote);
 
         $result = $this->quote->setCustomerAddressData([$addressMock]);
-        $this->assertInstanceOf('Magento\Sales\Model\Quote', $result);
+        $this->assertInstanceOf('Magento\Quote\Model\Quote', $result);
         $this->assertEquals($customerResultMock, $this->quote->getCustomer());
     }
 
@@ -767,7 +774,7 @@ class QuoteTest extends \PHPUnit_Framework_TestCase
         $this->quote->setId($id);
 
         $result = $this->quote->removeAddress($id);
-        $this->assertInstanceOf('Magento\Sales\Model\Quote', $result);
+        $this->assertInstanceOf('Magento\Quote\Model\Quote', $result);
     }
 
     public function testRemoveAllAddresses()
@@ -804,7 +811,7 @@ class QuoteTest extends \PHPUnit_Framework_TestCase
         $this->quote->setId($id);
 
         $result = $this->quote->removeAllAddresses();
-        $this->assertInstanceOf('Magento\Sales\Model\Quote', $result);
+        $this->assertInstanceOf('Magento\Quote\Model\Quote', $result);
     }
 
     /**
@@ -849,7 +856,7 @@ class QuoteTest extends \PHPUnit_Framework_TestCase
     public function testAddProductItemPreparation()
     {
         $itemMock = $this->getMock(
-            '\Magento\Sales\Model\Quote\Item',
+            '\Magento\Quote\Model\Quote\Item',
             [],
             [],
             '',
@@ -888,7 +895,7 @@ class QuoteTest extends \PHPUnit_Framework_TestCase
         );
 
         $collectionMock = $this->getMock(
-            'Magento\Sales\Model\Resource\Quote\Item\Collection',
+            'Magento\Quote\Model\Resource\Quote\Item\Collection',
             [],
             [],
             '',
@@ -975,7 +982,7 @@ class QuoteTest extends \PHPUnit_Framework_TestCase
     {
         $this->quote->setId(1);
         $payment = $this->getMock(
-            'Magento\Sales\Model\Quote\Payment',
+            'Magento\Quote\Model\Quote\Payment',
             ['setQuote', 'isDeleted', '__wakeup'],
             [],
             '',
@@ -987,7 +994,7 @@ class QuoteTest extends \PHPUnit_Framework_TestCase
             ->method('isDeleted')
             ->willReturn(false);
         $quotePaymentCollectionMock = $this->getMock(
-            'Magento\Sales\Model\Resource\Quote\Payment\Collection',
+            'Magento\Quote\Model\Resource\Quote\Payment\Collection',
             ['setQuoteFilter', 'getFirstItem'],
             [],
             '',
@@ -1004,14 +1011,14 @@ class QuoteTest extends \PHPUnit_Framework_TestCase
             ->method('create')
             ->willReturn($quotePaymentCollectionMock);
 
-        $this->assertInstanceOf('\Magento\Sales\Model\Quote\Payment', $this->quote->getPayment());
+        $this->assertInstanceOf('\Magento\Quote\Model\Quote\Payment', $this->quote->getPayment());
     }
 
     public function testGetPaymentIsDeleted()
     {
         $this->quote->setId(1);
         $payment = $this->getMock(
-            'Magento\Sales\Model\Quote\Payment',
+            'Magento\Quote\Model\Quote\Payment',
             ['setQuote', 'isDeleted', 'getId', '__wakeup'],
             [],
             '',
@@ -1026,7 +1033,7 @@ class QuoteTest extends \PHPUnit_Framework_TestCase
             ->method('getId')
             ->willReturn(1);
         $quotePaymentCollectionMock = $this->getMock(
-            'Magento\Sales\Model\Resource\Quote\Payment\Collection',
+            'Magento\Quote\Model\Resource\Quote\Payment\Collection',
             ['setQuoteFilter', 'getFirstItem'],
             [],
             '',
@@ -1047,12 +1054,12 @@ class QuoteTest extends \PHPUnit_Framework_TestCase
             ->method('create')
             ->willReturn($payment);
 
-        $this->assertInstanceOf('\Magento\Sales\Model\Quote\Payment', $this->quote->getPayment());
+        $this->assertInstanceOf('\Magento\Quote\Model\Quote\Payment', $this->quote->getPayment());
     }
 
     public function testAddItem()
     {
-        $item = $this->getMock('Magento\Sales\Model\Quote\Item', ['setQuote', 'getId'], [], '', false);
+        $item = $this->getMock('Magento\Quote\Model\Quote\Item', ['setQuote', 'getId'], [], '', false);
         $item->expects($this->once())
             ->method('setQuote');
         $item->expects($this->once())
diff --git a/dev/tests/unit/testsuite/Magento/Quote/Model/QuoteValidatorTest.php b/dev/tests/unit/testsuite/Magento/Quote/Model/QuoteValidatorTest.php
new file mode 100644
index 0000000000000000000000000000000000000000..5b6d0109473595eb502503f3ed8d5010403b1b71
--- /dev/null
+++ b/dev/tests/unit/testsuite/Magento/Quote/Model/QuoteValidatorTest.php
@@ -0,0 +1,91 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+namespace Magento\Quote\Model;
+
+/**
+ * Class QuoteValidatorTest
+ */
+class QuoteValidatorTest extends \PHPUnit_Framework_TestCase
+{
+    /**
+     * @var \Magento\Quote\Model\QuoteValidator
+     */
+    protected $quoteValidator;
+
+    /**
+     * @var \PHPUnit_Framework_MockObject_MockObject | \Magento\Quote\Model\Quote
+     */
+    protected $quoteMock;
+
+    /**
+     * @return void
+     */
+    protected function setUp()
+    {
+        $this->quoteValidator = new \Magento\Quote\Model\QuoteValidator();
+
+        $this->quoteMock = $this->getMockBuilder('Magento\Quote\Model\Quote')
+            ->setMethods(['getHasError', 'setHasError', 'addMessage', '__wakeup'])
+            ->disableOriginalConstructor()
+            ->getMock();
+    }
+
+    public function testCheckQuoteAmountExistingError()
+    {
+        $this->quoteMock->expects($this->once())
+            ->method('getHasError')
+            ->will($this->returnValue(true));
+
+        $this->quoteMock->expects($this->never())
+            ->method('setHasError');
+
+        $this->quoteMock->expects($this->never())
+            ->method('addMessage');
+
+        $this->assertSame(
+            $this->quoteValidator,
+            $this->quoteValidator->validateQuoteAmount($this->quoteMock, QuoteValidator::MAXIMUM_AVAILABLE_NUMBER + 1)
+        );
+    }
+
+    public function testCheckQuoteAmountAmountLessThanAvailable()
+    {
+        $this->quoteMock->expects($this->once())
+            ->method('getHasError')
+            ->will($this->returnValue(false));
+
+        $this->quoteMock->expects($this->never())
+            ->method('setHasError');
+
+        $this->quoteMock->expects($this->never())
+            ->method('addMessage');
+
+        $this->assertSame(
+            $this->quoteValidator,
+            $this->quoteValidator->validateQuoteAmount($this->quoteMock, QuoteValidator::MAXIMUM_AVAILABLE_NUMBER - 1)
+        );
+    }
+
+    public function testCheckQuoteAmountAmountGreaterThanAvailable()
+    {
+        $this->quoteMock->expects($this->once())
+            ->method('getHasError')
+            ->will($this->returnValue(false));
+
+        $this->quoteMock->expects($this->once())
+            ->method('setHasError')
+            ->with(true);
+
+        $this->quoteMock->expects($this->once())
+            ->method('addMessage')
+            ->with(__('This item price or quantity is not valid for checkout.'));
+
+        $this->assertSame(
+            $this->quoteValidator,
+            $this->quoteValidator->validateQuoteAmount($this->quoteMock, QuoteValidator::MAXIMUM_AVAILABLE_NUMBER + 1)
+        );
+    }
+}
diff --git a/dev/tests/unit/testsuite/Magento/Quote/Model/Resource/QuoteTest.php b/dev/tests/unit/testsuite/Magento/Quote/Model/Resource/QuoteTest.php
new file mode 100644
index 0000000000000000000000000000000000000000..4742a456a74db80465589d7a10b6897a0726794a
--- /dev/null
+++ b/dev/tests/unit/testsuite/Magento/Quote/Model/Resource/QuoteTest.php
@@ -0,0 +1,79 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+namespace Magento\Quote\Model\Resource;
+
+class QuoteTest extends \PHPUnit_Framework_TestCase
+{
+    /**
+     * @var \Magento\Quote\Model\Resource\Quote
+     */
+    protected $model;
+
+    /**
+     * @var \Magento\Framework\App\Resource
+     */
+    protected $resourceMock;
+
+    /**
+     * @var \Magento\Eav\Model\Config
+     */
+    protected $configMock;
+
+    /**
+     * @var \Magento\Framework\DB\Adapter\Pdo\Mysql
+     */
+    protected $adapterMock;
+
+    /**
+     * @var \Magento\Framework\DB\Select
+     */
+    protected $selectMock;
+
+    protected function setUp()
+    {
+        $this->selectMock = $this->getMock('\Magento\Framework\DB\Select', [], [], '', false);
+        $this->selectMock->expects($this->any())->method('from')->will($this->returnSelf());
+        $this->selectMock->expects($this->any())->method('where');
+
+        $this->adapterMock = $this->getMock('\Magento\Framework\DB\Adapter\Pdo\Mysql', [], [], '', false);
+        $this->adapterMock->expects($this->any())->method('select')->will($this->returnValue($this->selectMock));
+
+        $this->resourceMock = $this->getMock('\Magento\Framework\App\Resource', [], [], '', false);
+        $this->resourceMock->expects(
+            $this->any()
+        )->method(
+            'getConnection'
+        )->will(
+            $this->returnValue($this->adapterMock)
+        );
+
+        $this->configMock = $this->getMock('\Magento\Eav\Model\Config', [], [], '', false);
+
+        $this->model = new \Magento\Quote\Model\Resource\Quote(
+            $this->resourceMock,
+            $this->configMock
+        );
+    }
+
+    /**
+     * @param $value
+     * @dataProvider isOrderIncrementIdUsedDataProvider
+     */
+    public function testIsOrderIncrementIdUsed($value)
+    {
+        $expectedBind = [':increment_id' => $value];
+        $this->adapterMock->expects($this->once())->method('fetchOne')->with($this->selectMock, $expectedBind);
+        $this->model->isOrderIncrementIdUsed($value);
+    }
+
+    /**
+     * @return array
+     */
+    public function isOrderIncrementIdUsedDataProvider()
+    {
+        return [[100000001], ['10000000001'], ['M10000000001']];
+    }
+}
diff --git a/dev/tests/unit/testsuite/Magento/Reports/Model/Resource/Report/Collection/AbstractCollectionTest.php b/dev/tests/unit/testsuite/Magento/Reports/Model/Resource/Report/Collection/AbstractCollectionTest.php
index d4456023c269cca969978f74a5c7a7531af5d4c7..7256703d3c0b5761b807f976783b50880e46025e 100644
--- a/dev/tests/unit/testsuite/Magento/Reports/Model/Resource/Report/Collection/AbstractCollectionTest.php
+++ b/dev/tests/unit/testsuite/Magento/Reports/Model/Resource/Report/Collection/AbstractCollectionTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Reports\Model\Resource\Report\Collection;
 
 class AbstractCollectionTest extends \PHPUnit_Framework_TestCase
@@ -49,4 +52,4 @@ class AbstractCollectionTest extends \PHPUnit_Framework_TestCase
         $this->_model->setIsSubTotals(false);
         $this->assertFalse($this->_model->isSubTotals());
     }
-}
\ No newline at end of file
+}
diff --git a/dev/tests/unit/testsuite/Magento/Review/Controller/Adminhtml/Product/PostTest.php b/dev/tests/unit/testsuite/Magento/Review/Controller/Adminhtml/Product/PostTest.php
index 10cd08f64b884492f05e9278fa03d387130cf8a3..1dd384080fc18d6f4dd3b9620d7a65178a7b2582 100644
--- a/dev/tests/unit/testsuite/Magento/Review/Controller/Adminhtml/Product/PostTest.php
+++ b/dev/tests/unit/testsuite/Magento/Review/Controller/Adminhtml/Product/PostTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Review\Controller\Adminhtml\Product;
 
 /**
diff --git a/dev/tests/unit/testsuite/Magento/Rss/Model/RssManagerTest.php b/dev/tests/unit/testsuite/Magento/Rss/Model/RssManagerTest.php
index 7bf84d58692ff0d62aad6c721380516190081abb..c2181d1c2ef39c599a1e01d58500d9596702d9c5 100644
--- a/dev/tests/unit/testsuite/Magento/Rss/Model/RssManagerTest.php
+++ b/dev/tests/unit/testsuite/Magento/Rss/Model/RssManagerTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Rss\Model;
 
 use Magento\TestFramework\Helper\ObjectManager as ObjectManagerHelper;
diff --git a/dev/tests/unit/testsuite/Magento/Rss/Model/UrlBuilderTest.php b/dev/tests/unit/testsuite/Magento/Rss/Model/UrlBuilderTest.php
index 37ca6fa878caa8c1dc50ca9a9339b347ad278c56..d4f72b1f046ffef32b2800c8dc197fce871badad 100644
--- a/dev/tests/unit/testsuite/Magento/Rss/Model/UrlBuilderTest.php
+++ b/dev/tests/unit/testsuite/Magento/Rss/Model/UrlBuilderTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Rss\Model;
 
 use Magento\TestFramework\Helper\ObjectManager as ObjectManagerHelper;
diff --git a/dev/tests/unit/testsuite/Magento/Rule/Model/Condition/Product/AbstractProductTest.php b/dev/tests/unit/testsuite/Magento/Rule/Model/Condition/Product/AbstractProductTest.php
index a33faf44642cbf3a14ea2a9c33b245356f12b579..04ad345d5a35ccf0b27c057be4f0876c86c0b39a 100644
--- a/dev/tests/unit/testsuite/Magento/Rule/Model/Condition/Product/AbstractProductTest.php
+++ b/dev/tests/unit/testsuite/Magento/Rule/Model/Condition/Product/AbstractProductTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Rule\Model\Condition\Product;
 
 use ReflectionMethod;
@@ -284,6 +286,7 @@ class AbstractProductTest extends \PHPUnit_Framework_TestCase
      * @param array $expectedValueSelectOptions
      * @param array $expectedValueOption
      * @dataProvider prepareValueOptionsDataProvider
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function testPrepareValueOptions(
         $setData,
@@ -364,6 +367,7 @@ class AbstractProductTest extends \PHPUnit_Framework_TestCase
 
     /**
      * @return array
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public function prepareValueOptionsDataProvider()
     {
diff --git a/dev/tests/unit/testsuite/Magento/Sales/Block/Adminhtml/Order/Create/Items/GridTest.php b/dev/tests/unit/testsuite/Magento/Sales/Block/Adminhtml/Order/Create/Items/GridTest.php
index 808adb59be37d353199ba83916bf58227c91e578..7c2a10dfdae997b98d3354504eeef61bf7dc8aff 100644
--- a/dev/tests/unit/testsuite/Magento/Sales/Block/Adminhtml/Order/Create/Items/GridTest.php
+++ b/dev/tests/unit/testsuite/Magento/Sales/Block/Adminhtml/Order/Create/Items/GridTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Sales\Block\Adminhtml\Order\Create\Items;
 
 class GridTest extends \PHPUnit_Framework_TestCase
@@ -27,7 +30,7 @@ class GridTest extends \PHPUnit_Framework_TestCase
      */
     protected $objectManager;
 
-    /** @var \PHPUnit_Framework_MockObject_MockObject|\Magento\Sales\Model\Quote\Item  */
+    /** @var \PHPUnit_Framework_MockObject_MockObject|\Magento\Quote\Model\Quote\Item  */
     protected $itemMock;
 
     /**
@@ -62,7 +65,7 @@ class GridTest extends \PHPUnit_Framework_TestCase
             ->setMethods(['getQuote', '__wakeup'])
             ->getMock();
 
-        $quoteMock = $this->getMockBuilder('Magento\Sales\Model\Quote')
+        $quoteMock = $this->getMockBuilder('Magento\Quote\Model\Quote')
             ->disableOriginalConstructor()
             ->setMethods(['getStore', '__wakeup'])
             ->getMock();
@@ -140,7 +143,7 @@ class GridTest extends \PHPUnit_Framework_TestCase
             ->setMethods(['getBlock'])
             ->getMock();
 
-        $this->itemMock = $this->getMockBuilder('\Magento\Sales\Model\Quote\Item')
+        $this->itemMock = $this->getMockBuilder('\Magento\Quote\Model\Quote\Item')
             ->disableOriginalConstructor()
             ->setMethods(['__wakeup'])
             ->getMock();
@@ -194,7 +197,7 @@ class GridTest extends \PHPUnit_Framework_TestCase
     /**
      * @param array|int $tierPrices
      * @param string $productType
-     * @return \PHPUnit_Framework_MockObject_MockObject|\Magento\Sales\Model\Quote\Item
+     * @return \PHPUnit_Framework_MockObject_MockObject|\Magento\Quote\Model\Quote\Item
      */
     protected function prepareItem($tierPrices, $productType)
     {
@@ -204,7 +207,7 @@ class GridTest extends \PHPUnit_Framework_TestCase
             ->getMock();
         $product->expects($this->once())->method('getTierPrice')->will($this->returnValue($tierPrices));
         $item = $this->getMock(
-            'Magento\Sales\Model\Quote\Item',
+            'Magento\Quote\Model\Quote\Item',
             [],
             ['getProduct', 'getProductType'],
             '',
@@ -228,7 +231,7 @@ class GridTest extends \PHPUnit_Framework_TestCase
         $blockMock = $this->getMock('Magento\Framework\View\Element\AbstractBlock', ['getItems'], [], '', false);
 
         $itemMock = $this->getMock(
-            'Magento\Sales\Model\Quote\Item',
+            'Magento\Quote\Model\Quote\Item',
             ['getProduct', 'setHasError', 'setQty', 'getQty', '__sleep', '__wakeup'],
             [],
             '',
diff --git a/dev/tests/unit/testsuite/Magento/Sales/Block/Adminhtml/Order/Create/TotalsTest.php b/dev/tests/unit/testsuite/Magento/Sales/Block/Adminhtml/Order/Create/TotalsTest.php
index 2f75a6f767935fe029973044a51e580583fa14f2..7e469e1be6214ce0f4ee2015446e3bd74c0e7936 100644
--- a/dev/tests/unit/testsuite/Magento/Sales/Block/Adminhtml/Order/Create/TotalsTest.php
+++ b/dev/tests/unit/testsuite/Magento/Sales/Block/Adminhtml/Order/Create/TotalsTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Sales\Block\Adminhtml\Order\Create;
 
 use Magento\TestFramework\Helper\ObjectManager;
@@ -23,7 +26,7 @@ class TotalsTest extends \PHPUnit_Framework_TestCase
     protected $totals;
 
     /**
-     * @var \Magento\Sales\Model\Quote|\PHPUnit_Framework_MockObject_MockObject
+     * @var \Magento\Quote\Model\Quote|\PHPUnit_Framework_MockObject_MockObject
      */
     protected $quoteMock;
 
@@ -37,7 +40,7 @@ class TotalsTest extends \PHPUnit_Framework_TestCase
         $this->objectManager = new ObjectManager($this);
 
         $this->quoteMock = $this->getMock(
-            '\Magento\Sales\Model\Quote', ['getCustomerNoteNotify'], [], '', false
+            '\Magento\Quote\Model\Quote', ['getCustomerNoteNotify'], [], '', false
         );
         $this->sessionQuoteMock = $this->getMock(
             '\Magento\Backend\Model\Session\Quote', [], [], '', false
diff --git a/dev/tests/unit/testsuite/Magento/Sales/Block/Order/Email/Items/DefaultItemsTest.php b/dev/tests/unit/testsuite/Magento/Sales/Block/Order/Email/Items/DefaultItemsTest.php
index f70d73228b8ebff23c95df82f91d208120ef75e6..84cbd4ac31d7b241afcb7166f422cf97f03a3c3e 100644
--- a/dev/tests/unit/testsuite/Magento/Sales/Block/Order/Email/Items/DefaultItemsTest.php
+++ b/dev/tests/unit/testsuite/Magento/Sales/Block/Order/Email/Items/DefaultItemsTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Sales\Block\Order\Email\Items;
 
 class DefaultItemsTest extends \PHPUnit_Framework_TestCase
@@ -27,7 +30,7 @@ class DefaultItemsTest extends \PHPUnit_Framework_TestCase
      */
     protected $objectManager;
 
-    /** @var \PHPUnit_Framework_MockObject_MockObject|\Magento\Sales\Model\Quote\Item  */
+    /** @var \PHPUnit_Framework_MockObject_MockObject|\Magento\Quote\Model\Quote\Item  */
     protected $itemMock;
 
     /**
diff --git a/dev/tests/unit/testsuite/Magento/Sales/Block/Order/Email/Items/Order/DefaultOrderTest.php b/dev/tests/unit/testsuite/Magento/Sales/Block/Order/Email/Items/Order/DefaultOrderTest.php
index 10006c7d454ded4fab7df6afbc6cac6be5881f5f..409b5029e0da4d76a9ec15233b672d246c95a725 100644
--- a/dev/tests/unit/testsuite/Magento/Sales/Block/Order/Email/Items/Order/DefaultOrderTest.php
+++ b/dev/tests/unit/testsuite/Magento/Sales/Block/Order/Email/Items/Order/DefaultOrderTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Sales\Block\Order\Email\Items\Order;
 
 class DefaultOrderTest extends \PHPUnit_Framework_TestCase
@@ -27,7 +30,7 @@ class DefaultOrderTest extends \PHPUnit_Framework_TestCase
      */
     protected $objectManager;
 
-    /** @var \PHPUnit_Framework_MockObject_MockObject|\Magento\Sales\Model\Quote\Item  */
+    /** @var \PHPUnit_Framework_MockObject_MockObject|\Magento\Quote\Model\Quote\Item  */
     protected $itemMock;
 
     /**
diff --git a/dev/tests/unit/testsuite/Magento/Sales/Block/Order/Item/Renderer/DefaultRendererTest.php b/dev/tests/unit/testsuite/Magento/Sales/Block/Order/Item/Renderer/DefaultRendererTest.php
index 2cd59e2cae9798e340107b0212b24294da94fdd0..29c757617b4da4797aaeb9bd795961545c0ed6b7 100644
--- a/dev/tests/unit/testsuite/Magento/Sales/Block/Order/Item/Renderer/DefaultRendererTest.php
+++ b/dev/tests/unit/testsuite/Magento/Sales/Block/Order/Item/Renderer/DefaultRendererTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Sales\Block\Order\Item\Renderer;
 
 class DefaultRendererTest extends \PHPUnit_Framework_TestCase
@@ -27,7 +30,7 @@ class DefaultRendererTest extends \PHPUnit_Framework_TestCase
      */
     protected $objectManager;
 
-    /** @var \PHPUnit_Framework_MockObject_MockObject|\Magento\Sales\Model\Quote\Item  */
+    /** @var \PHPUnit_Framework_MockObject_MockObject|\Magento\Quote\Model\Quote\Item  */
     protected $itemMock;
 
     /**
diff --git a/dev/tests/unit/testsuite/Magento/Sales/Controller/Adminhtml/Order/Create/ProcessDataTest.php b/dev/tests/unit/testsuite/Magento/Sales/Controller/Adminhtml/Order/Create/ProcessDataTest.php
index da63836d0108705198d4228b14d9ade22418e145..52dd560e9fdcdf371fb4540ad1b1010c4b89faa0 100644
--- a/dev/tests/unit/testsuite/Magento/Sales/Controller/Adminhtml/Order/Create/ProcessDataTest.php
+++ b/dev/tests/unit/testsuite/Magento/Sales/Controller/Adminhtml/Order/Create/ProcessDataTest.php
@@ -133,7 +133,7 @@ class ProcessDataTest extends \PHPUnit_Framework_TestCase
     public function testExecute($noDiscount, $couponCode, $errorMessage, $actualCouponCode)
     {
         $quote = $this->getMock(
-            'Magento\Sales\Model\Quote',
+            'Magento\Quote\Model\Quote',
             ['getCouponCode', 'isVirtual', 'getAllItems'],
             [],
             '',
@@ -184,7 +184,7 @@ class ProcessDataTest extends \PHPUnit_Framework_TestCase
         $create->expects($this->once())->method('initRuleData')->willReturnSelf();
         $create->expects($this->any())->method('getQuote')->willReturn($quote);
 
-        $address = $this->getMock('Magento\Sales\Model\Quote\Address', [], [], '', false);
+        $address = $this->getMock('Magento\Quote\Model\Quote\Address', [], [], '', false);
         $create->expects($this->once())->method('getBillingAddress')->willReturn($address);
 
         $quote->expects($this->any())->method('isVirtual')->willReturn(true);
diff --git a/dev/tests/unit/testsuite/Magento/Sales/Controller/Adminhtml/Order/Creditmemo/NewActionTest.php b/dev/tests/unit/testsuite/Magento/Sales/Controller/Adminhtml/Order/Creditmemo/NewActionTest.php
index 2e06d59121eafa84e2ce84f633170dc0702817f6..6a97735ce2f02df08d9989bdb70f3e763c7b3491 100644
--- a/dev/tests/unit/testsuite/Magento/Sales/Controller/Adminhtml/Order/Creditmemo/NewActionTest.php
+++ b/dev/tests/unit/testsuite/Magento/Sales/Controller/Adminhtml/Order/Creditmemo/NewActionTest.php
@@ -7,6 +7,7 @@ namespace Magento\Sales\Controller\Adminhtml\Order\Creditmemo;
 
 /**
  * Class NewActionTest
+ * @SuppressWarnings(PHPMD.TooManyFields)
  */
 class NewActionTest extends \PHPUnit_Framework_TestCase
 {
diff --git a/dev/tests/unit/testsuite/Magento/Sales/Controller/Adminhtml/Order/Creditmemo/PrintActionTest.php b/dev/tests/unit/testsuite/Magento/Sales/Controller/Adminhtml/Order/Creditmemo/PrintActionTest.php
index 3c826d716a41b9b032b6d4054318512f8fa0d512..bbbc973d67f1a49bdb9e82c6ad7234b849ed729a 100644
--- a/dev/tests/unit/testsuite/Magento/Sales/Controller/Adminhtml/Order/Creditmemo/PrintActionTest.php
+++ b/dev/tests/unit/testsuite/Magento/Sales/Controller/Adminhtml/Order/Creditmemo/PrintActionTest.php
@@ -7,6 +7,7 @@ namespace Magento\Sales\Controller\Adminhtml\Order\Creditmemo;
 
 /**
  * Class PrintActionTest
+ * @SuppressWarnings(PHPMD.TooManyFields)
  */
 class PrintActionTest extends \PHPUnit_Framework_TestCase
 {
diff --git a/dev/tests/unit/testsuite/Magento/Sales/Controller/Adminhtml/Order/Creditmemo/SaveTest.php b/dev/tests/unit/testsuite/Magento/Sales/Controller/Adminhtml/Order/Creditmemo/SaveTest.php
index fb76705531a7d636eff714a8bd5eb6f7d43a2b17..5a395357753827ebff92b7cbb2196154ccca72af 100644
--- a/dev/tests/unit/testsuite/Magento/Sales/Controller/Adminhtml/Order/Creditmemo/SaveTest.php
+++ b/dev/tests/unit/testsuite/Magento/Sales/Controller/Adminhtml/Order/Creditmemo/SaveTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Sales\Controller\Adminhtml\Order\Creditmemo;
 
 class SaveTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Sales/Controller/Adminhtml/Order/Creditmemo/ViewTest.php b/dev/tests/unit/testsuite/Magento/Sales/Controller/Adminhtml/Order/Creditmemo/ViewTest.php
index 672c8c22abdc69582c586f1b1f300e1233c07c5f..5da711e94fd3eb5977c2bd25e1ecdda324606528 100644
--- a/dev/tests/unit/testsuite/Magento/Sales/Controller/Adminhtml/Order/Creditmemo/ViewTest.php
+++ b/dev/tests/unit/testsuite/Magento/Sales/Controller/Adminhtml/Order/Creditmemo/ViewTest.php
@@ -7,6 +7,7 @@ namespace Magento\Sales\Controller\Adminhtml\Order\Creditmemo;
 
 /**
  * Class ViewTest
+ * @SuppressWarnings(PHPMD.TooManyFields)
  */
 class ViewTest extends \PHPUnit_Framework_TestCase
 {
@@ -90,6 +91,9 @@ class ViewTest extends \PHPUnit_Framework_TestCase
      */
     protected $pageTitleMock;
 
+    /**
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
+     */
     public function setUp()
     {
         $this->invoiceMock = $this->getMockBuilder('Magento\Sales\Model\Order\Invoice')
diff --git a/dev/tests/unit/testsuite/Magento/Sales/Helper/AdminTest.php b/dev/tests/unit/testsuite/Magento/Sales/Helper/AdminTest.php
index 22aa12e99f1e1f82d56b36df189c1881954a2c91..2f4573684267da5ff0b9f3ae48f84d5de65406bf 100644
--- a/dev/tests/unit/testsuite/Magento/Sales/Helper/AdminTest.php
+++ b/dev/tests/unit/testsuite/Magento/Sales/Helper/AdminTest.php
@@ -268,7 +268,7 @@ class AdminTest extends \PHPUnit_Framework_TestCase
         $orderMock->expects($this->any())
             ->method('getProductType')
             ->will($this->returnValue($type));
-        $quoteMock = $this->getMockBuilder('Magento\Sales\Model\Quote\Item')
+        $quoteMock = $this->getMockBuilder('Magento\Quote\Model\Quote\Item')
             ->disableOriginalConstructor()
             ->getMock();
         $quoteMock->expects($this->any())
diff --git a/dev/tests/unit/testsuite/Magento/Sales/Helper/DataTest.php b/dev/tests/unit/testsuite/Magento/Sales/Helper/DataTest.php
index 2658c8729b85cafab9b0e8d455ca2c31163abee7..7cf3a0bb028147f95ec46fa70e55dc2bdfb3d314 100644
--- a/dev/tests/unit/testsuite/Magento/Sales/Helper/DataTest.php
+++ b/dev/tests/unit/testsuite/Magento/Sales/Helper/DataTest.php
@@ -60,67 +60,6 @@ class DataTest extends \PHPUnit_Framework_TestCase
         $this->storeMock = $this->getMockBuilder('Magento\Sales\Model\Store')
             ->disableOriginalConstructor()
             ->getMock();
-
-        $this->quoteMock = $this->getMockBuilder('Magento\Sales\Model\Quote')
-            ->setMethods(['getHasError', 'setHasError', 'addMessage', '__wakeup'])
-            ->disableOriginalConstructor()
-            ->getMock();
-    }
-
-    public function testCheckQuoteAmountExistingError()
-    {
-        $this->quoteMock->expects($this->once())
-            ->method('getHasError')
-            ->will($this->returnValue(true));
-
-        $this->quoteMock->expects($this->never())
-            ->method('setHasError');
-
-        $this->quoteMock->expects($this->never())
-            ->method('addMessage');
-
-        $this->assertSame(
-            $this->helper,
-            $this->helper->checkQuoteAmount($this->quoteMock, Data::MAXIMUM_AVAILABLE_NUMBER + 1)
-        );
-    }
-
-    public function testCheckQuoteAmountAmountLessThanAvailable()
-    {
-        $this->quoteMock->expects($this->once())
-            ->method('getHasError')
-            ->will($this->returnValue(false));
-
-        $this->quoteMock->expects($this->never())
-            ->method('setHasError');
-
-        $this->quoteMock->expects($this->never())
-            ->method('addMessage');
-
-        $this->assertSame(
-            $this->helper,
-            $this->helper->checkQuoteAmount($this->quoteMock, Data::MAXIMUM_AVAILABLE_NUMBER - 1)
-        );
-    }
-
-    public function testCheckQuoteAmountAmountGreaterThanAvailable()
-    {
-        $this->quoteMock->expects($this->once())
-            ->method('getHasError')
-            ->will($this->returnValue(false));
-
-        $this->quoteMock->expects($this->once())
-            ->method('setHasError')
-            ->with(true);
-
-        $this->quoteMock->expects($this->once())
-            ->method('addMessage')
-            ->with(__('This item price or quantity is not valid for checkout.'));
-
-        $this->assertSame(
-            $this->helper,
-            $this->helper->checkQuoteAmount($this->quoteMock, Data::MAXIMUM_AVAILABLE_NUMBER + 1)
-        );
     }
 
     /**
diff --git a/dev/tests/unit/testsuite/Magento/Sales/Model/AdminOrder/CreateTest.php b/dev/tests/unit/testsuite/Magento/Sales/Model/AdminOrder/CreateTest.php
index 89900e86579f2ca175ac1b065875dea16b6780ac..8030ee2d527c2ea565db444c97433539f7d95c9c 100644
--- a/dev/tests/unit/testsuite/Magento/Sales/Model/AdminOrder/CreateTest.php
+++ b/dev/tests/unit/testsuite/Magento/Sales/Model/AdminOrder/CreateTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Sales\Model\AdminOrder;
 
 use Magento\TestFramework\Helper\ObjectManager as ObjectManagerHelper;
@@ -26,7 +29,7 @@ class CreateTest extends \PHPUnit_Framework_TestCase
     /** @var \Magento\Customer\Api\Data\CustomerDataBuilder|\PHPUnit_Framework_MockObject_MockObject */
     protected $customerBuilderMock;
 
-    /** @var \Magento\Sales\Model\Quote\Item\Updater|\PHPUnit_Framework_MockObject_MockObject */
+    /** @var \Magento\Quote\Model\Quote\Item\Updater|\PHPUnit_Framework_MockObject_MockObject */
     protected $itemUpdater;
 
     /** @var \Magento\Customer\Model\Customer\Mapper|\PHPUnit_Framework_MockObject_MockObject */
@@ -77,6 +80,9 @@ class CreateTest extends \PHPUnit_Framework_TestCase
      */
     protected $objectFactory;
 
+    /**
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
+     */
     protected function setUp()
     {
         $objectManagerMock = $this->getMock('Magento\Framework\ObjectManagerInterface');
@@ -102,7 +108,7 @@ class CreateTest extends \PHPUnit_Framework_TestCase
             false
         );
 
-        $this->itemUpdater = $this->getMock('Magento\Sales\Model\Quote\Item\Updater', [], [], '', false);
+        $this->itemUpdater = $this->getMock('Magento\Quote\Model\Quote\Item\Updater', [], [], '', false);
 
         $this->objectFactory = $this->getMockBuilder('\Magento\Framework\Object\Factory')
             ->disableOriginalConstructor()
@@ -237,7 +243,7 @@ class CreateTest extends \PHPUnit_Framework_TestCase
         $customerMock = $this->getMock('Magento\Customer\Api\Data\CustomerInterface', [], [], '', false);
         $this->customerMapper->expects($this->any())->method('toFlatArray')
             ->will($this->returnValue(['email' => 'user@example.com', 'group_id' => 1]));
-        $quoteMock = $this->getMock('Magento\Sales\Model\Quote', [], [], '', false);
+        $quoteMock = $this->getMock('Magento\Quote\Model\Quote', [], [], '', false);
         $quoteMock->expects($this->any())->method('getCustomer')->will($this->returnValue($customerMock));
         $quoteMock->expects($this->once())
             ->method('addData')
@@ -278,9 +284,9 @@ class CreateTest extends \PHPUnit_Framework_TestCase
             ]
         ];
 
-        $itemMock = $this->getMock('Magento\Sales\Model\Quote\Item', [], [], '', false);
+        $itemMock = $this->getMock('Magento\Quote\Model\Quote\Item', [], [], '', false);
 
-        $quoteMock = $this->getMock('Magento\Sales\Model\Quote', [], [], '', false);
+        $quoteMock = $this->getMock('Magento\Quote\Model\Quote', [], [], '', false);
         $quoteMock->expects($this->once())
             ->method('getItemById')
             ->will($this->returnValue($itemMock));
@@ -306,12 +312,12 @@ class CreateTest extends \PHPUnit_Framework_TestCase
             ]
         ];
 
-        $itemMock = $this->getMock('Magento\Sales\Model\Quote\Item', [], [], '', false);
+        $itemMock = $this->getMock('Magento\Quote\Model\Quote\Item', [], [], '', false);
         $itemMock->expects($this->once())
             ->method('getQty')
             ->will($this->returnValue($qty));
 
-        $quoteMock = $this->getMock('Magento\Sales\Model\Quote', [], [], '', false);
+        $quoteMock = $this->getMock('Magento\Quote\Model\Quote', [], [], '', false);
         $quoteMock->expects($this->once())
             ->method('updateItem')
             ->will($this->returnValue($itemMock));
diff --git a/dev/tests/unit/testsuite/Magento/Sales/Model/AdminOrder/Product/Quote/InitializerTest.php b/dev/tests/unit/testsuite/Magento/Sales/Model/AdminOrder/Product/Quote/InitializerTest.php
index 23c4fe9ce2b44a3805c20ed83700d435a279e228..ff09a59bbf60b9eb4028bc5434ad5b9b60cc246f 100644
--- a/dev/tests/unit/testsuite/Magento/Sales/Model/AdminOrder/Product/Quote/InitializerTest.php
+++ b/dev/tests/unit/testsuite/Magento/Sales/Model/AdminOrder/Product/Quote/InitializerTest.php
@@ -17,7 +17,7 @@ class InitializerTest extends \PHPUnit_Framework_TestCase
     protected $objectManager;
 
     /**
-     * @var \Magento\Sales\Model\Quote|\PHPUnit_Framework_MockObject_MockObject
+     * @var \Magento\Quote\Model\Quote|\PHPUnit_Framework_MockObject_MockObject
      */
     protected $quoteMock;
 
@@ -47,7 +47,7 @@ class InitializerTest extends \PHPUnit_Framework_TestCase
     protected function setUp()
     {
         $this->quoteMock = $this->getMock(
-            'Magento\Sales\Model\Quote',
+            'Magento\Quote\Model\Quote',
             ['addProduct', '__wakeup', 'getStore'],
             [],
             '',
@@ -106,7 +106,7 @@ class InitializerTest extends \PHPUnit_Framework_TestCase
     public function testInitWithDecimalQty()
     {
         $quoteItemMock = $this->getMock(
-            '\Magento\Sales\Model\Quote\Item',
+            '\Magento\Quote\Model\Quote\Item',
             ['getStockId', 'getIsQtyDecimal', '__wakeup'],
             [],
             '',
@@ -141,7 +141,7 @@ class InitializerTest extends \PHPUnit_Framework_TestCase
             ->will($this->returnValue($quoteItemMock));
 
         $this->assertInstanceOf(
-            'Magento\Sales\Model\Quote\Item',
+            'Magento\Quote\Model\Quote\Item',
             $this->model->init(
                 $this->quoteMock,
                 $this->productMock,
@@ -153,7 +153,7 @@ class InitializerTest extends \PHPUnit_Framework_TestCase
     public function testInitWithNonDecimalQty()
     {
         $quoteItemMock = $this->getMock(
-            '\Magento\Sales\Model\Quote\Item',
+            '\Magento\Quote\Model\Quote\Item',
             ['getStockId', 'getIsQtyDecimal', '__wakeup'],
             [],
             '',
@@ -184,7 +184,7 @@ class InitializerTest extends \PHPUnit_Framework_TestCase
             ->will($this->returnValue($quoteItemMock));
 
         $this->assertInstanceOf(
-            'Magento\Sales\Model\Quote\Item',
+            'Magento\Quote\Model\Quote\Item',
             $this->model->init(
                 $this->quoteMock,
                 $this->productMock,
diff --git a/dev/tests/unit/testsuite/Magento/Sales/Model/Convert/QuoteTest.php b/dev/tests/unit/testsuite/Magento/Sales/Model/Convert/QuoteTest.php
deleted file mode 100644
index b3fd308cdb77250c5178a6bda7cd2cbe66b7d0bc..0000000000000000000000000000000000000000
--- a/dev/tests/unit/testsuite/Magento/Sales/Model/Convert/QuoteTest.php
+++ /dev/null
@@ -1,78 +0,0 @@
-<?php
-/**
- * Copyright © 2015 Magento. All rights reserved.
- * See COPYING.txt for license details.
- */
-
-namespace Magento\Sales\Model\Convert;
-
-use Magento\TestFramework\Helper\ObjectManager;
-
-/**
- * Test class for \Magento\Sales\Model\Order
- */
-class QuoteTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @var \Magento\Sales\Model\Convert\Quote
-     */
-    protected $quote;
-
-    protected function setUp()
-    {
-        $orderPaymentMock = $this->getMock(
-            'Magento\Sales\Model\Order\Payment',
-            ['setStoreId', 'setCustomerPaymentId', '__wakeup'],
-            [],
-            '',
-            false
-        );
-        $orderPaymentMock->expects(
-            $this->any()
-        )->method(
-            'setStoreId'
-        )->will(
-            $this->returnValue(
-                $orderPaymentMock
-            )
-        );
-        $orderPaymentMock->expects(
-            $this->any()
-        )->method(
-            'setCustomerPaymentId'
-        )->will(
-            $this->returnValue(
-                $orderPaymentMock
-            )
-        );
-        $orderPaymentFactoryMock = $this->getMock(
-            'Magento\Sales\Model\Order\PaymentFactory',
-            ['create'],
-            [],
-            '',
-            false
-        );
-        $orderPaymentFactoryMock->expects($this->any())->method('create')->will($this->returnValue($orderPaymentMock));
-
-        $objectCopyServiceMock = $this->getMock('Magento\Framework\Object\Copy', [], [], '', false);
-        $objectManager = new ObjectManager($this);
-        $this->quote = $objectManager->getObject(
-            'Magento\Sales\Model\Convert\Quote',
-            [
-                'orderPaymentFactory' => $orderPaymentFactoryMock,
-                'objectCopyService' => $objectCopyServiceMock
-            ]
-        );
-    }
-
-    public function testPaymentToOrderPayment()
-    {
-        $payment = $this->getMock('Magento\Sales\Model\Quote\Payment', [], [], '', false);
-        $title = new \Magento\Framework\Object(['title' => 'some title']);
-        $payment->expects($this->any())->method('getMethodInstance')->will($this->returnValue($title));
-        $this->assertEquals(
-            ['method_title' => 'some title'],
-            $this->quote->paymentToOrderPayment($payment)->getAdditionalInformation()
-        );
-    }
-}
diff --git a/dev/tests/unit/testsuite/Magento/Sales/Model/Grid/Child/CollectionUpdaterTest.php b/dev/tests/unit/testsuite/Magento/Sales/Model/Grid/Child/CollectionUpdaterTest.php
index 352c5fd0faad856a83b5b834bc834d8f024d8ddb..acc4e818fb6582503a003560141ee0477495dd1a 100644
--- a/dev/tests/unit/testsuite/Magento/Sales/Model/Grid/Child/CollectionUpdaterTest.php
+++ b/dev/tests/unit/testsuite/Magento/Sales/Model/Grid/Child/CollectionUpdaterTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Sales\Model\Grid\Child;
 
 class CollectionUpdaterTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Sales/Model/Grid/CollectionUpdaterTest.php b/dev/tests/unit/testsuite/Magento/Sales/Model/Grid/CollectionUpdaterTest.php
index 4d86a04806fe18268bbbda82c2336c23e7410cb3..f7c1faf7488986cf5a04f26d8c907b1c8463d8d7 100644
--- a/dev/tests/unit/testsuite/Magento/Sales/Model/Grid/CollectionUpdaterTest.php
+++ b/dev/tests/unit/testsuite/Magento/Sales/Model/Grid/CollectionUpdaterTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Sales\Model\Grid;
 
 class CollectionUpdaterTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Sales/Model/Observer/Backend/CatalogPriceRuleTest.php b/dev/tests/unit/testsuite/Magento/Sales/Model/Observer/Backend/CatalogPriceRuleTest.php
index 7857668f6ffaac63d62ea38c5c0623e720e2d9da..be45e48d2a6b675c947ccd35895c7797519161a8 100644
--- a/dev/tests/unit/testsuite/Magento/Sales/Model/Observer/Backend/CatalogPriceRuleTest.php
+++ b/dev/tests/unit/testsuite/Magento/Sales/Model/Observer/Backend/CatalogPriceRuleTest.php
@@ -19,7 +19,7 @@ class CatalogPriceRuleTest extends \PHPUnit_Framework_TestCase
 
     protected function setUp()
     {
-        $this->_quoteMock = $this->getMock('Magento\Sales\Model\Resource\Quote', [], [], '', false);
+        $this->_quoteMock = $this->getMock('Magento\Quote\Model\Resource\Quote', [], [], '', false);
         $this->_model = new \Magento\Sales\Model\Observer\Backend\CatalogPriceRule($this->_quoteMock);
     }
 
diff --git a/dev/tests/unit/testsuite/Magento/Sales/Model/Observer/Backend/CatalogProductQuoteTest.php b/dev/tests/unit/testsuite/Magento/Sales/Model/Observer/Backend/CatalogProductQuoteTest.php
index 7a3573621d5b4eec7b0885b252af7503e12876c1..135c35e4e7548a3f77f41b737f8c8f9efa10ddb1 100644
--- a/dev/tests/unit/testsuite/Magento/Sales/Model/Observer/Backend/CatalogProductQuoteTest.php
+++ b/dev/tests/unit/testsuite/Magento/Sales/Model/Observer/Backend/CatalogProductQuoteTest.php
@@ -29,7 +29,7 @@ class CatalogProductQuoteTest extends \PHPUnit_Framework_TestCase
 
     protected function setUp()
     {
-        $this->_quoteMock = $this->getMock('Magento\Sales\Model\Resource\Quote', [], [], '', false);
+        $this->_quoteMock = $this->getMock('Magento\Quote\Model\Resource\Quote', [], [], '', false);
         $this->_observerMock = $this->getMock('Magento\Framework\Event\Observer', [], [], '', false);
         $this->_eventMock = $this->getMock(
             'Magento\Framework\Event',
diff --git a/dev/tests/unit/testsuite/Magento/Sales/Model/Observer/CleanExpiredQuotesTest.php b/dev/tests/unit/testsuite/Magento/Sales/Model/Observer/CleanExpiredQuotesTest.php
index 5fb2b3cc88eb9513f02aea8bfbfea02eab481647..b928c601b05e97086084e8cd39cc3bf1c16266c6 100644
--- a/dev/tests/unit/testsuite/Magento/Sales/Model/Observer/CleanExpiredQuotesTest.php
+++ b/dev/tests/unit/testsuite/Magento/Sales/Model/Observer/CleanExpiredQuotesTest.php
@@ -16,7 +16,7 @@ class CleanExpiredQuotesTest extends \PHPUnit_Framework_TestCase
     protected $storesConfigMock;
 
     /**
-     * @var \Magento\Sales\Model\Resource\Quote\CollectionFactory|\PHPUnit_Framework_MockObject_MockObject
+     * @var \Magento\Quote\Model\Resource\Quote\CollectionFactory|\PHPUnit_Framework_MockObject_MockObject
      */
     protected $quoteFactoryMock;
 
@@ -29,7 +29,7 @@ class CleanExpiredQuotesTest extends \PHPUnit_Framework_TestCase
     {
         $this->storesConfigMock = $this->getMock('Magento\Store\Model\StoresConfig', [], [], '', false);
 
-        $this->quoteFactoryMock = $this->getMockBuilder('Magento\Sales\Model\Resource\Quote\CollectionFactory')
+        $this->quoteFactoryMock = $this->getMockBuilder('Magento\Quote\Model\Resource\Quote\CollectionFactory')
             ->disableOriginalConstructor()
             ->setMethods(['create'])
             ->getMock();
@@ -49,7 +49,7 @@ class CleanExpiredQuotesTest extends \PHPUnit_Framework_TestCase
             ->with($this->equalTo('checkout/cart/delete_quote_after'))
             ->will($this->returnValue($lifetimes));
 
-        $quotesMock = $this->getMockBuilder('Magento\Sales\Model\Resource\Quote\Collection')
+        $quotesMock = $this->getMockBuilder('Magento\Quote\Model\Resource\Quote\Collection')
             ->disableOriginalConstructor()
             ->getMock();
         $this->quoteFactoryMock->expects($this->exactly(count($lifetimes)))
diff --git a/dev/tests/unit/testsuite/Magento/Sales/Model/Observer/Frontend/Quote/RestoreCustomerGroupIdTest.php b/dev/tests/unit/testsuite/Magento/Sales/Model/Observer/Frontend/Quote/RestoreCustomerGroupIdTest.php
index 748431d6ac92db6aac21aa824de110a860b682d6..8abbdbcec3dd18032c88f3415c387e8ac0cb9e02 100644
--- a/dev/tests/unit/testsuite/Magento/Sales/Model/Observer/Frontend/Quote/RestoreCustomerGroupIdTest.php
+++ b/dev/tests/unit/testsuite/Magento/Sales/Model/Observer/Frontend/Quote/RestoreCustomerGroupIdTest.php
@@ -38,7 +38,7 @@ class RestoreCustomerGroupIdTest extends \PHPUnit_Framework_TestCase
     public function testExecute($configAddressType)
     {
         $quoteAddress = $this->getMock(
-            'Magento\Sales\Model\Quote\Address',
+            'Magento\Quote\Model\Quote\Address',
             [
                 'getQuote', 'setCustomerGroupId', 'getPrevQuoteCustomerGroupId',
                 'unsPrevQuoteCustomerGroupId', 'hasPrevQuoteCustomerGroupId'
diff --git a/dev/tests/unit/testsuite/Magento/Sales/Model/Order/Creditmemo/Total/TaxTest.php b/dev/tests/unit/testsuite/Magento/Sales/Model/Order/Creditmemo/Total/TaxTest.php
index d26e6a2d943bff106b9f2373ed68cbd8dadf80d1..c4d57221c8bdb833dbde02b5e6a9364e9bfaecd1 100644
--- a/dev/tests/unit/testsuite/Magento/Sales/Model/Order/Creditmemo/Total/TaxTest.php
+++ b/dev/tests/unit/testsuite/Magento/Sales/Model/Order/Creditmemo/Total/TaxTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Sales\Model\Order\Creditmemo\Total;
 
 use Magento\Framework\Object as MagentoObject;
diff --git a/dev/tests/unit/testsuite/Magento/Sales/Model/Order/CreditmemoTest.php b/dev/tests/unit/testsuite/Magento/Sales/Model/Order/CreditmemoTest.php
index 0cd264330cc613cf7590f1a4f23838cf1743bf8c..7e9d43e006f81036f76a525c1b00a28d5cd23974 100644
--- a/dev/tests/unit/testsuite/Magento/Sales/Model/Order/CreditmemoTest.php
+++ b/dev/tests/unit/testsuite/Magento/Sales/Model/Order/CreditmemoTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Sales\Model\Order;
 
 use Magento\Sales\Model\Resource\OrderFactory;
diff --git a/dev/tests/unit/testsuite/Magento/Sales/Model/Order/Invoice/Total/ShippingTest.php b/dev/tests/unit/testsuite/Magento/Sales/Model/Order/Invoice/Total/ShippingTest.php
index 55d44e69c65b6aa31493ecdb616f88f9dd252224..42830ceaa2f723492c030d85a8ed70dbf6b9241e 100644
--- a/dev/tests/unit/testsuite/Magento/Sales/Model/Order/Invoice/Total/ShippingTest.php
+++ b/dev/tests/unit/testsuite/Magento/Sales/Model/Order/Invoice/Total/ShippingTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Sales\Model\Order\Invoice\Total;
 
 class ShippingTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Sales/Model/Order/InvoiceTest.php b/dev/tests/unit/testsuite/Magento/Sales/Model/Order/InvoiceTest.php
index 85a2112ccb2a192441f3d0aad86fbbb2c0dec002..55dd44cad8832a41e18cc3a4249f0ed485dfa4d8 100644
--- a/dev/tests/unit/testsuite/Magento/Sales/Model/Order/InvoiceTest.php
+++ b/dev/tests/unit/testsuite/Magento/Sales/Model/Order/InvoiceTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Sales\Model\Order;
 
 use Magento\Sales\Model\Resource\OrderFactory;
diff --git a/dev/tests/unit/testsuite/Magento/Sales/Model/Order/ShipmentTest.php b/dev/tests/unit/testsuite/Magento/Sales/Model/Order/ShipmentTest.php
index 9ef5554b2ca2f93c9c892a776c1aa440e15893da..bb9f512f06c1f1730063040d7e77c6ee4540a16f 100644
--- a/dev/tests/unit/testsuite/Magento/Sales/Model/Order/ShipmentTest.php
+++ b/dev/tests/unit/testsuite/Magento/Sales/Model/Order/ShipmentTest.php
@@ -16,7 +16,7 @@ class ShipmentTest extends \PHPUnit_Framework_TestCase
     {
         $helperManager = new \Magento\TestFramework\Helper\ObjectManager($this);
         $arguments = [];
-        $this->shipmentModel = $helperManager->getObject('Magento\Sales\Model\Order\shipment', $arguments);
+        $this->shipmentModel = $helperManager->getObject('Magento\Sales\Model\Order\Shipment', $arguments);
     }
 
     public function testGetIncrementId()
diff --git a/dev/tests/unit/testsuite/Magento/Sales/Model/Resource/GridPoolTest.php b/dev/tests/unit/testsuite/Magento/Sales/Model/Resource/GridPoolTest.php
index ffc7d9a3bf9626e1552c816dfd2859aa5330bd0a..e05b0644048e65d5a9642812ca213a768e47363e 100644
--- a/dev/tests/unit/testsuite/Magento/Sales/Model/Resource/GridPoolTest.php
+++ b/dev/tests/unit/testsuite/Magento/Sales/Model/Resource/GridPoolTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Sales\Model\Resource;
 
 /**
diff --git a/dev/tests/unit/testsuite/Magento/Sales/Model/Resource/Order/Handler/AddressTest.php b/dev/tests/unit/testsuite/Magento/Sales/Model/Resource/Order/Handler/AddressTest.php
index cd3c716b41eeb3fe38b481189e174642ccb7214d..5c7a23bd6f156cd06f5df99c06cef5490a2de8cb 100644
--- a/dev/tests/unit/testsuite/Magento/Sales/Model/Resource/Order/Handler/AddressTest.php
+++ b/dev/tests/unit/testsuite/Magento/Sales/Model/Resource/Order/Handler/AddressTest.php
@@ -87,8 +87,8 @@ class AddressTest extends \PHPUnit_Framework_TestCase
     {
         $this->orderMock->expects($this->exactly(2))
             ->method('getAddresses')
-            ->willReturn([$this->addressCollectionMock]);
-        $this->addressCollectionMock->expects($this->once())
+            ->willReturn([$this->addressMock]);
+        $this->addressMock->expects($this->once())
             ->method('save')
             ->will($this->returnSelf());
         $this->orderMock->expects($this->once())
@@ -120,8 +120,8 @@ class AddressTest extends \PHPUnit_Framework_TestCase
     {
         $this->orderMock->expects($this->exactly(2))
             ->method('getAddresses')
-            ->willReturn([$this->addressCollectionMock]);
-        $this->addressCollectionMock->expects($this->once())
+            ->willReturn([$this->addressMock]);
+        $this->addressMock->expects($this->once())
             ->method('save')
             ->will($this->returnSelf());
         $this->orderMock->expects($this->once())
diff --git a/dev/tests/unit/testsuite/Magento/Sales/Model/Resource/Order/StatusTest.php b/dev/tests/unit/testsuite/Magento/Sales/Model/Resource/Order/StatusTest.php
index 5e36dd8bfacba70c50249452d248b25013372513..7e4c91295407249a3d22638c97cbc49e9e4d9cd6 100644
--- a/dev/tests/unit/testsuite/Magento/Sales/Model/Resource/Order/StatusTest.php
+++ b/dev/tests/unit/testsuite/Magento/Sales/Model/Resource/Order/StatusTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Sales\Model\Resource\Order;
 
 /**
diff --git a/dev/tests/unit/testsuite/Magento/Sales/Model/Resource/QuoteTest.php b/dev/tests/unit/testsuite/Magento/Sales/Model/Resource/QuoteTest.php
deleted file mode 100644
index 2d0429d31264fc432853b0e30880ce405b7d9a2a..0000000000000000000000000000000000000000
--- a/dev/tests/unit/testsuite/Magento/Sales/Model/Resource/QuoteTest.php
+++ /dev/null
@@ -1,79 +0,0 @@
-<?php
-/**
- * Copyright © 2015 Magento. All rights reserved.
- * See COPYING.txt for license details.
- */
-namespace Magento\Sales\Model\Resource;
-
-class QuoteTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @var \Magento\Sales\Model\Resource\Quote
-     */
-    protected $_model;
-
-    /**
-     * @var \Magento\Framework\App\Resource
-     */
-    protected $_resourceMock;
-
-    /**
-     * @var \Magento\Eav\Model\Config
-     */
-    protected $_configMock;
-
-    /**
-     * @var \Magento\Framework\DB\Adapter\Pdo\Mysql
-     */
-    protected $_adapterMock;
-
-    /**
-     * @var \Magento\Framework\DB\Select
-     */
-    protected $_selectMock;
-
-    protected function setUp()
-    {
-        $this->_selectMock = $this->getMock('\Magento\Framework\DB\Select', [], [], '', false);
-        $this->_selectMock->expects($this->any())->method('from')->will($this->returnSelf());
-        $this->_selectMock->expects($this->any())->method('where');
-
-        $this->_adapterMock = $this->getMock('\Magento\Framework\DB\Adapter\Pdo\Mysql', [], [], '', false);
-        $this->_adapterMock->expects($this->any())->method('select')->will($this->returnValue($this->_selectMock));
-
-        $this->_resourceMock = $this->getMock('\Magento\Framework\App\Resource', [], [], '', false);
-        $this->_resourceMock->expects(
-            $this->any()
-        )->method(
-            'getConnection'
-        )->will(
-            $this->returnValue($this->_adapterMock)
-        );
-
-        $this->_configMock = $this->getMock('\Magento\Eav\Model\Config', [], [], '', false);
-
-        $this->_model = new \Magento\Sales\Model\Resource\Quote(
-            $this->_resourceMock,
-            $this->_configMock
-        );
-    }
-
-    /**
-     * @param $value
-     * @dataProvider isOrderIncrementIdUsedDataProvider
-     */
-    public function testIsOrderIncrementIdUsed($value)
-    {
-        $expectedBind = [':increment_id' => $value];
-        $this->_adapterMock->expects($this->once())->method('fetchOne')->with($this->_selectMock, $expectedBind);
-        $this->_model->isOrderIncrementIdUsed($value);
-    }
-
-    /**
-     * @return array
-     */
-    public function isOrderIncrementIdUsedDataProvider()
-    {
-        return [[100000001], ['10000000001'], ['M10000000001']];
-    }
-}
diff --git a/dev/tests/unit/testsuite/Magento/Sales/Model/Service/QuoteTest.php b/dev/tests/unit/testsuite/Magento/Sales/Model/Service/QuoteTest.php
deleted file mode 100644
index 78738f3372995431d703fa76676196861f8e1cb4..0000000000000000000000000000000000000000
--- a/dev/tests/unit/testsuite/Magento/Sales/Model/Service/QuoteTest.php
+++ /dev/null
@@ -1,53 +0,0 @@
-<?php
-/**
- * Copyright © 2015 Magento. All rights reserved.
- * See COPYING.txt for license details.
- */
-namespace Magento\Sales\Model\Service;
-
-use Magento\TestFramework\Helper\ObjectManager as ObjectManagerHelper;
-
-/**
- * Class QuoteTest
- */
-class QuoteTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @var \Magento\Sales\Model\Service\Quote
-     */
-    protected $quoteService;
-
-    /**
-     * @var \PHPUnit_Framework_MockObject_MockObject
-     */
-    protected $quoteMock;
-
-    protected function setUp()
-    {
-        $objectManager = new ObjectManagerHelper($this);
-        $convertFactory = $this->getMock('Magento\Sales\Model\Convert\QuoteFactory', ['create'], [], '', false);
-        $convertFactory->expects($this->once())
-            ->method('create');
-        $this->quoteMock = $this->getMock(
-            'Magento\Sales\Model\Quote',
-            ['getAllVisibleItems', 'setIsActive'],
-            [],
-            '',
-            false
-        );
-        $this->quoteService = $objectManager->getObject(
-            'Magento\Sales\Model\Service\Quote',
-            ['quote' => $this->quoteMock, 'convertQuoteFactory' => $convertFactory]
-        );
-    }
-
-    public function testSubmitAllWithDataObject()
-    {
-        $this->quoteMock->expects($this->once())
-            ->method('getAllVisibleItems')
-            ->willReturn(false);
-        $this->quoteMock->expects($this->once())
-            ->method('setIsActive');
-        $this->quoteService->submitAllWithDataObject();
-    }
-}
diff --git a/dev/tests/unit/testsuite/Magento/SalesRule/Block/Rss/DiscountsTest.php b/dev/tests/unit/testsuite/Magento/SalesRule/Block/Rss/DiscountsTest.php
index 69cf3c32dc6cad1b1c3e4d33b327e556bd700e81..0628db698dee17f04f36d282e1775bfd7ef65652 100644
--- a/dev/tests/unit/testsuite/Magento/SalesRule/Block/Rss/DiscountsTest.php
+++ b/dev/tests/unit/testsuite/Magento/SalesRule/Block/Rss/DiscountsTest.php
@@ -93,7 +93,8 @@ class DiscountsTest extends \PHPUnit_Framework_TestCase
                 '__wakeUp',
                 'getId',
                 'getWebsiteId',
-                'getName'
+                'getName',
+                'getFrontendName'
             ],
             [],
             '',
@@ -130,8 +131,8 @@ class DiscountsTest extends \PHPUnit_Framework_TestCase
             'name' => 'Rule Name',
         ];
         $rssData = [
-            'title' => 'Store Name - Discounts and Coupons',
-            'description' => 'Store Name - Discounts and Coupons',
+            'title' => 'Frontend Name - Discounts and Coupons',
+            'description' => 'Frontend Name - Discounts and Coupons',
             'link' => 'http://rss.magento.com/discount',
             'charset' => 'UTF-8',
             'language' => 'en_US',
@@ -165,7 +166,9 @@ class DiscountsTest extends \PHPUnit_Framework_TestCase
         );
 
         $this->storeModel->expects($this->once())->method('getWebsiteId')->will($this->returnValue(1));
-        $this->storeModel->expects($this->once())->method('getName')->will($this->returnValue('Store Name'));
+        $this->storeModel->expects($this->never())->method('getName');
+        $this->storeModel->expects($this->atLeastOnce())->method('getFrontendName')->willReturn('Frontend Name');
+
         $this->requestInterface->expects($this->any())->method('getParam')->will($this->returnValue(1));
         $this->urlBuilderInterface->expects($this->any())->method('getUrl')->will($this->returnValue($url));
         $this->rssBuilderInterface->expects($this->any())->method('getUrl')->will($this->returnValue($rssUrl));
diff --git a/dev/tests/unit/testsuite/Magento/SalesRule/Model/Plugin/QuoteConfigProductAttributesTest.php b/dev/tests/unit/testsuite/Magento/SalesRule/Model/Plugin/QuoteConfigProductAttributesTest.php
index 4ed3f44a51f598d529d7fd1774f083e901a1f567..859ab255df4020e562c9dc0cdbb1176e8513e7c2 100644
--- a/dev/tests/unit/testsuite/Magento/SalesRule/Model/Plugin/QuoteConfigProductAttributesTest.php
+++ b/dev/tests/unit/testsuite/Magento/SalesRule/Model/Plugin/QuoteConfigProductAttributesTest.php
@@ -33,7 +33,7 @@ class QuoteConfigProductAttributesTest extends \PHPUnit_Framework_TestCase
 
     public function testAfterGetProductAttributes()
     {
-        $subject = $this->getMock('Magento\Sales\Model\Quote\Config', [], [], '', false);
+        $subject = $this->getMock('Magento\Quote\Model\Quote\Config', [], [], '', false);
         $attributeCode = 'code of the attribute';
         $expected = [0 => $attributeCode];
 
diff --git a/dev/tests/unit/testsuite/Magento/SalesRule/Model/Quote/DiscountTest.php b/dev/tests/unit/testsuite/Magento/SalesRule/Model/Quote/DiscountTest.php
index 7afd9c18bdd484cc23ae03496033f95d78242dcf..58d437308db509c64676bc95d57a8bce5465a428 100644
--- a/dev/tests/unit/testsuite/Magento/SalesRule/Model/Quote/DiscountTest.php
+++ b/dev/tests/unit/testsuite/Magento/SalesRule/Model/Quote/DiscountTest.php
@@ -88,7 +88,7 @@ class DiscountTest extends \PHPUnit_Framework_TestCase
 
     public function testCollectItemNoDiscount()
     {
-        $itemNoDiscount = $this->getMockBuilder('Magento\Sales\Model\Quote\Item')
+        $itemNoDiscount = $this->getMockBuilder('Magento\Quote\Model\Quote\Item')
             ->disableOriginalConstructor()
             ->setMethods(['getNoDiscount', '__wakeup'])
             ->getMock();
@@ -108,10 +108,10 @@ class DiscountTest extends \PHPUnit_Framework_TestCase
             ->method('getStore')
             ->willReturn($storeMock);
 
-        $quoteMock = $this->getMockBuilder('Magento\Sales\Model\Quote')
+        $quoteMock = $this->getMockBuilder('Magento\Quote\Model\Quote')
             ->disableOriginalConstructor()
             ->getMock();
-        $addressMock = $this->getMockBuilder('Magento\Sales\Model\Quote\Address')
+        $addressMock = $this->getMockBuilder('Magento\Quote\Model\Quote\Address')
             ->disableOriginalConstructor()
             ->setMethods(['getQuote', 'getAllItems', 'getShippingAmount', '__wakeup'])
             ->getMock();
@@ -133,7 +133,7 @@ class DiscountTest extends \PHPUnit_Framework_TestCase
 
     public function testCollectItemHasParent()
     {
-        $itemWithParentId = $this->getMockBuilder('Magento\Sales\Model\Quote\Item')
+        $itemWithParentId = $this->getMockBuilder('Magento\Quote\Model\Quote\Item')
             ->disableOriginalConstructor()
             ->setMethods(['getNoDiscount', 'getParentItem', '__wakeup'])
             ->getMock();
@@ -160,10 +160,10 @@ class DiscountTest extends \PHPUnit_Framework_TestCase
             ->method('getStore')
             ->willReturn($storeMock);
 
-        $quoteMock = $this->getMockBuilder('Magento\Sales\Model\Quote')
+        $quoteMock = $this->getMockBuilder('Magento\Quote\Model\Quote')
             ->disableOriginalConstructor()
             ->getMock();
-        $addressMock = $this->getMockBuilder('Magento\Sales\Model\Quote\Address')
+        $addressMock = $this->getMockBuilder('Magento\Quote\Model\Quote\Address')
             ->disableOriginalConstructor()
             ->setMethods(['getQuote', 'getAllItems', 'getShippingAmount', '__wakeup'])
             ->getMock();
@@ -193,7 +193,7 @@ class DiscountTest extends \PHPUnit_Framework_TestCase
             $childItems[$itemId] = new MagentoObject($itemData);
         }
 
-        $itemWithChildren = $this->getMockBuilder('Magento\Sales\Model\Quote\Item')
+        $itemWithChildren = $this->getMockBuilder('Magento\Quote\Model\Quote\Item')
             ->disableOriginalConstructor()
             ->setMethods(
                 [
@@ -244,10 +244,10 @@ class DiscountTest extends \PHPUnit_Framework_TestCase
             ->method('getStore')
             ->willReturn($storeMock);
 
-        $quoteMock = $this->getMockBuilder('Magento\Sales\Model\Quote')
+        $quoteMock = $this->getMockBuilder('Magento\Quote\Model\Quote')
             ->disableOriginalConstructor()
             ->getMock();
-        $addressMock = $this->getMockBuilder('Magento\Sales\Model\Quote\Address')
+        $addressMock = $this->getMockBuilder('Magento\Quote\Model\Quote\Address')
             ->disableOriginalConstructor()
             ->setMethods(['getQuote', 'getAllItems', 'getShippingAmount', '__wakeup'])
             ->getMock();
@@ -324,7 +324,7 @@ class DiscountTest extends \PHPUnit_Framework_TestCase
 
     public function testCollectItemHasNoChildren()
     {
-        $itemWithChildren = $this->getMockBuilder('Magento\Sales\Model\Quote\Item')
+        $itemWithChildren = $this->getMockBuilder('Magento\Quote\Model\Quote\Item')
             ->disableOriginalConstructor()
             ->setMethods(
                 [
@@ -363,10 +363,10 @@ class DiscountTest extends \PHPUnit_Framework_TestCase
             ->method('getStore')
             ->willReturn($storeMock);
 
-        $quoteMock = $this->getMockBuilder('Magento\Sales\Model\Quote')
+        $quoteMock = $this->getMockBuilder('Magento\Quote\Model\Quote')
             ->disableOriginalConstructor()
             ->getMock();
-        $addressMock = $this->getMockBuilder('Magento\Sales\Model\Quote\Address')
+        $addressMock = $this->getMockBuilder('Magento\Quote\Model\Quote\Address')
             ->disableOriginalConstructor()
             ->setMethods(['getQuote', 'getAllItems', 'getShippingAmount', '__wakeup'])
             ->getMock();
@@ -388,7 +388,7 @@ class DiscountTest extends \PHPUnit_Framework_TestCase
 
     public function testFetch()
     {
-        $addressMock = $this->getMockBuilder('Magento\Sales\Model\Quote\Address')
+        $addressMock = $this->getMockBuilder('Magento\Quote\Model\Quote\Address')
             ->disableOriginalConstructor()
             ->setMethods(['getDiscountAmount', 'getDiscountDescription', 'addTotal', '__wakeup'])
             ->getMock();
diff --git a/dev/tests/unit/testsuite/Magento/SalesRule/Model/Resource/Report/CollectionTest.php b/dev/tests/unit/testsuite/Magento/SalesRule/Model/Resource/Report/CollectionTest.php
index d48db1e2a6ccb7e0502ee03832ad0dc4e16cc592..08e15499e1418cf25f7c56ef44638ba9f99474df 100644
--- a/dev/tests/unit/testsuite/Magento/SalesRule/Model/Resource/Report/CollectionTest.php
+++ b/dev/tests/unit/testsuite/Magento/SalesRule/Model/Resource/Report/CollectionTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\SalesRule\Model\Resource\Report;
 
 class CollectionTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/SalesRule/Model/Rule/Action/Discount/ByPercentTest.php b/dev/tests/unit/testsuite/Magento/SalesRule/Model/Rule/Action/Discount/ByPercentTest.php
index 9f911786fed4bc2cb391529b4bfadb55049c99b4..b770464aa8d2a3008ab37c34ae5b3e9a987ca5db 100644
--- a/dev/tests/unit/testsuite/Magento/SalesRule/Model/Rule/Action/Discount/ByPercentTest.php
+++ b/dev/tests/unit/testsuite/Magento/SalesRule/Model/Rule/Action/Discount/ByPercentTest.php
@@ -77,7 +77,7 @@ class ByPercentTest extends \PHPUnit_Framework_TestCase
         )->getMock();
 
         $item = $this->getMockBuilder(
-            'Magento\Sales\Model\Quote\Item\AbstractItem'
+            'Magento\Quote\Model\Quote\Item\AbstractItem'
         )->disableOriginalConstructor()->setMethods(
             [
                 'getDiscountAmount',
@@ -209,7 +209,7 @@ class ByPercentTest extends \PHPUnit_Framework_TestCase
                     'amount' => 42,
                     'baseAmount' => 25.5,
                     'originalAmount' => 51,
-                    'baseOriginalAmount' => 46.5,
+                    'baseOriginalAmount' => 34.5,
                 ],
             ]
         ];
diff --git a/dev/tests/unit/testsuite/Magento/SalesRule/Model/Rule/Action/Discount/CartFixedTest.php b/dev/tests/unit/testsuite/Magento/SalesRule/Model/Rule/Action/Discount/CartFixedTest.php
index a2896ca828c2600848544d2b208cb4d76f6b8dc7..2700025b25761b2a0d396098c3bfa56ee075c248 100644
--- a/dev/tests/unit/testsuite/Magento/SalesRule/Model/Rule/Action/Discount/CartFixedTest.php
+++ b/dev/tests/unit/testsuite/Magento/SalesRule/Model/Rule/Action/Discount/CartFixedTest.php
@@ -13,7 +13,7 @@ class CartFixedTest extends \PHPUnit_Framework_TestCase
     protected $rule;
 
     /**
-     * @var \Magento\Sales\Model\Quote\Item\AbstractItem|\PHPUnit_Framework_MockObject_MockObject
+     * @var \Magento\Quote\Model\Quote\Item\AbstractItem|\PHPUnit_Framework_MockObject_MockObject
      */
     protected $item;
 
@@ -28,12 +28,12 @@ class CartFixedTest extends \PHPUnit_Framework_TestCase
     protected $data;
 
     /**
-     * @var \Magento\Sales\Model\Quote|\PHPUnit_Framework_MockObject_MockObject
+     * @var \Magento\Quote\Model\Quote|\PHPUnit_Framework_MockObject_MockObject
      */
     protected $quote;
 
     /**
-     * @var \Magento\Sales\Model\Quote\Address|\PHPUnit_Framework_MockObject_MockObject
+     * @var \Magento\Quote\Model\Quote\Address|\PHPUnit_Framework_MockObject_MockObject
      */
     protected $address;
 
@@ -50,12 +50,12 @@ class CartFixedTest extends \PHPUnit_Framework_TestCase
     protected function setUp()
     {
         $this->rule = $this->getMock('Magento\Framework\Object', null, [], 'Rule', true);
-        $this->item = $this->getMock('Magento\Sales\Model\Quote\Item\AbstractItem', [], [], '', false);
+        $this->item = $this->getMock('Magento\Quote\Model\Quote\Item\AbstractItem', [], [], '', false);
         $this->data = $this->getMock('Magento\SalesRule\Model\Rule\Action\Discount\Data', null);
 
-        $this->quote = $this->getMock('Magento\Sales\Model\Quote', [], [], '', false);
+        $this->quote = $this->getMock('Magento\Quote\Model\Quote', [], [], '', false);
         $this->address = $this->getMock(
-            'Magento\Sales\Model\Quote\Address',
+            'Magento\Quote\Model\Quote\Address',
             ['getCartFixedRules', 'setCartFixedRules', '__wakeup'],
             [],
             '',
diff --git a/dev/tests/unit/testsuite/Magento/SalesRule/Model/Rule/Action/Discount/ToPercentTest.php b/dev/tests/unit/testsuite/Magento/SalesRule/Model/Rule/Action/Discount/ToPercentTest.php
index edc01bca808bdcaadb8370e7f0077b5b76a69750..13bec6ff79e5a34f1369ae363e59c1d63822d8b3 100644
--- a/dev/tests/unit/testsuite/Magento/SalesRule/Model/Rule/Action/Discount/ToPercentTest.php
+++ b/dev/tests/unit/testsuite/Magento/SalesRule/Model/Rule/Action/Discount/ToPercentTest.php
@@ -77,7 +77,7 @@ class ToPercentTest extends \PHPUnit_Framework_TestCase
         )->getMock();
 
         $item = $this->getMockBuilder(
-            'Magento\Sales\Model\Quote\Item\AbstractItem'
+            'Magento\Quote\Model\Quote\Item\AbstractItem'
         )->disableOriginalConstructor()->setMethods(
             [
                 'getDiscountAmount',
@@ -209,7 +209,7 @@ class ToPercentTest extends \PHPUnit_Framework_TestCase
                     'amount' => 98,
                     'baseAmount' => 59.5,
                     'originalAmount' => 119,
-                    'baseOriginalAmount' => 108.5,
+                    'baseOriginalAmount' => 80.5,
                 ],
             ]
         ];
diff --git a/dev/tests/unit/testsuite/Magento/SalesRule/Model/RulesApplierTest.php b/dev/tests/unit/testsuite/Magento/SalesRule/Model/RulesApplierTest.php
index 1eb73e3394bae2338c56e4e606af5ff931d96836..6c3887827ae0fcadbee961041dcc25749dde915e 100644
--- a/dev/tests/unit/testsuite/Magento/SalesRule/Model/RulesApplierTest.php
+++ b/dev/tests/unit/testsuite/Magento/SalesRule/Model/RulesApplierTest.php
@@ -158,13 +158,13 @@ class RulesApplierTest extends \PHPUnit_Framework_TestCase
     }
 
     /**
-     * @return \Magento\Sales\Model\Quote\Item\AbstractItem|\PHPUnit_Framework_MockObject_MockObject
+     * @return \Magento\Quote\Model\Quote\Item\AbstractItem|\PHPUnit_Framework_MockObject_MockObject
      */
     protected function getPreparedItem()
     {
-        /** @var \Magento\Sales\Model\Quote\Address|\PHPUnit_Framework_MockObject_MockObject $address */
+        /** @var \Magento\Quote\Model\Quote\Address|\PHPUnit_Framework_MockObject_MockObject $address */
         $address = $this->getMock(
-            'Magento\Sales\Model\Quote\Address',
+            'Magento\Quote\Model\Quote\Address',
             [
                 'getQuote',
                 'setCouponCode',
@@ -175,9 +175,9 @@ class RulesApplierTest extends \PHPUnit_Framework_TestCase
             '',
             false
         );
-        /** @var \Magento\Sales\Model\Quote\Item\AbstractItem|\PHPUnit_Framework_MockObject_MockObject $item */
+        /** @var \Magento\Quote\Model\Quote\Item\AbstractItem|\PHPUnit_Framework_MockObject_MockObject $item */
         $item = $this->getMock(
-            'Magento\Sales\Model\Quote\Item',
+            'Magento\Quote\Model\Quote\Item',
             [
                 'setDiscountAmount',
                 'setBaseDiscountAmount',
@@ -191,7 +191,7 @@ class RulesApplierTest extends \PHPUnit_Framework_TestCase
             '',
             false
         );
-        $quote = $this->getMock('Magento\Sales\Model\Quote', ['getStore', '__wakeUp'], [], '', false);
+        $quote = $this->getMock('Magento\Quote\Model\Quote', ['getStore', '__wakeUp'], [], '', false);
         $item->expects($this->any())->method('getAddress')->will($this->returnValue($address));
         $address->expects($this->any())
             ->method('getQuote')
diff --git a/dev/tests/unit/testsuite/Magento/SalesRule/Model/UtilityTest.php b/dev/tests/unit/testsuite/Magento/SalesRule/Model/UtilityTest.php
index aaa33f1aad3e550bf717d6749aaf3552d492a4a0..048bbd7107d3e0473d7e5bce22228ed97d1bbc8f 100644
--- a/dev/tests/unit/testsuite/Magento/SalesRule/Model/UtilityTest.php
+++ b/dev/tests/unit/testsuite/Magento/SalesRule/Model/UtilityTest.php
@@ -8,6 +8,7 @@ namespace Magento\SalesRule\Model;
 /**
  * Class UtilityTest
  *
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class UtilityTest extends \PHPUnit_Framework_TestCase
 {
@@ -27,7 +28,7 @@ class UtilityTest extends \PHPUnit_Framework_TestCase
     protected $coupon;
 
     /**
-     * @var \Magento\Sales\Model\Quote | \PHPUnit_Framework_MockObject_MockObject
+     * @var \Magento\Quote\Model\Quote | \PHPUnit_Framework_MockObject_MockObject
      */
     protected $quote;
 
@@ -42,7 +43,7 @@ class UtilityTest extends \PHPUnit_Framework_TestCase
     protected $customer;
 
     /**
-     * @var \Magento\Sales\Model\Quote\Address | \PHPUnit_Framework_MockObject_MockObject
+     * @var \Magento\Quote\Model\Quote\Address | \PHPUnit_Framework_MockObject_MockObject
      */
     protected $address;
 
@@ -57,7 +58,7 @@ class UtilityTest extends \PHPUnit_Framework_TestCase
     protected $objectFactory;
 
     /**
-     * @var \Magento\Sales\Model\Quote\Item\AbstractItem | \PHPUnit_Framework_MockObject_MockObject
+     * @var \Magento\Quote\Model\Quote\Item\AbstractItem | \PHPUnit_Framework_MockObject_MockObject
      */
     protected $item;
 
@@ -103,7 +104,7 @@ class UtilityTest extends \PHPUnit_Framework_TestCase
             '',
             false
         );
-        $this->quote = $this->getMock('Magento\Sales\Model\Quote', ['__wakeup', 'getStore'], [], '', false);
+        $this->quote = $this->getMock('Magento\Quote\Model\Quote', ['__wakeup', 'getStore'], [], '', false);
         $this->customer = $this->getMock(
             'Magento\SalesRule\Model\Rule\Customer',
             ['loadByCustomerRule', '__wakeup'],
@@ -127,7 +128,7 @@ class UtilityTest extends \PHPUnit_Framework_TestCase
             false
         );
         $this->address = $this->getMock(
-            'Magento\Sales\Model\Quote\Address',
+            'Magento\Quote\Model\Quote\Address',
             [
                 'isObjectNew',
                 'getQuote',
@@ -143,7 +144,7 @@ class UtilityTest extends \PHPUnit_Framework_TestCase
         $this->address->setQuote($this->quote);
 
         $this->item = $this->getMock(
-            'Magento\Sales\Model\Quote\Item\AbstractItem',
+            'Magento\Quote\Model\Quote\Item\AbstractItem',
             [
                 'getDiscountCalculationPrice',
                 'getCalculationPrice',
diff --git a/dev/tests/unit/testsuite/Magento/SalesRule/Model/ValidatorTest.php b/dev/tests/unit/testsuite/Magento/SalesRule/Model/ValidatorTest.php
index eaaf5fb497ccfbc06adf5af9438979bbf4a79845..9018340911536f0c7e67a381351109b755451727 100644
--- a/dev/tests/unit/testsuite/Magento/SalesRule/Model/ValidatorTest.php
+++ b/dev/tests/unit/testsuite/Magento/SalesRule/Model/ValidatorTest.php
@@ -22,7 +22,7 @@ class ValidatorTest extends \PHPUnit_Framework_TestCase
     protected $model;
 
     /**
-     * @var \Magento\Sales\Model\Quote\Item|\PHPUnit_Framework_MockObject_MockObject
+     * @var \Magento\Quote\Model\Quote\Item|\PHPUnit_Framework_MockObject_MockObject
      */
     protected $item;
 
@@ -67,8 +67,8 @@ class ValidatorTest extends \PHPUnit_Framework_TestCase
             false
         );
 
-        /** @var \Magento\Sales\Model\Quote\Item\AbstractItem|\PHPUnit_Framework_MockObject_MockObject $item */
-        $this->item = $this->getMock('Magento\Sales\Model\Quote\Item', ['__wakeup'], [], '', false);
+        /** @var \Magento\Quote\Model\Quote\Item\AbstractItem|\PHPUnit_Framework_MockObject_MockObject $item */
+        $this->item = $this->getMock('Magento\Quote\Model\Quote\Item', ['__wakeup'], [], '', false);
 
         $context = $this->getMock('Magento\Framework\Model\Context', [], [], '', false);
         $registry = $this->getMock('Magento\Framework\Registry', [], [], '', false);
@@ -109,13 +109,13 @@ class ValidatorTest extends \PHPUnit_Framework_TestCase
     }
 
     /**
-     * @return \Magento\Sales\Model\Quote\Item|\PHPUnit_Framework_MockObject_MockObject
+     * @return \Magento\Quote\Model\Quote\Item|\PHPUnit_Framework_MockObject_MockObject
      */
     protected function getQuoteItemMock()
     {
         $fixturePath = __DIR__ . '/_files/';
         $itemDownloadable = $this->getMock(
-            'Magento\Sales\Model\Quote\Item',
+            'Magento\Quote\Model\Quote\Item',
             ['getAddress', '__wakeup'],
             [],
             '',
@@ -124,7 +124,7 @@ class ValidatorTest extends \PHPUnit_Framework_TestCase
         $itemDownloadable->expects($this->any())->method('getAddress')->will($this->returnValue(new \stdClass()));
 
         $itemSimple = $this->getMock(
-            'Magento\Sales\Model\Quote\Item',
+            'Magento\Quote\Model\Quote\Item',
             ['getAddress', '__wakeup'],
             [],
             '',
@@ -132,9 +132,9 @@ class ValidatorTest extends \PHPUnit_Framework_TestCase
         );
         $itemSimple->expects($this->any())->method('getAddress')->will($this->returnValue(new \stdClass()));
 
-        /** @var $quote \Magento\Sales\Model\Quote */
+        /** @var $quote \Magento\Quote\Model\Quote */
         $quote = $this->getMock(
-            'Magento\Sales\Model\Quote',
+            'Magento\Quote\Model\Quote',
             ['getStoreId', '__wakeup'],
             [],
             '',
@@ -312,7 +312,7 @@ class ValidatorTest extends \PHPUnit_Framework_TestCase
 
     public function testInitTotalsCanApplyDiscount()
     {
-        $address = $this->getMock('Magento\Sales\Model\Quote\Address', [], [], '', false);
+        $address = $this->getMock('Magento\Quote\Model\Quote\Address', [], [], '', false);
         $rule = $this->getMock(
             'Magento\SalesRule\Model\Rule',
             ['getSimpleAction', 'getActions', 'getId'],
@@ -321,7 +321,7 @@ class ValidatorTest extends \PHPUnit_Framework_TestCase
             false
         );
         $item1 = $this->getMockForAbstractClass(
-            'Magento\Sales\Model\Quote\Item\AbstractItem',
+            'Magento\Quote\Model\Quote\Item\AbstractItem',
             [],
             '',
             false,
@@ -376,7 +376,7 @@ class ValidatorTest extends \PHPUnit_Framework_TestCase
 
     public function testInitTotalsNoItems()
     {
-        $address = $this->getMock('\Magento\Sales\Model\Quote\Address', [], [], '', false);
+        $address = $this->getMock('\Magento\Quote\Model\Quote\Address', [], [], '', false);
         $this->item->expects($this->never())
             ->method('getParentItemId');
         $this->model->init(
@@ -512,7 +512,7 @@ class ValidatorTest extends \PHPUnit_Framework_TestCase
             ->disableOriginalConstructor()
             ->setMethods([])
             ->getMock();
-        $quoteMock = $this->getMockBuilder('Magento\Sales\Model\Quote')
+        $quoteMock = $this->getMockBuilder('Magento\Quote\Model\Quote')
             ->disableOriginalConstructor()
             ->setMethods(['setAppliedRuleIds', 'getStore'])
             ->getMock();
@@ -523,7 +523,7 @@ class ValidatorTest extends \PHPUnit_Framework_TestCase
             ->method('setAppliedRuleIds')
             ->willReturnSelf();
 
-        $addressMock = $this->getMockBuilder('Magento\Sales\Model\Quote\Address')
+        $addressMock = $this->getMockBuilder('Magento\Quote\Model\Quote\Address')
             ->disableOriginalConstructor()
             ->setMethods(['getShippingAmountForDiscount', 'getQuote'])
             ->getMock();
@@ -540,10 +540,10 @@ class ValidatorTest extends \PHPUnit_Framework_TestCase
     {
         $this->utility->expects($this->once())
             ->method('resetRoundingDeltas');
-        $quoteMock = $this->getMockBuilder('Magento\Sales\Model\Quote')
+        $quoteMock = $this->getMockBuilder('Magento\Quote\Model\Quote')
             ->disableOriginalConstructor()
             ->getMock();
-        $addressMock = $this->getMockBuilder('Magento\Sales\Model\Quote\Address')
+        $addressMock = $this->getMockBuilder('Magento\Quote\Model\Quote\Address')
             ->disableOriginalConstructor()
             ->getMock();
         $addressMock->expects($this->once())
diff --git a/dev/tests/unit/testsuite/Magento/Shipping/Controller/Adminhtml/Order/Shipment/AddTrackTest.php b/dev/tests/unit/testsuite/Magento/Shipping/Controller/Adminhtml/Order/Shipment/AddTrackTest.php
index ee296fb5be01747063d1afbfb63e3d2067f58baa..47558f5000221e16f7eec5526b159c4104ad3b46 100644
--- a/dev/tests/unit/testsuite/Magento/Shipping/Controller/Adminhtml/Order/Shipment/AddTrackTest.php
+++ b/dev/tests/unit/testsuite/Magento/Shipping/Controller/Adminhtml/Order/Shipment/AddTrackTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Shipping\Controller\Adminhtml\Order\Shipment;
 
 use Magento\Backend\App\Action;
@@ -156,6 +158,9 @@ class AddTrackTest extends \PHPUnit_Framework_TestCase
         );
     }
 
+    /**
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
+     */
     public function testExecute()
     {
         $carrier = 'carrier';
diff --git a/dev/tests/unit/testsuite/Magento/Shipping/Controller/Adminhtml/Order/Shipment/NewActionTest.php b/dev/tests/unit/testsuite/Magento/Shipping/Controller/Adminhtml/Order/Shipment/NewActionTest.php
index b8ee7eb5bad75c22f717180b562bfe2e873eaea0..ca913d99f871183b9c3945addb97600c26c3bf56 100644
--- a/dev/tests/unit/testsuite/Magento/Shipping/Controller/Adminhtml/Order/Shipment/NewActionTest.php
+++ b/dev/tests/unit/testsuite/Magento/Shipping/Controller/Adminhtml/Order/Shipment/NewActionTest.php
@@ -86,6 +86,9 @@ class NewActionTest extends \PHPUnit_Framework_TestCase
      */
     protected $pageTitleMock;
 
+    /**
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
+     */
     public function setUp()
     {
         $objectManagerHelper = new ObjectManagerHelper($this);
diff --git a/dev/tests/unit/testsuite/Magento/Shipping/Controller/Adminhtml/Order/Shipment/SaveTest.php b/dev/tests/unit/testsuite/Magento/Shipping/Controller/Adminhtml/Order/Shipment/SaveTest.php
index 6d5637136adb1a8aa2ae496b3d6dc9cf79b67a4e..49462a66801a8dca454b47dfd510c3484d56ccca 100644
--- a/dev/tests/unit/testsuite/Magento/Shipping/Controller/Adminhtml/Order/Shipment/SaveTest.php
+++ b/dev/tests/unit/testsuite/Magento/Shipping/Controller/Adminhtml/Order/Shipment/SaveTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Shipping\Controller\Adminhtml\Order\Shipment;
 
 use Magento\Backend\App\Action;
diff --git a/dev/tests/unit/testsuite/Magento/Shipping/Controller/Adminhtml/Order/Shipment/ViewTest.php b/dev/tests/unit/testsuite/Magento/Shipping/Controller/Adminhtml/Order/Shipment/ViewTest.php
index cd0423d4523a157ef8475f0c88cfa015d27f2f6d..d18f836bd35b26fab3d776e0299a035da60cba4a 100644
--- a/dev/tests/unit/testsuite/Magento/Shipping/Controller/Adminhtml/Order/Shipment/ViewTest.php
+++ b/dev/tests/unit/testsuite/Magento/Shipping/Controller/Adminhtml/Order/Shipment/ViewTest.php
@@ -7,6 +7,7 @@ namespace Magento\Shipping\Controller\Adminhtml\Order\Shipment;
 
 /**
  * Class ViewTest
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class ViewTest extends \PHPUnit_Framework_TestCase
 {
diff --git a/dev/tests/unit/testsuite/Magento/Shipping/Model/Carrier/AbstractCarrierOnlineTest.php b/dev/tests/unit/testsuite/Magento/Shipping/Model/Carrier/AbstractCarrierOnlineTest.php
index 7ac6ac362e4c7d22d7cb5b694d3b347e5ee04bd8..2d8642bc7702a78cf253d1b5707036782ddb0f89 100644
--- a/dev/tests/unit/testsuite/Magento/Shipping/Model/Carrier/AbstractCarrierOnlineTest.php
+++ b/dev/tests/unit/testsuite/Magento/Shipping/Model/Carrier/AbstractCarrierOnlineTest.php
@@ -5,7 +5,7 @@
  */
 namespace Magento\Shipping\Model\Carrier;
 
-use Magento\Sales\Model\Quote\Address\RateRequest;
+use Magento\Quote\Model\Quote\Address\RateRequest;
 use Magento\TestFramework\Helper\ObjectManager as ObjectManagerHelper;
 
 class AbstractCarrierOnlineTest extends \PHPUnit_Framework_TestCase
@@ -74,7 +74,7 @@ class AbstractCarrierOnlineTest extends \PHPUnit_Framework_TestCase
         $product = $this->getMock('Magento\Catalog\Model\Product', [], [], '', false);
         $product->expects($this->any())->method('getId')->will($this->returnValue($this->productId));
 
-        $item = $this->getMockBuilder('\Magento\Sales\Model\Quote\Item')
+        $item = $this->getMockBuilder('\Magento\Quote\Model\Quote\Item')
             ->disableOriginalConstructor()
             ->setMethods(['getProduct', 'getQty', 'getWeight', '__wakeup', 'getStore'])
             ->getMock();
diff --git a/dev/tests/unit/testsuite/Magento/Shipping/Model/ShipmentTest.php b/dev/tests/unit/testsuite/Magento/Shipping/Model/ShipmentTest.php
index 85eb9f1cdf193b80b3de91b80555f79b0366eda0..2b416097f02548757f57ba91ea3a36615bc03cae 100644
--- a/dev/tests/unit/testsuite/Magento/Shipping/Model/ShipmentTest.php
+++ b/dev/tests/unit/testsuite/Magento/Shipping/Model/ShipmentTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Shipping\Model;
 
 use Magento\Sales\Model\Resource\OrderFactory;
diff --git a/dev/tests/unit/testsuite/Magento/Shipping/Model/ShippingTest.php b/dev/tests/unit/testsuite/Magento/Shipping/Model/ShippingTest.php
index 89e3390aebd4ae798a16e7a4533a15db3ae3593c..c16ec9de790e2aff6d98870f02b2d7b07dcd187f 100644
--- a/dev/tests/unit/testsuite/Magento/Shipping/Model/ShippingTest.php
+++ b/dev/tests/unit/testsuite/Magento/Shipping/Model/ShippingTest.php
@@ -5,7 +5,7 @@
  */
 namespace Magento\Shipping\Model;
 
-use Magento\Sales\Model\Quote\Address\RateRequest;
+use Magento\Quote\Model\Quote\Address\RateRequest;
 use Magento\TestFramework\Helper\ObjectManager as ObjectManagerHelper;
 
 class ShippingTest extends \PHPUnit_Framework_TestCase
@@ -68,7 +68,7 @@ class ShippingTest extends \PHPUnit_Framework_TestCase
     {
         $request = new RateRequest();
         /** \Magento\Catalog\Model\Product\Configuration\Item\ItemInterface */
-        $item = $this->getMockBuilder('\Magento\Sales\Model\Quote\Item')
+        $item = $this->getMockBuilder('\Magento\Quote\Model\Quote\Item')
             ->disableOriginalConstructor()
             ->setMethods([
                 'getQty', 'getIsQtyDecimal', 'getProductType', 'getProduct', 'getWeight', '__wakeup', 'getStore',
diff --git a/dev/tests/unit/testsuite/Magento/Store/App/Action/Plugin/ContextTest.php b/dev/tests/unit/testsuite/Magento/Store/App/Action/Plugin/ContextTest.php
index 4d4eb13bcc9ec17b583e90d76ef724b751d43d02..aa33762fefdb13f1a58b86c5bd6442eaa938a6ca 100644
--- a/dev/tests/unit/testsuite/Magento/Store/App/Action/Plugin/ContextTest.php
+++ b/dev/tests/unit/testsuite/Magento/Store/App/Action/Plugin/ContextTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Store\App\Action\Plugin;
 
 /**
diff --git a/dev/tests/unit/testsuite/Magento/Store/App/Action/Plugin/StoreCheckTest.php b/dev/tests/unit/testsuite/Magento/Store/App/Action/Plugin/StoreCheckTest.php
index 2d5a9822dbbd90a6c9c4fda2460fc6efba647cb2..1d37e60cee1d1ed01c0ef12ab3a7930bf1a6d8f2 100644
--- a/dev/tests/unit/testsuite/Magento/Store/App/Action/Plugin/StoreCheckTest.php
+++ b/dev/tests/unit/testsuite/Magento/Store/App/Action/Plugin/StoreCheckTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Store\App\Action\Plugin;
 
 class StoreCheckTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Core/Model/App/EmulationTest.php b/dev/tests/unit/testsuite/Magento/Store/Model/App/EmulationTest.php
similarity index 97%
rename from dev/tests/unit/testsuite/Magento/Core/Model/App/EmulationTest.php
rename to dev/tests/unit/testsuite/Magento/Store/Model/App/EmulationTest.php
index b7e7920042130e43dc3fb50f78284544d391c794..725f6fa510286f295d4d2574aef1e66b6440267b 100644
--- a/dev/tests/unit/testsuite/Magento/Core/Model/App/EmulationTest.php
+++ b/dev/tests/unit/testsuite/Magento/Store/Model/App/EmulationTest.php
@@ -1,11 +1,14 @@
 <?php
 /**
- * Tests Magento\Core\Model\App\Emulation
+ * Tests Magento\Store\Model\App\Emulation
  *
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Core\Model\App;
+
+// @codingStandardsIgnoreFile
+
+namespace Magento\Store\Model\App;
 
 class EmulationTest extends \PHPUnit_Framework_TestCase
 {
@@ -65,7 +68,7 @@ class EmulationTest extends \PHPUnit_Framework_TestCase
     const NEW_STORE_ID = 9;
 
     /**
-     * @var \Magento\Core\Model\App\Emulation
+     * @var \Magento\Store\Model\App\Emulation
      */
     private $model;
 
@@ -105,7 +108,7 @@ class EmulationTest extends \PHPUnit_Framework_TestCase
         $this->designMock->expects($this->any())->method('getData')->willReturn(false);
 
         // Prepare SUT
-        $this->model = $this->objectManager->getObject('Magento\Core\Model\App\Emulation',
+        $this->model = $this->objectManager->getObject('Magento\Store\Model\App\Emulation',
             [
                 'storeManager' => $this->storeManagerMock,
                 'viewDesign' => $this->viewDesignMock,
diff --git a/dev/tests/unit/testsuite/Magento/Store/Model/Config/Reader/ReaderPoolTest.php b/dev/tests/unit/testsuite/Magento/Store/Model/Config/Reader/ReaderPoolTest.php
index 577c58a6f788a12325d45c11ad051142376b3e00..d169e36f832ab5b12a9ae1801e55d345623840f2 100644
--- a/dev/tests/unit/testsuite/Magento/Store/Model/Config/Reader/ReaderPoolTest.php
+++ b/dev/tests/unit/testsuite/Magento/Store/Model/Config/Reader/ReaderPoolTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Store\Model\Config\Reader;
 
 class ReaderPoolTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Store/Model/Storage/DbTest.php b/dev/tests/unit/testsuite/Magento/Store/Model/Storage/DbTest.php
index f33892680122b0581355ea946e658534771b91b7..ac869a0ecaa3fdc69edc7d462517c3ce974d5f84 100644
--- a/dev/tests/unit/testsuite/Magento/Store/Model/Storage/DbTest.php
+++ b/dev/tests/unit/testsuite/Magento/Store/Model/Storage/DbTest.php
@@ -4,6 +4,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Store\Model\Storage;
 
 /**
diff --git a/dev/tests/unit/testsuite/Magento/Store/Model/StoreTest.php b/dev/tests/unit/testsuite/Magento/Store/Model/StoreTest.php
index ea561e593e4a51922c1a37a320933d74b52d5b2e..86b2436be1fe13a79581fc56df11d767a8d45a2c 100644
--- a/dev/tests/unit/testsuite/Magento/Store/Model/StoreTest.php
+++ b/dev/tests/unit/testsuite/Magento/Store/Model/StoreTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Store\Model;
 
 use Magento\Framework\App\Config\ReinitableConfigInterface;
diff --git a/dev/tests/unit/testsuite/Magento/Tax/Block/Checkout/Cart/Sidebar/TotalsTest.php b/dev/tests/unit/testsuite/Magento/Tax/Block/Checkout/Cart/Sidebar/TotalsTest.php
index 96c66518d26dab6dbffd9b1f1b3e523a95e29ace..f05de539943bd120524d5a2b9e8c165fd10778eb 100644
--- a/dev/tests/unit/testsuite/Magento/Tax/Block/Checkout/Cart/Sidebar/TotalsTest.php
+++ b/dev/tests/unit/testsuite/Magento/Tax/Block/Checkout/Cart/Sidebar/TotalsTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Tax\Block\Checkout\Cart\Sidebar;
 
 use Magento\Framework\Object;
@@ -19,7 +22,7 @@ class TotalsTest extends \PHPUnit_Framework_TestCase
     protected $totalsObj;
 
     /**
-     * @var \Magento\Sales\Model\Quote|\PHPUnit_Framework_MockObject_MockObject
+     * @var \Magento\Quote\Model\Quote|\PHPUnit_Framework_MockObject_MockObject
      */
     protected $quote;
 
@@ -37,7 +40,7 @@ class TotalsTest extends \PHPUnit_Framework_TestCase
     {
         $objectManager = new \Magento\TestFramework\Helper\ObjectManager($this);
 
-        $this->quote = $this->getMockBuilder('Magento\Sales\Model\Quote')
+        $this->quote = $this->getMockBuilder('Magento\Quote\Model\Quote')
             ->disableOriginalConstructor()
             ->setMethods(['getTotals', '__wakeup'])
             ->getMock();
diff --git a/dev/tests/unit/testsuite/Magento/Tax/Block/Checkout/Shipping/PriceTest.php b/dev/tests/unit/testsuite/Magento/Tax/Block/Checkout/Shipping/PriceTest.php
index 38bfe52b628d21af5c6207c28a9bb4ac330f8690..0f569791244884f658c154c9e4455ce64ff3e40e 100644
--- a/dev/tests/unit/testsuite/Magento/Tax/Block/Checkout/Shipping/PriceTest.php
+++ b/dev/tests/unit/testsuite/Magento/Tax/Block/Checkout/Shipping/PriceTest.php
@@ -14,7 +14,7 @@ class PriceTest extends \PHPUnit_Framework_TestCase
     protected $priceObj;
 
     /**
-     * @var \Magento\Sales\Model\Quote|\PHPUnit_Framework_MockObject_MockObject
+     * @var \Magento\Quote\Model\Quote|\PHPUnit_Framework_MockObject_MockObject
      */
     protected $quote;
 
@@ -43,7 +43,7 @@ class PriceTest extends \PHPUnit_Framework_TestCase
             ->disableOriginalConstructor()
             ->getMock();
 
-        $this->quote = $this->getMockBuilder('Magento\Sales\Model\Quote')
+        $this->quote = $this->getMockBuilder('Magento\Quote\Model\Quote')
             ->disableOriginalConstructor()
             ->setMethods(['getStore', '__wakeup', 'getCustomerTaxClassId'])
             ->getMock();
@@ -80,11 +80,11 @@ class PriceTest extends \PHPUnit_Framework_TestCase
 
     /**
      * @param float $shippingPrice
-     * @return \Magento\Sales\Model\Quote\Address\Rate|\PHPUnit_Framework_MockObject_MockObject
+     * @return \Magento\Quote\Model\Quote\Address\Rate|\PHPUnit_Framework_MockObject_MockObject
      */
     protected function setupShippingRate($shippingPrice)
     {
-        $shippingRateMock = $this->getMockBuilder('\Magento\Sales\Model\Quote\Address\Rate')
+        $shippingRateMock = $this->getMockBuilder('\Magento\Quote\Model\Quote\Address\Rate')
             ->disableOriginalConstructor()
             ->setMethods(['getPrice', '__wakeup'])
             ->getMock();
diff --git a/dev/tests/unit/testsuite/Magento/Tax/Block/Item/Price/RendererTest.php b/dev/tests/unit/testsuite/Magento/Tax/Block/Item/Price/RendererTest.php
index 73f48d4077b9b15eecd9b5280b657a68000e59b4..5373f13d1bcdb36631364fd392283121c93f0130 100644
--- a/dev/tests/unit/testsuite/Magento/Tax/Block/Item/Price/RendererTest.php
+++ b/dev/tests/unit/testsuite/Magento/Tax/Block/Item/Price/RendererTest.php
@@ -227,7 +227,7 @@ class RendererTest extends \PHPUnit_Framework_TestCase
             ->with($price, true)
             ->will($this->returnValue($formattedPrice));
 
-        $itemMock = $this->getMockBuilder('\Magento\Sales\Model\Quote\Item')
+        $itemMock = $this->getMockBuilder('\Magento\Quote\Model\Quote\Item')
             ->disableOriginalConstructor()
             ->setMethods(['getStore', '__wakeup'])
             ->getMock();
@@ -313,7 +313,7 @@ class RendererTest extends \PHPUnit_Framework_TestCase
     {
         $storeId = 'default';
 
-        $itemMock = $this->getMockBuilder('\Magento\Sales\Model\Quote\Item')
+        $itemMock = $this->getMockBuilder('\Magento\Quote\Model\Quote\Item')
             ->disableOriginalConstructor()
             ->setMethods(['getStoreId', '__wakeup'])
             ->getMock();
@@ -330,8 +330,8 @@ class RendererTest extends \PHPUnit_Framework_TestCase
     {
         $price = 10;
 
-        /** @var \Magento\Sales\Model\Quote\Item|\PHPUnit_Framework_MockObject_MockObject $quoteItemMock */
-        $quoteItemMock = $this->getMockBuilder('\Magento\Sales\Model\Quote\Item')
+        /** @var \Magento\Quote\Model\Quote\Item|\PHPUnit_Framework_MockObject_MockObject $quoteItemMock */
+        $quoteItemMock = $this->getMockBuilder('\Magento\Quote\Model\Quote\Item')
             ->disableOriginalConstructor()
             ->setMethods(['getCalculationPrice', '__wakeup'])
             ->getMock();
diff --git a/dev/tests/unit/testsuite/Magento/Tax/Helper/DataTest.php b/dev/tests/unit/testsuite/Magento/Tax/Helper/DataTest.php
index 68c8fe6eb6b0eb2124473d8da2d7571bf836328e..eb0e628c4ec162eaecfdbf751212f437143ba917 100644
--- a/dev/tests/unit/testsuite/Magento/Tax/Helper/DataTest.php
+++ b/dev/tests/unit/testsuite/Magento/Tax/Helper/DataTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Tax\Helper;
 
 use Magento\Framework\Object as MagentoObject;
@@ -122,6 +125,7 @@ class DataTest extends \PHPUnit_Framework_TestCase
      *
      * @param $inputArray
      * @return \PHPUnit_Framework_MockObject_MockObject|\Magento\Tax\Api\Data\OrderTaxDetailsInterface
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function mapOrderTaxItemDetail($inputArray)
     {
@@ -366,6 +370,74 @@ class DataTest extends \PHPUnit_Framework_TestCase
                     ],
                 ],
             ],
+            //Scenario 3: one item, with both shipping and product taxes
+            // note that 'shipping tax' is listed before 'product tax'
+            'one_item_with_both_shipping_and_product_taxes' => [
+                'order' => [
+                    'order_id' => 1,
+                    'shipping_tax_amount' => 2,
+                    'order_tax_details' => [
+                        'items' => [
+                            'shippingTax1' => [
+                                'item_id' => null,
+                                'type' => 'shipping',
+                                'applied_taxes' => [
+                                    [
+                                        'amount' => 2.0,
+                                        'base_amount' => 2.0,
+                                        'code' => 'US-CA-Ship',
+                                        'title' => 'US-CA-Sales-Tax-Ship',
+                                        'percent' => 10.0,
+                                    ],
+                                ],
+                            ],
+                            'itemTax1' => [
+                                'item_id' => 1,
+                                'applied_taxes' => [
+                                    [
+                                        'amount' => 5.0,
+                                        'base_amount' => 5.0,
+                                        'code' => 'US-CA',
+                                        'title' => 'US-CA-Sales-Tax',
+                                        'percent' => 20.0,
+                                    ],
+                                ],
+                            ],
+                        ],
+                    ],
+                ],
+                'invoice' => [
+                    'shipping_tax_amount' => 2,
+                    'invoice_items' => [
+                        'item1' => new MagentoObject(
+                            [
+                                'order_item' => new MagentoObject(
+                                    [
+                                        'id' => 1,
+                                        'tax_amount' => 5.00,
+                                    ]
+                                ),
+                                'tax_amount' => 5.00,
+                            ]
+                        ),
+                    ],
+                ],
+                // note that 'shipping tax' is now listed after 'product tax'
+                'expected_results' => [
+                    [
+                        'title' => 'US-CA-Sales-Tax',
+                        'percent' => 20.0,
+                        'tax_amount' => 5.00,
+                        'base_tax_amount' => 5.00,
+                    ],
+                    [
+                        'title' => 'US-CA-Sales-Tax-Ship',
+                        'percent' => 10.0,
+                        'tax_amount' => 2.00,
+                        'base_tax_amount' => 2.00,
+                    ],
+                ],
+            ],
         ];
 
         return $data;
diff --git a/dev/tests/unit/testsuite/Magento/Tax/Model/Calculation/RowBaseAndTotalBaseCalculatorTestCase.php b/dev/tests/unit/testsuite/Magento/Tax/Model/Calculation/RowBaseAndTotalBaseCalculatorTestCase.php
index fc6e23be50d26f99f4e7d9b10eff6b8f53bcf38b..7e6651d4b474c35aeb0b18e0116b8c1e7b591b6a 100644
--- a/dev/tests/unit/testsuite/Magento/Tax/Model/Calculation/RowBaseAndTotalBaseCalculatorTestCase.php
+++ b/dev/tests/unit/testsuite/Magento/Tax/Model/Calculation/RowBaseAndTotalBaseCalculatorTestCase.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Tax\Model\Calculation;
 
 use Magento\TestFramework\Helper\ObjectManager;
diff --git a/dev/tests/unit/testsuite/Magento/Tax/Model/Config/TaxClassTest.php b/dev/tests/unit/testsuite/Magento/Tax/Model/Config/TaxClassTest.php
index 87c5922f502ea69231b0d8fe2351b29f4bfd174e..7165f38b0b24984b376191c03f9e2e968ae431df 100644
--- a/dev/tests/unit/testsuite/Magento/Tax/Model/Config/TaxClassTest.php
+++ b/dev/tests/unit/testsuite/Magento/Tax/Model/Config/TaxClassTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Test class for \Magento\Tax\Model\Config\TaxClass
  */
diff --git a/dev/tests/unit/testsuite/Magento/Tax/Model/ConfigTest.php b/dev/tests/unit/testsuite/Magento/Tax/Model/ConfigTest.php
index ae62bb24f3ccd7ffc3e8f14581953f8b2743e22c..81a26c41c488c2a8332fbbb71a1dc729e506ac4d 100644
--- a/dev/tests/unit/testsuite/Magento/Tax/Model/ConfigTest.php
+++ b/dev/tests/unit/testsuite/Magento/Tax/Model/ConfigTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Test class for \Magento\Tax\Model\Config
  */
diff --git a/dev/tests/unit/testsuite/Magento/Tax/Model/Sales/Total/Quote/CommonTaxCollectorTest.php b/dev/tests/unit/testsuite/Magento/Tax/Model/Sales/Total/Quote/CommonTaxCollectorTest.php
index 3fb73b811408638f90313d8babb9c2b25cd9bd7a..424ceac9bc63f26b06862a4fdb5af7fa8e1e1622 100644
--- a/dev/tests/unit/testsuite/Magento/Tax/Model/Sales/Total/Quote/CommonTaxCollectorTest.php
+++ b/dev/tests/unit/testsuite/Magento/Tax/Model/Sales/Total/Quote/CommonTaxCollectorTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Tax\Model\Sales\Total\Quote;
 
 /**
@@ -23,12 +26,12 @@ class CommonTaxCollectorTest extends \PHPUnit_Framework_TestCase
     private $taxConfig;
 
     /**
-     * @var \PHPUnit_Framework_MockObject_MockObject|\Magento\Sales\Model\Quote\Address
+     * @var \PHPUnit_Framework_MockObject_MockObject|\Magento\Quote\Model\Quote\Address
      */
     private $address;
 
     /**
-     * @var \PHPUnit_Framework_MockObject_MockObject|\Magento\Sales\Model\Quote
+     * @var \PHPUnit_Framework_MockObject_MockObject|\Magento\Quote\Model\Quote
      */
     private $quote;
 
@@ -61,7 +64,7 @@ class CommonTaxCollectorTest extends \PHPUnit_Framework_TestCase
             ->setMethods(['__wakeup'])
             ->getMock();
 
-        $this->quote = $this->getMockBuilder('\Magento\Sales\Model\Quote')
+        $this->quote = $this->getMockBuilder('\Magento\Quote\Model\Quote')
             ->disableOriginalConstructor()
             ->setMethods(['__wakeup', 'getStore'])
             ->getMock();
@@ -70,7 +73,7 @@ class CommonTaxCollectorTest extends \PHPUnit_Framework_TestCase
             ->method('getStore')
             ->will($this->returnValue($this->store));
 
-        $this->address = $this->getMockBuilder('\Magento\Sales\Model\Quote\Address')
+        $this->address = $this->getMockBuilder('\Magento\Quote\Model\Quote\Address')
             ->disableOriginalConstructor()
             ->setMethods(['__wakeup', 'getQuote', 'getShippingDiscountAmount', 'getBaseShippingDiscountAmount'])
             ->getMock();
diff --git a/dev/tests/unit/testsuite/Magento/Tax/Model/Sales/Total/Quote/ShippingTest.php b/dev/tests/unit/testsuite/Magento/Tax/Model/Sales/Total/Quote/ShippingTest.php
index 8b0e4dcf57dba8fc0aa4a090e379e1230e6a4b76..2e90d16eaacf8b05629ce3ffd225782dd09a54fb 100644
--- a/dev/tests/unit/testsuite/Magento/Tax/Model/Sales/Total/Quote/ShippingTest.php
+++ b/dev/tests/unit/testsuite/Magento/Tax/Model/Sales/Total/Quote/ShippingTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Tax\Model\Sales\Total\Quote;
 
 class ShippingTest extends \PHPUnit_Framework_TestCase
@@ -108,12 +111,12 @@ class ShippingTest extends \PHPUnit_Framework_TestCase
             'store_id' => $storeId,
         ]);
         $quoteMock = $this->getMockObject(
-            'Magento\Sales\Model\Quote',
+            'Magento\Quote\Model\Quote',
             [
                 'store' => $storeMock,
             ]
         );
-        $addressMock = $this->getMockObject('Magento\Sales\Model\Quote\Address', [
+        $addressMock = $this->getMockObject('Magento\Quote\Model\Quote\Address', [
             'all_items' => [],
             'shipping_tax_calculation_amount' => 100,
             'base_shipping_tax_calculation_amount' => 200,
diff --git a/dev/tests/unit/testsuite/Magento/Tax/Model/Sales/Total/Quote/SubtotalTest.php b/dev/tests/unit/testsuite/Magento/Tax/Model/Sales/Total/Quote/SubtotalTest.php
index a82f8f6086373c4b3cf179e60d9e2a4b913c35bb..66ce7d288c046b3e94e8dea83cff939e1addc728 100644
--- a/dev/tests/unit/testsuite/Magento/Tax/Model/Sales/Total/Quote/SubtotalTest.php
+++ b/dev/tests/unit/testsuite/Magento/Tax/Model/Sales/Total/Quote/SubtotalTest.php
@@ -109,7 +109,7 @@ class SubtotalTest extends \PHPUnit_Framework_TestCase
             ]
         );
 
-        $this->addressMock = $this->getMockBuilder('\Magento\Sales\Model\Quote\Address')
+        $this->addressMock = $this->getMockBuilder('\Magento\Quote\Model\Quote\Address')
             ->disableOriginalConstructor()
             ->setMethods([
                 'getAssociatedTaxables', 'getQuote', 'getBillingAddress',
@@ -117,7 +117,7 @@ class SubtotalTest extends \PHPUnit_Framework_TestCase
                 'getParentItem',
             ])->getMock();
 
-        $this->quoteMock = $this->getMockBuilder('\Magento\Sales\Model\Quote')
+        $this->quoteMock = $this->getMockBuilder('\Magento\Quote\Model\Quote')
             ->disableOriginalConstructor()
             ->getMock();
 
diff --git a/dev/tests/unit/testsuite/Magento/Tax/Model/Sales/Total/Quote/TaxTest.php b/dev/tests/unit/testsuite/Magento/Tax/Model/Sales/Total/Quote/TaxTest.php
index 7a3777118476f39227fd9abc0de3d1623cd339d8..1e7ff2e174f73e922ffc38ff3d4487f678cac7e6 100644
--- a/dev/tests/unit/testsuite/Magento/Tax/Model/Sales/Total/Quote/TaxTest.php
+++ b/dev/tests/unit/testsuite/Magento/Tax/Model/Sales/Total/Quote/TaxTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Tax\Model\Sales\Total\Quote;
 
 /**
@@ -27,6 +30,7 @@ class TaxTest extends \PHPUnit_Framework_TestCase
      *
      * @dataProvider dataProviderCollectArray
      * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function testCollect($itemData, $appliedRatesData, $taxDetailsData, $quoteDetailsData,
         $addressData, $verifyData
@@ -53,7 +57,7 @@ class TaxTest extends \PHPUnit_Framework_TestCase
             ->will($this->returnValue(false));
 
         $product = $this->getMock('\Magento\Catalog\Model\Product', [], [], '', false);
-        $item = $this->getMockBuilder('Magento\Sales\Model\Quote\Item')
+        $item = $this->getMockBuilder('Magento\Quote\Model\Quote\Item')
             ->disableOriginalConstructor()
             ->setMethods(['getParentItem', 'getHasChildren', 'getProduct', 'getQuote', 'getCode', '__wakeup'])
             ->getMock();
@@ -253,12 +257,12 @@ class TaxTest extends \PHPUnit_Framework_TestCase
             ->expects($this->any())
             ->method('getStoreId')
             ->will($this->returnValue(1));
-        $quote = $this->getMock('Magento\Sales\Model\Quote', [], [], '', false);
+        $quote = $this->getMock('Magento\Quote\Model\Quote', [], [], '', false);
         $quote
             ->expects($this->any())
             ->method('getStore')
             ->will($this->returnValue($store));
-        $address = $this->getMockBuilder('\Magento\Sales\Model\Quote\Address')
+        $address = $this->getMockBuilder('\Magento\Quote\Model\Quote\Address')
             ->disableOriginalConstructor()
             ->setMethods(['getAssociatedTaxables',
                           'getQuote', 'getBillingAddress', 'getRegionId',
@@ -513,7 +517,7 @@ class TaxTest extends \PHPUnit_Framework_TestCase
             ->will($this->returnValue($regionBuilder));
 
         $product = $this->getMock('\Magento\Catalog\Model\Product', [], [], '', false);
-        $item = $this->getMockBuilder('Magento\Sales\Model\Quote\Item')
+        $item = $this->getMockBuilder('Magento\Quote\Model\Quote\Item')
             ->disableOriginalConstructor()
             ->setMethods(['getParentItem', 'getHasChildren', 'getProduct', 'getQuote', 'getCode', '__wakeup'])
             ->getMock();
@@ -539,9 +543,9 @@ class TaxTest extends \PHPUnit_Framework_TestCase
         }
 
         $items = [$item];
-        $quote = $this->getMock('Magento\Sales\Model\Quote', [], [], '', false);
+        $quote = $this->getMock('Magento\Quote\Model\Quote', [], [], '', false);
 
-        $address = $this->getMockBuilder('\Magento\Sales\Model\Quote\Address')
+        $address = $this->getMockBuilder('\Magento\Quote\Model\Quote\Address')
             ->disableOriginalConstructor()
             ->setMethods(['getAssociatedTaxables', 'getQuote', 'getBillingAddress', 'getRegionId', '__wakeup'])
             ->getMock();
@@ -616,11 +620,11 @@ class TaxTest extends \PHPUnit_Framework_TestCase
             ->disableOriginalConstructor()
             ->setMethods(['convertPrice', '__wakeup'])
             ->getMock();
-        $quote = $this->getMock('Magento\Sales\Model\Quote', [], [], '', false);
+        $quote = $this->getMock('Magento\Quote\Model\Quote', [], [], '', false);
         $items = [];
 
         $address = $this->getMock(
-            '\Magento\Sales\Model\Quote\Address',
+            '\Magento\Quote\Model\Quote\Address',
             [
                 'getAppliedTaxes', 'getQuote', 'getAllItems', 'getGrandTotal', '__wakeup',
                 'addTotal', 'getTaxAmount'
@@ -708,8 +712,8 @@ class TaxTest extends \PHPUnit_Framework_TestCase
      */
     public function testEmptyAddress()
     {
-        /** @var $address \Magento\Sales\Model\Quote\Address|PHPUnit_Framework_MockObject_MockObject */
-        $address = $this->getMockBuilder('\Magento\Sales\Model\Quote\Address')
+        /** @var $address \Magento\Quote\Model\Quote\Address|PHPUnit_Framework_MockObject_MockObject */
+        $address = $this->getMockBuilder('\Magento\Quote\Model\Quote\Address')
             ->disableOriginalConstructor()
             ->setMethods(
                 [
diff --git a/dev/tests/unit/testsuite/Magento/Theme/Block/Adminhtml/System/Design/Theme/Tab/CssTest.php b/dev/tests/unit/testsuite/Magento/Theme/Block/Adminhtml/System/Design/Theme/Tab/CssTest.php
index 116115af88250c961d82c96751427db239f2c250..c33fae6fb629a28a7562c3fc9889f7dba2916de7 100644
--- a/dev/tests/unit/testsuite/Magento/Theme/Block/Adminhtml/System/Design/Theme/Tab/CssTest.php
+++ b/dev/tests/unit/testsuite/Magento/Theme/Block/Adminhtml/System/Design/Theme/Tab/CssTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Theme\Block\Adminhtml\System\Design\Theme\Tab;
 
 class CssTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Theme/Model/Url/Plugin/SignatureTest.php b/dev/tests/unit/testsuite/Magento/Theme/Model/Url/Plugin/SignatureTest.php
index fcd11c1539908052d3013241f393c5e3ea5970fe..6a13ea689275577c23e17de44b241d3b8b00353e 100644
--- a/dev/tests/unit/testsuite/Magento/Theme/Model/Url/Plugin/SignatureTest.php
+++ b/dev/tests/unit/testsuite/Magento/Theme/Model/Url/Plugin/SignatureTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Theme\Model\Url\Plugin;
 
 class SignatureTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Tools/Di/App/Task/OperationFactoryTest.php b/dev/tests/unit/testsuite/Magento/Tools/Di/App/Task/OperationFactoryTest.php
index c15e189b777db4530e0a62c2d69de53a6c03ef3c..359adca36a68a1d9bf117662bf270058d4822926 100644
--- a/dev/tests/unit/testsuite/Magento/Tools/Di/App/Task/OperationFactoryTest.php
+++ b/dev/tests/unit/testsuite/Magento/Tools/Di/App/Task/OperationFactoryTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Tools\Di\App\Task;
 
 class OperationFactoryTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Tools/Di/Compiler/ArgumentsResolverTest.php b/dev/tests/unit/testsuite/Magento/Tools/Di/Compiler/ArgumentsResolverTest.php
index b2b9295f91a55b5139e2a53fd5e4b74076c4b31f..a916357b873e6a3649cd33210c2dd7c2ae467bca 100644
--- a/dev/tests/unit/testsuite/Magento/Tools/Di/Compiler/ArgumentsResolverTest.php
+++ b/dev/tests/unit/testsuite/Magento/Tools/Di/Compiler/ArgumentsResolverTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Tools\Di\Compiler;
 
 class ArgumentsResolverTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tests/unit/testsuite/Magento/Tools/Di/Compiler/Config/ReaderTest.php b/dev/tests/unit/testsuite/Magento/Tools/Di/Compiler/Config/ReaderTest.php
index 7ccdb02d2065c65f0ae3a4833b51445dbdc63090..0c2f708332fec2697a4d8bd833bf0b8a874bd5dd 100644
--- a/dev/tests/unit/testsuite/Magento/Tools/Di/Compiler/Config/ReaderTest.php
+++ b/dev/tests/unit/testsuite/Magento/Tools/Di/Compiler/Config/ReaderTest.php
@@ -5,6 +5,9 @@
  */
 namespace Magento\Tools\Di\Compiler\Config;
 
+use Magento\Framework\App\Area;
+use Magento\Tools\Di\Definition\Collection;
+
 class ReaderTest extends \PHPUnit_Framework_TestCase
 {
     /**
@@ -54,6 +57,9 @@ class ReaderTest extends \PHPUnit_Framework_TestCase
             false
         );
         $this->argumentsResolver = $this->getMock('Magento\Tools\Di\Compiler\ArgumentsResolver', [], [], '', false);
+        $this->argumentsResolverFactory->expects($this->any())
+            ->method('create')
+            ->willReturn($this->argumentsResolver);
         $this->classReaderDecorator = $this->getMock(
             'Magento\Tools\Di\Code\Reader\ClassReaderDecorator',
             [],
@@ -72,71 +78,182 @@ class ReaderTest extends \PHPUnit_Framework_TestCase
         );
     }
 
-    public function testGenerateCachePerScopeExtends()
+    public function testGenerateCachePerScopeGlobal()
     {
-        $definitionsCollection = $this->getMock('Magento\Tools\Di\Definition\Collection', [], [], '', false);
-        $this->diContainerConfig->expects($this->once())
-            ->method('extend')
-            ->with([]);
-        $this->configLoader->expects($this->once())
-            ->method('load')
-            ->with('areaCode')
-            ->willReturn([]);
-
-        $this->argumentsResolverFactory->expects($this->once())
-            ->method('create')
-            ->with($this->diContainerConfig)
-            ->willReturn($this->argumentsResolver);
-        $definitionsCollection->expects($this->exactly(2))
-            ->method('getInstancesNamesList')
-            ->willReturn(['instanceType1'], ['instanceType2']);
-        $definitionsCollection->expects($this->once())
-            ->method('getInstanceArguments')
-            ->willReturnMap([
-                ['instanceType1', null],
-                ['instanceType2', ['arg1', 'arg2']],
-            ]);
-        $this->typeReader->expects($this->exactly(3))
-            ->method('isConcrete')
-            ->willReturnMap([
-                ['instanceType1', true],
-                ['instanceType2', false],
-                ['originalType1', true],
-                ['originalType2', false],
-            ]);
-        $this->argumentsResolver->expects($this->exactly(2))
-            ->method('getResolvedConstructorArguments')
-            ->willReturnMap([
-                ['instanceType1', 'resolvedConstructor1'],
-                ['instanceVirtualType1', 'resolvedConstructor2'],
-            ]);
-        $this->diContainerConfig->expects($this->exactly(2))
+        $definitionCollection = $this->getDefinitionsCollection();
+        $this->diContainerConfig->expects($this->any())
             ->method('getVirtualTypes')
-            ->willReturn(['instanceVirtualType1' => 1, 'instanceVirtualType2' => 2]);
-        $this->diContainerConfig->expects($this->exactly(4))
+            ->willReturn($this->getVirtualTypes());
+        $this->diContainerConfig->expects($this->any())
+            ->method('getPreferences')
+            ->willReturn($this->getPreferences());
+
+        $getResolvedConstructorArgumentsMap = $this->getResolvedVirtualConstructorArgumentsMap(
+            $definitionCollection,
+            $this->getVirtualTypes()
+        );
+
+        $this->diContainerConfig->expects($this->any())
             ->method('getInstanceType')
-            ->willReturnMap([
-                ['instanceVirtualType1', 'originalType1'],
-                ['instanceVirtualType2', 'originalType2'],
-            ]);
-        $definitionsCollection->expects($this->exactly(2))
-            ->method('hasInstance')
-            ->willReturn('');
-        $this->classReaderDecorator->expects($this->once())
-            ->method('getConstructor')
-            ->willReturn('constructor');
-        $this->diContainerConfig->expects($this->once())
+            ->willReturnMap($this->getInstanceTypeMap($this->getVirtualTypes()));
+
+        $this->diContainerConfig->expects($this->any())
             ->method('isShared')
-            ->willReturnMap([
-                ['instanceType1', true],
-                ['instanceType2', false],
-            ]);
-        $this->diContainerConfig->expects($this->once())
+            ->willReturnMap($this->getExpectedNonShared());
+
+        $this->diContainerConfig->expects($this->any())
             ->method('getPreference')
-            ->willReturnMap([
-                ['instanceType1', 'instanceType1ss'],
-                ['instanceType2', 'instanceType2'],
-            ]);
-        $this->model->generateCachePerScope($definitionsCollection, 'areaCode');
+            ->willReturnMap($this->getPreferencesMap());
+
+        $isConcreteMap = [];
+        foreach ($definitionCollection->getInstancesNamesList() as $instanceType) {
+            $isConcreteMap[] = [$instanceType, strpos($instanceType, 'Interface') === false];
+
+            $getResolvedConstructorArgumentsMap[] = [
+                $instanceType,
+                $definitionCollection->getInstanceArguments($instanceType),
+                $this->getResolvedArguments(
+                    $definitionCollection->getInstanceArguments($instanceType)
+                )
+            ];
+        }
+
+        $this->typeReader->expects($this->any())
+            ->method('isConcrete')
+            ->willReturnMap($isConcreteMap);
+        $this->argumentsResolver->expects($this->any())
+            ->method('getResolvedConstructorArguments')
+            ->willReturnMap($getResolvedConstructorArgumentsMap);
+
+        $this->assertEquals(
+            $this->getExpectedGlobalConfig(),
+            $this->model->generateCachePerScope($definitionCollection, Area::AREA_GLOBAL)
+        );
+    }
+
+    /**
+     * @return array
+     */
+    private function getExpectedGlobalConfig()
+    {
+        return [
+            'arguments' => [
+                'ConcreteType1' => serialize(['resolved_argument1', 'resolved_argument2']),
+                'ConcreteType2' => serialize(['resolved_argument1', 'resolved_argument2']),
+                'virtualType1' => serialize(['resolved_argument1', 'resolved_argument2'])
+            ],
+            'nonShared' => [
+                'ConcreteType2' => true,
+                'ThirdPartyInterface' => true
+            ],
+            'preferences' => $this->getPreferences(),
+            'instanceTypes' => $this->getVirtualTypes(),
+        ];
+    }
+
+    /**
+     * @return Collection
+     */
+    private function getDefinitionsCollection()
+    {
+        $definitionCollection = new Collection();
+        $definitionCollection->addDefinition('ConcreteType1', ['argument1', 'argument2']);
+        $definitionCollection->addDefinition('ConcreteType2', ['argument1', 'argument2']);
+        $definitionCollection->addDefinition('Interface1', [null]);
+
+        return $definitionCollection;
+    }
+
+    /**
+     * @return array
+     */
+    private function getVirtualTypes()
+    {
+        return ['virtualType1' => 'ConcreteType1'];
+    }
+
+    /**
+     * @return array
+     */
+    private function getExpectedNonShared()
+    {
+        return [
+            ['ConcreteType1', true],
+            ['ConcreteType2', false],
+            ['Interface1', true],
+            ['ThirdPartyInterface', false]
+        ];
+    }
+
+    /**
+     * @return array
+     */
+    private function getPreferences()
+    {
+        return [
+            'Interface1' => 'ConcreteType1',
+            'ThirdPartyInterface' => 'ConcreteType2'
+        ];
+    }
+
+    /**
+     * @return array
+     */
+    private function getPreferencesMap()
+    {
+        return [
+            ['ConcreteType1', 'ConcreteType1'],
+            ['ConcreteType2', 'ConcreteType2'],
+            ['Interface1', 'ConcreteType1'],
+            ['ThirdPartyInterface', 'ConcreteType2']
+        ];
+    }
+
+    /**
+     * @param array $arguments
+     * @return array|null
+     */
+    private function getResolvedArguments($arguments)
+    {
+        return empty($arguments) ? null : array_map(
+            function ($argument) {
+                return 'resolved_' . $argument;
+            },
+            $arguments
+        );
+    }
+
+    /**
+     * @param array $virtualTypes
+     * @return array
+     */
+    private function getInstanceTypeMap($virtualTypes)
+    {
+        $getInstanceTypeMap = [];
+        foreach ($virtualTypes as $virtualType => $concreteType) {
+            $getInstanceTypeMap[] = [$virtualType, $concreteType];
+        }
+
+        return $getInstanceTypeMap;
+    }
+
+    /**
+     * @param Collection $definitionCollection
+     * @param array $virtualTypes
+     * @return array
+     */
+    private function getResolvedVirtualConstructorArgumentsMap(Collection $definitionCollection, array $virtualTypes)
+    {
+        $getResolvedConstructorArgumentsMap = [];
+        foreach ($virtualTypes as $virtualType => $concreteType) {
+            $getResolvedConstructorArgumentsMap[] = [
+                $virtualType,
+                $definitionCollection->getInstanceArguments($concreteType),
+                $this->getResolvedArguments(
+                    $definitionCollection->getInstanceArguments($concreteType)
+                )
+            ];
+        }
+        return $getResolvedConstructorArgumentsMap;
     }
 }
diff --git a/dev/tests/unit/testsuite/Magento/Tools/Di/Definition/CollectionTest.php b/dev/tests/unit/testsuite/Magento/Tools/Di/Definition/CollectionTest.php
index 21b2b5cca11dec72309d8dbd3718c40c83b8110f..b41a11b6c1e234e71f8dfbf2773fc4b423c58b0c 100644
--- a/dev/tests/unit/testsuite/Magento/Tools/Di/Definition/CollectionTest.php
+++ b/dev/tests/unit/testsuite/Magento/Tools/Di/Definition/CollectionTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Tools\Di\Definition;
 
 /**
diff --git a/dev/tests/unit/testsuite/Magento/Tools/I18n/Parser/ParserTest.php b/dev/tests/unit/testsuite/Magento/Tools/I18n/Parser/ParserTest.php
index 5c9ba57c3a13809713b8597b7a7d75e4495023ef..1371b705ecf8ed406176f37b1c9e9282a250945c 100644
--- a/dev/tests/unit/testsuite/Magento/Tools/I18n/Parser/ParserTest.php
+++ b/dev/tests/unit/testsuite/Magento/Tools/I18n/Parser/ParserTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Tools\I18n\Parser;
 
 use Magento\Tools\I18n\Parser as Parser;
diff --git a/dev/tests/unit/testsuite/Magento/Ui/Component/FilterPoolTest.php b/dev/tests/unit/testsuite/Magento/Ui/Component/FilterPoolTest.php
index 2f1b6f707abb51bc28b07ca4e51b90be96cc433a..1873f02eec1b06b13ae90797e56ce0f21d2c5a01 100644
--- a/dev/tests/unit/testsuite/Magento/Ui/Component/FilterPoolTest.php
+++ b/dev/tests/unit/testsuite/Magento/Ui/Component/FilterPoolTest.php
@@ -148,6 +148,7 @@ class FilterPoolTest extends \PHPUnit_Framework_TestCase
      * Run test prepare method
      *
      * @return void
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function testPrepare()
     {
diff --git a/dev/tests/unit/testsuite/Magento/Ui/Component/ListingTest.php b/dev/tests/unit/testsuite/Magento/Ui/Component/ListingTest.php
index 2baffadf113c2c25835ded43879f37a2b7fe1d07..92819b91a1f6b9a10737af8f000c4d150a07b8aa 100644
--- a/dev/tests/unit/testsuite/Magento/Ui/Component/ListingTest.php
+++ b/dev/tests/unit/testsuite/Magento/Ui/Component/ListingTest.php
@@ -12,6 +12,9 @@ use Magento\Ui\Component\Listing\OptionsFactory;
 use Magento\Ui\Component\Listing\RowPool;
 use Magento\Ui\Context\ConfigurationFactory;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class ListingTest extends \PHPUnit_Framework_TestCase
 {
     /**
diff --git a/dev/tests/unit/testsuite/Magento/Ui/DataProvider/Config/FileResolverTest.php b/dev/tests/unit/testsuite/Magento/Ui/DataProvider/Config/FileResolverTest.php
new file mode 100644
index 0000000000000000000000000000000000000000..14b250b46e509af2097c43719067dec8aaa2272c
--- /dev/null
+++ b/dev/tests/unit/testsuite/Magento/Ui/DataProvider/Config/FileResolverTest.php
@@ -0,0 +1,48 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+namespace Magento\Ui\DataProvider\Config;
+
+use Magento\Framework\Filesystem;
+
+class FileResolverTest extends \PHPUnit_Framework_TestCase
+{
+    /**
+     * @var \Magento\Framework\Filesystem\Directory\Read | \PHPUnit_Framework_MockObject_MockObject
+     */
+    private $mockDirectoryRead;
+
+    /**
+     * @var FileResolver
+     */
+    private $fileResolver;
+
+    public function setUp()
+    {
+        $this->mockDirectoryRead = $this->getMockBuilder('Magento\Framework\Filesystem\Directory\Read')
+            ->disableOriginalConstructor()
+            ->getMock();
+        $stubFileIteratorFactory = $this->getMockBuilder('Magento\Framework\Config\FileIteratorFactory')
+            ->disableOriginalConstructor()
+            ->getMock();
+        $stubFilesystem = $this->getMockBuilder('Magento\Framework\Filesystem')
+            ->disableOriginalConstructor()
+            ->getMock();
+        $stubFilesystem->expects($this->any())
+            ->method('getDirectoryRead')
+            ->willReturn($this->mockDirectoryRead);
+        $this->fileResolver = new FileResolver($stubFilesystem, $stubFileIteratorFactory);
+    }
+
+    public function testItAppliesTheFilenamePattern()
+    {
+        $this->mockDirectoryRead->expects($this->once())
+            ->method('search')
+            ->with($this->matchesRegularExpression('#\*\.xml$#'))
+            ->willReturn([]);
+
+        $this->fileResolver->get('*.xml', '');
+    }
+}
diff --git a/dev/tests/unit/testsuite/Magento/Ups/Model/CarrierTest.php b/dev/tests/unit/testsuite/Magento/Ups/Model/CarrierTest.php
index 055853667798bfb57e9b3cec2942353243cabc87..a6cb5067125c0313e2bdadb010121328f0f7a26c 100644
--- a/dev/tests/unit/testsuite/Magento/Ups/Model/CarrierTest.php
+++ b/dev/tests/unit/testsuite/Magento/Ups/Model/CarrierTest.php
@@ -71,7 +71,7 @@ class CarrierTest extends \PHPUnit_Framework_TestCase
                 $freeShippingSubtotal
             ],
         ]));
-        $request = new \Magento\Sales\Model\Quote\Address\RateRequest();
+        $request = new \Magento\Quote\Model\Quote\Address\RateRequest();
         $request->setBaseSubtotalInclTax($requestSubtotal);
         $this->model->setRawRequest($request);
         $price = $this->model->getMethodPrice($cost, $shippingMethod);
diff --git a/dev/tests/unit/testsuite/Magento/UrlRewrite/Block/Catalog/Edit/FormTest.php b/dev/tests/unit/testsuite/Magento/UrlRewrite/Block/Catalog/Edit/FormTest.php
index 5b2cb6669e0f2cfad181df24411f5faccd7b15cd..ac2af1521f01ad2ec3abaa475a9933d40bf58aa6 100644
--- a/dev/tests/unit/testsuite/Magento/UrlRewrite/Block/Catalog/Edit/FormTest.php
+++ b/dev/tests/unit/testsuite/Magento/UrlRewrite/Block/Catalog/Edit/FormTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\UrlRewrite\Block\Catalog\Edit;
 
 use Magento\TestFramework\Helper\ObjectManager;
diff --git a/dev/tests/unit/testsuite/Magento/UrlRewrite/Model/Storage/DbStorageTest.php b/dev/tests/unit/testsuite/Magento/UrlRewrite/Model/Storage/DbStorageTest.php
index 15495e3e0c19e597add31475134055b917b57966..0d0df18749c3fb0fd5898cbfb85b54f887088d62 100644
--- a/dev/tests/unit/testsuite/Magento/UrlRewrite/Model/Storage/DbStorageTest.php
+++ b/dev/tests/unit/testsuite/Magento/UrlRewrite/Model/Storage/DbStorageTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\UrlRewrite\Model\Storage;
 
 use Magento\Framework\App\Resource;
diff --git a/dev/tests/unit/testsuite/Magento/Usps/Model/CarrierTest.php b/dev/tests/unit/testsuite/Magento/Usps/Model/CarrierTest.php
index cffb29521b13e96e68742dfd0c1d8c69e475242a..f706f52a83c050f7ddc69807e7385e93d61e66e4 100644
--- a/dev/tests/unit/testsuite/Magento/Usps/Model/CarrierTest.php
+++ b/dev/tests/unit/testsuite/Magento/Usps/Model/CarrierTest.php
@@ -76,12 +76,12 @@ class CarrierTest extends \PHPUnit_Framework_TestCase
 
         // rate method factory
         $rateMethodFactory = $this->getMockBuilder(
-            '\Magento\Sales\Model\Quote\Address\RateResult\MethodFactory'
+            '\Magento\Quote\Model\Quote\Address\RateResult\MethodFactory'
         )->disableOriginalConstructor()->setMethods(
             ['create']
         )->getMock();
         $rateMethod = $this->getMockBuilder(
-            'Magento\Sales\Model\Quote\Address\RateResult\Method'
+            'Magento\Quote\Model\Quote\Address\RateResult\Method'
         )->disableOriginalConstructor()->setMethods(
             ['setPrice']
         )->getMock();
@@ -148,7 +148,7 @@ class CarrierTest extends \PHPUnit_Framework_TestCase
         );
         // for setRequest
         $request = $this->_helper->getObject(
-            'Magento\Sales\Model\Quote\Address\RateRequest',
+            'Magento\Quote\Model\Quote\Address\RateRequest',
             require __DIR__ . '/_files/rates_request_data.php'
         );
 
diff --git a/dev/tests/unit/testsuite/Magento/Webapi/Controller/RestTest.php b/dev/tests/unit/testsuite/Magento/Webapi/Controller/RestTest.php
index 6d3a0178846b8d3ddcd7ed0af0039e6dce3da220..bad175a1d6b75c69e1a83780c5fccff8991e037b 100644
--- a/dev/tests/unit/testsuite/Magento/Webapi/Controller/RestTest.php
+++ b/dev/tests/unit/testsuite/Magento/Webapi/Controller/RestTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Webapi\Controller;
 
 use Magento\Authorization\Model\UserContextInterface;
diff --git a/dev/tests/unit/testsuite/Magento/Webapi/Controller/Soap/Request/HandlerTest.php b/dev/tests/unit/testsuite/Magento/Webapi/Controller/Soap/Request/HandlerTest.php
index a4c62ceab731c5efffb24a10d8aca786b2a88232..227db3f99c278383b328dbf6171975d0b9b0561b 100644
--- a/dev/tests/unit/testsuite/Magento/Webapi/Controller/Soap/Request/HandlerTest.php
+++ b/dev/tests/unit/testsuite/Magento/Webapi/Controller/Soap/Request/HandlerTest.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Webapi\Controller\Soap\Request;
 
 use Magento\Framework\Api\SimpleDataObjectConverter;
diff --git a/dev/tests/unit/testsuite/Magento/Webapi/_files/test_interfaces.php b/dev/tests/unit/testsuite/Magento/Webapi/_files/test_interfaces.php
index d0d312be691d5e84b02d4056085db3fe9c91c459..b777c141eb81bf658fef378712093f40e271f240 100644
--- a/dev/tests/unit/testsuite/Magento/Webapi/_files/test_interfaces.php
+++ b/dev/tests/unit/testsuite/Magento/Webapi/_files/test_interfaces.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Module\Service;
 
 /**
diff --git a/dev/tests/unit/testsuite/Magento/Weee/Block/Item/Price/RendererTest.php b/dev/tests/unit/testsuite/Magento/Weee/Block/Item/Price/RendererTest.php
index d3c191629d6f0bb7c8abde0787b082c0db334a23..4fea2d4c7475c604de524399b7366d00ede001a0 100644
--- a/dev/tests/unit/testsuite/Magento/Weee/Block/Item/Price/RendererTest.php
+++ b/dev/tests/unit/testsuite/Magento/Weee/Block/Item/Price/RendererTest.php
@@ -25,7 +25,7 @@ class RendererTest extends \PHPUnit_Framework_TestCase
     protected $priceCurrency;
 
     /**
-     * @var \Magento\Sales\Model\Quote\Item|\PHPUnit_Framework_MockObject_MockObject
+     * @var \Magento\Quote\Model\Quote\Item|\PHPUnit_Framework_MockObject_MockObject
      */
     protected $item;
 
@@ -53,7 +53,7 @@ class RendererTest extends \PHPUnit_Framework_TestCase
             ->setMethods(['format'])
             ->getMock();
 
-        $this->item = $this->getMockBuilder('\Magento\Sales\Model\Quote\Item')
+        $this->item = $this->getMockBuilder('\Magento\Quote\Model\Quote\Item')
             ->disableOriginalConstructor()
             ->setMethods([
                 '__wakeup',
diff --git a/dev/tests/unit/testsuite/Magento/Weee/Model/Attribute/Backend/Weee/TaxTest.php b/dev/tests/unit/testsuite/Magento/Weee/Model/Attribute/Backend/Weee/TaxTest.php
index 6a2ad785605f313bf87af84a2e32255ddd0d9676..71e38fd6b8813d491b2d6f1c2a127661137ca543 100644
--- a/dev/tests/unit/testsuite/Magento/Weee/Model/Attribute/Backend/Weee/TaxTest.php
+++ b/dev/tests/unit/testsuite/Magento/Weee/Model/Attribute/Backend/Weee/TaxTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Test class for \Magento\Weee\Model\Attribute\Backend\Weee\Tax
  */
diff --git a/dev/tests/unit/testsuite/Magento/Weee/Model/Resource/Attribute/Backend/Weee/TaxTest.php b/dev/tests/unit/testsuite/Magento/Weee/Model/Resource/Attribute/Backend/Weee/TaxTest.php
new file mode 100644
index 0000000000000000000000000000000000000000..96cdfee93ffa55d470111325d832236848faa116
--- /dev/null
+++ b/dev/tests/unit/testsuite/Magento/Weee/Model/Resource/Attribute/Backend/Weee/TaxTest.php
@@ -0,0 +1,63 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+namespace Magento\Weee\Model\Resource\Attribute\Backend\Weee;
+
+class TaxTest extends \PHPUnit_Framework_TestCase
+{
+    /**
+     * @var \Magento\Weee\Model\Resource\Attribute\Backend\Weee\Tax
+     */
+    protected $model;
+
+    /**
+     * @var \PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $resourceMock;
+
+    /**
+     * @var \PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $storeManagerMock;
+
+    /**
+     * @var \PHPUnit_Framework_MockObject_MockObject
+     */
+    protected $adapterMock;
+
+    protected function setUp()
+    {
+        $this->storeManagerMock = $this->getMock('\Magento\Store\Model\StoreManagerInterface');
+        $this->adapterMock = $this->getMock('\Magento\Framework\DB\Adapter\AdapterInterface');
+
+        $this->resourceMock = $this->getMock('\Magento\Framework\App\Resource', [], [], '', false);
+        $this->resourceMock->expects($this->once())
+            ->method('getConnection')
+            ->with('core_write')
+            ->willReturn($this->adapterMock);
+
+        $this->resourceMock->expects($this->once())
+            ->method('getTableName')
+            ->willReturn('table_name');
+
+        $this->model = new \Magento\Weee\Model\Resource\Attribute\Backend\Weee\Tax(
+            $this->resourceMock,
+            $this->storeManagerMock
+        );
+    }
+
+    public function testInsertProductData()
+    {
+        $productId = 100;
+        $productMock = $this->getMock('\Magento\Catalog\Model\Product', ['getId'], [], '', false);
+        $productMock->expects($this->once())->method('getId')->willReturn($productId);
+
+        $this->adapterMock->expects($this->once())
+            ->method('insert')
+            ->with('table_name', ['entity_id' => $productId]);
+
+        $this->assertEquals($this->model, $this->model->insertProductData($productMock, []));
+    }
+}
diff --git a/dev/tests/unit/testsuite/Magento/Weee/Model/Total/Quote/WeeeTaxTest.php b/dev/tests/unit/testsuite/Magento/Weee/Model/Total/Quote/WeeeTaxTest.php
index 009b16cbcad418e9301285846b4b3a33a4d7600b..b1be049dd0c5081adbcdb09888e2a6f5067b3098 100644
--- a/dev/tests/unit/testsuite/Magento/Weee/Model/Total/Quote/WeeeTaxTest.php
+++ b/dev/tests/unit/testsuite/Magento/Weee/Model/Total/Quote/WeeeTaxTest.php
@@ -85,12 +85,12 @@ class WeeeTaxTest extends \PHPUnit_Framework_TestCase
      * Setup an item mock
      *
      * @param float $itemQty
-     * @return \PHPUnit_Framework_MockObject_MockObject|\Magento\Sales\Model\Quote\Item
+     * @return \PHPUnit_Framework_MockObject_MockObject|\Magento\Quote\Model\Quote\Item
      */
     protected function setupItemMock($itemQty)
     {
         $itemMock = $this->getMock(
-            'Magento\Sales\Model\Quote\Item',
+            'Magento\Quote\Model\Quote\Item',
             [
                 'getProduct',
                 'getQuote',
@@ -113,7 +113,7 @@ class WeeeTaxTest extends \PHPUnit_Framework_TestCase
     /**
      * Setup address mock
      *
-     * @param \PHPUnit_Framework_MockObject_MockObject|\Magento\Sales\Model\Quote\Item $itemMock
+     * @param \PHPUnit_Framework_MockObject_MockObject|\Magento\Quote\Model\Quote\Item $itemMock
      * @param boolean $isWeeeTaxable
      * @param array   $itemData
      * @param array   $addressData
@@ -122,7 +122,7 @@ class WeeeTaxTest extends \PHPUnit_Framework_TestCase
     protected function setupAddressMock($itemMock, $isWeeeTaxable, $itemData, $addressData)
     {
         $addressMock = $this->getMock(
-            'Magento\Sales\Model\Quote\Address',
+            'Magento\Quote\Model\Quote\Address',
             [
                 '__wakeup',
                 'getAllItems',
@@ -175,7 +175,7 @@ class WeeeTaxTest extends \PHPUnit_Framework_TestCase
             }
         }
 
-        $quoteMock = $this->getMock('Magento\Sales\Model\Quote', [], [], '', false);
+        $quoteMock = $this->getMock('Magento\Quote\Model\Quote', [], [], '', false);
         $storeMock = $this->getMock('Magento\Store\Model\Store', ['__wakeup', 'convertPrice'], [], '', false);
         $storeMock->expects($this->any())->method('convertPrice')->will($this->returnArgument(0));
         $quoteMock->expects($this->any())->method('getStore')->will($this->returnValue($storeMock));
@@ -199,10 +199,10 @@ class WeeeTaxTest extends \PHPUnit_Framework_TestCase
     /**
      * Verify that correct fields of item has been set
      *
-     * @param \PHPUnit_Framework_MockObject_MockObject|\Magento\Sales\Model\Quote\Item $item
+     * @param \PHPUnit_Framework_MockObject_MockObject|\Magento\Quote\Model\Quote\Item $item
      * @param array $itemData
      */
-    public function verifyItem(\Magento\Sales\Model\Quote\Item $item, $itemData)
+    public function verifyItem(\Magento\Quote\Model\Quote\Item $item, $itemData)
     {
         foreach ($itemData as $key => $value) {
             $this->assertEquals($value, $item->getData($key), 'item ' . $key . ' is incorrect');
@@ -212,10 +212,10 @@ class WeeeTaxTest extends \PHPUnit_Framework_TestCase
     /**
      * Verify that correct fields of address has been set
      *
-     * @param \PHPUnit_Framework_MockObject_MockObject|\Magento\Sales\Model\Quote\Address $address
+     * @param \PHPUnit_Framework_MockObject_MockObject|\Magento\Quote\Model\Quote\Address $address
      * @param array $addressData
      */
-    public function verifyAddress(\Magento\Sales\Model\Quote\Address $address, $addressData)
+    public function verifyAddress(\Magento\Quote\Model\Quote\Address $address, $addressData)
     {
         foreach ($addressData as $key => $value) {
             if ($key != self::KEY_WEEE_TOTALS && $key != self::KEY_WEEE_BASE_TOTALS) {
@@ -279,7 +279,7 @@ class WeeeTaxTest extends \PHPUnit_Framework_TestCase
         $data['price_incl_tax_weee_taxable_unit_included_in_subtotal'] = [
             'tax_config' => [
                 'priceIncludesTax' => true,
-                'getCalculationAgorithm' => Calculation::CALC_UNIT_BASE,
+                'getCalculationAlgorithm' => Calculation::CALC_UNIT_BASE,
             ],
             'weee_config' => [
                 'isEnabled' => true,
@@ -323,7 +323,7 @@ class WeeeTaxTest extends \PHPUnit_Framework_TestCase
         $data['price_incl_tax_weee_taxable_unit_not_included_in_subtotal'] = [
             'tax_config' => [
                 'priceIncludesTax' => true,
-                'getCalculationAgorithm' => Calculation::CALC_UNIT_BASE,
+                'getCalculationAlgorithm' => Calculation::CALC_UNIT_BASE,
             ],
             'weee_config' => [
                 'isEnabled' => true,
@@ -367,7 +367,7 @@ class WeeeTaxTest extends \PHPUnit_Framework_TestCase
         $data['price_excl_tax_weee_taxable_unit_included_in_subtotal'] = [
             'tax_config' => [
                 'priceIncludesTax' => false,
-                'getCalculationAgorithm' => Calculation::CALC_UNIT_BASE,
+                'getCalculationAlgorithm' => Calculation::CALC_UNIT_BASE,
             ],
             'weee_config' => [
                 'isEnabled' => true,
@@ -411,7 +411,7 @@ class WeeeTaxTest extends \PHPUnit_Framework_TestCase
         $data['price_incl_tax_weee_non_taxable_unit_included_in_subtotal'] = [
             'tax_config' => [
                 'priceIncludesTax' => true,
-                'getCalculationAgorithm' => Calculation::CALC_UNIT_BASE,
+                'getCalculationAlgorithm' => Calculation::CALC_UNIT_BASE,
             ],
             'weee_config' => [
                 'isEnabled' => true,
@@ -449,7 +449,7 @@ class WeeeTaxTest extends \PHPUnit_Framework_TestCase
         $data['price_excl_tax_weee_non_taxable_unit_include_in_subtotal'] = [
             'tax_config' => [
                 'priceIncludesTax' => false,
-                'getCalculationAgorithm' => Calculation::CALC_UNIT_BASE,
+                'getCalculationAlgorithm' => Calculation::CALC_UNIT_BASE,
             ],
             'weee_config' => [
                 'isEnabled' => true,
@@ -487,7 +487,7 @@ class WeeeTaxTest extends \PHPUnit_Framework_TestCase
         $data['price_incl_tax_weee_taxable_row_include_in_subtotal'] = [
             'tax_config' => [
                 'priceIncludesTax' => true,
-                'getCalculationAgorithm' => Calculation::CALC_ROW_BASE,
+                'getCalculationAlgorithm' => Calculation::CALC_ROW_BASE,
             ],
             'weee_config' => [
                 'isEnabled' => true,
@@ -531,7 +531,7 @@ class WeeeTaxTest extends \PHPUnit_Framework_TestCase
         $data['price_excl_tax_weee_taxable_row_include_in_subtotal'] = [
             'tax_config' => [
                 'priceIncludesTax' => false,
-                'getCalculationAgorithm' => Calculation::CALC_ROW_BASE,
+                'getCalculationAlgorithm' => Calculation::CALC_ROW_BASE,
             ],
             'weee_config' => [
                 'isEnabled' => true,
@@ -575,7 +575,7 @@ class WeeeTaxTest extends \PHPUnit_Framework_TestCase
         $data['price_incl_tax_weee_non_taxable_row_include_in_subtotal'] = [
             'tax_config' => [
                 'priceIncludesTax' => true,
-                'getCalculationAgorithm' => Calculation::CALC_ROW_BASE,
+                'getCalculationAlgorithm' => Calculation::CALC_ROW_BASE,
             ],
             'weee_config' => [
                 'isEnabled' => true,
@@ -613,7 +613,7 @@ class WeeeTaxTest extends \PHPUnit_Framework_TestCase
         $data['price_excl_tax_weee_non_taxable_row_not_included_in_subtotal'] = [
             'tax_config' => [
                 'priceIncludesTax' => false,
-                'getCalculationAgorithm' => Calculation::CALC_ROW_BASE,
+                'getCalculationAlgorithm' => Calculation::CALC_ROW_BASE,
             ],
             'weee_config' => [
                 'isEnabled' => true,
diff --git a/dev/tests/unit/testsuite/Magento/Weee/Model/Total/Quote/WeeeTest.php b/dev/tests/unit/testsuite/Magento/Weee/Model/Total/Quote/WeeeTest.php
index b327cbb395b51faaec82d994037b107d32d1531f..4ddcc5d6296da7875c3b5fd16b30077efd311d19 100644
--- a/dev/tests/unit/testsuite/Magento/Weee/Model/Total/Quote/WeeeTest.php
+++ b/dev/tests/unit/testsuite/Magento/Weee/Model/Total/Quote/WeeeTest.php
@@ -82,12 +82,12 @@ class WeeeTest extends \PHPUnit_Framework_TestCase
      * Setup an item mock
      *
      * @param float $itemQty
-     * @return \PHPUnit_Framework_MockObject_MockObject|\Magento\Sales\Model\Quote\Item
+     * @return \PHPUnit_Framework_MockObject_MockObject|\Magento\Quote\Model\Quote\Item
      */
     protected function setupItemMock($itemQty)
     {
         $itemMock = $this->getMock(
-            'Magento\Sales\Model\Quote\Item',
+            'Magento\Quote\Model\Quote\Item',
             [
                 'getProduct',
                 'getQuote',
@@ -110,13 +110,13 @@ class WeeeTest extends \PHPUnit_Framework_TestCase
     /**
      * Setup address mock
      *
-     * @param \PHPUnit_Framework_MockObject_MockObject|\Magento\Sales\Model\Quote\Item $itemMock
+     * @param \PHPUnit_Framework_MockObject_MockObject|\Magento\Quote\Model\Quote\Item $itemMock
      * @return \PHPUnit_Framework_MockObject_MockObject
      */
     protected function setupAddressMock($itemMock)
     {
         $addressMock = $this->getMock(
-            'Magento\Sales\Model\Quote\Address',
+            'Magento\Quote\Model\Quote\Address',
             [
                 '__wakeup',
                 'getAllItems',
@@ -127,7 +127,7 @@ class WeeeTest extends \PHPUnit_Framework_TestCase
             false
         );
 
-        $quoteMock = $this->getMock('Magento\Sales\Model\Quote', [], [], '', false);
+        $quoteMock = $this->getMock('Magento\Quote\Model\Quote', [], [], '', false);
         $storeMock = $this->getMock('Magento\Store\Model\Store', [], [], '', false);
         $this->priceCurrency = $this->getMockBuilder('Magento\Framework\Pricing\PriceCurrencyInterface')->getMock();
         $this->priceCurrency->expects($this->any())->method('round')->willReturnArgument(0);
@@ -143,10 +143,10 @@ class WeeeTest extends \PHPUnit_Framework_TestCase
     /**
      * Verify that correct fields of item has been set
      *
-     * @param \PHPUnit_Framework_MockObject_MockObject|\Magento\Sales\Model\Quote\Item $item
+     * @param \PHPUnit_Framework_MockObject_MockObject|\Magento\Quote\Model\Quote\Item $item
      * @param $itemData
      */
-    public function verifyItem(\Magento\Sales\Model\Quote\Item $item, $itemData)
+    public function verifyItem(\Magento\Quote\Model\Quote\Item $item, $itemData)
     {
         foreach ($itemData as $key => $value) {
             $this->assertEquals($value, $item->getData($key), 'item ' . $key . ' is incorrect');
@@ -156,10 +156,10 @@ class WeeeTest extends \PHPUnit_Framework_TestCase
     /**
      * Verify that correct fields of address has been set
      *
-     * @param \PHPUnit_Framework_MockObject_MockObject|\Magento\Sales\Model\Quote\Address $address
+     * @param \PHPUnit_Framework_MockObject_MockObject|\Magento\Quote\Model\Quote\Address $address
      * @param $addressData
      */
-    public function verifyAddress(\Magento\Sales\Model\Quote\Address $address, $addressData)
+    public function verifyAddress(\Magento\Quote\Model\Quote\Address $address, $addressData)
     {
         foreach ($addressData as $key => $value) {
             $this->assertEquals($value, $address->getData($key), 'address ' . $key . ' is incorrect');
@@ -221,7 +221,7 @@ class WeeeTest extends \PHPUnit_Framework_TestCase
         $data['price_incl_tax_weee_taxable_unit_included_in_subtotal'] = [
             'tax_config' => [
                 'priceIncludesTax' => true,
-                'getCalculationAgorithm' => Calculation::CALC_UNIT_BASE,
+                'getCalculationAlgorithm' => Calculation::CALC_UNIT_BASE,
             ],
             'weee_config' => [
                 'isEnabled' => true,
@@ -261,7 +261,7 @@ class WeeeTest extends \PHPUnit_Framework_TestCase
         $data['price_incl_tax_weee_taxable_unit_not_included_in_subtotal'] = [
             'tax_config' => [
                 'priceIncludesTax' => true,
-                'getCalculationAgorithm' => Calculation::CALC_UNIT_BASE,
+                'getCalculationAlgorithm' => Calculation::CALC_UNIT_BASE,
             ],
             'weee_config' => [
                 'isEnabled' => true,
@@ -301,7 +301,7 @@ class WeeeTest extends \PHPUnit_Framework_TestCase
         $data['price_excl_tax_weee_taxable_unit_included_in_subtotal'] = [
             'tax_config' => [
                 'priceIncludesTax' => false,
-                'getCalculationAgorithm' => Calculation::CALC_UNIT_BASE,
+                'getCalculationAlgorithm' => Calculation::CALC_UNIT_BASE,
             ],
             'weee_config' => [
                 'isEnabled' => true,
@@ -341,7 +341,7 @@ class WeeeTest extends \PHPUnit_Framework_TestCase
         $data['price_incl_tax_weee_non_taxable_unit_included_in_subtotal'] = [
             'tax_config' => [
                 'priceIncludesTax' => true,
-                'getCalculationAgorithm' => Calculation::CALC_UNIT_BASE,
+                'getCalculationAlgorithm' => Calculation::CALC_UNIT_BASE,
             ],
             'weee_config' => [
                 'isEnabled' => true,
@@ -383,7 +383,7 @@ class WeeeTest extends \PHPUnit_Framework_TestCase
         $data['price_excl_tax_weee_non_taxable_unit_included_in_subtotal'] = [
             'tax_config' => [
                 'priceIncludesTax' => false,
-                'getCalculationAgorithm' => Calculation::CALC_UNIT_BASE,
+                'getCalculationAlgorithm' => Calculation::CALC_UNIT_BASE,
             ],
             'weee_config' => [
                 'isEnabled' => true,
@@ -425,7 +425,7 @@ class WeeeTest extends \PHPUnit_Framework_TestCase
         $data['price_incl_tax_weee_taxable_row_included_in_subtotal'] = [
             'tax_config' => [
                 'priceIncludesTax' => true,
-                'getCalculationAgorithm' => Calculation::CALC_ROW_BASE,
+                'getCalculationAlgorithm' => Calculation::CALC_ROW_BASE,
             ],
             'weee_config' => [
                 'isEnabled' => true,
@@ -465,7 +465,7 @@ class WeeeTest extends \PHPUnit_Framework_TestCase
         $data['price_excl_tax_weee_taxable_row_included_in_subtotal'] = [
             'tax_config' => [
                 'priceIncludesTax' => false,
-                'getCalculationAgorithm' => Calculation::CALC_ROW_BASE,
+                'getCalculationAlgorithm' => Calculation::CALC_ROW_BASE,
             ],
             'weee_config' => [
                 'isEnabled' => true,
@@ -505,7 +505,7 @@ class WeeeTest extends \PHPUnit_Framework_TestCase
         $data['price_incl_tax_weee_non_taxable_row_included_in_subtotal'] = [
             'tax_config' => [
                 'priceIncludesTax' => true,
-                'getCalculationAgorithm' => Calculation::CALC_ROW_BASE,
+                'getCalculationAlgorithm' => Calculation::CALC_ROW_BASE,
             ],
             'weee_config' => [
                 'isEnabled' => true,
@@ -547,7 +547,7 @@ class WeeeTest extends \PHPUnit_Framework_TestCase
         $data['price_excl_tax_weee_non_taxable_row_included_in_subtotal'] = [
             'tax_config' => [
                 'priceIncludesTax' => false,
-                'getCalculationAgorithm' => Calculation::CALC_ROW_BASE,
+                'getCalculationAlgorithm' => Calculation::CALC_ROW_BASE,
             ],
             'weee_config' => [
                 'isEnabled' => true,
@@ -589,7 +589,7 @@ class WeeeTest extends \PHPUnit_Framework_TestCase
         $data['price_excl_tax_weee_non_taxable_row_not_included_in_subtotal'] = [
             'tax_config' => [
                 'priceIncludesTax' => false,
-                'getCalculationAgorithm' => Calculation::CALC_ROW_BASE,
+                'getCalculationAlgorithm' => Calculation::CALC_ROW_BASE,
             ],
             'weee_config' => [
                 'isEnabled' => true,
diff --git a/dev/tests/unit/testsuite/Magento/Weee/Pricing/AdjustmentTest.php b/dev/tests/unit/testsuite/Magento/Weee/Pricing/AdjustmentTest.php
index 4b0abf2d783cc09023cf1940bb103b7a88528986..118703306cd1760075b0879c7302fb28babd34c2 100644
--- a/dev/tests/unit/testsuite/Magento/Weee/Pricing/AdjustmentTest.php
+++ b/dev/tests/unit/testsuite/Magento/Weee/Pricing/AdjustmentTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Weee\Pricing;
 
 use Magento\Framework\Pricing\Object\SaleableInterface;
diff --git a/dev/tests/unit/testsuite/Magento/Wishlist/Controller/Index/CartTest.php b/dev/tests/unit/testsuite/Magento/Wishlist/Controller/Index/CartTest.php
index 1068dc6b4a28cd4fc90b348459a46d565d6c0fb9..e5b2e125e866bb7d4267cda5e019ea533bb168d5 100644
--- a/dev/tests/unit/testsuite/Magento/Wishlist/Controller/Index/CartTest.php
+++ b/dev/tests/unit/testsuite/Magento/Wishlist/Controller/Index/CartTest.php
@@ -6,6 +6,10 @@
 
 namespace Magento\Wishlist\Controller\Index;
 
+/**
+ * @SuppressWarnings(PHPMD.TooManyFields)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class CartTest extends \PHPUnit_Framework_TestCase
 {
     /**
@@ -88,6 +92,9 @@ class CartTest extends \PHPUnit_Framework_TestCase
      */
     protected $urlMock;
 
+    /**
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
+     */
     protected function setUp()
     {
         $this->wishlistProviderMock = $this->getMockBuilder('Magento\Wishlist\Controller\WishlistProviderInterface')
@@ -263,6 +270,9 @@ class CartTest extends \PHPUnit_Framework_TestCase
         $this->assertEquals($this->responseMock, $this->model->execute());
     }
 
+    /**
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
+     */
     public function testExecuteWithQuantityArray()
     {
         $itemId = 2;
@@ -410,7 +420,7 @@ class CartTest extends \PHPUnit_Framework_TestCase
             ->method('save')
             ->willReturnSelf();
 
-        $quoteMock = $this->getMockBuilder('Magento\Sales\Model\Quote')
+        $quoteMock = $this->getMockBuilder('Magento\Quote\Model\Quote')
             ->disableOriginalConstructor()
             ->setMethods(['getHasError', 'collectTotals'])
             ->getMock();
@@ -473,6 +483,9 @@ class CartTest extends \PHPUnit_Framework_TestCase
         $this->assertEquals($this->responseMock, $this->model->execute());
     }
 
+    /**
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
+     */
     public function testExecuteWithoutQuantityArrayAndOutOfStock()
     {
         $itemId = 2;
@@ -633,6 +646,9 @@ class CartTest extends \PHPUnit_Framework_TestCase
         $this->assertEquals($this->responseMock, $this->model->execute());
     }
 
+    /**
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
+     */
     public function testExecuteWithoutQuantityArrayAndConfigurable()
     {
         $itemId = 2;
diff --git a/dev/tests/unit/testsuite/Magento/Wishlist/Model/ItemTest.php b/dev/tests/unit/testsuite/Magento/Wishlist/Model/ItemTest.php
index 1f8e9b5f8996e4ded30ac2d71fd18953bf37e0ac..d9a1114eafb60d79031a094ea6887168c02547e7 100644
--- a/dev/tests/unit/testsuite/Magento/Wishlist/Model/ItemTest.php
+++ b/dev/tests/unit/testsuite/Magento/Wishlist/Model/ItemTest.php
@@ -192,11 +192,11 @@ class ItemTest extends \PHPUnit_Framework_TestCase
     {
         $code = 'someOption';
         $optionValue = 100;
-        $optionsOneMock = $this->getMockBuilder('Magento\Sales\Model\Quote\Item')
+        $optionsOneMock = $this->getMockBuilder('Magento\Quote\Model\Quote\Item')
             ->disableOriginalConstructor()
             ->setMethods(['getCode', '__wakeup', 'getValue'])
             ->getMock();
-        $optionsTwoMock = $this->getMockBuilder('Magento\Sales\Model\Quote\Item')
+        $optionsTwoMock = $this->getMockBuilder('Magento\Quote\Model\Quote\Item')
             ->disableOriginalConstructor()
             ->setMethods(['__wakeup', 'getValue'])
             ->getMock();
@@ -218,11 +218,11 @@ class ItemTest extends \PHPUnit_Framework_TestCase
         $code = 'someOption';
         $optionOneValue = 100;
         $optionTwoValue = 200;
-        $optionsOneMock = $this->getMockBuilder('Magento\Sales\Model\Quote\Item')
+        $optionsOneMock = $this->getMockBuilder('Magento\Quote\Model\Quote\Item')
             ->disableOriginalConstructor()
             ->setMethods(['getCode', '__wakeup', 'getValue'])
             ->getMock();
-        $optionsTwoMock = $this->getMockBuilder('Magento\Sales\Model\Quote\Item')
+        $optionsTwoMock = $this->getMockBuilder('Magento\Quote\Model\Quote\Item')
             ->disableOriginalConstructor()
             ->setMethods(['__wakeup', 'getValue'])
             ->getMock();
@@ -242,11 +242,11 @@ class ItemTest extends \PHPUnit_Framework_TestCase
     public function testCompareOptionsNegativeOptionsTwoHaveNotOption()
     {
         $code = 'someOption';
-        $optionsOneMock = $this->getMockBuilder('Magento\Sales\Model\Quote\Item')
+        $optionsOneMock = $this->getMockBuilder('Magento\Quote\Model\Quote\Item')
             ->disableOriginalConstructor()
             ->setMethods(['getCode', '__wakeup'])
             ->getMock();
-        $optionsTwoMock = $this->getMockBuilder('Magento\Sales\Model\Quote\Item')
+        $optionsTwoMock = $this->getMockBuilder('Magento\Quote\Model\Quote\Item')
             ->disableOriginalConstructor()
             ->setMethods(['__wakeup'])
             ->getMock();
diff --git a/dev/tests/unit/testsuite/Magento/Wishlist/Model/ObserverTest.php b/dev/tests/unit/testsuite/Magento/Wishlist/Model/ObserverTest.php
index ec1ea21e83ff95c20660ec3f1c0894352284f3f2..84409b56307636d882c3e3929b51cc9bfda8f5d6 100644
--- a/dev/tests/unit/testsuite/Magento/Wishlist/Model/ObserverTest.php
+++ b/dev/tests/unit/testsuite/Magento/Wishlist/Model/ObserverTest.php
@@ -148,7 +148,7 @@ class ObserverTest extends \PHPUnit_Framework_TestCase
             ->method('getEvent')
             ->willReturn($event);
 
-        $quoteItem = $this->getMockBuilder('Magento\Sales\Model\Quote\Item')
+        $quoteItem = $this->getMockBuilder('Magento\Quote\Model\Quote\Item')
             ->setMethods(['getProductId', 'getBuyRequest', '__wakeup'])
             ->disableOriginalConstructor()
             ->getMock();
@@ -168,7 +168,7 @@ class ObserverTest extends \PHPUnit_Framework_TestCase
             ->willReturn([$itemId => ['qty' => $itemQty, 'wishlist' => true]]);
 
         $cart = $this->getMockBuilder('Magento\Checkout\Model\Cart')->disableOriginalConstructor()->getMock();
-        $quote = $this->getMockBuilder('Magento\Sales\Model\Quote')
+        $quote = $this->getMockBuilder('Magento\Quote\Model\Quote')
             ->setMethods(['getCustomerId', 'getItemById', 'removeItem', '__wakeup'])
             ->disableOriginalConstructor()
             ->getMock();
diff --git a/dev/tests/unit/testsuite/Magento/Wishlist/Model/Rss/WishlistTest.php b/dev/tests/unit/testsuite/Magento/Wishlist/Model/Rss/WishlistTest.php
index 25835867f17d0663ac0951e047a499e9839a5f10..5ab6017080d670befceb66456d0b08439cbd9c70 100644
--- a/dev/tests/unit/testsuite/Magento/Wishlist/Model/Rss/WishlistTest.php
+++ b/dev/tests/unit/testsuite/Magento/Wishlist/Model/Rss/WishlistTest.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Wishlist\Model\Rss;
 
 class WishlistTest extends \PHPUnit_Framework_TestCase
diff --git a/dev/tools/Magento/Tools/Di/Code/Reader/ClassesScanner.php b/dev/tools/Magento/Tools/Di/Code/Reader/ClassesScanner.php
index 42076377419a344728227c49cf927d167ccb7135..97063a236a2f9543ebb4ab503ced1a75b059d0b2 100644
--- a/dev/tools/Magento/Tools/Di/Code/Reader/ClassesScanner.php
+++ b/dev/tools/Magento/Tools/Di/Code/Reader/ClassesScanner.php
@@ -41,7 +41,7 @@ class ClassesScanner
         }
         $classes = [];
         $recursiveIterator = new \RecursiveIteratorIterator(
-            new \RecursiveDirectoryIterator($realPath),
+            new \RecursiveDirectoryIterator($realPath, \FilesystemIterator::FOLLOW_SYMLINKS),
             \RecursiveIteratorIterator::SELF_FIRST
         );
         /** @var $fileItem \SplFileInfo */
diff --git a/dev/tools/Magento/Tools/Di/Code/Scanner/PhpScanner.php b/dev/tools/Magento/Tools/Di/Code/Scanner/PhpScanner.php
index 6346d51bd2f8c03a820f6a56ecb9642956784ef3..9f08a02568b5f6c771bd537799d3313719ec046c 100644
--- a/dev/tools/Magento/Tools/Di/Code/Scanner/PhpScanner.php
+++ b/dev/tools/Magento/Tools/Di/Code/Scanner/PhpScanner.php
@@ -68,6 +68,43 @@ class PhpScanner implements ScannerInterface
         return $absentFactories;
     }
 
+    /**
+     * Fetch factories from class constructor
+     *
+     * @param $file string
+     * @param $reflectionClass mixed
+     * @return array
+     */
+    protected function _fetchDataBuilders($file, $reflectionClass)
+    {
+        $absentDataBuilders = [];
+        if ($reflectionClass->hasMethod('__construct')) {
+            $constructor = $reflectionClass->getMethod('__construct');
+            $parameters = $constructor->getParameters();
+            /** @var $parameter \ReflectionParameter */
+            foreach ($parameters as $parameter) {
+                preg_match('/\[\s\<\w+?>\s([\w\\\\]+)/s', $parameter->__toString(), $matches);
+                if (isset($matches[1]) && substr($matches[1], -11) == 'DataBuilder') {
+                    $factoryClassName = $matches[1];
+                    if (class_exists($factoryClassName)) {
+                        continue;
+                    }
+                    $entityName = rtrim(substr($factoryClassName, 0, -11), '\\');
+                    if (!class_exists($entityName) && !interface_exists($entityName . 'Interface')) {
+                        $this->_log->add(
+                            Log::CONFIGURATION_ERROR,
+                            $factoryClassName,
+                            'Invalid DataBuilder for nonexistent class ' . $entityName . ' in file ' . $file
+                        );
+                        continue;
+                    }
+                    $absentDataBuilders[] = $factoryClassName;
+                }
+            }
+        }
+        return $absentDataBuilders;
+    }
+
     /**
      * Get array of class names
      *
@@ -82,8 +119,9 @@ class PhpScanner implements ScannerInterface
             foreach ($classes as $className) {
                 $reflectionClass = new \ReflectionClass($className);
                 $absentFactories = $this->_fetchFactories($file, $reflectionClass);
+                $absentDataBuilders = $this->_fetchDataBuilders($file, $reflectionClass);
                 if (!empty($absentFactories)) {
-                    $output = array_merge($output, $absentFactories);
+                    $output = array_merge($output, $absentFactories, $absentDataBuilders);
                 }
             }
         }
diff --git a/dev/tools/Magento/Tools/Di/Code/Scanner/RepositoryScanner.php b/dev/tools/Magento/Tools/Di/Code/Scanner/RepositoryScanner.php
new file mode 100644
index 0000000000000000000000000000000000000000..02c7eba33062acd27b651bd86fb5b337914b62d5
--- /dev/null
+++ b/dev/tools/Magento/Tools/Di/Code/Scanner/RepositoryScanner.php
@@ -0,0 +1,52 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+namespace Magento\Tools\Di\Code\Scanner;
+
+/**
+ * Class RepositoryScanner
+ */
+class RepositoryScanner implements ScannerInterface
+{
+    /**
+     * Get array of class names
+     *
+     * @param array $files
+     * @return array
+     */
+    public function collectEntities(array $files)
+    {
+        $repositoryClassNames = [];
+        foreach ($files as $fileName) {
+            $dom = new \DOMDocument();
+            $dom->loadXML(file_get_contents($fileName));
+            $xpath = new \DOMXPath($dom);
+            /** @var $node \DOMNode */
+            foreach ($xpath->query('//preference') as $node) {
+                $forType = $node->attributes->getNamedItem('for');
+                $replacementType = $node->attributes->getNamedItem('type');
+                if (
+                    !is_null($forType)
+                    && !is_null($replacementType)
+                    && (substr($forType->nodeValue, -19) == 'RepositoryInterface')
+                ) {
+                    if (!class_exists($replacementType->nodeValue)) {
+                        $persistor = str_replace('\\Repository', 'InterfacePersistor', $replacementType->nodeValue);
+                        $factory = str_replace('\\Repository', 'InterfaceFactory', $replacementType->nodeValue);
+                        $dataBuilder = str_replace('\\Repository', 'DataBuilder', $replacementType->nodeValue);
+                        $searchResultFactory
+                            = str_replace('\\Repository', 'SearchResultInterfaceFactory', $replacementType->nodeValue);
+                        $repositoryClassNames[$persistor] = $persistor;
+                        $repositoryClassNames[$factory] = $factory;
+                        $repositoryClassNames[$dataBuilder] = $dataBuilder;
+                        $repositoryClassNames[$searchResultFactory] = $searchResultFactory;
+                        $repositoryClassNames[$replacementType->nodeValue] = $replacementType->nodeValue;
+                    }
+                }
+            }
+        }
+        return $repositoryClassNames;
+    }
+}
diff --git a/dev/tools/Magento/Tools/Di/Compiler/Config/Reader.php b/dev/tools/Magento/Tools/Di/Compiler/Config/Reader.php
index 8dca09ef4e27dacae6fbf977937939595c9b0851..f885f6fd12cd39318664c508c9d80c7c9a426a96 100644
--- a/dev/tools/Magento/Tools/Di/Compiler/Config/Reader.php
+++ b/dev/tools/Magento/Tools/Di/Compiler/Config/Reader.php
@@ -1,6 +1,5 @@
 <?php
 /**
- *
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
@@ -49,7 +48,7 @@ class Reader
      * @param Type $typeReader
      */
     public function __construct(
-        \Magento\Framework\ObjectManager\ConfigInterface $diContainerConfig,
+        ConfigInterface $diContainerConfig,
         App\ObjectManager\ConfigLoader $configLoader,
         ArgumentsResolverFactory $argumentsResolverFactory,
         ClassReaderDecorator $classReaderDecorator,
@@ -80,12 +79,15 @@ class Reader
         }
 
         $config = [];
+        
+        $this->fillThirdPartyInterfaces($areaConfig, $definitionsCollection);
         $config['arguments'] = $this->getConfigForScope($definitionsCollection, $areaConfig);
         foreach ($config['arguments'] as $key => $value) {
             if ($value !== null) {
                 $config['arguments'][$key] = serialize($value);
             }
         }
+
         foreach ($definitionsCollection->getInstancesNamesList() as $instanceName) {
             if (!$areaConfig->isShared($instanceName)) {
                 $config['nonShared'][$instanceName] = true;
@@ -95,6 +97,7 @@ class Reader
                 $config['preferences'][$instanceName] = $preference;
             }
         }
+
         foreach (array_keys($areaConfig->getVirtualTypes()) as $virtualType) {
             $config['instanceTypes'][$virtualType] = $areaConfig->getInstanceType($virtualType);
         }
@@ -140,4 +143,26 @@ class Reader
         }
         return $constructors;
     }
+
+    /**
+     * Returns preferences for third party code
+     *
+     * @param ConfigInterface $config
+     * @param DefinitionsCollection $definitionsCollection
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
+     *
+     * @return void
+     */
+    private function fillThirdPartyInterfaces(ConfigInterface $config, DefinitionsCollection $definitionsCollection)
+    {
+        $definedInstances = $definitionsCollection->getInstancesNamesList();
+
+        foreach ($config->getPreferences() as $interface => $preference) {
+            if (in_array($interface, $definedInstances)) {
+                continue;
+            }
+
+            $definitionsCollection->addDefinition($interface, []);
+        }
+    }
 }
diff --git a/dev/tools/Magento/Tools/Di/Definition/Collection.php b/dev/tools/Magento/Tools/Di/Definition/Collection.php
index 82638c7c5578d862fd0a24485624fe7f82b96879..580f930d24cdd59584306f0cd3eb62e696f0a170 100644
--- a/dev/tools/Magento/Tools/Di/Definition/Collection.php
+++ b/dev/tools/Magento/Tools/Di/Definition/Collection.php
@@ -1,6 +1,5 @@
 <?php
 /**
- *
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
@@ -33,7 +32,7 @@ class Collection
      *
      * @return void
      */
-    public function initialize($definitions)
+    public function initialize(array $definitions)
     {
         $this->definitions = $definitions;
     }
@@ -54,7 +53,7 @@ class Collection
      * Add new definition for instance
      *
      * @param string $instance
-     * @param array $arguments
+     * @param array|null $arguments
      *
      * @return void
      */
@@ -67,7 +66,7 @@ class Collection
      * Returns instance arguments
      *
      * @param string $instanceName
-     * @return null
+     * @return null|array
      */
     public function getInstanceArguments($instanceName)
     {
diff --git a/dev/tools/Magento/Tools/Di/compiler.php b/dev/tools/Magento/Tools/Di/compiler.php
index fc0958c7d77a78ae142753096ce858d85f25a496..7bc5ed4baf4561ba27085b63fa94888aa104a9a7 100644
--- a/dev/tools/Magento/Tools/Di/compiler.php
+++ b/dev/tools/Magento/Tools/Di/compiler.php
@@ -16,6 +16,7 @@ use Magento\Framework\ObjectManager\Code\Generator\Converter;
 use Magento\Framework\ObjectManager\Code\Generator\Factory;
 use Magento\Framework\ObjectManager\Code\Generator\Proxy;
 use Magento\Framework\ObjectManager\Code\Generator\Repository;
+use Magento\Framework\ObjectManager\Code\Generator\Persistor;
 use Magento\Tools\Di\Code\Scanner;
 use Magento\Tools\Di\Compiler\Directory;
 use Magento\Tools\Di\Compiler\Log\Log;
@@ -71,6 +72,9 @@ try {
     $files['additional'] = [$opt->getOption('extra-classes-file')];
     $entities = [];
 
+    $repositoryScanner = new Scanner\RepositoryScanner();
+    $repositories = $repositoryScanner->collectEntities($files['di']);
+
     $scanner = new Scanner\CompositeScanner();
     $scanner->addChild(new Scanner\PhpScanner($log), 'php');
     $scanner->addChild(new Scanner\XmlScanner($log), 'di');
@@ -95,6 +99,7 @@ try {
             Proxy::ENTITY_TYPE => 'Magento\Framework\ObjectManager\Code\Generator\Proxy',
             Factory::ENTITY_TYPE => 'Magento\Framework\ObjectManager\Code\Generator\Factory',
             Mapper::ENTITY_TYPE => 'Magento\Framework\Api\Code\Generator\Mapper',
+            Persistor::ENTITY_TYPE => 'Magento\Framework\ObjectManager\Code\Generator\Persistor',
             Repository::ENTITY_TYPE => 'Magento\Framework\ObjectManager\Code\Generator\Repository',
             Converter::ENTITY_TYPE => 'Magento\Framework\ObjectManager\Code\Generator\Converter',
             SearchResults::ENTITY_TYPE => 'Magento\Framework\Api\Code\Generator\SearchResults',
@@ -103,6 +108,26 @@ try {
 
     $generatorAutoloader = new \Magento\Framework\Code\Generator\Autoloader($generator);
     spl_autoload_register([$generatorAutoloader, 'load']);
+
+
+
+    foreach ($repositories as $entityName) {
+        switch ($generator->generateClass($entityName)) {
+            case \Magento\Framework\Code\Generator::GENERATION_SUCCESS:
+                $log->add(Log::GENERATION_SUCCESS, $entityName);
+                break;
+
+            case \Magento\Framework\Code\Generator::GENERATION_ERROR:
+                $log->add(Log::GENERATION_ERROR, $entityName);
+                break;
+
+            case \Magento\Framework\Code\Generator::GENERATION_SKIP:
+            default:
+                //no log
+                break;
+        }
+    }
+
     foreach (['php', 'additional'] as $type) {
         sort($entities[$type]);
         foreach ($entities[$type] as $entityName) {
diff --git a/dev/tools/Magento/Tools/Migration/System/Configuration/Mapper.php b/dev/tools/Magento/Tools/Migration/System/Configuration/Mapper.php
index 03f583ab05dc26b2a980ff6ddc6bea6e21f95774..4955147661c5b61bdf58a5d7ebbd513d66ba103a 100644
--- a/dev/tools/Magento/Tools/Migration/System/Configuration/Mapper.php
+++ b/dev/tools/Magento/Tools/Migration/System/Configuration/Mapper.php
@@ -38,7 +38,7 @@ class Mapper
     public function transform(array $config)
     {
         $output = [];
-        $output['comment'] = $config['comment'];
+        $output['comment'] = isset($config['comment']) ? $config['comment'] : '';
 
         $tabsConfig = isset($config['tabs']) ? $config['tabs'] : [];
         $sectionsConfig = isset($config['sections']) ? $config['sections'] : [];
diff --git a/dev/tools/Magento/Tools/Migration/factory_table_names/replace_ce.php b/dev/tools/Magento/Tools/Migration/factory_table_names/replace_ce.php
index a642173f7fd1b3df7c07d204b637bf5dd3044d6b..f386bfb6e2670e8b9e93a020c5baa7eee36d0ca7 100644
--- a/dev/tools/Magento/Tools/Migration/factory_table_names/replace_ce.php
+++ b/dev/tools/Magento/Tools/Migration/factory_table_names/replace_ce.php
@@ -303,13 +303,13 @@ return [
     'sales/order_status_state' => 'sales_order_status_state',
     'sales/order_tax' => 'sales_order_tax',
     'sales/payment_transaction' => 'sales_payment_transaction',
-    'sales/quote' => 'sales_quote',
-    'sales/quote_address' => 'sales_quote_address',
-    'sales/quote_address_item' => 'sales_quote_address_item',
-    'sales/quote_address_shipping_rate' => 'sales_quote_shipping_rate',
-    'sales/quote_item' => 'sales_quote_item',
-    'sales/quote_item_option' => 'sales_quote_item_option',
-    'sales/quote_payment' => 'sales_quote_payment',
+    'sales/quote' => 'quote',
+    'sales/quote_address' => 'quote_address',
+    'sales/quote_address_item' => 'quote_address_item',
+    'sales/quote_address_shipping_rate' => 'quote_shipping_rate',
+    'sales/quote_item' => 'quote_item',
+    'sales/quote_item_option' => 'quote_item_option',
+    'sales/quote_payment' => 'quote_payment',
     'sales/refunded_aggregated' => 'sales_refunded_aggregated',
     'sales/refunded_aggregated_order' => 'sales_refunded_aggregated_order',
     'sales/shipment' => 'sales_shipment',
@@ -321,11 +321,11 @@ return [
     'sales/shipping_aggregated_order' => 'sales_shipping_aggregated_order',
     'sales_entity/order' => 'sales_order',
     'sales_entity/order_entity' => 'sales_order_entity',
-    'sales_entity/quote' => 'sales_quote',
-    'sales_entity/quote_address' => 'sales_quote_address',
-    'sales_entity/quote_entity' => 'sales_quote_entity',
-    'sales_entity/quote_item' => 'sales_quote_item',
-    'sales_entity/quote_temp' => 'sales_quote_temp',
+    'sales_entity/quote' => 'quote',
+    'sales_entity/quote_address' => 'quote_address',
+    'sales_entity/quote_entity' => 'quote_entity',
+    'sales_entity/quote_item' => 'quote_item',
+    'sales_entity/quote_temp' => 'quote_temp',
     'salesrule/coupon' => 'salesrule_coupon',
     'salesrule/coupon_aggregated' => 'coupon_aggregated',
     'salesrule/coupon_aggregated_order' => 'coupon_aggregated_order',
diff --git a/dev/tools/performance-toolkit/README.txt b/dev/tools/performance-toolkit/README.txt
index f4bf6427b5f14935dbaf419bb988b44a29bf5b96..0a94b4e4b38c845d0c51f1069f88a65c14e7ff10 100644
--- a/dev/tools/performance-toolkit/README.txt
+++ b/dev/tools/performance-toolkit/README.txt
@@ -4,19 +4,27 @@ Performance Toolkit
 Installation
 -----------
 jMeter:
--- go to http://jmeter.apache.org/download_jmeter.cgi and download jMeter in Source section (pay you attention that Java 6 or later is required)
+-- go to http://jmeter.apache.org/download_jmeter.cgi and download jMeter in Binary section (pay you attention that Java 6 or later is required)
 -- unzip archive
 
 Plugins (only if you want to use additional reports (like graphs)):
 -- go to http://jmeter-plugins.org/downloads/all/ and download JMeterPlugins-Standard and JMeterPlugins-Extras
 -- unzip them to appropriate ext directory of your jMeter instance.
+-- additional reports can now be enabled via GUI (right click them, then click Enable) or editing the jMeter JMX XML (set 'enabled="true"').
 
 
 Usage
 -----------
+Before running the jMeter tests for the first time, you will need to first use generate.php to generate the test data.
+
+If you do not wish to use performance metrics gathered from the server(s) (such as CPU / IO load), or do not wish to configure the jMeter metric gathering software on your server(s), you can disable that either via the GUI (right click on "Performance Metrics Collector" and click Disable) or by editing the jMeter JMX XML from:
+<kg.apc.jmeter.perfmon.PerfMonCollector guiclass="kg.apc.jmeter.vizualizers.PerfMonGui" testclass="kg.apc.jmeter.perfmon.PerfMonCollector" testname="Performance Metrics Collector" enabled="true">
+to:
+<kg.apc.jmeter.perfmon.PerfMonCollector guiclass="kg.apc.jmeter.vizualizers.PerfMonGui" testclass="kg.apc.jmeter.perfmon.PerfMonCollector" testname="Performance Metrics Collector" enabled="false">
+Attempting to run with Performance Metrics Collector enabled without appropriately configuring it will result in a timeout error connecting to the collector and the test not running.
 
 1. Run via console
-Scenario can accept 5 parameters that are described bellow in format <parameter_name:default_value>:
+Scenario can accept parameters that are described bellow in format <parameter_name:default_value>:
 
 <host:''> URL component 'host' of application being tested (URL or IP).
 <base_path:'/'> Base path for tested site.
@@ -24,6 +32,18 @@ Scenario can accept 5 parameters that are described bellow in format <parameter_
 <ramp_period:300> Ramp period (seconds). Period the request will be distributed within.
 <orders:0> Number of orders in the period specified in the current allocation. If <orders> is specified, the <users> parameter will be recalculated.
 <report_save_path:./> Path where reports will be saved. Reports will be saved in current working directory by default.
+<admin_path:backend/> Admin backend path. Default is backend.
+<admin_user:admin/> Admin backend user. Default is admin.
+<admin_password:123123q/> Admin backend password. Default is 123123q.
+<view_product_add_to_cart_percent:62/> Percentage of users that will only reach the add to cart stage. Default is 62.
+<view_catalog_percent:30/> Percentage of users that will only reach the view catalog stage. Default is 30.
+<guest_checkout_percent:4/> Percentage of users that will reach the guest checkout stage. Default is 4.
+<customer_checkout_percent:4/> Percentage of users that will reach the (logged-in) customer checkout stage. Default is 4.
+<loops:1/> Number of loops to run. Default is 1.
+<jmeter_agent_port:3450/> jMeter agent port. Default is 3450.
+<db_server_ip:10.62.51.150/> DB Server IP (for jMeter Performance Metrics). Default is 10.62.51.150.
+<web_server_1_ip:10.62.51.185/> Web Server 1 IP (for jMeter Performance Metrics). Default is 10.62.51.185.
+<web_server_2_ip:10.62.51.186/> Web Server 2 IP (for jMeter Performance Metrics). Default is 10.62.51.186.
 
 All parameters must be passed to command line with "J" prefix: "-J<parameter_name>=<parameter_value>"
 
diff --git a/lib/internal/Magento/Framework/Acl/Resource/Provider.php b/lib/internal/Magento/Framework/Acl/Resource/Provider.php
index 73a405f88c27b68c65694eec9f818583291db4e8..c85b13805249a09920baacc9f81b394d09324074 100644
--- a/lib/internal/Magento/Framework/Acl/Resource/Provider.php
+++ b/lib/internal/Magento/Framework/Acl/Resource/Provider.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Acl\Resource;
 
 class Provider implements ProviderInterface
diff --git a/lib/internal/Magento/Framework/App/Action/Action.php b/lib/internal/Magento/Framework/App/Action/Action.php
index 335d6d57a47b21b5ac76cb645f0fcfaa009c87d1..38e64f43b23e06331703729e065501a48a2628c7 100644
--- a/lib/internal/Magento/Framework/App/Action/Action.php
+++ b/lib/internal/Magento/Framework/App/Action/Action.php
@@ -12,6 +12,7 @@ use Magento\Framework\App\ResponseInterface;
  * Default implementation of application action controller
  *
  * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ * @SuppressWarnings(PHPMD.NumberOfChildren)
  */
 class Action extends AbstractAction
 {
diff --git a/lib/internal/Magento/Framework/App/Cache/ManagerApp.php b/lib/internal/Magento/Framework/App/Cache/ManagerApp.php
index 19ec0976a14ca51506ac60a0d6d1968252e023c0..15f2f92ddf81fd1b66aebd41c93b1c211b405306 100644
--- a/lib/internal/Magento/Framework/App/Cache/ManagerApp.php
+++ b/lib/internal/Magento/Framework/App/Cache/ManagerApp.php
@@ -22,6 +22,7 @@ class ManagerApp implements AppInterface
     const KEY_SET = 'set';
     const KEY_CLEAN = 'clean';
     const KEY_FLUSH = 'flush';
+    const KEY_STATUS = 'status';
     /**#@- */
 
     /**
@@ -65,6 +66,7 @@ class ManagerApp implements AppInterface
     /**
      * {@inheritdoc}
      * @return Response
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function launch()
     {
@@ -89,18 +91,24 @@ class ManagerApp implements AppInterface
         }
         if (isset($this->requestArgs[self::KEY_FLUSH])) {
             $this->cacheManager->flush($types);
-            $output[] = 'Flushed cache types: ' . join(', ', $types);
+            $output[] = 'Flushed cache types:';
+            $output[] = join("\n", $types);
         } elseif (isset($this->requestArgs[self::KEY_CLEAN])) {
             $this->cacheManager->clean($types);
-            $output[] = 'Cleaned cache types: ' . join(', ', $types);
+            $output[] = 'Cleaned cache types:';
+            $output[] = join("\n", $types);
+        } elseif (isset($this->requestArgs[self::KEY_STATUS])) {
+            $output[] = 'Current status:';
+            foreach ($this->cacheManager->getStatus() as $cache => $status) {
+                $output[] = sprintf('%30s: %d', $cache, $status);
+            }
         } elseif (!empty($enabledTypes)) {
             $this->cacheManager->clean($enabledTypes);
-            $output[] = 'Cleaned cache types: ' . join(', ', $enabledTypes);
-        }
-        $output[] = 'Current status:';
-        foreach ($this->cacheManager->getStatus() as $cache => $status) {
-            $output[] = sprintf('%30s: %d', $cache, $status);
+            $output[] = 'Cleaned cache types:';
+            $output[] = join("\n", $enabledTypes);
         }
+
+        $output[] = '';
         $this->response->setBody(join("\n", $output));
         return $this->response;
     }
diff --git a/lib/internal/Magento/Framework/AppInterface.php b/lib/internal/Magento/Framework/AppInterface.php
index 38611244f02a877ffee4ac33d615e3929eef80a9..4e7bbb51df6b148986e3578fa2264199a77d65ff 100644
--- a/lib/internal/Magento/Framework/AppInterface.php
+++ b/lib/internal/Magento/Framework/AppInterface.php
@@ -17,7 +17,7 @@ interface AppInterface
     /**
      * Magento version
      */
-    const VERSION = '0.42.0-beta3';
+    const VERSION = '0.42.0-beta4';
 
     /**
      * Launch application
diff --git a/lib/internal/Magento/Framework/Archive/Helper/File.php b/lib/internal/Magento/Framework/Archive/Helper/File.php
index 9336f7af13bf3ca5ce44d14dabb0da9e3bed248a..f824c06a7b0410d0c13a9ea5aadd4b7c10143c27 100644
--- a/lib/internal/Magento/Framework/Archive/Helper/File.php
+++ b/lib/internal/Magento/Framework/Archive/Helper/File.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
 * Helper class that simplifies files stream reading and writing
 */
@@ -86,6 +88,7 @@ class File
      * @param int $chmod
      * @return void
      * @throws MagentoException
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function open($mode = 'w+', $chmod = 0666)
     {
diff --git a/lib/internal/Magento/Framework/Archive/Helper/File/Gz.php b/lib/internal/Magento/Framework/Archive/Helper/File/Gz.php
index d3eca2ecd529c43fbdeb6330085ee68c5a35bc7d..52d18ed04f0430aa6206d48273fb01cd3ed6d4f7 100644
--- a/lib/internal/Magento/Framework/Archive/Helper/File/Gz.php
+++ b/lib/internal/Magento/Framework/Archive/Helper/File/Gz.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
 * Helper class that simplifies gz files stream reading and writing
 */
diff --git a/lib/internal/Magento/Framework/Archive/Tar.php b/lib/internal/Magento/Framework/Archive/Tar.php
index 85a838cae1623ef7575c44de665483e643bd2314..d8a532e0cc25ac4213c2eaaf3ffe239f8ca8a707 100644
--- a/lib/internal/Magento/Framework/Archive/Tar.php
+++ b/lib/internal/Magento/Framework/Archive/Tar.php
@@ -311,6 +311,8 @@ class Tar extends \Magento\Framework\Archive\AbstractArchive implements \Magento
      *
      * @param bool $long
      * @return string
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _composeHeader($long = false)
     {
@@ -380,6 +382,7 @@ class Tar extends \Magento\Framework\Archive\AbstractArchive implements \Magento
      * @param string $destination path to file is unpacked
      * @return string[] list of files
      * @throws \Magento\Framework\Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _unpackCurrentTar($destination)
     {
@@ -515,6 +518,7 @@ class Tar extends \Magento\Framework\Archive\AbstractArchive implements \Magento
      * @param string $destination
      * @param bool $skipRoot
      * @return string
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function pack($source, $destination, $skipRoot = false)
     {
diff --git a/lib/internal/Magento/Framework/Backup/AbstractBackup.php b/lib/internal/Magento/Framework/Backup/AbstractBackup.php
index fbf1d5375ea7abcb23703e342980c00413cd4a20..f980455dd5a6afd73d54141f63cf5cbff7d6778b 100644
--- a/lib/internal/Magento/Framework/Backup/AbstractBackup.php
+++ b/lib/internal/Magento/Framework/Backup/AbstractBackup.php
@@ -216,6 +216,7 @@ abstract class AbstractBackup implements BackupInterface
      * Check whether last operation completed successfully
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsSuccess()
     {
diff --git a/lib/internal/Magento/Framework/Backup/Archive/Tar.php b/lib/internal/Magento/Framework/Backup/Archive/Tar.php
index 8920bf2f730f6612df1203850b4b61fe9957084f..19d96a80a58498fac20f044fd8a0d4bcb7507fc3 100644
--- a/lib/internal/Magento/Framework/Backup/Archive/Tar.php
+++ b/lib/internal/Magento/Framework/Backup/Archive/Tar.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Extended version of \Magento\Framework\Archive\Tar that supports filtering
  *
diff --git a/lib/internal/Magento/Framework/Backup/Db/BackupFactory.php b/lib/internal/Magento/Framework/Backup/Db/BackupFactory.php
index 8f0c18e8755288d43722c87c4d8c9af8dd328c2e..fc89599c1672a3b9bc147092dfb1bc23d489c50d 100644
--- a/lib/internal/Magento/Framework/Backup/Db/BackupFactory.php
+++ b/lib/internal/Magento/Framework/Backup/Db/BackupFactory.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Backup\Db;
 
 class BackupFactory
diff --git a/lib/internal/Magento/Framework/Backup/Factory.php b/lib/internal/Magento/Framework/Backup/Factory.php
index 6f680945b0663c1d3f2c3eb8bb7c97461aae24e1..ba120c45615844b441b490d86e5bd9ba8e3be44b 100644
--- a/lib/internal/Magento/Framework/Backup/Factory.php
+++ b/lib/internal/Magento/Framework/Backup/Factory.php
@@ -5,6 +5,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Backup;
 
 class Factory
diff --git a/lib/internal/Magento/Framework/Backup/Filesystem.php b/lib/internal/Magento/Framework/Backup/Filesystem.php
index e3a9cb1fd1bd5e5edc70410bfc88993a21719b3e..24ffe43be56c49f15cdc8fcdf4f85b45bbc50e04 100644
--- a/lib/internal/Magento/Framework/Backup/Filesystem.php
+++ b/lib/internal/Magento/Framework/Backup/Filesystem.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Backup;
 
 /**
diff --git a/lib/internal/Magento/Framework/Backup/Filesystem/Helper.php b/lib/internal/Magento/Framework/Backup/Filesystem/Helper.php
index a549234baca5670e6135332936a78572f42171ed..5a2df37545d25b7ad98a628dedab4d505d86b63b 100644
--- a/lib/internal/Magento/Framework/Backup/Filesystem/Helper.php
+++ b/lib/internal/Magento/Framework/Backup/Filesystem/Helper.php
@@ -52,6 +52,7 @@ class Helper
      * @param bool $removeRoot
      * @return void
      * @throws \Magento\Framework\Exception
+     * @SuppressWarnings(PHPMD.ShortMethodName)
      */
     public function rm($path, $skipPaths = [], $removeRoot = false)
     {
@@ -78,6 +79,8 @@ class Helper
      * @param int $infoOptions
      * @param array $skipFiles
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function getInfo($path, $infoOptions = self::INFO_ALL, $skipFiles = [])
     {
diff --git a/lib/internal/Magento/Framework/Backup/Filesystem/Rollback/Ftp.php b/lib/internal/Magento/Framework/Backup/Filesystem/Rollback/Ftp.php
index b4510f077d81ad88748e1c5118135c7db33ee0c9..b9c0a9c6270db7bfac6e92fa5fad3df7211a69cf 100644
--- a/lib/internal/Magento/Framework/Backup/Filesystem/Rollback/Ftp.php
+++ b/lib/internal/Magento/Framework/Backup/Filesystem/Rollback/Ftp.php
@@ -158,6 +158,7 @@ class Ftp extends AbstractRollback
      * @param string $tmpDir
      * @return void
      * @throws \Magento\Framework\Exception
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     protected function _uploadBackupToFtp($tmpDir)
     {
diff --git a/lib/internal/Magento/Framework/Cache/Backend/Database.php b/lib/internal/Magento/Framework/Cache/Backend/Database.php
index fb2d2ebecf69d64acfe839e748a64dbe90af0ebe..b1233e1301b24e981d92dd8a0c98c02217390225 100644
--- a/lib/internal/Magento/Framework/Cache/Backend/Database.php
+++ b/lib/internal/Magento/Framework/Cache/Backend/Database.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
 Tables declaration:
 
@@ -499,6 +501,7 @@ class Database extends \Zend_Cache_Backend implements \Zend_Cache_Backend_Extend
      * @param string $mode
      * @param string[] $tags
      * @return bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _cleanByTags($mode, $tags)
     {
diff --git a/lib/internal/Magento/Framework/Cache/Backend/Eaccelerator.php b/lib/internal/Magento/Framework/Cache/Backend/Eaccelerator.php
index cf4e05ea3ffbf43910ffa87095f11497fc932a90..9a3d4272af4dcb8161a2c4daabfcf9484d55f257 100644
--- a/lib/internal/Magento/Framework/Cache/Backend/Eaccelerator.php
+++ b/lib/internal/Magento/Framework/Cache/Backend/Eaccelerator.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Cache\Backend;
 
 class Eaccelerator extends \Zend_Cache_Backend implements \Zend_Cache_Backend_ExtendedInterface
@@ -36,6 +39,7 @@ class Eaccelerator extends \Zend_Cache_Backend implements \Zend_Cache_Backend_Ex
      * @param  string  $id                     cache id
      * @param  boolean $doNotTestCacheValidity if set to true, the cache validity won't be tested
      * @return string cached datas (or false)
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function load($id, $doNotTestCacheValidity = false)
     {
@@ -108,6 +112,7 @@ class Eaccelerator extends \Zend_Cache_Backend implements \Zend_Cache_Backend_Ex
      * @param string[] $tags array of tags
      * @throws \Zend_Cache_Exception
      * @return bool|void true if no problem
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function clean($mode = \Zend_Cache::CLEANING_MODE_ALL, $tags = [])
     {
@@ -170,6 +175,7 @@ class Eaccelerator extends \Zend_Cache_Backend implements \Zend_Cache_Backend_Ex
      *
      * @param array $tags array of tags
      * @return string[] array of matching cache ids (string)
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function getIdsMatchingTags($tags = [])
     {
@@ -184,6 +190,7 @@ class Eaccelerator extends \Zend_Cache_Backend implements \Zend_Cache_Backend_Ex
      *
      * @param string[] $tags array of tags
      * @return string[] array of not matching cache ids (string)
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function getIdsNotMatchingTags($tags = [])
     {
@@ -198,6 +205,7 @@ class Eaccelerator extends \Zend_Cache_Backend implements \Zend_Cache_Backend_Ex
      *
      * @param string[] $tags array of tags
      * @return string[] array of any matching cache ids (string)
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function getIdsMatchingAnyTags($tags = [])
     {
@@ -209,6 +217,7 @@ class Eaccelerator extends \Zend_Cache_Backend implements \Zend_Cache_Backend_Ex
      * Return an array of stored cache ids
      *
      * @return string[] array of stored cache ids (string)
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function getIds()
     {
@@ -230,6 +239,7 @@ class Eaccelerator extends \Zend_Cache_Backend implements \Zend_Cache_Backend_Ex
      *
      * @param string $id cache id
      * @return array|false array of metadatas (false if the cache id is not found)
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function getMetadatas($id)
     {
diff --git a/lib/internal/Magento/Framework/Code/Reader/ArgumentsReader.php b/lib/internal/Magento/Framework/Code/Reader/ArgumentsReader.php
index 697903f2504dc9e1d23ef6ef1cf91257b3b3ecd3..98eafe0f910928432718435f533c032980bd8e38 100644
--- a/lib/internal/Magento/Framework/Code/Reader/ArgumentsReader.php
+++ b/lib/internal/Magento/Framework/Code/Reader/ArgumentsReader.php
@@ -16,6 +16,8 @@ class ArgumentsReader
      * @param bool $groupByPosition
      * @param bool $inherited
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function getConstructorArguments(\ReflectionClass $class, $groupByPosition = false, $inherited = false)
     {
diff --git a/lib/internal/Magento/Framework/Code/Reader/SourceArgumentsReader.php b/lib/internal/Magento/Framework/Code/Reader/SourceArgumentsReader.php
index c31fa9c00d8abd8a1620b08d0943dcb031e9bf13..29b48c744ba5ce72730faebe0cb820a8276da4a8 100644
--- a/lib/internal/Magento/Framework/Code/Reader/SourceArgumentsReader.php
+++ b/lib/internal/Magento/Framework/Code/Reader/SourceArgumentsReader.php
@@ -18,6 +18,9 @@ class SourceArgumentsReader
      * @param \ReflectionClass $class
      * @param bool $inherited
      * @return array List of constructor argument types.
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function getConstructorArgumentTypes(\ReflectionClass $class, $inherited = false)
     {
@@ -115,6 +118,7 @@ class SourceArgumentsReader
      *
      * @param array $file
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function getImportedNamespaces(array $file)
     {
diff --git a/lib/internal/Magento/Framework/Code/Validator/ArgumentSequence.php b/lib/internal/Magento/Framework/Code/Validator/ArgumentSequence.php
index 08fa179c95d0a4386b41df6336004329ffa5b891..382983e35db84b77357773a611b84258a81ef57a 100644
--- a/lib/internal/Magento/Framework/Code/Validator/ArgumentSequence.php
+++ b/lib/internal/Magento/Framework/Code/Validator/ArgumentSequence.php
@@ -40,6 +40,7 @@ class ArgumentSequence implements ValidatorInterface
      * @param string $className
      * @return bool
      * @throws ValidationException
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function validate($className)
     {
@@ -135,6 +136,8 @@ class ArgumentSequence implements ValidatorInterface
      * @param array $classArguments
      * @param array $parentArguments
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _buildsSequence(array $classArguments, array $parentArguments = [])
     {
diff --git a/lib/internal/Magento/Framework/Code/Validator/ConstructorIntegrity.php b/lib/internal/Magento/Framework/Code/Validator/ConstructorIntegrity.php
index 321ba05b1e7492adb7a55a72ebf7257c542ca5c5..63929f4a08ad7e24c1ff2ef93d3949fff6c7e7c9 100644
--- a/lib/internal/Magento/Framework/Code/Validator/ConstructorIntegrity.php
+++ b/lib/internal/Magento/Framework/Code/Validator/ConstructorIntegrity.php
@@ -30,6 +30,8 @@ class ConstructorIntegrity implements ValidatorInterface
      * @param string $className
      * @return bool
      * @throws \Magento\Framework\Code\ValidationException
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function validate($className)
     {
diff --git a/lib/internal/Magento/Framework/Composer/MagentoComponent.php b/lib/internal/Magento/Framework/Composer/MagentoComponent.php
new file mode 100644
index 0000000000000000000000000000000000000000..5e2da7bfa557e166d6f45e04efd1a584dac92a30
--- /dev/null
+++ b/lib/internal/Magento/Framework/Composer/MagentoComponent.php
@@ -0,0 +1,30 @@
+<?php
+/**
+ * Copyright © 2015 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+namespace Magento\Framework\Composer;
+
+class MagentoComponent
+{
+    /**
+     * Get matched Magento component or empty array, if it's not a Magento component
+     *
+     * @param string $key
+     * @return string[] ['type' => '<type>', 'area' => '<area>', 'name' => '<name>']
+     *             Ex.: ['type' => 'module', 'name' => 'catalog']
+     *                  ['type' => 'theme', 'area' => 'frontend', 'name' => 'blank']
+     */
+    public static function matchMagentoComponent($key)
+    {
+        $typePattern = 'module|theme|language|framework';
+        $areaPattern = 'frontend|adminhtml';
+        $namePattern = '[a-z_-]+';
+        $regex = '/^magento\/(?P<type>' . $typePattern . ')(?:-(?P<area>' . $areaPattern . '))?(?:-(?P<name>'
+            . $namePattern . '))?$/';
+        if (preg_match($regex, $key, $matches)) {
+            return $matches;
+        }
+        return [];
+    }
+}
diff --git a/lib/internal/Magento/Framework/Composer/README.md b/lib/internal/Magento/Framework/Composer/README.md
new file mode 100644
index 0000000000000000000000000000000000000000..fc92f73c2db20310df2d28e92c12972b78c8f80d
--- /dev/null
+++ b/lib/internal/Magento/Framework/Composer/README.md
@@ -0,0 +1,2 @@
+**Magento\Framework\Composer** provides Magento-specific features for working with packages.
+ For example, ability to distinguish Magento package and any other package.
diff --git a/lib/internal/Magento/Framework/Config/Composer/Package.php b/lib/internal/Magento/Framework/Config/Composer/Package.php
index ce9742f2c384f24a9fd21c66d39ea4903f899281..e9c3dfdab2fecc9b675310dcb97af370e01d0a85 100644
--- a/lib/internal/Magento/Framework/Config/Composer/Package.php
+++ b/lib/internal/Magento/Framework/Config/Composer/Package.php
@@ -59,6 +59,7 @@ class Package
      * @param string $propertyPath
      * @param string $filter pattern to filter out the properties
      * @return mixed
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function get($propertyPath, $filter = null)
     {
diff --git a/lib/internal/Magento/Framework/Config/Data.php b/lib/internal/Magento/Framework/Config/Data.php
index 8579c742b8e2e71483431cc952523077123aaedc..f3c09c5da4028cf3c6738fcdf1e4d813705df256 100644
--- a/lib/internal/Magento/Framework/Config/Data.php
+++ b/lib/internal/Magento/Framework/Config/Data.php
@@ -7,6 +7,9 @@
  */
 namespace Magento\Framework\Config;
 
+/**
+ * @SuppressWarnings(PHPMD.NumberOfChildren)
+ */
 class Data implements \Magento\Framework\Config\DataInterface
 {
     /**
diff --git a/lib/internal/Magento/Framework/Config/Dom.php b/lib/internal/Magento/Framework/Config/Dom.php
index fa789f9346b58846e1470e77c7d1c97e05b6c1d4..57c18e8e6eb021cde44233bfaa54e6d2cc06ef46 100644
--- a/lib/internal/Magento/Framework/Config/Dom.php
+++ b/lib/internal/Magento/Framework/Config/Dom.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Magento configuration XML DOM utility
  */
@@ -114,6 +116,7 @@ class Dom
      * @param \DOMElement $node
      * @param string $parentPath path to parent node
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _mergeNode(\DOMElement $node, $parentPath)
     {
diff --git a/lib/internal/Magento/Framework/Config/Theme.php b/lib/internal/Magento/Framework/Config/Theme.php
index 893f4dac1539099eac3a39d4bfa037ea734b7428..aaa6c4f95a45da7d2ed5bec0641783e61952efa7 100644
--- a/lib/internal/Magento/Framework/Config/Theme.php
+++ b/lib/internal/Magento/Framework/Config/Theme.php
@@ -50,11 +50,11 @@ class Theme
      *
      * @param string $configContent
      * @return array
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _extractData($configContent)
     {
         $data = [
-            'version' => null,
             'title' => null,
             'media' => null,
             'parent' => null,
@@ -72,8 +72,6 @@ class Theme
             $mediaNode = $themeNode->getElementsByTagName('media')->item(0);
             $previewImage = $mediaNode ? $mediaNode->getElementsByTagName('preview_image')->item(0)->nodeValue : '';
             $data['media']['preview_image'] = $previewImage;
-            $themeVersionNode = $themeNode->getElementsByTagName('version')->item(0);
-            $data['version'] = $themeVersionNode ? $themeVersionNode->nodeValue : null;
             $themeParentNode = $themeNode->getElementsByTagName('parent')->item(0);
             $data['parent'] = $themeParentNode ? $themeParentNode->nodeValue : null;
         }
@@ -81,16 +79,6 @@ class Theme
         return $data;
     }
 
-    /**
-     * Get title for specified package code
-     *
-     * @return string
-     */
-    public function getThemeVersion()
-    {
-        return $this->_data['version'];
-    }
-
     /**
      * Get title for specified theme and package code
      *
diff --git a/lib/internal/Magento/Framework/Config/etc/theme.xsd b/lib/internal/Magento/Framework/Config/etc/theme.xsd
index d44acc813ad22519991bea8ec6a4d850d4b56b5f..a0a0c3d79218962ba96299ed884072d83ad02e46 100644
--- a/lib/internal/Magento/Framework/Config/etc/theme.xsd
+++ b/lib/internal/Magento/Framework/Config/etc/theme.xsd
@@ -16,7 +16,6 @@
         <xs:complexType>
             <xs:sequence>
                 <xs:element name="title" type="title"/>
-                <xs:element name="version" type="version"/>
                 <xs:element name="parent" type="parent_theme" minOccurs="0"/>
                 <xs:element name="media" type="media" minOccurs="0"/>
             </xs:sequence>
@@ -36,12 +35,6 @@
         </xs:restriction>
     </xs:simpleType>
 
-    <xs:simpleType name="version">
-        <xs:restriction base="xs:string">
-            <xs:pattern value="(\d+.\d+.\d+(\-[a-zA-Z0-9]+)?)|\*"></xs:pattern>
-        </xs:restriction>
-    </xs:simpleType>
-
     <xs:complexType name="media">
         <xs:sequence>
             <xs:element name="preview_image" type="preview_image" maxOccurs="1"/>
diff --git a/lib/internal/Magento/Framework/CurrencyFactory.php b/lib/internal/Magento/Framework/CurrencyFactory.php
index 69f58e8255096955e0c7a5d3a2ee99bea4070f1e..a1a126aecd1f99f568e00437842cd9e652184fb6 100644
--- a/lib/internal/Magento/Framework/CurrencyFactory.php
+++ b/lib/internal/Magento/Framework/CurrencyFactory.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework;
 
 class CurrencyFactory
diff --git a/lib/internal/Magento/Framework/DB/AbstractMapper.php b/lib/internal/Magento/Framework/DB/AbstractMapper.php
index 2bc7d790dedd6b60bb4510086f6bca1875a963cc..7a1206c095b87ab59a779acd070667961b1c946d 100644
--- a/lib/internal/Magento/Framework/DB/AbstractMapper.php
+++ b/lib/internal/Magento/Framework/DB/AbstractMapper.php
@@ -15,6 +15,7 @@ use Magento\Framework\Object;
 /**
  * Class AbstractMapper
  * @package Magento\Framework\DB
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 abstract class AbstractMapper implements MapperInterface
 {
diff --git a/lib/internal/Magento/Framework/DB/Adapter/Pdo/Mysql.php b/lib/internal/Magento/Framework/DB/Adapter/Pdo/Mysql.php
index 654a741fcbe1c14ce18f96867752ec62c81814f5..83467bf6bcc316c254cdc91f4fd5809da49d9948 100644
--- a/lib/internal/Magento/Framework/DB/Adapter/Pdo/Mysql.php
+++ b/lib/internal/Magento/Framework/DB/Adapter/Pdo/Mysql.php
@@ -5,6 +5,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\DB\Adapter\Pdo;
 
 use Magento\Framework\Cache\FrontendInterface;
@@ -18,6 +21,12 @@ use Magento\Framework\DB\Statement\Parameter;
 use Magento\Framework\Stdlib\DateTime;
 use Magento\Framework\Stdlib\String;
 
+/**
+ * @SuppressWarnings(PHPMD.ExcessivePublicCount)
+ * @SuppressWarnings(PHPMD.TooManyFields)
+ * @SuppressWarnings(PHPMD.ExcessiveClassComplexity)
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class Mysql extends \Zend_Db_Adapter_Pdo_Mysql implements AdapterInterface
 {
     const TIMESTAMP_FORMAT      = 'Y-m-d H:i:s';
@@ -400,6 +409,7 @@ class Mysql extends \Zend_Db_Adapter_Pdo_Mysql implements AdapterInterface
      * @param mixed $bind An array of data or data itself to bind to the placeholders.
      * @return \Zend_Db_Statement_Pdo|void
      * @throws \Zend_Db_Adapter_Exception To re-throw \PDOException.
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function query($sql, $bind = [])
     {
@@ -651,6 +661,8 @@ class Mysql extends \Zend_Db_Adapter_Pdo_Mysql implements AdapterInterface
      *
      * @param string $sql
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _splitMultiQuery($sql)
     {
@@ -1130,6 +1142,9 @@ class Mysql extends \Zend_Db_Adapter_Pdo_Mysql implements AdapterInterface
      *
      * @param array $tables
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function modifyTables($tables)
     {
@@ -1516,6 +1531,8 @@ class Mysql extends \Zend_Db_Adapter_Pdo_Mysql implements AdapterInterface
      *
      * @param  array $columnData
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function getColumnCreateByDescribe($columnData)
     {
@@ -1657,6 +1674,7 @@ class Mysql extends \Zend_Db_Adapter_Pdo_Mysql implements AdapterInterface
      *
      * @param array $column
      * @return string
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _getColumnTypeByDdl($column)
     {
@@ -1753,6 +1771,8 @@ class Mysql extends \Zend_Db_Adapter_Pdo_Mysql implements AdapterInterface
      * @param array $fields update fields pairs or values
      * @return int The number of affected rows.
      * @throws \Zend_Db_Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function insertOnDuplicate($table, array $data, array $fields = [])
     {
@@ -1959,6 +1979,7 @@ class Mysql extends \Zend_Db_Adapter_Pdo_Mysql implements AdapterInterface
      * @param \Magento\Framework\DB\Ddl\Table $table
      * @throws \Zend_Db_Exception
      * @return \Zend_Db_Pdo_Statement
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function createTemporaryTable(\Magento\Framework\DB\Ddl\Table $table)
     {
@@ -2193,6 +2214,10 @@ class Mysql extends \Zend_Db_Adapter_Pdo_Mysql implements AdapterInterface
      * @throws \Magento\Framework\Exception
      * @return string
      * @throws \Zend_Db_Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     protected function _getColumnDefinition($options, $ddlType = null)
     {
@@ -2428,6 +2453,8 @@ class Mysql extends \Zend_Db_Adapter_Pdo_Mysql implements AdapterInterface
      * @return \Zend_Db_Statement_Interface
      * @throws \Zend_Db_Exception
      * @throws \Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function addIndex(
         $tableName,
@@ -2553,6 +2580,7 @@ class Mysql extends \Zend_Db_Adapter_Pdo_Mysql implements AdapterInterface
      * @param string $schemaName
      * @param string $refSchemaName
      * @return \Zend_Db_Statement_Interface
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function addForeignKey(
         $fkName,
@@ -2667,6 +2695,7 @@ class Mysql extends \Zend_Db_Adapter_Pdo_Mysql implements AdapterInterface
      * @param string $fieldName
      * @param integer|string|array $condition
      * @return string
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function prepareSqlCondition($fieldName, $condition)
     {
@@ -2773,6 +2802,9 @@ class Mysql extends \Zend_Db_Adapter_Pdo_Mysql implements AdapterInterface
      * @param array $column     the column describe array
      * @param mixed $value
      * @return mixed
+     *
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function prepareColumnValue(array $column, $value)
     {
@@ -3358,6 +3390,8 @@ class Mysql extends \Zend_Db_Adapter_Pdo_Mysql implements AdapterInterface
      * @param string|array $table
      * @return string
      * @throws \Magento\Framework\DB\DBException
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function updateFromSelect(Select $select, $table)
     {
diff --git a/lib/internal/Magento/Framework/DB/Ddl/Table.php b/lib/internal/Magento/Framework/DB/Ddl/Table.php
index ec7fe5d3385f638b1c754877cbbe044292d9224a..f1044732a712352479defd67010779f08e065b41 100644
--- a/lib/internal/Magento/Framework/DB/Ddl/Table.php
+++ b/lib/internal/Magento/Framework/DB/Ddl/Table.php
@@ -270,6 +270,9 @@ class Table
      * @param string $comment column description
      * @return $this
      * @throws \Zend_Db_Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public function addColumn($name, $type, $size = null, $options = [], $comment = null)
     {
@@ -405,6 +408,7 @@ class Table
      * @param string $onUpdate      the action on update
      * @return $this
      * @throws \Zend_Db_Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function addForeignKey($fkName, $column, $refTable, $refColumn, $onDelete = null, $onUpdate = null)
     {
@@ -455,6 +459,7 @@ class Table
      * @param array $options array of additional options
      * @return $this
      * @throws \Zend_Db_Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function addIndex($indexName, $fields, $options = [])
     {
diff --git a/lib/internal/Magento/Framework/DB/GenericMapper.php b/lib/internal/Magento/Framework/DB/GenericMapper.php
index 5b507baf56ce0f3f3462ea9a3840f9e5e0d4330f..d3e07450ae4736a4ac151075c505273729b32ac4 100644
--- a/lib/internal/Magento/Framework/DB/GenericMapper.php
+++ b/lib/internal/Magento/Framework/DB/GenericMapper.php
@@ -87,6 +87,7 @@ class GenericMapper extends AbstractMapper
      * @param array $fields
      * @throws \Zend_Db_Select_Exception
      * @return void
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function mapFields(array $fields)
     {
diff --git a/lib/internal/Magento/Framework/DB/Helper.php b/lib/internal/Magento/Framework/DB/Helper.php
index 59107055c6eae70862a27110d3e4c4b25f93a27f..31f404f4867b722ba850139c99626dc490b6767b 100644
--- a/lib/internal/Magento/Framework/DB/Helper.php
+++ b/lib/internal/Magento/Framework/DB/Helper.php
@@ -182,6 +182,8 @@ class Helper extends \Magento\Framework\DB\Helper\AbstractHelper
      * @param string|null $groupByCondition OPTIONAL
      * @return mixed|array
      * @throws \Zend_Db_Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function prepareColumnsList(\Magento\Framework\DB\Select $select, $groupByCondition = null)
     {
diff --git a/lib/internal/Magento/Framework/DB/MapperFactory.php b/lib/internal/Magento/Framework/DB/MapperFactory.php
index 495578f6261bd316ebd209a8e656df6d9bfb03a6..0c701803e9b30b750174c7020d1d6bbaf164f9c0 100644
--- a/lib/internal/Magento/Framework/DB/MapperFactory.php
+++ b/lib/internal/Magento/Framework/DB/MapperFactory.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\DB;
 
 /**
diff --git a/lib/internal/Magento/Framework/DB/QueryFactory.php b/lib/internal/Magento/Framework/DB/QueryFactory.php
index 90420d2c7cf05040007993d3253fa340619b3016..a78004fb03e48c4565b28379e825ebdbf3ad91d0 100644
--- a/lib/internal/Magento/Framework/DB/QueryFactory.php
+++ b/lib/internal/Magento/Framework/DB/QueryFactory.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\DB;
 
 /**
diff --git a/lib/internal/Magento/Framework/DB/Select.php b/lib/internal/Magento/Framework/DB/Select.php
index 2892a57da352ae5ff08fa4009c24e1c089d65577..41e87249ca198f4abecd7d2b42ef0a2d74b6fc94 100644
--- a/lib/internal/Magento/Framework/DB/Select.php
+++ b/lib/internal/Magento/Framework/DB/Select.php
@@ -184,6 +184,8 @@ class Select extends \Zend_Db_Select
      * Reset unused LEFT JOIN(s)
      *
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function resetJoinLeft()
     {
diff --git a/lib/internal/Magento/Framework/DB/Statement/Parameter.php b/lib/internal/Magento/Framework/DB/Statement/Parameter.php
index b1ada9687946f5172054056696cb6cdd8bddbadf..f7f887ff59fc4425e043a5dbfa70aef6888001ab 100644
--- a/lib/internal/Magento/Framework/DB/Statement/Parameter.php
+++ b/lib/internal/Magento/Framework/DB/Statement/Parameter.php
@@ -115,6 +115,7 @@ class Parameter
      * @return bool
      *
      * @see setIsBlob
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsBlob()
     {
diff --git a/lib/internal/Magento/Framework/DB/Statement/Pdo/Mysql.php b/lib/internal/Magento/Framework/DB/Statement/Pdo/Mysql.php
index 62a60436df2d3c582cb460fbe1f6aaa4acf009ba..0a98d1f658fa86e3271c50e6a7f58e35cfe882fe 100644
--- a/lib/internal/Magento/Framework/DB/Statement/Pdo/Mysql.php
+++ b/lib/internal/Magento/Framework/DB/Statement/Pdo/Mysql.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Mysql DB Statement
  *
@@ -22,6 +24,7 @@ class Mysql extends \Zend_Db_Statement_Pdo
      * @param array $params Array of values to bind to parameter placeholders.
      * @return bool
      * @throws \Zend_Db_Statement_Exception
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function _executeWithBinding(array $params)
     {
diff --git a/lib/internal/Magento/Framework/DB/Tree.php b/lib/internal/Magento/Framework/DB/Tree.php
index 93080bf7d650716c54cc9aef67a55913fe897043..e0a7b800b5df3925c8478680a09e815487a620f8 100644
--- a/lib/internal/Magento/Framework/DB/Tree.php
+++ b/lib/internal/Magento/Framework/DB/Tree.php
@@ -16,6 +16,9 @@ use Magento\Framework\DB\Tree\TreeException;
  * Magento Library
  */
 require_once 'Tree/TreeException.php';
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class Tree
 {
     /**
@@ -77,6 +80,8 @@ class Tree
     /**
      * @param array $config
      * @throws TreeException
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function __construct($config = [])
     {
@@ -274,6 +279,7 @@ class Tree
      * @param string|int $nodeId
      * @param array $data
      * @return false|string
+     * @SuppressWarnings(PHPMD.ExitExpression)
      */
     public function appendChild($nodeId, $data)
     {
@@ -441,6 +447,10 @@ class Tree
      * @param string|int $pId
      * @param string|int $aId
      * @return bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
+     * @SuppressWarnings(PHPMD.ExitExpression)
      */
     public function moveNode($eId, $pId, $aId = 0)
     {
@@ -771,6 +781,11 @@ class Tree
      * @param string|int $pId
      * @param string|int $aId
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
+     * @SuppressWarnings(PHPMD.ExitExpression)
      */
     public function moveNodes($eId, $pId, $aId = 0)
     {
@@ -991,6 +1006,7 @@ class Tree
      * @param int $startLevel
      * @param int $endLevel
      * @return NodeSet
+     * @SuppressWarnings(PHPMD.ExitExpression)
      */
     public function getChildren($nodeId, $startLevel = 0, $endLevel = 0)
     {
diff --git a/lib/internal/Magento/Framework/DB/Tree/Node.php b/lib/internal/Magento/Framework/DB/Tree/Node.php
index 397081bc5a22d11c9916540f9c33bc340a7b6877..80aa840e9de0563351cfc43171d2e0ab75e5f8c5 100644
--- a/lib/internal/Magento/Framework/DB/Tree/Node.php
+++ b/lib/internal/Magento/Framework/DB/Tree/Node.php
@@ -7,6 +7,9 @@ namespace Magento\Framework\DB\Tree;
 
 use Magento\Framework\DB\Tree\Node\NodeException;
 
+/**
+ * @SuppressWarnings(PHPMD.UnusedPrivateField)
+ */
 class Node
 {
     /**
diff --git a/lib/internal/Magento/Framework/Data/Collection.php b/lib/internal/Magento/Framework/Data/Collection.php
index 979c258772a3f23c4a83208373a3d12f7b5781c1..72c51669064cdd51c21e782e177545db45d907be 100644
--- a/lib/internal/Magento/Framework/Data/Collection.php
+++ b/lib/internal/Magento/Framework/Data/Collection.php
@@ -167,6 +167,7 @@ class Collection implements \IteratorAggregate, \Countable, ArrayInterface, Coll
      * @param string|int|array $condition
      * @throws \Magento\Framework\Exception if some error in the input could be detected.
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function addFieldToFilter($field, $condition)
     {
@@ -646,6 +647,7 @@ class Collection implements \IteratorAggregate, \Countable, ArrayInterface, Coll
      *
      * @param bool $flag
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function distinct($flag)
     {
@@ -658,6 +660,7 @@ class Collection implements \IteratorAggregate, \Countable, ArrayInterface, Coll
      * @param bool $printQuery
      * @param bool $logQuery
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function loadData($printQuery = false, $logQuery = false)
     {
diff --git a/lib/internal/Magento/Framework/Data/Collection/Db.php b/lib/internal/Magento/Framework/Data/Collection/Db.php
index 61eef60817afdc9027a34c9dbd18c3a694f42f77..3b7dc9de3a9b0f7eaad48c1d9d1acfcc4d741865 100644
--- a/lib/internal/Magento/Framework/Data/Collection/Db.php
+++ b/lib/internal/Magento/Framework/Data/Collection/Db.php
@@ -12,6 +12,7 @@ use Psr\Log\LoggerInterface as Logger;
 
 /**
  * Base items collection class
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Db extends \Magento\Framework\Data\Collection
 {
diff --git a/lib/internal/Magento/Framework/Data/Collection/Filesystem.php b/lib/internal/Magento/Framework/Data/Collection/Filesystem.php
index 19d7da09b2d2a940b3e211b1700cacac7ce4058e..817c4b420519697de1ad27984ca0d286e151a125 100644
--- a/lib/internal/Magento/Framework/Data/Collection/Filesystem.php
+++ b/lib/internal/Magento/Framework/Data/Collection/Filesystem.php
@@ -231,6 +231,8 @@ class Filesystem extends \Magento\Framework\Data\Collection
      *
      * @param string|array $dir
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _collectRecursive($dir)
     {
@@ -433,6 +435,8 @@ class Filesystem extends \Magento\Framework\Data\Collection
      *
      * @param array $row
      * @return bool
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
+     * @SuppressWarnings(PHPMD.EvalExpression)
      */
     protected function _filterRow($row)
     {
@@ -474,6 +478,7 @@ class Filesystem extends \Magento\Framework\Data\Collection
      * @param callback $callback
      * @param array $callbackParams
      * @return bool
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     protected function _invokeFilter($callback, $callbackParams)
     {
@@ -492,6 +497,9 @@ class Filesystem extends \Magento\Framework\Data\Collection
      * @param string $type 'and' | 'or'
      * @see Db::addFieldToFilter()
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public function addFieldToFilter($field, $cond, $type = 'and')
     {
@@ -731,6 +739,7 @@ class Filesystem extends \Magento\Framework\Data\Collection
      * @return bool
      * @see addFieldToFilter()
      * @see addCallbackFilter()
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function filterCallbackIsNull($field, $filterValue, $row)
     {
diff --git a/lib/internal/Magento/Framework/Data/Form/Element/AbstractElement.php b/lib/internal/Magento/Framework/Data/Form/Element/AbstractElement.php
index 69190f8863cd617f5d15a0afa5b5e1fa4bc228af..5583f90b9e6ae3d83641bb33dd4174dc08960c6c 100644
--- a/lib/internal/Magento/Framework/Data/Form/Element/AbstractElement.php
+++ b/lib/internal/Magento/Framework/Data/Form/Element/AbstractElement.php
@@ -14,6 +14,7 @@ use Magento\Framework\Escaper;
  * Data form abstract class
  *
  * @author     Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.NumberOfChildren)
  */
 abstract class AbstractElement extends AbstractForm
 {
@@ -530,6 +531,7 @@ abstract class AbstractElement extends AbstractForm
      * @param string|int|array $values
      * @param bool $overwrite
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function addElementValues($values, $overwrite = false)
     {
diff --git a/lib/internal/Magento/Framework/Data/Form/Element/Checkbox.php b/lib/internal/Magento/Framework/Data/Form/Element/Checkbox.php
index 689a569e592bb61cb677dcce1309a2e8a61aeeb1..7f079c6e1b514093f27447a60278a9537f867688 100644
--- a/lib/internal/Magento/Framework/Data/Form/Element/Checkbox.php
+++ b/lib/internal/Magento/Framework/Data/Form/Element/Checkbox.php
@@ -52,6 +52,7 @@ class Checkbox extends AbstractElement
 
     /**
      * @return string
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function getElementHtml()
     {
@@ -79,6 +80,7 @@ class Checkbox extends AbstractElement
      * Return check status of checkbox
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsChecked()
     {
diff --git a/lib/internal/Magento/Framework/Data/Form/Element/Editor.php b/lib/internal/Magento/Framework/Data/Form/Element/Editor.php
index 4bfeea0ded5b960cf038c96c3fcf9a35d78f807b..c8e58d064926d4e0aff3ec2aea9aba1f4c911f94 100644
--- a/lib/internal/Magento/Framework/Data/Form/Element/Editor.php
+++ b/lib/internal/Magento/Framework/Data/Form/Element/Editor.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Data\Form\Element;
 
 use Magento\Framework\Escaper;
@@ -39,6 +42,7 @@ class Editor extends Textarea
 
     /**
      * @return string
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public function getElementHtml()
     {
@@ -218,6 +222,8 @@ class Editor extends Textarea
      *
      * @param bool $visible Display button or not
      * @return string
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _getPluginButtonsHtml($visible = true)
     {
@@ -332,6 +338,7 @@ class Editor extends Textarea
      *
      * @param array $data Button params
      * @return string
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _getButtonHtml($data)
     {
diff --git a/lib/internal/Magento/Framework/Data/Form/Element/Gallery.php b/lib/internal/Magento/Framework/Data/Form/Element/Gallery.php
index fa022498d35530189eff3b601e08efce8b2004f2..cc2798e8f702cf4e5cb860b17a3283a093f89de3 100644
--- a/lib/internal/Magento/Framework/Data/Form/Element/Gallery.php
+++ b/lib/internal/Magento/Framework/Data/Form/Element/Gallery.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Category form input image element
  *
@@ -33,6 +35,8 @@ class Gallery extends AbstractElement
 
     /**
      * @return string
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function getElementHtml()
     {
diff --git a/lib/internal/Magento/Framework/Data/Form/Element/Multiline.php b/lib/internal/Magento/Framework/Data/Form/Element/Multiline.php
index 3439846888ee59e2d20f8fbb3f878d7b76ac96d3..e596cc69c7ffe7a96de2f60f3554f7010a2cddde 100644
--- a/lib/internal/Magento/Framework/Data/Form/Element/Multiline.php
+++ b/lib/internal/Magento/Framework/Data/Form/Element/Multiline.php
@@ -101,6 +101,7 @@ class Multiline extends AbstractElement
 
     /**
      * @return mixed
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function getDefaultHtml()
     {
diff --git a/lib/internal/Magento/Framework/Data/Form/Element/Time.php b/lib/internal/Magento/Framework/Data/Form/Element/Time.php
index d23418c1453afa66c3c16e8f38a1880c4092356d..3fe64c7b21106eb00e3fc2b772a8c63d81b3892f 100644
--- a/lib/internal/Magento/Framework/Data/Form/Element/Time.php
+++ b/lib/internal/Magento/Framework/Data/Form/Element/Time.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Form time element
  *
@@ -45,6 +47,8 @@ class Time extends AbstractElement
 
     /**
      * @return string
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function getElementHtml()
     {
diff --git a/lib/internal/Magento/Framework/Data/FormFactory.php b/lib/internal/Magento/Framework/Data/FormFactory.php
index 8b31904077ddf4e1b074d78bc3c861d1c56c4c16..cd35382e2644672c17e2d5cbe458835172fde526 100644
--- a/lib/internal/Magento/Framework/Data/FormFactory.php
+++ b/lib/internal/Magento/Framework/Data/FormFactory.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Data;
 
 /**
diff --git a/lib/internal/Magento/Framework/Data/Tree.php b/lib/internal/Magento/Framework/Data/Tree.php
index 79ec96e3ec135864320d0b51e3c2eb24a49a1118..767d7d8c1766cc78866ec4e1788e168eb96e5e18 100644
--- a/lib/internal/Magento/Framework/Data/Tree.php
+++ b/lib/internal/Magento/Framework/Data/Tree.php
@@ -46,6 +46,7 @@ class Tree
      *
      * @param Node $parentNode
      * @return void
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function load($parentNode = null)
     {
@@ -56,6 +57,7 @@ class Tree
      *
      * @param int|string $nodeId
      * @return void
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function loadNode($nodeId)
     {
@@ -68,6 +70,7 @@ class Tree
      * @param Node $parentNode
      * @param Node $prevNode
      * @return Node
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function appendChild($data, $parentNode, $prevNode = null)
     {
@@ -103,6 +106,7 @@ class Tree
      * @param Node $parentNode
      * @param Node $prevNode
      * @return void
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function moveNodeTo($node, $parentNode, $prevNode = null)
     {
@@ -115,6 +119,7 @@ class Tree
      * @param Node $parentNode
      * @param Node $prevNode
      * @return void
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function copyNodeTo($node, $parentNode, $prevNode = null)
     {
@@ -142,6 +147,7 @@ class Tree
      * @param Node $parentNode
      * @param Node $prevNode
      * @return void
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function createNode($parentNode, $prevNode = null)
     {
@@ -152,6 +158,7 @@ class Tree
      *
      * @param Node $node
      * @return void
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function getChild($node)
     {
@@ -162,6 +169,7 @@ class Tree
      *
      * @param Node $node
      * @return void
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function getChildren($node)
     {
diff --git a/lib/internal/Magento/Framework/Data/Tree/Node.php b/lib/internal/Magento/Framework/Data/Tree/Node.php
index 747e5a755e9b27ab98f20154bae39de938e4126d..69bb2b8d4747492bc401243e1e1243ed43d1d3c6 100644
--- a/lib/internal/Magento/Framework/Data/Tree/Node.php
+++ b/lib/internal/Magento/Framework/Data/Tree/Node.php
@@ -169,6 +169,7 @@ class Node extends \Magento\Framework\Object
     /**
      * @param Node $node
      * @return void
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function isChildOf($node)
     {
diff --git a/lib/internal/Magento/Framework/Debug.php b/lib/internal/Magento/Framework/Debug.php
index 8c42e03489b57a8d942f9dfe76e0767725847781..b1c3ecacd1ff71f749678d4d904ff73d643afb39 100644
--- a/lib/internal/Magento/Framework/Debug.php
+++ b/lib/internal/Magento/Framework/Debug.php
@@ -61,6 +61,8 @@ class Debug
      * @param bool $html        output in HTML format
      * @param bool $withArgs    add short arguments of methods
      * @return string|bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public static function trace(array $trace, $return = false, $html = true, $withArgs = true)
     {
@@ -141,6 +143,7 @@ class Debug
      *
      * @param mixed $arg
      * @return string
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected static function _formatCalledArgument($arg)
     {
diff --git a/lib/internal/Magento/Framework/Encryption/Crypt.php b/lib/internal/Magento/Framework/Encryption/Crypt.php
index 1cb3f7ab0349face1424da81c560687e97a067b3..9185fc38c03fa08e8a0d49d643cf49f267c3adfe 100644
--- a/lib/internal/Magento/Framework/Encryption/Crypt.php
+++ b/lib/internal/Magento/Framework/Encryption/Crypt.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Encryption;
 
 /**
diff --git a/lib/internal/Magento/Framework/Event/Invoker/InvokerDefault.php b/lib/internal/Magento/Framework/Event/Invoker/InvokerDefault.php
index d536031ab0d16fe43cff175ead340d60550f0ec8..ede5035b9f945c5daaed59661a8afbd23f69b1a0 100644
--- a/lib/internal/Magento/Framework/Event/Invoker/InvokerDefault.php
+++ b/lib/internal/Magento/Framework/Event/Invoker/InvokerDefault.php
@@ -5,6 +5,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Event\Invoker;
 
 use Magento\Framework\Event\Observer;
diff --git a/lib/internal/Magento/Framework/Event/Observer/Cron.php b/lib/internal/Magento/Framework/Event/Observer/Cron.php
index 39ae34a5116af3a1b3046c2c78340ca7286a2bcf..8a0cdcd7f31a0370b1fbf73f068f0559240a8759 100644
--- a/lib/internal/Magento/Framework/Event/Observer/Cron.php
+++ b/lib/internal/Magento/Framework/Event/Observer/Cron.php
@@ -20,6 +20,7 @@ class Cron extends \Magento\Framework\Event\Observer
      *
      * @param \Magento\Framework\Event $event
      * @return boolean
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function isValidFor(\Magento\Framework\Event $event)
     {
@@ -63,6 +64,8 @@ class Cron extends \Magento\Framework\Event\Observer
      * @param string $expr
      * @param int $num
      * @return bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function matchCronExpression($expr, $num)
     {
diff --git a/lib/internal/Magento/Framework/File/Csv.php b/lib/internal/Magento/Framework/File/Csv.php
index 95e7921a5d2a63e9c7579c50a2aea8fd965b41e1..4844401ac672ad7d3d66571aa9c903f661fecd3f 100644
--- a/lib/internal/Magento/Framework/File/Csv.php
+++ b/lib/internal/Magento/Framework/File/Csv.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\File;
 
 /**
@@ -137,6 +140,7 @@ class Csv
      * @param string $delimiter
      * @param string $enclosure
      * @return int
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function fputcsv(&$handle, $fields = [], $delimiter = ',', $enclosure = '"')
     {
diff --git a/lib/internal/Magento/Framework/File/CsvMulty.php b/lib/internal/Magento/Framework/File/CsvMulty.php
index de0897c4f8134c7538be28babf64acb6c8c43d69..71de4e8f7d269bb957613f85df9868c9df908c2a 100644
--- a/lib/internal/Magento/Framework/File/CsvMulty.php
+++ b/lib/internal/Magento/Framework/File/CsvMulty.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Csv parse
  *
diff --git a/lib/internal/Magento/Framework/File/Transfer/Adapter/Http.php b/lib/internal/Magento/Framework/File/Transfer/Adapter/Http.php
index b56823b01e492070d9ab72ed6b38f9cca94bca7a..0cd0fe3eac6bde8a9ea4e7a7ec9bb84be5eeb6d3 100644
--- a/lib/internal/Magento/Framework/File/Transfer/Adapter/Http.php
+++ b/lib/internal/Magento/Framework/File/Transfer/Adapter/Http.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\File\Transfer\Adapter;
 
 class Http
diff --git a/lib/internal/Magento/Framework/File/Uploader.php b/lib/internal/Magento/Framework/File/Uploader.php
index 885de2b8d63f0709ee546bcaf9b3a1b633f2d082..cfc862a635bc137a62320b56ff2563fcdbb2a529 100644
--- a/lib/internal/Magento/Framework/File/Uploader.php
+++ b/lib/internal/Magento/Framework/File/Uploader.php
@@ -170,6 +170,7 @@ class Uploader
      *
      * @param  array $result
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     protected function _afterSave($result)
     {
@@ -184,6 +185,7 @@ class Uploader
      * @param string $newFileName
      * @return array
      * @throws \Exception
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function save($destinationFolder, $newFileName = null)
     {
@@ -487,6 +489,7 @@ class Uploader
      * @param string|array $fileId
      * @return void
      * @throws \Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     private function _setUploadFileId($fileId)
     {
diff --git a/lib/internal/Magento/Framework/Filesystem.php b/lib/internal/Magento/Framework/Filesystem.php
index e55ea9d8b2dfadc626b6145a5b98423f1daa150e..6c4e7de35c2833b927ae99aecc83801bdff82ec3 100644
--- a/lib/internal/Magento/Framework/Filesystem.php
+++ b/lib/internal/Magento/Framework/Filesystem.php
@@ -7,7 +7,7 @@
  */
 namespace Magento\Framework;
 
-use Magento\Framework\Filesystem\File\ReadInterface;
+use Magento\Framework\Filesystem\DriverPool;
 
 class Filesystem
 {
@@ -52,30 +52,34 @@ class Filesystem
     }
 
     /**
-     * Create an instance of directory with write permissions
+     * Create an instance of directory with read permissions
      *
-     * @param string $code
+     * @param string $directoryCode
+     * @param string $driverCode
      * @return \Magento\Framework\Filesystem\Directory\ReadInterface
      */
-    public function getDirectoryRead($code)
+    public function getDirectoryRead($directoryCode, $driverCode = DriverPool::FILE)
     {
+        $code = $directoryCode . '_' . $driverCode;
         if (!array_key_exists($code, $this->readInstances)) {
-            $this->readInstances[$code] = $this->readFactory->create($this->getDirPath($code));
+            $this->readInstances[$code] = $this->readFactory->create($this->getDirPath($directoryCode), $driverCode);
         }
         return $this->readInstances[$code];
     }
 
     /**
-     * Create an instance of directory with read permissions
+     * Create an instance of directory with write permissions
      *
-     * @param string $code
+     * @param string $directoryCode
+     * @param string $driverCode
      * @return \Magento\Framework\Filesystem\Directory\WriteInterface
      * @throws \Magento\Framework\Filesystem\FilesystemException
      */
-    public function getDirectoryWrite($code)
+    public function getDirectoryWrite($directoryCode, $driverCode = DriverPool::FILE)
     {
+        $code = $directoryCode . '_' . $driverCode;
         if (!array_key_exists($code, $this->writeInstances)) {
-            $this->writeInstances[$code] = $this->writeFactory->create($this->getDirPath($code));
+            $this->writeInstances[$code] = $this->writeFactory->create($this->getDirPath($directoryCode), $driverCode);
         }
         return $this->writeInstances[$code];
     }
diff --git a/lib/internal/Magento/Framework/Filesystem/Directory/Read.php b/lib/internal/Magento/Framework/Filesystem/Directory/Read.php
index 3d10c9741cd2760926d7bbcf1075a69ac6ef4000..33f09a43d326f99fc3fbce2df3f04b573f922db6 100644
--- a/lib/internal/Magento/Framework/Filesystem/Directory/Read.php
+++ b/lib/internal/Magento/Framework/Filesystem/Directory/Read.php
@@ -181,15 +181,13 @@ class Read implements ReadInterface
      * Open file in read mode
      *
      * @param string $path
-     * @param string|null $protocol
      *
      * @return \Magento\Framework\Filesystem\File\ReadInterface
      */
-    public function openFile($path, $protocol = null)
+    public function openFile($path)
     {
         return $this->fileFactory->create(
             $this->driver->getAbsolutePath($this->path, $path),
-            $protocol,
             $this->driver
         );
     }
@@ -200,21 +198,14 @@ class Read implements ReadInterface
      * @param string $path
      * @param string|null $flag
      * @param resource|null $context
-     * @param string|null $protocol
      * @return string
      * @throws FilesystemException
      */
-    public function readFile($path, $flag = null, $context = null, $protocol = null)
+    public function readFile($path, $flag = null, $context = null)
     {
-        $absolutePath = $this->driver->getAbsolutePath($this->path, $path, $protocol);
+        $absolutePath = $this->driver->getAbsolutePath($this->path, $path);
+        return $this->driver->fileGetContents($absolutePath, $flag, $context);
 
-        if (is_null($protocol)) {
-            return $this->driver->fileGetContents($absolutePath, $flag, $context);
-        }
-
-        /** @var \Magento\Framework\Filesystem\File\Read $fileReader */
-        $fileReader = $this->fileFactory->create($absolutePath, $protocol, $this->driver);
-        return $fileReader->readAll($flag, $context);
     }
 
     /**
diff --git a/lib/internal/Magento/Framework/Filesystem/Directory/ReadFactory.php b/lib/internal/Magento/Framework/Filesystem/Directory/ReadFactory.php
index 423ed6166a3c33f8b5f092343713ad3e3276c11b..e1a9b33ab7a97db6d71aa51a31bc479f4875d215 100644
--- a/lib/internal/Magento/Framework/Filesystem/Directory/ReadFactory.php
+++ b/lib/internal/Magento/Framework/Filesystem/Directory/ReadFactory.php
@@ -30,12 +30,12 @@ class ReadFactory
      * Create a readable directory
      *
      * @param string $path
-     * @param string $protocol
+     * @param string $driverCode
      * @return ReadInterface
      */
-    public function create($path, $protocol = DriverPool::FILE)
+    public function create($path, $driverCode = DriverPool::FILE)
     {
-        $driver = $this->driverPool->getDriver($protocol);
+        $driver = $this->driverPool->getDriver($driverCode);
         $factory = new \Magento\Framework\Filesystem\File\ReadFactory($this->driverPool);
         return new Read($factory, $driver, $path);
     }
diff --git a/lib/internal/Magento/Framework/Filesystem/Directory/Write.php b/lib/internal/Magento/Framework/Filesystem/Directory/Write.php
index 6657360dc2a50b2e5f1bbec558b36c6a50b96ce2..18ff07a750e53fdcfad8d4af7cee94cf6d59507e 100644
--- a/lib/internal/Magento/Framework/Filesystem/Directory/Write.php
+++ b/lib/internal/Magento/Framework/Filesystem/Directory/Write.php
@@ -197,16 +197,15 @@ class Write extends Read implements WriteInterface
      *
      * @param string $path
      * @param string $mode
-     * @param string|null $protocol
      * @return \Magento\Framework\Filesystem\File\WriteInterface
      */
-    public function openFile($path, $mode = 'w', $protocol = null)
+    public function openFile($path, $mode = 'w')
     {
         $folder = dirname($path);
         $this->create($folder);
         $this->assertWritable($folder);
         $absolutePath = $this->driver->getAbsolutePath($this->path, $path);
-        return $this->fileFactory->create($absolutePath, $protocol, $this->driver, $mode);
+        return $this->fileFactory->create($absolutePath, $this->driver, $mode);
     }
 
     /**
@@ -215,13 +214,12 @@ class Write extends Read implements WriteInterface
      * @param string $path
      * @param string $content
      * @param string|null $mode
-     * @param string|null $protocol
      * @return int The number of bytes that were written.
      * @throws FilesystemException
      */
-    public function writeFile($path, $content, $mode = 'w+', $protocol = null)
+    public function writeFile($path, $content, $mode = 'w+')
     {
-        return $this->openFile($path, $mode, $protocol)->write($content);
+        return $this->openFile($path, $mode)->write($content);
     }
 
     /**
diff --git a/lib/internal/Magento/Framework/Filesystem/Directory/WriteFactory.php b/lib/internal/Magento/Framework/Filesystem/Directory/WriteFactory.php
index 4585629cd98a382b1d9af12e186b27248ca26ee8..809d86bb20bc0fb59cf7ae911acced7c045c9553 100644
--- a/lib/internal/Magento/Framework/Filesystem/Directory/WriteFactory.php
+++ b/lib/internal/Magento/Framework/Filesystem/Directory/WriteFactory.php
@@ -30,13 +30,13 @@ class WriteFactory
      * Create a readable directory
      *
      * @param string $path
-     * @param string $protocol
+     * @param string $driverCode
      * @param int $createPermissions
      * @return \Magento\Framework\Filesystem\Directory\Write
      */
-    public function create($path, $protocol = DriverPool::FILE, $createPermissions = null)
+    public function create($path, $driverCode = DriverPool::FILE, $createPermissions = null)
     {
-        $driver = $this->driverPool->getDriver($protocol);
+        $driver = $this->driverPool->getDriver($driverCode);
         $factory = new \Magento\Framework\Filesystem\File\WriteFactory($this->driverPool);
         return new Write($factory, $driver, $path, $createPermissions);
     }
diff --git a/lib/internal/Magento/Framework/Filesystem/Directory/WriteInterface.php b/lib/internal/Magento/Framework/Filesystem/Directory/WriteInterface.php
index df05fb18b13dce1c958b185009ad8635074dceac..ba46d247d4870a596a7c5affaf0bda21d97bca1e 100644
--- a/lib/internal/Magento/Framework/Filesystem/Directory/WriteInterface.php
+++ b/lib/internal/Magento/Framework/Filesystem/Directory/WriteInterface.php
@@ -80,10 +80,9 @@ interface WriteInterface extends ReadInterface
      *
      * @param string $path
      * @param string $mode
-     * @param string|null $protocol
      * @return \Magento\Framework\Filesystem\File\WriteInterface
      */
-    public function openFile($path, $mode = 'w', $protocol = null);
+    public function openFile($path, $mode = 'w');
 
     /**
      * Open file in given path
diff --git a/lib/internal/Magento/Framework/Filesystem/Driver/Http.php b/lib/internal/Magento/Framework/Filesystem/Driver/Http.php
index e025c61a4ebba705cdb10460c459d76b5e2581cf..09586e4576124964fcf01fc201fbf31a6a98e0c6 100644
--- a/lib/internal/Magento/Framework/Filesystem/Driver/Http.php
+++ b/lib/internal/Magento/Framework/Filesystem/Driver/Http.php
@@ -49,6 +49,7 @@ class Http extends File
      *
      * @param string $path
      * @return array
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function stat($path)
     {
@@ -123,6 +124,7 @@ class Http extends File
      * @param string $mode
      * @return resource file
      * @throws FilesystemException
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function fileOpen($path, $mode)
     {
@@ -202,6 +204,7 @@ class Http extends File
      * @param string $path
      * @param string|null $scheme
      * @return string
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function getAbsolutePath($basePath, $path, $scheme = null)
     {
diff --git a/lib/internal/Magento/Framework/Filesystem/File/ReadFactory.php b/lib/internal/Magento/Framework/Filesystem/File/ReadFactory.php
index d142ee2a284100dfbf2b12ade18c99a82fc63475..0c758ce471dfbe4d75d6cb0e065f7b14d65c394d 100644
--- a/lib/internal/Magento/Framework/Filesystem/File/ReadFactory.php
+++ b/lib/internal/Magento/Framework/Filesystem/File/ReadFactory.php
@@ -31,17 +31,13 @@ class ReadFactory
      * Create a readable file
      *
      * @param string $path
-     * @param string|null $protocol [optional]
-     * @param DriverInterface $driver [optional]
+     * @param DriverInterface|string $driver Driver or driver code
      * @return \Magento\Framework\Filesystem\File\ReadInterface
-     * @throws \InvalidArgumentException
      */
-    public function create($path, $protocol = null, DriverInterface $driver = null)
+    public function create($path, $driver)
     {
-        if ($protocol) {
-            $driver = $this->driverPool->getDriver($protocol);
-        } elseif (!$driver) {
-            throw new \InvalidArgumentException('Either driver or protocol must be specified.');
+        if (is_string($driver)) {
+            return new Read($path, $this->driverPool->getDriver($driver));
         }
         return new Read($path, $driver);
     }
diff --git a/lib/internal/Magento/Framework/Filesystem/File/WriteFactory.php b/lib/internal/Magento/Framework/Filesystem/File/WriteFactory.php
index 95a764a0e41966a124fec248077373891bebedae..1f0fe8066c55709b0c97287232c3ccd9e8cd56d1 100644
--- a/lib/internal/Magento/Framework/Filesystem/File/WriteFactory.php
+++ b/lib/internal/Magento/Framework/Filesystem/File/WriteFactory.php
@@ -31,18 +31,14 @@ class WriteFactory
      * Create a readable file.
      *
      * @param string $path
-     * @param string|null $protocol [optional]
-     * @param DriverInterface $driver [optional]
+     * @param DriverInterface|string $driver Driver or driver code
      * @param string $mode [optional]
      * @return Write
-     * @throws \InvalidArgumentException
      */
-    public function create($path, $protocol = null, DriverInterface $driver = null, $mode = 'r')
+    public function create($path, $driver, $mode = 'r')
     {
-        if ($protocol) {
-            $driver = $this->driverPool->getDriver($protocol);
-        } elseif (!$driver) {
-            throw new \InvalidArgumentException('Either driver or protocol must be specified.');
+        if (is_string($driver)) {
+            return new Write($path, $this->driverPool->getDriver($driver), $mode);
         }
         return new Write($path, $driver, $mode);
     }
diff --git a/lib/internal/Magento/Framework/Filter/Input.php b/lib/internal/Magento/Framework/Filter/Input.php
index fb2f1988ba719e8fde6bf6055df0fb92f3c0c665..cfcf50919a28f0f8ddd45d41da9ed53284c0f4e1 100644
--- a/lib/internal/Magento/Framework/Filter/Input.php
+++ b/lib/internal/Magento/Framework/Filter/Input.php
@@ -206,6 +206,7 @@ class Input implements \Zend_Filter_Interface
      * @param bool $isFilterListSimple
      * @return array
      * @throws \Exception when filter is not found or not instance of defined instances
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _filter(array $data, &$filters = null, $isFilterListSimple = false)
     {
diff --git a/lib/internal/Magento/Framework/Filter/Input/MaliciousCode.php b/lib/internal/Magento/Framework/Filter/Input/MaliciousCode.php
index 4d34329cae59c39e783d401fcb5b0037d9bf317e..72d30d3373709f369d338855d1c9271db7a3e8b8 100644
--- a/lib/internal/Magento/Framework/Filter/Input/MaliciousCode.php
+++ b/lib/internal/Magento/Framework/Filter/Input/MaliciousCode.php
@@ -5,6 +5,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Filter\Input;
 
 class MaliciousCode implements \Zend_Filter_Interface
diff --git a/lib/internal/Magento/Framework/Filter/RemoveAccents.php b/lib/internal/Magento/Framework/Filter/RemoveAccents.php
index ee71192ad0b1a6d0a45ec324f79ebfcbfbc5179f..fb153f56ed3c1cbd6c277ab5808db79cdc597046 100644
--- a/lib/internal/Magento/Framework/Filter/RemoveAccents.php
+++ b/lib/internal/Magento/Framework/Filter/RemoveAccents.php
@@ -26,6 +26,7 @@ class RemoveAccents implements \Zend_Filter_Interface
     /**
      * @param string $string
      * @return string
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public function filter($string)
     {
diff --git a/lib/internal/Magento/Framework/Filter/Template.php b/lib/internal/Magento/Framework/Filter/Template.php
index 52a4ed62a0622ff533ac291ea08db3c6d54a3082..50db67715c20e9c3dd1adaea1bbb8e98a181cb4e 100644
--- a/lib/internal/Magento/Framework/Filter/Template.php
+++ b/lib/internal/Magento/Framework/Filter/Template.php
@@ -96,6 +96,7 @@ class Template implements \Zend_Filter_Interface
      * @param string $value
      * @return string
      * @throws \Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function filter($value)
     {
@@ -236,6 +237,7 @@ class Template implements \Zend_Filter_Interface
      * @param string $value raw parameters
      * @param string $default default value
      * @return string
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _getVariable($value, $default = '{no_value_defined}')
     {
diff --git a/lib/internal/Magento/Framework/Filter/Template/Tokenizer/Parameter.php b/lib/internal/Magento/Framework/Filter/Template/Tokenizer/Parameter.php
index 9b392e5330f8cf48bd70a3e3a9df9bea6b5f58eb..00161bf427edb7dd1449804bc1d496a0fe66f95e 100644
--- a/lib/internal/Magento/Framework/Filter/Template/Tokenizer/Parameter.php
+++ b/lib/internal/Magento/Framework/Filter/Template/Tokenizer/Parameter.php
@@ -36,6 +36,7 @@ class Parameter extends \Magento\Framework\Filter\Template\Tokenizer\AbstractTok
      * Get string value in parameters through tokenize
      *
      * @return string
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function getValue()
     {
diff --git a/lib/internal/Magento/Framework/Filter/Template/Tokenizer/Variable.php b/lib/internal/Magento/Framework/Filter/Template/Tokenizer/Variable.php
index 531e6de40e1898fc0fb60dcde64f2a0572ceeeca..377219601d2d6481ff560f220b87d7fa71f7eae0 100644
--- a/lib/internal/Magento/Framework/Filter/Template/Tokenizer/Variable.php
+++ b/lib/internal/Magento/Framework/Filter/Template/Tokenizer/Variable.php
@@ -14,6 +14,7 @@ class Variable extends \Magento\Framework\Filter\Template\Tokenizer\AbstractToke
      * Tokenize string and return getted variable stack path
      *
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function tokenize()
     {
@@ -59,6 +60,7 @@ class Variable extends \Magento\Framework\Filter\Template\Tokenizer\AbstractToke
      * Get string value for method args
      *
      * @return string
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function getString()
     {
diff --git a/lib/internal/Magento/Framework/Gdata/Gshopping/Entry.php b/lib/internal/Magento/Framework/Gdata/Gshopping/Entry.php
index b12e717f9f8c995520a9812ca00d2376bdc17496..275489ecdc2919be679a591c4441c21a1b050cef 100644
--- a/lib/internal/Magento/Framework/Gdata/Gshopping/Entry.php
+++ b/lib/internal/Magento/Framework/Gdata/Gshopping/Entry.php
@@ -78,6 +78,7 @@ class Entry extends \Zend_Gdata_Entry
      *
      * @param \DOMNode $child The \DOMNode to process
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function takeChildFromDOM($child)
     {
@@ -223,6 +224,7 @@ class Entry extends \Zend_Gdata_Entry
      *
      * @param string $name The name of the Content attribute to look for
      * @return string[] $matches Array of Attribute
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function getContentAttributesByName($name)
     {
diff --git a/lib/internal/Magento/Framework/Gdata/Gshopping/HttpException.php b/lib/internal/Magento/Framework/Gdata/Gshopping/HttpException.php
index f1f61974937de5a86023e90e45c46e04de24d8a6..c348c15cb75fc2c86c30f3ad3c9f3ea17ab20213 100644
--- a/lib/internal/Magento/Framework/Gdata/Gshopping/HttpException.php
+++ b/lib/internal/Magento/Framework/Gdata/Gshopping/HttpException.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Gdata\Gshopping;
 
 /**
diff --git a/lib/internal/Magento/Framework/HTTP/Adapter/Curl.php b/lib/internal/Magento/Framework/HTTP/Adapter/Curl.php
index 07d55c651f9ed388ca419e2fd67df295e3249722..a677dbd5453f69941584de7f2c33d938fabde4cb 100644
--- a/lib/internal/Magento/Framework/HTTP/Adapter/Curl.php
+++ b/lib/internal/Magento/Framework/HTTP/Adapter/Curl.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * HTTP CURL Adapter
  *
@@ -51,6 +53,8 @@ class Curl implements \Zend_Http_Client_Adapter_Interface
      * Apply current configuration array to transport resource
      *
      * @return \Magento\Framework\HTTP\Adapter\Curl
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     protected function _applyConfig()
     {
@@ -137,6 +141,7 @@ class Curl implements \Zend_Http_Client_Adapter_Interface
      * @param array $headers
      * @param string $body
      * @return string Request as text
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function write($method, $url, $http_ver = '1.1', $headers = [], $body = '')
     {
diff --git a/lib/internal/Magento/Framework/HTTP/Client/Curl.php b/lib/internal/Magento/Framework/HTTP/Client/Curl.php
index ce030bcc9e641c713a9e9d9a03a33a2cc53d7417..a8f5548b4f63568db90fb5520d89f6656e99e52a 100644
--- a/lib/internal/Magento/Framework/HTTP/Client/Curl.php
+++ b/lib/internal/Magento/Framework/HTTP/Client/Curl.php
@@ -331,6 +331,8 @@ class Curl implements \Magento\Framework\HTTP\ClientInterface
      * @param string $uri
      * @param array $params
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function makeRequest($method, $uri, $params = [])
     {
@@ -406,6 +408,7 @@ class Curl implements \Magento\Framework\HTTP\ClientInterface
      * @param resource $ch curl handle, not needed
      * @param string $data
      * @return int
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     protected function parseHeaders($ch, $data)
     {
diff --git a/lib/internal/Magento/Framework/HTTP/Client/Socket.php b/lib/internal/Magento/Framework/HTTP/Client/Socket.php
index 2174b15a21ad60c642a76d729ddf583c470bbaed..949ef777adf302e0081d6dc10f61c7a707efb981 100644
--- a/lib/internal/Magento/Framework/HTTP/Client/Socket.php
+++ b/lib/internal/Magento/Framework/HTTP/Client/Socket.php
@@ -11,6 +11,12 @@
  */
 namespace Magento\Framework\HTTP\Client;
 
+/**
+ * @SuppressWarnings(PHPMD.UnusedPrivateField)
+ */
+/**
+ * @SuppressWarnings(PHPMD.UnusedPrivateField)
+ */
 class Socket implements \Magento\Framework\HTTP\ClientInterface
 {
     /**
@@ -407,6 +413,7 @@ class Socket implements \Magento\Framework\HTTP\ClientInterface
      * Process response
      *
      * @return void
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     protected function processResponse()
     {
@@ -517,6 +524,7 @@ class Socket implements \Magento\Framework\HTTP\ClientInterface
      *
      * @param array $arr
      * @return void
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function setOptions($arr)
     {
@@ -529,6 +537,7 @@ class Socket implements \Magento\Framework\HTTP\ClientInterface
      * @param string $name
      * @param string $value
      * @return void
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function setOption($name, $value)
     {
diff --git a/lib/internal/Magento/Framework/HTTP/Header.php b/lib/internal/Magento/Framework/HTTP/Header.php
index 5f3c6283cafd14f4d89dc395a7728d677da89fd2..7dba8faecfe359099e1c2e8419a5127f183dc879 100644
--- a/lib/internal/Magento/Framework/HTTP/Header.php
+++ b/lib/internal/Magento/Framework/HTTP/Header.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\HTTP;
 
 /**
diff --git a/lib/internal/Magento/Framework/Image/Adapter/AbstractAdapter.php b/lib/internal/Magento/Framework/Image/Adapter/AbstractAdapter.php
index 7b96be253f3cfceaa50ac3ac310a6ecdeb6f6987..3a7742a7efb1faa0afd922c5f4d0a7188537effe 100644
--- a/lib/internal/Magento/Framework/Image/Adapter/AbstractAdapter.php
+++ b/lib/internal/Magento/Framework/Image/Adapter/AbstractAdapter.php
@@ -10,6 +10,7 @@ use Magento\Framework\App\Filesystem\DirectoryList;
 /**
  * @file        Abstract.php
  * @author      Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.TooManyFields)
  */
 abstract class AbstractAdapter implements AdapterInterface
 {
@@ -261,11 +262,17 @@ abstract class AbstractAdapter implements AdapterInterface
      * Initialize default values
      *
      * @param \Magento\Framework\Filesystem $filesystem
+     * @param \Psr\Log\LoggerInterface $logger
      * @param array $data
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
-    public function __construct(\Magento\Framework\Filesystem $filesystem, array $data = [])
-    {
+    public function __construct(
+        \Magento\Framework\Filesystem $filesystem,
+        \Psr\Log\LoggerInterface $logger,
+        array $data = []
+    ) {
         $this->_filesystem = $filesystem;
+        $this->logger = $logger;
         $this->directoryWrite = $this->_filesystem->getDirectoryWrite(DirectoryList::ROOT);
     }
 
diff --git a/lib/internal/Magento/Framework/Image/Adapter/Gd2.php b/lib/internal/Magento/Framework/Image/Adapter/Gd2.php
index b561fec0a8db82643d569c9286358ee8fbfe8056..441a45afae58a385fb1341922404432aeb15d92e 100644
--- a/lib/internal/Magento/Framework/Image/Adapter/Gd2.php
+++ b/lib/internal/Magento/Framework/Image/Adapter/Gd2.php
@@ -203,6 +203,7 @@ class Gd2 extends \Magento\Framework\Image\Adapter\AbstractAdapter
      * @param resource &$imageResourceTo
      * @return int
      * @throws \Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     private function _fillBackgroundColor(&$imageResourceTo)
     {
@@ -276,6 +277,7 @@ class Gd2 extends \Magento\Framework\Image\Adapter\AbstractAdapter
      * @param bool &$isAlpha
      * @param bool &$isTrueColor
      * @return boolean
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     private function _getTransparency($imageResource, $fileType, &$isAlpha = false, &$isTrueColor = false)
     {
@@ -366,6 +368,9 @@ class Gd2 extends \Magento\Framework\Image\Adapter\AbstractAdapter
      * @param int $opacity
      * @param bool $tile
      * @return void
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function watermark($imagePath, $positionX = 0, $positionY = 0, $opacity = 30, $tile = false)
     {
diff --git a/lib/internal/Magento/Framework/Image/Adapter/ImageMagick.php b/lib/internal/Magento/Framework/Image/Adapter/ImageMagick.php
index 33ee1a1303954e81ea8833d6303c4e52401ebe94..1d3b133279ae43d9439bc1fa521854c926f66e3c 100644
--- a/lib/internal/Magento/Framework/Image/Adapter/ImageMagick.php
+++ b/lib/internal/Magento/Framework/Image/Adapter/ImageMagick.php
@@ -235,6 +235,8 @@ class ImageMagick extends \Magento\Framework\Image\Adapter\AbstractAdapter
      * @return void
      * @throws \LogicException
      * @throws \Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function watermark($imagePath, $positionX = 0, $positionY = 0, $opacity = 30, $tile = false)
     {
diff --git a/lib/internal/Magento/Framework/Image/Factory.php b/lib/internal/Magento/Framework/Image/Factory.php
index b3b4fc87df06fbd47c2b957e8ca9545a113591e8..256df1ca68c3c89b0ecb1ee6df0c7148e529a1b2 100644
--- a/lib/internal/Magento/Framework/Image/Factory.php
+++ b/lib/internal/Magento/Framework/Image/Factory.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Image;
 
 use Magento\Framework\ObjectManagerInterface;
diff --git a/lib/internal/Magento/Framework/Interception/Code/Generator/Interceptor.php b/lib/internal/Magento/Framework/Interception/Code/Generator/Interceptor.php
index 5d8b2b289ee91d408b5f028260ef19499a8cda0e..2671cbebb7d37cf0af38962c116543ab246a2e32 100644
--- a/lib/internal/Magento/Framework/Interception/Code/Generator/Interceptor.php
+++ b/lib/internal/Magento/Framework/Interception/Code/Generator/Interceptor.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Interception\Code\Generator;
 
 class Interceptor extends \Magento\Framework\Code\Generator\EntityAbstract
diff --git a/lib/internal/Magento/Framework/Interception/Code/InterfaceValidator.php b/lib/internal/Magento/Framework/Interception/Code/InterfaceValidator.php
index 7086a3e6b5ba6de0f8171f61268a017472e6e4f4..1c188ff2c3d237bfba3b21f00464fb1d120b39a3 100644
--- a/lib/internal/Magento/Framework/Interception/Code/InterfaceValidator.php
+++ b/lib/internal/Magento/Framework/Interception/Code/InterfaceValidator.php
@@ -36,6 +36,8 @@ class InterfaceValidator
      *
      * @return void
      * @throws ValidatorException
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function validate($pluginClass, $interceptedType)
     {
diff --git a/lib/internal/Magento/Framework/Interception/PluginList/PluginList.php b/lib/internal/Magento/Framework/Interception/PluginList/PluginList.php
index 568fab873e3d7dced79e7bd7c7e0959244442c7d..0b95374f8eb90b4e87979583a6d55ed65b05b028 100644
--- a/lib/internal/Magento/Framework/Interception/PluginList/PluginList.php
+++ b/lib/internal/Magento/Framework/Interception/PluginList/PluginList.php
@@ -19,6 +19,9 @@ use Magento\Framework\ObjectManager\DefinitionInterface as ClassDefinitions;
 use Magento\Framework\ObjectManagerInterface;
 use Zend\Soap\Exception\InvalidArgumentException;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class PluginList extends Scoped implements InterceptionPluginList
 {
     /**
@@ -84,6 +87,7 @@ class PluginList extends Scoped implements InterceptionPluginList
      * @param ClassDefinitions $classDefinitions
      * @param array $scopePriorityScheme
      * @param string $cacheId
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         ReaderInterface $reader,
@@ -113,6 +117,7 @@ class PluginList extends Scoped implements InterceptionPluginList
      * @return array
      * @throws InvalidArgumentException
      * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _inheritPlugins($type)
     {
diff --git a/lib/internal/Magento/Framework/Io/AbstractIo.php b/lib/internal/Magento/Framework/Io/AbstractIo.php
index d20bcf55c6fb766890c63f86b14bcfe0da6e5964..629ba1e6eedbc730563442487eaf776b063aa68f 100644
--- a/lib/internal/Magento/Framework/Io/AbstractIo.php
+++ b/lib/internal/Magento/Framework/Io/AbstractIo.php
@@ -53,6 +53,7 @@ abstract class AbstractIo implements IoInterface
     /**
      * @param string $path
      * @return string
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function getCleanPath($path)
     {
diff --git a/lib/internal/Magento/Framework/Io/File.php b/lib/internal/Magento/Framework/Io/File.php
index e1e65b3f5aad941b3744ac0431491585c2939302..5c9225067a10e59f103d470de83e366591f9557b 100644
--- a/lib/internal/Magento/Framework/Io/File.php
+++ b/lib/internal/Magento/Framework/Io/File.php
@@ -7,6 +7,7 @@ namespace Magento\Framework\Io;
 
 /**
  * Filesystem client
+ * @SuppressWarnings(PHPMD.ExcessiveClassComplexity)
  */
 class File extends AbstractIo
 {
@@ -367,6 +368,8 @@ class File extends AbstractIo
      * @param array $dirCallback
      * @return mixed
      * @throws \InvalidArgumentException
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected static function _recursiveCallback($dir, array $fileCallback, array $dirCallback = [])
     {
@@ -417,6 +420,7 @@ class File extends AbstractIo
      * @param string $dir
      * @return true
      * @throws \Exception
+     * @SuppressWarnings(PHPMD.ShortMethodName)
      */
     public function cd($dir)
     {
@@ -459,6 +463,7 @@ class File extends AbstractIo
      * @param string|resource $src
      * @param int $mode
      * @return int|bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function write($filename, $src, $mode = null)
     {
@@ -594,6 +599,7 @@ class File extends AbstractIo
      *
      * @param string $filename
      * @return bool
+     * @SuppressWarnings(PHPMD.ShortMethodName)
      */
     public function rm($filename)
     {
@@ -609,6 +615,7 @@ class File extends AbstractIo
      * @param string $src
      * @param string $destination
      * @return bool
+     * @SuppressWarnings(PHPMD.ShortMethodName)
      */
     public function mv($src, $destination)
     {
@@ -624,6 +631,7 @@ class File extends AbstractIo
      * @param string $src
      * @param string $destination
      * @return bool
+     * @SuppressWarnings(PHPMD.ShortMethodName)
      */
     public function cp($src, $destination)
     {
@@ -679,6 +687,8 @@ class File extends AbstractIo
      * @param string|null $grep
      * @return array
      * @throws \Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.ShortMethodName)
      */
     public function ls($grep = null)
     {
@@ -782,6 +792,8 @@ class File extends AbstractIo
      * @param int $mode
      * @access protected
      * @return string
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _parsePermissions($mode)
     {
diff --git a/lib/internal/Magento/Framework/Io/Ftp.php b/lib/internal/Magento/Framework/Io/Ftp.php
index b6b94ccdeb92585b56d67f2540239bc97368fd75..e7c8ee79cf8d574dc8d325d99bc1dff0b254eb93 100644
--- a/lib/internal/Magento/Framework/Io/Ftp.php
+++ b/lib/internal/Magento/Framework/Io/Ftp.php
@@ -67,6 +67,8 @@ class Ftp extends AbstractIo
      * @param array $args
      * @return true
      * @throws IoException
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function open(array $args = [])
     {
@@ -184,6 +186,7 @@ class Ftp extends AbstractIo
      *
      * @param string $dir
      * @return bool
+     * @SuppressWarnings(PHPMD.ShortMethodName)
      */
     public function cd($dir)
     {
@@ -261,6 +264,7 @@ class Ftp extends AbstractIo
      *
      * @param string $filename
      * @return bool
+     * @SuppressWarnings(PHPMD.ShortMethodName)
      */
     public function rm($filename)
     {
@@ -273,6 +277,7 @@ class Ftp extends AbstractIo
      * @param string $src
      * @param string $dest
      * @return bool
+     * @SuppressWarnings(PHPMD.ShortMethodName)
      */
     public function mv($src, $dest)
     {
@@ -294,6 +299,7 @@ class Ftp extends AbstractIo
     /**
      * @param null $grep ignored parameter
      * @return array
+     * @SuppressWarnings(PHPMD.ShortMethodName)
      */
     public function ls($grep = null)
     {
diff --git a/lib/internal/Magento/Framework/Io/IoInterface.php b/lib/internal/Magento/Framework/Io/IoInterface.php
index 52e6d9401bce69deafeb9576d46eb864a799d6d0..85ece039f2b21134fb22bcce6b53f40dc5008bd7 100644
--- a/lib/internal/Magento/Framework/Io/IoInterface.php
+++ b/lib/internal/Magento/Framework/Io/IoInterface.php
@@ -56,6 +56,7 @@ interface IoInterface
      *
      * @param string $dir
      * @return bool
+     * @SuppressWarnings(PHPMD.ShortMethodName)
      */
     public function cd($dir);
 
@@ -83,6 +84,7 @@ interface IoInterface
      *
      * @param string $filename
      * @return bool
+     * @SuppressWarnings(PHPMD.ShortMethodName)
      */
     public function rm($filename);
 
@@ -92,6 +94,7 @@ interface IoInterface
      * @param string $src
      * @param string $dest
      * @return bool
+     * @SuppressWarnings(PHPMD.ShortMethodName)
      */
     public function mv($src, $dest);
 
@@ -109,6 +112,7 @@ interface IoInterface
      *
      * @param string|null $grep
      * @return array
+     * @SuppressWarnings(PHPMD.ShortMethodName)
      */
     public function ls($grep = null);
 
diff --git a/lib/internal/Magento/Framework/Io/Sftp.php b/lib/internal/Magento/Framework/Io/Sftp.php
index cf31017c4dadc296cb17fd45bce511b00e578ff1..d66a67d5fc00def21efdfa08b3f5d6b3e330f2b7 100644
--- a/lib/internal/Magento/Framework/Io/Sftp.php
+++ b/lib/internal/Magento/Framework/Io/Sftp.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Io;
 
 /**
@@ -97,6 +100,7 @@ class Sftp extends AbstractIo implements IoInterface
      * @param bool $recursive
      * @return bool
      * @throws \Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function rmdir($dir, $recursive = false)
     {
@@ -148,6 +152,7 @@ class Sftp extends AbstractIo implements IoInterface
      *
      * @param string $dir
      * @return bool
+     * @SuppressWarnings(PHPMD.ShortMethodName)
      */
     public function cd($dir)
     {
@@ -188,6 +193,7 @@ class Sftp extends AbstractIo implements IoInterface
      *
      * @param string $filename
      * @return bool
+     * @SuppressWarnings(PHPMD.ShortMethodName)
      */
     public function rm($filename)
     {
@@ -200,6 +206,7 @@ class Sftp extends AbstractIo implements IoInterface
      * @param string $source
      * @param string $destination
      * @return bool
+     * @SuppressWarnings(PHPMD.ShortMethodName)
      */
     public function mv($source, $destination)
     {
@@ -223,6 +230,7 @@ class Sftp extends AbstractIo implements IoInterface
      *
      * @param null $grep ignored parameter
      * @return array
+     * @SuppressWarnings(PHPMD.ShortMethodName)
      */
     public function ls($grep = null)
     {
diff --git a/lib/internal/Magento/Framework/Less/PreProcessor/Instruction/Import.php b/lib/internal/Magento/Framework/Less/PreProcessor/Instruction/Import.php
index 90414cf66f27f33207fd95300b9ed0f84c9dc2a6..80adab5f41046a1086fc062fa98e879b5f541be9 100644
--- a/lib/internal/Magento/Framework/Less/PreProcessor/Instruction/Import.php
+++ b/lib/internal/Magento/Framework/Less/PreProcessor/Instruction/Import.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Less\PreProcessor\Instruction;
 
 use Magento\Framework\View\Asset\LocalInterface;
diff --git a/lib/internal/Magento/Framework/Locale/Lists.php b/lib/internal/Magento/Framework/Locale/Lists.php
index 6da8268cf8c6d24229716b33deede24cd3a4a641..168355d54c45dd75d54bc0f701d90155b6639026 100644
--- a/lib/internal/Magento/Framework/Locale/Lists.php
+++ b/lib/internal/Magento/Framework/Locale/Lists.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Locale;
 
 class Lists implements \Magento\Framework\Locale\ListsInterface
@@ -63,6 +66,7 @@ class Lists implements \Magento\Framework\Locale\ListsInterface
      *
      * @param   bool $translatedName translation flag
      * @return  array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _getOptionLocales($translatedName = false)
     {
diff --git a/lib/internal/Magento/Framework/Mail/Template/TransportBuilder.php b/lib/internal/Magento/Framework/Mail/Template/TransportBuilder.php
index 083358a4f7d40c0767b5985784e3607d600a3d97..5cfae3507d6f443c117bb0a9bd4eb5170d249f69 100644
--- a/lib/internal/Magento/Framework/Mail/Template/TransportBuilder.php
+++ b/lib/internal/Magento/Framework/Mail/Template/TransportBuilder.php
@@ -5,6 +5,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Mail\Template;
 
 class TransportBuilder
diff --git a/lib/internal/Magento/Framework/Message/AbstractMessage.php b/lib/internal/Magento/Framework/Message/AbstractMessage.php
index d3226ca88999e41cc9cd91e01e6036551e7cd605..b0a096bf8040ad50ffe49846ec55bd840f0994f9 100644
--- a/lib/internal/Magento/Framework/Message/AbstractMessage.php
+++ b/lib/internal/Magento/Framework/Message/AbstractMessage.php
@@ -100,6 +100,7 @@ abstract class AbstractMessage implements MessageInterface
      * Getter for flag. Whether message is sticky
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsSticky()
     {
diff --git a/lib/internal/Magento/Framework/Message/Factory.php b/lib/internal/Magento/Framework/Message/Factory.php
index c6f3f0443805aa8ab7403c03c6e5c72e185726c1..4c16064b5b6599dbb98f48307601dfff7eda1ee3 100644
--- a/lib/internal/Magento/Framework/Message/Factory.php
+++ b/lib/internal/Magento/Framework/Message/Factory.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Message;
 
 use Magento\Framework\ObjectManagerInterface;
diff --git a/lib/internal/Magento/Framework/Message/Manager.php b/lib/internal/Magento/Framework/Message/Manager.php
index 6b1564b12f592b4d4c2728f71d28aa27b0872a37..73b212a58e3ee88769bd653a815c15ecafde2578 100644
--- a/lib/internal/Magento/Framework/Message/Manager.php
+++ b/lib/internal/Magento/Framework/Message/Manager.php
@@ -10,6 +10,7 @@ use Psr\Log\LoggerInterface as Logger;
 
 /**
  * Message manager model
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Manager implements ManagerInterface
 {
diff --git a/lib/internal/Magento/Framework/Message/MessageInterface.php b/lib/internal/Magento/Framework/Message/MessageInterface.php
index 9dcad0808fba253937b541b136a7e78873c440ce..e5342f49ac042e79fb0b572fca328a1285ab8b22 100644
--- a/lib/internal/Magento/Framework/Message/MessageInterface.php
+++ b/lib/internal/Magento/Framework/Message/MessageInterface.php
@@ -79,6 +79,7 @@ interface MessageInterface
      * Getter for flag. Whether message is sticky
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getIsSticky();
 
diff --git a/lib/internal/Magento/Framework/Model/AbstractExtensibleModel.php b/lib/internal/Magento/Framework/Model/AbstractExtensibleModel.php
index 1d80e645d44d914af1fe7095a115e2e641912506..8e692e8ce312180785a25f5238ea128d9328fe5c 100644
--- a/lib/internal/Magento/Framework/Model/AbstractExtensibleModel.php
+++ b/lib/internal/Magento/Framework/Model/AbstractExtensibleModel.php
@@ -16,6 +16,7 @@ use Symfony\Component\DependencyInjection\Exception\LogicException;
  *
  * This class defines basic data structure of how custom attributes are stored in an ExtensibleModel.
  * Implementations may choose to process custom attributes as their persistence requires them to.
+ * @SuppressWarnings(PHPMD.NumberOfChildren)
  */
 abstract class AbstractExtensibleModel extends AbstractModel implements ExtensibleDataInterface
 {
diff --git a/lib/internal/Magento/Framework/Model/AbstractModel.php b/lib/internal/Magento/Framework/Model/AbstractModel.php
index f3db950bc62355ad0aebc228a4e42e7098aee043..1701fe5d57f1911fd1fd8bf92ab8e4ee45cf0db6 100644
--- a/lib/internal/Magento/Framework/Model/AbstractModel.php
+++ b/lib/internal/Magento/Framework/Model/AbstractModel.php
@@ -11,6 +11,7 @@ namespace Magento\Framework\Model;
  *
  * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  * @SuppressWarnings(PHPMD.NumberOfChildren)
+ * @SuppressWarnings(PHPMD.TooManyFields)
  */
 abstract class AbstractModel extends \Magento\Framework\Object
 {
diff --git a/lib/internal/Magento/Framework/Model/Exception.php b/lib/internal/Magento/Framework/Model/Exception.php
index d68bde4b09531cf6fe84ef3e13310cf4f74b6037..e886d6334dff640305091344ff2b0ad9a8b3fec9 100644
--- a/lib/internal/Magento/Framework/Model/Exception.php
+++ b/lib/internal/Magento/Framework/Model/Exception.php
@@ -9,6 +9,7 @@ namespace Magento\Framework\Model;
  * Magento Model Exception
  *
  * This class will be extended by other modules
+ * @SuppressWarnings(PHPMD.NumberOfChildren)
  */
 class Exception extends \Exception
 {
diff --git a/lib/internal/Magento/Framework/Model/Resource/AbstractResource.php b/lib/internal/Magento/Framework/Model/Resource/AbstractResource.php
index de3f520930421c97c1b889cd358d96880362abf4..831dcf5ae71fb2f832a7372efd8abdfe49a0ac40 100644
--- a/lib/internal/Magento/Framework/Model/Resource/AbstractResource.php
+++ b/lib/internal/Magento/Framework/Model/Resource/AbstractResource.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Model\Resource;
 
 /**
diff --git a/lib/internal/Magento/Framework/Model/Resource/Db/AbstractDb.php b/lib/internal/Magento/Framework/Model/Resource/Db/AbstractDb.php
index 1913652a13297df264499f66787fb4238832df35..e61f60533d5e6d0a8482f9e0c6cc49decd070a69 100644
--- a/lib/internal/Magento/Framework/Model/Resource/Db/AbstractDb.php
+++ b/lib/internal/Magento/Framework/Model/Resource/Db/AbstractDb.php
@@ -10,6 +10,7 @@ use Magento\Framework\Model\Exception as ModelException;
 
 /**
  * Abstract resource model class
+ * @SuppressWarnings(PHPMD.NumberOfChildren)
  */
 abstract class AbstractDb extends \Magento\Framework\Model\Resource\AbstractResource
 {
@@ -356,6 +357,7 @@ abstract class AbstractDb extends \Magento\Framework\Model\Resource\AbstractReso
      * @param mixed $value
      * @param \Magento\Framework\Model\AbstractModel $object
      * @return \Zend_Db_Select
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     protected function _getLoadSelect($field, $value, $object)
     {
@@ -369,6 +371,7 @@ abstract class AbstractDb extends \Magento\Framework\Model\Resource\AbstractReso
      *
      * @param \Magento\Framework\Model\AbstractModel $object
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function save(\Magento\Framework\Model\AbstractModel $object)
     {
@@ -508,6 +511,7 @@ abstract class AbstractDb extends \Magento\Framework\Model\Resource\AbstractReso
      *
      * @param \Magento\Framework\Model\AbstractModel $object
      * @return void
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function unserializeFields(\Magento\Framework\Model\AbstractModel $object)
     {
@@ -593,6 +597,7 @@ abstract class AbstractDb extends \Magento\Framework\Model\Resource\AbstractReso
      * @param \Magento\Framework\Model\AbstractModel $object
      * @return $this
      * @throws ModelException
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _checkUnique(\Magento\Framework\Model\AbstractModel $object)
     {
@@ -655,6 +660,7 @@ abstract class AbstractDb extends \Magento\Framework\Model\Resource\AbstractReso
      *
      * @param \Magento\Framework\Model\AbstractModel|\Magento\Framework\Object $object
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     protected function _afterLoad(\Magento\Framework\Model\AbstractModel $object)
     {
@@ -666,6 +672,7 @@ abstract class AbstractDb extends \Magento\Framework\Model\Resource\AbstractReso
      *
      * @param \Magento\Framework\Model\AbstractModel|\Magento\Framework\Object $object
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     protected function _beforeSave(\Magento\Framework\Model\AbstractModel $object)
     {
@@ -677,6 +684,7 @@ abstract class AbstractDb extends \Magento\Framework\Model\Resource\AbstractReso
      *
      * @param \Magento\Framework\Model\AbstractModel|\Magento\Framework\Object $object
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     protected function _afterSave(\Magento\Framework\Model\AbstractModel $object)
     {
@@ -688,6 +696,7 @@ abstract class AbstractDb extends \Magento\Framework\Model\Resource\AbstractReso
      *
      * @param \Magento\Framework\Model\AbstractModel|\Magento\Framework\Object $object
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     protected function _beforeDelete(\Magento\Framework\Model\AbstractModel $object)
     {
@@ -699,6 +708,7 @@ abstract class AbstractDb extends \Magento\Framework\Model\Resource\AbstractReso
      *
      * @param \Magento\Framework\Model\AbstractModel|\Magento\Framework\Object $object
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     protected function _afterDelete(\Magento\Framework\Model\AbstractModel $object)
     {
@@ -710,6 +720,7 @@ abstract class AbstractDb extends \Magento\Framework\Model\Resource\AbstractReso
      *
      * @param \Magento\Framework\Model\AbstractModel $object
      * @return void
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     protected function _serializeFields(\Magento\Framework\Model\AbstractModel $object)
     {
diff --git a/lib/internal/Magento/Framework/Model/Resource/Db/Collection/AbstractCollection.php b/lib/internal/Magento/Framework/Model/Resource/Db/Collection/AbstractCollection.php
index f51d9f86c29f9508874ed4627c62b163fb30af34..725b39484dcc648022a2c854d34cf3700f53c2a7 100644
--- a/lib/internal/Magento/Framework/Model/Resource/Db/Collection/AbstractCollection.php
+++ b/lib/internal/Magento/Framework/Model/Resource/Db/Collection/AbstractCollection.php
@@ -3,10 +3,14 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Model\Resource\Db\Collection;
 
 /**
  * Abstract Resource Collection
+ * @SuppressWarnings(PHPMD.NumberOfChildren)
  */
 abstract class AbstractCollection extends \Magento\Framework\Data\Collection\Db
 {
@@ -191,6 +195,8 @@ abstract class AbstractCollection extends \Magento\Framework\Data\Collection\Db
      * Init fields for select
      *
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _initSelectFields()
     {
diff --git a/lib/internal/Magento/Framework/Model/Resource/Type/Db/Pdo/Mysql.php b/lib/internal/Magento/Framework/Model/Resource/Type/Db/Pdo/Mysql.php
index 88448af0eead10a85d3d83d24a264e4c2c4724d7..162526fba27ae3f0151e65969b2f12f04d1397d3 100644
--- a/lib/internal/Magento/Framework/Model/Resource/Type/Db/Pdo/Mysql.php
+++ b/lib/internal/Magento/Framework/Model/Resource/Type/Db/Pdo/Mysql.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Model\Resource\Type\Db\Pdo;
 
 use Magento\Framework\App\Resource\ConnectionAdapterInterface;
diff --git a/lib/internal/Magento/Framework/Module/DataSetup.php b/lib/internal/Magento/Framework/Module/DataSetup.php
index 06a3109d39b360ab04adb35189ae73736f5834ad..8d1ff06be4b756ef12bed239845849eb7bf5d551 100644
--- a/lib/internal/Magento/Framework/Module/DataSetup.php
+++ b/lib/internal/Magento/Framework/Module/DataSetup.php
@@ -263,6 +263,7 @@ class DataSetup extends \Magento\Framework\Module\Setup implements \Magento\Fram
      * @param string $toVersion
      * @param array $arrFiles
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _getModifySqlFiles($actionType, $fromVersion, $toVersion, $arrFiles)
     {
@@ -384,6 +385,7 @@ class DataSetup extends \Magento\Framework\Module\Setup implements \Magento\Fram
      * @param string $parentField
      * @param string|integer $parentId
      * @return $this
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function updateTableRow($table, $idField, $rowId, $field, $value = null, $parentField = null, $parentId = 0)
     {
@@ -416,6 +418,7 @@ class DataSetup extends \Magento\Framework\Module\Setup implements \Magento\Fram
      * Check call afterApplyAllUpdates method for setup class
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getCallAfterApplyAllUpdates()
     {
diff --git a/lib/internal/Magento/Framework/Module/ModuleList/Loader.php b/lib/internal/Magento/Framework/Module/ModuleList/Loader.php
index 03c810ebe2dd6201119a20293ebd34df21c05fba..6c5697243d8647a82de5e655a8b10b22677fe5cd 100644
--- a/lib/internal/Magento/Framework/Module/ModuleList/Loader.php
+++ b/lib/internal/Magento/Framework/Module/ModuleList/Loader.php
@@ -66,6 +66,7 @@ class Loader
      *
      * @param array $origList
      * @return array
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     private function sortBySequence($origList)
     {
diff --git a/lib/internal/Magento/Framework/Module/Plugin/DbStatusValidator.php b/lib/internal/Magento/Framework/Module/Plugin/DbStatusValidator.php
index 212de3a06b35e492d5284f7f606a3277f37bb4d0..52cbea3c74f5deb867a27b2b12b944c443cce3b3 100644
--- a/lib/internal/Magento/Framework/Module/Plugin/DbStatusValidator.php
+++ b/lib/internal/Magento/Framework/Module/Plugin/DbStatusValidator.php
@@ -5,6 +5,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Module\Plugin;
 
 use Magento\Framework\Cache\FrontendInterface;
@@ -53,7 +56,7 @@ class DbStatusValidator
             if ($errors) {
                 $formattedErrors = $this->formatErrors($errors);
                 throw new \Magento\Framework\Module\Exception(
-                    'Please update your database: Run "php –f index.php update" from the Magento root/setup directory.'
+                    'Please update your database: Run "php -f index.php update" from the Magento root/setup directory.'
                     . PHP_EOL . 'The following modules are outdated:' . PHP_EOL . implode(PHP_EOL, $formattedErrors)
                 );
             } else {
diff --git a/lib/internal/Magento/Framework/Module/Resource.php b/lib/internal/Magento/Framework/Module/Resource.php
index bfd1238931dc0c0a5865a859a9ac1bc289ab7393..f054cb1480ec3260ffdfbfa558a14cb77a71c4f8 100644
--- a/lib/internal/Magento/Framework/Module/Resource.php
+++ b/lib/internal/Magento/Framework/Module/Resource.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Module;
 
 
diff --git a/lib/internal/Magento/Framework/Module/Setup/MigrationFactory.php b/lib/internal/Magento/Framework/Module/Setup/MigrationFactory.php
index 5bd5bb434c40a533272ee8daf764047ed9851a08..01424e0d979ffa78a041bd9bd388080821519c8e 100644
--- a/lib/internal/Magento/Framework/Module/Setup/MigrationFactory.php
+++ b/lib/internal/Magento/Framework/Module/Setup/MigrationFactory.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Module\Setup;
 
 /**
diff --git a/lib/internal/Magento/Framework/Mview/ActionFactory.php b/lib/internal/Magento/Framework/Mview/ActionFactory.php
index b3ea8fafd04aa35bcc3f820933aeccc06583ef3d..c675bf1bccb97d3a78254580bb73577ca5b83ced 100644
--- a/lib/internal/Magento/Framework/Mview/ActionFactory.php
+++ b/lib/internal/Magento/Framework/Mview/ActionFactory.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Mview;
 
 class ActionFactory
diff --git a/lib/internal/Magento/Framework/Mview/View.php b/lib/internal/Magento/Framework/Mview/View.php
index c476171608fbc4bf20306cee1c7694442d9eede7..47b43916febc51d04a94035a3dbb9b68992fff04 100644
--- a/lib/internal/Magento/Framework/Mview/View.php
+++ b/lib/internal/Magento/Framework/Mview/View.php
@@ -3,8 +3,14 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Mview;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class View extends \Magento\Framework\Object implements ViewInterface
 {
     /**
diff --git a/lib/internal/Magento/Framework/Mview/View/Subscription.php b/lib/internal/Magento/Framework/Mview/View/Subscription.php
index 0d64eb27bb14aab52b1c0ec46d73840e131eeb4b..498cb0e147801ef8709a89a13def616677662be3 100644
--- a/lib/internal/Magento/Framework/Mview/View/Subscription.php
+++ b/lib/internal/Magento/Framework/Mview/View/Subscription.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Mview\View;
 
 class Subscription implements SubscriptionInterface
diff --git a/lib/internal/Magento/Framework/Object.php b/lib/internal/Magento/Framework/Object.php
index 695be22ce6da3ed9db4e5dbd68c03c38237a9bf7..62a154337eb9da2a7a9302839f01a4498cb4132a 100644
--- a/lib/internal/Magento/Framework/Object.php
+++ b/lib/internal/Magento/Framework/Object.php
@@ -9,6 +9,7 @@ namespace Magento\Framework;
  * Universal data container with array access implementation
  *
  * @author      Magento Core Team <core@magentocommerce.com>
+ * @SuppressWarnings(PHPMD.NumberOfChildren)
  */
 class Object implements \ArrayAccess
 {
diff --git a/lib/internal/Magento/Framework/Object/Cache.php b/lib/internal/Magento/Framework/Object/Cache.php
index 3f24b856c9fa3674bcbb8f1a62911a250f3a6a3a..57d8a5625a980bbad4b2e24278875b7fc9444598 100644
--- a/lib/internal/Magento/Framework/Object/Cache.php
+++ b/lib/internal/Magento/Framework/Object/Cache.php
@@ -123,6 +123,8 @@ class Cache
      * @param array|string $tags
      * @return string
      * @throws \Magento\Framework\Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function save($object, $idx = null, $tags = null)
     {
@@ -274,6 +276,7 @@ class Cache
      *
      * @param array|string $tags
      * @return true
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function deleteByTags($tags)
     {
@@ -348,6 +351,7 @@ class Cache
      *
      * @param array|string $tags
      * @return array
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function findByTags($tags)
     {
@@ -389,6 +393,7 @@ class Cache
      * @param string $idx
      * @param object|null $object
      * @return void
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function debug($idx, $object = null)
     {
diff --git a/lib/internal/Magento/Framework/Object/Mapper.php b/lib/internal/Magento/Framework/Object/Mapper.php
index bffeefb451d0ce21da9275aa19acd10ef545c28a..ffa9bcb041e8c8f2965710498142e69622193d97 100644
--- a/lib/internal/Magento/Framework/Object/Mapper.php
+++ b/lib/internal/Magento/Framework/Object/Mapper.php
@@ -9,6 +9,10 @@
  */
 namespace Magento\Framework\Object;
 
+/**
+ * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+ * @SuppressWarnings(PHPMD.NPathComplexity)
+ */
 class Mapper
 {
     /**
diff --git a/lib/internal/Magento/Framework/ObjectManager/Code/Generator/Persistor.php b/lib/internal/Magento/Framework/ObjectManager/Code/Generator/Persistor.php
index abb3869c42c7aa159e168347b84e305889e393a4..45c3886ff2fbe9a4d76287cb7e5042d28056b689 100644
--- a/lib/internal/Magento/Framework/ObjectManager/Code/Generator/Persistor.php
+++ b/lib/internal/Magento/Framework/ObjectManager/Code/Generator/Persistor.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\ObjectManager\Code\Generator;
 
 /**
diff --git a/lib/internal/Magento/Framework/ObjectManager/Code/Generator/Repository.php b/lib/internal/Magento/Framework/ObjectManager/Code/Generator/Repository.php
index 98a2694ad9918332ab69879ace5b51d013b9a3f6..d098d3a9bb30469ab0dab68b300bf8d41bceff70 100644
--- a/lib/internal/Magento/Framework/ObjectManager/Code/Generator/Repository.php
+++ b/lib/internal/Magento/Framework/ObjectManager/Code/Generator/Repository.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\ObjectManager\Code\Generator;
 
 /**
@@ -38,7 +41,7 @@ class Repository extends \Magento\Framework\Code\Generator\EntityAbstract
                     'tags' => [
                         [
                             'name' => 'var',
-                            'description' => $this->_getFullyQualifiedClassName($this->_getSourceClassName()) . 'Persistor',
+                            'description' => $this->_getPersistorClassName(),
                         ],
                     ],
                 ],
@@ -106,6 +109,19 @@ class Repository extends \Magento\Framework\Code\Generator\EntityAbstract
             str_replace('Interface', '', $this->_getFullyQualifiedClassName($this->_getSourceClassName()))
             . 'SearchResultInterfaceFactory';
     }
+    /**
+     * Returns source persistor class name
+     *
+     * @return string
+     */
+    protected function _getPersistorClassName()
+    {
+        $target = $this->_getFullyQualifiedClassName($this->_getSourceClassName());
+//        if (substr($target, -9) == 'Interface') {
+//            $target = substr($target, 1, strlen($target) -9);
+//        }
+        return $target . 'Persistor';
+    }
 
     /**
      * Get default constructor definition for generated class
@@ -119,7 +135,7 @@ class Repository extends \Magento\Framework\Code\Generator\EntityAbstract
             'parameters' => [
                 [
                     'name' => $this->_getSourcePersistorPropertyName(),
-                    'type' => $this->_getFullyQualifiedClassName($this->_getSourceClassName()) . 'Persistor',
+                    'type' => $this->_getPersistorClassName(),
                 ],
                 [
                     'name' => $this->_getSourceCollectionFactoryPropertyName(),
diff --git a/lib/internal/Magento/Framework/ObjectManager/Config/Compiled.php b/lib/internal/Magento/Framework/ObjectManager/Config/Compiled.php
index 131e4bfcbaad6a2de4b200e3727b5b25288fd901..a7484882066437cbb5d5a97c4cdd15bf1cb474b5 100644
--- a/lib/internal/Magento/Framework/ObjectManager/Config/Compiled.php
+++ b/lib/internal/Magento/Framework/ObjectManager/Config/Compiled.php
@@ -145,4 +145,14 @@ class Compiled implements \Magento\Framework\ObjectManager\ConfigInterface
     {
         return $this->virtualTypes;
     }
+
+    /**
+     * Returns list on preferences
+     *
+     * @return array
+     */
+    public function getPreferences()
+    {
+        return $this->preferences;
+    }
 }
diff --git a/lib/internal/Magento/Framework/ObjectManager/Config/Config.php b/lib/internal/Magento/Framework/ObjectManager/Config/Config.php
index 29c0432bdc56d37950003bda1d2092931dd7d09b..6f05e61be5351ae55fd2b9fcc9742b042491b9ae 100644
--- a/lib/internal/Magento/Framework/ObjectManager/Config/Config.php
+++ b/lib/internal/Magento/Framework/ObjectManager/Config/Config.php
@@ -313,4 +313,14 @@ class Config implements \Magento\Framework\ObjectManager\ConfigInterface
     {
         return $this->_virtualTypes;
     }
+
+    /**
+     * Returns list on preferences
+     *
+     * @return array
+     */
+    public function getPreferences()
+    {
+        return $this->_preferences;
+    }
 }
diff --git a/lib/internal/Magento/Framework/ObjectManager/ConfigInterface.php b/lib/internal/Magento/Framework/ObjectManager/ConfigInterface.php
index 9e023fcc5e3e85a94f9855b0741edc5598628d80..8f8f91297dc2a9ef69417f9419b10caf31759a95 100644
--- a/lib/internal/Magento/Framework/ObjectManager/ConfigInterface.php
+++ b/lib/internal/Magento/Framework/ObjectManager/ConfigInterface.php
@@ -72,4 +72,11 @@ interface ConfigInterface
      * @return void
      */
     public function extend(array $configuration);
+
+    /**
+     * Returns list on preferences
+     *
+     * @return array
+     */
+    public function getPreferences();
 }
diff --git a/lib/internal/Magento/Framework/ObjectManager/DefinitionFactory.php b/lib/internal/Magento/Framework/ObjectManager/DefinitionFactory.php
index c71e32ac3cf7a2667cf45b3e64040634ca36b26f..d735a93154406cd341876c4cfc69e2a0d5c79005 100644
--- a/lib/internal/Magento/Framework/ObjectManager/DefinitionFactory.php
+++ b/lib/internal/Magento/Framework/ObjectManager/DefinitionFactory.php
@@ -6,6 +6,9 @@
  * See COPYING.txt for license details.
  *
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\ObjectManager;
 
 use Magento\Framework\Api\Code\Generator\DataBuilder as DataBuilderGenerator;
diff --git a/lib/internal/Magento/Framework/Parse/Zip.php b/lib/internal/Magento/Framework/Parse/Zip.php
index 6cac80ecd8d1c98395c30765db199a3e82dde3f2..aebc4af30e9f66b57aae094742420145247067ec 100644
--- a/lib/internal/Magento/Framework/Parse/Zip.php
+++ b/lib/internal/Magento/Framework/Parse/Zip.php
@@ -45,6 +45,9 @@ class Zip
      *
      * @param  string $zipRange
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     public static function zipRangeToZipPattern($zipRange)
     {
diff --git a/lib/internal/Magento/Framework/Pricing/Price/Collection.php b/lib/internal/Magento/Framework/Pricing/Price/Collection.php
index e0d9fbe0cf8947c3589aa933b44dbfc18a121b88..d9bd5730df654a221f4cf22e835394111a08dad5 100644
--- a/lib/internal/Magento/Framework/Pricing/Price/Collection.php
+++ b/lib/internal/Magento/Framework/Pricing/Price/Collection.php
@@ -43,6 +43,13 @@ class Collection implements \Iterator
      */
     protected $excludes;
 
+    /**
+     * Cached price models
+     *
+     * @var array
+     */
+    protected $priceModels;
+
     /**
      * Constructor
      *
@@ -61,6 +68,7 @@ class Collection implements \Iterator
         $this->priceFactory = $priceFactory;
         $this->pool = $pool;
         $this->quantity = $quantity;
+        $this->priceModels = [];
     }
 
     /**
@@ -121,10 +129,13 @@ class Collection implements \Iterator
      */
     public function get($code)
     {
-        return $this->priceFactory->create(
-            $this->saleableItem,
-            $this->pool[$code],
-            $this->quantity
-        );
+        if (!isset($this->priceModels[$code])) {
+            $this->priceModels[$code] = $this->priceFactory->create(
+                $this->saleableItem,
+                $this->pool[$code],
+                $this->quantity
+            );
+        }
+        return $this->priceModels[$code];
     }
 }
diff --git a/lib/internal/Magento/Framework/Pricing/PriceCurrencyInterface.php b/lib/internal/Magento/Framework/Pricing/PriceCurrencyInterface.php
index aa86b245666d2e54f6b30df498ff93a19eb08795..9a0c8b2925b027ea2f72dfe536820fe2d3888181 100644
--- a/lib/internal/Magento/Framework/Pricing/PriceCurrencyInterface.php
+++ b/lib/internal/Magento/Framework/Pricing/PriceCurrencyInterface.php
@@ -30,12 +30,12 @@ interface PriceCurrencyInterface
      * Convert and round price value
      *
      * @param float $amount
-     * @param null|string|bool|int|\Magento\Store\Model\Store $store
-     * @param \Magento\Directory\Model\Currency|string|null $currency
+     * @param null|string|bool|int|\Magento\Framework\App\ScopeInterface $scope
+     * @param \Magento\Framework\Model\AbstractModel|string|null $currency
      * @param int $precision
      * @return float
      */
-    public function convertAndRound($amount, $store = null, $currency = null, $precision = self::DEFAULT_PRECISION);
+    public function convertAndRound($amount, $scope = null, $currency = null, $precision = self::DEFAULT_PRECISION);
 
     /**
      * Format price value
diff --git a/lib/internal/Magento/Framework/Pricing/Render/RendererPool.php b/lib/internal/Magento/Framework/Pricing/Render/RendererPool.php
index 8e956dfeccaf6bd4bbb9942a79dba746206c11f5..c501e4adf70fdc644f682fc69a0347313efb5eb0 100644
--- a/lib/internal/Magento/Framework/Pricing/Render/RendererPool.php
+++ b/lib/internal/Magento/Framework/Pricing/Render/RendererPool.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Pricing\Render;
 
 use Magento\Framework\Pricing\Amount\AmountInterface;
diff --git a/lib/internal/Magento/Framework/Profiler/Driver/Factory.php b/lib/internal/Magento/Framework/Profiler/Driver/Factory.php
index 095f65b6b57c5b47c542dec9dc17427761cf3cc0..143520c7560929d9d837296d44b15ba0c2209de6 100644
--- a/lib/internal/Magento/Framework/Profiler/Driver/Factory.php
+++ b/lib/internal/Magento/Framework/Profiler/Driver/Factory.php
@@ -5,6 +5,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Profiler\Driver;
 
 use Magento\Framework\Profiler\DriverInterface;
diff --git a/lib/internal/Magento/Framework/Search/Adapter/Mysql/Aggregation/Interval.php b/lib/internal/Magento/Framework/Search/Adapter/Mysql/Aggregation/Interval.php
index 1ee710cab14e6322112d524915467ca25ef553dd..d33d1e914e801165b35161cddf46a3b023e20fb4 100644
--- a/lib/internal/Magento/Framework/Search/Adapter/Mysql/Aggregation/Interval.php
+++ b/lib/internal/Magento/Framework/Search/Adapter/Mysql/Aggregation/Interval.php
@@ -41,6 +41,7 @@ class Interval implements IntervalInterface
 
     /**
      * {@inheritdoc}
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function load($limit, $offset = null, $lower = null, $upper = null)
     {
@@ -63,6 +64,7 @@ class Interval implements IntervalInterface
 
     /**
      * {@inheritdoc}
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function loadPrevious($data, $index, $lower = null)
     {
@@ -84,6 +86,7 @@ class Interval implements IntervalInterface
 
     /**
      * {@inheritdoc}
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function loadNext($data, $rightIndex, $upper = null)
     {
diff --git a/lib/internal/Magento/Framework/Search/Adapter/Mysql/Mapper.php b/lib/internal/Magento/Framework/Search/Adapter/Mysql/Mapper.php
index 959ba62775a47d2e97750ac7ff2f194fafcfb1d0..2f8579a79e2dc678bba7880661b7d764bf6faba5 100644
--- a/lib/internal/Magento/Framework/Search/Adapter/Mysql/Mapper.php
+++ b/lib/internal/Magento/Framework/Search/Adapter/Mysql/Mapper.php
@@ -16,6 +16,7 @@ use Magento\Framework\Search\RequestInterface;
 
 /**
  * Mapper class. Maps library request to specific adapter dependent query
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  */
 class Mapper
 {
diff --git a/lib/internal/Magento/Framework/Search/Dynamic/Algorithm.php b/lib/internal/Magento/Framework/Search/Dynamic/Algorithm.php
index 13223af7352198aea764e010897ae5c2a355ba13..317a0b559148f7b7b6cb09817e0be815f1d286ec 100644
--- a/lib/internal/Magento/Framework/Search/Dynamic/Algorithm.php
+++ b/lib/internal/Magento/Framework/Search/Dynamic/Algorithm.php
@@ -163,6 +163,8 @@ class Algorithm
      *
      * @param IntervalInterface $interval
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function calculateSeparators(IntervalInterface $interval)
     {
@@ -259,6 +261,9 @@ class Algorithm
      * @param int $quantileNumber should be from 1 to n-1 where n is number of intervals
      * @param IntervalInterface $interval
      * @return array|null
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
      */
     protected function _findValueSeparator($quantileNumber, IntervalInterface $interval)
     {
@@ -419,6 +424,8 @@ class Algorithm
      * @param bool $returnEmpty whether empty result is acceptable
      * @param null|float $roundingFactor if given, checks for range to contain the factor
      * @return false|array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _findRoundValue($lowerValue, $upperValue, $returnEmpty = true, $roundingFactor = null)
     {
@@ -548,6 +555,8 @@ class Algorithm
      * @param float $value
      * @param null|float[] $limits search [from, to]
      * @return int
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _binarySearch($value, $limits = null)
     {
diff --git a/lib/internal/Magento/Framework/Search/Request/Binder.php b/lib/internal/Magento/Framework/Search/Request/Binder.php
index 9eac805147d15b5e24db49d8a740d92ce4bd58a1..a6ec65f17510b6a2a77b3309332c6a98978ecbd6 100644
--- a/lib/internal/Magento/Framework/Search/Request/Binder.php
+++ b/lib/internal/Magento/Framework/Search/Request/Binder.php
@@ -48,6 +48,7 @@ class Binder
      * @param array $data
      * @param array $bindData
      * @return array
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     private function processDimensions($data, $bindData)
     {
diff --git a/lib/internal/Magento/Framework/Search/Request/Cleaner.php b/lib/internal/Magento/Framework/Search/Request/Cleaner.php
index d50c955609d5002044f5e9f6e2f5ee36c487e8cd..b3182007c3a3d9fe7617654a8f39e803b201bdc2 100644
--- a/lib/internal/Magento/Framework/Search/Request/Cleaner.php
+++ b/lib/internal/Magento/Framework/Search/Request/Cleaner.php
@@ -65,6 +65,8 @@ class Cleaner
      * @return void
      * @throws StateException
      * @throws \Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     private function cleanQuery($queryName)
     {
@@ -130,6 +132,7 @@ class Cleaner
      * @return void
      * @throws StateException
      * @throws \Exception
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     private function cleanFilter($filterName)
     {
diff --git a/lib/internal/Magento/Framework/Search/Request/Mapper.php b/lib/internal/Magento/Framework/Search/Request/Mapper.php
index 346b5a6603980651eaa65ee3ae26b80e6dc727a9..488880d07a00053431c277993b0715cc95f01b69 100644
--- a/lib/internal/Magento/Framework/Search/Request/Mapper.php
+++ b/lib/internal/Magento/Framework/Search/Request/Mapper.php
@@ -8,6 +8,9 @@ namespace Magento\Framework\Search\Request;
 use Magento\Framework\Exception\StateException;
 use Magento\Framework\Search\Request\Query\Filter;
 
+/**
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
 class Mapper
 {
     /**
@@ -96,6 +99,7 @@ class Mapper
      * @throws \Exception
      * @throws \InvalidArgumentException
      * @throws StateException
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     private function mapQuery($queryName)
     {
diff --git a/lib/internal/Magento/Framework/Session/Config.php b/lib/internal/Magento/Framework/Session/Config.php
index 8ded4ded7584f60135ca3ae0cfb059aa11839330..ff11331c7a904855cb289e9438ba55f0e96d9d92 100644
--- a/lib/internal/Magento/Framework/Session/Config.php
+++ b/lib/internal/Magento/Framework/Session/Config.php
@@ -110,6 +110,7 @@ class Config implements ConfigInterface
      * @param DeploymentConfig $deploymentConfig
      * @param string $scopeType
      * @param string $lifetimePath
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function __construct(
         \Magento\Framework\ValidatorFactory $validatorFactory,
@@ -407,6 +408,7 @@ class Config implements ConfigInterface
      * Get session.cookie_secure
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getCookieSecure()
     {
@@ -429,6 +431,7 @@ class Config implements ConfigInterface
      * Get session.cookie_httponly
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getCookieHttpOnly()
     {
@@ -451,6 +454,7 @@ class Config implements ConfigInterface
      * Get session.use_cookies
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getUseCookies()
     {
diff --git a/lib/internal/Magento/Framework/Session/Config/ConfigInterface.php b/lib/internal/Magento/Framework/Session/Config/ConfigInterface.php
index accba2d69b8293575c1aa757998b8a3a23a1aedd..6c2372d20be4fc7c759618cdda8a93dfad19fc21 100644
--- a/lib/internal/Magento/Framework/Session/Config/ConfigInterface.php
+++ b/lib/internal/Magento/Framework/Session/Config/ConfigInterface.php
@@ -135,6 +135,7 @@ interface ConfigInterface
      * Get session.cookie_secure
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getCookieSecure();
 
@@ -150,6 +151,7 @@ interface ConfigInterface
      * Get session.cookie_httponly
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getCookieHttpOnly();
 
@@ -165,6 +167,7 @@ interface ConfigInterface
      * Get session.use_cookies
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getUseCookies();
 }
diff --git a/lib/internal/Magento/Framework/Session/SaveHandler.php b/lib/internal/Magento/Framework/Session/SaveHandler.php
index 324c155d16c1145c50599d7c7bf41565792b08cd..bfd8a6958a712c8a52d9e2031748180c675e6d53 100644
--- a/lib/internal/Magento/Framework/Session/SaveHandler.php
+++ b/lib/internal/Magento/Framework/Session/SaveHandler.php
@@ -102,6 +102,7 @@ class SaveHandler implements SaveHandlerInterface
      *
      * @param int $maxLifetime
      * @return bool
+     * @SuppressWarnings(PHPMD.ShortMethodName)
      */
     public function gc($maxLifetime)
     {
diff --git a/lib/internal/Magento/Framework/Session/SaveHandler/DbTable.php b/lib/internal/Magento/Framework/Session/SaveHandler/DbTable.php
index 7cdc3feac29471d82f9677463312ba792e34820f..5d05e5ffbe9c388015ef853c1ccee955b30eae87 100644
--- a/lib/internal/Magento/Framework/Session/SaveHandler/DbTable.php
+++ b/lib/internal/Magento/Framework/Session/SaveHandler/DbTable.php
@@ -58,6 +58,7 @@ class DbTable extends \SessionHandler
      * @param string $savePath ignored
      * @param string $sessionName ignored
      * @return bool
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function open($savePath, $sessionName)
     {
@@ -145,6 +146,7 @@ class DbTable extends \SessionHandler
      *
      * @param int $maxLifeTime
      * @return bool
+     * @SuppressWarnings(PHPMD.ShortMethodName)
      */
     public function gc($maxLifeTime)
     {
diff --git a/lib/internal/Magento/Framework/Session/SessionManager.php b/lib/internal/Magento/Framework/Session/SessionManager.php
index 018a0717d2b35d1125b83dd61b61edd9088e7eb6..8c2c03d0dd849cf1abf8d205f47a43684b9d7fc6 100644
--- a/lib/internal/Magento/Framework/Session/SessionManager.php
+++ b/lib/internal/Magento/Framework/Session/SessionManager.php
@@ -343,6 +343,7 @@ class SessionManager implements SessionManagerInterface
      *
      * @param string $urlHost can be host or url
      * @return string {session_id_key}={session_id_encrypted}
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function getSessionIdForHost($urlHost)
     {
diff --git a/lib/internal/Magento/Framework/Session/SidResolver.php b/lib/internal/Magento/Framework/Session/SidResolver.php
index 7276012389b84805c1781dd7d41da94f6e71ccae..0eedd921cea9905668d6894276e7f2b7a7f2bf25 100644
--- a/lib/internal/Magento/Framework/Session/SidResolver.php
+++ b/lib/internal/Magento/Framework/Session/SidResolver.php
@@ -127,6 +127,7 @@ class SidResolver implements SidResolverInterface
      * Retrieve use flag session var instead of SID for URL
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getUseSessionVar()
     {
@@ -149,6 +150,7 @@ class SidResolver implements SidResolverInterface
      * Retrieve use session in URL flag
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getUseSessionInUrl()
     {
diff --git a/lib/internal/Magento/Framework/Session/SidResolverInterface.php b/lib/internal/Magento/Framework/Session/SidResolverInterface.php
index 63c14f353f64c6d39d681c0f0cf53dc48c42d411..b3467a5d0ef133b316b56a45ec7b0cc681e40ca1 100644
--- a/lib/internal/Magento/Framework/Session/SidResolverInterface.php
+++ b/lib/internal/Magento/Framework/Session/SidResolverInterface.php
@@ -42,6 +42,7 @@ interface SidResolverInterface
      * Retrieve use flag session var instead of SID for URL
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getUseSessionVar();
 
@@ -57,6 +58,7 @@ interface SidResolverInterface
      * Retrieve use session in URL flag
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getUseSessionInUrl();
 }
diff --git a/lib/internal/Magento/Framework/Simplexml/Config.php b/lib/internal/Magento/Framework/Simplexml/Config.php
index ba38f560de34f06a98284af6405f8fbc5d9839c9..f94ec099c6fc5124217d1fbd52b3a3fae5b95d1c 100644
--- a/lib/internal/Magento/Framework/Simplexml/Config.php
+++ b/lib/internal/Magento/Framework/Simplexml/Config.php
@@ -184,6 +184,7 @@ class Config
      * Enter description here...
      *
      * @return boolean
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getCacheSaved()
     {
diff --git a/lib/internal/Magento/Framework/Simplexml/Element.php b/lib/internal/Magento/Framework/Simplexml/Element.php
index 69e04dc7692ce245332819c0e8166b561ffe219b..98c881f1dd274ddb61fad6391ee6d2d500215bc8 100644
--- a/lib/internal/Magento/Framework/Simplexml/Element.php
+++ b/lib/internal/Magento/Framework/Simplexml/Element.php
@@ -27,6 +27,7 @@ class Element extends \SimpleXMLElement
      *
      * @param \Magento\Framework\Simplexml\Element $element
      * @return void
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function setParent($element)
     {
@@ -59,6 +60,7 @@ class Element extends \SimpleXMLElement
      * Enter description here...
      *
      * @return boolean
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function hasChildren()
     {
@@ -93,6 +95,7 @@ class Element extends \SimpleXMLElement
      * @todo    param string $path Subset of xpath. Example: "child/grand[@attrName='attrValue']/subGrand"
      * @param   string $path Example: "child/grand@attrName=attrValue/subGrand" (to make it faster without regex)
      * @return  \Magento\Framework\Simplexml\Element
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function descend($path)
     {
@@ -222,6 +225,8 @@ class Element extends \SimpleXMLElement
      * @param string $filename
      * @param int|boolean $level if false
      * @return string
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function asNiceXml($filename = '', $level = 0)
     {
@@ -368,6 +373,8 @@ class Element extends \SimpleXMLElement
      * @param \Magento\Framework\Simplexml\Element $source
      * @param boolean $overwrite
      * @return $this
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
      */
     public function extendChild($source, $overwrite = false)
     {
diff --git a/lib/internal/Magento/Framework/Stdlib/ArrayUtils.php b/lib/internal/Magento/Framework/Stdlib/ArrayUtils.php
index 06fd8901909ee9d8efbf27d651a337231281e761..cde6db70a5b429ef72b937b32cd0a8baf8c043ed 100644
--- a/lib/internal/Magento/Framework/Stdlib/ArrayUtils.php
+++ b/lib/internal/Magento/Framework/Stdlib/ArrayUtils.php
@@ -56,6 +56,8 @@ class ArrayUtils
      * @param string $prefix
      * @param bool $forceSetAll
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function decorateArray($array, $prefix = 'decorated_', $forceSetAll = false)
     {
diff --git a/lib/internal/Magento/Framework/Stdlib/DateTime/DateInterface.php b/lib/internal/Magento/Framework/Stdlib/DateTime/DateInterface.php
index 0da79c1abe940c74aa2f237abe1ecbb1a6d04eb1..369139a054ad4457108ae647b9d15933e0d772b8 100644
--- a/lib/internal/Magento/Framework/Stdlib/DateTime/DateInterface.php
+++ b/lib/internal/Magento/Framework/Stdlib/DateTime/DateInterface.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Stdlib\DateTime;
 
 interface DateInterface
diff --git a/lib/internal/Magento/Framework/Stdlib/DateTime/TimezoneInterface.php b/lib/internal/Magento/Framework/Stdlib/DateTime/TimezoneInterface.php
index 19f1532aeea077c77dc321babe35e477ebc4e465..725f64ec64034ff9aaaf72d033d9e98f3005d2b6 100644
--- a/lib/internal/Magento/Framework/Stdlib/DateTime/TimezoneInterface.php
+++ b/lib/internal/Magento/Framework/Stdlib/DateTime/TimezoneInterface.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Stdlib\DateTime;
 
 interface TimezoneInterface
diff --git a/lib/internal/Magento/Framework/Stdlib/String.php b/lib/internal/Magento/Framework/Stdlib/String.php
index 5b2cd7ccc4d220ba082616c5c95c8c2545ebb19b..bdf506b3b5d25280071812760c29212812dd3c8f 100644
--- a/lib/internal/Magento/Framework/Stdlib/String.php
+++ b/lib/internal/Magento/Framework/Stdlib/String.php
@@ -66,6 +66,8 @@ class String
      * @param bool $trim
      * @param string $wordSeparatorRegex
      * @return string[]
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function split($value, $length = 1, $keepWords = false, $trim = false, $wordSeparatorRegex = '\s')
     {
diff --git a/lib/internal/Magento/Framework/System/Dirs.php b/lib/internal/Magento/Framework/System/Dirs.php
index 48135e6214e33a7a3e4420b80124746f3317462b..aa8731c6fce2fe7175c53f6d497a83b0036cc022 100644
--- a/lib/internal/Magento/Framework/System/Dirs.php
+++ b/lib/internal/Magento/Framework/System/Dirs.php
@@ -10,6 +10,9 @@ class Dirs
     /**
      * @param string[]|string $dirname
      * @return bool
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
+     * @SuppressWarnings(PHPMD.ShortMethodName)
      */
     public static function rm($dirname)
     {
@@ -91,6 +94,7 @@ class Dirs
      * @param string $dest
      * @return void
      * @throws \Exception
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public static function copyFileStrict($source, $dest)
     {
diff --git a/lib/internal/Magento/Framework/System/Ftp.php b/lib/internal/Magento/Framework/System/Ftp.php
index 6d550651b7a0ac00d0de5cb2a53e1475888764f0..d02ceec99093e67f3b2a514d9fcf986f4c7aad3c 100644
--- a/lib/internal/Magento/Framework/System/Ftp.php
+++ b/lib/internal/Magento/Framework/System/Ftp.php
@@ -333,6 +333,7 @@ class Ftp
      * @param int $fileMode         FTP_BINARY | FTP_ASCII
      * @param int $resumeOffset
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function get($localFile, $remoteFile, $fileMode = FTP_BINARY, $resumeOffset = 0)
     {
@@ -427,6 +428,7 @@ class Ftp
      * @param string $dir
      * @param bool $recursive
      * @return array
+     * @SuppressWarnings(PHPMD.ShortMethodName)
      */
     public function ls($dir = "/", $recursive = false)
     {
diff --git a/lib/internal/Magento/Framework/Test/Utility/Files.php b/lib/internal/Magento/Framework/Test/Utility/Files.php
index 30ad68f115fb88a5e2e99b2ba0a77e6e238a6449..edb0b8a83d9edda2c79330f4fda83d7542068fc9 100644
--- a/lib/internal/Magento/Framework/Test/Utility/Files.php
+++ b/lib/internal/Magento/Framework/Test/Utility/Files.php
@@ -1069,7 +1069,7 @@ class Files
              */
             $files = glob(self::init()->getPathToSource() . '/' . $pattern, GLOB_BRACE);
             if (empty($files)) {
-                throw new \Exception("The glob() pattern '{$pattern}' didn't return any result.");
+                continue;
             }
             $result = array_merge($result, $files);
         }
diff --git a/lib/internal/Magento/Framework/Translate/Adapter.php b/lib/internal/Magento/Framework/Translate/Adapter.php
index 07f907011a2262f6ba68cb8b85b16bd3c38747e2..39a8c338b63560b65cb965dae7b32352654a6c8b 100644
--- a/lib/internal/Magento/Framework/Translate/Adapter.php
+++ b/lib/internal/Magento/Framework/Translate/Adapter.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Magento translate adapter
  */
diff --git a/lib/internal/Magento/Framework/Translate/AdapterInterface.php b/lib/internal/Magento/Framework/Translate/AdapterInterface.php
index d2344d4a49aae13ea826c799f1559f464c463abb..19a4bbdc7f908289602baecb4142a72a5ff5572d 100644
--- a/lib/internal/Magento/Framework/Translate/AdapterInterface.php
+++ b/lib/internal/Magento/Framework/Translate/AdapterInterface.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Magento translate adapter interface
  */
diff --git a/lib/internal/Magento/Framework/Translate/Inline.php b/lib/internal/Magento/Framework/Translate/Inline.php
index 27d6931281b6771cfd5cb575c0449f085a19c9f7..21730dc60a2cda5a6d45e70fa790442644e18cf2 100644
--- a/lib/internal/Magento/Framework/Translate/Inline.php
+++ b/lib/internal/Magento/Framework/Translate/Inline.php
@@ -5,6 +5,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Translate;
 
 class Inline implements \Magento\Framework\Translate\InlineInterface
@@ -166,6 +169,7 @@ class Inline implements \Magento\Framework\Translate\InlineInterface
      *
      * @param mixed|string|null $tagName
      * @return null
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function getAdditionalHtmlAttribute($tagName = null)
     {
diff --git a/lib/internal/Magento/Framework/Translate/Locale/Resolver/Plugin.php b/lib/internal/Magento/Framework/Translate/Locale/Resolver/Plugin.php
index f91c0f380957e1b4e6dac397b2bcddb22c4fd6b4..2112b33aad7b352985895fb44f318b3bbbc33d4c 100644
--- a/lib/internal/Magento/Framework/Translate/Locale/Resolver/Plugin.php
+++ b/lib/internal/Magento/Framework/Translate/Locale/Resolver/Plugin.php
@@ -27,6 +27,7 @@ class Plugin
      * @param \Magento\Framework\Locale\ResolverInterface $subject
      * @param string|null $localeCode
      * @return void
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function afterEmulate(\Magento\Framework\Locale\ResolverInterface $subject, $localeCode)
     {
@@ -37,6 +38,7 @@ class Plugin
      * @param \Magento\Framework\Locale\ResolverInterface $subject
      * @param string|null $localeCode
      * @return void
+     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
      */
     public function afterRevert(\Magento\Framework\Locale\ResolverInterface $subject, $localeCode)
     {
diff --git a/lib/internal/Magento/Framework/Url.php b/lib/internal/Magento/Framework/Url.php
index 52e81323a25e6ddf7c4781e369f5bab16dc158d6..b49406a36caf43966d5180a804bd64d4ff0054f4 100644
--- a/lib/internal/Magento/Framework/Url.php
+++ b/lib/internal/Magento/Framework/Url.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework;
 
 /**
@@ -53,6 +55,7 @@ namespace Magento\Framework;
  * - F: host_url
  * - G: route_path
  * - H: route_url
+ * @SuppressWarnings(PHPMD.ExcessiveClassComplexity)
  */
 class Url extends \Magento\Framework\Object implements \Magento\Framework\UrlInterface
 {
@@ -159,6 +162,7 @@ class Url extends \Magento\Framework\Object implements \Magento\Framework\UrlInt
      * @param \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig
      * @param string $scopeType
      * @param array $data
+     * @SuppressWarnings(PHPMD.ExcessiveParameterList)
      */
     public function __construct(
         \Magento\Framework\App\Route\ConfigInterface $routeConfig,
@@ -230,6 +234,7 @@ class Url extends \Magento\Framework\Object implements \Magento\Framework\UrlInt
      * Retrieve use session rule
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getUseSession()
     {
@@ -426,6 +431,7 @@ class Url extends \Magento\Framework\Object implements \Magento\Framework\UrlInt
      *
      * @param string $data
      * @return \Magento\Framework\UrlInterface
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _setRoutePath($data)
     {
@@ -506,6 +512,7 @@ class Url extends \Magento\Framework\Object implements \Magento\Framework\UrlInt
      *
      * @param array $routeParams
      * @return string
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     protected function _getRoutePath($routeParams = [])
     {
@@ -763,6 +770,8 @@ class Url extends \Magento\Framework\Object implements \Magento\Framework\UrlInt
      * @param   string|null $routePath
      * @param   array|null $routeParams
      * @return  string
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     public function getUrl($routePath = null, $routeParams = null)
     {
diff --git a/lib/internal/Magento/Framework/UrlFactory.php b/lib/internal/Magento/Framework/UrlFactory.php
index 4521f2158ed5bee24d48f8754c2ad49857b3c057..f3e65d808ca58ceb6aba8bbc05f24daa62b878b5 100644
--- a/lib/internal/Magento/Framework/UrlFactory.php
+++ b/lib/internal/Magento/Framework/UrlFactory.php
@@ -3,6 +3,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework;
 
 class UrlFactory
diff --git a/lib/internal/Magento/Framework/UrlInterface.php b/lib/internal/Magento/Framework/UrlInterface.php
index 08991834c0b14e08d7cfe1dd210a199205701c83..61ca29f245fe12ae8e4d53573ba919027925c95c 100644
--- a/lib/internal/Magento/Framework/UrlInterface.php
+++ b/lib/internal/Magento/Framework/UrlInterface.php
@@ -49,6 +49,7 @@ interface UrlInterface
      * Retrieve use session rule
      *
      * @return bool
+     * @SuppressWarnings(PHPMD.BooleanGetMethodName)
      */
     public function getUseSession();
 
diff --git a/lib/internal/Magento/Framework/Validator/Builder.php b/lib/internal/Magento/Framework/Validator/Builder.php
index cc6a4b7e81784766a70893ebf9b93bbdbfd8eb2f..adf856aa0e09315315ab1c74013708e6204a84f2 100644
--- a/lib/internal/Magento/Framework/Validator/Builder.php
+++ b/lib/internal/Magento/Framework/Validator/Builder.php
@@ -5,6 +5,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Validator;
 
 use Magento\Framework\Validator\Constraint\OptionInterface;
diff --git a/lib/internal/Magento/Framework/Validator/Constraint/Property.php b/lib/internal/Magento/Framework/Validator/Constraint/Property.php
index 253b0dba0c947454901b2e0b2f6fb4a1a7b96775..4bbce4c5da6686a1cf56a8ee0b511f4deec1e86c 100644
--- a/lib/internal/Magento/Framework/Validator/Constraint/Property.php
+++ b/lib/internal/Magento/Framework/Validator/Constraint/Property.php
@@ -5,6 +5,9 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
+
+// @codingStandardsIgnoreFile
+
 namespace Magento\Framework\Validator\Constraint;
 
 class Property extends \Magento\Framework\Validator\Constraint
diff --git a/lib/internal/Magento/Framework/Validator/ConstraintFactory.php b/lib/internal/Magento/Framework/Validator/ConstraintFactory.php
index a503e4693f0d740309793a0a7969b8a6dd0f25f9..afd466ddb153c76bb6ae741f854085078d8ec54a 100644
--- a/lib/internal/Magento/Framework/Validator/ConstraintFactory.php
+++ b/lib/internal/Magento/Framework/Validator/ConstraintFactory.php
@@ -4,6 +4,8 @@
  * See COPYING.txt for license details.
  */
 
+// @codingStandardsIgnoreFile
+
 /**
  * Factory class for \Magento\Framework\Validator\Constraint
  */
diff --git a/app/code/Magento/Core/Model/Validator/Factory.php b/lib/internal/Magento/Framework/Validator/Factory.php
similarity index 97%
rename from app/code/Magento/Core/Model/Validator/Factory.php
rename to lib/internal/Magento/Framework/Validator/Factory.php
index 87417f739e0726e41e68af83b94a16e0a5fd5646..a663b91cc745f01f164e1d30a1f6e9f04682087b 100644
--- a/app/code/Magento/Core/Model/Validator/Factory.php
+++ b/lib/internal/Magento/Framework/Validator/Factory.php
@@ -5,7 +5,10 @@
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-namespace Magento\Core\Model\Validator;
+
+// @codingStandardsIgnoreFile
+
+namespace Magento\Framework\Validator;
 
 class Factory
 {
diff --git a/lib/internal/Magento/Framework/View/Design/Theme/Validator.php b/lib/internal/Magento/Framework/View/Design/Theme/Validator.php
index 7b023c291fea6bd12a1871ee6e96a13ae7b367a5..fc5e10beb771803a34987ad3c99331b35e350f23 100644
--- a/lib/internal/Magento/Framework/View/Design/Theme/Validator.php
+++ b/lib/internal/Magento/Framework/View/Design/Theme/Validator.php
@@ -31,40 +31,10 @@ class Validator
      */
     public function __construct()
     {
-        $this->_setVersionValidators();
         $this->_setTypeValidators();
         $this->_setTitleValidators();
     }
 
-    /**
-     * Set version validators
-     *
-     * @return $this
-     */
-    protected function _setVersionValidators()
-    {
-        $versionValidators = [
-            [
-                'name' => 'not_empty',
-                'class' => 'Zend_Validate_NotEmpty',
-                'break' => true,
-                'options' => [],
-                'message' => __('Field can\'t be empty'),
-            ],
-            [
-                'name' => 'available',
-                'class' => 'Zend_Validate_Regex',
-                'break' => true,
-                'options' => ['pattern' => '/^(\d+\.\d+\.\d+(\-[a-zA-Z0-9]+)?)$|^\*$/'],
-                'message' => __('Theme version has not compatible format.')
-            ],
-        ];
-
-        $this->addDataValidators('theme_version', $versionValidators);
-
-        return $this;
-    }
-
     /**
      * Set title validators
      *
@@ -99,7 +69,7 @@ class Validator
                 'class' => 'Zend_Validate_NotEmpty',
                 'break' => true,
                 'options' => [],
-                'message' => __('Field can\'t be empty'),
+                'message' => __('Theme type can\'t be empty'),
             ],
             [
                 'name' => 'available',
diff --git a/lib/internal/Magento/Framework/View/Element/AbstractBlock.php b/lib/internal/Magento/Framework/View/Element/AbstractBlock.php
index 07de1f3de9c10940bbb71ac9e1526e23f5cde2ea..73f90325de211f2ba007a0eef0125ece92d531ad 100644
--- a/lib/internal/Magento/Framework/View/Element/AbstractBlock.php
+++ b/lib/internal/Magento/Framework/View/Element/AbstractBlock.php
@@ -15,6 +15,7 @@ namespace Magento\Framework\View\Element;
  * @SuppressWarnings(PHPMD.ExcessiveClassComplexity)
  * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
  * @SuppressWarnings(PHPMD.TooManyFields)
+ * @SuppressWarnings(PHPMD.NumberOfChildren)
  */
 abstract class AbstractBlock extends \Magento\Framework\Object implements BlockInterface
 {
diff --git a/lib/internal/Magento/Framework/View/Layout/Reader/Block.php b/lib/internal/Magento/Framework/View/Layout/Reader/Block.php
index ecc0b9c45405785294cdd89e1135307617391613..40bea712b9d27748e919b487d92389515b281c54 100644
--- a/lib/internal/Magento/Framework/View/Layout/Reader/Block.php
+++ b/lib/internal/Magento/Framework/View/Layout/Reader/Block.php
@@ -121,7 +121,8 @@ class Block implements Layout\ReaderInterface
             default:
                 break;
         }
-        return $this->readerPool->interpret($readerContext, $currentElement);
+        $this->readerPool->interpret($readerContext, $currentElement);
+        return $this;
     }
 
     /**
@@ -174,7 +175,7 @@ class Block implements Layout\ReaderInterface
      * Update data for scheduled element
      *
      * @param Layout\Element $currentElement
-     * @param array $data
+     * @param array &$data
      * @return array
      */
     protected function updateScheduledData($currentElement, array &$data)
diff --git a/lib/internal/Magento/Framework/Xml/Generator.php b/lib/internal/Magento/Framework/Xml/Generator.php
index d2112b3e6f6e05cdd9f4e81ac1d0a8b51c58f278..5bb3820c3a5f7d82e87a35378fd12d54adefb849 100644
--- a/lib/internal/Magento/Framework/Xml/Generator.php
+++ b/lib/internal/Magento/Framework/Xml/Generator.php
@@ -68,6 +68,7 @@ class Generator
      * @param array $content
      * @return $this
      * @throws \DOMException
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
      */
     public function arrayToXml($content)
     {
diff --git a/lib/internal/Magento/Framework/Xml/Parser.php b/lib/internal/Magento/Framework/Xml/Parser.php
index a67d1575f6f532769f70fba1752bf7e238c0d38f..46e1303d39fa481cb9420d620d939a06945bd878 100644
--- a/lib/internal/Magento/Framework/Xml/Parser.php
+++ b/lib/internal/Magento/Framework/Xml/Parser.php
@@ -70,6 +70,8 @@ class Parser
     /**
      * @param bool $currentNode
      * @return array
+     * @SuppressWarnings(PHPMD.CyclomaticComplexity)
+     * @SuppressWarnings(PHPMD.NPathComplexity)
      */
     protected function _xmlToArray($currentNode = false)
     {
diff --git a/lib/internal/Magento/Framework/composer.json b/lib/internal/Magento/Framework/composer.json
index d8dde599d2fa167d9290a3fbdd3799a9f3be6e82..23dc4052a9b3d230e11b7eb82abe6c83610aa63f 100644
--- a/lib/internal/Magento/Framework/composer.json
+++ b/lib/internal/Magento/Framework/composer.json
@@ -2,7 +2,7 @@
     "name": "magento/framework",
     "description": "N/A",
     "type": "magento2-library",
-    "version": "0.42.0-beta3",
+    "version": "0.42.0-beta4",
     "license": [
         "OSL-3.0",
         "AFL-3.0"
diff --git a/lib/web/css/docs/docs.css b/lib/web/css/docs/docs.css
index 0106a110591ed4935abd0468d7bb4bb9b71b6d57..e3f078b46da9e70141cc35a03c86e85f11ad7dd5 100644
--- a/lib/web/css/docs/docs.css
+++ b/lib/web/css/docs/docs.css
@@ -1,583 +1,7 @@
 /**
- * @category    design
  * Copyright © 2015 Magento. All rights reserved.
  * See COPYING.txt for license details.
  */
-body {
-  margin: 0;
-  padding: 0;
-}
-article,
-aside,
-details,
-figcaption,
-figure,
-main,
-footer,
-header,
-nav,
-section,
-summary {
-  display: block;
-}
-audio,
-canvas,
-video {
-  display: inline-block;
-}
-audio:not([controls]) {
-  display: none;
-  height: 0;
-}
-nav ul,
-nav ol {
-  list-style: none none;
-}
-img {
-  border: 0;
-}
-svg:not(:root) {
-  overflow: hidden;
-}
-figure {
-  margin: 0;
-}
-html {
-  font-size: 62.5%;
-  -webkit-text-size-adjust: 100%;
-  -ms-text-size-adjust: 100%;
-  font-size-adjust: 100%;
-}
-body {
-  font-size: 1.4rem;
-  color: #333333;
-  font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
-  font-weight: 400;
-  font-style: normal;
-  line-height: 1.42857143;
-}
-p {
-  margin-top: 0rem;
-  margin-bottom: 1rem;
-}
-abbr[title] {
-  cursor: help;
-  border-bottom: 1px dotted #d1d1d1;
-}
-b,
-strong {
-  font-weight: 700;
-}
-em,
-i {
-  font-style: italic;
-}
-mark {
-  background: #f0f0f0;
-  color: #000000;
-}
-small,
-.small {
-  font-size: 12px;
-}
-hr {
-  margin-top: 20px;
-  margin-bottom: 20px;
-  border: 0;
-  border-top: 1px solid #d1d1d1;
-}
-sub,
-sup {
-  font-size: 71.42857143%;
-  line-height: 0;
-  position: relative;
-  vertical-align: baseline;
-}
-sup {
-  top: -0.5em;
-}
-sub {
-  bottom: -0.25em;
-}
-dfn {
-  font-style: italic;
-}
-h1 {
-  font-size: 4rem;
-  font-weight: 300;
-  line-height: 1.1;
-  margin-top: 0rem;
-  margin-bottom: 2rem;
-}
-h2 {
-  font-size: 2.6rem;
-  font-weight: 300;
-  line-height: 1.1;
-  margin-top: 2.5rem;
-  margin-bottom: 2rem;
-}
-h3 {
-  font-size: 1.8rem;
-  font-weight: 300;
-  line-height: 1.1;
-  margin-top: 1.5rem;
-  margin-bottom: 1rem;
-}
-h4 {
-  font-size: 1.4rem;
-  font-weight: 700;
-  line-height: 1.1;
-  margin-top: 2rem;
-  margin-bottom: 2rem;
-}
-h5 {
-  font-size: 1.2rem;
-  font-weight: 700;
-  line-height: 1.1;
-  margin-top: 2rem;
-  margin-bottom: 2rem;
-}
-h6 {
-  font-size: 1rem;
-  font-weight: 700;
-  line-height: 1.1;
-  margin-top: 2rem;
-  margin-bottom: 2rem;
-}
-h1 small,
-h2 small,
-h3 small,
-h4 small,
-h5 small,
-h6 small,
-h1 .small,
-h2 .small,
-h3 .small,
-h4 .small,
-h5 .small,
-h6 .small {
-  font-size: 71.42857143%;
-  color: #333333;
-  font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
-  font-weight: 400;
-  font-style: normal;
-  line-height: 1;
-}
-a,
-.alink {
-  color: #1979c3;
-  text-decoration: none;
-}
-a:visited,
-.alink:visited {
-  color: #800080;
-  text-decoration: none;
-}
-a:hover,
-.alink:hover {
-  color: #006bb4;
-  text-decoration: underline;
-}
-a:active,
-.alink:active {
-  color: #ff5501;
-  text-decoration: underline;
-}
-ul,
-ol {
-  margin-top: 0rem;
-  margin-bottom: 2.5rem;
-}
-ul > li,
-ol > li {
-  margin-top: 0rem;
-  margin-bottom: 1rem;
-}
-ul ul,
-ol ul,
-ul ol,
-ol ol {
-  margin-bottom: 0;
-}
-dl {
-  margin-top: 0;
-  margin-bottom: 20px;
-}
-dt {
-  font-weight: 700;
-  margin-top: 0;
-  margin-bottom: 5px;
-}
-dd {
-  margin-top: 0;
-  margin-bottom: 10px;
-  margin-left: 0;
-}
-code,
-kbd,
-pre,
-samp {
-  font-family: Menlo, Monaco, Consolas, 'Courier New', monospace;
-}
-code {
-  background: #f0f0f0;
-  color: #111111;
-  font-size: 1.2rem;
-  padding: 2px 4px;
-  white-space: nowrap;
-}
-kbd {
-  background: #f0f0f0;
-  color: #111111;
-  padding: 2px 4px;
-  font-size: 1.2rem;
-}
-pre {
-  background: #f0f0f0;
-  border: 1px solid #d1d1d1;
-  color: #111111;
-  display: block;
-  font-size: 1.2rem;
-  margin: 0 0 10px;
-  line-height: 1.42857143;
-  padding: 10px;
-  word-break: break-all;
-  word-wrap: break-word;
-}
-pre code {
-  padding: 0;
-  font-size: inherit;
-  color: inherit;
-  white-space: pre-wrap;
-  background-color: transparent;
-  border-radius: 0;
-}
-blockquote {
-  margin: 0 0 20px 40px;
-  padding: 0;
-  font-size: 1.4rem;
-  color: #333333;
-  font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
-  font-weight: 400;
-  font-style: italic;
-  line-height: 1.42857143;
-  border-left: 0 solid #d1d1d1;
-}
-blockquote p:last-child,
-blockquote ul:last-child,
-blockquote ol:last-child {
-  margin-bottom: 0;
-}
-blockquote footer,
-blockquote small,
-blockquote .small {
-  color: #333333;
-  display: block;
-  font-size: 1rem;
-  line-height: 1.42857143;
-}
-blockquote footer:before,
-blockquote small:before,
-blockquote .small:before {
-  content: '\2014 \00A0';
-}
-blockquote cite {
-  font-style: normal;
-}
-blockquote:before,
-blockquote:after {
-  content: "";
-}
-q {
-  quotes: none;
-}
-q:before,
-q:after {
-  content: '';
-  content: none;
-}
-cite {
-  font-style: normal;
-}
-table {
-  border-collapse: collapse;
-  border-spacing: 0;
-  max-width: 100%;
-  width: 100%;
-}
-table th {
-  text-align: left;
-}
-table > tbody > tr > th,
-table > tfoot > tr > th,
-table > tbody > tr > td,
-table > tfoot > tr > td {
-  vertical-align: top;
-}
-table > thead > tr > th,
-table > thead > tr > td {
-  vertical-align: bottom;
-}
-table > thead > tr > th,
-table > tbody > tr > th,
-table > tfoot > tr > th,
-table > thead > tr > td,
-table > tbody > tr > td,
-table > tfoot > tr > td {
-  padding: 8px 10px;
-}
-button {
-  background-image: none;
-  background: #f2f2f2;
-  padding: 7px 15px;
-  color: #333333;
-  border: 1px solid #cdcdcd;
-  cursor: pointer;
-  display: inline-block;
-  font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
-  font-size: 1.4rem;
-  font-weight: 700;
-  line-height: 1.6rem;
-  box-sizing: border-box;
-  margin: 0;
-  vertical-align: middle;
-}
-button:focus,
-button:active {
-  background: #e2e2e2;
-  border: 1px solid #cdcdcd;
-  color: #333333;
-}
-button:hover {
-  background: #e2e2e2;
-  border: 1px solid #cdcdcd;
-  color: #555555;
-}
-button.disabled,
-button[disabled],
-fieldset[disabled] button {
-  cursor: default;
-  pointer-events: none;
-  opacity: 0.5;
-}
-button::-moz-focus-inner {
-  border: 0;
-  padding: 0;
-}
-input[type="text"],
-input[type="password"],
-input[type="url"],
-input[type="tel"],
-input[type="search"],
-input[type="number"],
-input[type="datetime"],
-input[type="email"] {
-  box-sizing: border-box;
-  background: #ffffff;
-  border: 1px solid #c2c2c2;
-  border-radius: 1px;
-  height: 32px;
-  width: 100%;
-  padding: 0 9px;
-  font-size: 14px;
-  font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
-  line-height: 1.428571429;
-  background-clip: padding-box;
-  vertical-align: baseline;
-}
-input[type="text"]:disabled,
-input[type="password"]:disabled,
-input[type="url"]:disabled,
-input[type="tel"]:disabled,
-input[type="search"]:disabled,
-input[type="number"]:disabled,
-input[type="datetime"]:disabled,
-input[type="email"]:disabled {
-  opacity: 0.5;
-}
-input[type="text"]::-moz-placeholder,
-input[type="password"]::-moz-placeholder,
-input[type="url"]::-moz-placeholder,
-input[type="tel"]::-moz-placeholder,
-input[type="search"]::-moz-placeholder,
-input[type="number"]::-moz-placeholder,
-input[type="datetime"]::-moz-placeholder,
-input[type="email"]::-moz-placeholder {
-  color: #c2c2c2;
-}
-input[type="text"]::-webkit-input-placeholder,
-input[type="password"]::-webkit-input-placeholder,
-input[type="url"]::-webkit-input-placeholder,
-input[type="tel"]::-webkit-input-placeholder,
-input[type="search"]::-webkit-input-placeholder,
-input[type="number"]::-webkit-input-placeholder,
-input[type="datetime"]::-webkit-input-placeholder,
-input[type="email"]::-webkit-input-placeholder {
-  color: #c2c2c2;
-}
-input[type="text"]:-ms-input-placeholder,
-input[type="password"]:-ms-input-placeholder,
-input[type="url"]:-ms-input-placeholder,
-input[type="tel"]:-ms-input-placeholder,
-input[type="search"]:-ms-input-placeholder,
-input[type="number"]:-ms-input-placeholder,
-input[type="datetime"]:-ms-input-placeholder,
-input[type="email"]:-ms-input-placeholder {
-  color: #c2c2c2;
-}
-input[type="number"] {
-  -moz-appearance: textfield;
-}
-input[type="number"]::-webkit-inner-spin-button,
-input[type="number"]::-webkit-outer-spin-button {
-  -webkit-appearance: none;
-  margin: 0;
-}
-input[type="search"] {
-  -webkit-appearance: none;
-}
-input[type="search"]::-webkit-search-cancel-button,
-input[type="search"]::-webkit-search-decoration,
-input[type="search"]::-webkit-search-results-button,
-input[type="search"]::-webkit-search-results-decoration {
-  -webkit-appearance: none;
-}
-select {
-  box-sizing: border-box;
-  background: #ffffff;
-  border: 1px solid #c2c2c2;
-  border-radius: 1px;
-  height: 32px;
-  width: 100%;
-  padding: 5px 10px 4px;
-  font-size: 14px;
-  font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
-  line-height: 1.428571429;
-  background-clip: padding-box;
-  vertical-align: baseline;
-}
-select:disabled {
-  opacity: 0.5;
-}
-select[multiple="multiple"] {
-  height: auto;
-  background-image: none;
-}
-textarea {
-  box-sizing: border-box;
-  background: #ffffff;
-  border: 1px solid #c2c2c2;
-  border-radius: 1px;
-  height: auto;
-  width: 100%;
-  padding: 10px;
-  margin: 0;
-  font-size: 14px;
-  font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
-  line-height: 1.428571429;
-  background-clip: padding-box;
-  vertical-align: baseline;
-  resize: vertical;
-}
-textarea:disabled {
-  opacity: 0.5;
-}
-textarea::-moz-placeholder {
-  color: #c2c2c2;
-}
-textarea::-webkit-input-placeholder {
-  color: #c2c2c2;
-}
-textarea:-ms-input-placeholder {
-  color: #c2c2c2;
-}
-input[type="checkbox"] {
-  margin: 2px 5px 0 0;
-}
-input[type="checkbox"]:disabled {
-  opacity: 0.5;
-}
-input[type="radio"] {
-  margin: 2px 5px 0 0;
-}
-input[type="radio"]:disabled {
-  opacity: 0.5;
-}
-input.mage-error,
-select.mage-error,
-textarea.mage-error {
-  border-color: #ed8380;
-}
-div.mage-error[generated] {
-  font-size: 1.2rem;
-  color: #e02b27;
-}
-input[type="button"],
-input[type="reset"],
-input[type="submit"] {
-  cursor: pointer;
-  -webkit-appearance: button;
-  *overflow: visible;
-}
-input::-moz-focus-inner {
-  border: 0;
-  padding: 0;
-}
-form {
-  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
-}
-address {
-  font-style: normal;
-}
-*:focus {
-  outline: 0;
-  box-shadow: none;
-}
-.focusin *:focus,
-input:not([disabled]):focus,
-textarea:not([disabled]):focus,
-select:not([disabled]):focus {
-  box-shadow: 0 0 3px 1px #68a8e0;
-}
-@font-face {
-  font-family: 'icons-blank-theme';
-  src: url('/pub/static/frontend/Magento/blank/en_US/fonts/Blank-Theme-Icons/Blank-Theme-Icons.eot');
-  src: url('/pub/static/frontend/Magento/blank/en_US/fonts/Blank-Theme-Icons/Blank-Theme-Icons.eot?#iefix') format('embedded-opentype'), url('/pub/static/frontend/Magento/blank/en_US/fonts/Blank-Theme-Icons/Blank-Theme-Icons.woff') format('woff'), url('/pub/static/frontend/Magento/blank/en_US/fonts/Blank-Theme-Icons/Blank-Theme-Icons.ttf') format('truetype'), url('/pub/static/frontend/Magento/blank/en_US/fonts/Blank-Theme-Icons/Blank-Theme-Icons.svg#icons-blank-theme') format('svg');
-  font-weight: normal;
-  font-style: normal;
-}
-.mage-dropdown-dialog.ui-dialog .ui-dialog-content {
-  overflow: visible;
-}
-.mage-dropdown-dialog.ui-dialog .ui-dialog-buttonpane {
-  padding: 0;
-}
-@media only screen and (max-width: 767px) {
-  .example-responsive-block {
-    background: #ffc;
-  }
-  .example-responsive-block:before {
-    content: 'Mobile styles ';
-    font-weight: bold;
-  }
-}
-@media all and (min-width: 768px), print {
-  ._rwd_width {
-    min-width: 0 !important;
-    max-width: auto !important;
-  }
-  ._rwd_width_float {
-    width: 100% !important;
-    float: none !important;
-  }
-  .example-responsive-block {
-    background: #ccf;
-  }
-  .example-responsive-block:before {
-    content: 'Desktop styles ';
-    font-weight: bold;
-  }
-}
 .actions-toolbar:before,
 .actions-toolbar:after {
   content: "";
@@ -1880,9 +1304,9 @@ fieldset[disabled] .example-button-15 {
   z-index: 100;
   top: 100%;
   min-width: 100%;
+  margin-top: 4px;
   display: none;
   box-shadow: 0 3px 3px rgba(0, 0, 0, 0.15);
-  margin-top: 4px;
 }
 .example-dropdown-1 ul.dropdown li {
   margin: 0;
@@ -1999,9 +1423,9 @@ fieldset[disabled] .example-button-15 {
   z-index: 100;
   top: 100%;
   min-width: 100%;
+  margin-top: 4px;
   display: none;
   box-shadow: 0 3px 3px rgba(0, 0, 0, 0.15);
-  margin-top: 4px;
 }
 .example-dropdown-2 ul.dropdown li {
   margin: 0;
@@ -2118,9 +1542,9 @@ fieldset[disabled] .example-button-15 {
   z-index: 100;
   top: 100%;
   min-width: 100%;
+  margin-top: 4px;
   display: none;
   box-shadow: 0 3px 3px rgba(0, 0, 0, 0.15);
-  margin-top: 4px;
 }
 .example-dropdown-3 ul.dropdown li {
   margin: 0;
@@ -2237,6 +1661,7 @@ fieldset[disabled] .example-button-15 {
   z-index: 100;
   top: 100%;
   min-width: 100%;
+  margin-top: 4px;
   display: none;
 }
 .example-dropdown-5 ul.dropdown li {
@@ -2368,9 +1793,9 @@ fieldset[disabled] .example-button-15 {
   z-index: 100;
   top: 100%;
   min-width: 100%;
+  margin-top: 4px;
   display: none;
   box-shadow: 0 3px 3px rgba(0, 0, 0, 0.15);
-  margin-top: 4px;
 }
 .example-dropdown-6 ul.dropdown li {
   margin: 0;
@@ -2515,9 +1940,9 @@ fieldset[disabled] .example-button-15 {
   z-index: 100;
   top: 100%;
   min-width: 100%;
+  margin-top: 4px;
   display: none;
   box-shadow: 0 3px 3px rgba(0, 0, 0, 0.15);
-  margin-top: 4px;
 }
 .split.example-dropdown-7 ul.dropdown li {
   margin: 0;
@@ -2671,9 +2096,9 @@ fieldset[disabled] .example-button-15 {
   z-index: 100;
   top: 100%;
   min-width: 100%;
+  margin-top: 4px;
   display: none;
   box-shadow: 0 3px 3px rgba(0, 0, 0, 0.15);
-  margin-top: 4px;
 }
 .example-dropdown-8 ul.dropdown li {
   margin: 0;
@@ -2833,9 +2258,9 @@ fieldset[disabled] .example-button-15 {
   z-index: 100;
   top: 100%;
   min-width: 100%;
+  margin-top: 4px;
   display: none;
   box-shadow: 0 3px 3px rgba(0, 0, 0, 0.15);
-  margin-top: 4px;
 }
 .example-dropdown-9 ul.dropdown li {
   margin: 0;
@@ -2995,9 +2420,9 @@ fieldset[disabled] .example-button-15 {
   z-index: 100;
   top: 100%;
   min-width: 100%;
+  margin-top: 4px;
   display: none;
   box-shadow: 0 3px 3px rgba(0, 0, 0, 0.15);
-  margin-top: 4px;
 }
 .example-dropdown-10 ul.dropdown li {
   margin: 0;
@@ -3151,9 +2576,9 @@ fieldset[disabled] .example-button-15 {
   z-index: 100;
   top: 100%;
   min-width: 100%;
+  margin-top: 4px;
   display: none;
   box-shadow: 0 3px 3px rgba(0, 0, 0, 0.15);
-  margin-top: 4px;
 }
 .example-dropdown-11 ul.dropdown li {
   margin: 0;
@@ -3307,6 +2732,7 @@ fieldset[disabled] .example-button-15 {
   z-index: 100;
   top: 100%;
   min-width: 100%;
+  margin-top: 4px;
   display: none;
 }
 .example-dropdown-12 ul.dropdown li {
@@ -3404,7 +2830,10 @@ fieldset[disabled] .example-button-15 {
   width: 20% !important;
 }
 .example-form-1 .example-form-1-fieldset > .field .addon {
+  display: -webkit-inline-flex;
+  display: -ms-inline-flexbox;
   display: inline-flex;
+  -webkit-flex-wrap: nowrap;
   flex-wrap: nowrap;
   padding: 0;
   width: 100%;
@@ -3412,19 +2841,20 @@ fieldset[disabled] .example-button-15 {
 .example-form-1 .example-form-1-fieldset > .field .addon textarea,
 .example-form-1 .example-form-1-fieldset > .field .addon select,
 .example-form-1 .example-form-1-fieldset > .field .addon input {
-  -webkit-order: 2;
   -ms-flex-order: 2;
+  -webkit-order: 2;
   order: 2;
+  -webkit-flex-basis: 100%;
+  flex-basis: 100%;
   box-shadow: none;
   display: inline-block;
   margin: 0;
   width: auto;
-  flex-basis: 100%;
 }
 .example-form-1 .example-form-1-fieldset > .field .addon .addbefore,
 .example-form-1 .example-form-1-fieldset > .field .addon .addafter {
-  -webkit-order: 3;
   -ms-flex-order: 3;
+  -webkit-order: 3;
   order: 3;
   display: inline-block;
   box-sizing: border-box;
@@ -3461,8 +2891,8 @@ fieldset[disabled] .example-button-15 {
 }
 .example-form-1 .example-form-1-fieldset > .field .addon .addbefore {
   float: left;
-  -webkit-order: 1;
   -ms-flex-order: 1;
+  -webkit-order: 1;
   order: 1;
 }
 .example-form-1 .example-form-1-fieldset > .field .additional {
@@ -3570,7 +3000,10 @@ fieldset[disabled] .example-button-15 {
   width: 20% !important;
 }
 .example-form-2 .example-form-2-fieldset > .field .addon {
+  display: -webkit-inline-flex;
+  display: -ms-inline-flexbox;
   display: inline-flex;
+  -webkit-flex-wrap: nowrap;
   flex-wrap: nowrap;
   padding: 0;
   width: 100%;
@@ -3578,19 +3011,20 @@ fieldset[disabled] .example-button-15 {
 .example-form-2 .example-form-2-fieldset > .field .addon textarea,
 .example-form-2 .example-form-2-fieldset > .field .addon select,
 .example-form-2 .example-form-2-fieldset > .field .addon input {
-  -webkit-order: 2;
   -ms-flex-order: 2;
+  -webkit-order: 2;
   order: 2;
+  -webkit-flex-basis: 100%;
+  flex-basis: 100%;
   box-shadow: none;
   display: inline-block;
   margin: 0;
   width: auto;
-  flex-basis: 100%;
 }
 .example-form-2 .example-form-2-fieldset > .field .addon .addbefore,
 .example-form-2 .example-form-2-fieldset > .field .addon .addafter {
-  -webkit-order: 3;
   -ms-flex-order: 3;
+  -webkit-order: 3;
   order: 3;
   display: inline-block;
   box-sizing: border-box;
@@ -3627,8 +3061,8 @@ fieldset[disabled] .example-button-15 {
 }
 .example-form-2 .example-form-2-fieldset > .field .addon .addbefore {
   float: left;
-  -webkit-order: 1;
   -ms-flex-order: 1;
+  -webkit-order: 1;
   order: 1;
 }
 .example-form-2 .example-form-2-fieldset > .field .additional {
@@ -3787,8 +3221,8 @@ input[type="radio"]:disabled {
 input.text-example-1,
 select.select-example-1,
 textarea.textarea-example-1 {
-  border-color: #ffcc00;
   background: #fdf0d5;
+  border-color: #ffcc00;
   color: #b30000;
 }
 input.text-example-1:focus,
@@ -4262,9 +3696,12 @@ select {
   z-index: 9999;
 }
 .loader:before {
-  box-sizing: border-box;
-  background: transparent url('/pub/static/frontend/Magento/blank/en_US/images/loader-2.gif') no-repeat 50% 50%;
   border-radius: 5px;
+  background-color: transparent;
+  background-image: url('/pub/static/frontend/Magento/blank/en_US/images/loader-2.gif');
+  background-position: 50% 50%;
+  background-repeat: no-repeat;
+  box-sizing: border-box;
   content: '';
   position: absolute;
   top: 0;
@@ -4285,7 +3722,10 @@ select {
   top: 0;
   right: 0;
   bottom: 0;
-  background: rgba(255, 255, 255, 0.5) url('/pub/static/frontend/Magento/blank/en_US/images/loader-2.gif') no-repeat 50% 50%;
+  background-color: rgba(255, 255, 255, 0.5);
+  background-image: url('/pub/static/frontend/Magento/blank/en_US/images/loader-2.gif');
+  background-position: 50% 50%;
+  background-repeat: no-repeat;
 }
 .example-message-info {
   display: block;
@@ -4649,6 +4089,7 @@ footer.footer {
   display: -webkit-flex;
   display: -ms-flexbox;
   display: flex;
+  -webkit-flex-wrap: wrap;
   flex-wrap: wrap;
 }
 .columns:after {
@@ -4665,114 +4106,114 @@ footer.footer {
 @media (min-width: 600px) {
   .page-layout-1column .column.main {
     width: 100%;
-    -webkit-order: 2;
     -ms-flex-order: 2;
+    -webkit-order: 2;
     order: 2;
   }
   .page-layout-3columns .column.main {
     width: 66.66666667%;
     display: inline-block;
-    -webkit-order: 2;
     -ms-flex-order: 2;
+    -webkit-order: 2;
     order: 2;
   }
   .page-layout-2columns-left .column.main {
     width: 83.33333333%;
     float: right;
-    -webkit-order: 2;
     -ms-flex-order: 2;
+    -webkit-order: 2;
     order: 2;
   }
   .page-layout-2columns-right .column.main {
     width: 83.33333333%;
     float: left;
-    -webkit-order: 1;
     -ms-flex-order: 1;
+    -webkit-order: 1;
     order: 1;
   }
   .page-layout-3columns .column.left {
     width: 16.66666667%;
     float: left;
-    -webkit-order: 1;
     -ms-flex-order: 1;
+    -webkit-order: 1;
     order: 1;
   }
   .page-layout-2columns-left .column.left {
     width: 16.66666667%;
     float: left;
-    -webkit-order: 1;
     -ms-flex-order: 1;
+    -webkit-order: 1;
     order: 1;
   }
   .page-layout-2columns-right .column.left {
     width: 16.66666667%;
     float: left;
-    -webkit-order: 1;
     -ms-flex-order: 1;
+    -webkit-order: 1;
     order: 1;
   }
   .page-layout-3columns .column.right {
     width: 16.66666667%;
     float: right;
-    -webkit-order: 3;
     -ms-flex-order: 3;
+    -webkit-order: 3;
     order: 3;
   }
   .page-layout-2columns-left .column.right {
     width: 16.66666667%;
     float: right;
-    -webkit-order: 2;
     -ms-flex-order: 2;
+    -webkit-order: 2;
     order: 2;
   }
   .page-layout-2columns-right .column.right {
     width: 16.66666667%;
     float: right;
-    -webkit-order: 2;
     -ms-flex-order: 2;
+    -webkit-order: 2;
     order: 2;
   }
 }
 .layout-example-3 .column.main {
   width: 60%;
   display: inline-block;
-  -webkit-order: 2;
   -ms-flex-order: 2;
+  -webkit-order: 2;
   order: 2;
 }
 .layout-example-3 .column.left {
   width: 20%;
   float: left;
-  -webkit-order: 1;
   -ms-flex-order: 1;
+  -webkit-order: 1;
   order: 1;
 }
 .layout-example-3 .column.right {
   width: 20%;
   float: right;
-  -webkit-order: 3;
   -ms-flex-order: 3;
+  -webkit-order: 3;
   order: 3;
 }
 .layout-example-3-1 .column.main {
   width: 60%;
   float: left;
-  -webkit-order: 1;
   -ms-flex-order: 1;
+  -webkit-order: 1;
   order: 1;
 }
 .layout-example-3-1 .column.left {
   width: 20%;
   display: inline-block;
-  -webkit-order: 2;
   -ms-flex-order: 2;
+  -webkit-order: 2;
   order: 2;
 }
 .layout-example-3-1 .column.right {
   width: 20%;
   float: right;
-  -webkit-order: 3;
   -ms-flex-order: 3;
+  -webkit-order: 3;
   order: 3;
 }
 .pages > .label {
@@ -4815,9 +4256,9 @@ footer.footer {
   border: 0;
 }
 .pages a.page {
-  padding: 0 4px;
   color: #1979c3;
   display: inline-block;
+  padding: 0 4px;
   text-decoration: none;
 }
 .pages a.page:visited {
@@ -4835,16 +4276,16 @@ footer.footer {
   font-size: 12px;
   line-height: 32px;
   letter-spacing: normal;
-  padding: 0 4px;
   color: #333333;
   display: inline-block;
   font-weight: 700;
+  padding: 0 4px;
 }
 .pages .action {
   border: 1px solid #d1d1d1;
-  padding: 0;
   color: #7d7d7d;
   display: inline-block;
+  padding: 0;
   text-decoration: none;
 }
 .pages .action:visited {
@@ -4986,9 +4427,9 @@ footer.footer {
   background-image: linear-gradient(to bottom, #f4f4f4 0%, #cccccc 100%);
   filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f4f4f4', endColorstr='#cccccc', GradientType=0);
   border: 1px solid #b3b3b3;
-  padding: 0 4px;
   color: #333333;
   display: inline-block;
+  padding: 0 4px;
   text-decoration: none;
 }
 .example-pages-1 a.page:visited {
@@ -5024,16 +4465,16 @@ footer.footer {
   font-size: 12px;
   line-height: 32px;
   letter-spacing: normal;
-  padding: 0 4px;
   color: #f7b32e;
   display: inline-block;
   font-weight: 700;
+  padding: 0 4px;
 }
 .example-pages-1 .action {
   border: 1px solid #d1d1d1;
-  padding: 0;
   color: #7d7d7d;
   display: inline-block;
+  padding: 0;
   text-decoration: none;
 }
 .example-pages-1 .action:visited {
@@ -5169,9 +4610,9 @@ footer.footer {
   border: 0;
 }
 .example-pages-2 a.page {
-  padding: 0 4px;
   color: #1979c3;
   display: inline-block;
+  padding: 0 4px;
   text-decoration: none;
 }
 .example-pages-2 a.page:visited {
@@ -5189,16 +4630,16 @@ footer.footer {
   font-size: 12px;
   line-height: 32px;
   letter-spacing: normal;
-  padding: 0 4px;
   color: #333333;
   display: inline-block;
   font-weight: 700;
+  padding: 0 4px;
 }
 .example-pages-2 .action {
   border: 1px solid #d1d1d1;
-  padding: 0;
   color: #7d7d7d;
   display: inline-block;
+  padding: 0;
   text-decoration: none;
 }
 .example-pages-2 .action:visited {
@@ -5252,9 +4693,9 @@ footer.footer {
 }
 .example-pages-3 a.page {
   background: #1979c3;
-  padding: 0 4px;
   color: #ffffff;
   display: inline-block;
+  padding: 0 4px;
   text-decoration: none;
 }
 .example-pages-3 a.page:visited {
@@ -5276,17 +4717,17 @@ footer.footer {
   font-size: 12px;
   line-height: 32px;
   letter-spacing: normal;
-  padding: 0 4px;
   color: #ffffff;
   display: inline-block;
   font-weight: 700;
+  padding: 0 4px;
 }
 .example-pages-3 .action {
   background: #1979c3;
   border: 1px solid #d1d1d1;
-  padding: 0;
   color: #ffffff;
   display: inline-block;
+  padding: 0;
   text-decoration: none;
 }
 .example-pages-3 .action:visited {
@@ -6329,16 +5770,16 @@ fieldset[disabled] .window.popup.popup-example-9 .popup-actions .action.close {
   overflow: hidden;
 }
 .example-ratings-1:before {
-  letter-spacing: -10px;
+  color: #c7c7c7;
   font-family: 'icons-blank-theme';
   font-style: normal;
   font-size: 28px;
   line-height: 28px;
+  letter-spacing: -10px;
   height: 28px;
   speak: none;
   font-weight: normal;
   -webkit-font-smoothing: antialiased;
-  color: #c7c7c7;
   vertical-align: top;
   content: '\e605' '\e605' '\e605' '\e605' '\e605';
   position: absolute;
@@ -6375,16 +5816,16 @@ fieldset[disabled] .window.popup.popup-example-9 .popup-actions .action.close {
   border: 0;
 }
 .example-ratings-1 label:before {
-  letter-spacing: -10px;
+  color: #ff5601;
   font-family: 'icons-blank-theme';
   font-style: normal;
   font-size: 28px;
   line-height: 28px;
+  letter-spacing: -10px;
   height: 28px;
   speak: none;
   font-weight: normal;
   -webkit-font-smoothing: antialiased;
-  color: #ff5601;
   vertical-align: top;
   opacity: 0;
 }
@@ -6428,16 +5869,16 @@ fieldset[disabled] .window.popup.popup-example-9 .popup-actions .action.close {
   overflow: hidden;
 }
 .example-ratings-2:before {
-  letter-spacing: -10px;
+  color: #c7c7c7;
   font-family: 'icons-blank-theme';
   font-style: normal;
   font-size: 28px;
   line-height: 28px;
+  letter-spacing: -10px;
   height: 28px;
   speak: none;
   font-weight: normal;
   -webkit-font-smoothing: antialiased;
-  color: #c7c7c7;
   vertical-align: top;
   content: '\e605' '\e605' '\e605' '\e605' '\e605' '\e605' '\e605' '\e605';
   position: absolute;
@@ -6474,16 +5915,16 @@ fieldset[disabled] .window.popup.popup-example-9 .popup-actions .action.close {
   border: 0;
 }
 .example-ratings-2 label:before {
-  letter-spacing: -10px;
+  color: #ff5601;
   font-family: 'icons-blank-theme';
   font-style: normal;
   font-size: 28px;
   line-height: 28px;
+  letter-spacing: -10px;
   height: 28px;
   speak: none;
   font-weight: normal;
   -webkit-font-smoothing: antialiased;
-  color: #ff5601;
   vertical-align: top;
   opacity: 0;
 }
@@ -6545,16 +5986,16 @@ fieldset[disabled] .window.popup.popup-example-9 .popup-actions .action.close {
   overflow: hidden;
 }
 .example-ratings-3:before {
-  letter-spacing: -10px;
+  color: #aff5e3;
   font-family: 'icons-blank-theme';
   font-style: normal;
   font-size: 28px;
   line-height: 28px;
+  letter-spacing: -10px;
   height: 28px;
   speak: none;
   font-weight: normal;
   -webkit-font-smoothing: antialiased;
-  color: #aff5e3;
   vertical-align: top;
   content: '\e605' '\e605' '\e605' '\e605' '\e605';
   position: absolute;
@@ -6591,16 +6032,16 @@ fieldset[disabled] .window.popup.popup-example-9 .popup-actions .action.close {
   border: 0;
 }
 .example-ratings-3 label:before {
-  letter-spacing: -10px;
+  color: #0a6767;
   font-family: 'icons-blank-theme';
   font-style: normal;
   font-size: 28px;
   line-height: 28px;
+  letter-spacing: -10px;
   height: 28px;
   speak: none;
   font-weight: normal;
   -webkit-font-smoothing: antialiased;
-  color: #0a6767;
   vertical-align: top;
   opacity: 0;
 }
@@ -6644,16 +6085,16 @@ fieldset[disabled] .window.popup.popup-example-9 .popup-actions .action.close {
   overflow: hidden;
 }
 .example-ratings-4:before {
-  letter-spacing: -10px;
+  color: #c7c7c7;
   font-family: 'icons-blank-theme';
   font-style: normal;
   font-size: 28px;
   line-height: 28px;
+  letter-spacing: -10px;
   height: 28px;
   speak: none;
   font-weight: normal;
   -webkit-font-smoothing: antialiased;
-  color: #c7c7c7;
   vertical-align: top;
   content: '\e600' '\e600' '\e600' '\e600' '\e600';
   position: absolute;
@@ -6690,16 +6131,16 @@ fieldset[disabled] .window.popup.popup-example-9 .popup-actions .action.close {
   border: 0;
 }
 .example-ratings-4 label:before {
-  letter-spacing: -10px;
+  color: #ff5601;
   font-family: 'icons-blank-theme';
   font-style: normal;
   font-size: 28px;
   line-height: 28px;
+  letter-spacing: -10px;
   height: 28px;
   speak: none;
   font-weight: normal;
   -webkit-font-smoothing: antialiased;
-  color: #ff5601;
   vertical-align: top;
   opacity: 0;
 }
@@ -6743,16 +6184,16 @@ fieldset[disabled] .window.popup.popup-example-9 .popup-actions .action.close {
   overflow: hidden;
 }
 .exapmle-ratings-5 .control.rating.vote:before {
-  letter-spacing: -10px;
+  color: #c7c7c7;
   font-family: 'icons-blank-theme';
   font-style: normal;
   font-size: 28px;
   line-height: 28px;
+  letter-spacing: -10px;
   height: 28px;
   speak: none;
   font-weight: normal;
   -webkit-font-smoothing: antialiased;
-  color: #c7c7c7;
   vertical-align: top;
   content: '\e605' '\e605' '\e605' '\e605' '\e605';
   position: absolute;
@@ -6789,16 +6230,16 @@ fieldset[disabled] .window.popup.popup-example-9 .popup-actions .action.close {
   border: 0;
 }
 .exapmle-ratings-5 .control.rating.vote label:before {
-  letter-spacing: -10px;
+  color: #ff5601;
   font-family: 'icons-blank-theme';
   font-style: normal;
   font-size: 28px;
   line-height: 28px;
+  letter-spacing: -10px;
   height: 28px;
   speak: none;
   font-weight: normal;
   -webkit-font-smoothing: antialiased;
-  color: #ff5601;
   vertical-align: top;
   opacity: 0;
 }
@@ -6850,22 +6291,22 @@ fieldset[disabled] .window.popup.popup-example-9 .popup-actions .action.close {
 }
 .example-rating-summary-1 .rating-result:before {
   position: absolute;
-  z-index: 1;
   top: 0;
   left: 0;
   width: 100%;
+  z-index: 1;
+  color: #c7c7c7;
   display: block;
   font-family: 'icons-blank-theme';
   content: '\e605' '\e605' '\e605' '\e605' '\e605';
   font-style: normal;
   font-size: 28px;
-  line-height: 28px;
   height: 28px;
+  line-height: 28px;
   letter-spacing: -10px;
   speak: none;
   font-weight: normal;
   -webkit-font-smoothing: antialiased;
-  color: #c7c7c7;
 }
 .example-rating-summary-1 .rating-result > span {
   display: block;
@@ -6874,18 +6315,18 @@ fieldset[disabled] .window.popup.popup-example-9 .popup-actions .action.close {
 .example-rating-summary-1 .rating-result > span:before {
   position: relative;
   z-index: 2;
+  color: #ff5601;
   display: block;
   font-family: 'icons-blank-theme';
   content: '\e605' '\e605' '\e605' '\e605' '\e605';
   font-style: normal;
   font-size: 28px;
-  line-height: 28px;
   height: 28px;
+  line-height: 28px;
   letter-spacing: -10px;
   speak: none;
   font-weight: normal;
   -webkit-font-smoothing: antialiased;
-  color: #ff5601;
 }
 .example-rating-summary-1 .rating-result > span span {
   position: absolute;
@@ -6909,22 +6350,22 @@ fieldset[disabled] .window.popup.popup-example-9 .popup-actions .action.close {
 }
 .example-rating-summary-2 .rating-result:before {
   position: absolute;
-  z-index: 1;
   top: 0;
   left: 0;
   width: 100%;
+  z-index: 1;
+  color: #c7c7c7;
   display: block;
   font-family: 'icons-blank-theme';
   content: '\e605' '\e605' '\e605' '\e605' '\e605' '\e605' '\e605' '\e605';
   font-style: normal;
   font-size: 28px;
-  line-height: 28px;
   height: 28px;
+  line-height: 28px;
   letter-spacing: -10px;
   speak: none;
   font-weight: normal;
   -webkit-font-smoothing: antialiased;
-  color: #c7c7c7;
 }
 .example-rating-summary-2 .rating-result > span {
   display: block;
@@ -6933,18 +6374,18 @@ fieldset[disabled] .window.popup.popup-example-9 .popup-actions .action.close {
 .example-rating-summary-2 .rating-result > span:before {
   position: relative;
   z-index: 2;
+  color: #ff5601;
   display: block;
   font-family: 'icons-blank-theme';
   content: '\e605' '\e605' '\e605' '\e605' '\e605' '\e605' '\e605' '\e605';
   font-style: normal;
   font-size: 28px;
-  line-height: 28px;
   height: 28px;
+  line-height: 28px;
   letter-spacing: -10px;
   speak: none;
   font-weight: normal;
   -webkit-font-smoothing: antialiased;
-  color: #ff5601;
 }
 .example-rating-summary-2 .rating-result > span span {
   position: absolute;
@@ -6968,22 +6409,22 @@ fieldset[disabled] .window.popup.popup-example-9 .popup-actions .action.close {
 }
 .example-rating-summary-3 .rating-result:before {
   position: absolute;
-  z-index: 1;
   top: 0;
   left: 0;
   width: 100%;
+  z-index: 1;
+  color: #aff5e3;
   display: block;
   font-family: 'icons-blank-theme';
   content: '\e605' '\e605' '\e605' '\e605' '\e605';
   font-style: normal;
   font-size: 28px;
-  line-height: 28px;
   height: 28px;
+  line-height: 28px;
   letter-spacing: -10px;
   speak: none;
   font-weight: normal;
   -webkit-font-smoothing: antialiased;
-  color: #aff5e3;
 }
 .example-rating-summary-3 .rating-result > span {
   display: block;
@@ -6992,18 +6433,18 @@ fieldset[disabled] .window.popup.popup-example-9 .popup-actions .action.close {
 .example-rating-summary-3 .rating-result > span:before {
   position: relative;
   z-index: 2;
+  color: #0a6767;
   display: block;
   font-family: 'icons-blank-theme';
   content: '\e605' '\e605' '\e605' '\e605' '\e605';
   font-style: normal;
   font-size: 28px;
-  line-height: 28px;
   height: 28px;
+  line-height: 28px;
   letter-spacing: -10px;
   speak: none;
   font-weight: normal;
   -webkit-font-smoothing: antialiased;
-  color: #0a6767;
 }
 .example-rating-summary-3 .rating-result > span span {
   position: absolute;
@@ -7027,22 +6468,22 @@ fieldset[disabled] .window.popup.popup-example-9 .popup-actions .action.close {
 }
 .example-rating-summary-4 .rating-result:before {
   position: absolute;
-  z-index: 1;
   top: 0;
   left: 0;
   width: 100%;
+  z-index: 1;
+  color: #c7c7c7;
   display: block;
   font-family: 'icons-blank-theme';
   content: '\e600' '\e600' '\e600' '\e600' '\e600';
   font-style: normal;
   font-size: 28px;
-  line-height: 28px;
   height: 28px;
+  line-height: 28px;
   letter-spacing: -10px;
   speak: none;
   font-weight: normal;
   -webkit-font-smoothing: antialiased;
-  color: #c7c7c7;
 }
 .example-rating-summary-4 .rating-result > span {
   display: block;
@@ -7051,18 +6492,18 @@ fieldset[disabled] .window.popup.popup-example-9 .popup-actions .action.close {
 .example-rating-summary-4 .rating-result > span:before {
   position: relative;
   z-index: 2;
+  color: #ff5601;
   display: block;
   font-family: 'icons-blank-theme';
   content: '\e600' '\e600' '\e600' '\e600' '\e600';
   font-style: normal;
   font-size: 28px;
-  line-height: 28px;
   height: 28px;
+  line-height: 28px;
   letter-spacing: -10px;
   speak: none;
   font-weight: normal;
   -webkit-font-smoothing: antialiased;
-  color: #ff5601;
 }
 .example-rating-summary-4 .rating-result > span span {
   position: absolute;
@@ -7096,22 +6537,22 @@ fieldset[disabled] .window.popup.popup-example-9 .popup-actions .action.close {
 }
 .example-rating-summary-5 .rating-result:before {
   position: absolute;
-  z-index: 1;
   top: 0;
   left: 0;
   width: 100%;
+  z-index: 1;
+  color: #c7c7c7;
   display: block;
   font-family: 'icons-blank-theme';
   content: '\e605' '\e605' '\e605' '\e605' '\e605';
   font-style: normal;
   font-size: 28px;
-  line-height: 28px;
   height: 28px;
+  line-height: 28px;
   letter-spacing: -10px;
   speak: none;
   font-weight: normal;
   -webkit-font-smoothing: antialiased;
-  color: #c7c7c7;
 }
 .example-rating-summary-5 .rating-result > span {
   display: block;
@@ -7120,18 +6561,18 @@ fieldset[disabled] .window.popup.popup-example-9 .popup-actions .action.close {
 .example-rating-summary-5 .rating-result > span:before {
   position: relative;
   z-index: 2;
+  color: #ff5601;
   display: block;
   font-family: 'icons-blank-theme';
   content: '\e605' '\e605' '\e605' '\e605' '\e605';
   font-style: normal;
   font-size: 28px;
-  line-height: 28px;
   height: 28px;
+  line-height: 28px;
   letter-spacing: -10px;
   speak: none;
   font-weight: normal;
   -webkit-font-smoothing: antialiased;
-  color: #ff5601;
 }
 .example-rating-summary-5 .rating-result > span span {
   position: absolute;
@@ -7155,22 +6596,22 @@ fieldset[disabled] .window.popup.popup-example-9 .popup-actions .action.close {
 }
 .example-rating-summary-6 .rating-summary .rating-result:before {
   position: absolute;
-  z-index: 1;
   top: 0;
   left: 0;
   width: 100%;
+  z-index: 1;
+  color: #c7c7c7;
   display: block;
   font-family: 'icons-blank-theme';
   content: '\e605' '\e605' '\e605' '\e605' '\e605';
   font-style: normal;
   font-size: 28px;
-  line-height: 28px;
   height: 28px;
+  line-height: 28px;
   letter-spacing: -10px;
   speak: none;
   font-weight: normal;
   -webkit-font-smoothing: antialiased;
-  color: #c7c7c7;
 }
 .example-rating-summary-6 .rating-summary .rating-result > span {
   display: block;
@@ -7179,18 +6620,18 @@ fieldset[disabled] .window.popup.popup-example-9 .popup-actions .action.close {
 .example-rating-summary-6 .rating-summary .rating-result > span:before {
   position: relative;
   z-index: 2;
+  color: #ff5601;
   display: block;
   font-family: 'icons-blank-theme';
   content: '\e605' '\e605' '\e605' '\e605' '\e605';
   font-style: normal;
   font-size: 28px;
-  line-height: 28px;
   height: 28px;
+  line-height: 28px;
   letter-spacing: -10px;
   speak: none;
   font-weight: normal;
   -webkit-font-smoothing: antialiased;
-  color: #ff5601;
 }
 .example-rating-summary-6 .rating-summary .rating-result > span span {
   position: absolute;
@@ -7214,22 +6655,22 @@ fieldset[disabled] .window.popup.popup-example-9 .popup-actions .action.close {
 }
 .example-rating-summary-7 .rating-result:before {
   position: absolute;
-  z-index: 1;
   top: 0;
   left: 0;
   width: 100%;
+  z-index: 1;
+  color: #c7c7c7;
   display: block;
   font-family: 'icons-blank-theme';
   content: '\e605' '\e605' '\e605' '\e605' '\e605';
   font-style: normal;
   font-size: 28px;
-  line-height: 28px;
   height: 28px;
+  line-height: 28px;
   letter-spacing: -10px;
   speak: none;
   font-weight: normal;
   -webkit-font-smoothing: antialiased;
-  color: #c7c7c7;
 }
 .example-rating-summary-7 .rating-result > span {
   display: block;
@@ -7238,18 +6679,18 @@ fieldset[disabled] .window.popup.popup-example-9 .popup-actions .action.close {
 .example-rating-summary-7 .rating-result > span:before {
   position: relative;
   z-index: 2;
+  color: #ff5601;
   display: block;
   font-family: 'icons-blank-theme';
   content: '\e605' '\e605' '\e605' '\e605' '\e605';
   font-style: normal;
   font-size: 28px;
-  line-height: 28px;
   height: 28px;
+  line-height: 28px;
   letter-spacing: -10px;
   speak: none;
   font-weight: normal;
   -webkit-font-smoothing: antialiased;
-  color: #ff5601;
 }
 .example-rating-summary-7 .rating-result > span span {
   position: absolute;
@@ -7315,7 +6756,8 @@ fieldset[disabled] .window.popup.popup-example-9 .popup-actions .action.close {
   display: block;
 }
 .example-sections-1 > .item.title {
-  margin: 0 5px 0 0;
+  margin: 0;
+  margin-right: 5px;
 }
 .example-sections-1 > .item.title > .switch {
   font-size: 1.4rem;
@@ -7323,11 +6765,14 @@ fieldset[disabled] .window.popup.popup-example-9 .popup-actions .action.close {
   line-height: 20px;
   color: #7d7d7d;
   text-decoration: none;
-  height: 20px;
-  padding: 5px 20px 5px 20px;
-  border: 1px solid #d1d1d1;
   background: #f0f0f0;
+  border: 1px solid #d1d1d1;
   border-bottom: none;
+  height: 20px;
+  padding-top: 5px;
+  padding-right: 20px;
+  padding-bottom: 5px;
+  padding-left: 20px;
 }
 .example-sections-1 > .item.title > .switch:visited {
   color: #7d7d7d;
@@ -7353,6 +6798,7 @@ fieldset[disabled] .window.popup.popup-example-9 .popup-actions .action.close {
   color: #333333;
 }
 .example-sections-1 > .item.title.active > .switch,
+.example-sections-1 > .item.title.active > .switch:focus,
 .example-sections-1 > .item.title.active > .switch:hover {
   padding-bottom: 6px;
 }
@@ -7403,7 +6849,8 @@ fieldset[disabled] .window.popup.popup-example-9 .popup-actions .action.close {
   display: block;
 }
 .example-sections-2 > .item.title {
-  margin: 0 5px 0 0;
+  margin: 0;
+  margin-right: 5px;
 }
 .example-sections-2 > .item.title > .switch {
   font-size: 1.4rem;
@@ -7411,11 +6858,14 @@ fieldset[disabled] .window.popup.popup-example-9 .popup-actions .action.close {
   line-height: 20px;
   color: #7d7d7d;
   text-decoration: none;
-  height: 20px;
-  padding: 5px 20px 5px 20px;
-  border: 1px solid #d1d1d1;
   background: #f0f0f0;
+  border: 1px solid #d1d1d1;
   border-bottom: none;
+  height: 20px;
+  padding-top: 5px;
+  padding-right: 20px;
+  padding-bottom: 5px;
+  padding-left: 20px;
 }
 .example-sections-2 > .item.title > .switch:visited {
   color: #7d7d7d;
@@ -7441,6 +6891,7 @@ fieldset[disabled] .window.popup.popup-example-9 .popup-actions .action.close {
   color: #333333;
 }
 .example-sections-2 > .item.title.active > .switch,
+.example-sections-2 > .item.title.active > .switch:focus,
 .example-sections-2 > .item.title.active > .switch:hover {
   padding-bottom: 6px;
 }
@@ -7481,7 +6932,8 @@ fieldset[disabled] .window.popup.popup-example-9 .popup-actions .action.close {
   display: block;
 }
 .example-sections-3 > .item.title {
-  margin: 0 0 5px;
+  margin: 0;
+  margin-bottom: 5px;
 }
 .example-sections-3 > .item.title > .switch {
   background: #f0f0f0;
@@ -7490,7 +6942,10 @@ fieldset[disabled] .window.popup.popup-example-9 .popup-actions .action.close {
   border-bottom: 1px solid #d1d1d1;
   border-left: 1px solid #d1d1d1;
   height: 40px;
-  padding: 5px 20px 5px 20px;
+  padding-top: 5px;
+  padding-right: 20px;
+  padding-bottom: 5px;
+  padding-left: 20px;
   font-size: 1.8rem;
   font-weight: 600;
   line-height: 40px;
@@ -7568,7 +7023,8 @@ fieldset[disabled] .window.popup.popup-example-9 .popup-actions .action.close {
     display: block;
   }
   .example-sections-4 > .item.title {
-    margin: 0 5px 0 0;
+    margin: 0;
+    margin-right: 5px;
   }
   .example-sections-4 > .item.title > .switch {
     font-size: 1.4rem;
@@ -7576,11 +7032,14 @@ fieldset[disabled] .window.popup.popup-example-9 .popup-actions .action.close {
     line-height: 20px;
     color: #7d7d7d;
     text-decoration: none;
-    height: 20px;
-    padding: 5px 20px 5px 20px;
-    border: 1px solid #d1d1d1;
     background: #f0f0f0;
+    border: 1px solid #d1d1d1;
     border-bottom: none;
+    height: 20px;
+    padding-top: 5px;
+    padding-right: 20px;
+    padding-bottom: 5px;
+    padding-left: 20px;
   }
   .example-sections-4 > .item.title > .switch:visited {
     color: #7d7d7d;
@@ -7606,6 +7065,7 @@ fieldset[disabled] .window.popup.popup-example-9 .popup-actions .action.close {
     color: #333333;
   }
   .example-sections-4 > .item.title.active > .switch,
+  .example-sections-4 > .item.title.active > .switch:focus,
   .example-sections-4 > .item.title.active > .switch:hover {
     padding-bottom: 6px;
   }
@@ -7647,7 +7107,8 @@ fieldset[disabled] .window.popup.popup-example-9 .popup-actions .action.close {
     display: block;
   }
   .example-sections-4 > .item.title {
-    margin: 0 0 5px;
+    margin: 0;
+    margin-bottom: 5px;
   }
   .example-sections-4 > .item.title > .switch {
     background: #f0f0f0;
@@ -7656,7 +7117,10 @@ fieldset[disabled] .window.popup.popup-example-9 .popup-actions .action.close {
     border-bottom: 1px solid #d1d1d1;
     border-left: 1px solid #d1d1d1;
     height: 40px;
-    padding: 5px 20px 5px 20px;
+    padding-top: 5px;
+    padding-right: 20px;
+    padding-bottom: 5px;
+    padding-left: 20px;
     font-size: 1.8rem;
     font-weight: 600;
     line-height: 40px;
@@ -8578,7 +8042,8 @@ p {
 }
 abbr[title] {
   cursor: help;
-  border-bottom: 1px dotted #d1d1d1;
+  border-bottom: 1px dotted;
+  border-bottom-color: #d1d1d1;
 }
 b,
 strong {
@@ -8600,7 +8065,9 @@ hr {
   margin-top: 20px;
   margin-bottom: 20px;
   border: 0;
-  border-top: 1px solid #d1d1d1;
+  border-top-width: 1px;
+  border-top-style: solid;
+  border-top-color: #d1d1d1;
 }
 sub,
 sup {
@@ -8745,16 +8212,19 @@ code {
 kbd {
   background: #f0f0f0;
   color: #111111;
-  padding: 2px 4px;
   font-size: 1.2rem;
+  padding: 2px 4px;
 }
 pre {
   background: #f0f0f0;
-  border: 1px solid #d1d1d1;
+  border-width: 1px;
+  border-style: solid;
+  border-color: #d1d1d1;
   color: #111111;
   display: block;
   font-size: 1.2rem;
-  margin: 0 0 10px;
+  margin: 0;
+  margin-bottom: 10px;
   line-height: 1.42857143;
   padding: 10px;
   word-break: break-all;
@@ -8777,7 +8247,9 @@ blockquote {
   font-weight: 400;
   font-style: italic;
   line-height: 1.42857143;
-  border-left: 0 solid #d1d1d1;
+  border-left-width: 0;
+  border-left-style: solid;
+  border-left-color: #d1d1d1;
 }
 blockquote p:last-child,
 blockquote ul:last-child,
@@ -8948,7 +8420,8 @@ p {
 }
 abbr[title] {
   cursor: help;
-  border-bottom: 1px dotted #d1d1d1;
+  border-bottom: 1px dotted;
+  border-bottom-color: #d1d1d1;
 }
 b,
 strong {
@@ -8970,7 +8443,9 @@ hr {
   margin-top: 20px;
   margin-bottom: 20px;
   border: 0;
-  border-top: 1px solid #d1d1d1;
+  border-top-width: 1px;
+  border-top-style: solid;
+  border-top-color: #d1d1d1;
 }
 sub,
 sup {
@@ -9115,16 +8590,19 @@ code {
 kbd {
   background: #f0f0f0;
   color: #111111;
-  padding: 2px 4px;
   font-size: 1.2rem;
+  padding: 2px 4px;
 }
 pre {
   background: #f0f0f0;
-  border: 1px solid #d1d1d1;
+  border-width: 1px;
+  border-style: solid;
+  border-color: #d1d1d1;
   color: #111111;
   display: block;
   font-size: 1.2rem;
-  margin: 0 0 10px;
+  margin: 0;
+  margin-bottom: 10px;
   line-height: 1.42857143;
   padding: 10px;
   word-break: break-all;
@@ -9147,7 +8625,9 @@ blockquote {
   font-weight: 400;
   font-style: italic;
   line-height: 1.42857143;
-  border-left: 0 solid #d1d1d1;
+  border-left-width: 0;
+  border-left-style: solid;
+  border-left-color: #d1d1d1;
 }
 blockquote p:last-child,
 blockquote ul:last-child,
@@ -9286,4 +8766,3 @@ body {
   padding: 15px;
   background-image: none;
 }
-/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9saWIvd2ViL2Nzcy9zb3VyY2UvbGliL3Jlc2V0cy5sZXNzIiwiL2xpYi93ZWIvY3NzL3NvdXJjZS9saWIvdHlwb2dyYXBoeS5sZXNzIiwiL2xpYi93ZWIvY3NzL3NvdXJjZS9saWIvdXRpbGl0aWVzLmxlc3MiLCIvbGliL3dlYi9jc3Mvc291cmNlL2xpYi92YXJpYWJsZXMubGVzcyIsIi9saWIvd2ViL2Nzcy9zb3VyY2UvbGliL3RhYmxlcy5sZXNzIiwiL2xpYi93ZWIvY3NzL3NvdXJjZS9saWIvYnV0dG9ucy5sZXNzIiwiL2xpYi93ZWIvY3NzL3NvdXJjZS9saWIvZm9ybXMubGVzcyIsIi9saWIvd2ViL2Nzcy9zb3VyY2UvbGliL3VpLWRpYWxvZy5sZXNzIiwiL2xpYi93ZWIvY3NzL3NvdXJjZS9saWIvcmVzcG9uc2l2ZS5sZXNzIiwiL2xpYi93ZWIvY3NzL2RvY3Mvc291cmNlL3Jlc3BvbnNpdmUubGVzcyIsIi9saWIvd2ViL2Nzcy9zb3VyY2UvbGliL2Fic3RyYWN0Lmxlc3MiLCIvbGliL3dlYi9jc3MvZG9jcy9zb3VyY2UvYWN0aW9ucy10b29sYmFyLmxlc3MiLCIvbGliL3dlYi9jc3Mvc291cmNlL2xpYi9hY3Rpb25zLXRvb2xiYXIubGVzcyIsIi9saWIvd2ViL2Nzcy9kb2NzL3NvdXJjZS9icmVhZGNydW1icy5sZXNzIiwiL2xpYi93ZWIvY3NzL3NvdXJjZS9saWIvYnJlYWRjcnVtYnMubGVzcyIsIi9saWIvd2ViL2Nzcy9zb3VyY2UvbGliL2ljb25zLmxlc3MiLCIvbGliL3dlYi9jc3MvZG9jcy9zb3VyY2UvaWNvbnMubGVzcyIsIi9saWIvd2ViL2Nzcy9kb2NzL3NvdXJjZS9idXR0b25zLmxlc3MiLCIvbGliL3dlYi9jc3MvZG9jcy9zb3VyY2UvZHJvcGRvd25zLmxlc3MiLCIvbGliL3dlYi9jc3Mvc291cmNlL2xpYi9kcm9wZG93bnMubGVzcyIsIi9saWIvd2ViL2Nzcy9kb2NzL3NvdXJjZS9mb3Jtcy5sZXNzIiwiL2xpYi93ZWIvY3NzL2RvY3Mvc291cmNlL2xvYWRlcnMubGVzcyIsIi9saWIvd2ViL2Nzcy9zb3VyY2UvbGliL2xvYWRlcnMubGVzcyIsIi9saWIvd2ViL2Nzcy9kb2NzL3NvdXJjZS9tZXNzYWdlcy5sZXNzIiwiL2xpYi93ZWIvY3NzL3NvdXJjZS9saWIvbWVzc2FnZXMubGVzcyIsIi9saWIvd2ViL2Nzcy9kb2NzL3NvdXJjZS9sYXlvdXQubGVzcyIsIi9saWIvd2ViL2Nzcy9zb3VyY2UvbGliL2xheW91dC5sZXNzIiwiL2xpYi93ZWIvY3NzL3NvdXJjZS9saWIvZ3JpZHMubGVzcyIsIi9saWIvd2ViL2Nzcy9kb2NzL3NvdXJjZS9wYWdlcy5sZXNzIiwiL2xpYi93ZWIvY3NzL3NvdXJjZS9saWIvcGFnZXMubGVzcyIsIi9saWIvd2ViL2Nzcy9kb2NzL3NvdXJjZS9wb3B1cHMubGVzcyIsIi9saWIvd2ViL2Nzcy9zb3VyY2UvbGliL3BvcHVwcy5sZXNzIiwiL2xpYi93ZWIvY3NzL2RvY3Mvc291cmNlL3JhdGluZy5sZXNzIiwiL2xpYi93ZWIvY3NzL3NvdXJjZS9saWIvcmF0aW5nLmxlc3MiLCIvbGliL3dlYi9jc3MvZG9jcy9zb3VyY2Uvc2VjdGlvbnMubGVzcyIsIi9saWIvd2ViL2Nzcy9zb3VyY2UvbGliL3NlY3Rpb25zLmxlc3MiLCIvbGliL3dlYi9jc3MvZG9jcy9zb3VyY2UvdGFibGVzLmxlc3MiLCIvbGliL3dlYi9jc3MvZG9jcy9zb3VyY2UvdG9vbHRpcHMubGVzcyIsIi9saWIvd2ViL2Nzcy9zb3VyY2UvbGliL3Rvb2x0aXBzLmxlc3MiLCIvbGliL3dlYi9jc3MvZG9jcy9zb3VyY2UvdHlwb2dyYXBoeS5sZXNzIiwiL2xpYi93ZWIvY3NzL2RvY3Mvc291cmNlL3V0aWxpdGllcy5sZXNzIiwiL2xpYi93ZWIvY3NzL2RvY3Mvc291cmNlL2RvY3MubGVzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBWUk7RUFDSSxTQUFBO0VBQ0EsVUFBQTs7QUFHSjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0VBQ0ksY0FBQTs7QUFHSjtBQUNBO0FBQ0E7RUFDSSxxQkFBQTs7QUFHSixLQUFLLElBQUk7RUFDTCxhQUFBO0VBQ0EsU0FBQTs7QUFHSixHQUFJO0FBQ0osR0FBSTtFQUNBLHFCQUFBOztBQUdKO0VBQ0ksU0FBQTs7QUFHSixHQUFHLElBQUk7RUFDSCxnQkFBQTs7QUFHSjtFQUNJLFNBQUE7O0FDdUdKO0VBQ0ksZ0JBQUE7RUFDQSw4QkFBQTtFQUNBLDBCQUFBO0VBQ0Esc0JBQUE7O0FBRUo7RUF0SUEsaUJBQUE7RUN5S0EsY0FBQTtFQUFBLGFDM0xxQiw4Q0QyTHJCO0VBQUEsZ0JBQUE7RUFBQSxrQkFBQTtFQUFBLHVCQUFBOztBRC9CQTtFQzdKQSxnQkFBQTtFQU9BLG1CQUFBOztBRDJKQSxJQUFJO0VBQ0EsWUFBQTtFQUNBLGlDQUFBOztBQUdKO0FBQ0E7RUFDSSxnQkFBQTs7QUFHSjtBQUNBO0VBQ0ksa0JBQUE7O0FBR0o7RUNXQSxtQkFBQTtFQUFBLGNBQUE7O0FETkE7QUFDQTtFQUNJLGVBQUE7O0FBR0o7RUFDSSxnQkFBQTtFQUNBLG1CQUFBO0VBQ0EsU0FBQTtFQUNBLDZCQUFBOztBQUdKO0FBQ0E7RUFDSSx1QkFBQTtFQUNBLGNBQUE7RUFDQSxrQkFBQTtFQUNBLHdCQUFBOztBQUVKO0VBQ0ksV0FBQTs7QUFFSjtFQUNJLGVBQUE7O0FBR0o7RUFDSSxrQkFBQTs7QUFRSjtFQXRNQSxlQUFBO0VDeUtBLGdCQUFBO0VBQUEsZ0JBQUE7RUE1TEEsZ0JBQUE7RUFPQSxtQkFBQTs7QURzTkE7RUExTUEsaUJBQUE7RUN5S0EsZ0JBQUE7RUFBQSxnQkFBQTtFQTVMQSxrQkFBQTtFQU9BLG1CQUFBOztBRDBOQTtFQTlNQSxpQkFBQTtFQ3lLQSxnQkFBQTtFQUFBLGdCQUFBO0VBNUxBLGtCQUFBO0VBT0EsbUJBQUE7O0FEOE5BO0VBbE5BLGlCQUFBO0VDeUtBLGdCQUFBO0VBQUEsZ0JBQUE7RUE1TEEsZ0JBQUE7RUFPQSxtQkFBQTs7QURrT0E7RUF0TkEsaUJBQUE7RUN5S0EsZ0JBQUE7RUFBQSxnQkFBQTtFQTVMQSxnQkFBQTtFQU9BLG1CQUFBOztBRHNPQTtFQTFOQSxlQUFBO0VDeUtBLGdCQUFBO0VBQUEsZ0JBQUE7RUE1TEEsZ0JBQUE7RUFPQSxtQkFBQTs7QUQwT0EsRUFDSTtBQURBLEVBQ0E7QUFESSxFQUNKO0FBRFEsRUFDUjtBQURZLEVBQ1o7QUFEZ0IsRUFDaEI7QUFESixFQUVJO0FBRkEsRUFFQTtBQUZJLEVBRUo7QUFGUSxFQUVSO0FBRlksRUFFWjtBQUZnQixFQUVoQjtFQTVOSix1QkFBQTtFQ3FLQSxjQUFBO0VBQUEsYUMzTHFCLDhDRDJMckI7RUFBQSxnQkFBQTtFQUFBLGtCQUFBO0VBQUEsY0FBQTs7QURxRUE7QUFDQTtFQ3RFQSxjQUFBO0VBQUEscUJBQUE7O0FEL0VBLENBQUM7QUFBRCxNQUFDO0VDK0VELGNBQUE7RUFBQSxxQkFBQTs7QUQzRUEsQ0FBQztBQUFELE1BQUM7RUMyRUQsY0FBQTtFQUFBLDBCQUFBOztBRHZFQSxDQUFDO0FBQUQsTUFBQztFQ3VFRCxjQUFBO0VBQUEsMEJBQUE7O0FEK0VBO0FBQ0E7RUM1UUEsZ0JBQUE7RUFPQSxxQkFBQTs7QURvUUEsRUFJSTtBQUhKLEVBR0k7RUMvUUosZ0JBQUE7RUFPQSxtQkFBQTs7QURvUUEsRUFPSTtBQU5KLEVBTUk7QUFQSixFQVFJO0FBUEosRUFPSTtFQUNJLGdCQUFBOztBQUlSO0VBQ0ksYUFBQTtFQUNBLG1CQUFBOztBQUVKO0VDaEdBLGdCQUFBO0VEa0dJLGFBQUE7RUFDQSxrQkFBQTs7QUFFSjtFQUNJLGFBQUE7RUFDQSxtQkFBQTtFQUNBLGNBQUE7O0FBUUo7QUFDQTtBQUNBO0FBQ0E7RUFDSSxzQ0U3U3lDLHdCRjZTekM7O0FBSUo7RUN4SEEsbUJBQUE7RUFBQSxjQUFBO0VEektBLGlCQUFBO0VDeUtBLGdCQUFBO0VENkhJLG1CQUFBOztBQUlKO0VDaklBLG1CQUFBO0VBQUEsY0FBQTtFQUFBLGdCQUFBO0VEektBLGlCQUFBOztBQWtUQTtFQ3pJQSxtQkFBQTtFRDJJSSx5QkFBQTtFQzNJSixjQUFBO0VENklJLGNBQUE7RUF0VEosaUJBQUE7RUF3VEksZ0JBQUE7RUFDQSx1QkFBQTtFQ2hKSixhQUFBO0VEa0pJLHFCQUFBO0VBQ0EscUJBQUE7O0FBVkosR0FXSTtFQUNJLFVBQUE7RUFDQSxrQkFBQTtFQUNBLGNBQUE7RUFDQSxxQkFBQTtFQUNBLDZCQUFBO0VBQ0EsZ0JBQUE7O0FBU1I7RUNuS0EscUJBQUE7RUFBQSxVQUFBO0VEektBLGlCQUFBO0VDeUtBLGNBQUE7RUFBQSxhQzNMcUIsOENEMkxyQjtFQUFBLGdCQUFBO0VBQUEsa0JBQUE7RUFBQSx1QkFBQTtFRDBLSSw0QkFBQTs7QUFLSSxVQUhKLEVBR0s7QUFBRCxVQUZKLEdBRUs7QUFBRCxVQURKLEdBQ0s7RUFDRyxnQkFBQTs7QUFiWixVQWlCSTtBQWpCSixVQWtCSTtBQWxCSixVQW1CSTtFQ3RMSixjQUFBO0VEd0xRLGNBQUE7RUFqV1IsZUFBQTtFQW1XUSx1QkFBQTs7QUFDQSxVQVBKLE9BT0s7QUFBRCxVQU5KLE1BTUs7QUFBRCxVQUxKLE9BS0s7RUFDRyxTRTlMWSxhRjhMWjs7QUF6QlosVUE0Qkk7RUMvTEosa0JBQUE7O0FEcU1BLFVBQVU7QUFDVixVQUFVO0VBQ04sU0FBUyxFQUFUOztBQUdKO0VBQ0ksWUFBQTs7QUFFSixDQUFDO0FBQ0QsQ0FBQztFQUNHLFNBQVMsRUFBVDtFQUNBLGFBQUE7O0FBSUo7RUNwTkEsa0JBQUE7O0FGM0lBO0VJL0NBLHlCQUFBO0VBQ0EsaUJBQUE7RUFFQSxlQUFBO0VGdUxBLFdBQUE7O0FGM0lBLEtJMUNBO0VBQ0ksZ0JBQUE7O0FKeUNKLEtJdkNBLFFBRUksS0FDSTtBSm9DUixLSXRDQSxRQUNJLEtBQ0k7QUpvQ1IsS0l2Q0EsUUFFSSxLQUVJO0FKbUNSLEtJdENBLFFBQ0ksS0FFSTtFQUNJLG1CQUFBOztBSmtDWixLSTlCQSxRQUFRLEtBQ0o7QUo2QkosS0k5QkEsUUFBUSxLQUVKO0VBQ0ksc0JBQUE7O0FKMkJSLEtJeEJBLFFBR0ksS0FDSTtBSm9CUixLSXZCQSxRQUVJLEtBQ0k7QUpvQlIsS0l0QkEsUUFDSSxLQUNJO0FKb0JSLEtJeEJBLFFBR0ksS0FFSTtBSm1CUixLSXZCQSxRQUVJLEtBRUk7QUptQlIsS0l0QkEsUUFDSSxLQUVJO0VGOEpSLGlCQUFBOztBRnZJQTtFS2JBLHNCQUFBO0VIb0pBLG1CQUFBO0VBQUEsaUJBQUE7RUFBQSxjQUFBO0VBQUEseUJBQUE7RUFBQSxlQUFBO0VBQUEscUJBQUE7RUFBQSxhQzNMcUIsOENEMkxyQjtFRHpLQSxpQkFBQTtFQ3lLQSxnQkFBQTtFRDdKQSxtQkFBQTtFSTJCQSxzQkFBQTtFSGtJQSxTQUFBO0VHaElBLHNCQUFBOztBQWVBLE1BQUM7QUFDRCxNQUFDO0VIZ0hELG1CQUFBO0VBQUEseUJBQUE7RUFBQSxjQUFBOztBR3JHQSxNQUFDO0VIcUdELG1CQUFBO0VBQUEseUJBQUE7RUFBQSxjQUFBOztBRzFGQSxNQUFDO0FBQ0QsTUFBQztBQUNELFFBQVEsVUFBVztFQUNmLGVBQUE7RUFDQSxvQkFBQTtFSHNGSixZQUFBOztBRnJJSSxNQUFDO0VBQ0csU0FBQTtFQUNBLFVBQUE7O0FNK0xSLEtBQUs7QUFDTCxLQUFLO0FBQ0wsS0FBSztBQUNMLEtBQUs7QUFDTCxLQUFLO0FBQ0wsS0FBSztBQUNMLEtBQUs7QUFDTCxLQUFLO0VBbE9MLHNCQUFBO0VKK0pBLG1CQUFBO0VBQUEseUJBQUE7RUFBQSxrQkFBQTtFQUFBLFlBQUE7RUFBQSxXQUFBO0VBQUEsY0FBQTtFQUFBLGVBQUE7RUFBQSwyREFBQTtFQUFBLHdCQUFBO0VBQUEsNEJBQUE7RUFBQSx3QkFBQTs7QUkrTEEsS0FuSUssYUFtSUo7QUFBRCxLQWxJSyxpQkFrSUo7QUFBRCxLQWpJSyxZQWlJSjtBQUFELEtBaElLLFlBZ0lKO0FBQUQsS0EvSEssZUErSEo7QUFBRCxLQTlISyxlQThISjtBQUFELEtBN0hLLGlCQTZISjtBQUFELEtBNUhLLGNBNEhKO0VKL0xELFlBQUE7O0FJOE1BLEtBbEpLLGFBa0pKO0FBQUQsS0FqSkssaUJBaUpKO0FBQUQsS0FoSkssWUFnSko7QUFBRCxLQS9JSyxZQStJSjtBQUFELEtBOUlLLGVBOElKO0FBQUQsS0E3SUssZUE2SUo7QUFBRCxLQTVJSyxpQkE0SUo7QUFBRCxLQTNJSyxjQTJJSjtFSjlNRCxjQUFBOztBSWtOQSxLQXRKSyxhQXNKSjtBQUFELEtBckpLLGlCQXFKSjtBQUFELEtBcEpLLFlBb0pKO0FBQUQsS0FuSkssWUFtSko7QUFBRCxLQWxKSyxlQWtKSjtBQUFELEtBakpLLGVBaUpKO0FBQUQsS0FoSkssaUJBZ0pKO0FBQUQsS0EvSUssY0ErSUo7RUpsTkQsY0FBQTs7QUlzTkEsS0ExSkssYUEwSko7QUFBRCxLQXpKSyxpQkF5Sko7QUFBRCxLQXhKSyxZQXdKSjtBQUFELEtBdkpLLFlBdUpKO0FBQUQsS0F0SkssZUFzSko7QUFBRCxLQXJKSyxlQXFKSjtBQUFELEtBcEpLLGlCQW9KSjtBQUFELEtBbkpLLGNBbUpKO0VKdE5ELGNBQUE7O0FJdUVBLEtBQUs7RUFqS0wsMEJBQUE7O0FBTEEsS0FzS0ssZUF0S0o7QUFDRCxLQXFLSyxlQXJLSjtFQUNDLHdCQUFBO0VBQ0EsU0FBQTs7QUF1S0YsS0FBSztFQWpLTCx3QkFBQTs7QUFDQSxLQWdLSyxlQWhLSjtBQUNELEtBK0pLLGVBL0pKO0FBQ0QsS0E4SkssZUE5Sko7QUFDRCxLQTZKSyxlQTdKSjtFQUNDLHdCQUFBOztBQWdLRjtFQTlPQSxzQkFBQTtFSitKQSxtQkFBQTtFQUFBLHlCQUFBO0VBQUEsa0JBQUE7RUFBQSxZQUFBO0VBQUEsV0FBQTtFQUFBLHFCQUFBO0VBQUEsZUFBQTtFQUFBLDJEQUFBO0VBQUEsd0JBQUE7RUFBQSw0QkFBQTtFQUFBLHdCQUFBOztBSStMQSxNQUFDO0VKL0xELFlBQUE7O0FJbUZBLE1BQU07RUpuRk4sWUFBQTtFSXFGSSxzQkFBQTs7QUFHSjtFQXZQQSxzQkFBQTtFSitKQSxtQkFBQTtFQUFBLHlCQUFBO0VBQUEsa0JBQUE7RUFBQSxZQUFBO0VBQUEsV0FBQTtFQUFBLGFBQUE7RUFBQSxTQUFBO0VBQUEsZUFBQTtFQUFBLDJEQUFBO0VBQUEsd0JBQUE7RUFBQSw0QkFBQTtFQUFBLHdCQUFBO0VBQUEsZ0JBQUE7O0FJK0xBLFFBQUM7RUovTEQsWUFBQTs7QUk4TUEsUUFBQztFSjlNRCxjQUFBOztBSWtOQSxRQUFDO0VKbE5ELGNBQUE7O0FJc05BLFFBQUM7RUp0TkQsY0FBQTs7QUk2RkEsS0FBSztFSjdGTCxtQkFBQTs7QUlyR0EsS0FrTUssaUJBbE1KO0VKcUdELFlBQUE7O0FJaUdBLEtBQUs7RUpqR0wsbUJBQUE7O0FJckdBLEtBc01LLGNBdE1KO0VKcUdELFlBQUE7O0FJN0JBLEtBQUM7QUFBRCxNQUFDO0FBQUQsUUFBQztFSjZCRCxxQkFBQTs7QUkyR0EsR0FBRyxXQUFXO0VMcFJkLGlCQUFBO0VDeUtBLGNBQUE7O0FJK0dBLEtBQUs7QUFDTCxLQUFLO0FBQ0wsS0FBSztFQUNELGVBQUE7RUFDQSwwQkFBQTtFQUNBLGtCQUFBOztBQUdKLEtBQUs7RUFDRCxTQUFBO0VBQ0EsVUFBQTs7QU52UEo7RUFDSSw2Q0FBQTs7QUFHSjtFQUNJLGtCQUFBOztBQUlBLENBQUM7RUFDRyxVQUFBO0VBQ0EsZ0JBQUE7O0FBUUosUUFKSyxFQUlKO0FBQUQsS0FIQyxJQUFJLFlBR0o7QUFBRCxRQUZJLElBQUksWUFFUDtBQUFELE1BREUsSUFBSSxZQUNMO0VBQ0csK0JBQUE7Ozs7Ozs7OztBQ2hGUjtFQUNJLGFFR1MsbUJGSFQ7RUFDQSxTQUFTLHlGQUFUO0VBQ0EsU0FBUyxpR0FBMkIsT0FBTywwQkFDdkMsMkZBQXFCLE9BQU8sYUFDNUIsMEZBQW9CLE9BQU8saUJBQzNCLDRHQUFtQyxPQUFPLE1BSDlDO0VBSUEsbUJBQUE7RUFDQSxrQkFBQTs7QU1kUixxQkFBcUIsVUFDbkI7RUFDRSxpQkFBQTs7QUFGSixxQkFBcUIsVUFJbkI7RUFDRSxVQUFBOztBQ21CSix3QkFKb0Q7RUNMaEQ7SUFDSSxnQkFBQTs7RUFFSix5QkFBeUI7SUFDckIsU0FBUyxnQkFBVDtJQUNBLGlCQUFBOzs7QURrQlIsZ0JBTHFDO0VFaENqQztJQUNJLHVCQUFBO0lBQ0EsMEJBQUE7O0VBRUo7SUFDSSxzQkFBQTtJQUNBLHNCQUFBOztFRGlCSjtJQUNJLGdCQUFBOztFQUVKLHlCQUF5QjtJQUNyQixTQUFTLGlCQUFUO0lBQ0EsaUJBQUE7OztBUHNDSixnQkFBQztBQUNELGdCQUFDO0VBQ0csU0FBUyxFQUFUO0VBQ0EsY0FBQTs7QUFFSixnQkFBQztFQUNHLFdBQUE7O0FTMUNSLGdCQ3dDSTtFQUNJLFdBQUE7O0FEekNSLGdCQzJDSTtFQUNJLFlBQUE7O0FENUNSLGdCQ1hJO0FEV0osZ0JDVkk7RUFDSSxxQkFBQTs7QURTUixnQkNYSSxTQU1JLEVBQUM7QURLVCxnQkNWSSxXQUtJLEVBQUM7RUFDRyxxQkFBQTs7QURJWixnQkNBSSxTQUNJO0VWZ0tKLGlCQUFBOztBU2pLSixnQkNRSSxXQUlJLEVBQUM7RVZxSkwsZUFBQTs7QUE3SEEsMEJBQUM7QUFDRCwwQkFBQztFQUNHLFNBQVMsRUFBVDtFQUNBLGNBQUE7O0FBRUosMEJBQUM7RUFDRyxXQUFBOztBU3RDUiwwQkNvQ0k7RUFDSSxXQUFBOztBRHJDUiwwQkN1Q0k7RUFDSSxZQUFBOztBRHhDUiwwQkNmSTtBRGVKLDBCQ2RJO0VBQ0kscUJBQUE7O0FEYVIsMEJDZkksU0FNSSxFQUFDO0FEU1QsMEJDZEksV0FLSSxFQUFDO0VBQ0cscUJBQUE7O0FEUVosMEJDSkksU0FDSTtFVmdLSixpQkFBQTs7QVM3SkosMEJDSUksV0FJSSxFQUFDO0VWcUpMLGVBQUE7O0FBN0hBLDBCQUFDO0FBQ0QsMEJBQUM7RUFDRyxTQUFTLEVBQVQ7RUFDQSxjQUFBOztBQUVKLDBCQUFDO0VBQ0csV0FBQTs7QVN0Q1IsMEJDb0NJO0VBQ0ksV0FBQTs7QURyQ1IsMEJDdUNJO0VBQ0ksWUFBQTs7QUR4Q1IsMEJDZkk7QURlSiwwQkNkSTtFQUNJLHFCQUFBOztBRGFSLDBCQ2ZJLFNBTUksRUFBQztBRFNULDBCQ2RJLFdBS0ksRUFBQztFQUNHLHFCQUFBOztBRFFaLDBCQ0pJLFNBQ0k7RVZnS0osaUJBQUE7O0FTN0pKLDBCQ0lJLFdBSUksRUFBQztFVnFKTCxlQUFBOztBQTdIQSwwQkFBQztBQUNELDBCQUFDO0VBQ0csU0FBUyxFQUFUO0VBQ0EsY0FBQTs7QUFFSiwwQkFBQztFQUNHLFdBQUE7O0FTeUdSLDBCQzNHSTtFQUNJLFdBQUE7O0FEMEdSLDBCQ3hHSTtFQUNJLFlBQUE7O0FEdUdSLDBCQzlKSTtBRDhKSiwwQkM3Skk7RUFDSSxxQkFBQTs7QUQ0SlIsMEJDOUpJLFNBTUksRUFBQztBRHdKVCwwQkM3SkksV0FLSSxFQUFDO0VBQ0cscUJBQUE7O0FEdUpaLDBCQ25KSSxTQUNJO0VWZ0tKLGlCQUFBOztBU2RKLDBCQzNJSSxXQUlJLEVBQUM7RVZxSkwsZUFBQTs7QVNSSjtFVFFJLGdCQUFBOztBQTdIQSwwQkFBQztBQUNELDBCQUFDO0VBQ0csU0FBUyxFQUFUO0VBQ0EsY0FBQTs7QUFFSiwwQkFBQztFQUNHLFdBQUE7O0FTK0dSLDBCQ3pGSTtFQUNJLFdBQUE7O0FEd0ZSLDBCQ3BLSTtBRG9LSiwwQkNuS0k7RUFDSSxxQkFBQTs7QURrS1IsMEJDcEtJLFNBTUksRUFBQztBRDhKVCwwQkNuS0ksV0FLSSxFQUFDO0VBQ0cscUJBQUE7O0FENkpaLDBCQ3pKSSxTQUNJO0VWZ0tKLGlCQUFBOztBU1JKLDBCQ2pKSSxXQUlJLEVBQUM7RVZxSkwsZUFBQTs7QVNGSjtFVEVJLGlCQUFBOztBQTdIQSwwQkFBQztBQUNELDBCQUFDO0VBQ0csU0FBUyxFQUFUO0VBQ0EsY0FBQTs7QUFFSiwwQkFBQztFQUNHLFdBQUE7O0FTcUhSLDBCQzdFSTtFQUNJLFlBQUE7O0FENEVSLDBCQzFLSTtBRDBLSiwwQkN6S0k7RUFDSSxxQkFBQTs7QUR3S1IsMEJDMUtJLFNBTUksRUFBQztBRG9LVCwwQkN6S0ksV0FLSSxFQUFDO0VBQ0cscUJBQUE7O0FEbUtaLDBCQy9KSSxTQUNJO0VWZ0tKLGlCQUFBOztBU0ZKLDBCQ3ZKSSxXQUlJLEVBQUM7RVZxSkwsZUFBQTs7QVNJSjtFVEpJLGtCQUFBOztBQTdIQSwwQkFBQztBQUNELDBCQUFDO0VBQ0csU0FBUyxFQUFUO0VBQ0EsY0FBQTs7QUFFSiwwQkFBQztFQUNHLFdBQUE7O0FTMkhSLDBCQ2pFSTtBRGlFSiwwQkNoRUk7RUFDSSxtQkFBQTs7QUQrRFIsMEJDaExJO0FEZ0xKLDBCQy9LSTtFQUNJLHFCQUFBOztBRDhLUiwwQkNoTEksU0FNSSxFQUFDO0FEMEtULDBCQy9LSSxXQUtJLEVBQUM7RUFDRyxxQkFBQTs7QUR5S1osMEJDcktJLFNBQ0k7RVZnS0osaUJBQUE7O0FTSUosMEJDN0pJLFdBSUksRUFBQztFVnFKTCxlQUFBOztBQTdIQSwwQkFBQztBQUNELDBCQUFDO0VBQ0csU0FBUyxFQUFUO0VBQ0EsY0FBQTs7QUFFSiwwQkFBQztFQUNHLFdBQUE7O0FTeUxSLDBCQy9LSTtFQUNJLFlBQUE7O0FEOEtSLDBCQzVLSTtFQUNJLFdBQUE7O0FEMktSLDBCQzlPSTtBRDhPSiwwQkM3T0k7RUFDSSxxQkFBQTs7QUQ0T1IsMEJDOU9JLFNBTUksRUFBQztBRHdPVCwwQkM3T0ksV0FLSSxFQUFDO0VBQ0cscUJBQUE7O0FEdU9aLDBCQ25PSSxTQUNJO0VWZ0tKLGlCQUFBOztBU2tFSiwwQkMzTkksV0FJSSxFQUFDO0VWcUpMLGVBQUE7O0FTeUVKO0VUekVJLGdCQUFBOztBQTdIQSwwQkFBQztBQUNELDBCQUFDO0VBQ0csU0FBUyxFQUFUO0VBQ0EsY0FBQTs7QUFFSiwwQkFBQztFQUNHLFdBQUE7O0FTZ01SLDBCQ2pLSTtFQUNJLFdBQUE7O0FEZ0tSLDBCQ3JQSTtBRHFQSiwwQkNwUEk7RUFDSSxxQkFBQTs7QURtUFIsMEJDclBJLFNBTUksRUFBQztBRCtPVCwwQkNwUEksV0FLSSxFQUFDO0VBQ0cscUJBQUE7O0FEOE9aLDBCQzFPSSxTQUNJO0VWZ0tKLGlCQUFBOztBU3lFSiwwQkNsT0ksV0FJSSxFQUFDO0VWcUpMLGVBQUE7O0FTZ0ZKO0VUaEZJLGlCQUFBOztBQTdIQSwwQkFBQztBQUNELDBCQUFDO0VBQ0csU0FBUyxFQUFUO0VBQ0EsY0FBQTs7QUFFSiwwQkFBQztFQUNHLFdBQUE7O0FTdU1SLDBCQ3RKSTtFQUNJLFlBQUE7O0FEcUpSLDBCQzVQSTtBRDRQSiwwQkMzUEk7RUFDSSxxQkFBQTs7QUQwUFIsMEJDNVBJLFNBTUksRUFBQztBRHNQVCwwQkMzUEksV0FLSSxFQUFDO0VBQ0cscUJBQUE7O0FEcVBaLDBCQ2pQSSxTQUNJO0VWZ0tKLGlCQUFBOztBU2dGSiwwQkN6T0ksV0FJSSxFQUFDO0VWcUpMLGVBQUE7O0FTc0lKO0VUdElJLFlBQUE7RUFBQSxhQUFBOztBQTdIQSwwQkFBQztBQUNELDBCQUFDO0VBQ0csU0FBUyxFQUFUO0VBQ0EsY0FBQTs7QUFFSiwwQkFBQztFQUNHLFdBQUE7O0FTNlBSLDBCQy9QSTtFQUNJLFdBQUE7O0FEOFBSLDBCQzVQSTtFQUNJLFlBQUE7O0FEMlBSLDBCQ2xUSTtBRGtUSiwwQkNqVEk7RUFDSSxxQkFBQTs7QURnVFIsMEJDbFRJLFNBTUksRUFBQztBRDRTVCwwQkNqVEksV0FLSSxFQUFDO0VBQ0cscUJBQUE7O0FEMlNaLDBCQ3ZTSSxTQUNJO0VWZ0tKLGlCQUFBOztBU3NJSiwwQkMvUkksV0FJSSxFQUFDO0VWcUpMLGVBQUE7O0FTNklKO0VUN0lJLGdCQUFBOztBQTdIQSwyQkFBQztBQUNELDJCQUFDO0VBQ0csU0FBUyxFQUFUO0VBQ0EsY0FBQTs7QUFFSiwyQkFBQztFQUNHLFdBQUE7O0FTb1FSLDJCQzlPSTtFQUNJLFdBQUE7O0FENk9SLDJCQ3pUSTtBRHlUSiwyQkN4VEk7RUFDSSxxQkFBQTs7QUR1VFIsMkJDelRJLFNBTUksRUFBQztBRG1UVCwyQkN4VEksV0FLSSxFQUFDO0VBQ0cscUJBQUE7O0FEa1RaLDJCQzlTSSxTQUNJO0VWZ0tKLGtCQUFBOztBUzZJSiwyQkN0U0ksV0FJSSxFQUFDO0VWcUpMLGVBQUE7O0FTb0pKO0VUcEpJLGdCQUFBOztBQTdIQSwyQkFBQztBQUNELDJCQUFDO0VBQ0csU0FBUyxFQUFUO0VBQ0EsY0FBQTs7QUFFSiwyQkFBQztFQUNHLFdBQUE7O0FTMlFSLDJCQ3JQSTtFQUNJLFdBQUE7O0FEb1BSLDJCQ2hVSTtBRGdVSiwyQkMvVEk7RUFDSSxxQkFBQTs7QUQ4VFIsMkJDaFVJLFNBTUksRUFBQztBRDBUVCwyQkMvVEksV0FLSSxFQUFDO0VBQ0cscUJBQUE7O0FEeVRaLDJCQ3JUSSxTQUNJO0VWZ0tKLGlCQUFBOztBU29KSiwyQkM3U0ksV0FDSTtFVndKSixrQkFBQTs7QVNvSkosMkJDN1NJLFdBSUksRUFBQztFVnFKTCxlQUFBOztBQTdIQSwyQkFBQztBQUNELDJCQUFDO0VBQ0csU0FBUyxFQUFUO0VBQ0EsY0FBQTs7QUFFSiwyQkFBQztFQUNHLFdBQUE7O0FTaVNSLDJCQ25TSTtFQUNJLFdBQUE7O0FEa1NSLDJCQ2hTSTtFQUNJLFlBQUE7O0FEK1JSLDJCQ3RWSTtBRHNWSiwyQkNyVkk7RUFDSSxxQkFBQTs7QURvVlIsMkJDdFZJLFNBTUksRUFBQztBRGdWVCwyQkNyVkksV0FLSSxFQUFDO0VBQ0cscUJBQUE7O0FEK1VaLDJCQzNVSSxTQUNJO0VWZ0tKLGlCQUFBOztBUzBLSiwyQkNuVUksV0FJSSxFQUFDO0VWcUpMLGVBQUE7O0FBN0hBLDJCQUFDO0FBQ0QsMkJBQUM7RUFDRyxTQUFTLEVBQVQ7RUFDQSxjQUFBOztBQUVKLDJCQUFDO0VBQ0csV0FBQTs7QVNpU1IsMkJDblNJO0VBQ0ksV0FBQTs7QURrU1IsMkJDaFNJO0VBQ0ksWUFBQTs7QUQrUlIsMkJDdFZJO0FEc1ZKLDJCQ3JWSTtFQUNJLHFCQUFBOztBRG9WUiwyQkN0VkksU0FNSSxFQUFDO0FEZ1ZULDJCQ3JWSSxXQUtJLEVBQUM7RUFDRyxxQkFBQTs7QUQrVVosMkJDM1VJLFNBQ0k7RVZnS0osaUJBQUE7O0FTMEtKLDJCQ25VSSxXQUlJLEVBQUM7RVZxSkwsZUFBQTs7QVNtTEosd0JBTDhDO0VBQzFDLDJCQzFUQTtFRDBUQSwyQkN6VEE7SUFDSSxjQUFBO0lBQ0EsV0FBQTs7O0FDOUJSO0VYc0tJLGdCQUFBOztBV3RLSixzQkN5Q0k7RWI1Q0EsaUJBQUE7RUN5S0EsY0FBQTtFQUFBLFNBQUE7RUFBQSxVQUFBO0VEdEdBLHFCQUFBOztBWWhFSixzQkN5Q0ksT2I0QkE7RUFDSSxxQkFBQTtFQUNBLG1CQUFBOztBWXZFUixzQkM4Q0k7RUFDSSxTQUFBOztBRC9DUixzQkNpREk7RVpxSEEsY0FBQTtFQUFBLHFCQUFBOztBWXhHSSxzQkFiSixFQWFLO0Vad0dMLGNBQUE7RUFBQSxxQkFBQTs7QVk1Rkksc0JBekJKLEVBeUJLO0VaNEZMLGNBQUE7RUFBQSwwQkFBQTs7QVloRkksc0JBckNKLEVBcUNLO0VaZ0ZMLGNBQUE7RUFBQSxxQkFBQTs7QVd0S0osc0JDbUdJO0VabUVBLGdCQUFBOztBV3RLSixzQkMySFEsTUFBSyxJQUFJO0VaMkNiLHFCQUFBO0VhOUhBLHFCQUFBOztBQUVBLHNCRGlGSSxNQUFLLElBQUksYUNqRlo7RWI0SEQsYUN0TGEsbUJEc0xiO0VBQUEsU2MwbUJRLE9kMW1CUjtFQUFBLGVBQUE7RUFBQSxpQkFBQTtFYTZJQSxnQkFBQTtFQUNBLFdBQUE7RUFDQSxtQkFBQTtFQUNBLG1DQUFBO0VBQ0EscUJBQUE7RWJqSkEsbUJBQUE7RWFtSkEsa0JBQUE7RWJuSkEsU0FBQTs7QVd5TUo7RVh6TUksZ0JBQUE7O0FXeU1KLHNCQ3RVSTtFYjVDQSxpQkFBQTtFQ3lLQSxjQUFBO0VBQUEsU0FBQTtFQUFBLFVBQUE7RUR0R0EscUJBQUE7O0FZK1NKLHNCQ3RVSSxPYjRCQTtFQUNJLHFCQUFBO0VBQ0EsbUJBQUE7O0FZd1NSLHNCQ2pVSTtFQUNJLFNBQUE7O0FEZ1VSLHNCQzlUSTtFWnlDSSx5QkFBQTtFQUNBLDJCQUFBO0VBQ0Esa0JBQWtCLHNEQUFsQjtFQUNBLGtCQUFrQixvREFBbEI7RUFDQSxrSEFBQTtFQXdFSix5QkFBQTtFQUFBLHFCQUFBO0VBQUEsZ0JBQUE7RUFBQSxjQUFBO0VBQUEscUJBQUE7O0FZeEdJLHNCQWJKLEVBYUs7RVo0QkQsdUJBQUE7RUFDQSwyQkFBQTtFQUNBLGtCQUFrQixrREFBbEI7RUFDQSxrQkFBa0IsZ0RBQWxCO0VBQ0EsOEdBQUE7RUF3RUosY0FBQTtFQUFBLHFCQUFBOztBWTVGSSxzQkF6QkosRUF5Qks7RVpnQkQseUJBQUE7RUFDQSwyQkFBQTtFQUNBLGtCQUFrQixzREFBbEI7RUFDQSxrQkFBa0Isb0RBQWxCO0VBQ0Esa0hBQUE7RUF3RUosY0FBQTtFQUFBLHFCQUFBOztBWWhGSSxzQkFyQ0osRUFxQ0s7RVpJRCx1QkFBQTtFQUNBLDJCQUFBO0VBQ0Esa0JBQWtCLGtEQUFsQjtFQUNBLGtCQUFrQixnREFBbEI7RUFDQSw4R0FBQTtFQXdFSixjQUFBO0VBQUEscUJBQUE7O0FXeU1KLHNCQzVRSTtFWlRJLHlCQUFBO0VBQ0EsMkJBQUE7RUFDQSxrQkFBa0Isc0RBQWxCO0VBQ0Esa0JBQWtCLG9EQUFsQjtFQUNBLGtIQUFBO0VBd0VKLHlCQUFBO0VBQUEscUJBQUE7RUFBQSxnQkFBQTtFQUFBLGdCQUFBOztBV3lNSixzQkNwUFEsTUFBSyxJQUFJO0VaMkNiLHFCQUFBO0VhOUhBLHFCQUFBOztBQUVBLHNCRGlGSSxNQUFLLElBQUksYUNqRlo7RWI0SEQsYUN0TGEsbUJEc0xiO0VBQUEsU2MwbUJRLE9kMW1CUjtFQUFBLGVBQUE7RUFBQSxpQkFBQTtFYTZJQSxnQkFBQTtFQUNBLFdBQUE7RUFDQSxtQkFBQTtFQUNBLG1DQUFBO0VBQ0EscUJBQUE7RWJqSkEsbUJBQUE7RWFtSkEsa0JBQUE7RWJuSkEsU0FBQTs7QVd1UUo7RVh2UUksZ0JBQUE7O0FXdVFKLHNCQ3BZSTtFYjVDQSxpQkFBQTtFQ3lLQSxjQUFBO0VBQUEsU0FBQTtFQUFBLFVBQUE7RUR0R0EscUJBQUE7O0FZNldKLHNCQ3BZSSxPYjRCQTtFQUNJLHFCQUFBO0VBQ0EsbUJBQUE7O0FZc1dSLHNCQy9YSTtFQUNJLFNBQUE7O0FEOFhSLHNCQzVYSTtFWnFIQSxtQkFBQTtFQUFBLHFCQUFBO0VBQUEsZ0JBQUE7RUFBQSxjQUFBO0VBQUEscUJBQUE7O0FZeEdJLHNCQWJKLEVBYUs7RVp3R0wsY0FBQTtFQUFBLHFCQUFBOztBWTVGSSxzQkF6QkosRUF5Qks7RVo0RkwsbUJBQUE7RUFBQSxjQUFBO0VBQUEscUJBQUE7O0FZaEZJLHNCQXJDSixFQXFDSztFWmdGTCxjQUFBO0VBQUEscUJBQUE7O0FXdVFKLHNCQzFVSTtFWm1FQSxtQkFBQTtFQUFBLHFCQUFBO0VBQUEsZ0JBQUE7RUFBQSxnQkFBQTs7QVd1UUosc0JDbFRRLE1BQUssSUFBSTtFWjJDYixxQkFBQTtFYTlIQSxxQkFBQTs7QUFFQSxzQkRpRkksTUFBSyxJQUFJLGFDakZaO0ViNEhELGFDdExhLG1CRHNMYjtFQUFBLFNjMG1CUSxPZDFtQlI7RUFBQSxlQUFBO0VBQUEsaUJBQUE7RWE2SUEsZ0JBQUE7RUFDQSxXQUFBO0VBQ0EsbUJBQUE7RUFDQSxtQ0FBQTtFQUNBLHFCQUFBO0ViakpBLG1CQUFBO0VhbUpBLGtCQUFBO0VibkpBLFNBQUE7O0FXdVFKLHNCQVdJLE1BQU07RUFDRixrQkFBQTtFQUNBLGtCQUFBOztBQUNBLHNCQUhKLE1BQU0sRUFHRDtFWHJQTCxRQUFBO0VBQ0EsU0FBQTtFQUNBLDhCQUFBO0VBT0EsMEJBQUE7RVc4T1EsU0FBUyxFQUFUO0VBQ0Esa0JBQUE7RUFDQSxjQUFBO0VBQ0EsTUFBQTtFQUNBLFlBQUE7O0FBRUosc0JBWEosTUFBTSxFQVdELE1BQU07RUFDSCxzREFBQTs7QUl6Y1o7RVp1Qkksc0JBQUE7RUhvSkEsbUJBQUE7RUFBQSxpQkFBQTtFQUFBLGNBQUE7RUFBQSx5QkFBQTtFQUFBLGVBQUE7RUFBQSxxQkFBQTtFQUFBLGFDM0xxQiw4Q0QyTHJCO0VEektBLGlCQUFBO0VDeUtBLGdCQUFBO0VEN0pBLG1CQUFBO0VJMkJBLHNCQUFBO0VIa0lBLFdBQUE7RUdoSUEsc0JBQUE7RVl6Q0Esa0JBQUE7O0Fad0RBLE1BQUM7QUFDRCxNQUFDO0VIZ0hELG1CQUFBO0VBQUEseUJBQUE7RUFBQSxjQUFBOztBR3JHQSxNQUFDO0VIcUdELG1CQUFBO0VBQUEseUJBQUE7RUFBQSxjQUFBOztBRzFGQSxNQUFDO0FBQ0QsTUFBQztBQUNELFFBQVEsVUFBVztFQUNmLGVBQUE7RUFDQSxvQkFBQTtFSHNGSixZQUFBOztBZXhLQSxNQUFDO0FBQ0QsTUFBQztFQUNHLCtDQUFBOztBQUtKLGlCQUFDO0VoQklELG1CQUFBO0VDNkpBLGtCQUFBO0VEektBLGlCQUFBOztBZ0JXQSxpQkFBQztFaEJDRCxtQkFBQTtFQzZKQSxnQkFBQTtFRHpLQSxpQkFBQTtFZ0JhSSxnQkFBQTtFQUNBLFdBQUE7O0FBQ0EsaUJBSkgsaUJBSUk7QUFDRCxpQkFMSCxpQkFLSTtFQUNHLFdBQUE7O0FBcVNaO0VmN0lJLG1CQUFBO0VBQUEsaUJBQUE7RUFBQSxjQUFBO0VBQUEseUJBQUE7RUFBQSxlQUFBO0VBQUEsYUMzTHFCLDhDRDJMckI7RUR6S0EsaUJBQUE7RUN5S0EsZ0JBQUE7RUQ3SkEsbUJBQUE7RUkyQkEsc0JBQUE7RUhrSUEsV0FBQTtFR2hJQSxzQkFBQTtFSGdJQSxxQkFBQTtFR29CQSxzQkFBQTtFQUNBLGdCQUFBO0VBQ0EsU0FBQTtFQUNBLFNBQUE7RUFDQSxVQUFBO0VBQ0EsNEJBQUE7RUFDQSxnQkFBQTtFQUNBLGlCQUFBO0VBQ0EscUJBQUE7RUFDQSxvQkFBQTtFSDdCQSxnQkFBQTs7QWU2SUosa0JGckVJO0ViNU5BLGtCQUFBO0VBQ0EsVUFBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0EsVUFBQTtFQUNBLGdCQUFBO0VBQ0EsTUFBTSxnQkFBTjtFQUNBLFNBQUE7O0FhdkJBLGtCQUFDO0Vib0tELGFDdExhLG1CRHNMYjtFQUFBLFNjbW5CUSxPZG5uQlI7RUFBQSxlQUFBO0VBQUEsaUJBQUE7RUFBQSxjQUFBO0VhNklBLGdCQUFBO0VBQ0EsV0FBQTtFQUNBLG1CQUFBO0VBQ0EsbUNBQUE7RUFDQSxxQkFBQTtFYmpKQSxtQkFBQTtFYW1KQSxrQkFBQTtFYm5KQSxTQUFBOztBYXhKSSxrQkFESCxNQUNJO0Vid0pMLGNBQUE7O0FhbkpJLGtCQURILE9BQ0k7RWJtSkwsY0FBQTs7QUdqSEEsa0JBQUM7QUFDRCxrQkFBQztFSGdIRCxtQkFBQTtFQUFBLHlCQUFBO0VBQUEsY0FBQTs7QUdyR0Esa0JBQUM7RUhxR0QsbUJBQUE7RUFBQSx5QkFBQTtFQUFBLGNBQUE7O0FHMUZBLGtCQUFDO0FBQ0Qsa0JBQUM7QUFDRCxRQUFRLFVBQVc7RUFDZixlQUFBO0VBQ0Esb0JBQUE7RUhzRkosWUFBQTs7QUcrQkEsa0JBQUM7QUFDRCxrQkFBQztFQUNHLGdCQUFBO0VBQ0EsWUFBQTs7QUFFSixrQkFBQztFQUNHLGdCQUFBO0VBQ0EsWUFBQTs7QUFFSixrQkFBQztBQUNELGtCQUFDO0FBQ0QsUUFBUSxVQUFXO0VBQ2YsbUJBQUE7RUFDQSxvQkFBQTtFSDVDSixZQUFBOztBZWtNSjtFWnRWSSxzQkFBQTtFSG9KQSxtQkFBQTtFQUFBLGlCQUFBO0VBQUEsY0FBQTtFQUFBLHlCQUFBO0VBQUEsZUFBQTtFQUFBLGFDM0xxQiw4Q0QyTHJCO0VEektBLGlCQUFBO0VDeUtBLGdCQUFBO0VEN0pBLG1CQUFBO0VJMkJBLHNCQUFBO0VIa0lBLFdBQUE7RUdoSUEsc0JBQUE7RUhnSUEscUJBQUE7RWF2S0EscUJBQUE7O0FBR0Esa0JBQUM7RWJvS0QsYUN0TGEsbUJEc0xiO0VBQUEsU2NtbkJRLE9kbm5CUjtFQUFBLGVBQUE7RUFBQSxpQkFBQTtFQUFBLGNBQUE7RWE2SUEsZ0JBQUE7RUFDQSxXQUFBO0VBQ0EsbUJBQUE7RUFDQSxtQ0FBQTtFQUNBLHFCQUFBO0ViakpBLG1CQUFBO0VhbUpBLGtCQUFBO0VibkpBLFNBQUE7O0FheEpJLGtCQURILE1BQ0k7RWJ3SkwsY0FBQTs7QWFuSkksa0JBREgsT0FDSTtFYm1KTCxjQUFBOztBR2pIQSxrQkFBQztBQUNELGtCQUFDO0VIZ0hELG1CQUFBO0VBQUEseUJBQUE7RUFBQSxjQUFBOztBR3JHQSxrQkFBQztFSHFHRCxtQkFBQTtFQUFBLHlCQUFBO0VBQUEsY0FBQTs7QUcxRkEsa0JBQUM7QUFDRCxrQkFBQztBQUNELFFBQVEsVUFBVztFQUNmLGVBQUE7RUFDQSxvQkFBQTtFSHNGSixZQUFBOztBZTJNSjtFWi9WSSxzQkFBQTtFSG9KQSxtQkFBQTtFQUFBLGlCQUFBO0VBQUEsY0FBQTtFQUFBLHlCQUFBO0VBQUEsZUFBQTtFQUFBLGFDM0xxQiw4Q0QyTHJCO0VEektBLGlCQUFBO0VDeUtBLGdCQUFBO0VEN0pBLG1CQUFBO0VJMkJBLHNCQUFBO0VIa0lBLFdBQUE7RUdoSUEsc0JBQUE7RUhnSUEscUJBQUE7RWE5SEEscUJBQUE7O0FBRUEsa0JBQUM7RWI0SEQsYUN0TGEsbUJEc0xiO0VBQUEsU2NtbkJRLE9kbm5CUjtFQUFBLGVBQUE7RUFBQSxpQkFBQTtFQUFBLGNBQUE7RWE2SUEsZ0JBQUE7RUFDQSxXQUFBO0VBQ0EsbUJBQUE7RUFDQSxtQ0FBQTtFQUNBLHFCQUFBO0ViakpBLG1CQUFBO0VhbUpBLGtCQUFBO0VibkpBLFNBQUE7O0FhaEhJLGtCQURILE1BQ0k7RWJnSEwsY0FBQTs7QWEzR0ksa0JBREgsT0FDSTtFYjJHTCxjQUFBOztBR2pIQSxrQkFBQztBQUNELGtCQUFDO0VIZ0hELG1CQUFBO0VBQUEseUJBQUE7RUFBQSxjQUFBOztBR3JHQSxrQkFBQztFSHFHRCxtQkFBQTtFQUFBLHlCQUFBO0VBQUEsY0FBQTs7QUcxRkEsa0JBQUM7QUFDRCxrQkFBQztBQUNELFFBQVEsVUFBVztFQUNmLGVBQUE7RUFDQSxvQkFBQTtFSHNGSixZQUFBOztBZTJPSjtFWi9YSSxzQkFBQTtFSG9KQSxtQkFBQTtFQUFBLGlCQUFBO0VBQUEsWUFBQTtFQUFBLGNBQUE7RUFBQSx5QkFBQTtFQUFBLGVBQUE7RUFBQSxxQkFBQTtFQUFBLGFDM0xxQiw4Q0QyTHJCO0VEektBLGlCQUFBO0VDeUtBLGdCQUFBO0VEN0pBLG1CQUFBO0VJMkJBLHNCQUFBO0VIa0lBLFdBQUE7RUdoSUEsc0JBQUE7O0FBZUEsa0JBQUM7QUFDRCxrQkFBQztFSGdIRCxtQkFBQTtFQUFBLHlCQUFBO0VBQUEsY0FBQTs7QUdyR0Esa0JBQUM7RUhxR0QsbUJBQUE7RUFBQSx5QkFBQTtFQUFBLGNBQUE7O0FHMUZBLGtCQUFDO0FBQ0Qsa0JBQUM7QUFDRCxRQUFRLFVBQVc7RUFDZixlQUFBO0VBQ0Esb0JBQUE7RUhzRkosWUFBQTs7QWU0UUo7RVpoYUksc0JBQUE7RUhvSkEsbUJBQUE7RUFBQSxpQkFBQTtFQUFBLGNBQUE7RUFBQSx5QkFBQTtFQUFBLGVBQUE7RUFBQSxxQkFBQTtFQUFBLGFDM0xxQiw4Q0QyTHJCO0VEektBLGlCQUFBO0VDeUtBLGdCQUFBO0VHbElBLHNCQUFBO0VIa0lBLFdBQUE7RUdoSUEsc0JBQUE7O0FBZUEsaUJBQUM7QUFDRCxpQkFBQztFSGdIRCxtQkFBQTtFQUFBLHlCQUFBO0VBQUEsY0FBQTs7QUdyR0EsaUJBQUM7RUhxR0QsbUJBQUE7RUFBQSx5QkFBQTtFQUFBLGNBQUE7O0FHMUZBLGlCQUFDO0FBQ0QsaUJBQUM7QUFDRCxRQUFRLFVBQVc7RUFDZixlQUFBO0VBQ0Esb0JBQUE7RUhzRkosWUFBQTs7QWVnUkEsaUJBQUM7RUFDRywrQ0FBQTs7QUFFSixpQkFBQztFaEJoYkQsbUJBQUE7RUM2SkEsaUJBQUE7RUR6S0EsaUJBQUE7O0FnQitiQSxpQkFBQztFaEJuYkQsbUJBQUE7RUM2SkEsZ0JBQUE7RUR6S0EsaUJBQUE7RWdCaWNJLFdBQUE7O0FBQ0EsaUJBSEgsaUJBR0k7QUFDRCxpQkFKSCxpQkFJSTtFQUNHLFdBQUE7O0FBcUtaO0VacGxCSSxzQkFBQTtFSG9KQSxtQkFBQTtFQTVFSSx5QkFBQTtFQUNBLDJCQUFBO0VBQ0Esa0JBQWtCLHNEQUFsQjtFQUNBLGtCQUFrQixvREFBbEI7RUFDQSxrSEFBQTtFQXdFSixpQkFBQTtFQUFBLGNBQUE7RUFBQSx5QkFBQTtFQUFBLGVBQUE7RUFBQSxxQkFBQTtFQUFBLGFDM0xxQiw4Q0QyTHJCO0VEektBLGlCQUFBO0VDeUtBLGdCQUFBO0VEN0pBLG1CQUFBO0VJMkJBLHNCQUFBO0VIa0lBLFdBQUE7RUdoSUEsc0JBQUE7RVltbEJBLGtCQUFBOztBWnBrQkEsaUJBQUM7QUFDRCxpQkFBQztFSGdIRCxtQkFBQTtFQTVFSSx5QkFBQTtFQUNBLDJCQUFBO0VBQ0Esa0JBQWtCLHNEQUFsQjtFQUNBLGtCQUFrQixvREFBbEI7RUFDQSxrSEFBQTtFQXdFSix5QkFBQTtFQUFBLGNBQUE7O0FHckdBLGlCQUFDO0VIcUdELG1CQUFBO0VBNUVJLHlCQUFBO0VBQ0EsMkJBQUE7RUFDQSxrQkFBa0Isc0RBQWxCO0VBQ0Esa0JBQWtCLG9EQUFsQjtFQUNBLGtIQUFBO0VBd0VKLHlCQUFBO0VBQUEsY0FBQTs7QUcxRkEsaUJBQUM7QUFDRCxpQkFBQztBQUNELFFBQVEsVUFBVztFQUNmLGVBQUE7RUFDQSxvQkFBQTtFSHNGSixZQUFBOztBZW9kQSxpQkFBQztFQUNHLCtDQUFBOztBQWlCUjtFWnhmSSxnQkFBQTtFQUNBLFNBQUE7RUFDQSxlQUFBO0VIZ0JBLHVCQUFBO0VHZEEsU0FBQTtFQUNBLFVBQUE7RUhhQSxjQUFBO0VBQUEscUJBQUE7RWV3ZUEsbUJBQUE7O0FoQnZqQkEsaUJBQUM7RUMrRUQsY0FBQTtFQUFBLHFCQUFBOztBRDNFQSxpQkFBQztFQzJFRCxjQUFBO0VBQUEsMEJBQUE7O0FEdkVBLGlCQUFDO0VDdUVELGNBQUE7RUFBQSwwQkFBQTs7QUdYQSxpQkFBQztFSFdELGNBQUE7O0FHUkEsaUJBQUM7QUFDRCxpQkFBQztBQUNELGlCQUFDO0VBQ0csZ0JBQUE7RUFDQSxTQUFBOztBQUVKLGlCQUFDO0FBQ0QsaUJBQUM7QUFDRCxRQUFRLFVBQVc7RUhBbkIsY0FBQTtFR0VJLDBCQUFBO0VBQ0EsZUFBQTtFQUNBLG9CQUFBO0VISkosWUFBQTs7QWV5ZUEsaUJBQUM7RUFDRyxnQkFBQTs7QUFnQlI7RVo3aEJJLHFCQUFBO0VBakhBLHNCQUFBO0VIb0pBLG1CQUFBO0VBQUEsaUJBQUE7RUFBQSxjQUFBO0VBQUEseUJBQUE7RUFBQSxlQUFBO0VBQUEscUJBQUE7RUFBQSxhQzNMcUIsOENEMkxyQjtFRHpLQSxpQkFBQTtFQ3lLQSxnQkFBQTtFRDdKQSxtQkFBQTtFSTJCQSxzQkFBQTtFSGtJQSxTQUFBO0VHaElBLHNCQUFBO0VZNm5CQSxXQUFBO0VBQ0Esa0JBQUE7RUFDQSxpQkFBQTs7QVpqaUJBLGlCQUFDO0FBQ0QsaUJBQUM7QUFDRCxpQkFBQztFQUNHLHFCQUFBOztBQWxGSixpQkFBQztBQUNELGlCQUFDO0VIZ0hELG1CQUFBO0VBQUEseUJBQUE7RUFBQSxjQUFBOztBR3JHQSxpQkFBQztFSHFHRCxtQkFBQTtFQUFBLHlCQUFBO0VBQUEsY0FBQTs7QUcxRkEsaUJBQUM7QUFDRCxpQkFBQztBQUNELFFBQVEsVUFBVztFQUNmLGVBQUE7RUFDQSxvQkFBQTtFSHNGSixZQUFBOztBZWdnQkEsaUJBQUM7RUFDRywrQ0FBQTs7QUFhUjtFWjFmSSxzQkFBQTtFQUNBLGdCQUFBO0VBQ0EsU0FBQTtFQUNBLFNBQUE7RUFDQSxVQUFBO0VBQ0EsNEJBQUE7RUFDQSxnQkFBQTtFQUNBLGlCQUFBO0VBQ0EscUJBQUE7RUFDQSxvQkFBQTtFSDdCQSxnQkFBQTs7QUcrQkEsa0JBQUM7QUFDRCxrQkFBQztFQUNHLGdCQUFBO0VBQ0EsWUFBQTs7QUFFSixrQkFBQztFQUNHLGdCQUFBO0VBQ0EsWUFBQTs7QUFFSixrQkFBQztBQUNELGtCQUFDO0FBQ0QsUUFBUSxVQUFXO0VBQ2YsbUJBQUE7RUFDQSxvQkFBQTtFSDVDSixZQUFBOztBZTZoQko7RVpqckJJLHNCQUFBO0VIb0pBLG1CQUFBO0VBQUEsaUJBQUE7RUFBQSxjQUFBO0VBQUEseUJBQUE7RUFBQSxlQUFBO0VBQUEscUJBQUE7RUFBQSxhQzNMcUIsOENEMkxyQjtFRHpLQSxpQkFBQTtFQ3lLQSxnQkFBQTtFR2xJQSxzQkFBQTtFQUVBLHNCQUFBO0VIZ0lBLG1CQUFBO0VBQUEsY0FBQTtFQUFBLHlCQUFBOztBR2pIQSxrQkFBQztBQUNELGtCQUFDO0VIZ0hELG1CQUFBO0VBQUEseUJBQUE7RUFBQSxjQUFBOztBR3JHQSxrQkFBQztFSHFHRCxtQkFBQTtFQUFBLHlCQUFBO0VBQUEsY0FBQTs7QUcxRkEsa0JBQUM7QUFDRCxrQkFBQztBQUNELFFBQVEsVUFBVztFQUNmLGVBQUE7RUFDQSxvQkFBQTtFSHNGSixZQUFBOztBR3VIQSxrQkFBQztBQUNELGtCQUFDO0VIeEhELG1CQUFBO0VBQUEsY0FBQTtFQUFBLHlCQUFBOztBRzZIQSxrQkFBQztFSDdIRCxtQkFBQTtFQUFBLGNBQUE7RUFBQSx5QkFBQTs7QWUrbUJKO0VoQjV3QkksbUJBQUE7RUM2SkEsa0JBQUE7RUR6S0EsaUJBQUE7RUFBQSxpQkFBQTtFQVlBLG1CQUFBO0VDNkpBLGlCQUFBOztBZW1uQko7RWhCNXhCSSxlQUFBO0VBWUEsbUJBQUE7RUM2SkEsaUJBQUE7O0FnQmpLSjtFQ1dJLHFCQUFBO0VBQ0Esa0JBQUE7O0FqQndCQSxtQkFBQztBQUNELG1CQUFDO0VBQ0csU0FBUyxFQUFUO0VBQ0EsY0FBQTs7QUFFSixtQkFBQztFQUNHLFdBQUE7O0FnQjFDUixtQkNjSTtFQUVJLGVBQUE7RWpCaUpKLHFCQUFBO0VhOUhBLHFCQUFBOztBQUVBLG1CSXZCQSxlSnVCQztFYjRIRCxhQ3RMYSxtQkRzTGI7RUFBQSxTY3ltQmdCLE9kem1CaEI7RUFBQSxlQUFBO0VBQUEsaUJBQUE7RUFBQSxjQUFBO0VhNklBLGdCQUFBO0VBQ0EsV0FBQTtFQUNBLG1CQUFBO0VBQ0EsbUNBQUE7RUFDQSxxQkFBQTtFYmpKQSxtQkFBQTtFYW1KQSxrQkFBQTtFYm5KQSxTQUFBOztBYWhISSxtQkluQ0osZUprQ0MsTUFDSTtFYmdITCxjQUFBOztBYTNHSSxtQkl4Q0osZUp1Q0MsT0FDSTtFYjJHTCxjQUFBOztBaUJzSUEsbUJBelJBLGVBeVJDO0VqQnRJRCxxQkFBQTtFYTlIQSxxQkFBQTs7QUFFQSxtQkl2QkEsZUF5UkMsT0psUUE7RWI0SEQsYUN0TGEsbUJEc0xiO0VBQUEsU2MwbkJjLE9kMW5CZDtFQUFBLGVBQUE7RUFBQSxpQkFBQTtFQUFBLGNBQUE7RWE2SUEsZ0JBQUE7RUFDQSxXQUFBO0VBQ0EsbUJBQUE7RUFDQSxtQ0FBQTtFQUNBLHFCQUFBO0ViakpBLG1CQUFBO0VhbUpBLGtCQUFBO0VibkpBLFNBQUE7O0FhaEhJLG1CSW5DSixlQXlSQyxPSnZQQSxNQUNJO0ViZ0hMLGNBQUE7O0FhM0dJLG1CSXhDSixlQXlSQyxPSmxQQSxPQUNJO0ViMkdMLGNBQUE7O0FnQmpLSixtQkN5TEk7RWpCeEJBLFNBQUE7RUFBQSxVQUFBO0VEdEdBLHFCQUFBO0VrQmdJSSxzQkFBQTtFakIxQkosbUJBQUE7RUFBQSx5QkFBQTtFaUI2Qkksa0JBQUE7RWpCN0JKLFlBQUE7RUFBQSxTQUFBO0VBQUEsZUFBQTtFaUJ3Q0ksYUFBQTtFakJ4Q0oseUNBQUE7RWlCc1JBLGVBQUE7O0FEdmJKLG1CQ3lMSSxZQWtCSTtFakIxQ0osU0FBQTtFQUFBLGdCQUFBOztBaUJnRFEsbUJBeEJSLFlBa0JJLEdBTUs7RWpCaERULG1CQUFBO0VpQmtEWSxlQUFBOztBQTRSWixtQkF0VEEsWUFzVEM7QUFDRCxtQkF2VEEsWUF1VEM7RUFDRyxTQUFTLEVBQVQ7RUFDQSxrQkFBQTtFQUNBLGNBQUE7RUFDQSxRQUFBO0VBQ0EsU0FBQTtFQUNBLDBCQUFBOztBQUVKLG1CQS9UQSxZQStUQztFQUNHLFdBQUE7RUFDQSxpQkFBQTtFQUNBLHlEQUFBOztBQUVKLG1CQXBVQSxZQW9VQztFQUNHLFdBQUE7RUFDQSxpQkFBQTtFQUNBLHlEQUFBOztBQXBESixtQkFuUkEsWUFtUkM7RWpCM1NELFVBQUE7RUFBQSxVQUFBOztBaUIrU0EsbUJBdlJBLFlBdVJDO0VqQi9TRCxVQUFBO0VBQUEsU0FBQTs7QWlCNkRBLG1CQUFDO0VBQ0csaUJBQUE7O0FBREosbUJBQUMsT0FFRztFQUNJLGNBQUE7O0FEdE1aO0VDaEJJLHFCQUFBO0VBQ0Esa0JBQUE7O0FqQndCQSxtQkFBQztBQUNELG1CQUFDO0VBQ0csU0FBUyxFQUFUO0VBQ0EsY0FBQTs7QUFFSixtQkFBQztFQUNHLFdBQUE7O0FnQmZSLG1CQ2JJO0VBRUksZUFBQTtFakJpSkoscUJBQUE7RWE5SEEscUJBQUE7O0FBRUEsbUJJdkJBLGVKdUJDO0ViNEhELGFDdExhLG1CRHNMYjtFQUFBLFNjeW1CZ0IsT2R6bUJoQjtFQUFBLGVBQUE7RUFBQSxpQkFBQTtFQUFBLGNBQUE7RWE2SUEsZ0JBQUE7RUFDQSxXQUFBO0VBQ0EsbUJBQUE7RUFDQSxtQ0FBQTtFQUNBLHFCQUFBO0ViakpBLG1CQUFBO0VhbUpBLGtCQUFBO0VibkpBLFNBQUE7O0FhaEhJLG1CSW5DSixlSmtDQyxNQUNJO0ViZ0hMLGNBQUE7O0FhM0dJLG1CSXhDSixlSnVDQyxPQUNJO0ViMkdMLGNBQUE7O0FpQnNJQSxtQkF6UkEsZUF5UkM7RWpCdElELHFCQUFBO0VhOUhBLHFCQUFBOztBQUVBLG1CSXZCQSxlQXlSQyxPSmxRQTtFYjRIRCxhQ3RMYSxtQkRzTGI7RUFBQSxTYzBuQmMsT2QxbkJkO0VBQUEsZUFBQTtFQUFBLGlCQUFBO0VBQUEsY0FBQTtFYTZJQSxnQkFBQTtFQUNBLFdBQUE7RUFDQSxtQkFBQTtFQUNBLG1DQUFBO0VBQ0EscUJBQUE7RWJqSkEsbUJBQUE7RWFtSkEsa0JBQUE7RWJuSkEsU0FBQTs7QWFoSEksbUJJbkNKLGVBeVJDLE9KdlBBLE1BQ0k7RWJnSEwsY0FBQTs7QWEzR0ksbUJJeENKLGVBeVJDLE9KbFBBLE9BQ0k7RWIyR0wsY0FBQTs7QWdCdElKLG1CQzhKSTtFakJ4QkEsU0FBQTtFQUFBLFVBQUE7RUR0R0EscUJBQUE7RWtCZ0lJLHNCQUFBO0VqQjFCSixtQkFBQTtFQUFBLHlCQUFBO0VpQjZCSSxrQkFBQTtFakI3QkosWUFBQTtFQUFBLFNBQUE7RUFBQSxlQUFBO0VpQndDSSxhQUFBO0VqQnhDSix5Q0FBQTtFaUJzUkEsZUFBQTs7QUQ1WkosbUJDOEpJLFlBa0JJO0VqQjFDSixTQUFBO0VBQUEsZ0JBQUE7O0FpQmdEUSxtQkF4QlIsWUFrQkksR0FNSztFakJoRFQsbUJBQUE7RWlCa0RZLGVBQUE7O0FBNFJaLG1CQXRUQSxZQXNUQztBQUNELG1CQXZUQSxZQXVUQztFQUNHLFNBQVMsRUFBVDtFQUNBLGtCQUFBO0VBQ0EsY0FBQTtFQUNBLFFBQUE7RUFDQSxTQUFBO0VBQ0EsMEJBQUE7O0FBRUosbUJBL1RBLFlBK1RDO0VBQ0csV0FBQTtFQUNBLGlCQUFBO0VBQ0EseURBQUE7O0FBRUosbUJBcFVBLFlBb1VDO0VBQ0csV0FBQTtFQUNBLGlCQUFBO0VBQ0EseURBQUE7O0FBcERKLG1CQW5SQSxZQW1SQztFakIzU0QsVUFBQTtFQUFBLFVBQUE7O0FpQitTQSxtQkF2UkEsWUF1UkM7RWpCL1NELFVBQUE7RUFBQSxTQUFBOztBaUI2REEsbUJBQUM7RUFDRyxpQkFBQTs7QUFESixtQkFBQyxPQUVHO0VBQ0ksY0FBQTs7QURlWjtFQ3JPSSxxQkFBQTtFQUNBLGtCQUFBOztBakJ3QkEsbUJBQUM7QUFDRCxtQkFBQztFQUNHLFNBQVMsRUFBVDtFQUNBLGNBQUE7O0FBRUosbUJBQUM7RUFDRyxXQUFBOztBZ0JzTVIsbUJDbE9JO0VBRUksZUFBQTtFakJpSkoscUJBQUE7RWF2S0EscUJBQUE7O0FBR0EsbUJJaUJBLGVKakJDO0Vib0tELGFDdExhLG1CRHNMYjtFQUFBLFNjOG5CVSxPZDluQlY7RUFBQSxlQUFBO0VBQUEsY0FBQTtFQUFBLGNBQUE7RWE2SUEsZ0JBQUE7RUFDQSxXQUFBO0VBQ0EsbUJBQUE7RUFDQSxtQ0FBQTtFQUNBLHFCQUFBO0ViakpBLG1CQUFBO0VhbUpBLGtCQUFBO0VibkpBLFNBQUE7O0FheEpJLG1CSUtKLGVKTkMsTUFDSTtFYndKTCxjQUFBOztBYW5KSSxtQklBSixlSkRDLE9BQ0k7RWJtSkwsY0FBQTs7QWlCc0lBLG1CQXpSQSxlQXlSQztFakJ0SUQscUJBQUE7RWF2S0EscUJBQUE7O0FBR0EsbUJJaUJBLGVBeVJDLE9KMVNBO0Vib0tELGFDdExhLG1CRHNMYjtFQUFBLFNjaW5CWSxPZGpuQlo7RUFBQSxlQUFBO0VBQUEsY0FBQTtFQUFBLGNBQUE7RWE2SUEsZ0JBQUE7RUFDQSxXQUFBO0VBQ0EsbUJBQUE7RUFDQSxtQ0FBQTtFQUNBLHFCQUFBO0ViakpBLG1CQUFBO0VhbUpBLGtCQUFBO0VibkpBLFNBQUE7O0FheEpJLG1CSUtKLGVBeVJDLE9KL1JBLE1BQ0k7RWJ3SkwsY0FBQTs7QWFuSkksbUJJQUosZUF5UkMsT0oxUkEsT0FDSTtFYm1KTCxjQUFBOztBZ0IrRUosbUJDdkRJO0VqQnhCQSxTQUFBO0VBQUEsVUFBQTtFRHRHQSxxQkFBQTtFa0JnSUksc0JBQUE7RWpCMUJKLG1CQUFBO0VBQUEseUJBQUE7RWlCNkJJLGtCQUFBO0VqQjdCSixZQUFBO0VBQUEsU0FBQTtFQUFBLGVBQUE7RWlCd0NJLGFBQUE7RWpCeENKLHlDQUFBO0VpQnNSQSxlQUFBOztBRHZNSixtQkN2REksWUFrQkk7RWpCMUNKLFNBQUE7RUFBQSxnQkFBQTs7QWlCZ0RRLG1CQXhCUixZQWtCSSxHQU1LO0VqQmhEVCxtQkFBQTtFaUJrRFksZUFBQTs7QUE0UlosbUJBdFRBLFlBc1RDO0FBQ0QsbUJBdlRBLFlBdVRDO0VBQ0csU0FBUyxFQUFUO0VBQ0Esa0JBQUE7RUFDQSxjQUFBO0VBQ0EsUUFBQTtFQUNBLFNBQUE7RUFDQSwwQkFBQTs7QUFFSixtQkEvVEEsWUErVEM7RUFDRyxXQUFBO0VBQ0EsaUJBQUE7RUFDQSx5REFBQTs7QUFFSixtQkFwVUEsWUFvVUM7RUFDRyxXQUFBO0VBQ0EsaUJBQUE7RUFDQSx5REFBQTs7QUFwREosbUJBblJBLFlBbVJDO0VqQjNTRCxVQUFBO0VBQUEsVUFBQTs7QWlCK1NBLG1CQXZSQSxZQXVSQztFakIvU0QsVUFBQTtFQUFBLFNBQUE7O0FpQjZEQSxtQkFBQztFQUNHLGlCQUFBOztBQURKLG1CQUFDLE9BRUc7RUFDSSxjQUFBOztBRGlEWjtFQ3ZRSSxxQkFBQTtFQUNBLGtCQUFBOztBakJ3QkEsbUJBQUM7QUFDRCxtQkFBQztFQUNHLFNBQVMsRUFBVDtFQUNBLGNBQUE7O0FBRUosbUJBQUM7RUFDRyxXQUFBOztBZ0J3T1IsbUJDcFFJO0VBRUksZUFBQTtFakJpSkoscUJBQUE7RWE5SEEscUJBQUE7O0FBRUEsbUJJdkJBLGVKdUJDO0ViNEhELGFDdExhLG1CRHNMYjtFQUFBLFNjeW1CZ0IsT2R6bUJoQjtFQUFBLGVBQUE7RUFBQSxjQUFBO0VBQUEsY0FBQTtFYTZJQSxnQkFBQTtFQUNBLFdBQUE7RUFDQSxtQkFBQTtFQUNBLG1DQUFBO0VBQ0EscUJBQUE7RWJqSkEsbUJBQUE7RWFtSkEsa0JBQUE7RWJuSkEsU0FBQTs7QWFoSEksbUJJbkNKLGVKa0NDLE1BQ0k7RWJnSEwsY0FBQTs7QWEzR0ksbUJJeENKLGVKdUNDLE9BQ0k7RWIyR0wsY0FBQTs7QWlCc0lBLG1CQXpSQSxlQXlSQztFakJ0SUQscUJBQUE7RWE5SEEscUJBQUE7O0FBRUEsbUJJdkJBLGVBeVJDLE9KbFFBO0ViNEhELGFDdExhLG1CRHNMYjtFQUFBLFNjMG5CYyxPZDFuQmQ7RUFBQSxlQUFBO0VBQUEsY0FBQTtFQUFBLGNBQUE7RWE2SUEsZ0JBQUE7RUFDQSxXQUFBO0VBQ0EsbUJBQUE7RUFDQSxtQ0FBQTtFQUNBLHFCQUFBO0ViakpBLG1CQUFBO0VhbUpBLGtCQUFBO0VibkpBLFNBQUE7O0FhaEhJLG1CSW5DSixlQXlSQyxPSnZQQSxNQUNJO0ViZ0hMLGNBQUE7O0FhM0dJLG1CSXhDSixlQXlSQyxPSmxQQSxPQUNJO0ViMkdMLGNBQUE7O0FnQmlISixtQkN6Rkk7RWpCeEJBLFNBQUE7RUFBQSxVQUFBO0VEdEdBLHFCQUFBO0VrQmdJSSxzQkFBQTtFakIxQkosbUJBQUE7RUFBQSx5QkFBQTtFaUI2Qkksa0JBQUE7RWpCN0JKLFlBQUE7RUFBQSxTQUFBO0VBQUEsZUFBQTtFaUJ3Q0ksYUFBQTs7QUR5RVIsbUJDekZJLFlBa0JJO0VqQjFDSixTQUFBO0VBQUEsYUFBQTtFQUFBLDZCQUFBOztBaUJ3V0EsbUJBaFZBLFlBa0JJLEdBOFRIO0VBQ0csWUFBQTs7QUF6VEksbUJBeEJSLFlBa0JJLEdBTUs7RWpCaERULG1CQUFBO0VpQmtEWSxlQUFBOztBQVdaLG1CQUFDO0VBQ0csaUJBQUE7O0FBREosbUJBQUMsT0FFRztFQUNJLGNBQUE7O0FEa0haO0VDMU9JLHFCQUFBO0VBQ0Esa0JBQUE7O0FqQnRFQSxtQkFBQztBQUNELG1CQUFDO0VBQ0csU0FBUyxFQUFUO0VBQ0EsY0FBQTs7QUFFSixtQkFBQztFQUNHLFdBQUE7O0FnQnlTUixtQkMwQ0k7RUFDSSxXQUFBO0VBQ0EsU0FBQTs7QUQ1Q1IsbUJDOENJO0VBQ0ksWUFBQTtFQUNBLFNBQUE7O0FEaERSLG1CQzZESSxPQUFNO0VBQ0YsMEJBQUE7RUFDQSw2QkFBQTs7QUQvRFIsbUJDaUVJLE9BQU87RUFDSCxjQUFBO0VBQ0EseUJBQUE7RUFDQSw0QkFBQTs7QURwRVIsbUJDOU5JO0VqQjRDQSxnQkFBQTtFQUFBLHFCQUFBO0VhOUhBLHFCQUFBOztBR2dUSixtQkM5TkksZUpvSEE7RWI1TkEsa0JBQUE7RUFDQSxVQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxVQUFBO0VBQ0EsZ0JBQUE7RUFDQSxNQUFNLGdCQUFOO0VBQ0EsU0FBQTs7QWFpQkEsbUJJZ0ZBLGVKaEZDO0ViNEhELGFDdExhLG1CRHNMYjtFQUFBLFNjeW1CZ0IsT2R6bUJoQjtFQUFBLGVBQUE7RUFBQSxpQkFBQTtFQUFBLGNBQUE7RWE2SUEsZ0JBQUE7RUFDQSxXQUFBO0VBQ0EsbUJBQUE7RUFDQSxtQ0FBQTtFQUNBLHFCQUFBO0ViakpBLG1CQUFBO0VhbUpBLGtCQUFBO0VibkpBLFNBQUE7O0FhaEhJLG1CSW9FSixlSnJFQyxNQUNJO0ViZ0hMLGNBQUE7O0FhM0dJLG1CSStESixlSmhFQyxPQUNJO0ViMkdMLGNBQUE7O0FpQm1MQSxtQkEvTkEsZUErTkM7RWpCbkxELHFCQUFBO0VhOUhBLHFCQUFBOztBSWlUQSxtQkEvTkEsZUErTkMsT0ozR0Q7RWI1TkEsa0JBQUE7RUFDQSxVQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxVQUFBO0VBQ0EsZ0JBQUE7RUFDQSxNQUFNLGdCQUFOO0VBQ0EsU0FBQTs7QWFpQkEsbUJJZ0ZBLGVBK05DLE9KL1NBO0ViNEhELGFDdExhLG1CRHNMYjtFQUFBLFNjMG5CYyxPZDFuQmQ7RUFBQSxlQUFBO0VBQUEsaUJBQUE7RUFBQSxjQUFBO0VhNklBLGdCQUFBO0VBQ0EsV0FBQTtFQUNBLG1CQUFBO0VBQ0EsbUNBQUE7RUFDQSxxQkFBQTtFYmpKQSxtQkFBQTtFYW1KQSxrQkFBQTtFYm5KQSxTQUFBOztBYWhISSxtQklvRUosZUErTkMsT0pwU0EsTUFDSTtFYmdITCxjQUFBOztBYTNHSSxtQkkrREosZUErTkMsT0ovUkEsT0FDSTtFYjJHTCxjQUFBOztBZ0JrTEosbUJDMUpJO0VqQnhCQSxTQUFBO0VBQUEsVUFBQTtFRHRHQSxxQkFBQTtFa0JnSUksc0JBQUE7RWpCMUJKLG1CQUFBO0VBQUEseUJBQUE7RWlCNkJJLGtCQUFBO0VqQjdCSixZQUFBO0VBQUEsU0FBQTtFQUFBLGVBQUE7RWlCd0NJLGFBQUE7RWpCeENKLHlDQUFBO0VpQnNSQSxlQUFBOztBRHBHSixtQkMxSkksWUFrQkk7RWpCMUNKLFNBQUE7RUFBQSxnQkFBQTs7QWlCZ0RRLG1CQXhCUixZQWtCSSxHQU1LO0VqQmhEVCxtQkFBQTtFaUJrRFksZUFBQTs7QUE0UlosbUJBdFRBLFlBc1RDO0FBQ0QsbUJBdlRBLFlBdVRDO0VBQ0csU0FBUyxFQUFUO0VBQ0Esa0JBQUE7RUFDQSxjQUFBO0VBQ0EsUUFBQTtFQUNBLFNBQUE7RUFDQSwwQkFBQTs7QUFFSixtQkEvVEEsWUErVEM7RUFDRyxXQUFBO0VBQ0EsaUJBQUE7RUFDQSx5REFBQTs7QUFFSixtQkFwVUEsWUFvVUM7RUFDRyxXQUFBO0VBQ0EsaUJBQUE7RUFDQSx5REFBQTs7QUEvQkosbUJBeFNBLFlBd1NDO0VqQmhVRCxVQUFBO0VBQUEsV0FBQTs7QWlCb1VBLG1CQTVTQSxZQTRTQztFakJwVUQsVUFBQTtFQUFBLFVBQUE7O0FpQjZEQSxtQkFBQztFQUNHLGlCQUFBOztBQURKLG1CQUFDLE9BRUc7RUFDSSxjQUFBOztBRHdIWixNQUFNO0VDaFBGLHFCQUFBO0VBQ0Esa0JBQUE7O0FqQnRFQSxNZ0JxVEUsbUJoQnJURDtBQUNELE1nQm9URSxtQmhCcFREO0VBQ0csU0FBUyxFQUFUO0VBQ0EsY0FBQTs7QUFFSixNZ0JnVEUsbUJoQmhURDtFQUNHLFdBQUE7O0FnQitTUixNQUFNLG1CQ29DRjtFQUNJLFdBQUE7RUFDQSxTQUFBOztBRHRDUixNQUFNLG1CQ3dDRjtFQUNJLFlBQUE7RUFDQSxTQUFBOztBRDFDUixNQUFNLG1CQ3BPRjtFakI0Q0EsZ0JBQUE7RUFBQSxxQkFBQTtFYTlIQSxxQkFBQTs7QUdzVEosTUFBTSxtQkNwT0YsZUpvSEE7RWI1TkEsa0JBQUE7RUFDQSxVQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxVQUFBO0VBQ0EsZ0JBQUE7RUFDQSxNQUFNLGdCQUFOO0VBQ0EsU0FBQTs7QWFpQkEsTUdvVEUsbUJDcE9GLGVKaEZDO0ViNEhELGFDdExhLG1CRHNMYjtFQUFBLFNjeW1CZ0IsT2R6bUJoQjtFQUFBLGVBQUE7RUFBQSxpQkFBQTtFQUFBLGNBQUE7RWE2SUEsZ0JBQUE7RUFDQSxXQUFBO0VBQ0EsbUJBQUE7RUFDQSxtQ0FBQTtFQUNBLHFCQUFBO0ViakpBLG1CQUFBO0VhbUpBLGtCQUFBO0VibkpBLFNBQUE7O0FhaEhJLE1Hd1NGLG1CQ3BPRixlSnJFQyxNQUNJO0ViZ0hMLGNBQUE7O0FhM0dJLE1HbVNGLG1CQ3BPRixlSmhFQyxPQUNJO0ViMkdMLGNBQUE7O0FpQm1MQSxNREtFLG1CQ3BPRixlQStOQztFakJuTEQscUJBQUE7RWE5SEEscUJBQUE7O0FJaVRBLE1ES0UsbUJDcE9GLGVBK05DLE9KM0dEO0ViNU5BLGtCQUFBO0VBQ0EsVUFBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0EsVUFBQTtFQUNBLGdCQUFBO0VBQ0EsTUFBTSxnQkFBTjtFQUNBLFNBQUE7O0FhaUJBLE1Hb1RFLG1CQ3BPRixlQStOQyxPSi9TQTtFYjRIRCxhQ3RMYSxtQkRzTGI7RUFBQSxTYzBuQmMsT2QxbkJkO0VBQUEsZUFBQTtFQUFBLGlCQUFBO0VBQUEsY0FBQTtFYTZJQSxnQkFBQTtFQUNBLFdBQUE7RUFDQSxtQkFBQTtFQUNBLG1DQUFBO0VBQ0EscUJBQUE7RWJqSkEsbUJBQUE7RWFtSkEsa0JBQUE7RWJuSkEsU0FBQTs7QWFoSEksTUd3U0YsbUJDcE9GLGVBK05DLE9KcFNBLE1BQ0k7RWJnSEwsY0FBQTs7QWEzR0ksTUdtU0YsbUJDcE9GLGVBK05DLE9KL1JBLE9BQ0k7RWIyR0wsY0FBQTs7QWdCd0xKLE1BQU0sbUJDaEtGO0VqQnhCQSxTQUFBO0VBQUEsVUFBQTtFRHRHQSxxQkFBQTtFa0JnSUksc0JBQUE7RWpCMUJKLG1CQUFBO0VBQUEseUJBQUE7RWlCNkJJLGtCQUFBO0VqQjdCSixZQUFBO0VBQUEsU0FBQTtFQUFBLGVBQUE7RWlCd0NJLGFBQUE7RWpCeENKLHlDQUFBO0VpQnNSQSxlQUFBOztBRDlGSixNQUFNLG1CQ2hLRixZQWtCSTtFakIxQ0osU0FBQTtFQUFBLGdCQUFBOztBaUJnRFEsTUR3SU4sbUJDaEtGLFlBa0JJLEdBTUs7RWpCaERULG1CQUFBO0VpQmtEWSxlQUFBOztBQTRSWixNRHRKRSxtQkNoS0YsWUFzVEM7QUFDRCxNRHZKRSxtQkNoS0YsWUF1VEM7RUFDRyxTQUFTLEVBQVQ7RUFDQSxrQkFBQTtFQUNBLGNBQUE7RUFDQSxRQUFBO0VBQ0EsU0FBQTtFQUNBLDBCQUFBOztBQUVKLE1EL0pFLG1CQ2hLRixZQStUQztFQUNHLFdBQUE7RUFDQSxpQkFBQTtFQUNBLHlEQUFBOztBQUVKLE1EcEtFLG1CQ2hLRixZQW9VQztFQUNHLFdBQUE7RUFDQSxpQkFBQTtFQUNBLHlEQUFBOztBQS9CSixNRHhJRSxtQkNoS0YsWUF3U0M7RWpCaFVELFVBQUE7RUFBQSxXQUFBOztBaUJvVUEsTUQ1SUUsbUJDaEtGLFlBNFNDO0VqQnBVRCxVQUFBO0VBQUEsVUFBQTs7QWlCNkRBLE1EMkhFLG1CQzNIRDtFQUNHLGlCQUFBOztBQURKLE1EMkhFLG1CQzNIRCxPQUVHO0VBQ0ksY0FBQTs7QUR5WVo7RUNqZ0JJLHFCQUFBO0VBQ0Esa0JBQUE7O0FqQnRFQSxtQkFBQztBQUNELG1CQUFDO0VBQ0csU0FBUyxFQUFUO0VBQ0EsY0FBQTs7QUFFSixtQkFBQztFQUNHLFdBQUE7O0FnQmdrQlIsbUJDN09JO0VBQ0ksV0FBQTtFQUNBLFNBQUE7O0FEMk9SLG1CQ3pPSTtFQUNJLFlBQUE7RUFDQSxTQUFBOztBRHVPUixtQkMxTkksT0FBTTtFQUNGLDBCQUFBO0VBQ0EsNkJBQUE7O0FEd05SLG1CQ3ROSSxPQUFPO0VBQ0gsY0FBQTtFQUNBLHlCQUFBO0VBQ0EsNEJBQUE7O0FEbU5SLG1CQ3JmSTtFakI0Q0EsZ0JBQUE7RUFBQSxxQkFBQTtFYTlIQSxxQkFBQTs7QUd1a0JKLG1CQ3JmSSxlSm9IQTtFYjVOQSxrQkFBQTtFQUNBLFVBQUE7RUFDQSxXQUFBO0VBQ0EsWUFBQTtFQUNBLFVBQUE7RUFDQSxnQkFBQTtFQUNBLE1BQU0sZ0JBQU47RUFDQSxTQUFBOztBYWlCQSxtQklnRkEsZUpoRkM7RWI0SEQsYUN0TGEsbUJEc0xiO0VBQUEsU2N5bUJnQixPZHptQmhCO0VBQUEsZUFBQTtFQUFBLGlCQUFBO0VBQUEsY0FBQTtFYTZJQSxnQkFBQTtFQUNBLFdBQUE7RUFDQSxtQkFBQTtFQUNBLG1DQUFBO0VBQ0EscUJBQUE7RWJqSkEsbUJBQUE7RWFtSkEsa0JBQUE7RWJuSkEsU0FBQTs7QWFoSEksbUJJb0VKLGVKckVDLE1BQ0k7RWJnSEwsY0FBQTs7QWEzR0ksbUJJK0RKLGVKaEVDLE9BQ0k7RWIyR0wsY0FBQTs7QWlCbUxBLG1CQS9OQSxlQStOQztFakJuTEQscUJBQUE7RWE5SEEscUJBQUE7O0FJaVRBLG1CQS9OQSxlQStOQyxPSjNHRDtFYjVOQSxrQkFBQTtFQUNBLFVBQUE7RUFDQSxXQUFBO0VBQ0EsWUFBQTtFQUNBLFVBQUE7RUFDQSxnQkFBQTtFQUNBLE1BQU0sZ0JBQU47RUFDQSxTQUFBOztBYWlCQSxtQklnRkEsZUErTkMsT0ovU0E7RWI0SEQsYUN0TGEsbUJEc0xiO0VBQUEsU2MwbkJjLE9kMW5CZDtFQUFBLGVBQUE7RUFBQSxpQkFBQTtFQUFBLGNBQUE7RWE2SUEsZ0JBQUE7RUFDQSxXQUFBO0VBQ0EsbUJBQUE7RUFDQSxtQ0FBQTtFQUNBLHFCQUFBO0ViakpBLG1CQUFBO0VhbUpBLGtCQUFBO0VibkpBLFNBQUE7O0FhaEhJLG1CSW9FSixlQStOQyxPSnBTQSxNQUNJO0ViZ0hMLGNBQUE7O0FhM0dJLG1CSStESixlQStOQyxPSi9SQSxPQUNJO0ViMkdMLGNBQUE7O0FnQnljSixtQkNqYkk7RWpCeEJBLFNBQUE7RUFBQSxVQUFBO0VEdEdBLHFCQUFBO0VrQmdJSSxzQkFBQTtFakIxQkosbUJBQUE7RUFBQSx5QkFBQTtFaUI2Qkksa0JBQUE7RWpCN0JKLFlBQUE7RUFBQSxTQUFBO0VBQUEsZUFBQTtFaUJ3Q0ksYUFBQTtFakJ4Q0oseUNBQUE7RWlCc1JBLGVBQUE7O0FEbUxKLG1CQ2piSSxZQWtCSTtFakIxQ0osU0FBQTtFQUFBLGdCQUFBOztBaUJnRFEsbUJBeEJSLFlBa0JJLEdBTUs7RWpCaERULG1CQUFBO0VpQmtEWSxlQUFBOztBQTRSWixtQkF0VEEsWUFzVEM7QUFDRCxtQkF2VEEsWUF1VEM7RUFDRyxTQUFTLEVBQVQ7RUFDQSxrQkFBQTtFQUNBLGNBQUE7RUFDQSxRQUFBO0VBQ0EsU0FBQTtFQUNBLDBCQUFBOztBQUVKLG1CQS9UQSxZQStUQztFQUNHLFdBQUE7RUFDQSxpQkFBQTtFQUNBLHlEQUFBOztBQUVKLG1CQXBVQSxZQW9VQztFQUNHLFdBQUE7RUFDQSxpQkFBQTtFQUNBLHlEQUFBOztBQS9CSixtQkF4U0EsWUF3U0M7RWpCaFVELFVBQUE7RUFBQSxXQUFBOztBaUJvVUEsbUJBNVNBLFlBNFNDO0VqQnBVRCxVQUFBO0VBQUEsVUFBQTs7QWlCNkRBLG1CQUFDO0VBQ0csaUJBQUE7O0FBREosbUJBQUMsT0FFRztFQUNJLGNBQUE7O0FENllaO0VDcmdCSSxxQkFBQTtFQUNBLGtCQUFBOztBRG9nQkosbUJBQ0ksUUFBTztBQURYLG1CQUVJLFFBQU87RWpCNW1CUCxtQkFBQTtFQzZKQSxrQkFBQTtFRHpLQSxpQkFBQTs7QUM0Q0EsbUJBQUM7QUFDRCxtQkFBQztFQUNHLFNBQVMsRUFBVDtFQUNBLGNBQUE7O0FBRUosbUJBQUM7RUFDRyxXQUFBOztBZ0Jva0JSLG1CQ2pQSTtFQUNJLFdBQUE7RUFDQSxTQUFBOztBRCtPUixtQkM3T0k7RUFDSSxZQUFBO0VBQ0EsU0FBQTs7QUQyT1IsbUJDOU5JLE9BQU07RUFDRiwwQkFBQTtFQUNBLDZCQUFBOztBRDROUixtQkMxTkksT0FBTztFQUNILGNBQUE7RUFDQSx5QkFBQTtFQUNBLDRCQUFBOztBRHVOUixtQkN6Zkk7RWpCNENBLGdCQUFBO0VBQUEscUJBQUE7RWE5SEEscUJBQUE7O0FHMmtCSixtQkN6ZkksZUpvSEE7RWI1TkEsa0JBQUE7RUFDQSxVQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxVQUFBO0VBQ0EsZ0JBQUE7RUFDQSxNQUFNLGdCQUFOO0VBQ0EsU0FBQTs7QWFpQkEsbUJJZ0ZBLGVKaEZDO0ViNEhELGFDdExhLG1CRHNMYjtFQUFBLFNjeW1CZ0IsT2R6bUJoQjtFQUFBLGVBQUE7RUFBQSxpQkFBQTtFQUFBLGNBQUE7RWE2SUEsZ0JBQUE7RUFDQSxXQUFBO0VBQ0EsbUJBQUE7RUFDQSxtQ0FBQTtFQUNBLHFCQUFBO0ViakpBLG1CQUFBO0VhbUpBLGtCQUFBO0VibkpBLFNBQUE7O0FhaEhJLG1CSW9FSixlSnJFQyxNQUNJO0ViZ0hMLGNBQUE7O0FhM0dJLG1CSStESixlSmhFQyxPQUNJO0ViMkdMLGNBQUE7O0FpQm1MQSxtQkEvTkEsZUErTkM7RWpCbkxELHFCQUFBO0VhOUhBLHFCQUFBOztBSWlUQSxtQkEvTkEsZUErTkMsT0ozR0Q7RWI1TkEsa0JBQUE7RUFDQSxVQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxVQUFBO0VBQ0EsZ0JBQUE7RUFDQSxNQUFNLGdCQUFOO0VBQ0EsU0FBQTs7QWFpQkEsbUJJZ0ZBLGVBK05DLE9KL1NBO0ViNEhELGFDdExhLG1CRHNMYjtFQUFBLFNjMG5CYyxPZDFuQmQ7RUFBQSxlQUFBO0VBQUEsaUJBQUE7RUFBQSxjQUFBO0VhNklBLGdCQUFBO0VBQ0EsV0FBQTtFQUNBLG1CQUFBO0VBQ0EsbUNBQUE7RUFDQSxxQkFBQTtFYmpKQSxtQkFBQTtFYW1KQSxrQkFBQTtFYm5KQSxTQUFBOztBYWhISSxtQklvRUosZUErTkMsT0pwU0EsTUFDSTtFYmdITCxjQUFBOztBYTNHSSxtQkkrREosZUErTkMsT0ovUkEsT0FDSTtFYjJHTCxjQUFBOztBZ0I2Y0osbUJDcmJJO0VqQnhCQSxTQUFBO0VBQUEsVUFBQTtFRHRHQSxxQkFBQTtFa0JnSUksc0JBQUE7RWpCMUJKLG1CQUFBO0VBQUEseUJBQUE7RWlCNkJJLGtCQUFBO0VqQjdCSixZQUFBO0VBQUEsU0FBQTtFQUFBLGVBQUE7RWlCd0NJLGFBQUE7RWpCeENKLHlDQUFBO0VpQnNSQSxlQUFBOztBRHVMSixtQkNyYkksWUFrQkk7RWpCMUNKLFNBQUE7RUFBQSxnQkFBQTs7QWlCZ0RRLG1CQXhCUixZQWtCSSxHQU1LO0VqQmhEVCxtQkFBQTtFaUJrRFksZUFBQTs7QUE0UlosbUJBdFRBLFlBc1RDO0FBQ0QsbUJBdlRBLFlBdVRDO0VBQ0csU0FBUyxFQUFUO0VBQ0Esa0JBQUE7RUFDQSxjQUFBO0VBQ0EsUUFBQTtFQUNBLFNBQUE7RUFDQSwwQkFBQTs7QUFFSixtQkEvVEEsWUErVEM7RUFDRyxXQUFBO0VBQ0EsaUJBQUE7RUFDQSx5REFBQTs7QUFFSixtQkFwVUEsWUFvVUM7RUFDRyxXQUFBO0VBQ0EsaUJBQUE7RUFDQSx5REFBQTs7QUEvQkosbUJBeFNBLFlBd1NDO0VqQmhVRCxVQUFBO0VBQUEsV0FBQTs7QWlCb1VBLG1CQTVTQSxZQTRTQztFakJwVUQsVUFBQTtFQUFBLFVBQUE7O0FpQjZEQSxtQkFBQztFQUNHLGlCQUFBOztBQURKLG1CQUFDLE9BRUc7RUFDSSxjQUFBOztBRHFaWjtFQzdnQkkscUJBQUE7RUFDQSxrQkFBQTs7QUQ0Z0JKLG9CQUNJLFFBQU87QUFEWCxvQkFFSSxRQUFPO0VqQnBuQlAsbUJBQUE7RUM2SkEsZ0JBQUE7RUR6S0EsaUJBQUE7O0FDNENBLG9CQUFDO0FBQ0Qsb0JBQUM7RUFDRyxTQUFTLEVBQVQ7RUFDQSxjQUFBOztBQUVKLG9CQUFDO0VBQ0csV0FBQTs7QWdCNGtCUixvQkN6UEk7RUFDSSxXQUFBO0VBQ0EsU0FBQTs7QUR1UFIsb0JDclBJO0VBQ0ksWUFBQTtFQUNBLFNBQUE7O0FEbVBSLG9CQ3RPSSxPQUFNO0VBQ0YsMEJBQUE7RUFDQSw2QkFBQTs7QURvT1Isb0JDbE9JLE9BQU87RUFDSCxjQUFBO0VBQ0EseUJBQUE7RUFDQSw0QkFBQTs7QUQrTlIsb0JDamdCSTtFakI0Q0EsZ0JBQUE7RUFBQSxxQkFBQTtFYTlIQSxxQkFBQTs7QUdtbEJKLG9CQ2pnQkksZUpvSEE7RWI1TkEsa0JBQUE7RUFDQSxVQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxVQUFBO0VBQ0EsZ0JBQUE7RUFDQSxNQUFNLGdCQUFOO0VBQ0EsU0FBQTs7QWFpQkEsb0JJZ0ZBLGVKaEZDO0ViNEhELGFDdExhLG1CRHNMYjtFQUFBLFNjeW1CZ0IsT2R6bUJoQjtFQUFBLGVBQUE7RUFBQSxpQkFBQTtFQUFBLGNBQUE7RWE2SUEsZ0JBQUE7RUFDQSxXQUFBO0VBQ0EsbUJBQUE7RUFDQSxtQ0FBQTtFQUNBLHFCQUFBO0ViakpBLG1CQUFBO0VhbUpBLGtCQUFBO0VibkpBLFNBQUE7O0FhaEhJLG9CSW9FSixlSnJFQyxNQUNJO0ViZ0hMLGNBQUE7O0FhM0dJLG9CSStESixlSmhFQyxPQUNJO0ViMkdMLGNBQUE7O0FpQm1MQSxvQkEvTkEsZUErTkM7RWpCbkxELHFCQUFBO0VhOUhBLHFCQUFBOztBSWlUQSxvQkEvTkEsZUErTkMsT0ozR0Q7RWI1TkEsa0JBQUE7RUFDQSxVQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxVQUFBO0VBQ0EsZ0JBQUE7RUFDQSxNQUFNLGdCQUFOO0VBQ0EsU0FBQTs7QWFpQkEsb0JJZ0ZBLGVBK05DLE9KL1NBO0ViNEhELGFDdExhLG1CRHNMYjtFQUFBLFNjMG5CYyxPZDFuQmQ7RUFBQSxlQUFBO0VBQUEsaUJBQUE7RUFBQSxjQUFBO0VhNklBLGdCQUFBO0VBQ0EsV0FBQTtFQUNBLG1CQUFBO0VBQ0EsbUNBQUE7RUFDQSxxQkFBQTtFYmpKQSxtQkFBQTtFYW1KQSxrQkFBQTtFYm5KQSxTQUFBOztBYWhISSxvQklvRUosZUErTkMsT0pwU0EsTUFDSTtFYmdITCxjQUFBOztBYTNHSSxvQkkrREosZUErTkMsT0ovUkEsT0FDSTtFYjJHTCxjQUFBOztBZ0JxZEosb0JDN2JJO0VqQnhCQSxTQUFBO0VBQUEsVUFBQTtFRHRHQSxxQkFBQTtFa0JnSUksc0JBQUE7RWpCMUJKLG1CQUFBO0VBQUEseUJBQUE7RWlCNkJJLGtCQUFBO0VqQjdCSixZQUFBO0VBQUEsU0FBQTtFQUFBLGVBQUE7RWlCd0NJLGFBQUE7RWpCeENKLHlDQUFBO0VpQnNSQSxlQUFBOztBRCtMSixvQkM3YkksWUFrQkk7RWpCMUNKLFNBQUE7RUFBQSxnQkFBQTs7QWlCZ0RRLG9CQXhCUixZQWtCSSxHQU1LO0VqQmhEVCxtQkFBQTtFaUJrRFksZUFBQTs7QUE0Ulosb0JBdFRBLFlBc1RDO0FBQ0Qsb0JBdlRBLFlBdVRDO0VBQ0csU0FBUyxFQUFUO0VBQ0Esa0JBQUE7RUFDQSxjQUFBO0VBQ0EsUUFBQTtFQUNBLFNBQUE7RUFDQSwwQkFBQTs7QUFFSixvQkEvVEEsWUErVEM7RUFDRyxXQUFBO0VBQ0EsaUJBQUE7RUFDQSx5REFBQTs7QUFFSixvQkFwVUEsWUFvVUM7RUFDRyxXQUFBO0VBQ0EsaUJBQUE7RUFDQSx5REFBQTs7QUEvQkosb0JBeFNBLFlBd1NDO0VqQmhVRCxVQUFBO0VBQUEsV0FBQTs7QWlCb1VBLG9CQTVTQSxZQTRTQztFakJwVUQsVUFBQTtFQUFBLFVBQUE7O0FpQjZEQSxvQkFBQztFQUNHLGlCQUFBOztBQURKLG9CQUFDLE9BRUc7RUFDSSxjQUFBOztBRHViWjtFQy9pQkkscUJBQUE7RUFDQSxrQkFBQTs7QWpCdEVBLG9CQUFDO0FBQ0Qsb0JBQUM7RUFDRyxTQUFTLEVBQVQ7RUFDQSxjQUFBOztBQUVKLG9CQUFDO0VBQ0csV0FBQTs7QWdCOG1CUixvQkM1U0k7RUFDSSxZQUFBO0VBQ0EsU0FBQTs7QUQwU1Isb0JDeFNJO0VBQ0ksV0FBQTtFQUNBLFNBQUE7O0FEc1NSLG9CQ3BQSSxPQUFNO0VBQ0YseUJBQUE7RUFDQSw0QkFBQTs7QURrUFIsb0JDaFBJLE9BQU87RUFDSCxlQUFBO0VBQ0EsMEJBQUE7RUFDQSw2QkFBQTs7QUQ2T1Isb0JDbmlCSTtFakI0Q0EsZ0JBQUE7RUFBQSxxQkFBQTtFYXZLQSxxQkFBQTs7QUc4cEJKLG9CQ25pQkksZUpvSEE7RWI1TkEsa0JBQUE7RUFDQSxVQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxVQUFBO0VBQ0EsZ0JBQUE7RUFDQSxNQUFNLGdCQUFOO0VBQ0EsU0FBQTs7QWF2QkEsb0JJd0hBLGVKeEhDO0Vib0tELGFDdExhLG1CRHNMYjtFQUFBLFNjOG5CVSxPZDluQlY7RUFBQSxlQUFBO0VBQUEsaUJBQUE7RUFBQSxjQUFBO0VhNklBLGdCQUFBO0VBQ0EsV0FBQTtFQUNBLG1CQUFBO0VBQ0EsbUNBQUE7RUFDQSxxQkFBQTtFYmpKQSxtQkFBQTtFYW1KQSxrQkFBQTtFYm5KQSxTQUFBOztBYXhKSSxvQkk0R0osZUo3R0MsTUFDSTtFYndKTCxjQUFBOztBYW5KSSxvQkl1R0osZUp4R0MsT0FDSTtFYm1KTCxjQUFBOztBaUJtTEEsb0JBL05BLGVBK05DO0VqQm5MRCxxQkFBQTtFYXZLQSxxQkFBQTs7QUkwVkEsb0JBL05BLGVBK05DLE9KM0dEO0ViNU5BLGtCQUFBO0VBQ0EsVUFBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0EsVUFBQTtFQUNBLGdCQUFBO0VBQ0EsTUFBTSxnQkFBTjtFQUNBLFNBQUE7O0FhdkJBLG9CSXdIQSxlQStOQyxPSnZWQTtFYm9LRCxhQ3RMYSxtQkRzTGI7RUFBQSxTY2luQlksT2RqbkJaO0VBQUEsZUFBQTtFQUFBLGlCQUFBO0VBQUEsY0FBQTtFYTZJQSxnQkFBQTtFQUNBLFdBQUE7RUFDQSxtQkFBQTtFQUNBLG1DQUFBO0VBQ0EscUJBQUE7RWJqSkEsbUJBQUE7RWFtSkEsa0JBQUE7RWJuSkEsU0FBQTs7QWF4Skksb0JJNEdKLGVBK05DLE9KNVVBLE1BQ0k7RWJ3SkwsY0FBQTs7QWFuSkksb0JJdUdKLGVBK05DLE9KdlVBLE9BQ0k7RWJtSkwsY0FBQTs7QWdCdWZKLG9CQy9kSTtFakJ4QkEsU0FBQTtFQUFBLFVBQUE7RUR0R0EscUJBQUE7RWtCZ0lJLHNCQUFBO0VqQjFCSixtQkFBQTtFQUFBLHlCQUFBO0VpQjZCSSxrQkFBQTtFakI3QkosWUFBQTtFQUFBLFNBQUE7RUFBQSxlQUFBO0VpQndDSSxhQUFBO0VqQnhDSix5Q0FBQTtFaUJzUkEsZUFBQTs7QURpT0osb0JDL2RJLFlBa0JJO0VqQjFDSixTQUFBO0VBQUEsZ0JBQUE7O0FpQmdEUSxvQkF4QlIsWUFrQkksR0FNSztFakJoRFQsbUJBQUE7RWlCa0RZLGVBQUE7O0FBNFJaLG9CQXRUQSxZQXNUQztBQUNELG9CQXZUQSxZQXVUQztFQUNHLFNBQVMsRUFBVDtFQUNBLGtCQUFBO0VBQ0EsY0FBQTtFQUNBLFFBQUE7RUFDQSxTQUFBO0VBQ0EsMEJBQUE7O0FBRUosb0JBL1RBLFlBK1RDO0VBQ0csV0FBQTtFQUNBLGlCQUFBO0VBQ0EseURBQUE7O0FBRUosb0JBcFVBLFlBb1VDO0VBQ0csV0FBQTtFQUNBLGlCQUFBO0VBQ0EseURBQUE7O0FBL0JKLG9CQXhTQSxZQXdTQztFakJoVUQsVUFBQTtFQUFBLFdBQUE7O0FpQm9VQSxvQkE1U0EsWUE0U0M7RWpCcFVELFVBQUE7RUFBQSxVQUFBOztBaUI2REEsb0JBQUM7RUFDRyxpQkFBQTs7QUFESixvQkFBQyxPQUVHO0VBQ0ksY0FBQTs7QUQ2ZFo7RUNybEJJLHFCQUFBO0VBQ0Esa0JBQUE7O0FqQnRFQSxvQkFBQztBQUNELG9CQUFDO0VBQ0csU0FBUyxFQUFUO0VBQ0EsY0FBQTs7QUFFSixvQkFBQztFQUNHLFdBQUE7O0FnQm9wQlIsb0JDalVJO0VBQ0ksV0FBQTtFQUNBLFNBQUE7O0FEK1RSLG9CQzdUSTtFQUNJLFlBQUE7RUFDQSxTQUFBOztBRDJUUixvQkM5U0ksT0FBTTtFQUNGLDBCQUFBO0VBQ0EsNkJBQUE7O0FENFNSLG9CQzFTSSxPQUFPO0VBQ0gsY0FBQTtFQUNBLHlCQUFBO0VBQ0EsNEJBQUE7O0FEdVNSLG9CQ3prQkk7RWpCNENBLGdCQUFBO0VBQUEscUJBQUE7RWE5SEEscUJBQUE7O0FHMnBCSixvQkN6a0JJLGVKb0hBO0ViNU5BLGtCQUFBO0VBQ0EsVUFBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0EsVUFBQTtFQUNBLGdCQUFBO0VBQ0EsTUFBTSxnQkFBTjtFQUNBLFNBQUE7O0FhaUJBLG9CSWdGQSxlSmhGQztFYjRIRCxhQ3RMYSxtQkRzTGI7RUFBQSxTY3ltQmdCLE9kem1CaEI7RUFBQSxlQUFBO0VBQUEsaUJBQUE7RUFBQSxjQUFBO0VhNklBLGdCQUFBO0VBQ0EsV0FBQTtFQUNBLG1CQUFBO0VBQ0EsbUNBQUE7RUFDQSxxQkFBQTtFYmpKQSxtQkFBQTtFYW1KQSxrQkFBQTtFYm5KQSxTQUFBOztBYWhISSxvQklvRUosZUpyRUMsTUFDSTtFYmdITCxjQUFBOztBYTNHSSxvQkkrREosZUpoRUMsT0FDSTtFYjJHTCxjQUFBOztBaUJtTEEsb0JBL05BLGVBK05DO0VqQm5MRCxxQkFBQTtFYTlIQSxxQkFBQTs7QUlpVEEsb0JBL05BLGVBK05DLE9KM0dEO0ViNU5BLGtCQUFBO0VBQ0EsVUFBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0EsVUFBQTtFQUNBLGdCQUFBO0VBQ0EsTUFBTSxnQkFBTjtFQUNBLFNBQUE7O0FhaUJBLG9CSWdGQSxlQStOQyxPSi9TQTtFYjRIRCxhQ3RMYSxtQkRzTGI7RUFBQSxTYzBuQmMsT2QxbkJkO0VBQUEsZUFBQTtFQUFBLGlCQUFBO0VBQUEsY0FBQTtFYTZJQSxnQkFBQTtFQUNBLFdBQUE7RUFDQSxtQkFBQTtFQUNBLG1DQUFBO0VBQ0EscUJBQUE7RWJqSkEsbUJBQUE7RWFtSkEsa0JBQUE7RWJuSkEsU0FBQTs7QWFoSEksb0JJb0VKLGVBK05DLE9KcFNBLE1BQ0k7RWJnSEwsY0FBQTs7QWEzR0ksb0JJK0RKLGVBK05DLE9KL1JBLE9BQ0k7RWIyR0wsY0FBQTs7QWdCNmhCSixvQkNyZ0JJO0VqQnhCQSxTQUFBO0VBQUEsVUFBQTtFRHRHQSxxQkFBQTtFa0JnSUksc0JBQUE7RWpCMUJKLG1CQUFBO0VBQUEseUJBQUE7RWlCNkJJLGtCQUFBO0VqQjdCSixZQUFBO0VBQUEsU0FBQTtFQUFBLGVBQUE7RWlCd0NJLGFBQUE7O0FEcWZSLG9CQ3JnQkksWUFrQkk7RWpCMUNKLFNBQUE7RUFBQSxhQUFBO0VBQUEsNkJBQUE7O0FpQndXQSxvQkFoVkEsWUFrQkksR0E4VEg7RUFDRyxZQUFBOztBQXpUSSxvQkF4QlIsWUFrQkksR0FNSztFakJoRFQsbUJBQUE7RWlCa0RZLGVBQUE7O0FBV1osb0JBQUM7RUFDRyxpQkFBQTs7QUFESixvQkFBQyxPQUVHO0VBQ0ksY0FBQTs7QUN4RFosZUFDSTtFbEJUQSxVQUFBO0VBQUEsZ0JBQUE7RUFBQSxTQUFBO0VJaVFBLHVCQUFBOztBY3pQSixlQUNJLHlCZDJQQTtFQUNJLHNCQUFBOztBYzdQUixlQUNJLHlCZGdRQTtFSnpRQSxnQkFBQTtFQUFBLFVBQUE7RUR6S0EsZUFBQTtFQ3lLQSxnQkFBQTtFSW9SSSxzQkFBQTtFQUNBLFdBQUE7O0FBRUEsZWM5UUoseUJkZ1FBLFVBY007RUFDRSxjQUFBO0VBQ0Esa0JBQUE7RUFDQSxTQUFBO0VBQ0EsZ0JBQUE7RUFDQSxXQUFBOztBQXlpQlIsZWM1ekJBLHlCZDR6QkM7RUEwQkQsU0FBUyxzQkFBVDtFQUNBLGNBQUE7RUx6Z0NBLGlCQUFBO0VDeUtBLGNBQUE7RUFBQSxnQkFBQTtFSTYyQkEsc0JBQUE7RUFDQSxvQkFBQTs7QWN0MkJKLGVBQ0kseUJBR0k7RWxCWkosZ0JBQUE7O0FrQlFKLGVBQ0kseUJBR0ksU2RzakJKO0VBQ0kscUJBQUE7RUpua0JKLGVBQUE7O0FJeVdBLGVjaFdBLHlCQUdJLFNkNlZIO0VBQ0csZ0JBQUE7O0FjbFdSLGVBQ0kseUJBR0ksU2R1V0o7RUpuWEEsZ0JBQUE7O0FJNFhJLGVjblhKLHlCQUdJLFNkdVdKLFNBU007RUFDRSxhQUFBOztBY3JYWixlQUNJLHlCQUdJLFNkcVhKLFFBQ0k7RUFDSSxtQkFBQTs7QUpoZ0JSLGVrQnNJQSx5QkFHSSxTZDJYSixRQUFPLE1KcGdCTjtBQUNELGVrQnFJQSx5QkFHSSxTZDJYSixRQUFPLE1KbmdCTjtFQUNHLFNBQVMsRUFBVDtFQUNBLGNBQUE7O0FBRUosZWtCaUlBLHlCQUdJLFNkMlhKLFFBQU8sTUovZk47RUFDRyxXQUFBOztBa0IrSFIsZUFDSSx5QkFHSSxTZDJYSixRQUFPLE1BRUg7RUFDSSxzQkFBQTtFQUNBLFdBQUE7O0FBRUosZWNwWUoseUJBR0ksU2QyWEosUUFBTyxNQU1GLFFBQVM7RUFDTixxQkFBQTs7QUFFSixlY3ZZSix5QkFHSSxTZDJYSixRQUFPLE1BU0YsUUFBUztFQUNOLHVCQUFBOztBQUVKLGVjMVlKLHlCQUdJLFNkMlhKLFFBQU8sTUFZRixRQUFTO0VBQ04scUJBQUE7O0FBRUosZWM3WUoseUJBR0ksU2QyWEosUUFBTyxNQWVGLFFBQVM7RUFDTixxQkFBQTs7QWMvWVosZUFDSSx5QkFHSSxTZCtZSjtFQUNJLG9CQUFBO0VBQ0EsaUJBQUE7RUFDQSxVQUFBO0VBQ0EsV0FBQTs7QWN2WlIsZUFDSSx5QkFHSSxTZCtZSixPQUtJO0FjeFpSLGVBQ0kseUJBR0ksU2QrWUosT0FNSTtBY3paUixlQUNJLHlCQUdJLFNkK1lKLE9BT0k7RUovVEosZ0JBQUE7RUFDQSxpQkFBQTtFQUNTLFFBQUE7RUkrVEQsZ0JBQUE7RUFDQSxxQkFBQTtFQUNBLFNBQUE7RUFDQSxXQUFBO0VBQ0EsZ0JBQUE7O0FjaGFaLGVBQ0kseUJBR0ksU2QrWUosT0FlSTtBY2xhUixlQUNJLHlCQUdJLFNkK1lKLE9BZ0JJO0VKeFVKLGdCQUFBO0VBQ0EsaUJBQUE7RUFDUyxRQUFBO0VJd1VELHFCQUFBO0VBNWtCUixzQkFBQTtFSitKQSxtQkFBQTtFQUFBLHlCQUFBO0VBQUEsa0JBQUE7RUFBQSxZQUFBO0VBQUEsV0FBQTtFQUFBLGNBQUE7RUFBQSxlQUFBO0VBQUEsMkRBQUE7RUFBQSx3QkFBQTtFQUFBLDRCQUFBO0VBQUEsd0JBQUE7RUkrYVEsV0FBQTtFQUNBLG1CQUFBO0VBQ0Esc0JBQUE7O0FBbFBSLGVjdExBLHlCQUdJLFNkK1lKLE9BZUksV0EzT0g7QUFBRCxlY3RMQSx5QkFHSSxTZCtZSixPQWdCSSxVQTVPSDtFSi9MRCxZQUFBOztBSThNQSxlY3JNQSx5QkFHSSxTZCtZSixPQWVJLFdBNU5IO0FBQUQsZWNyTUEseUJBR0ksU2QrWUosT0FnQkksVUE3Tkg7RUo5TUQsY0FBQTs7QUlrTkEsZWN6TUEseUJBR0ksU2QrWUosT0FlSSxXQXhOSDtBQUFELGVjek1BLHlCQUdJLFNkK1lKLE9BZ0JJLFVBek5IO0VKbE5ELGNBQUE7O0FJc05BLGVjN01BLHlCQUdJLFNkK1lKLE9BZUksV0FwTkg7QUFBRCxlYzdNQSx5QkFHSSxTZCtZSixPQWdCSSxVQXJOSDtFSnRORCxjQUFBOztBa0JRSixlQUNJLHlCQUdJLFNkK1lKLE9Bd0JJO0VBQ0ksV0FBQTtFSmpWUixnQkFBQTtFQUNBLGlCQUFBO0VBQ1MsUUFBQTs7QWtCN0ZiLGVBQ0kseUJBR0ksU2Q2YUo7RUFDSSxnQkFBQTs7QUF5SkosZWMxa0JBLHlCQUdJLFNkdWtCSCxTQUFVLFNBQVE7RUFDZixTQUFTLEdBQVQ7RUw3dkJKLGlCQUFBO0VDeUtBLGNBQUE7RUFBQSxpQkFBQTs7QWtCUUosZUFDSSx5QkFHSSxTZDJtQko7RUxoeUJBLGlCQUFBO0VDeUtBLGVBQUE7RUFBQSxVQUFBO0VBQUEscUJBQUE7RWF2S0EscUJBQUE7O0FBR0EsZUs2S0EseUJBR0ksU2QybUJKLE1TM3hCQztFYm9LRCxhQ3RMYSxtQkRzTGI7RUFBQSxTYzBuQmMsT2QxbkJkO0VBQUEsZUFBQTtFQUFBLGlCQUFBO0VhNklBLGdCQUFBO0VBQ0EsV0FBQTtFQUNBLG1CQUFBO0VBQ0EsbUNBQUE7RUFDQSxxQkFBQTtFYmpKQSxzQkFBQTtFYW1KQSxrQkFBQTs7QUtqSUosZUFDSTtFbEJuQkEsVUFBQTtFQUFBLGdCQUFBO0VBQUEsU0FBQTtFSWlRQSx1QkFBQTs7QWMvT0osZUFDSSx5QmRpUEE7RUFDSSxzQkFBQTs7QWNuUFIsZUFDSSx5QmRzUEE7RUp6UUEsZ0JBQUE7RUFBQSxVQUFBO0VEektBLGVBQUE7RUN5S0EsZ0JBQUE7RUlvUkksc0JBQUE7RUFDQSxXQUFBOztBQUVBLGVjcFFKLHlCZHNQQSxVQWNNO0VBQ0UsY0FBQTtFQUNBLGtCQUFBO0VBQ0EsU0FBQTtFQUNBLGdCQUFBO0VBQ0EsV0FBQTs7QWMxUVosZUFDSSx5QkFFSTtFbEJyQkosZ0JBQUE7RUlpdUJBLHNCQUFBO0VBRUEscUJBQUE7RUpudUJBLG1CQUFBO0VBQUEsVUFBQTtFSXN1QkEsbUJBQUE7O0FjcHRCSixlQUNJLHlCQUVJLFNkNmlCSjtFQUNJLHFCQUFBO0VKbmtCSixlQUFBOztBSXlXQSxlY3RWQSx5QkFFSSxTZG9WSDtFQUNHLGdCQUFBOztBQThYSixlY3J0QkEseUJBRUksU2RtdEJGO0VBQ0UsV0FBQTs7QWN2dEJSLGVBQ0kseUJBRUksU2Q4Vko7RUpuWEEsZ0JBQUE7O0FJNFhJLGVjeldKLHlCQUVJLFNkOFZKLFNBU007RUFDRSxhQUFBOztBYzNXWixlQUNJLHlCQUVJLFNkNFdKLFFBQ0k7RUFDSSxtQkFBQTs7QUpoZ0JSLGVrQmdKQSx5QkFFSSxTZGtYSixRQUFPLE1KcGdCTjtBQUNELGVrQitJQSx5QkFFSSxTZGtYSixRQUFPLE1KbmdCTjtFQUNHLFNBQVMsRUFBVDtFQUNBLGNBQUE7O0FBRUosZWtCMklBLHlCQUVJLFNka1hKLFFBQU8sTUovZk47RUFDRyxXQUFBOztBa0J5SVIsZUFDSSx5QkFFSSxTZGtYSixRQUFPLE1BRUg7RUFDSSxzQkFBQTtFQUNBLFdBQUE7O0FBRUosZWMxWEoseUJBRUksU2RrWEosUUFBTyxNQU1GLFFBQVM7RUFDTixxQkFBQTs7QUFFSixlYzdYSix5QkFFSSxTZGtYSixRQUFPLE1BU0YsUUFBUztFQUNOLHVCQUFBOztBQUVKLGVjaFlKLHlCQUVJLFNka1hKLFFBQU8sTUFZRixRQUFTO0VBQ04scUJBQUE7O0FBRUosZWNuWUoseUJBRUksU2RrWEosUUFBTyxNQWVGLFFBQVM7RUFDTixxQkFBQTs7QWNyWVosZUFDSSx5QkFFSSxTZHNZSjtFQUNJLG9CQUFBO0VBQ0EsaUJBQUE7RUFDQSxVQUFBO0VBQ0EsV0FBQTs7QWM3WVIsZUFDSSx5QkFFSSxTZHNZSixPQUtJO0FjOVlSLGVBQ0kseUJBRUksU2RzWUosT0FNSTtBYy9ZUixlQUNJLHlCQUVJLFNkc1lKLE9BT0k7RUovVEosZ0JBQUE7RUFDQSxpQkFBQTtFQUNTLFFBQUE7RUkrVEQsZ0JBQUE7RUFDQSxxQkFBQTtFQUNBLFNBQUE7RUFDQSxXQUFBO0VBQ0EsZ0JBQUE7O0FjdFpaLGVBQ0kseUJBRUksU2RzWUosT0FlSTtBY3haUixlQUNJLHlCQUVJLFNkc1lKLE9BZ0JJO0VKeFVKLGdCQUFBO0VBQ0EsaUJBQUE7RUFDUyxRQUFBO0VJd1VELHFCQUFBO0VBNWtCUixzQkFBQTtFSitKQSxtQkFBQTtFQUFBLHlCQUFBO0VBQUEsa0JBQUE7RUFBQSxZQUFBO0VBQUEsV0FBQTtFQUFBLGNBQUE7RUFBQSxlQUFBO0VBQUEsMkRBQUE7RUFBQSx3QkFBQTtFQUFBLDRCQUFBO0VBQUEsd0JBQUE7RUkrYVEsV0FBQTtFQUNBLG1CQUFBO0VBQ0Esc0JBQUE7O0FBbFBSLGVjNUtBLHlCQUVJLFNkc1lKLE9BZUksV0EzT0g7QUFBRCxlYzVLQSx5QkFFSSxTZHNZSixPQWdCSSxVQTVPSDtFSi9MRCxZQUFBOztBSThNQSxlYzNMQSx5QkFFSSxTZHNZSixPQWVJLFdBNU5IO0FBQUQsZWMzTEEseUJBRUksU2RzWUosT0FnQkksVUE3Tkg7RUo5TUQsY0FBQTs7QUlrTkEsZWMvTEEseUJBRUksU2RzWUosT0FlSSxXQXhOSDtBQUFELGVjL0xBLHlCQUVJLFNkc1lKLE9BZ0JJLFVBek5IO0VKbE5ELGNBQUE7O0FJc05BLGVjbk1BLHlCQUVJLFNkc1lKLE9BZUksV0FwTkg7QUFBRCxlY25NQSx5QkFFSSxTZHNZSixPQWdCSSxVQXJOSDtFSnRORCxjQUFBOztBa0JrQkosZUFDSSx5QkFFSSxTZHNZSixPQXdCSTtFQUNJLFdBQUE7RUpqVlIsZ0JBQUE7RUFDQSxpQkFBQTtFQUNTLFFBQUE7O0FrQm5GYixlQUNJLHlCQUVJLFNkb2FKO0VBQ0ksZ0JBQUE7O0FBeUpKLGVjaGtCQSx5QkFFSSxTZDhqQkgsU0FBVSxTQUFRO0VBQ2YsU0FBUyxHQUFUO0VMN3ZCSixpQkFBQTtFQ3lLQSxjQUFBO0VBQUEsaUJBQUE7O0FrQmtCSixlQUNJLHlCQUVJLFNka21CSjtFTGh5QkEsaUJBQUE7RUN5S0EsZUFBQTtFQUFBLFVBQUE7RUFBQSxxQkFBQTtFYXZLQSxxQkFBQTs7QUFHQSxlS3VMQSx5QkFFSSxTZGttQkosTVMzeEJDO0Vib0tELGFDdExhLG1CRHNMYjtFQUFBLFNjMG5CYyxPZDFuQmQ7RUFBQSxlQUFBO0VBQUEsaUJBQUE7RWE2SUEsZ0JBQUE7RUFDQSxXQUFBO0VBQ0EsbUJBQUE7RUFDQSxtQ0FBQTtFQUNBLHFCQUFBO0ViakpBLHNCQUFBO0VhbUpBLGtCQUFBOztBS2tXSixLQUFLO0FBQ0wsS0FBSztBQUNMLEtBQUs7QUFDTCxLQUFLO0FBQ0wsS0FBSztBQUNMLEtBQUs7QUFDTCxLQUFLO0FBQ0wsS0FBSztFZDNwQkQsc0JBQUE7RUorSkEsbUJBQUE7RUFBQSx5QkFBQTtFQUFBLGtCQUFBO0VBQUEsWUFBQTtFQUFBLFdBQUE7RUFBQSxjQUFBO0VBQUEsZUFBQTtFQUFBLDJEQUFBO0VBQUEsd0JBQUE7RUFBQSw0QkFBQTtFQUFBLHdCQUFBO0VrQjhmQSxtQkFBQTs7QWQvVEEsS2NzVEMsYWR0VEE7QUFBRCxLY3VUQyxpQmR2VEE7QUFBRCxLY3dUQyxZZHhUQTtBQUFELEtjeVRDLFlkelRBO0FBQUQsS2MwVEMsZWQxVEE7QUFBRCxLYzJUQyxlZDNUQTtBQUFELEtjNFRDLGlCZDVUQTtBQUFELEtjNlRDLGNkN1RBO0VKL0xELFlBQUE7O0FJOE1BLEtjdVNDLGFkdlNBO0FBQUQsS2N3U0MsaUJkeFNBO0FBQUQsS2N5U0MsWWR6U0E7QUFBRCxLYzBTQyxZZDFTQTtBQUFELEtjMlNDLGVkM1NBO0FBQUQsS2M0U0MsZWQ1U0E7QUFBRCxLYzZTQyxpQmQ3U0E7QUFBRCxLYzhTQyxjZDlTQTtFSjlNRCxjQUFBOztBSWtOQSxLY21TQyxhZG5TQTtBQUFELEtjb1NDLGlCZHBTQTtBQUFELEtjcVNDLFlkclNBO0FBQUQsS2NzU0MsWWR0U0E7QUFBRCxLY3VTQyxlZHZTQTtBQUFELEtjd1NDLGVkeFNBO0FBQUQsS2N5U0MsaUJkelNBO0FBQUQsS2MwU0MsY2QxU0E7RUpsTkQsY0FBQTs7QUlzTkEsS2MrUkMsYWQvUkE7QUFBRCxLY2dTQyxpQmRoU0E7QUFBRCxLY2lTQyxZZGpTQTtBQUFELEtja1NDLFlkbFNBO0FBQUQsS2NtU0MsZWRuU0E7QUFBRCxLY29TQyxlZHBTQTtBQUFELEtjcVNDLGlCZHJTQTtBQUFELEtjc1NDLGNkdFNBO0VKdE5ELGNBQUE7O0FrQmlnQko7RWRocUJJLHNCQUFBO0VKK0pBLG1CQUFBO0VBQUEseUJBQUE7RUFBQSxrQkFBQTtFQUFBLFlBQUE7RUFBQSxXQUFBO0VBQUEscUJBQUE7RUFBQSxlQUFBO0VBQUEsMkRBQUE7RUFBQSx3QkFBQTtFQUFBLDRCQUFBO0VBQUEsd0JBQUE7RWtCbWdCQSxtQkFBQTs7QWRwVUEsTUFBQztFSi9MRCxZQUFBOztBa0JzZ0JKLE1BQU07RWxCdGdCRixZQUFBO0VrQndnQkEsbUJBQUE7O0FBR0o7RWQxcUJJLHNCQUFBO0VKK0pBLG1CQUFBO0VBQUEseUJBQUE7RUFBQSxrQkFBQTtFQUFBLFlBQUE7RUFBQSxXQUFBO0VBQUEsYUFBQTtFQUFBLFNBQUE7RUFBQSxlQUFBO0VBQUEsMkRBQUE7RUFBQSx3QkFBQTtFQUFBLDRCQUFBO0VBQUEsd0JBQUE7RUFBQSxnQkFBQTs7QUkrTEEsUUFBQztFSi9MRCxZQUFBOztBSThNQSxRQUFDO0VKOU1ELGNBQUE7O0FJa05BLFFBQUM7RUpsTkQsY0FBQTs7QUlzTkEsUUFBQztFSnRORCxjQUFBOztBa0JrdEJKLEtBQUs7RWxCbHRCRCxtQkFBQTs7QUlyR0EsS2N1ekJDLGlCZHZ6QkE7RUpxR0QsWUFBQTs7QWtCc3RCSixLQUFLO0VsQnR0QkQsbUJBQUE7O0FJckdBLEtjMnpCQyxjZDN6QkE7RUpxR0QsWUFBQTs7QWtCb3hCSixLQUFLO0FBQ0wsTUFBTTtBQUNOLFFBQVE7RWxCdHhCSixxQkFBQTtFQUFBLG1CQUFBO0VBQUEsY0FBQTs7QUkxREEsS2M4MEJDLGVkOTBCQTtBQUFELE1jKzBCRSxpQmQvMEJEO0FBQUQsUWNnMUJJLG1CZGgxQkg7RUowREQscUJBQUE7RUFBQSxjQUFBOztBSXJEQSxLY3kwQkMsZWR6MEJBO0FBQUQsTWMwMEJFLGlCZDEwQkQ7QUFBRCxRYzIwQkksbUJkMzBCSDtFSnFERCxjQUFBOztBSWhEQSxLY2kxQkMsZWRqMUJBO0FBQUQsUWNrMUJJLG1CZGwxQkg7RUpnREQsY0FBQTs7QUk3Q0EsS2M4MEJDLGVkOTBCQTtBQUFELFFjKzBCSSxtQmQvMEJIO0VKNkNELGNBQUE7O0FJMUNBLEtjMjBCQyxlZDMwQkE7QUFBRCxRYzQwQkksbUJkNTBCSDtFSjBDRCxjQUFBOztBa0I0eUJKO0VkdDRCSSwwQkFBQTs7QUFMQSxlQUFDO0FBQ0QsZUFBQztFQUNDLHdCQUFBO0VBQ0EsU0FBQTs7QWNnNUJOO0VkMTRCSSx3QkFBQTs7QUFDQSxlQUFDO0FBQ0QsZUFBQztBQUNELGVBQUM7QUFDRCxlQUFDO0VBQ0Msd0JBQUE7O0FjdTZCTjtBQUNBO0FBQ0E7RW5CamdDSSxpQkFBQTtFQ3lLQSxjQUFBOztBYzVLSjtFRDRISSxxQkFBQTs7QUFFQSxlQUFDO0VBMklELFNBQVMsRUFBVDtFQUNBLHFCQUFBO0ViOUZBLFdBQUE7RUFBQSxZQUFBO0VBQUEsaUJBQUE7RUFBQSxzQkFBQTtFYXFHQSxnQkNoUjBCLHNGRGdSMUI7O0FDN1FKO0VEbUpJLHFCQUFBOztBQUVBLGVBQUM7RUFnSEQsU0FBUyxFQUFUO0VBQ0EscUJBQUE7RWI5RkEsV0FBQTtFQUFBLFlBQUE7RUFBQSxpQkFBQTtFQUFBLHNCQUFBO0VhcUdBLGdCQzNRa0IsMEZEMlFsQjs7QUNwUUo7RUQrR0kscUJBQUE7O0FDL0dKLGVEdU9JO0ViNU5BLGtCQUFBO0VBQ0EsVUFBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0EsVUFBQTtFQUNBLGdCQUFBO0VBQ0EsTUFBTSxnQkFBTjtFQUNBLFNBQUE7O0FhK0ZBLGVBQUM7RUEySUQsU0FBUyxFQUFUO0VBQ0EscUJBQUE7RWI5RkEsV0FBQTtFQUFBLFlBQUE7RUFBQSxpQkFBQTtFQUFBLHNCQUFBO0VhcUdBLGdCQ2xRa0IsK0ZEa1FsQjs7QUMzUEo7RWRzSkkscUJBQUE7RWF2S0EscUJBQUE7O0FBR0EsZUFBQztFYm9LRCxhQ3RMYSxtQkRzTGI7RUFBQSxTY3dtQlksT2R4bUJaO0VBQUEsZUFBQTtFQUFBLG9CQUFBO0VBQUEsY0FBQTtFYTZJQSxnQkFBQTtFQUNBLFdBQUE7RUFDQSxtQkFBQTtFQUNBLG1DQUFBO0VBQ0EscUJBQUE7RWJqSkEsc0JBQUE7RWFtSkEsa0JBQUE7O0FDbFNKO0VkK0lJLHFCQUFBO0VhOUhBLHFCQUFBOztBQUVBLGVBQUM7RWI0SEQsYUN0TGEsbUJEc0xiO0VBQUEsU2N1bUJRLE9kdm1CUjtFQUFBLGVBQUE7RUFBQSxvQkFBQTtFQUFBLGNBQUE7RWE2SUEsZ0JBQUE7RUFDQSxXQUFBO0VBQ0EsbUJBQUE7RUFDQSxtQ0FBQTtFQUNBLHFCQUFBO0ViakpBLHNCQUFBO0VhbUpBLGtCQUFBOztBQzFSSjtFZHVJSSxxQkFBQTtFYXZLQSxxQkFBQTs7QUNnQ0osZUQrTUk7RWI1TkEsa0JBQUE7RUFDQSxVQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxVQUFBO0VBQ0EsZ0JBQUE7RUFDQSxNQUFNLGdCQUFOO0VBQ0EsU0FBQTs7QWF2QkEsZUFBQztFYm9LRCxhQ3RMYSxtQkRzTGI7RUFBQSxTYzZuQlEsT2Q3bkJSO0VBQUEsZUFBQTtFQUFBLG9CQUFBO0VBQUEsY0FBQTtFYTZJQSxnQkFBQTtFQUNBLFdBQUE7RUFDQSxtQkFBQTtFQUNBLG1DQUFBO0VBQ0EscUJBQUE7RWJqSkEsc0JBQUE7RWFtSkEsa0JBQUE7O0FDM1FKO0VEd0VJLHFCQUFBOztBQUVBLGVBQUM7RUEySUQsU0FBUyxFQUFUO0VBQ0EscUJBQUE7RWI5RkEsV0FBQTtFQUFBLFlBQUE7RUFBQSxpQkFBQTtFQUFBLHNCQUFBO0VhcUdBLGdCQzVOMEIsc0ZENE4xQjs7QUM5SUo7RURQSSxxQkFBQTs7QUFFQSxlQUFDO0VBMklELFNBQVMsRUFBVDtFQUNBLHFCQUFBO0ViOUZBLFdBQUE7RUFBQSxZQUFBO0VBQUEsaUJBQUE7RUFBQSxzQkFBQTtFYXFHQSxnQkM3STBCLHNGRDZJMUI7O0FBckdBLGVBQUM7RUE2R0QsNkJBQUE7O0FDL0lKO0VEYUkscUJBQUE7O0FBRUEsZUFBQztFQWdIRCxTQUFTLEVBQVQ7RUFDQSxxQkFBQTtFYjlGQSxXQUFBO0VBQUEsWUFBQTtFQUFBLGlCQUFBO0VBQUEsc0JBQUE7RWFxR0EsZ0JDdEkwQixzRkRzSTFCOztBQXhGQSxlQUFDO0VBZ0dELGdDQUFBOztBQ2pHSjtFRDVESSxxQkFBQTs7QUFFQSxnQkFBQztFQTJJRCxTQUFTLEVBQVQ7RUFDQSxxQkFBQTtFYjlGQSxXQUFBO0VBQUEsWUFBQTtFQUFBLGlCQUFBO0VBQUEsc0JBQUE7RWFxR0EsZ0JDeEYwQixzRkR3RjFCOztBQTFFQSxnQkFBQztFQWtHRCwrQkFBQTs7QUNqRUo7RUQ1R0kscUJBQUE7O0FBRUEsZ0JBQUM7RUEySUQsU0FBUyxFQUFUO0VBQ0EscUJBQUE7RWI5RkEsV0FBQTtFQUFBLFlBQUE7RUFBQSxpQkFBQTtFQUFBLHNCQUFBO0VhcUdBLGdCQ3hDMEIsc0ZEd0MxQjs7QUE3Q0EsZ0JBQUM7RWJ4REQsV0FBQTtFQUFBLFlBQUE7O0Fha0VBLGdCQUFDO0VibEVELFdBQUE7RUFBQSxZQUFBOztBYytEQSxnQkFBQztFQUNHLHlCQUFBOztBQTBDUjtFZDFHSSxxQkFBQTtFYXZLQSxxQkFBQTs7QUFHQSxnQkFBQztFYm9LRCxhQ3RMYSxtQkRzTGI7RUFBQSxTY29uQlksT2RwbkJaO0VBQUEsZUFBQTtFQUFBLG9CQUFBO0VBQUEsY0FBQTtFYTZJQSxnQkFBQTtFQUNBLFdBQUE7RUFDQSxtQkFBQTtFQUNBLG1DQUFBO0VBQ0EscUJBQUE7RWJqSkEsc0JBQUE7RWFtSkEsa0JBQUE7O0FDMERKO0VkN01JLHFCQUFBO0VhdktBLHFCQUFBOztBQUdBLGdCQUFDO0Vib0tELGFDdExhLG1CRHNMYjtFQUFBLFNjb25CWSxPZHBuQlo7RUFBQSxrQkFBQTtFQUFBLG9CQUFBO0VBQUEsY0FBQTtFYTZJQSxnQkFBQTtFQUNBLFdBQUE7RUFDQSxtQkFBQTtFQUNBLG1DQUFBO0VBQ0EscUJBQUE7RWJqSkEsc0JBQUE7RWFtSkEsa0JBQUE7O0FBblBBLGdCQUFDO0ViZ0dELGVBQUE7RUFBQSxvQkFBQTs7QWN5UEo7RWR6UEkscUJBQUE7RWF2S0EscUJBQUE7O0FBR0EsZ0JBQUM7RWJvS0QsYUN0TGEsbUJEc0xiO0VBQUEsU2MrbkJZLE9kL25CWjtFQUFBLGVBQUE7RUFBQSxvQkFBQTtFQUFBLGNBQUE7RWE2SUEsZ0JBQUE7RUFDQSxXQUFBO0VBQ0EsbUJBQUE7RUFDQSxtQ0FBQTtFQUNBLHFCQUFBO0ViakpBLHNCQUFBO0VhbUpBLGtCQUFBOztBQ3NHSixnQkRqTEk7RWI1TkEsa0JBQUE7RUFDQSxVQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxVQUFBO0VBQ0EsZ0JBQUE7RUFDQSxNQUFNLGdCQUFOO0VBQ0EsU0FBQTs7QWMwbkJKO0VBQ0ksZ0JBQUE7RUFDQSxVQUFBOztBQUZKLGlCQUdJO0VBQ0ksV0FBQTtFQUNBLFVBQUE7O0FBTFIsaUJBR0ksR0FHSTtFRG5pQkoscUJBQUE7O0FBRUEsaUJDOGhCQSxHQUdJLE9EamlCSDtFQTJJRCxTQUFTLEVBQVQ7RUFDQSxxQkFBQTtFYjlGQSxXQUFBO0VBQUEsWUFBQTtFQUFBLGlCQUFBO0VBQUEsc0JBQUE7RWFxR0EsZ0JDK1lrQyxzRkQvWWxDOztBQTFFQSxpQkNxZEEsR0FNSSxhRDNkSDtFQWtHRCw0QkFBQTs7QUFsR0EsaUJDcWRBLEdBU0ksV0Q5ZEg7RUFrR0QsOEJBQUE7O0FBbEdBLGlCQ3FkQSxHQVlJLGlCRGplSDtFQWtHRCw4QkFBQTs7QUFsR0EsaUJDcWRBLEdBZUksZURwZUg7RUFrR0QsOEJBQUE7O0FBbEdBLGlCQ3FkQSxHQWtCSSxXRHZlSDtFQWtHRCwrQkFBQTs7QUFsR0EsaUJDcWRBLEdBcUJJLFdEMWVIO0VBa0dELCtCQUFBOztBQWxHQSxpQkNxZEEsR0F3QkksYUQ3ZUg7RUFrR0QsK0JBQUE7O0FBbEdBLGlCQ3FkQSxHQTJCSSxXRGhmSDtFQWtHRCwrQkFBQTs7QUFsR0EsaUJDcWRBLEdBOEJJLG1CRG5mSDtFQWtHRCwrQkFBQTs7QUFsR0EsaUJDcWRBLEdBaUNJLGlCRHRmSDtFQWtHRCwrQkFBQTs7QUFsR0EsaUJDcWRBLEdBb0NJLG1CRHpmSDtFQWtHRCwrQkFBQTs7QUFsR0EsaUJDcWRBLEdBdUNJLG9CRDVmSDtFQWtHRCwrQkFBQTs7QUFsR0EsaUJDcWRBLEdBMENJLG9CRC9mSDtFQWtHRCw4QkFBQTs7QUFsR0EsaUJDcWRBLEdBNkNJLG1CRGxnQkg7RUFrR0QsZ0NBQUE7O0FBbEdBLGlCQ3FkQSxHQWdESSxxQkRyZ0JIO0VBa0dELGdDQUFBOztBQWxHQSxpQkNxZEEsR0FtREksb0JEeGdCSDtFQWtHRCxnQ0FBQTs7QUFsR0EsaUJDcWRBLEdBc0RJLGFEM2dCSDtFQWtHRCxpQ0FBQTs7QUFsR0EsaUJDcWRBLEdBeURJLGVEOWdCSDtFQWtHRCxpQ0FBQTs7QUFsR0EsaUJDcWRBLEdBNERJLGFEamhCSDtFQWtHRCxpQ0FBQTs7QUFsR0EsaUJDcWRBLEdBK0RJLFdEcGhCSDtFQWtHRCxpQ0FBQTs7QUFsR0EsaUJDcWRBLEdBa0VJLFdEdmhCSDtFQWtHRCxpQ0FBQTs7QUFsR0EsaUJDcWRBLEdBcUVJLFdEMWhCSDtFQWtHRCxpQ0FBQTs7QUFsR0EsaUJDcWRBLEdBd0VJLGVEN2hCSDtFQWtHRCxpQ0FBQTs7QUFsR0EsaUJDcWRBLEdBMkVJLFdEaGlCSDtFQWtHRCxpQ0FBQTs7QUFsR0EsaUJDcWRBLEdBOEVJLGdCRG5pQkg7RUFrR0QsOEJBQUE7O0FBbEdBLGlCQ3FkQSxHQWlGSSxlRHRpQkg7RUFrR0QsZ0NBQUE7O0FBbEdBLGlCQ3FkQSxHQW9GSSxjRHppQkg7RUFrR0QsZ0NBQUE7O0FBbEdBLGlCQ3FkQSxHQXVGSSx3QkQ1aUJIO0VBa0dELGdDQUFBOztBQWxHQSxpQkNxZEEsR0EwRkksZUQvaUJIO0VBa0dELGlDQUFBOztBQWxHQSxpQkNxZEEsR0E2RkksY0RsakJIO0VBa0dELGlDQUFBOztBQWxHQSxpQkNxZEEsR0FnR0ksWURyakJIO0VBa0dELGlDQUFBOztBQWxHQSxpQkNxZEEsR0FtR0ksV0R4akJIO0VBa0dELGlDQUFBOztBQWxHQSxpQkNxZEEsR0FzR0ksZUQzakJIO0VBa0dELGlDQUFBOztBQWxHQSxpQkNxZEEsR0F5R0ksU0Q5akJIO0VBa0dELGlDQUFBOztBQWxHQSxpQkNxZEEsR0E0R0ksV0Rqa0JIO0VBa0dELGlDQUFBOztBQzZnQko7RUFDSSxnQkFBQTtFQUNBLFVBQUE7O0FBRkosZ0JBR0k7RUFDSSxXQUFBO0VBQ0EsVUFBQTtFQUNBLG1CQUFBO0VBQ0Esa0JBQUE7O0FBUFIsZ0JBR0ksR0FLSTtFZGxwQkoscUJBQUE7RWF2S0EscUJBQUE7O0FBR0EsZ0JDaXpCQSxHQUtJLE9EdHpCSDtFYm9LRCxhQ3RMYSxtQkRzTGI7RUFBQSxlQUFBO0VBQUEsb0JBQUE7RUFBQSxjQUFBO0VhNklBLGdCQUFBO0VBQ0EsV0FBQTtFQUNBLG1CQUFBO0VBQ0EsbUNBQUE7RUFDQSxxQkFBQTtFYmpKQSxzQkFBQTtFYW1KQSxrQkFBQTs7QUNpZ0JRLGdCQVBSLEdBS0ksT0FFSztFQUNHLFNBQVMsZUFBVDtFQUNBLGNBQUE7RUFDQSxjQUFBOztBSzMwQmhCO0VDTUksZUFBQTtFQUNBLE9BQUE7RUFDQSxNQUFBO0VBQ0EsUUFBQTtFQUNBLFNBQUE7RUFDQSwwQ0FBQTtFQUNBLGFBQUE7O0FBQ0EsT0FBQztFQUNHLHNCQUFBO0VBRUEsNEJuQjB3QjJCLGlGbUIxd0IzQjtFQUNBLGtCQUFBO0VBQ0EsU0FBUyxFQUFUO0VBQ0Esa0JBQUE7RUFDQSxNQUFBO0VBQ0EsUUFBQTtFQUNBLE9BQUE7RUFDQSxTQUFBO0VBQ0EsWUFBQTtFQUNBLFlBQUE7RUFDQSxhQUFBOztBRGtHUjtFQ3hFSSxrQkFBQTs7QUFDQSxRQUFDO0VBQ0csU0FBUyxFQUFUO0VBQ0Esa0JBQUE7RUFDQSxPQUFBO0VBQ0EsTUFBQTtFQUNBLFFBQUE7RUFDQSxTQUFBO0VBQ0EseUNuQjh0QjJCLGlGbUI5dEIzQjs7QUMvQ1I7RUNFSSxjQUFBO0V0QnFLQSxnQkFBQTtFQUFBLGtCQUFBO0VEektBLGlCQUFBO0VDeUtBLGtCQUFBO0VBQUEsbUJBQUE7RUFBQSxjQUFBOztBcUJ2S0oscUJDNEJJO0V0QjJJQSxjQUFBOztBc0J6SUkscUJBRkosRUFFSztFdEJ5SUwsY0FBQTs7QXNCdElJLHFCQUxKLEVBS0s7RXRCc0lMLGNBQUE7O0FxQnZKSjtFQ2RJLGNBQUE7RXRCcUtBLGdCQUFBO0VBQUEsa0JBQUE7RUR6S0EsaUJBQUE7RUN5S0Esa0JBQUE7RUFBQSxtQkFBQTtFQUFBLGNBQUE7O0FxQnZKSix3QkNZSTtFdEIySUEsY0FBQTs7QXNCeklJLHdCQUZKLEVBRUs7RXRCeUlMLGNBQUE7O0FzQnRJSSx3QkFMSixFQUtLO0V0QnNJTCxjQUFBOztBcUJ2SUo7RUM5QkksY0FBQTtFdEJxS0EsZ0JBQUE7RUFBQSxrQkFBQTtFRHpLQSxpQkFBQTtFQ3lLQSxrQkFBQTtFQUFBLG1CQUFBO0VBQUEsY0FBQTs7QXFCdklKLHNCQ0pJO0V0QjJJQSxjQUFBOztBc0J6SUksc0JBRkosRUFFSztFdEJ5SUwsY0FBQTs7QXNCdElJLHNCQUxKLEVBS0s7RXRCc0lMLGNBQUE7O0FxQnZISjtFQzlDSSxjQUFBO0V0QnFLQSxnQkFBQTtFQUFBLGtCQUFBO0VEektBLGlCQUFBO0VDeUtBLGtCQUFBO0VBQUEsbUJBQUE7RUFBQSxjQUFBOztBcUJ2SEosd0JDcEJJO0V0QjJJQSxjQUFBOztBc0J6SUksd0JBRkosRUFFSztFdEJ5SUwsY0FBQTs7QXNCdElJLHdCQUxKLEVBS0s7RXRCc0lMLGNBQUE7O0FxQnZHSjtFQzlESSxjQUFBO0V0QnFLQSxnQkFBQTtFQUFBLGtCQUFBO0VEektBLGlCQUFBO0VDeUtBLGtCQUFBO0VBQUEsbUJBQUE7RUFBQSxjQUFBOztBcUJ2R0osdUJDcENJO0V0QjJJQSxjQUFBOztBc0J6SUksdUJBRkosRUFFSztFdEJ5SUwsY0FBQTs7QXNCdElJLHVCQUxKLEVBS0s7RXRCc0lMLGNBQUE7O0FxQnRGSjtFQy9FSSxjQUFBO0V0QnFLQSxnQkFBQTtFQUFBLGtCQUFBO0VEektBLGlCQUFBO0VDeUtBLGtCQUFBO0VBQUEsbUJBQUE7RUFBQSxjQUFBO0VzQnNDQSxrQkFBQTtFdEJ0Q0Esa0JBQUE7O0FxQnRGSixrQkNyREk7RXRCMklBLGNBQUE7O0FzQnpJSSxrQkFGSixFQUVLO0V0QnlJTCxjQUFBOztBc0J0SUksa0JBTEosRUFLSztFdEJzSUwsY0FBQTs7QXFCdEZKLGtCQzhISSxJQUFHLFlBQVk7RXRCeENmLGFDdExhLG1CRHNMYjtFQUFBLFNjb21CVyxPZHBtQlg7RUFBQSxlQUFBO0VBQUEsaUJBQUE7RUFBQSxjQUFBO0VhNklBLGdCQUFBO0VBQ0EsV0FBQTtFQUNBLG1CQUFBO0VBQ0EsbUNBQUE7RUFDQSxxQkFBQTtFYmpKQSxzQkFBQTtFQUFBLGlCQUFBO0VzQmtESSxrQkFBQTtFdEJsREosU0FBQTtFQUFBLE9BQUE7RXNCdURJLGtCQUFBO0V0QnZESixXQUFBOztBcUIzREo7RUMxR0ksY0FBQTtFdEJxS0EsZ0JBQUE7RUFBQSxrQkFBQTtFRHpLQSxpQkFBQTtFQ3lLQSxrQkFBQTtFQUFBLG1CQUFBO0VBQUEsY0FBQTtFc0I5REEsa0JBQUE7RXRCOERBLG1CQUFBOztBcUIzREosa0JDaEZJO0V0QjJJQSxjQUFBOztBc0J6SUksa0JBRkosRUFFSztFdEJ5SUwsY0FBQTs7QXNCdElJLGtCQUxKLEVBS0s7RXRCc0lMLGNBQUE7O0FzQjdEQSxrQkFBQztFQUNHLFNBQVMsRUFBVDtFQUNBLGtCQUFBO0V0QjJESixXQUFBO0VzQnpESSxrQkFBQTtFQUNBLE1BQUE7RUFDQSxZQUFBO0VBQ0EsY0FBQTtFQUNBLFVBQUE7RXRCcURKLG1CQUFBOztBcUIzREosa0JDU0ksSUFBRyxZQUFZO0VBQ1gsU0FBUyxFQUFUO0VBQ0Esa0JBQUE7RUFDQSxnQkFBQTtFQUNBLFFBQUE7RXRCOENKLGdCQUFBOztBcUIzREosa0JDZ0JJLElBQUcsWUFBWTtFdEIyQ2YsYUN0TGEsbUJEc0xiO0VBQUEsU2NvbUJXLE9kcG1CWDtFQUFBLGVBQUE7RUFBQSxpQkFBQTtFQUFBLGNBQUE7RWE2SUEsZ0JBQUE7RUFDQSxXQUFBO0VBQ0EsbUJBQUE7RUFDQSxtQ0FBQTtFQUNBLHFCQUFBO0ViakpBLHNCQUFBO0VBQUEsaUJBQUE7RXNCakNJLGtCQUFBO0V0QmlDSixTQUFBO0VBQUEsT0FBQTtFc0I1Qkksa0JBQUE7RXRCNEJKLFdBQUE7O0FzQmRBLGtCQUFDO0VBQ0csUUFBQTs7QUQ5Q1Isa0JDaURJLElBQUcsWUFBWTtFdEIwQ2YsUUFBQTtFQUNBLFNBQUE7RUFDQSw2QkFBQTtFQUlBLDJCQUFBO0VBdENBLFdBQUE7O0FxQjNESixrQkNxREksSUFBRyxZQUFZO0VBQ1gsUUFBQTs7QURsRFI7RUM5R0ksY0FBQTtFdEJxS0EsZ0JBQUE7RUFBQSxrQkFBQTtFRHpLQSxpQkFBQTtFQ3lLQSxrQkFBQTtFQUFBLG1CQUFBO0VBQUEsY0FBQTtFc0I5REEsa0JBQUE7RXRCOERBLGtCQUFBOztBcUJ2REosa0JDcEZJO0V0QjJJQSxjQUFBOztBc0J6SUksa0JBRkosRUFFSztFdEJ5SUwsY0FBQTs7QXNCdElJLGtCQUxKLEVBS0s7RXRCc0lMLGNBQUE7O0FzQjdEQSxrQkFBQztFQUNHLFNBQVMsRUFBVDtFQUNBLGtCQUFBO0V0QjJESixXQUFBO0VzQnpESSxrQkFBQTtFQUNBLE1BQUE7RUFDQSxZQUFBO0VBQ0EsY0FBQTtFQUNBLFVBQUE7RXRCcURKLG1CQUFBOztBcUJ2REosa0JDS0ksSUFBRyxZQUFZO0VBQ1gsU0FBUyxFQUFUO0VBQ0Esa0JBQUE7RUFDQSxnQkFBQTtFQUNBLFFBQUE7RXRCOENKLGdCQUFBOztBcUJ2REosa0JDWUksSUFBRyxZQUFZO0V0QjJDZixhQ3RMYSxtQkRzTGI7RUFBQSxTY2tuQmEsT2RsbkJiO0VBQUEsZUFBQTtFQUFBLGlCQUFBO0VBQUEsY0FBQTtFYTZJQSxnQkFBQTtFQUNBLFdBQUE7RUFDQSxtQkFBQTtFQUNBLG1DQUFBO0VBQ0EscUJBQUE7RWJqSkEsc0JBQUE7RUFBQSxpQkFBQTtFc0JqQ0ksa0JBQUE7RXRCaUNKLFNBQUE7RUFBQSxPQUFBO0VzQjVCSSxrQkFBQTtFdEI0QkosV0FBQTs7QXNCSUEsa0JBQUM7RUFDRyxPQUFBOztBRDVEUixrQkMrREksSUFBRyxZQUFZO0V0QndCZixRQUFBO0VBQ0EsU0FBQTtFQUNBLDZCQUFBO0VBT0EsMEJBQUE7RUF6Q0EsVUFBQTs7QXFCdkRKLGtCQ21FSSxJQUFHLFlBQVk7RUFDWCxPQUFBOztBRGxCUjtFQ2hLSSxjQUFBO0V0QnFLQSxnQkFBQTtFQUFBLGtCQUFBO0VEektBLGlCQUFBO0VDeUtBLGtCQUFBO0VBQUEsbUJBQUE7RUFBQSxxQkFBQTtFQUFBLGNBQUE7RXNCOURBLGtCQUFBO0V0QjhEQSxrQkFBQTtFcUJIQSxpQkFBQTtFQUNBLG1CQUFBOztBQUhKLGtCQ3RJSTtFdEIySUEsY0FBQTs7QXNCeklJLGtCQUZKLEVBRUs7RXRCeUlMLGNBQUE7O0FzQnRJSSxrQkFMSixFQUtLO0V0QnNJTCxjQUFBOztBc0I3REEsa0JBQUM7RUFDRyxTQUFTLEVBQVQ7RUFDQSxrQkFBQTtFdEIyREosV0FBQTtFc0J6REksa0JBQUE7RUFDQSxNQUFBO0VBQ0EsWUFBQTtFQUNBLGNBQUE7RUFDQSxVQUFBO0V0QnFESixrQkFBQTs7QXFCTEosa0JDN0NJLElBQUcsWUFBWTtFQUNYLFNBQVMsRUFBVDtFQUNBLGtCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxRQUFBO0V0QjhDSixnQkFBQTs7QXFCTEosa0JDdENJLElBQUcsWUFBWTtFdEIyQ2YsYUN0TGEsbUJEc0xiO0VBQUEsU2N3bUJZLE9keG1CWjtFQUFBLGVBQUE7RUFBQSxpQkFBQTtFQUFBLGNBQUE7RWE2SUEsZ0JBQUE7RUFDQSxXQUFBO0VBQ0EsbUJBQUE7RUFDQSxtQ0FBQTtFQUNBLHFCQUFBO0ViakpBLHNCQUFBO0VBQUEsaUJBQUE7RXNCakNJLGtCQUFBO0V0QmlDSixTQUFBO0VBQUEsT0FBQTtFc0I1Qkksa0JBQUE7RXRCNEJKLFdBQUE7O0FzQklBLGtCQUFDO0VBQ0csT0FBQTs7QURWUixrQkNhSSxJQUFHLFlBQVk7RXRCd0JmLFFBQUE7RUFDQSxTQUFBO0VBQ0EsNkJBQUE7RUFPQSx5QkFBQTtFQXpDQSxVQUFBOztBcUJMSixrQkNpQkksSUFBRyxZQUFZO0VBQ1gsT0FBQTs7QUNqTlIsTUFBTTtFQUNGLHNDQUFBOztBQUVKLE9BQU87RUFDSCx3Q0FBQTs7QUFFSixPQUFPO0VBQ0gsd0NBQUE7O0FBRUosT0FBTztFQUNILHNDQUFBOztBQUVKLE1BQU07RUFDRixvQ0FBQTs7QUE0Tko7RUN0TVEsc0JBQUE7RXhCb1BKLHFCQUFBO0VBQ0Esb0JBQUE7RUFDQSxhQUFBO0V3QnBQSSxlQUFBOztBQUVKLFFBQUM7RUFDRyxTQUFTLEdBQVQ7RUFDQSxjQUFBO0VBQ0EsU0FBQTtFQUNBLFdBQUE7RUFDQSxnQkFBQTtFQUNBLGtCQUFBOztBRDRMUixRQUVJO0V2QnZDQSxvQkFBQTs7QXVCMkRKLFFBZDBCO0VDak1sQixDQUFDLG1CQUF3QixRRGtNdEI7SUN0SlAsV0FBQTtJeEIyTUEsZ0JBQUE7SUFDQSxpQkFBQTtJQUNTLFFBQUE7O0V3QnRQTCxDQUFDLG9CQUF5QixRRCtMdkI7SUV6RlAsbUJBQUE7SURqQ0EscUJBQUE7SXhCK0tBLGdCQUFBO0lBQ0EsaUJBQUE7SUFDUyxRQUFBOztFd0JuUEwsQ0FBQyx5QkFBOEIsUUQ0TDVCO0lFekZQLG1CQUFBO0lEckNBLFlBQUE7SXhCbUxBLGdCQUFBO0lBQ0EsaUJBQUE7SUFDUyxRQUFBOztFd0JoUEwsQ0FBQywwQkFBK0IsUUR5TDdCO0lFekZQLG1CQUFBO0lEekNBLFdBQUE7SXhCdUxBLGdCQUFBO0lBQ0EsaUJBQUE7SUFDUyxRQUFBOztFd0IxT0wsQ0FBQyxvQkFBeUIsUUR1THZCO0lFN0ZQLG1CQUFBO0lEekNBLFdBQUE7SXhCdUxBLGdCQUFBO0lBQ0EsaUJBQUE7SUFDUyxRQUFBOztFd0J2T0wsQ0FBQyx5QkFBOEIsUURvTDVCO0lFN0ZQLG1CQUFBO0lEekNBLFdBQUE7SXhCdUxBLGdCQUFBO0lBQ0EsaUJBQUE7SUFDUyxRQUFBOztFd0JwT0wsQ0FBQywwQkFBK0IsUURpTDdCO0lFN0ZQLG1CQUFBO0lEekNBLFdBQUE7SXhCdUxBLGdCQUFBO0lBQ0EsaUJBQUE7SUFDUyxRQUFBOztFd0I5TkwsQ0FBQyxvQkFBeUIsUUQrS3ZCO0lFakdQLG1CQUFBO0lEckNBLFlBQUE7SXhCbUxBLGdCQUFBO0lBQ0EsaUJBQUE7SUFDUyxRQUFBOztFd0IzTkwsQ0FBQyx5QkFBOEIsUUQ0SzVCO0lFakdQLG1CQUFBO0lEckNBLFlBQUE7SXhCbUxBLGdCQUFBO0lBQ0EsaUJBQUE7SUFDUyxRQUFBOztFd0J4TkwsQ0FBQywwQkFBK0IsUUR5SzdCO0lFakdQLG1CQUFBO0lEckNBLFlBQUE7SXhCbUxBLGdCQUFBO0lBQ0EsaUJBQUE7SUFDUyxRQUFBOzs7QXVCR2IsaUJBQ0ksUUFBTztFQ2pOUCxVQUFBO0VBNEJBLHFCQUFBO0V4QitLQSxnQkFBQTtFQUNBLGlCQUFBO0VBQ1MsUUFBQTs7QXVCR2IsaUJBSUksUUFBTztFQ3BOUCxVQUFBO0VBb0JBLFdBQUE7RXhCdUxBLGdCQUFBO0VBQ0EsaUJBQUE7RUFDUyxRQUFBOztBdUJHYixpQkFPSSxRQUFPO0VDdk5QLFVBQUE7RUF3QkEsWUFBQTtFeEJtTEEsZ0JBQUE7RUFDQSxpQkFBQTtFQUNTLFFBQUE7O0F1QmViLG1CQUNJLFFBQU87RUM3TlAsVUFBQTtFQW9CQSxXQUFBO0V4QnVMQSxnQkFBQTtFQUNBLGlCQUFBO0VBQ1MsUUFBQTs7QXVCZWIsbUJBSUksUUFBTztFQ2hPUCxVQUFBO0VBNEJBLHFCQUFBO0V4QitLQSxnQkFBQTtFQUNBLGlCQUFBO0VBQ1MsUUFBQTs7QXVCZWIsbUJBT0ksUUFBTztFQ25PUCxVQUFBO0VBd0JBLFlBQUE7RXhCbUxBLGdCQUFBO0VBQ0EsaUJBQUE7RUFDUyxRQUFBOztBMEIzUGIsTUN3UUk7RTNCdFFBLGtCQUFBO0VBQ0EsVUFBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0EsVUFBQTtFQUNBLGdCQUFBO0VBQ0EsTUFBTSxnQkFBTjtFQUNBLFNBQUE7O0EwQlRKLE1DeURJO0UzQndFQSxZQUFBO0VBQ0EsY0FBQTtFQUNBLG9CQUFBO0UyQjhGQSxtQkFBQTtFM0IzRUEsU0FBQTtFQUFBLFVBQUE7RUR0R0EscUJBQUE7RUNzR0EscUJBQUE7RUFBQSxnQkFBQTs7QTBCdEpKLE1DK0RJO0U1QmxGQSxpQkFBQTtFQzJKQSxlQUFBO0VBQ0EsaUJBQUE7RUFDQSxzQkFBQTtFQVlBLGlCQUFBO0VBQUEscUJBQUE7O0EwQnRKSixNQytESSxNQU9JO0UzQnBFSixrQkFBQTtFQUNBLFVBQUE7RUFDQSxXQUFBO0VBQ0EsWUFBQTtFQUNBLFVBQUE7RUFDQSxnQkFBQTtFQUNBLE1BQU0sZ0JBQU47RUFDQSxTQUFBOztBMEJUSixNQzBFSSxFQUFDO0UzQjRFRCxjQUFBO0VBQUEsY0FBQTtFQUFBLHFCQUFBO0VBQUEscUJBQUE7O0EyQi9ESSxNQWJKLEVBQUMsS0FhSTtFM0IrREwsY0FBQTs7QTJCcERJLE1BeEJKLEVBQUMsS0F3Qkk7RTNCb0RMLGNBQUE7RUFBQSxxQkFBQTs7QTJCeENJLE1BcENKLEVBQUMsS0FvQ0k7RTNCd0NMLGNBQUE7O0EwQnRKSixNQzBISSxPQUFNO0U1QjdJTixpQkFBQTtFQzJKQSxlQUFBO0VBQ0EsaUJBQUE7RUFDQSxzQkFBQTtFQVlBLGNBQUE7RUFBQSxjQUFBO0VBQUEscUJBQUE7RUFBQSxnQkFBQTs7QTBCdEpKLE1DNElJO0UzQlVBLHlCQUFBO0VBQUEsVUFBQTtFQUFBLGNBQUE7RUFBQSxxQkFBQTtFQUFBLHFCQUFBOztBMkJHSSxNQWJKLFFBYUs7RTNCSEwsY0FBQTs7QTJCY0ksTUF4QkosUUF3Qks7RTNCZEwsY0FBQTtFQUFBLHFCQUFBOztBMkIwQkksTUFwQ0osUUFvQ0s7RTNCMUJMLGNBQUE7O0EyQnFDSSxNQS9DSixRQStDSztFM0JyQ0wscUJBQUE7RWF2S0EscUJBQUE7O0FjeVRBLE1BNUpBLFFBK0NLLEtBNkdKLFFBQVE7RTNCbEpULGNBQUE7O0EyQnFKQSxNQS9KQSxRQStDSyxLQWdISixPQUFPO0UzQnJKUixjQUFBOztBMkJxQ0ksTUEvQ0osUUErQ0ssS2RtQ0w7RWI1TkEsa0JBQUE7RUFDQSxVQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxVQUFBO0VBQ0EsZ0JBQUE7RUFDQSxNQUFNLGdCQUFOO0VBQ0EsU0FBQTs7QWF2QkEsTWMwSkEsUUErQ0ssS2R6TUo7RWJvS0QsYUN0TGEsbUJEc0xiO0VBQUEsU2MwbUJRLE9kMW1CUjtFQUFBLGVBQUE7RUFBQSxvQkFBQTtFQUFBLGNBQUE7RWE2SUEsZ0JBQUE7RUFDQSxXQUFBO0VBQ0EsbUJBQUE7RUFDQSxtQ0FBQTtFQUNBLHFCQUFBO0ViakpBLG1CQUFBO0VhbUpBLGtCQUFBO0VibkpBLGtCQUFBOztBYXhKSSxNYzhJSixRQStDSyxLZDlMSixNQUNJO0Vid0pMLGNBQUE7O0FhbkpJLE1jeUlKLFFBK0NLLEtkekxKLE9BQ0k7RWJtSkwsY0FBQTs7QTJCcURJLE1BL0RKLFFBK0RLO0UzQnJETCxxQkFBQTtFYXZLQSxxQkFBQTs7QWN5VEEsTUE1SkEsUUErREssU0E2RkosUUFBUTtFM0JsSlQsY0FBQTs7QTJCcUpBLE1BL0pBLFFBK0RLLFNBZ0dKLE9BQU87RTNCckpSLGNBQUE7O0EyQnFESSxNQS9ESixRQStESyxTZG1CTDtFYjVOQSxrQkFBQTtFQUNBLFVBQUE7RUFDQSxXQUFBO0VBQ0EsWUFBQTtFQUNBLFVBQUE7RUFDQSxnQkFBQTtFQUNBLE1BQU0sZ0JBQU47RUFDQSxTQUFBOztBYXZCQSxNYzBKQSxRQStESyxTZHpOSjtFYm9LRCxhQ3RMYSxtQkRzTGI7RUFBQSxTY3luQlEsT2R6bkJSO0VBQUEsZUFBQTtFQUFBLG9CQUFBO0VBQUEsY0FBQTtFYTZJQSxnQkFBQTtFQUNBLFdBQUE7RUFDQSxtQkFBQTtFQUNBLG1DQUFBO0VBQ0EscUJBQUE7RWJqSkEsbUJBQUE7RWFtSkEsa0JBQUE7RWJuSkEsa0JBQUE7O0FheEpJLE1jOElKLFFBK0RLLFNkOU1KLE1BQ0k7RWJ3SkwsY0FBQTs7QWFuSkksTWN5SUosUUErREssU2R6TUosT0FDSTtFYm1KTCxjQUFBOztBMEI2WkosZ0JDOVRJO0UzQi9GQSxxQkFBQTtFQUFBLGdCQUFBO0VEektBLGlCQUFBO0VDMkpBLGVBQUE7RUFDQSxpQkFBQTtFQUNBLHNCQUFBOztBMkJrSEksZ0JBUEosU0FPSztFQUNHLFNBQVMsSUFBVDs7QURzVFosZ0JDMWZJO0UzQndFQSxZQUFBO0VBQ0EsY0FBQTtFQUNBLG9CQUFBO0UyQjhGQSxtQkFBQTtFM0IzRUEsU0FBQTtFQUFBLFVBQUE7RUR0R0EscUJBQUE7RUNzR0EscUJBQUE7RUFBQSxnQkFBQTs7QTBCNlpKLGdCQ3BmSTtFNUJsRkEsaUJBQUE7RUMySkEsZUFBQTtFQUNBLGlCQUFBO0VBQ0Esc0JBQUE7RUFZQSxhQUFBO0VBQUEscUJBQUE7O0EwQjZaSixnQkNwZkksTUFPSTtFM0JwRUosa0JBQUE7RUFDQSxVQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxVQUFBO0VBQ0EsZ0JBQUE7RUFDQSxNQUFNLGdCQUFOO0VBQ0EsU0FBQTs7QTBCMGlCSixnQkN6ZUksRUFBQztFM0JBRyx5QkFBQTtFQUNBLDJCQUFBO0VBQ0Esa0JBQWtCLHNEQUFsQjtFQUNBLGtCQUFrQixvREFBbEI7RUFDQSxrSEFBQTtFQXdFSix5QkFBQTtFQUFBLGNBQUE7RUFBQSxjQUFBO0VBQUEscUJBQUE7RUFBQSxxQkFBQTs7QTJCL0RJLGdCQWJKLEVBQUMsS0FhSTtFM0JiRCx1QkFBQTtFQUNBLDJCQUFBO0VBQ0Esa0JBQWtCLGtEQUFsQjtFQUNBLGtCQUFrQixnREFBbEI7RUFDQSw4R0FBQTtFQXdFSixjQUFBOztBMkJwREksZ0JBeEJKLEVBQUMsS0F3Qkk7RTNCeEJELHlCQUFBO0VBQ0EsMkJBQUE7RUFDQSxrQkFBa0Isc0RBQWxCO0VBQ0Esa0JBQWtCLG9EQUFsQjtFQUNBLGtIQUFBO0VBd0VKLHlCQUFBO0VBQUEsY0FBQTtFQUFBLHFCQUFBOztBMkJ4Q0ksZ0JBcENKLEVBQUMsS0FvQ0k7RTNCcENELHVCQUFBO0VBQ0EsMkJBQUE7RUFDQSxrQkFBa0Isa0RBQWxCO0VBQ0Esa0JBQWtCLGdEQUFsQjtFQUNBLDhHQUFBO0VBd0VKLGNBQUE7O0EwQjZaSixnQkN6YkksT0FBTTtFM0I0Qk4sbUJBQUE7RUFBQSx5QkFBQTtFRHpLQSxpQkFBQTtFQzJKQSxlQUFBO0VBQ0EsaUJBQUE7RUFDQSxzQkFBQTtFQVlBLGNBQUE7RUFBQSxjQUFBO0VBQUEscUJBQUE7RUFBQSxnQkFBQTs7QTBCNlpKLGdCQ3ZhSTtFM0JVQSx5QkFBQTtFQUFBLFVBQUE7RUFBQSxjQUFBO0VBQUEscUJBQUE7RUFBQSxxQkFBQTs7QTJCR0ksZ0JBYkosUUFhSztFM0JITCxjQUFBOztBMkJjSSxnQkF4QkosUUF3Qks7RTNCZEwsY0FBQTtFQUFBLHFCQUFBOztBMkIwQkksZ0JBcENKLFFBb0NLO0UzQjFCTCxjQUFBOztBMkJxQ0ksZ0JBL0NKLFFBK0NLO0UzQnJDTCxxQkFBQTtFYXZLQSxxQkFBQTs7QWN5VEEsZ0JBNUpBLFFBK0NLLEtBNkdKLFFBQVE7RTNCbEpULGNBQUE7O0EyQnFKQSxnQkEvSkEsUUErQ0ssS0FnSEosT0FBTztFM0JySlIsY0FBQTs7QTJCcUNJLGdCQS9DSixRQStDSyxLZG1DTDtFYjVOQSxrQkFBQTtFQUNBLFVBQUE7RUFDQSxXQUFBO0VBQ0EsWUFBQTtFQUNBLFVBQUE7RUFDQSxnQkFBQTtFQUNBLE1BQU0sZ0JBQU47RUFDQSxTQUFBOztBYXZCQSxnQmMwSkEsUUErQ0ssS2R6TUo7RWJvS0QsYUN0TGEsbUJEc0xiO0VBQUEsU2MwbUJRLE9kMW1CUjtFQUFBLGVBQUE7RUFBQSxvQkFBQTtFQUFBLGNBQUE7RWE2SUEsZ0JBQUE7RUFDQSxXQUFBO0VBQ0EsbUJBQUE7RUFDQSxtQ0FBQTtFQUNBLHFCQUFBO0ViakpBLG1CQUFBO0VhbUpBLGtCQUFBO0VibkpBLGtCQUFBOztBYXhKSSxnQmM4SUosUUErQ0ssS2Q5TEosTUFDSTtFYndKTCxjQUFBOztBYW5KSSxnQmN5SUosUUErQ0ssS2R6TEosT0FDSTtFYm1KTCxjQUFBOztBMkJxREksZ0JBL0RKLFFBK0RLO0UzQnJETCxxQkFBQTtFYXZLQSxxQkFBQTs7QWN5VEEsZ0JBNUpBLFFBK0RLLFNBNkZKLFFBQVE7RTNCbEpULGNBQUE7O0EyQnFKQSxnQkEvSkEsUUErREssU0FnR0osT0FBTztFM0JySlIsY0FBQTs7QTJCcURJLGdCQS9ESixRQStESyxTZG1CTDtFYjVOQSxrQkFBQTtFQUNBLFVBQUE7RUFDQSxXQUFBO0VBQ0EsWUFBQTtFQUNBLFVBQUE7RUFDQSxnQkFBQTtFQUNBLE1BQU0sZ0JBQU47RUFDQSxTQUFBOztBYXZCQSxnQmMwSkEsUUErREssU2R6Tko7RWJvS0QsYUN0TGEsbUJEc0xiO0VBQUEsU2N5bkJRLE9kem5CUjtFQUFBLGVBQUE7RUFBQSxvQkFBQTtFQUFBLGNBQUE7RWE2SUEsZ0JBQUE7RUFDQSxXQUFBO0VBQ0EsbUJBQUE7RUFDQSxtQ0FBQTtFQUNBLHFCQUFBO0ViakpBLG1CQUFBO0VhbUpBLGtCQUFBO0VibkpBLGtCQUFBOztBYXhKSSxnQmM4SUosUUErREssU2Q5TUosTUFDSTtFYndKTCxjQUFBOztBYW5KSSxnQmN5SUosUUErREssU2R6TUosT0FDSTtFYm1KTCxjQUFBOztBMEIwZUosZ0JDM1lJO0UzQi9GQSxxQkFBQTtFQUFBLGdCQUFBO0VEektBLGlCQUFBO0VDMkpBLGVBQUE7RUFDQSxpQkFBQTtFQUNBLHNCQUFBOztBMkJrSEksZ0JBUEosU0FPSztFQUNHLFNBQVMsSUFBVDs7QURtWVosZ0JDdmtCSTtFM0J3RUEsWUFBQTtFQUNBLGNBQUE7RUFDQSxvQkFBQTtFMkI4RkEsbUJBQUE7RTNCM0VBLFNBQUE7RUFBQSxVQUFBO0VEdEdBLHFCQUFBO0VDc0dBLHFCQUFBO0VBQUEsZ0JBQUE7O0EwQjBlSixnQkNqa0JJO0U1QmxGQSxpQkFBQTtFQzJKQSxlQUFBO0VBQ0EsaUJBQUE7RUFDQSxzQkFBQTtFQVlBLGlCQUFBO0VBQUEscUJBQUE7O0EwQjBlSixnQkNqa0JJLE1BT0k7RTNCcEVKLGtCQUFBO0VBQ0EsVUFBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0EsVUFBQTtFQUNBLGdCQUFBO0VBQ0EsTUFBTSxnQkFBTjtFQUNBLFNBQUE7O0EwQnVuQkosZ0JDdGpCSSxFQUFDO0UzQjRFRCxjQUFBO0VBQUEsY0FBQTtFQUFBLHFCQUFBO0VBQUEscUJBQUE7O0EyQi9ESSxnQkFiSixFQUFDLEtBYUk7RTNCK0RMLGNBQUE7O0EyQnBESSxnQkF4QkosRUFBQyxLQXdCSTtFM0JvREwsY0FBQTtFQUFBLHFCQUFBOztBMkJ4Q0ksZ0JBcENKLEVBQUMsS0FvQ0k7RTNCd0NMLGNBQUE7O0EwQjBlSixnQkN0Z0JJLE9BQU07RTVCN0lOLGlCQUFBO0VDMkpBLGVBQUE7RUFDQSxpQkFBQTtFQUNBLHNCQUFBO0VBWUEsY0FBQTtFQUFBLGNBQUE7RUFBQSxxQkFBQTtFQUFBLGdCQUFBOztBMEIwZUosZ0JDcGZJO0UzQlVBLHlCQUFBO0VBQUEsVUFBQTtFQUFBLGNBQUE7RUFBQSxxQkFBQTtFQUFBLHFCQUFBOztBMkJHSSxnQkFiSixRQWFLO0UzQkhMLGNBQUE7O0EyQmNJLGdCQXhCSixRQXdCSztFM0JkTCxjQUFBO0VBQUEscUJBQUE7O0EyQjBCSSxnQkFwQ0osUUFvQ0s7RTNCMUJMLGNBQUE7O0EwQmlrQkosZ0JDL2NJO0UzQnRRQSxrQkFBQTtFQUNBLFVBQUE7RUFDQSxXQUFBO0VBQ0EsWUFBQTtFQUNBLFVBQUE7RUFDQSxnQkFBQTtFQUNBLE1BQU0sZ0JBQU47RUFDQSxTQUFBOztBMEI4c0JKLGdCQzlwQkk7RTNCd0VBLFlBQUE7RUFDQSxjQUFBO0VBQ0Esb0JBQUE7RTJCOEZBLG1CQUFBO0UzQjNFQSxTQUFBO0VBQUEsVUFBQTtFRHRHQSxxQkFBQTtFQ3NHQSxxQkFBQTtFQUFBLGdCQUFBOztBMEJpa0JKLGdCQ3hwQkk7RTVCbEZBLGlCQUFBO0VDMkpBLGVBQUE7RUFDQSxpQkFBQTtFQUNBLHNCQUFBO0VBWUEsaUJBQUE7RUFBQSxxQkFBQTs7QTBCaWtCSixnQkN4cEJJLE1BT0k7RTNCcEVKLGtCQUFBO0VBQ0EsVUFBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0EsVUFBQTtFQUNBLGdCQUFBO0VBQ0EsTUFBTSxnQkFBTjtFQUNBLFNBQUE7O0EwQjhzQkosZ0JDN29CSSxFQUFDO0UzQjRFRCxtQkFBQTtFQUFBLGNBQUE7RUFBQSxjQUFBO0VBQUEscUJBQUE7RUFBQSxxQkFBQTs7QTJCL0RJLGdCQWJKLEVBQUMsS0FhSTtFM0IrREwsbUJBQUE7RUFBQSxjQUFBOztBMkJwREksZ0JBeEJKLEVBQUMsS0F3Qkk7RTNCb0RMLG1CQUFBO0VBQUEsY0FBQTtFQUFBLHFCQUFBOztBMkJ4Q0ksZ0JBcENKLEVBQUMsS0FvQ0k7RTNCd0NMLG1CQUFBO0VBQUEsY0FBQTs7QTBCaWtCSixnQkM3bEJJLE9BQU07RTNCNEJOLG1CQUFBO0VEektBLGlCQUFBO0VDMkpBLGVBQUE7RUFDQSxpQkFBQTtFQUNBLHNCQUFBO0VBWUEsY0FBQTtFQUFBLGNBQUE7RUFBQSxxQkFBQTtFQUFBLGdCQUFBOztBMEJpa0JKLGdCQzNrQkk7RTNCVUEsbUJBQUE7RUFBQSx5QkFBQTtFQUFBLFVBQUE7RUFBQSxjQUFBO0VBQUEscUJBQUE7RUFBQSxxQkFBQTs7QTJCR0ksZ0JBYkosUUFhSztFM0JITCxtQkFBQTtFQUFBLGNBQUE7O0EyQmNJLGdCQXhCSixRQXdCSztFM0JkTCxtQkFBQTtFQUFBLGNBQUE7RUFBQSxxQkFBQTs7QTJCMEJJLGdCQXBDSixRQW9DSztFM0IxQkwsbUJBQUE7RUFBQSxjQUFBOztBMkJxQ0ksZ0JBL0NKLFFBK0NLO0UzQnJDTCxxQkFBQTtFYXZLQSxxQkFBQTs7QWN5VEEsZ0JBNUpBLFFBK0NLLEtBNkdKLFFBQVE7RTNCbEpULGNBQUE7O0EyQnFKQSxnQkEvSkEsUUErQ0ssS0FnSEosT0FBTztFM0JySlIsY0FBQTs7QTJCcUNJLGdCQS9DSixRQStDSyxLZG1DTDtFYjVOQSxrQkFBQTtFQUNBLFVBQUE7RUFDQSxXQUFBO0VBQ0EsWUFBQTtFQUNBLFVBQUE7RUFDQSxnQkFBQTtFQUNBLE1BQU0sZ0JBQU47RUFDQSxTQUFBOztBYXZCQSxnQmMwSkEsUUErQ0ssS2R6TUo7RWJvS0QsYUN0TGEsbUJEc0xiO0VBQUEsU2MwbUJRLE9kMW1CUjtFQUFBLGVBQUE7RUFBQSxvQkFBQTtFQUFBLGNBQUE7RWE2SUEsZ0JBQUE7RUFDQSxXQUFBO0VBQ0EsbUJBQUE7RUFDQSxtQ0FBQTtFQUNBLHFCQUFBO0ViakpBLG1CQUFBO0VhbUpBLGtCQUFBO0VibkpBLGtCQUFBOztBYXhKSSxnQmM4SUosUUErQ0ssS2Q5TEosTUFDSTtFYndKTCxjQUFBOztBYW5KSSxnQmN5SUosUUErQ0ssS2R6TEosT0FDSTtFYm1KTCxjQUFBOztBMkJxREksZ0JBL0RKLFFBK0RLO0UzQnJETCxxQkFBQTtFYXZLQSxxQkFBQTs7QWN5VEEsZ0JBNUpBLFFBK0RLLFNBNkZKLFFBQVE7RTNCbEpULGNBQUE7O0EyQnFKQSxnQkEvSkEsUUErREssU0FnR0osT0FBTztFM0JySlIsY0FBQTs7QTJCcURJLGdCQS9ESixRQStESyxTZG1CTDtFYjVOQSxrQkFBQTtFQUNBLFVBQUE7RUFDQSxXQUFBO0VBQ0EsWUFBQTtFQUNBLFVBQUE7RUFDQSxnQkFBQTtFQUNBLE1BQU0sZ0JBQU47RUFDQSxTQUFBOztBYXZCQSxnQmMwSkEsUUErREssU2R6Tko7RWJvS0QsYUN0TGEsbUJEc0xiO0VBQUEsU2N5bkJRLE9kem5CUjtFQUFBLGVBQUE7RUFBQSxvQkFBQTtFQUFBLGNBQUE7RWE2SUEsZ0JBQUE7RUFDQSxXQUFBO0VBQ0EsbUJBQUE7RUFDQSxtQ0FBQTtFQUNBLHFCQUFBO0ViakpBLG1CQUFBO0VhbUpBLGtCQUFBO0VibkpBLGtCQUFBOztBYXhKSSxnQmM4SUosUUErREssU2Q5TUosTUFDSTtFYndKTCxjQUFBOztBYW5KSSxnQmN5SUosUUErREssU2R6TUosT0FDSTtFYm1KTCxjQUFBOztBNEJuSkosT0FBTyxNQUFNO0U1Qm1KVCxtQkFBQTtFQUFBLHlCQUFBO0VBQUEsYUFBQTtFQUFBLFdBQUE7RUFBQSx5Q0FBQTtFQUFBLE1BQUE7RUFBQSxRQUFBO0VBQUEsU0FBQTtFQUFBLE9BQUE7RTZCdkRBLGFBQUE7RUFDQSxVQUFBO0U3QnNEQSxlQUFBO0VBQUEsYUFBQTtFQUFBLCtCQUFBOztBNEJuSkosT0FBTyxNQUFNLGNDdUNUO0U3QjRHQSxnQkFBQTtFQUFBLG1CQUFBOztBNEJuSkosT0FBTyxNQUFNLGNDdUNULGNBRUk7RTlCL0RKLGlCQUFBO0VDeUtBLGdCQUFBO0VBQUEsZ0JBQUE7RUE1TEEsa0JBQUE7RUFPQSxtQkFBQTs7QTRCa0NKLE9BQU8sTUFBTSxjQ3dEVCxlQUNJLFFBQU87RTdCMEZYLGtCQUFBO0VBQUEscUJBQUE7RUdvQkEsc0JBQUE7RUFDQSxnQkFBQTtFQUNBLFNBQUE7RUFDQSxTQUFBO0VBQ0EsVUFBQTtFQUNBLDRCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxpQkFBQTtFQUNBLHFCQUFBO0VBQ0Esb0JBQUE7RUg3QkEsZ0JBQUE7RUFBQSxTQUFBO0VBQUEsV0FBQTs7QTRCbkpKLE9BQU8sTUFBTSxjQ3dEVCxlQUNJLFFBQU8sTWhCa0tYO0ViNU5BLGtCQUFBO0VBQ0EsVUFBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0EsVUFBQTtFQUNBLGdCQUFBO0VBQ0EsTUFBTSxnQkFBTjtFQUNBLFNBQUE7O0FhdkJBLE9laUJHLE1BQU0sY0N3RFQsZUFDSSxRQUFPLE1oQjFFVjtFYm9LRCxhQ3RMYSxtQkRzTGI7RUFBQSxTY3duQlUsT2R4bkJWO0VBQUEsZUFBQTtFQUFBLGlCQUFBO0VBQUEsY0FBQTtFYTZJQSxnQkFBQTtFQUNBLFdBQUE7RUFDQSxtQkFBQTtFQUNBLG1DQUFBO0VBQ0EscUJBQUE7RWJqSkEsbUJBQUE7RWFtSkEsa0JBQUE7RWJuSkEsU0FBQTs7QWF4SkksT2VLRCxNQUFNLGNDd0RULGVBQ0ksUUFBTyxNaEIvRFYsTUFDSTtFYndKTCxjQUFBOztBYW5KSSxPZUFELE1BQU0sY0N3RFQsZUFDSSxRQUFPLE1oQjFEVixPQUNJO0VibUpMLGNBQUE7O0FHK0JBLE95QmxMRyxNQUFNLGNDd0RULGVBQ0ksUUFBTyxNMUJ5SFY7QUFDRCxPeUJuTEcsTUFBTSxjQ3dEVCxlQUNJLFFBQU8sTTFCMEhWO0VBQ0csZ0JBQUE7RUFDQSxZQUFBOztBQUVKLE95QnZMRyxNQUFNLGNDd0RULGVBQ0ksUUFBTyxNMUI4SFY7RUFDRyxnQkFBQTtFQUNBLFlBQUE7O0FBRUosT3lCM0xHLE1BQU0sY0N3RFQsZUFDSSxRQUFPLE0xQmtJVjtBQUNELE95QjVMRyxNQUFNLGNDd0RULGVBQ0ksUUFBTyxNMUJtSVY7QUFDRCxRQUFRLFVBQVcsUXlCN0xoQixNQUFNLGNDd0RULGVBQ0ksUUFBTztFMUJxSVAsbUJBQUE7RUFDQSxvQkFBQTtFSDVDSixZQUFBOztBNkJsREEsT0RqR0csTUFBTSxjQ2lHUjtFQUNHLFVBQUE7O0FEOUZSLE9BQU8sTUFBTTtFNUIrSVQsbUJBQUE7RUFBQSx5QkFBQTtFQUFBLGFBQUE7RUFBQSxXQUFBO0VBQUEseUNBQUE7RUFBQSxNQUFBO0VBQUEsUUFBQTtFQUFBLFNBQUE7RUFBQSxPQUFBO0U2QnZEQSxhQUFBO0VBQ0EsVUFBQTtFN0JzREEsZUFBQTtFQUFBLGFBQUE7RUFBQSwrQkFBQTs7QTRCL0lKLE9BQU8sTUFBTSxnQkNtQ1Q7RTdCNEdBLGdCQUFBO0VBQUEsbUJBQUE7O0E0Qi9JSixPQUFPLE1BQU0sZ0JDbUNULGNBRUk7RTlCL0RKLGlCQUFBO0VDeUtBLGdCQUFBO0VBQUEsZ0JBQUE7RUE1TEEsa0JBQUE7RUFPQSxtQkFBQTs7QTRCc0NKLE9BQU8sTUFBTSxnQkNvRFQsZUFDSSxRQUFPO0U3QjBGWCxrQkFBQTtFQUFBLHFCQUFBO0VHb0JBLHNCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxTQUFBO0VBQ0EsU0FBQTtFQUNBLFVBQUE7RUFDQSw0QkFBQTtFQUNBLGdCQUFBO0VBQ0EsaUJBQUE7RUFDQSxxQkFBQTtFQUNBLG9CQUFBO0VIN0JBLGdCQUFBO0VBQUEsU0FBQTtFQUFBLFdBQUE7O0E0Qi9JSixPQUFPLE1BQU0sZ0JDb0RULGVBQ0ksUUFBTyxNaEJrS1g7RWI1TkEsa0JBQUE7RUFDQSxVQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxVQUFBO0VBQ0EsZ0JBQUE7RUFDQSxNQUFNLGdCQUFOO0VBQ0EsU0FBQTs7QWF2QkEsT2VxQkcsTUFBTSxnQkNvRFQsZUFDSSxRQUFPLE1oQjFFVjtFYm9LRCxhQ3RMYSxtQkRzTGI7RUFBQSxTY3duQlUsT2R4bkJWO0VBQUEsZUFBQTtFQUFBLGlCQUFBO0VBQUEsY0FBQTtFYTZJQSxnQkFBQTtFQUNBLFdBQUE7RUFDQSxtQkFBQTtFQUNBLG1DQUFBO0VBQ0EscUJBQUE7RWJqSkEsbUJBQUE7RWFtSkEsa0JBQUE7RWJuSkEsU0FBQTs7QWF4SkksT2VTRCxNQUFNLGdCQ29EVCxlQUNJLFFBQU8sTWhCL0RWLE1BQ0k7RWJ3SkwsY0FBQTs7QWFuSkksT2VJRCxNQUFNLGdCQ29EVCxlQUNJLFFBQU8sTWhCMURWLE9BQ0k7RWJtSkwsY0FBQTs7QUcrQkEsT3lCOUtHLE1BQU0sZ0JDb0RULGVBQ0ksUUFBTyxNMUJ5SFY7QUFDRCxPeUIvS0csTUFBTSxnQkNvRFQsZUFDSSxRQUFPLE0xQjBIVjtFQUNHLGdCQUFBO0VBQ0EsWUFBQTs7QUFFSixPeUJuTEcsTUFBTSxnQkNvRFQsZUFDSSxRQUFPLE0xQjhIVjtFQUNHLGdCQUFBO0VBQ0EsWUFBQTs7QUFFSixPeUJ2TEcsTUFBTSxnQkNvRFQsZUFDSSxRQUFPLE0xQmtJVjtBQUNELE95QnhMRyxNQUFNLGdCQ29EVCxlQUNJLFFBQU8sTTFCbUlWO0FBQ0QsUUFBUSxVQUFXLFF5QnpMaEIsTUFBTSxnQkNvRFQsZUFDSSxRQUFPO0UxQnFJUCxtQkFBQTtFQUNBLG9CQUFBO0VINUNKLFlBQUE7O0E2QmxEQSxPRDdGRyxNQUFNLGdCQzZGUjtFQUNHLFVBQUE7O0FEMUZSLE9BQU87RTVCMklILGdDQUFBO0U2QnJDQSxlQUFBO0VBQ0EsTUFBQTtFQUNBLFFBQUE7RUFDQSxTQUFBO0VBQ0EsT0FBQTtFN0JpQ0EsbUJBQUE7RUFBQSxhQUFBO0U2QjlCQSxVQUFBOztBQUNBLE9EOUdHLFFDOEdGO0VBQ0csWUFBQTtFQUNBLHlCQUFBOztBRHVTUixPQUFPLE1BQU07RTVCNVFULG1CQUFBO0VBQUEseUJBQUE7RUFBQSxhQUFBO0VBQUEsV0FBQTtFNkJQQSxnQkFBQTtFN0JPQSxpQkFBQTtFQUFBLHlDQUFBO0VBQUEsTUFBQTtFQUFBLFFBQUE7RUFBQSxTQUFBO0VBQUEsT0FBQTtFNkJ2REEsYUFBQTtFQUNBLFVBQUE7RTdCc0RBLGVBQUE7RUFBQSxhQUFBO0VBQUEsK0JBQUE7O0E0QjRRSixPQUFPLE1BQU0sZ0JDeFhUO0U3QjRHQSxnQkFBQTtFQUFBLG1CQUFBOztBNEI0UUosT0FBTyxNQUFNLGdCQ3hYVCxjQUVJO0U5Qi9ESixpQkFBQTtFQ3lLQSxnQkFBQTtFQUFBLGdCQUFBO0VBNUxBLGtCQUFBO0VBT0EsbUJBQUE7O0E0QmljSixPQUFPLE1BQU0sZ0JDdldULGVBQ0ksUUFBTztFN0IwRlgsa0JBQUE7RUFBQSxxQkFBQTtFR29CQSxzQkFBQTtFQUNBLGdCQUFBO0VBQ0EsU0FBQTtFQUNBLFNBQUE7RUFDQSxVQUFBO0VBQ0EsNEJBQUE7RUFDQSxnQkFBQTtFQUNBLGlCQUFBO0VBQ0EscUJBQUE7RUFDQSxvQkFBQTtFSDdCQSxnQkFBQTtFQUFBLFNBQUE7RUFBQSxXQUFBOztBNEI0UUosT0FBTyxNQUFNLGdCQ3ZXVCxlQUNJLFFBQU8sTWhCa0tYO0ViNU5BLGtCQUFBO0VBQ0EsVUFBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0EsVUFBQTtFQUNBLGdCQUFBO0VBQ0EsTUFBTSxnQkFBTjtFQUNBLFNBQUE7O0FhdkJBLE9lZ2JHLE1BQU0sZ0JDdldULGVBQ0ksUUFBTyxNaEIxRVY7RWJvS0QsYUN0TGEsbUJEc0xiO0VBQUEsU2N3bkJVLE9keG5CVjtFQUFBLGVBQUE7RUFBQSxpQkFBQTtFQUFBLGNBQUE7RWE2SUEsZ0JBQUE7RUFDQSxXQUFBO0VBQ0EsbUJBQUE7RUFDQSxtQ0FBQTtFQUNBLHFCQUFBO0ViakpBLG1CQUFBO0VhbUpBLGtCQUFBO0VibkpBLFNBQUE7O0FheEpJLE9lb2FELE1BQU0sZ0JDdldULGVBQ0ksUUFBTyxNaEIvRFYsTUFDSTtFYndKTCxjQUFBOztBYW5KSSxPZStaRCxNQUFNLGdCQ3ZXVCxlQUNJLFFBQU8sTWhCMURWLE9BQ0k7RWJtSkwsY0FBQTs7QUcrQkEsT3lCNk9HLE1BQU0sZ0JDdldULGVBQ0ksUUFBTyxNMUJ5SFY7QUFDRCxPeUI0T0csTUFBTSxnQkN2V1QsZUFDSSxRQUFPLE0xQjBIVjtFQUNHLGdCQUFBO0VBQ0EsWUFBQTs7QUFFSixPeUJ3T0csTUFBTSxnQkN2V1QsZUFDSSxRQUFPLE0xQjhIVjtFQUNHLGdCQUFBO0VBQ0EsWUFBQTs7QUFFSixPeUJvT0csTUFBTSxnQkN2V1QsZUFDSSxRQUFPLE0xQmtJVjtBQUNELE95Qm1PRyxNQUFNLGdCQ3ZXVCxlQUNJLFFBQU8sTTFCbUlWO0FBQ0QsUUFBUSxVQUFXLFF5QmtPaEIsTUFBTSxnQkN2V1QsZUFDSSxRQUFPO0UxQnFJUCxtQkFBQTtFQUNBLG9CQUFBO0VINUNKLFlBQUE7O0E2QmxEQSxPRDhURyxNQUFNLGdCQzlUUjtFQUNHLFVBQUE7O0FEd1ZSLE9BQU8sTUFBTTtFNUJ2U1QsbUJBQUE7RUFBQSx5QkFBQTtFQUFBLGFBQUE7RUFBQSxXQUFBO0VBQUEseUNBQUE7RUFBQSxNQUFBO0VBQUEsUUFBQTtFQUFBLFNBQUE7RUFBQSxPQUFBO0U2QnZEQSxhQUFBO0VBQ0EsVUFBQTtFN0JzREEsZUFBQTtFQUFBLGFBQUE7RUFBQSwrQkFBQTs7QTRCdVNKLE9BQU8sTUFBTSxnQkNuWlQ7RTdCNEdBLGdCQUFBO0VBQUEsbUJBQUE7O0E0QnVTSixPQUFPLE1BQU0sZ0JDblpULGNBRUk7RTlCL0RKLGlCQUFBO0VDeUtBLGdCQUFBO0VBQUEsZ0JBQUE7RUE1TEEsa0JBQUE7RUFPQSxtQkFBQTs7QTRCNGRKLE9BQU8sTUFBTSxnQkN6WVQ7RUEyRkEsZ0JBQUE7RTdCT0EsaUJBQUE7O0E0QnVTSixPQUFPLE1BQU0sZ0JDbFlULGVBQ0ksUUFBTztFN0IwRlgsa0JBQUE7RUFBQSxxQkFBQTtFR29CQSxzQkFBQTtFQUNBLGdCQUFBO0VBQ0EsU0FBQTtFQUNBLFNBQUE7RUFDQSxVQUFBO0VBQ0EsNEJBQUE7RUFDQSxnQkFBQTtFQUNBLGlCQUFBO0VBQ0EscUJBQUE7RUFDQSxvQkFBQTtFSDdCQSxnQkFBQTtFQUFBLFNBQUE7RUFBQSxXQUFBOztBNEJ1U0osT0FBTyxNQUFNLGdCQ2xZVCxlQUNJLFFBQU8sTWhCa0tYO0ViNU5BLGtCQUFBO0VBQ0EsVUFBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0EsVUFBQTtFQUNBLGdCQUFBO0VBQ0EsTUFBTSxnQkFBTjtFQUNBLFNBQUE7O0FhdkJBLE9lMmNHLE1BQU0sZ0JDbFlULGVBQ0ksUUFBTyxNaEIxRVY7RWJvS0QsYUN0TGEsbUJEc0xiO0VBQUEsU2N3bkJVLE9keG5CVjtFQUFBLGVBQUE7RUFBQSxpQkFBQTtFQUFBLGNBQUE7RWE2SUEsZ0JBQUE7RUFDQSxXQUFBO0VBQ0EsbUJBQUE7RUFDQSxtQ0FBQTtFQUNBLHFCQUFBO0ViakpBLG1CQUFBO0VhbUpBLGtCQUFBO0VibkpBLFNBQUE7O0FheEpJLE9lK2JELE1BQU0sZ0JDbFlULGVBQ0ksUUFBTyxNaEIvRFYsTUFDSTtFYndKTCxjQUFBOztBYW5KSSxPZTBiRCxNQUFNLGdCQ2xZVCxlQUNJLFFBQU8sTWhCMURWLE9BQ0k7RWJtSkwsY0FBQTs7QUcrQkEsT3lCd1FHLE1BQU0sZ0JDbFlULGVBQ0ksUUFBTyxNMUJ5SFY7QUFDRCxPeUJ1UUcsTUFBTSxnQkNsWVQsZUFDSSxRQUFPLE0xQjBIVjtFQUNHLGdCQUFBO0VBQ0EsWUFBQTs7QUFFSixPeUJtUUcsTUFBTSxnQkNsWVQsZUFDSSxRQUFPLE0xQjhIVjtFQUNHLGdCQUFBO0VBQ0EsWUFBQTs7QUFFSixPeUIrUEcsTUFBTSxnQkNsWVQsZUFDSSxRQUFPLE0xQmtJVjtBQUNELE95QjhQRyxNQUFNLGdCQ2xZVCxlQUNJLFFBQU8sTTFCbUlWO0FBQ0QsUUFBUSxVQUFXLFF5QjZQaEIsTUFBTSxnQkNsWVQsZUFDSSxRQUFPO0UxQnFJUCxtQkFBQTtFQUNBLG9CQUFBO0VINUNKLFlBQUE7O0E2QmxEQSxPRHlWRyxNQUFNLGdCQ3pWUjtFQUNHLFVBQUE7O0FEaVlSLE9BQU8sTUFBTTtFNUJoVlQsbUJBQUE7RUFBQSx5QkFBQTtFQUFBLGFBQUE7RUFBQSxXQUFBO0VBQUEseUNBQUE7RUFBQSxNQUFBO0VBQUEsUUFBQTtFQUFBLFNBQUE7RUFBQSxPQUFBO0U2QnZEQSxhQUFBO0VBQ0EsVUFBQTtFN0JzREEsZUFBQTtFQUFBLGFBQUE7RUFBQSwrQkFBQTs7QTRCZ1ZKLE9BQU8sTUFBTSxnQkM1YlQ7RTdCNEdBLGdCQUFBO0VBQUEsbUJBQUE7O0E0QmdWSixPQUFPLE1BQU0sZ0JDNWJULGNBRUk7RTlCL0RKLGlCQUFBO0VDeUtBLGdCQUFBO0VBQUEsZ0JBQUE7RUE1TEEsa0JBQUE7RUFPQSxtQkFBQTs7QTRCcWdCSixPQUFPLE1BQU0sZ0JDbGJUO0U3QmtHQSxnQkFBQTs7QTRCZ1ZKLE9BQU8sTUFBTSxnQkM5YVQ7RTdCOEZBLGNBQUE7O0E0QmdWSixPQUFPLE1BQU0sZ0JDM2FULGVBQ0ksUUFBTztFN0IwRlgsa0JBQUE7RUFBQSxxQkFBQTtFR29CQSxzQkFBQTtFQUNBLGdCQUFBO0VBQ0EsU0FBQTtFQUNBLFNBQUE7RUFDQSxVQUFBO0VBQ0EsNEJBQUE7RUFDQSxnQkFBQTtFQUNBLGlCQUFBO0VBQ0EscUJBQUE7RUFDQSxvQkFBQTtFSDdCQSxnQkFBQTtFQUFBLFNBQUE7RUFBQSxXQUFBOztBNEJnVkosT0FBTyxNQUFNLGdCQzNhVCxlQUNJLFFBQU8sTWhCa0tYO0ViNU5BLGtCQUFBO0VBQ0EsVUFBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0EsVUFBQTtFQUNBLGdCQUFBO0VBQ0EsTUFBTSxnQkFBTjtFQUNBLFNBQUE7O0FhdkJBLE9lb2ZHLE1BQU0sZ0JDM2FULGVBQ0ksUUFBTyxNaEIxRVY7RWJvS0QsYUN0TGEsbUJEc0xiO0VBQUEsU2N3bkJVLE9keG5CVjtFQUFBLGVBQUE7RUFBQSxpQkFBQTtFQUFBLGNBQUE7RWE2SUEsZ0JBQUE7RUFDQSxXQUFBO0VBQ0EsbUJBQUE7RUFDQSxtQ0FBQTtFQUNBLHFCQUFBO0ViakpBLG1CQUFBO0VhbUpBLGtCQUFBO0VibkpBLFNBQUE7O0FheEpJLE9ld2VELE1BQU0sZ0JDM2FULGVBQ0ksUUFBTyxNaEIvRFYsTUFDSTtFYndKTCxjQUFBOztBYW5KSSxPZW1lRCxNQUFNLGdCQzNhVCxlQUNJLFFBQU8sTWhCMURWLE9BQ0k7RWJtSkwsY0FBQTs7QUcrQkEsT3lCaVRHLE1BQU0sZ0JDM2FULGVBQ0ksUUFBTyxNMUJ5SFY7QUFDRCxPeUJnVEcsTUFBTSxnQkMzYVQsZUFDSSxRQUFPLE0xQjBIVjtFQUNHLGdCQUFBO0VBQ0EsWUFBQTs7QUFFSixPeUI0U0csTUFBTSxnQkMzYVQsZUFDSSxRQUFPLE0xQjhIVjtFQUNHLGdCQUFBO0VBQ0EsWUFBQTs7QUFFSixPeUJ3U0csTUFBTSxnQkMzYVQsZUFDSSxRQUFPLE0xQmtJVjtBQUNELE95QnVTRyxNQUFNLGdCQzNhVCxlQUNJLFFBQU8sTTFCbUlWO0FBQ0QsUUFBUSxVQUFXLFF5QnNTaEIsTUFBTSxnQkMzYVQsZUFDSSxRQUFPO0UxQnFJUCxtQkFBQTtFQUNBLG9CQUFBO0VINUNKLFlBQUE7O0E2QmxEQSxPRGtZRyxNQUFNLGdCQ2xZUjtFQUNHLFVBQUE7O0FEOGFSLE9BQU8sTUFBTTtFNUI3WFQsbUJBQUE7RUFBQSx5QkFBQTtFQUFBLGFBQUE7RUFBQSxXQUFBO0VBQUEseUNBQUE7RUFBQSxNQUFBO0VBQUEsUUFBQTtFQUFBLFNBQUE7RUFBQSxPQUFBO0U2QnZEQSxhQUFBO0VBQ0EsVUFBQTtFN0JzREEsZUFBQTtFQUFBLGFBQUE7RUFBQSwrQkFBQTs7QTRCNlhKLE9BQU8sTUFBTSxnQkN6ZVQ7RTdCNEdBLGdCQUFBO0VBQUEsbUJBQUE7O0E0QjZYSixPQUFPLE1BQU0sZ0JDemVULGNBRUk7RTlCL0RKLGVBQUE7RUN5S0EsZ0JBQUE7RUFBQSxnQkFBQTtFQTVMQSxnQkFBQTtFQU9BLG1CQUFBOztBNEJrakJKLE9BQU8sTUFBTSxnQkN4ZFQsZUFDSSxRQUFPO0U3QjBGWCxrQkFBQTtFQUFBLHFCQUFBO0VHb0JBLHNCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxTQUFBO0VBQ0EsU0FBQTtFQUNBLFVBQUE7RUFDQSw0QkFBQTtFQUNBLGdCQUFBO0VBQ0EsaUJBQUE7RUFDQSxxQkFBQTtFQUNBLG9CQUFBO0VIN0JBLGdCQUFBO0VBQUEsU0FBQTtFQUFBLFdBQUE7O0E0QjZYSixPQUFPLE1BQU0sZ0JDeGRULGVBQ0ksUUFBTyxNaEJrS1g7RWI1TkEsa0JBQUE7RUFDQSxVQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxVQUFBO0VBQ0EsZ0JBQUE7RUFDQSxNQUFNLGdCQUFOO0VBQ0EsU0FBQTs7QWF2QkEsT2VpaUJHLE1BQU0sZ0JDeGRULGVBQ0ksUUFBTyxNaEIxRVY7RWJvS0QsYUN0TGEsbUJEc0xiO0VBQUEsU2N3bkJVLE9keG5CVjtFQUFBLGVBQUE7RUFBQSxpQkFBQTtFQUFBLGNBQUE7RWE2SUEsZ0JBQUE7RUFDQSxXQUFBO0VBQ0EsbUJBQUE7RUFDQSxtQ0FBQTtFQUNBLHFCQUFBO0ViakpBLG1CQUFBO0VhbUpBLGtCQUFBO0VibkpBLFNBQUE7O0FheEpJLE9lcWhCRCxNQUFNLGdCQ3hkVCxlQUNJLFFBQU8sTWhCL0RWLE1BQ0k7RWJ3SkwsY0FBQTs7QWFuSkksT2VnaEJELE1BQU0sZ0JDeGRULGVBQ0ksUUFBTyxNaEIxRFYsT0FDSTtFYm1KTCxjQUFBOztBRytCQSxPeUI4VkcsTUFBTSxnQkN4ZFQsZUFDSSxRQUFPLE0xQnlIVjtBQUNELE95QjZWRyxNQUFNLGdCQ3hkVCxlQUNJLFFBQU8sTTFCMEhWO0VBQ0csZ0JBQUE7RUFDQSxZQUFBOztBQUVKLE95QnlWRyxNQUFNLGdCQ3hkVCxlQUNJLFFBQU8sTTFCOEhWO0VBQ0csZ0JBQUE7RUFDQSxZQUFBOztBQUVKLE95QnFWRyxNQUFNLGdCQ3hkVCxlQUNJLFFBQU8sTTFCa0lWO0FBQ0QsT3lCb1ZHLE1BQU0sZ0JDeGRULGVBQ0ksUUFBTyxNMUJtSVY7QUFDRCxRQUFRLFVBQVcsUXlCbVZoQixNQUFNLGdCQ3hkVCxlQUNJLFFBQU87RTFCcUlQLG1CQUFBO0VBQ0Esb0JBQUE7RUg1Q0osWUFBQTs7QTZCbERBLE9EK2FHLE1BQU0sZ0JDL2FSO0VBQ0csVUFBQTs7QUR5ZFIsT0FBTyxNQUFNO0U1QnhhVCxtQkFBQTtFQUFBLHlCQUFBO0VBQUEsYUFBQTtFQUFBLFdBQUE7RUFBQSx5Q0FBQTtFQUFBLE1BQUE7RUFBQSxRQUFBO0VBQUEsU0FBQTtFQUFBLE9BQUE7RTZCdkRBLGFBQUE7RUFDQSxVQUFBO0U3QnNEQSxlQUFBO0VBQUEsYUFBQTtFQUFBLCtCQUFBOztBNEJ3YUosT0FBTyxNQUFNLGdCQ2pYVCxjQUNJLFNBQVE7RTdCeERaLGdCQUFBOztBQTdIQSxPNEJxaUJHLE1BQU0sZ0JDalhULGNBQ0ksU0FBUSxRN0JyTFg7QUFDRCxPNEJvaUJHLE1BQU0sZ0JDalhULGNBQ0ksU0FBUSxRN0JwTFg7RUFDRyxTQUFTLEVBQVQ7RUFDQSxjQUFBOztBQUVKLE80QmdpQkcsTUFBTSxnQkNqWFQsY0FDSSxTQUFRLFE3QmhMWDtFQUNHLFdBQUE7O0E0QitoQlIsT0FBTyxNQUFNLGdCQ2pYVCxjQUNJLFNBQVEsUW5CaEpaO0VBQ0ksV0FBQTs7QWtCK2ZSLE9BQU8sTUFBTSxnQkNqWFQsY0FDSSxTQUFRLFFuQnBPWjtBa0JvbEJKLE9BQU8sTUFBTSxnQkNqWFQsY0FDSSxTQUFRLFFuQm5PWjtFQUNJLHFCQUFBOztBa0JrbEJSLE9BQU8sTUFBTSxnQkNqWFQsY0FDSSxTQUFRLFFuQnBPWixTQU1JLEVBQUM7QWtCOGtCVCxPQUFPLE1BQU0sZ0JDalhULGNBQ0ksU0FBUSxRbkJuT1osV0FLSSxFQUFDO0VBQ0cscUJBQUE7O0FrQjZrQlosT0FBTyxNQUFNLGdCQ2pYVCxjQUNJLFNBQVEsUW5Cek5aLFNBQ0k7RVZnS0osaUJBQUE7O0E0QndhSixPQUFPLE1BQU0sZ0JDalhULGNBQ0ksU0FBUSxRbkJqTlosV0FJSSxFQUFDO0VWcUpMLGVBQUE7O0E0QndhSixPQUFPLE1BQU0sZ0JDcGhCVDtFN0I0R0EsZ0JBQUE7RUFBQSxtQkFBQTs7QTRCd2FKLE9BQU8sTUFBTSxnQkNwaEJULGNBRUk7RTlCL0RKLGlCQUFBO0VDeUtBLGdCQUFBO0VBQUEsZ0JBQUE7RUE1TEEsa0JBQUE7RUFPQSxtQkFBQTs7QTRCNmxCSixPQUFPLE1BQU0sZ0JDbmdCVCxlQUNJLFFBQU87RTdCMEZYLGtCQUFBO0VBQUEscUJBQUE7RUdvQkEsc0JBQUE7RUFDQSxnQkFBQTtFQUNBLFNBQUE7RUFDQSxTQUFBO0VBQ0EsVUFBQTtFQUNBLDRCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxpQkFBQTtFQUNBLHFCQUFBO0VBQ0Esb0JBQUE7RUg3QkEsZ0JBQUE7RUFBQSxTQUFBO0VBQUEsV0FBQTs7QTRCd2FKLE9BQU8sTUFBTSxnQkNuZ0JULGVBQ0ksUUFBTyxNaEJrS1g7RWI1TkEsa0JBQUE7RUFDQSxVQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxVQUFBO0VBQ0EsZ0JBQUE7RUFDQSxNQUFNLGdCQUFOO0VBQ0EsU0FBQTs7QWF2QkEsT2U0a0JHLE1BQU0sZ0JDbmdCVCxlQUNJLFFBQU8sTWhCMUVWO0Vib0tELGFDdExhLG1CRHNMYjtFQUFBLFNjd25CVSxPZHhuQlY7RUFBQSxlQUFBO0VBQUEsaUJBQUE7RUFBQSxjQUFBO0VhNklBLGdCQUFBO0VBQ0EsV0FBQTtFQUNBLG1CQUFBO0VBQ0EsbUNBQUE7RUFDQSxxQkFBQTtFYmpKQSxtQkFBQTtFYW1KQSxrQkFBQTtFYm5KQSxTQUFBOztBYXhKSSxPZWdrQkQsTUFBTSxnQkNuZ0JULGVBQ0ksUUFBTyxNaEIvRFYsTUFDSTtFYndKTCxjQUFBOztBYW5KSSxPZTJqQkQsTUFBTSxnQkNuZ0JULGVBQ0ksUUFBTyxNaEIxRFYsT0FDSTtFYm1KTCxjQUFBOztBRytCQSxPeUJ5WUcsTUFBTSxnQkNuZ0JULGVBQ0ksUUFBTyxNMUJ5SFY7QUFDRCxPeUJ3WUcsTUFBTSxnQkNuZ0JULGVBQ0ksUUFBTyxNMUIwSFY7RUFDRyxnQkFBQTtFQUNBLFlBQUE7O0FBRUosT3lCb1lHLE1BQU0sZ0JDbmdCVCxlQUNJLFFBQU8sTTFCOEhWO0VBQ0csZ0JBQUE7RUFDQSxZQUFBOztBQUVKLE95QmdZRyxNQUFNLGdCQ25nQlQsZUFDSSxRQUFPLE0xQmtJVjtBQUNELE95QitYRyxNQUFNLGdCQ25nQlQsZUFDSSxRQUFPLE0xQm1JVjtBQUNELFFBQVEsVUFBVyxReUI4WGhCLE1BQU0sZ0JDbmdCVCxlQUNJLFFBQU87RTFCcUlQLG1CQUFBO0VBQ0Esb0JBQUE7RUg1Q0osWUFBQTs7QTZCbERBLE9EMGRHLE1BQU0sZ0JDMWRSO0VBQ0csVUFBQTs7QURrZ0JSLE9BQU8sTUFBTTtFNUJqZFQsbUJBQUE7RUFBQSx5QkFBQTtFQUFBLGFBQUE7RUFBQSxXQUFBO0VBQUEseUNBQUE7RUFBQSxNQUFBO0VBQUEsUUFBQTtFQUFBLFNBQUE7RUFBQSxPQUFBO0U2QnZEQSxhQUFBO0VBQ0EsVUFBQTtFN0JzREEsZUFBQTtFQUFBLGFBQUE7RUFBQSwrQkFBQTs7QTRCaWRKLE9BQU8sTUFBTSxnQkM3akJUO0U3QjRHQSxnQkFBQTtFQUFBLG1CQUFBOztBNEJpZEosT0FBTyxNQUFNLGdCQzdqQlQsY0FFSTtFOUIvREosaUJBQUE7RUN5S0EsZ0JBQUE7RUFBQSxnQkFBQTtFQTVMQSxrQkFBQTtFQU9BLG1CQUFBOztBNEJzb0JKLE9BQU8sTUFBTSxnQkM1aUJULGVBQ0ksUUFBTztFN0IwRlgsa0JBQUE7RUFBQSxTQUFBO0VBQUEsV0FBQTs7QTZCbERBLE9EbWdCRyxNQUFNLGdCQ25nQlI7RUFDRyxVQUFBOztBRHdpQlIsT0FBTyxNQUFNO0U1QnZmVCxtQkFBQTtFQUFBLHlCQUFBO0VBQUEsYUFBQTtFQUFBLFdBQUE7RUFBQSx5Q0FBQTtFQUFBLE1BQUE7RUFBQSxRQUFBO0VBQUEsU0FBQTtFQUFBLE9BQUE7RTZCdkRBLGFBQUE7RUFDQSxVQUFBO0U3QnNEQSxlQUFBO0VBQUEsYUFBQTtFQUFBLCtCQUFBOztBNEJ1ZkosT0FBTyxNQUFNLGdCQ25tQlQ7RTdCNEdBLGdCQUFBO0VBQUEsbUJBQUE7O0E0QnVmSixPQUFPLE1BQU0sZ0JDbm1CVCxjQUVJO0U5Qi9ESixpQkFBQTtFQ3lLQSxnQkFBQTtFQUFBLGdCQUFBO0VBNUxBLGtCQUFBO0VBT0EsbUJBQUE7O0E0QjRxQkosT0FBTyxNQUFNLGdCQ2xsQlQsZUFDSSxRQUFPO0U3QjBGWCxrQkFBQTtFQUFBLHFCQUFBO0VHb0JBLHNCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxTQUFBO0VBQ0EsU0FBQTtFQUNBLFVBQUE7RUFDQSw0QkFBQTtFQUNBLGdCQUFBO0VBQ0EsaUJBQUE7RUFDQSxxQkFBQTtFQUNBLG9CQUFBO0VIN0JBLGdCQUFBO0VBQUEsU0FBQTtFQUFBLFdBQUE7O0FhcEtBLE9lMnBCRyxNQUFNLGdCQ2xsQlQsZUFDSSxRQUFPLE1oQjFFVjtFYm9LRCxhQ3RMYSxtQkRzTGI7RUFBQSxTY3FuQlksT2RybkJaO0VBQUEsZUFBQTtFQUFBLGlCQUFBO0VBQUEsY0FBQTtFYTZJQSxnQkFBQTtFQUNBLFdBQUE7RUFDQSxtQkFBQTtFQUNBLG1DQUFBO0VBQ0EscUJBQUE7RWJqSkEsc0JBQUE7RWFtSkEsa0JBQUE7RWJuSkEsU0FBQTs7QWF4SkksT2Urb0JELE1BQU0sZ0JDbGxCVCxlQUNJLFFBQU8sTWhCL0RWLE1BQ0k7RWJ3SkwsY0FBQTs7QWFuSkksT2Uwb0JELE1BQU0sZ0JDbGxCVCxlQUNJLFFBQU8sTWhCMURWLE9BQ0k7RWJtSkwsY0FBQTs7QUcrQkEsT3lCd2RHLE1BQU0sZ0JDbGxCVCxlQUNJLFFBQU8sTTFCeUhWO0FBQ0QsT3lCdWRHLE1BQU0sZ0JDbGxCVCxlQUNJLFFBQU8sTTFCMEhWO0VBQ0csZ0JBQUE7RUFDQSxZQUFBOztBQUVKLE95Qm1kRyxNQUFNLGdCQ2xsQlQsZUFDSSxRQUFPLE0xQjhIVjtFQUNHLGdCQUFBO0VBQ0EsWUFBQTs7QUFFSixPeUIrY0csTUFBTSxnQkNsbEJULGVBQ0ksUUFBTyxNMUJrSVY7QUFDRCxPeUI4Y0csTUFBTSxnQkNsbEJULGVBQ0ksUUFBTyxNMUJtSVY7QUFDRCxRQUFRLFVBQVcsUXlCNmNoQixNQUFNLGdCQ2xsQlQsZUFDSSxRQUFPO0UxQnFJUCxtQkFBQTtFQUNBLG9CQUFBO0VINUNKLFlBQUE7O0E2QmxEQSxPRHlpQkcsTUFBTSxnQkN6aUJSO0VBQ0csVUFBQTs7QURvbEJSLE9BQU8sTUFBTTtFNUJuaUJULG1CQUFBO0VBQUEseUJBQUE7RUFBQSxhQUFBO0VBQUEsV0FBQTtFQUFBLHlDQUFBO0VBQUEsTUFBQTtFQUFBLFFBQUE7RUFBQSxTQUFBO0VBQUEsT0FBQTtFNkJ2REEsYUFBQTtFQUNBLFVBQUE7RTdCc0RBLGVBQUE7RUFBQSxhQUFBO0VBQUEsK0JBQUE7O0E0Qm1pQkosT0FBTyxNQUFNLGdCQy9vQlQ7RTdCNEdBLGdCQUFBO0VBQUEsbUJBQUE7O0E0Qm1pQkosT0FBTyxNQUFNLGdCQy9vQlQsY0FFSTtFOUIvREosaUJBQUE7RUN5S0EsZ0JBQUE7RUFBQSxnQkFBQTtFQTVMQSxrQkFBQTtFQU9BLG1CQUFBOztBNEJ3dEJKLE9BQU8sTUFBTSxnQkM5bkJULGVBQ0ksUUFBTztFN0IwRlgsa0JBQUE7RUFBQSxxQkFBQTtFR29CQSxzQkFBQTtFQUNBLGdCQUFBO0VBQ0EsU0FBQTtFQUNBLFNBQUE7RUFDQSxVQUFBO0VBQ0EsNEJBQUE7RUFDQSxnQkFBQTtFQUNBLGlCQUFBO0VBQ0EscUJBQUE7RUFDQSxvQkFBQTtFSDdCQSxnQkFBQTtFQUFBLFNBQUE7RUFBQSxXQUFBOztBNEJtaUJKLE9BQU8sTUFBTSxnQkM5bkJULGVBQ0ksUUFBTyxNaEJrS1g7RWI1TkEsa0JBQUE7RUFDQSxVQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxVQUFBO0VBQ0EsZ0JBQUE7RUFDQSxNQUFNLGdCQUFOO0VBQ0EsU0FBQTs7QWF2QkEsT2V1c0JHLE1BQU0sZ0JDOW5CVCxlQUNJLFFBQU8sTWhCMUVWO0Vib0tELGFDdExhLG1CRHNMYjtFQUFBLFNjd25CVSxPZHhuQlY7RUFBQSxlQUFBO0VBQUEsaUJBQUE7RUFBQSxjQUFBO0VhNklBLGdCQUFBO0VBQ0EsV0FBQTtFQUNBLG1CQUFBO0VBQ0EsbUNBQUE7RUFDQSxxQkFBQTtFYmpKQSxtQkFBQTtFYW1KQSxrQkFBQTtFYm5KQSxTQUFBOztBYXhKSSxPZTJyQkQsTUFBTSxnQkM5bkJULGVBQ0ksUUFBTyxNaEIvRFYsTUFDSTtFYndKTCxjQUFBOztBYW5KSSxPZXNyQkQsTUFBTSxnQkM5bkJULGVBQ0ksUUFBTyxNaEIxRFYsT0FDSTtFYm1KTCxjQUFBOztBRytCQSxPeUJvZ0JHLE1BQU0sZ0JDOW5CVCxlQUNJLFFBQU8sTTFCeUhWO0FBQ0QsT3lCbWdCRyxNQUFNLGdCQzluQlQsZUFDSSxRQUFPLE0xQjBIVjtFQUNHLGdCQUFBO0VBQ0EsWUFBQTs7QUFFSixPeUIrZkcsTUFBTSxnQkM5bkJULGVBQ0ksUUFBTyxNMUI4SFY7RUFDRyxnQkFBQTtFQUNBLFlBQUE7O0FBRUosT3lCMmZHLE1BQU0sZ0JDOW5CVCxlQUNJLFFBQU8sTTFCa0lWO0FBQ0QsT3lCMGZHLE1BQU0sZ0JDOW5CVCxlQUNJLFFBQU8sTTFCbUlWO0FBQ0QsUUFBUSxVQUFXLFF5QnlmaEIsTUFBTSxnQkM5bkJULGVBQ0ksUUFBTztFMUJxSVAsbUJBQUE7RUFDQSxvQkFBQTtFSDVDSixZQUFBOztBNkJsREEsT0RxbEJHLE1BQU0sZ0JDcmxCUjtFQUNHLFVBQUE7O0FEd2xCUixPQUFPLFFBQVEsa0JBQWtCO0U1QnZpQjdCLGdDQUFBO0U2QnJDQSxlQUFBO0VBQ0EsTUFBQTtFQUNBLFFBQUE7RUFDQSxTQUFBO0VBQ0EsT0FBQTtFN0JpQ0EsbUJBQUE7RUFBQSxhQUFBO0U2QjlCQSxVQUFBOztBQUNBLE9Eb2tCRyxRQUFRLGtCQUFrQixPQ3BrQjVCO0VBQ0csWUFBQTtFQUNBLHlCQUFBOztBQ3RFUjtFQ3JGSSxnQkFBQTs7QUFDQSxrQkFBQztFQXlKRCxxQkFBQTtFQUNBLGE5QjNKYSxtQjhCMkpiO0VBQ0Esa0JBQUE7RUFDQSxlQUFBO0VBQ0EsaUJBQUE7RUFDQSxZQUFBO0VBQ0EsV0FBQTtFQUNBLG1CQUFBO0VBQ0EsbUNBQUE7RUFDQSxjQUFBO0VBQ0EsbUJBQUE7RUFnRUEsU2pCeWpCUSxRQUFBLFFBQUEsUUFBQSxRQUFBLE9pQnpqQlI7RUF4Tkksa0JBQUE7RUFDQSxVQUFBO0VBQ0EsY0FBQTs7QUR1RVIsa0JDckVJLE1BQUs7RS9Ca0JMLGtCQUFBO0VBQ0EsVUFBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0EsVUFBQTtFQUNBLGdCQUFBO0VBQ0EsTUFBTSxnQkFBTjtFQUNBLFNBQUE7O0ErQnBCWSxrQkFMWixNQUFLLGNBRUEsTUFFRyxRQUNLO0FBQUQsa0JBTFosTUFBSyxjQUdBLFFBQ0csUUFDSztFQUNHLFVBQUE7O0FEK0RwQixrQkMxREk7RUFDSSxrQkFBQTtFQUNBLGNBQUE7RUFDQSxlQUFBOztBRHVEUixrQkMxREksTUFJSTtFL0JHSixrQkFBQTtFQUNBLFVBQUE7RUFDQSxXQUFBO0VBQ0EsWUFBQTtFQUNBLFVBQUE7RUFDQSxnQkFBQTtFQUNBLE1BQU0sZ0JBQU47RUFDQSxTQUFBOztBK0JQSSxrQkFQSixNQU9LO0VBd0hMLHFCQUFBO0VBQ0EsYTlCM0phLG1COEIySmI7RUFDQSxrQkFBQTtFQUNBLGVBQUE7RUFDQSxpQkFBQTtFQUNBLFlBQUE7RUFDQSxXQUFBO0VBQ0EsbUJBQUE7RUFDQSxtQ0FBQTtFQUNBLGNBQUE7RUFDQSxtQkFBQTtFQTNIUSxVQUFBOztBQUdBLGtCQWpCUixNQWdCSyxNQUNJO0VBQ0csVUFBQTs7QUFHQSxrQkFyQlosTUFnQkssTUFJRyxRQUNLO0VBQ0csVUFBQTs7QURvQ3BCLGtCQ2tEUSxTQUFRO0VBQ0osVUFBQTs7QUFDQSxrQkFGSixTQUFRLENBRUg7RUEyRlQsU2pCeWpCUSxRQUFBLFFBQUEsUUFBQSxRQUFBLE9pQnpqQlI7O0FEL0lKLGtCQ2tEUSxTQUFRO0VBQ0osVUFBQTs7QUFDQSxrQkFGSixTQUFRLENBRUg7RUFrR1QsU2pCa2pCUSxRQUFBLFFBQUEsUUFBQSxPaUJsakJSOztBRHRKSixrQkNrRFEsU0FBUTtFQUNKLFVBQUE7O0FBQ0Esa0JBRkosU0FBUSxDQUVIO0VBeUdULFNqQjJpQlEsUUFBQSxRQUFBLE9pQjNpQlI7O0FEN0pKLGtCQ2tEUSxTQUFRO0VBQ0osVUFBQTs7QUFDQSxrQkFGSixTQUFRLENBRUg7RUFnSFQsU2pCb2lCUSxRQUFBLE9pQnBpQlI7O0FEcEtKLGtCQ2tEUSxTQUFRO0VBQ0osVUFBQTs7QUFDQSxrQkFGSixTQUFRLENBRUg7RUF1SFQsU2pCNmhCUSxPaUI3aEJSOztBRDlISjtFQ2xJSSxnQkFBQTs7QUFDQSxrQkFBQztFQXlKRCxxQkFBQTtFQUNBLGE5QjNKYSxtQjhCMkpiO0VBQ0Esa0JBQUE7RUFDQSxlQUFBO0VBQ0EsaUJBQUE7RUFDQSxZQUFBO0VBQ0EsV0FBQTtFQUNBLG1CQUFBO0VBQ0EsbUNBQUE7RUFDQSxjQUFBO0VBQ0EsbUJBQUE7RUEyQ0EsU2pCOGtCUSxRQUFBLFFBQUEsUUFBQSxRQUFBLFFBQUEsUUFBQSxRQUFBLE9pQjlrQlI7RUFuTUksa0JBQUE7RUFDQSxVQUFBO0VBQ0EsY0FBQTs7QURvSFIsa0JDbEhJLE1BQUs7RS9Ca0JMLGtCQUFBO0VBQ0EsVUFBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0EsVUFBQTtFQUNBLGdCQUFBO0VBQ0EsTUFBTSxnQkFBTjtFQUNBLFNBQUE7O0ErQnBCWSxrQkFMWixNQUFLLGNBRUEsTUFFRyxRQUNLO0FBQUQsa0JBTFosTUFBSyxjQUdBLFFBQ0csUUFDSztFQUNHLFVBQUE7O0FENEdwQixrQkN2R0k7RUFDSSxrQkFBQTtFQUNBLGNBQUE7RUFDQSxlQUFBOztBRG9HUixrQkN2R0ksTUFJSTtFL0JHSixrQkFBQTtFQUNBLFVBQUE7RUFDQSxXQUFBO0VBQ0EsWUFBQTtFQUNBLFVBQUE7RUFDQSxnQkFBQTtFQUNBLE1BQU0sZ0JBQU47RUFDQSxTQUFBOztBK0JQSSxrQkFQSixNQU9LO0VBd0hMLHFCQUFBO0VBQ0EsYTlCM0phLG1COEIySmI7RUFDQSxrQkFBQTtFQUNBLGVBQUE7RUFDQSxpQkFBQTtFQUNBLFlBQUE7RUFDQSxXQUFBO0VBQ0EsbUJBQUE7RUFDQSxtQ0FBQTtFQUNBLGNBQUE7RUFDQSxtQkFBQTtFQTNIUSxVQUFBOztBQUdBLGtCQWpCUixNQWdCSyxNQUNJO0VBQ0csVUFBQTs7QUFHQSxrQkFyQlosTUFnQkssTUFJRyxRQUNLO0VBQ0csVUFBQTs7QURpRnBCLGtCQ0tRLFNBQVE7RUFDSixVQUFBOztBQUNBLGtCQUZKLFNBQVEsQ0FFSDtFQXNFVCxTakI4a0JRLFFBQUEsUUFBQSxRQUFBLFFBQUEsUUFBQSxRQUFBLFFBQUEsT2lCOWtCUjs7QUQ3RUosa0JDS1EsU0FBUTtFQUNKLFVBQUE7O0FBQ0Esa0JBRkosU0FBUSxDQUVIO0VBNkVULFNqQnVrQlEsUUFBQSxRQUFBLFFBQUEsUUFBQSxRQUFBLFFBQUEsT2lCdmtCUjs7QURwRkosa0JDS1EsU0FBUTtFQUNKLFVBQUE7O0FBQ0Esa0JBRkosU0FBUSxDQUVIO0VBb0ZULFNqQmdrQlEsUUFBQSxRQUFBLFFBQUEsUUFBQSxRQUFBLE9pQmhrQlI7O0FEM0ZKLGtCQ0tRLFNBQVE7RUFDSixVQUFBOztBQUNBLGtCQUZKLFNBQVEsQ0FFSDtFQTJGVCxTakJ5akJRLFFBQUEsUUFBQSxRQUFBLFFBQUEsT2lCempCUjs7QURsR0osa0JDS1EsU0FBUTtFQUNKLFVBQUE7O0FBQ0Esa0JBRkosU0FBUSxDQUVIO0VBa0dULFNqQmtqQlEsUUFBQSxRQUFBLFFBQUEsT2lCbGpCUjs7QUR6R0osa0JDS1EsU0FBUTtFQUNKLFVBQUE7O0FBQ0Esa0JBRkosU0FBUSxDQUVIO0VBeUdULFNqQjJpQlEsUUFBQSxRQUFBLE9pQjNpQlI7O0FEaEhKLGtCQ0tRLFNBQVE7RUFDSixVQUFBOztBQUNBLGtCQUZKLFNBQVEsQ0FFSDtFQWdIVCxTakJvaUJRLFFBQUEsT2lCcGlCUjs7QUR2SEosa0JDS1EsU0FBUTtFQUNKLFVBQUE7O0FBQ0Esa0JBRkosU0FBUSxDQUVIO0VBdUhULFNqQjZoQlEsT2lCN2hCUjs7QUR2Rko7RUN6S0ksZ0JBQUE7O0FBQ0Esa0JBQUM7RUF5SkQscUJBQUE7RUFDQSxhOUIzSmEsbUI4QjJKYjtFQUNBLGtCQUFBO0VBQ0EsZUFBQTtFQUNBLGlCQUFBO0VBQ0EsWUFBQTtFQUNBLFdBQUE7RUFDQSxtQkFBQTtFQUNBLG1DQUFBO0VBQ0EsY0FBQTtFQUNBLG1CQUFBO0VBZ0VBLFNqQnlqQlEsUUFBQSxRQUFBLFFBQUEsUUFBQSxPaUJ6akJSO0VBeE5JLGtCQUFBO0VBQ0EsVUFBQTtFQUNBLGNBQUE7O0FEMkpSLGtCQ3pKSSxNQUFLO0UvQmtCTCxrQkFBQTtFQUNBLFVBQUE7RUFDQSxXQUFBO0VBQ0EsWUFBQTtFQUNBLFVBQUE7RUFDQSxnQkFBQTtFQUNBLE1BQU0sZ0JBQU47RUFDQSxTQUFBOztBK0JwQlksa0JBTFosTUFBSyxjQUVBLE1BRUcsUUFDSztBQUFELGtCQUxaLE1BQUssY0FHQSxRQUNHLFFBQ0s7RUFDRyxVQUFBOztBRG1KcEIsa0JDOUlJO0VBQ0ksa0JBQUE7RUFDQSxjQUFBO0VBQ0EsZUFBQTs7QUQySVIsa0JDOUlJLE1BSUk7RS9CR0osa0JBQUE7RUFDQSxVQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxVQUFBO0VBQ0EsZ0JBQUE7RUFDQSxNQUFNLGdCQUFOO0VBQ0EsU0FBQTs7QStCUEksa0JBUEosTUFPSztFQXdITCxxQkFBQTtFQUNBLGE5QjNKYSxtQjhCMkpiO0VBQ0Esa0JBQUE7RUFDQSxlQUFBO0VBQ0EsaUJBQUE7RUFDQSxZQUFBO0VBQ0EsV0FBQTtFQUNBLG1CQUFBO0VBQ0EsbUNBQUE7RUFDQSxjQUFBO0VBQ0EsbUJBQUE7RUEzSFEsVUFBQTs7QUFHQSxrQkFqQlIsTUFnQkssTUFDSTtFQUNHLFVBQUE7O0FBR0Esa0JBckJaLE1BZ0JLLE1BSUcsUUFDSztFQUNHLFVBQUE7O0FEd0hwQixrQkNsQ1EsU0FBUTtFQUNKLFVBQUE7O0FBQ0Esa0JBRkosU0FBUSxDQUVIO0VBMkZULFNqQnlqQlEsUUFBQSxRQUFBLFFBQUEsUUFBQSxPaUJ6akJSOztBRDNESixrQkNsQ1EsU0FBUTtFQUNKLFVBQUE7O0FBQ0Esa0JBRkosU0FBUSxDQUVIO0VBa0dULFNqQmtqQlEsUUFBQSxRQUFBLFFBQUEsT2lCbGpCUjs7QURsRUosa0JDbENRLFNBQVE7RUFDSixVQUFBOztBQUNBLGtCQUZKLFNBQVEsQ0FFSDtFQXlHVCxTakIyaUJRLFFBQUEsUUFBQSxPaUIzaUJSOztBRHpFSixrQkNsQ1EsU0FBUTtFQUNKLFVBQUE7O0FBQ0Esa0JBRkosU0FBUSxDQUVIO0VBZ0hULFNqQm9pQlEsUUFBQSxPaUJwaUJSOztBRGhGSixrQkNsQ1EsU0FBUTtFQUNKLFVBQUE7O0FBQ0Esa0JBRkosU0FBUSxDQUVIO0VBdUhULFNqQjZoQlEsT2lCN2hCUjs7QURuREo7RUM3TUksZ0JBQUE7O0FBQ0Esa0JBQUM7RUF5SkQscUJBQUE7RUFDQSxhOUIzSmEsbUI4QjJKYjtFQUNBLGtCQUFBO0VBQ0EsZUFBQTtFQUNBLGlCQUFBO0VBQ0EsWUFBQTtFQUNBLFdBQUE7RUFDQSxtQkFBQTtFQUNBLG1DQUFBO0VBQ0EsY0FBQTtFQUNBLG1CQUFBO0VBZ0VBLFNqQm9qQmlCLFFBQUEsUUFBQSxRQUFBLFFBQUEsT2lCcGpCakI7RUF4Tkksa0JBQUE7RUFDQSxVQUFBO0VBQ0EsY0FBQTs7QUQrTFIsa0JDN0xJLE1BQUs7RS9Ca0JMLGtCQUFBO0VBQ0EsVUFBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0EsVUFBQTtFQUNBLGdCQUFBO0VBQ0EsTUFBTSxnQkFBTjtFQUNBLFNBQUE7O0ErQnBCWSxrQkFMWixNQUFLLGNBRUEsTUFFRyxRQUNLO0FBQUQsa0JBTFosTUFBSyxjQUdBLFFBQ0csUUFDSztFQUNHLFVBQUE7O0FEdUxwQixrQkNsTEk7RUFDSSxrQkFBQTtFQUNBLGNBQUE7RUFDQSxlQUFBOztBRCtLUixrQkNsTEksTUFJSTtFL0JHSixrQkFBQTtFQUNBLFVBQUE7RUFDQSxXQUFBO0VBQ0EsWUFBQTtFQUNBLFVBQUE7RUFDQSxnQkFBQTtFQUNBLE1BQU0sZ0JBQU47RUFDQSxTQUFBOztBK0JQSSxrQkFQSixNQU9LO0VBd0hMLHFCQUFBO0VBQ0EsYTlCM0phLG1COEIySmI7RUFDQSxrQkFBQTtFQUNBLGVBQUE7RUFDQSxpQkFBQTtFQUNBLFlBQUE7RUFDQSxXQUFBO0VBQ0EsbUJBQUE7RUFDQSxtQ0FBQTtFQUNBLGNBQUE7RUFDQSxtQkFBQTtFQTNIUSxVQUFBOztBQUdBLGtCQWpCUixNQWdCSyxNQUNJO0VBQ0csVUFBQTs7QUFHQSxrQkFyQlosTUFnQkssTUFJRyxRQUNLO0VBQ0csVUFBQTs7QUQ0SnBCLGtCQ3RFUSxTQUFRO0VBQ0osVUFBQTs7QUFDQSxrQkFGSixTQUFRLENBRUg7RUEyRlQsU2pCb2pCaUIsUUFBQSxRQUFBLFFBQUEsUUFBQSxPaUJwakJqQjs7QUR2Qkosa0JDdEVRLFNBQVE7RUFDSixVQUFBOztBQUNBLGtCQUZKLFNBQVEsQ0FFSDtFQWtHVCxTakI2aUJpQixRQUFBLFFBQUEsUUFBQSxPaUI3aUJqQjs7QUQ5Qkosa0JDdEVRLFNBQVE7RUFDSixVQUFBOztBQUNBLGtCQUZKLFNBQVEsQ0FFSDtFQXlHVCxTakJzaUJpQixRQUFBLFFBQUEsT2lCdGlCakI7O0FEckNKLGtCQ3RFUSxTQUFRO0VBQ0osVUFBQTs7QUFDQSxrQkFGSixTQUFRLENBRUg7RUFnSFQsU2pCK2hCaUIsUUFBQSxPaUIvaEJqQjs7QUQ1Q0osa0JDdEVRLFNBQVE7RUFDSixVQUFBOztBQUNBLGtCQUZKLFNBQVEsQ0FFSDtFQXVIVCxTakJ3aEJpQixPaUJ4aEJqQjs7QURYSixrQkFDSSxTQUFRLE9BQU87RUN0UGYsZ0JBQUE7O0FBQ0Esa0JEcVBBLFNBQVEsT0FBTyxLQ3JQZDtFQXlKRCxxQkFBQTtFQUNBLGE5QjNKYSxtQjhCMkpiO0VBQ0Esa0JBQUE7RUFDQSxlQUFBO0VBQ0EsaUJBQUE7RUFDQSxZQUFBO0VBQ0EsV0FBQTtFQUNBLG1CQUFBO0VBQ0EsbUNBQUE7RUFDQSxjQUFBO0VBQ0EsbUJBQUE7RUFnRUEsU2pCeWpCUSxRQUFBLFFBQUEsUUFBQSxRQUFBLE9pQnpqQlI7RUF4Tkksa0JBQUE7RUFDQSxVQUFBO0VBQ0EsY0FBQTs7QUR1T1Isa0JBQ0ksU0FBUSxPQUFPLEtDdE9mLE1BQUs7RS9Ca0JMLGtCQUFBO0VBQ0EsVUFBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0EsVUFBQTtFQUNBLGdCQUFBO0VBQ0EsTUFBTSxnQkFBTjtFQUNBLFNBQUE7O0ErQnBCWSxrQkRpT1osU0FBUSxPQUFPLEtDdE9mLE1BQUssY0FFQSxNQUVHLFFBQ0s7QUFBRCxrQkRpT1osU0FBUSxPQUFPLEtDdE9mLE1BQUssY0FHQSxRQUNHLFFBQ0s7RUFDRyxVQUFBOztBRCtOcEIsa0JBQ0ksU0FBUSxPQUFPLEtDM05mO0VBQ0ksa0JBQUE7RUFDQSxjQUFBO0VBQ0EsZUFBQTs7QUR1TlIsa0JBQ0ksU0FBUSxPQUFPLEtDM05mLE1BSUk7RS9CR0osa0JBQUE7RUFDQSxVQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxVQUFBO0VBQ0EsZ0JBQUE7RUFDQSxNQUFNLGdCQUFOO0VBQ0EsU0FBQTs7QStCUEksa0JEb05KLFNBQVEsT0FBTyxLQzNOZixNQU9LO0VBd0hMLHFCQUFBO0VBQ0EsYTlCM0phLG1COEIySmI7RUFDQSxrQkFBQTtFQUNBLGVBQUE7RUFDQSxpQkFBQTtFQUNBLFlBQUE7RUFDQSxXQUFBO0VBQ0EsbUJBQUE7RUFDQSxtQ0FBQTtFQUNBLGNBQUE7RUFDQSxtQkFBQTtFQTNIUSxVQUFBOztBQUdBLGtCRDBNUixTQUFRLE9BQU8sS0MzTmYsTUFnQkssTUFDSTtFQUNHLFVBQUE7O0FBR0Esa0JEc01aLFNBQVEsT0FBTyxLQzNOZixNQWdCSyxNQUlHLFFBQ0s7RUFDRyxVQUFBOztBRG9NcEIsa0JBQ0ksU0FBUSxPQUFPLEtDL0dYLFNBQVE7RUFDSixVQUFBOztBQUNBLGtCRDZHUixTQUFRLE9BQU8sS0MvR1gsU0FBUSxDQUVIO0VBMkZULFNqQnlqQlEsUUFBQSxRQUFBLFFBQUEsUUFBQSxPaUJ6akJSOztBRGlCSixrQkFDSSxTQUFRLE9BQU8sS0MvR1gsU0FBUTtFQUNKLFVBQUE7O0FBQ0Esa0JENkdSLFNBQVEsT0FBTyxLQy9HWCxTQUFRLENBRUg7RUFrR1QsU2pCa2pCUSxRQUFBLFFBQUEsUUFBQSxPaUJsakJSOztBRFVKLGtCQUNJLFNBQVEsT0FBTyxLQy9HWCxTQUFRO0VBQ0osVUFBQTs7QUFDQSxrQkQ2R1IsU0FBUSxPQUFPLEtDL0dYLFNBQVEsQ0FFSDtFQXlHVCxTakIyaUJRLFFBQUEsUUFBQSxPaUIzaUJSOztBREdKLGtCQUNJLFNBQVEsT0FBTyxLQy9HWCxTQUFRO0VBQ0osVUFBQTs7QUFDQSxrQkQ2R1IsU0FBUSxPQUFPLEtDL0dYLFNBQVEsQ0FFSDtFQWdIVCxTakJvaUJRLFFBQUEsT2lCcGlCUjs7QURKSixrQkFDSSxTQUFRLE9BQU8sS0MvR1gsU0FBUTtFQUNKLFVBQUE7O0FBQ0Esa0JENkdSLFNBQVEsT0FBTyxLQy9HWCxTQUFRLENBRUg7RUF1SFQsU2pCNmhCUSxPaUI3aEJSOztBRE9KO0VDaE1JLG1CQUFBO0VBQ0EsZ0JBQUE7O0FEK0xKLHlCQzdMSTtFQUNJLFlBQUE7RUFrQkEscUJBQUE7RUFDQSxzQkFBQTtFQUNBLGtCQUFBOztBQW5CQSx5QkFGSixlQUVLO0VBQ0csa0JBQUE7RUFDQSxVQUFBO0VBQ0EsTUFBQTtFQUNBLE9BQUE7RUFDQSxXQUFBO0VBOEZSLGNBQUE7RUFDQSxhOUJoTGEsbUI4QmdMYjtFQW9EQSxTakJ5akJRLFFBQUEsUUFBQSxRQUFBLFFBQUEsT2lCempCUjtFQWxEQSxrQkFBQTtFQUNBLGVBQUE7RUFDQSxpQkFBQTtFQUNBLFlBQUE7RUFDQSxxQkFBQTtFQUNBLFdBQUE7RUFDQSxtQkFBQTtFQUNBLG1DQUFBO0VBQ0EsY0FBQTs7QUQ2RUoseUJDN0xJLGVBc0JJO0VBQ0ksY0FBQTtFQUNBLGdCQUFBOztBQUNBLHlCQXpCUixlQXNCSSxPQUdLO0VBQ0csa0JBQUE7RUFDQSxVQUFBO0VBMEVaLGNBQUE7RUFDQSxhOUJoTGEsbUI4QmdMYjtFQW9EQSxTakJ5akJRLFFBQUEsUUFBQSxRQUFBLFFBQUEsT2lCempCUjtFQWxEQSxrQkFBQTtFQUNBLGVBQUE7RUFDQSxpQkFBQTtFQUNBLFlBQUE7RUFDQSxxQkFBQTtFQUNBLFdBQUE7RUFDQSxtQkFBQTtFQUNBLG1DQUFBO0VBQ0EsY0FBQTs7QUQ2RUoseUJDN0xJLGVBc0JJLE9BZ0JJO0UvQjlFUixrQkFBQTtFQUNBLFVBQUE7RUFDQSxXQUFBO0VBQ0EsWUFBQTtFQUNBLFVBQUE7RUFDQSxnQkFBQTtFQUNBLE1BQU0sZ0JBQU47RUFDQSxTQUFBOztBOEJrUEo7RUNwTkksbUJBQUE7RUFDQSxnQkFBQTs7QURtTkoseUJDak5JO0VBQ0ksWUFBQTtFQWtCQSxxQkFBQTtFQUNBLHNCQUFBO0VBQ0Esa0JBQUE7O0FBbkJBLHlCQUZKLGVBRUs7RUFDRyxrQkFBQTtFQUNBLFVBQUE7RUFDQSxNQUFBO0VBQ0EsT0FBQTtFQUNBLFdBQUE7RUE4RlIsY0FBQTtFQUNBLGE5QmhMYSxtQjhCZ0xiO0VBK0JBLFNqQjhrQlEsUUFBQSxRQUFBLFFBQUEsUUFBQSxRQUFBLFFBQUEsUUFBQSxPaUI5a0JSO0VBN0JBLGtCQUFBO0VBQ0EsZUFBQTtFQUNBLGlCQUFBO0VBQ0EsWUFBQTtFQUNBLHFCQUFBO0VBQ0EsV0FBQTtFQUNBLG1CQUFBO0VBQ0EsbUNBQUE7RUFDQSxjQUFBOztBRGlHSix5QkNqTkksZUFzQkk7RUFDSSxjQUFBO0VBQ0EsZ0JBQUE7O0FBQ0EseUJBekJSLGVBc0JJLE9BR0s7RUFDRyxrQkFBQTtFQUNBLFVBQUE7RUEwRVosY0FBQTtFQUNBLGE5QmhMYSxtQjhCZ0xiO0VBK0JBLFNqQjhrQlEsUUFBQSxRQUFBLFFBQUEsUUFBQSxRQUFBLFFBQUEsUUFBQSxPaUI5a0JSO0VBN0JBLGtCQUFBO0VBQ0EsZUFBQTtFQUNBLGlCQUFBO0VBQ0EsWUFBQTtFQUNBLHFCQUFBO0VBQ0EsV0FBQTtFQUNBLG1CQUFBO0VBQ0EsbUNBQUE7RUFDQSxjQUFBOztBRGlHSix5QkNqTkksZUFzQkksT0FnQkk7RS9COUVSLGtCQUFBO0VBQ0EsVUFBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0EsVUFBQTtFQUNBLGdCQUFBO0VBQ0EsTUFBTSxnQkFBTjtFQUNBLFNBQUE7O0E4QnlRSjtFQzNPSSxtQkFBQTtFQUNBLGdCQUFBOztBRDBPSix5QkN4T0k7RUFDSSxZQUFBO0VBa0JBLHFCQUFBO0VBQ0Esc0JBQUE7RUFDQSxrQkFBQTs7QUFuQkEseUJBRkosZUFFSztFQUNHLGtCQUFBO0VBQ0EsVUFBQTtFQUNBLE1BQUE7RUFDQSxPQUFBO0VBQ0EsV0FBQTtFQThGUixjQUFBO0VBQ0EsYTlCaExhLG1COEJnTGI7RUFvREEsU2pCeWpCUSxRQUFBLFFBQUEsUUFBQSxRQUFBLE9pQnpqQlI7RUFsREEsa0JBQUE7RUFDQSxlQUFBO0VBQ0EsaUJBQUE7RUFDQSxZQUFBO0VBQ0EscUJBQUE7RUFDQSxXQUFBO0VBQ0EsbUJBQUE7RUFDQSxtQ0FBQTtFQUNBLGNBQUE7O0FEd0hKLHlCQ3hPSSxlQXNCSTtFQUNJLGNBQUE7RUFDQSxnQkFBQTs7QUFDQSx5QkF6QlIsZUFzQkksT0FHSztFQUNHLGtCQUFBO0VBQ0EsVUFBQTtFQTBFWixjQUFBO0VBQ0EsYTlCaExhLG1COEJnTGI7RUFvREEsU2pCeWpCUSxRQUFBLFFBQUEsUUFBQSxRQUFBLE9pQnpqQlI7RUFsREEsa0JBQUE7RUFDQSxlQUFBO0VBQ0EsaUJBQUE7RUFDQSxZQUFBO0VBQ0EscUJBQUE7RUFDQSxXQUFBO0VBQ0EsbUJBQUE7RUFDQSxtQ0FBQTtFQUNBLGNBQUE7O0FEd0hKLHlCQ3hPSSxlQXNCSSxPQWdCSTtFL0I5RVIsa0JBQUE7RUFDQSxVQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxVQUFBO0VBQ0EsZ0JBQUE7RUFDQSxNQUFNLGdCQUFOO0VBQ0EsU0FBQTs7QThCZ1NKO0VDbFFJLG1CQUFBO0VBQ0EsZ0JBQUE7O0FEaVFKLHlCQy9QSTtFQUNJLFlBQUE7RUFrQkEscUJBQUE7RUFDQSxzQkFBQTtFQUNBLGtCQUFBOztBQW5CQSx5QkFGSixlQUVLO0VBQ0csa0JBQUE7RUFDQSxVQUFBO0VBQ0EsTUFBQTtFQUNBLE9BQUE7RUFDQSxXQUFBO0VBOEZSLGNBQUE7RUFDQSxhOUJoTGEsbUI4QmdMYjtFQW9EQSxTakJvakJpQixRQUFBLFFBQUEsUUFBQSxRQUFBLE9pQnBqQmpCO0VBbERBLGtCQUFBO0VBQ0EsZUFBQTtFQUNBLGlCQUFBO0VBQ0EsWUFBQTtFQUNBLHFCQUFBO0VBQ0EsV0FBQTtFQUNBLG1CQUFBO0VBQ0EsbUNBQUE7RUFDQSxjQUFBOztBRCtJSix5QkMvUEksZUFzQkk7RUFDSSxjQUFBO0VBQ0EsZ0JBQUE7O0FBQ0EseUJBekJSLGVBc0JJLE9BR0s7RUFDRyxrQkFBQTtFQUNBLFVBQUE7RUEwRVosY0FBQTtFQUNBLGE5QmhMYSxtQjhCZ0xiO0VBb0RBLFNqQm9qQmlCLFFBQUEsUUFBQSxRQUFBLFFBQUEsT2lCcGpCakI7RUFsREEsa0JBQUE7RUFDQSxlQUFBO0VBQ0EsaUJBQUE7RUFDQSxZQUFBO0VBQ0EscUJBQUE7RUFDQSxXQUFBO0VBQ0EsbUJBQUE7RUFDQSxtQ0FBQTtFQUNBLGNBQUE7O0FEK0lKLHlCQy9QSSxlQXNCSSxPQWdCSTtFL0I5RVIsa0JBQUE7RUFDQSxVQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxVQUFBO0VBQ0EsZ0JBQUE7RUFDQSxNQUFNLGdCQUFOO0VBQ0EsU0FBQTs7QThCc1RKO0VDeFJJLG1CQUFBO0VBQ0EsZ0JBQUE7O0FEdVJKLHlCQ3ZPSTtFL0J0RkEsa0JBQUE7RUFDQSxVQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxVQUFBO0VBQ0EsZ0JBQUE7RUFDQSxNQUFNLGdCQUFOO0VBQ0EsU0FBQTs7QThCc1RKLHlCQ3JSSTtFQUNJLFlBQUE7RUFrQkEscUJBQUE7RUFDQSxzQkFBQTtFQUNBLGtCQUFBOztBQW5CQSx5QkFGSixlQUVLO0VBQ0csa0JBQUE7RUFDQSxVQUFBO0VBQ0EsTUFBQTtFQUNBLE9BQUE7RUFDQSxXQUFBO0VBOEZSLGNBQUE7RUFDQSxhOUJoTGEsbUI4QmdMYjtFQW9EQSxTakJ5akJRLFFBQUEsUUFBQSxRQUFBLFFBQUEsT2lCempCUjtFQWxEQSxrQkFBQTtFQUNBLGVBQUE7RUFDQSxpQkFBQTtFQUNBLFlBQUE7RUFDQSxxQkFBQTtFQUNBLFdBQUE7RUFDQSxtQkFBQTtFQUNBLG1DQUFBO0VBQ0EsY0FBQTs7QURxS0oseUJDclJJLGVBc0JJO0VBQ0ksY0FBQTtFQUNBLGdCQUFBOztBQUNBLHlCQXpCUixlQXNCSSxPQUdLO0VBQ0csa0JBQUE7RUFDQSxVQUFBO0VBMEVaLGNBQUE7RUFDQSxhOUJoTGEsbUI4QmdMYjtFQW9EQSxTakJ5akJRLFFBQUEsUUFBQSxRQUFBLFFBQUEsT2lCempCUjtFQWxEQSxrQkFBQTtFQUNBLGVBQUE7RUFDQSxpQkFBQTtFQUNBLFlBQUE7RUFDQSxxQkFBQTtFQUNBLFdBQUE7RUFDQSxtQkFBQTtFQUNBLG1DQUFBO0VBQ0EsY0FBQTs7QURxS0oseUJDclJJLGVBc0JJLE9BZ0JJO0UvQjlFUixrQkFBQTtFQUNBLFVBQUE7RUFDQSxXQUFBO0VBQ0EsWUFBQTtFQUNBLFVBQUE7RUFDQSxnQkFBQTtFQUNBLE1BQU0sZ0JBQU47RUFDQSxTQUFBOztBOEI0VkoseUJBQ0k7RUMvVEEsbUJBQUE7RUFDQSxnQkFBQTs7QUQ2VEoseUJBQ0ksZ0JDNVRBO0VBQ0ksWUFBQTtFQWtCQSxxQkFBQTtFQUNBLHNCQUFBO0VBQ0Esa0JBQUE7O0FBbkJBLHlCRDBUSixnQkM1VEEsZUFFSztFQUNHLGtCQUFBO0VBQ0EsVUFBQTtFQUNBLE1BQUE7RUFDQSxPQUFBO0VBQ0EsV0FBQTtFQThGUixjQUFBO0VBQ0EsYTlCaExhLG1COEJnTGI7RUFvREEsU2pCeWpCUSxRQUFBLFFBQUEsUUFBQSxRQUFBLE9pQnpqQlI7RUFsREEsa0JBQUE7RUFDQSxlQUFBO0VBQ0EsaUJBQUE7RUFDQSxZQUFBO0VBQ0EscUJBQUE7RUFDQSxXQUFBO0VBQ0EsbUJBQUE7RUFDQSxtQ0FBQTtFQUNBLGNBQUE7O0FEMk1KLHlCQUNJLGdCQzVUQSxlQXNCSTtFQUNJLGNBQUE7RUFDQSxnQkFBQTs7QUFDQSx5QkRtU1IsZ0JDNVRBLGVBc0JJLE9BR0s7RUFDRyxrQkFBQTtFQUNBLFVBQUE7RUEwRVosY0FBQTtFQUNBLGE5QmhMYSxtQjhCZ0xiO0VBb0RBLFNqQnlqQlEsUUFBQSxRQUFBLFFBQUEsUUFBQSxPaUJ6akJSO0VBbERBLGtCQUFBO0VBQ0EsZUFBQTtFQUNBLGlCQUFBO0VBQ0EsWUFBQTtFQUNBLHFCQUFBO0VBQ0EsV0FBQTtFQUNBLG1CQUFBO0VBQ0EsbUNBQUE7RUFDQSxjQUFBOztBRDJNSix5QkFDSSxnQkM1VEEsZUFzQkksT0FnQkk7RS9COUVSLGtCQUFBO0VBQ0EsVUFBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0EsVUFBQTtFQUNBLGdCQUFBO0VBQ0EsTUFBTSxnQkFBTjtFQUNBLFNBQUE7O0E4QitXSjtFQ2pWSSxtQkFBQTtFQUNBLGdCQUFBOztBRGdWSix5QkM5VUk7RUFDSSxZQUFBO0VBa0JBLHFCQUFBO0VBQ0Esc0JBQUE7RUFDQSxrQkFBQTs7QUFuQkEseUJBRkosZUFFSztFQUNHLGtCQUFBO0VBQ0EsVUFBQTtFQUNBLE1BQUE7RUFDQSxPQUFBO0VBQ0EsV0FBQTtFQThGUixjQUFBO0VBQ0EsYTlCaExhLG1COEJnTGI7RUFvREEsU2pCeWpCUSxRQUFBLFFBQUEsUUFBQSxRQUFBLE9pQnpqQlI7RUFsREEsa0JBQUE7RUFDQSxlQUFBO0VBQ0EsaUJBQUE7RUFDQSxZQUFBO0VBQ0EscUJBQUE7RUFDQSxXQUFBO0VBQ0EsbUJBQUE7RUFDQSxtQ0FBQTtFQUNBLGNBQUE7O0FEOE5KLHlCQzlVSSxlQXNCSTtFQUNJLGNBQUE7RUFDQSxnQkFBQTs7QUFDQSx5QkF6QlIsZUFzQkksT0FHSztFQUNHLGtCQUFBO0VBQ0EsVUFBQTtFQTBFWixjQUFBO0VBQ0EsYTlCaExhLG1COEJnTGI7RUFvREEsU2pCeWpCUSxRQUFBLFFBQUEsUUFBQSxRQUFBLE9pQnpqQlI7RUFsREEsa0JBQUE7RUFDQSxlQUFBO0VBQ0EsaUJBQUE7RUFDQSxZQUFBO0VBQ0EscUJBQUE7RUFDQSxXQUFBO0VBQ0EsbUJBQUE7RUFDQSxtQ0FBQTtFQUNBLGNBQUE7O0FEOE5KLHlCQzlVSSxlQXNCSSxPQWdCSTtFL0I5RVIsa0JBQUE7RUFDQSxVQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxVQUFBO0VBQ0EsZ0JBQUE7RUFDQSxNQUFNLGdCQUFOO0VBQ0EsU0FBQTs7QThCK1dKLHlCQ2hTSTtFL0J0RkEsa0JBQUE7RUFDQSxVQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxVQUFBO0VBQ0EsZ0JBQUE7RUFDQSxNQUFNLGdCQUFOO0VBQ0EsU0FBQTs7QU94Q0o7RUFDSSxhQUFBOztBeUJxQko7RUMvQkksa0JBQUE7RUFDQSxVQUFBOztBakNnRUEsbUJBQUM7QUFDRCxtQkFBQztFQUNHLFNBQVMsRUFBVDtFQUNBLGNBQUE7O0FBRUosbUJBQUM7RUFDRyxXQUFBOztBZ0N4Q1IsbUJDN0JJLFFBQU87RUFDSCxXQUFBO0VBQ0EsV0FBQTs7QUQyQlIsbUJDN0JJLFFBQU8sTUFHSDtFQUNJLGNBQUE7RUFDQSxZQUFBO0VBQ0Esa0JBQUE7RUFDQSxVQUFBOztBRHNCWixtQkNuQkksUUFBTztFQUNILHNCQUFBO0VBRUEsWUFBQTtFQUNBLGdCQUFBO0VBQ0Esa0JBQUE7RUFDQSxXQUFBOztBakMrQ0osbUJpQ3JEQSxRQUFPLFFqQ3FETjtBQUNELG1CaUN0REEsUUFBTyxRakNzRE47RUFDRyxTQUFTLEVBQVQ7RUFDQSxjQUFBOztBQUVKLG1CaUMxREEsUUFBTyxRakMwRE47RUFDRyxXQUFBOztBaUNwREEsbUJBUEosUUFBTyxRQU9GO0VBQ0csY0FBQTs7QURXWixtQkNzQ0ksUUFBTztFQUNILGlCQUFBOztBRHZDUixtQkNzQ0ksUUFBTyxNQUVIO0VsQ2xESixpQkFBQTtFQ3lLQSxnQkFBQTtFQUFBLGlCQUFBO0VBQUEsY0FBQTtFQUFBLHFCQUFBO0VpQ3BHUSxZQUFBO0VBQ0EsMEJBQUE7RWpDbUdSLHlCQUFBO0VBQUEsbUJBQUE7RWlDaEdRLG1CQUFBOztBbENpQlIsbUJrQzFDQSxRQUFPLE1BRUgsVWxDd0NIO0VDK0VELGNBQUE7RUFBQSxxQkFBQTs7QUQzRUEsbUJrQzlDQSxRQUFPLE1BRUgsVWxDNENIO0VDMkVELGNBQUE7RUFBQSxxQkFBQTs7QUR2RUEsbUJrQ2xEQSxRQUFPLE1BRUgsVWxDZ0RIO0VDdUVELGNBQUE7RUFBQSxxQkFBQTs7QWlDOUZJLG1CQTNCSixRQUFPLE1BMkJGLElBQUksV0FBWSxVQUFTO0FBQzFCLG1CQTVCSixRQUFPLE1BNEJGLElBQUksV0FBWSxVQUFTO0VqQzZGOUIsbUJBQUE7O0FpQzFGSSxtQkEvQkosUUFBTyxNQStCRixJQUFJLFdBQVksVUFBUztBQUMxQixtQkFoQ0osUUFBTyxNQWdDRixPQUFRO0FBQ1QsbUJBakNKLFFBQU8sTUFpQ0YsT0FBUSxVQUFTO0FBQ2xCLG1CQWxDSixRQUFPLE1Ba0NGLE9BQVEsVUFBUztFakN1RnRCLG1CQUFBO0VBQUEsY0FBQTs7QWlDbkZJLG1CQXRDSixRQUFPLE1Bc0NGLE9BQVE7QUFDVCxtQkF2Q0osUUFBTyxNQXVDRixPQUFRLFVBQVM7RUFDZCxtQkFBQTs7QUQ5RVosbUJDaUZJLFFBQU87RWpDOEVQLG1CQUFBO0VpQzVFSSxnQkFBQTtFQUNBLDRCQUFBO0VBWUoseUJBQUE7O0FEOEhKO0VDN1BJLGtCQUFBO0VBQ0EsVUFBQTs7QWpDZ0VBLG1CQUFDO0FBQ0QsbUJBQUM7RUFDRyxTQUFTLEVBQVQ7RUFDQSxjQUFBOztBQUVKLG1CQUFDO0VBQ0csV0FBQTs7QWdDc0xSLG1CQzNQSSxRQUFPO0VBQ0gsV0FBQTtFQUNBLFdBQUE7O0FEeVBSLG1CQzNQSSxRQUFPLE1BR0g7RUFDSSxjQUFBO0VBQ0EsWUFBQTtFQUNBLGtCQUFBO0VBQ0EsVUFBQTs7QURvUFosbUJDalBJLFFBQU87RUFDSCxzQkFBQTtFQUVBLFlBQUE7RUFDQSxnQkFBQTtFQUNBLGtCQUFBO0VBQ0EsV0FBQTs7QWpDK0NKLG1CaUNyREEsUUFBTyxRakNxRE47QUFDRCxtQmlDdERBLFFBQU8sUWpDc0ROO0VBQ0csU0FBUyxFQUFUO0VBQ0EsY0FBQTs7QUFFSixtQmlDMURBLFFBQU8sUWpDMEROO0VBQ0csV0FBQTs7QWlDcERBLG1CQVBKLFFBQU8sUUFPRjtFQUNHLGNBQUE7O0FEeU9aLG1CQ3hMSSxRQUFPO0VBQ0gsaUJBQUE7O0FEdUxSLG1CQ3hMSSxRQUFPLE1BRUg7RWxDbERKLGlCQUFBO0VDeUtBLGdCQUFBO0VBQUEsaUJBQUE7RUFBQSxjQUFBO0VBQUEscUJBQUE7RWlDcEdRLFlBQUE7RUFDQSwwQkFBQTtFakNtR1IseUJBQUE7RUFBQSxtQkFBQTtFaUNoR1EsbUJBQUE7O0FsQ2lCUixtQmtDMUNBLFFBQU8sTUFFSCxVbEN3Q0g7RUMrRUQsY0FBQTtFQUFBLHFCQUFBOztBRDNFQSxtQmtDOUNBLFFBQU8sTUFFSCxVbEM0Q0g7RUMyRUQsY0FBQTtFQUFBLHFCQUFBOztBRHZFQSxtQmtDbERBLFFBQU8sTUFFSCxVbENnREg7RUN1RUQsY0FBQTtFQUFBLHFCQUFBOztBaUM5RkksbUJBM0JKLFFBQU8sTUEyQkYsSUFBSSxXQUFZLFVBQVM7QUFDMUIsbUJBNUJKLFFBQU8sTUE0QkYsSUFBSSxXQUFZLFVBQVM7RWpDNkY5QixtQkFBQTs7QWlDMUZJLG1CQS9CSixRQUFPLE1BK0JGLElBQUksV0FBWSxVQUFTO0FBQzFCLG1CQWhDSixRQUFPLE1BZ0NGLE9BQVE7QUFDVCxtQkFqQ0osUUFBTyxNQWlDRixPQUFRLFVBQVM7QUFDbEIsbUJBbENKLFFBQU8sTUFrQ0YsT0FBUSxVQUFTO0VqQ3VGdEIsbUJBQUE7RUFBQSxjQUFBOztBaUNuRkksbUJBdENKLFFBQU8sTUFzQ0YsT0FBUTtBQUNULG1CQXZDSixRQUFPLE1BdUNGLE9BQVEsVUFBUztFQUNkLG1CQUFBOztBRGdKWixtQkM3SUksUUFBTztFakM4RVAsbUJBQUE7RWlDNUVJLGdCQUFBO0VBQ0EsNEJBQUE7RUFtQkosU0FBQTtFQUNBLDZCQUFBOztBRHdKSjtFQ3BKSSxTQUFBO0VBQ0EsVUFBQTs7QURtSkosbUJDbEpJLFFBQU87RUFDSCxzQkFBQTtFQUNBLFdBQUE7RUFDQSxXQUFBOztBRCtJUixtQkNsSkksUUFBTyxNQUlIO0VBQ0ksY0FBQTs7QUQ2SVosbUJDMUlJLFFBQU87RUFFSCxzQkFBQTtFQUNBLFdBQUE7RUFDQSxTQUFBO0VBQ0EsY0FBQTs7QWpDekZKLG1CaUNvRkEsUUFBTyxRakNwRk47QUFDRCxtQmlDbUZBLFFBQU8sUWpDbkZOO0VBQ0csU0FBUyxFQUFUO0VBQ0EsY0FBQTs7QUFFSixtQmlDK0VBLFFBQU8sUWpDL0VOO0VBQ0csV0FBQTs7QWlDb0ZBLG1CQU5KLFFBQU8sUUFNRjtFQUNHLGNBQUE7O0FEbUlaLG1CQzlFUSxRQUFPO0VqQ25CWCxlQUFBOztBZ0NpR0osbUJDMUVJLFFBQU8sTUFDSDtFakN4QkosbUJBQUE7RUFBQSw2QkFBQTtFQUFBLCtCQUFBO0VBQUEsZ0NBQUE7RUFBQSw4QkFBQTtFaUM4QlEsWUFBQTtFQUNBLDBCQUFBO0VsQ3hNUixpQkFBQTtFQ3lLQSxnQkFBQTtFQUFBLGlCQUFBO0VBQUEsY0FBQTtFQUFBLHFCQUFBOztBRC9FQSxtQmtDc0dBLFFBQU8sTUFDSCxVbEN2R0g7RUMrRUQsY0FBQTtFQUFBLHFCQUFBOztBRDNFQSxtQmtDa0dBLFFBQU8sTUFDSCxVbENuR0g7RUMyRUQsY0FBQTtFQUFBLHFCQUFBOztBRHZFQSxtQmtDOEZBLFFBQU8sTUFDSCxVbEMvRkg7RUN1RUQsY0FBQTtFQUFBLHFCQUFBOztBaUNtREksbUJBNUJKLFFBQU8sTUE0QkYsSUFBSSxXQUFZLFVBQVM7QUFDMUIsbUJBN0JKLFFBQU8sTUE2QkYsSUFBSSxXQUFZLFVBQVM7RWpDcEQ5QixtQkFBQTs7QWlDdURJLG1CQWhDSixRQUFPLE1BZ0NGLElBQUksV0FBWSxVQUFTO0FBQzFCLG1CQWpDSixRQUFPLE1BaUNGLE9BQVE7QUFDVCxtQkFsQ0osUUFBTyxNQWtDRixPQUFRLFVBQVM7QUFDbEIsbUJBbkNKLFFBQU8sTUFtQ0YsT0FBUSxVQUFTO0VqQzFEdEIsbUJBQUE7RWlDNERRLG1CQUFBOztBRHFDWixtQkNsQ0ksUUFBTztFakMvRFAsbUJBQUE7RUFBQSx5QkFBQTtFQUFBLGVBQUE7RUFBQSw0QkFBQTs7QWdDNlVKLHdCQU40QztFQUN4QztJQ3RnQkEsa0JBQUE7SUFDQSxVQUFBOztFakNnRUEsbUJBQUM7RUFDRCxtQkFBQztJQUNHLFNBQVMsRUFBVDtJQUNBLGNBQUE7O0VBRUosbUJBQUM7SUFDRyxXQUFBOztFZ0MrYkosbUJDcGdCQSxRQUFPO0lBQ0gsV0FBQTtJQUNBLFdBQUE7O0VEa2dCSixtQkNwZ0JBLFFBQU8sTUFHSDtJQUNJLGNBQUE7SUFDQSxZQUFBO0lBQ0Esa0JBQUE7SUFDQSxVQUFBOztFRDZmUixtQkMxZkEsUUFBTztJQUNILHNCQUFBO0lBRUEsWUFBQTtJQUNBLGdCQUFBO0lBQ0Esa0JBQUE7SUFDQSxXQUFBOztFakMrQ0osbUJpQ3JEQSxRQUFPLFFqQ3FETjtFQUNELG1CaUN0REEsUUFBTyxRakNzRE47SUFDRyxTQUFTLEVBQVQ7SUFDQSxjQUFBOztFQUVKLG1CaUMxREEsUUFBTyxRakMwRE47SUFDRyxXQUFBOztFaUNwREEsbUJBUEosUUFBTyxRQU9GO0lBQ0csY0FBQTs7RURrZlIsbUJDamNBLFFBQU87SUFDSCxpQkFBQTs7RURnY0osbUJDamNBLFFBQU8sTUFFSDtJbENsREosaUJBQUE7SUN5S0EsZ0JBQUE7SUFBQSxpQkFBQTtJQUFBLGNBQUE7SUFBQSxxQkFBQTtJaUNwR1EsWUFBQTtJQUNBLDBCQUFBO0lqQ21HUix5QkFBQTtJQUFBLG1CQUFBO0lpQ2hHUSxtQkFBQTs7RWxDaUJSLG1Ca0MxQ0EsUUFBTyxNQUVILFVsQ3dDSDtJQytFRCxjQUFBO0lBQUEscUJBQUE7O0VEM0VBLG1Ca0M5Q0EsUUFBTyxNQUVILFVsQzRDSDtJQzJFRCxjQUFBO0lBQUEscUJBQUE7O0VEdkVBLG1Ca0NsREEsUUFBTyxNQUVILFVsQ2dESDtJQ3VFRCxjQUFBO0lBQUEscUJBQUE7O0VpQzlGSSxtQkEzQkosUUFBTyxNQTJCRixJQUFJLFdBQVksVUFBUztFQUMxQixtQkE1QkosUUFBTyxNQTRCRixJQUFJLFdBQVksVUFBUztJakM2RjlCLG1CQUFBOztFaUMxRkksbUJBL0JKLFFBQU8sTUErQkYsSUFBSSxXQUFZLFVBQVM7RUFDMUIsbUJBaENKLFFBQU8sTUFnQ0YsT0FBUTtFQUNULG1CQWpDSixRQUFPLE1BaUNGLE9BQVEsVUFBUztFQUNsQixtQkFsQ0osUUFBTyxNQWtDRixPQUFRLFVBQVM7SWpDdUZ0QixtQkFBQTtJQUFBLGNBQUE7O0VpQ25GSSxtQkF0Q0osUUFBTyxNQXNDRixPQUFRO0VBQ1QsbUJBdkNKLFFBQU8sTUF1Q0YsT0FBUSxVQUFTO0lBQ2QsbUJBQUE7O0VEeVpSLG1CQ3RaQSxRQUFPO0lqQzhFUCxtQkFBQTtJaUM1RUksZ0JBQUE7SUFDQSw0QkFBQTtJQVlKLHlCQUFBOzs7QURrWkosd0JBTjhDO0VBQzFDO0lDallBLFNBQUE7SUFDQSxVQUFBOztFRGdZQSxtQkMvWEEsUUFBTztJQUNILHNCQUFBO0lBQ0EsV0FBQTtJQUNBLFdBQUE7O0VENFhKLG1CQy9YQSxRQUFPLE1BSUg7SUFDSSxjQUFBOztFRDBYUixtQkN2WEEsUUFBTztJQUVILHNCQUFBO0lBQ0EsV0FBQTtJQUNBLFNBQUE7SUFDQSxjQUFBOztFakN6RkosbUJpQ29GQSxRQUFPLFFqQ3BGTjtFQUNELG1CaUNtRkEsUUFBTyxRakNuRk47SUFDRyxTQUFTLEVBQVQ7SUFDQSxjQUFBOztFQUVKLG1CaUMrRUEsUUFBTyxRakMvRU47SUFDRyxXQUFBOztFaUNvRkEsbUJBTkosUUFBTyxRQU1GO0lBQ0csY0FBQTs7RURnWFIsbUJDM1RJLFFBQU87SWpDbkJYLGVBQUE7O0VnQzhVQSxtQkN2VEEsUUFBTyxNQUNIO0lqQ3hCSixtQkFBQTtJQUFBLDZCQUFBO0lBQUEsK0JBQUE7SUFBQSxnQ0FBQTtJQUFBLDhCQUFBO0lpQzhCUSxZQUFBO0lBQ0EsMEJBQUE7SWxDeE1SLGlCQUFBO0lDeUtBLGdCQUFBO0lBQUEsaUJBQUE7SUFBQSxjQUFBO0lBQUEscUJBQUE7O0VEL0VBLG1Ca0NzR0EsUUFBTyxNQUNILFVsQ3ZHSDtJQytFRCxjQUFBO0lBQUEscUJBQUE7O0VEM0VBLG1Ca0NrR0EsUUFBTyxNQUNILFVsQ25HSDtJQzJFRCxjQUFBO0lBQUEscUJBQUE7O0VEdkVBLG1Ca0M4RkEsUUFBTyxNQUNILFVsQy9GSDtJQ3VFRCxjQUFBO0lBQUEscUJBQUE7O0VpQ21ESSxtQkE1QkosUUFBTyxNQTRCRixJQUFJLFdBQVksVUFBUztFQUMxQixtQkE3QkosUUFBTyxNQTZCRixJQUFJLFdBQVksVUFBUztJakNwRDlCLG1CQUFBOztFaUN1REksbUJBaENKLFFBQU8sTUFnQ0YsSUFBSSxXQUFZLFVBQVM7RUFDMUIsbUJBakNKLFFBQU8sTUFpQ0YsT0FBUTtFQUNULG1CQWxDSixRQUFPLE1Ba0NGLE9BQVEsVUFBUztFQUNsQixtQkFuQ0osUUFBTyxNQW1DRixPQUFRLFVBQVM7SWpDMUR0QixtQkFBQTtJaUM0RFEsbUJBQUE7O0VEa1JSLG1CQy9RQSxRQUFPO0lqQy9EUCxtQkFBQTtJQUFBLHlCQUFBO0lBQUEsZUFBQTtJQUFBLDRCQUFBOzs7QWdDZ1hKO0VDOWlCSSxrQkFBQTtFQUNBLFVBQUE7O0FqQ2dFQSxtQkFBQztBQUNELG1CQUFDO0VBQ0csU0FBUyxFQUFUO0VBQ0EsY0FBQTs7QUFFSixtQkFBQztFQUNHLFdBQUE7O0FnQ3VlUixtQkM1aUJJLFFBQU87RUFDSCxXQUFBO0VBQ0EsV0FBQTs7QUQwaUJSLG1CQzVpQkksUUFBTyxNQUdIO0VBQ0ksY0FBQTtFQUNBLFlBQUE7RUFDQSxrQkFBQTtFQUNBLFVBQUE7O0FEcWlCWixtQkNsaUJJLFFBQU87RUFDSCxzQkFBQTtFQUVBLFlBQUE7RUFDQSxnQkFBQTtFQUNBLGtCQUFBO0VBQ0EsV0FBQTs7QWpDK0NKLG1CaUNyREEsUUFBTyxRakNxRE47QUFDRCxtQmlDdERBLFFBQU8sUWpDc0ROO0VBQ0csU0FBUyxFQUFUO0VBQ0EsY0FBQTs7QUFFSixtQmlDMURBLFFBQU8sUWpDMEROO0VBQ0csV0FBQTs7QWlDcERBLG1CQVBKLFFBQU8sUUFPRjtFQUNHLGNBQUE7O0FEMmpCWjtFQ3BjSSxTQUFBO0VBQ0EsVUFBQTs7QURtY0osbUJDbGNJLFFBQU87RUFDSCxzQkFBQTtFQUNBLFdBQUE7RUFDQSxXQUFBOztBRCtiUixtQkNsY0ksUUFBTyxNQUlIO0VBQ0ksY0FBQTs7QUQ2YlosbUJDMWJJLFFBQU87RUFFSCxzQkFBQTtFQUNBLFdBQUE7RUFDQSxTQUFBO0VBQ0EsY0FBQTs7QWpDekZKLG1CaUNvRkEsUUFBTyxRakNwRk47QUFDRCxtQmlDbUZBLFFBQU8sUWpDbkZOO0VBQ0csU0FBUyxFQUFUO0VBQ0EsY0FBQTs7QUFFSixtQmlDK0VBLFFBQU8sUWpDL0VOO0VBQ0csV0FBQTs7QWlDb0ZBLG1CQU5KLFFBQU8sUUFNRjtFQUNHLGNBQUE7O0FDeEZaO0VoQ2hFSSx5QkFBQTtFQUNBLGlCQUFBO0VBRUEsZUFBQTtFRnVMQSxXQUFBOztBa0MxSEosZ0JoQzNESTtFQUNJLGdCQUFBOztBZ0MwRFIsZ0JoQ3hESSxRQUVJLEtBQ0k7QWdDcURaLGdCaEN2REksUUFDSSxLQUNJO0FnQ3FEWixnQmhDeERJLFFBRUksS0FFSTtBZ0NvRFosZ0JoQ3ZESSxRQUNJLEtBRUk7RUFDSSxtQkFBQTs7QWdDbURoQixnQmhDL0NJLFFBQVEsS0FDSjtBZ0M4Q1IsZ0JoQy9DSSxRQUFRLEtBRUo7RUFDSSxzQkFBQTs7QWdDNENaLGdCaEN6Q0ksUUFHSSxLQUNJO0FnQ3FDWixnQmhDeENJLFFBRUksS0FDSTtBZ0NxQ1osZ0JoQ3ZDSSxRQUNJLEtBQ0k7QWdDcUNaLGdCaEN6Q0ksUUFHSSxLQUVJO0FnQ29DWixnQmhDeENJLFFBRUksS0FFSTtBZ0NvQ1osZ0JoQ3ZDSSxRQUNJLEtBRUk7RUY4SlIsaUJBQUE7O0FrQ1pKLGdCaEM3SEksUUFHSSxLQVdJO0FnQytHWixnQmhDNUhJLFFBRUksS0FXSTtBZ0MrR1osZ0JoQzNISSxRQUNJLEtBV0k7RUYySFIsY0FBQTtFQUFBLGdCQUFBOztBa0NrSko7RWhDNVVJLHlCQUFBO0VBQ0EsaUJBQUE7RUFFQSxlQUFBO0VGdUxBLFdBQUE7O0FrQ2tKSixnQmhDdlVJO0VBQ0ksZ0JBQUE7O0FnQ3NVUixnQmhDcFVJLFFBRUksS0FDSTtBZ0NpVVosZ0JoQ25VSSxRQUNJLEtBQ0k7QWdDaVVaLGdCaENwVUksUUFFSSxLQUVJO0FnQ2dVWixnQmhDblVJLFFBQ0ksS0FFSTtFQUNJLG1CQUFBOztBZ0MrVGhCLGdCaEMzVEksUUFBUSxLQUNKO0FnQzBUUixnQmhDM1RJLFFBQVEsS0FFSjtFQUNJLHNCQUFBOztBZ0N3VFosZ0JoQ3JUSSxRQUdJLEtBQ0k7QWdDaVRaLGdCaENwVEksUUFFSSxLQUNJO0FnQ2lUWixnQmhDblRJLFFBQ0ksS0FDSTtBZ0NpVFosZ0JoQ3JUSSxRQUdJLEtBRUk7QWdDZ1RaLGdCaENwVEksUUFFSSxLQUVJO0FnQ2dUWixnQmhDblRJLFFBQ0ksS0FFSTtFRjhKUixpQkFBQTs7QWtDa0pKLGdCaENxSUk7RUYzYUEsa0JBQUE7RUFDQSxVQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxVQUFBO0VBQ0EsZ0JBQUE7RUFDQSxNQUFNLGdCQUFOO0VBQ0EsU0FBQTs7QWtDa2JKO0VoQy9kSSx5QkFBQTtFQUNBLGlCQUFBO0VBRUEsZUFBQTtFRnVMQSxXQUFBOztBa0NxU0osZ0JoQzFkSTtFQUNJLGdCQUFBOztBZ0N5ZFIsZ0JoQ3ZkSSxRQUVJLEtBQ0k7QWdDb2RaLGdCaEN0ZEksUUFDSSxLQUNJO0FnQ29kWixnQmhDdmRJLFFBRUksS0FFSTtBZ0NtZFosZ0JoQ3RkSSxRQUNJLEtBRUk7RUFDSSxtQkFBQTs7QWdDa2RoQixnQmhDOWNJLFFBQVEsS0FDSjtBZ0M2Y1IsZ0JoQzljSSxRQUFRLEtBRUo7RUFDSSxzQkFBQTs7QWdDMmNaLGdCaEN4Y0ksUUFHSSxLQUNJO0FnQ29jWixnQmhDdmNJLFFBRUksS0FDSTtBZ0NvY1osZ0JoQ3RjSSxRQUNJLEtBQ0k7QWdDb2NaLGdCaEN4Y0ksUUFHSSxLQUVJO0FnQ21jWixnQmhDdmNJLFFBRUksS0FFSTtBZ0NtY1osZ0JoQ3RjSSxRQUNJLEtBRUk7RUY4SlIsaUJBQUE7O0FrQ3FTSixnQmhDbFhJLFFBR0ksS0FDSTtBZ0M4V1osZ0JoQ2pYSSxRQUVJLEtBQ0k7QWdDOFdaLGdCaENoWEksUUFDSSxLQUNJO0VGeUVSLHdCQUFBOztBa0NxU0osZ0JoQ2xYSSxRQUdJLEtBSUk7QWdDMldaLGdCaENqWEksUUFFSSxLQUlJO0FnQzJXWixnQmhDaFhJLFFBQ0ksS0FJSTtFRnNFUix5QkFBQTs7QWtDcWJKO0VoQy9tQkkseUJBQUE7RUFDQSxpQkFBQTtFQUVBLGVBQUE7RUZ1TEEsV0FBQTtFQUFBLG1CQUFBOztBa0NxYkosZ0JoQzFtQkk7RUFDSSxnQkFBQTs7QWdDeW1CUixnQmhDdm1CSSxRQUVJLEtBQ0k7QWdDb21CWixnQmhDdG1CSSxRQUNJLEtBQ0k7QWdDb21CWixnQmhDdm1CSSxRQUVJLEtBRUk7QWdDbW1CWixnQmhDdG1CSSxRQUNJLEtBRUk7RUFDSSxtQkFBQTs7QWdDa21CaEIsZ0JoQzlsQkksUUFBUSxLQUNKO0FnQzZsQlIsZ0JoQzlsQkksUUFBUSxLQUVKO0VBQ0ksc0JBQUE7O0FnQzJsQlosZ0JoQ3hsQkksUUFHSSxLQUNJO0FnQ29sQlosZ0JoQ3ZsQkksUUFFSSxLQUNJO0FnQ29sQlosZ0JoQ3RsQkksUUFDSSxLQUNJO0FnQ29sQlosZ0JoQ3hsQkksUUFHSSxLQUVJO0FnQ21sQlosZ0JoQ3ZsQkksUUFFSSxLQUVJO0FnQ21sQlosZ0JoQ3RsQkksUUFDSSxLQUVJO0VGOEpSLGlCQUFBOztBa0NxYkosZ0JoQzFoQkk7RUZxR0EsbUJBQUE7O0FrQ3FiSixnQmhDdmhCSTtFRmtHQSxtQkFBQTs7QWtDcWJKLGdCaENwaEJJLFFBQVEsS0FBSztFRitGYixtQkFBQTs7QWtDcWJKLGdCaENqaEJJLFFBQVEsS0FBSztFRjRGYixtQkFBQTs7QWtDd2pCSjtFaENsdkJJLHlCQUFBO0VBQ0EsaUJBQUE7RUFFQSxlQUFBO0VGdUxBLFdBQUE7RUFBQSx5QkFBQTs7QWtDd2pCSixnQmhDN3VCSTtFQUNJLGdCQUFBOztBZ0M0dUJSLGdCaEMxdUJJLFFBRUksS0FDSTtBZ0N1dUJaLGdCaEN6dUJJLFFBQ0ksS0FDSTtBZ0N1dUJaLGdCaEMxdUJJLFFBRUksS0FFSTtBZ0NzdUJaLGdCaEN6dUJJLFFBQ0ksS0FFSTtFQUNJLG1CQUFBOztBZ0NxdUJoQixnQmhDanVCSSxRQUFRLEtBQ0o7QWdDZ3VCUixnQmhDanVCSSxRQUFRLEtBRUo7RUFDSSxzQkFBQTs7QWdDOHRCWixnQmhDM3RCSSxRQUdJLEtBQ0k7QWdDdXRCWixnQmhDMXRCSSxRQUVJLEtBQ0k7QWdDdXRCWixnQmhDenRCSSxRQUNJLEtBQ0k7QWdDdXRCWixnQmhDM3RCSSxRQUdJLEtBRUk7QWdDc3RCWixnQmhDMXRCSSxRQUVJLEtBRUk7QWdDc3RCWixnQmhDenRCSSxRQUNJLEtBRUk7RUY4SlIsaUJBQUE7O0FrQ3dqQkosZ0JoQ2huQkksUUFHSSxLQUNJO0FnQzRtQlosZ0JoQy9tQkksUUFFSSxLQUNJO0FnQzRtQlosZ0JoQzltQkksUUFDSSxLQUNJO0FnQzRtQlosZ0JoQ2huQkksUUFHSSxLQUVJO0FnQzJtQlosZ0JoQy9tQkksUUFFSSxLQUVJO0FnQzJtQlosZ0JoQzltQkksUUFDSSxLQUVJO0VGbURSLHlCQUFBOztBa0MwcUJKO0VoQ3AyQkkseUJBQUE7RUFDQSxpQkFBQTtFQUVBLGVBQUE7RUZ1TEEsV0FBQTs7QWtDMHFCSixnQmhDLzFCSTtFQUNJLGdCQUFBOztBZ0M4MUJSLGdCaEM1MUJJLFFBRUksS0FDSTtBZ0N5MUJaLGdCaEMzMUJJLFFBQ0ksS0FDSTtBZ0N5MUJaLGdCaEM1MUJJLFFBRUksS0FFSTtBZ0N3MUJaLGdCaEMzMUJJLFFBQ0ksS0FFSTtFQUNJLG1CQUFBOztBZ0N1MUJoQixnQmhDbjFCSSxRQUFRLEtBQ0o7QWdDazFCUixnQmhDbjFCSSxRQUFRLEtBRUo7RUFDSSxzQkFBQTs7QWdDZzFCWixnQmhDNzBCSSxRQUdJLEtBQ0k7QWdDeTBCWixnQmhDNTBCSSxRQUVJLEtBQ0k7QWdDeTBCWixnQmhDMzBCSSxRQUNJLEtBQ0k7QWdDeTBCWixnQmhDNzBCSSxRQUdJLEtBRUk7QWdDdzBCWixnQmhDNTBCSSxRQUVJLEtBRUk7QWdDdzBCWixnQmhDMzBCSSxRQUNJLEtBRUk7RUY4SlIsaUJBQUE7O0FrQzBxQkosZ0JoQ2h0QkksUUFHSSxLQUNJO0FnQzRzQlosZ0JoQy9zQkksUUFFSSxLQUNJO0FnQzRzQlosZ0JoQzlzQkksUUFDSSxLQUNJO0FnQzRzQlosZ0JoQ2h0QkksUUFHSSxLQUVJO0FnQzJzQlosZ0JoQy9zQkksUUFFSSxLQUVJO0FnQzJzQlosZ0JoQzlzQkksUUFDSSxLQUVJO0VGaUNSLDZCQUFBOztBa0MwcUJKLGdCaEN0c0JJLFVBQVUsUUFHTixLQUFJLFlBQ0E7QWdDa3NCWixnQmhDcnNCSSxXQUFXLFFBRVAsS0FBSSxZQUNBO0FnQ2tzQlosZ0JoQ3BzQkksUUFBTyxZQUNILEtBQUksWUFDQTtBZ0Nrc0JaLGdCaEN0c0JJLFVBQVUsUUFHTixLQUFJLFlBRUE7QWdDaXNCWixnQmhDcnNCSSxXQUFXLFFBRVAsS0FBSSxZQUVBO0FnQ2lzQlosZ0JoQ3BzQkksUUFBTyxZQUNILEtBQUksWUFFQTtFQUNJLGFBQUE7O0FnQ2dzQmhCLGdCaEM1ckJJLFFBQVE7RUZrQlIsNkJBQUE7O0FrQzB2Qko7RWhDcDdCSSx5QkFBQTtFQUNBLGlCQUFBO0VBRUEsZUFBQTtFRnVMQSxXQUFBOztBa0MwdkJKLGdCaEMvNkJJO0VBQ0ksZ0JBQUE7O0FnQzg2QlIsZ0JoQzU2QkksUUFFSSxLQUNJO0FnQ3k2QlosZ0JoQzM2QkksUUFDSSxLQUNJO0FnQ3k2QlosZ0JoQzU2QkksUUFFSSxLQUVJO0FnQ3c2QlosZ0JoQzM2QkksUUFDSSxLQUVJO0VBQ0ksbUJBQUE7O0FnQ3U2QmhCLGdCaENuNkJJLFFBQVEsS0FDSjtBZ0NrNkJSLGdCaENuNkJJLFFBQVEsS0FFSjtFQUNJLHNCQUFBOztBZ0NnNkJaLGdCaEM3NUJJLFFBR0ksS0FDSTtBZ0N5NUJaLGdCaEM1NUJJLFFBRUksS0FDSTtBZ0N5NUJaLGdCaEMzNUJJLFFBQ0ksS0FDSTtBZ0N5NUJaLGdCaEM3NUJJLFFBR0ksS0FFSTtBZ0N3NUJaLGdCaEM1NUJJLFFBRUksS0FFSTtBZ0N3NUJaLGdCaEMzNUJJLFFBQ0ksS0FFSTtFRjhKUixpQkFBQTs7QWtDMHZCSixnQmhDOXVCSSxRQUdJLEtBQ0k7QWdDMHVCWixnQmhDN3VCSSxRQUVJLEtBQ0k7QWdDMHVCWixnQmhDNXVCSSxRQUNJLEtBQ0k7QWdDMHVCWixnQmhDOXVCSSxRQUdJLEtBRUk7QWdDeXVCWixnQmhDN3VCSSxRQUVJLEtBRUk7QWdDeXVCWixnQmhDNXVCSSxRQUNJLEtBRUk7RUZqQlIsOEJBQUE7O0FFbUJZLGdCQVBaLFFBR0ksS0FDSSxLQUdLO0FBQUQsZ0JBTlosUUFFSSxLQUNJLEtBR0s7QUFBRCxnQkFMWixRQUNJLEtBQ0ksS0FHSztBQUFELGdCQVBaLFFBR0ksS0FFSSxLQUVLO0FBQUQsZ0JBTlosUUFFSSxLQUVJLEtBRUs7QUFBRCxnQkFMWixRQUNJLEtBRUksS0FFSztFQUNHLGlCQUFBOztBZ0NzekJwQjtFaENwZ0NJLHlCQUFBO0VBQ0EsaUJBQUE7RUFFQSxlQUFBO0VGdUxBLFdBQUE7RUVpQ0EsWUFBQTs7QWdDeXlCSixnQmhDLy9CSTtFQUNJLGdCQUFBOztBZ0M4L0JSLGdCaEM1L0JJLFFBRUksS0FDSTtBZ0N5L0JaLGdCaEMzL0JJLFFBQ0ksS0FDSTtBZ0N5L0JaLGdCaEM1L0JJLFFBRUksS0FFSTtBZ0N3L0JaLGdCaEMzL0JJLFFBQ0ksS0FFSTtFQUNJLG1CQUFBOztBZ0N1L0JoQixnQmhDbi9CSSxRQUFRLEtBQ0o7QWdDay9CUixnQmhDbi9CSSxRQUFRLEtBRUo7RUFDSSxzQkFBQTs7QWdDZy9CWixnQmhDNytCSSxRQUdJLEtBQ0k7QWdDeStCWixnQmhDNStCSSxRQUVJLEtBQ0k7QWdDeStCWixnQmhDMytCSSxRQUNJLEtBQ0k7QWdDeStCWixnQmhDNytCSSxRQUdJLEtBRUk7QWdDdytCWixnQmhDNStCSSxRQUVJLEtBRUk7QWdDdytCWixnQmhDMytCSSxRQUNJLEtBRUk7RUY4SlIsaUJBQUE7O0FrQzAwQkosZ0JoQ3h5QkksUUFHSSxLQUNJO0FnQ295QlosZ0JoQ3Z5QkksUUFFSSxLQUNJO0FnQ295QlosZ0JoQ3R5QkksUUFDSSxLQUNJO0FnQ295QlosZ0JoQ3h5QkksUUFHSSxLQUVJO0FnQ215QlosZ0JoQ3Z5QkksUUFFSSxLQUVJO0FnQ215QlosZ0JoQ3R5QkksUUFDSSxLQUVJO0VBQ0ksWUFBQTs7QWdDa3lCaEIsZ0JoQzl4QkksUUFDSSxLQUNJO0FnQzR4QlosZ0JoQzl4QkksUUFDSSxLQUVJO0VGL0NSLGdDQUFBOztBa0MwNUJKO0VoQ3BsQ0kseUJBQUE7RUFDQSxpQkFBQTtFQUVBLGVBQUE7RUZ1TEEsV0FBQTtFRTREQSxZQUFBOztBZ0M4MUJKLGlCaEMva0NJO0VBQ0ksZ0JBQUE7O0FnQzhrQ1IsaUJoQzVrQ0ksUUFFSSxLQUNJO0FnQ3lrQ1osaUJoQzNrQ0ksUUFDSSxLQUNJO0FnQ3lrQ1osaUJoQzVrQ0ksUUFFSSxLQUVJO0FnQ3drQ1osaUJoQzNrQ0ksUUFDSSxLQUVJO0VBQ0ksbUJBQUE7O0FnQ3VrQ2hCLGlCaENua0NJLFFBQVEsS0FDSjtBZ0Nra0NSLGlCaENua0NJLFFBQVEsS0FFSjtFQUNJLHNCQUFBOztBZ0Nna0NaLGlCaEM3akNJLFFBR0ksS0FDSTtBZ0N5akNaLGlCaEM1akNJLFFBRUksS0FDSTtBZ0N5akNaLGlCaEMzakNJLFFBQ0ksS0FDSTtBZ0N5akNaLGlCaEM3akNJLFFBR0ksS0FFSTtBZ0N3akNaLGlCaEM1akNJLFFBRUksS0FFSTtBZ0N3akNaLGlCaEMzakNJLFFBQ0ksS0FFSTtFRjhKUixpQkFBQTs7QWtDMDVCSixpQmhDNzFCSSxRQUdJLEtBQ0k7QWdDeTFCWixpQmhDNTFCSSxRQUVJLEtBQ0k7QWdDeTFCWixpQmhDMzFCSSxRQUNJLEtBQ0k7QWdDeTFCWixpQmhDNzFCSSxRQUdJLEtBRUk7QWdDdzFCWixpQmhDNTFCSSxRQUVJLEtBRUk7QWdDdzFCWixpQmhDMzFCSSxRQUNJLEtBRUk7RUFDSSxZQUFBOztBZ0NvNkJoQjtFaENqcUNJLHlCQUFBO0VBQ0EsaUJBQUE7RUFFQSxlQUFBO0VGdUxBLFdBQUE7O0FrQ3UrQkosaUJoQzVwQ0k7RUFDSSxnQkFBQTs7QWdDMnBDUixpQmhDenBDSSxRQUVJLEtBQ0k7QWdDc3BDWixpQmhDeHBDSSxRQUNJLEtBQ0k7QWdDc3BDWixpQmhDenBDSSxRQUVJLEtBRUk7QWdDcXBDWixpQmhDeHBDSSxRQUNJLEtBRUk7RUFDSSxtQkFBQTs7QWdDb3BDaEIsaUJoQ2hwQ0ksUUFBUSxLQUNKO0FnQytvQ1IsaUJoQ2hwQ0ksUUFBUSxLQUVKO0VBQ0ksc0JBQUE7O0FnQzZvQ1osaUJoQzFvQ0ksUUFHSSxLQUNJO0FnQ3NvQ1osaUJoQ3pvQ0ksUUFFSSxLQUNJO0FnQ3NvQ1osaUJoQ3hvQ0ksUUFDSSxLQUNJO0FnQ3NvQ1osaUJoQzFvQ0ksUUFHSSxLQUVJO0FnQ3FvQ1osaUJoQ3pvQ0ksUUFFSSxLQUVJO0FnQ3FvQ1osaUJoQ3hvQ0ksUUFDSSxLQUVJO0VGOEpSLGlCQUFBOztBa0N1K0JKLGlCaEN6NEJJLFFBQVEsS0FBSSxVQUFVLE1BQ2xCO0FnQ3c0QlIsaUJoQ3o0QkksUUFBUSxLQUFJLFVBQVUsTUFFbEI7RUZoR0osbUJBQUE7RUFBQSxjQUFBOztBa0NnbUNKO0VoQzF4Q0kseUJBQUE7RUFDQSxpQkFBQTtFQUVBLGVBQUE7RUZ1TEEsV0FBQTs7QWtDZ21DSixpQmhDcnhDSTtFQUNJLGdCQUFBOztBZ0NveENSLGlCaENseENJLFFBRUksS0FDSTtBZ0Mrd0NaLGlCaENqeENJLFFBQ0ksS0FDSTtBZ0Mrd0NaLGlCaENseENJLFFBRUksS0FFSTtBZ0M4d0NaLGlCaENqeENJLFFBQ0ksS0FFSTtFQUNJLG1CQUFBOztBZ0M2d0NoQixpQmhDendDSSxRQUFRLEtBQ0o7QWdDd3dDUixpQmhDendDSSxRQUFRLEtBRUo7RUFDSSxzQkFBQTs7QWdDc3dDWixpQmhDbndDSSxRQUdJLEtBQ0k7QWdDK3ZDWixpQmhDbHdDSSxRQUVJLEtBQ0k7QWdDK3ZDWixpQmhDandDSSxRQUNJLEtBQ0k7QWdDK3ZDWixpQmhDbndDSSxRQUdJLEtBRUk7QWdDOHZDWixpQmhDbHdDSSxRQUVJLEtBRUk7QWdDOHZDWixpQmhDandDSSxRQUNJLEtBRUk7RUY4SlIsaUJBQUE7O0FrQ2dtQ0osaUJoQy84QkksUUFBUSxLQUFJLFVBQVUsTUFBTSxNQUN4QjtBZ0M4OEJSLGlCaEMvOEJJLFFBQVEsS0FBSSxVQUFVLE1BQU0sTUFFeEI7RUZuSkosbUJBQUE7O0FrQ2dtQ0osaUJoQ3o4QkksUUFBUSxLQUFJLFVBQVUsS0FBSyxNQUN2QjtBZ0N3OEJSLGlCaEN6OEJJLFFBQVEsS0FBSSxVQUFVLEtBQUssTUFFdkI7RUZ6SkosbUJBQUE7O0FrQ3VzQ0o7RWhDajRDSSx5QkFBQTtFQUNBLGlCQUFBO0VBRUEsZUFBQTtFRnVMQSxXQUFBO0VBQUEseUJBQUE7O0FrQ3VzQ0osaUJoQzUzQ0k7RUFDSSxnQkFBQTs7QWdDMjNDUixpQmhDejNDSSxRQUVJLEtBQ0k7QWdDczNDWixpQmhDeDNDSSxRQUNJLEtBQ0k7QWdDczNDWixpQmhDejNDSSxRQUVJLEtBRUk7QWdDcTNDWixpQmhDeDNDSSxRQUNJLEtBRUk7RUFDSSxtQkFBQTs7QWdDbzNDaEIsaUJoQ2gzQ0ksUUFBUSxLQUNKO0FnQysyQ1IsaUJoQ2gzQ0ksUUFBUSxLQUVKO0VBQ0ksc0JBQUE7O0FnQzYyQ1osaUJoQzEyQ0ksUUFHSSxLQUNJO0FnQ3MyQ1osaUJoQ3oyQ0ksUUFFSSxLQUNJO0FnQ3MyQ1osaUJoQ3gyQ0ksUUFDSSxLQUNJO0FnQ3MyQ1osaUJoQzEyQ0ksUUFHSSxLQUVJO0FnQ3EyQ1osaUJoQ3oyQ0ksUUFFSSxLQUVJO0FnQ3EyQ1osaUJoQ3gyQ0ksUUFDSSxLQUVJO0VGOEpSLGlCQUFBOztBa0N1c0NKLGlCaEMvdkNJLFFBR0ksS0FDSTtBZ0MydkNaLGlCaEM5dkNJLFFBRUksS0FDSTtBZ0MydkNaLGlCaEM3dkNJLFFBQ0ksS0FDSTtBZ0MydkNaLGlCaEMvdkNJLFFBR0ksS0FFSTtBZ0MwdkNaLGlCaEM5dkNJLFFBRUksS0FFSTtBZ0MwdkNaLGlCaEM3dkNJLFFBQ0ksS0FFSTtFRm1EUix5QkFBQTs7QWtDdXNDSixpQmhDeG5DSSxRQUFRLEtBQUksVUFBVSxLQUNsQjtBZ0N1bkNSLGlCaEN4bkNJLFFBQVEsS0FBSSxVQUFVLEtBRWxCO0VGakZKLG1CQUFBOztBa0N1c0NKLGlCaEN0akNJLFFBQVEsS0FBSSxVQUFVLE1BQU0sTUFDeEI7QWdDcWpDUixpQmhDdGpDSSxRQUFRLEtBQUksVUFBVSxNQUFNLE1BRXhCO0VGbkpKLG1CQUFBOztBa0N1c0NKLGlCaENoakNJLFFBQVEsS0FBSSxVQUFVLEtBQUssTUFDdkI7QWdDK2lDUixpQmhDaGpDSSxRQUFRLEtBQUksVUFBVSxLQUFLLE1BRXZCO0VGekpKLG1CQUFBOztBa0NvdENKLHdCQU44QztFQUMxQztJaEMvaUNBLFdBQUE7SUFFQSxrQkFBQTtJQUNBLGdCQUFBO0lBQ0EsNENBQUE7SUFDQSxpQ0FBQTs7O0FnQ2duQ0o7RWhDLzhDSSx5QkFBQTtFQUNBLGlCQUFBO0VBRUEsZUFBQTtFRnVMQSxXQUFBO0VBQUEseUJBQUE7O0FrQ3F4Q0osaUJoQzE4Q0k7RUFDSSxnQkFBQTs7QWdDeThDUixpQmhDdjhDSSxRQUVJLEtBQ0k7QWdDbzhDWixpQmhDdDhDSSxRQUNJLEtBQ0k7QWdDbzhDWixpQmhDdjhDSSxRQUVJLEtBRUk7QWdDbThDWixpQmhDdDhDSSxRQUNJLEtBRUk7RUFDSSxtQkFBQTs7QWdDazhDaEIsaUJoQzk3Q0ksUUFBUSxLQUNKO0FnQzY3Q1IsaUJoQzk3Q0ksUUFBUSxLQUVKO0VBQ0ksc0JBQUE7O0FnQzI3Q1osaUJoQ3g3Q0ksUUFHSSxLQUNJO0FnQ283Q1osaUJoQ3Y3Q0ksUUFFSSxLQUNJO0FnQ283Q1osaUJoQ3Q3Q0ksUUFDSSxLQUNJO0FnQ283Q1osaUJoQ3g3Q0ksUUFHSSxLQUVJO0FnQ203Q1osaUJoQ3Y3Q0ksUUFFSSxLQUVJO0FnQ203Q1osaUJoQ3Q3Q0ksUUFDSSxLQUVJO0VGOEpSLGlCQUFBOztBa0NxeENKLGlCaEM3MENJLFFBR0ksS0FDSTtBZ0N5MENaLGlCaEM1MENJLFFBRUksS0FDSTtBZ0N5MENaLGlCaEMzMENJLFFBQ0ksS0FDSTtBZ0N5MENaLGlCaEM3MENJLFFBR0ksS0FFSTtBZ0N3MENaLGlCaEM1MENJLFFBRUksS0FFSTtBZ0N3MENaLGlCaEMzMENJLFFBQ0ksS0FFSTtFRm1EUix5QkFBQTs7QWtDcXhDSixpQmhDdHNDSSxRQUFRLEtBQUksVUFBVSxLQUNsQjtBZ0Nxc0NSLGlCaEN0c0NJLFFBQVEsS0FBSSxVQUFVLEtBRWxCO0VGakZKLG1CQUFBOztBa0NxeENKLGlCaENwb0NJLFFBQVEsS0FBSSxVQUFVLE1BQU0sTUFDeEI7QWdDbW9DUixpQmhDcG9DSSxRQUFRLEtBQUksVUFBVSxNQUFNLE1BRXhCO0VGbkpKLG1CQUFBOztBa0NxeENKLGlCaEM5bkNJLFFBQVEsS0FBSSxVQUFVLEtBQUssTUFDdkI7QWdDNm5DUixpQmhDOW5DSSxRQUFRLEtBQUksVUFBVSxLQUFLLE1BRXZCO0VGekpKLG1CQUFBOztBa0N1eUNKLHdCQVg4QztFQUMxQztJaEM3L0JBLFlBQUE7SUFDQSxjQUFBO0lGalNBLG1CQUFBOztFa0M2eENBLGlCaEM5c0NBLFFBQVEsS0FBSSxVQUFVLEtBQ2xCO0VnQzZzQ0osaUJoQzlzQ0EsUUFBUSxLQUFJLFVBQVUsS0FFbEI7SUZqRkosbUJBQUE7O0VrQzZ4Q0EsaUJoQzVvQ0EsUUFBUSxLQUFJLFVBQVUsTUFBTSxNQUN4QjtFZ0Myb0NKLGlCaEM1b0NBLFFBQVEsS0FBSSxVQUFVLE1BQU0sTUFFeEI7SUZuSkosbUJBQUE7O0VrQzZ4Q0EsaUJoQ3RvQ0EsUUFBUSxLQUFJLFVBQVUsS0FBSyxNQUN2QjtFZ0Nxb0NKLGlCaEN0b0NBLFFBQVEsS0FBSSxVQUFVLEtBQUssTUFFdkI7SUZ6SkosbUJBQUE7O0VrQzZ4Q0EsaUJoQzEvQkEsUUFBUSxLQUFLO0lBQ1QsYUFBQTs7RWdDeS9CSixpQmhDdi9CQTtJQUNJLGNBQUE7O0VnQ3MvQkosaUJoQ3YvQkEsUUFFSTtJQUNJLGNBQUE7O0VnQ28vQlIsaUJoQ3YvQkEsUUFFSSxLQUVJO0VnQ20vQlIsaUJoQ3YvQkEsUUFFSSxLQUdJO0lBQ0ksbUJBQUE7SUFDQSxjQUFBO0lBQ0EsY0FBQTs7RUFDQSxpQkFUWixRQUVJLEtBRUksR0FLSztFQUFELGlCQVRaLFFBRUksS0FHSSxHQUlLO0lBQ0csU0FBUyxjQUFhLElBQXRCO0lBQ0EscUJBQUE7SUZqVGhCLG1CQUFBO0lBQUEsY0FBQTtJQUFBLGdCQUFBOztFa0M2eENBLGlCaEN2L0JBLFFBRUksS0FxQkk7SUY3VFIsbUJBQUE7O0VrQzZ4Q0EsaUJoQ3JsQ0EsUUFBUSxLQUFLO0lBQ1QseUJBQUE7OztBaUMzWFI7RUNTSSxrQkFBQTs7QURUSix1QkNZSTtFcENzS0EsWUFBQTtFQUFBLG1CQUFBO0VBQUEsZ0JBQUE7RUFBQSxnQkFBQTtFQUFBLGtCQUFBO0VvQzlKSSxhQUFBO0VBQ0Esa0JBQUE7RUFDQSxnQkFBQTtFcEM0SkosY0FBQTtFQUFBLGdCQUFBO0VBQUEseUJBQUE7RW9DT0EsU0FBQTtFQUNBLE9BQUE7RXBDUkEsZUFBQTs7QW9DNUlJLHVCQTFCSixpQkEwQks7QUFDRCx1QkEzQkosaUJBMkJLO0VBQ0cseUJBQUE7RUFDQSxTQUFTLEVBQVQ7RUFDQSxTQUFBO0VBQ0EsUUFBQTtFQUNBLGtCQUFBOztBQUdKLHVCQW5DSixpQkFtQ0s7RUFDRyx5QkFBQTtFcENrSVIsaUJBQUE7O0FvQzlISSx1QkF4Q0osaUJBd0NLO0VBQ0cseUJBQUE7RXBDNkhSLGlCQUFBOztBb0NXQSx1QkFqTEEsaUJBaUxDO0FBQ0QsdUJBbExBLGlCQWtMQztFQUNHLFlBQUE7O0FBRUosdUJBckxBLGlCQXFMQztFcENmRCw0QkFBQTtFQUFBLGlCQUFBO0VBQUEsVUFBQTs7QW9Db0JBLHVCQTFMQSxpQkEwTEM7RXBDcEJELDRCQUFBO0VBQUEsaUJBQUE7RUFBQSxVQUFBOztBb0M5R0EsdUJBQUU7RXBDOEdGLFlBQUE7O0FvQzFHQSx1QkFBRSxnQkFBMkIsTUFBTztBQUNwQyx1QkFBRSxnQkFBMkIsTUFBTztBQUNwQyx1QkFBQyxNQUFPO0VBQ0osY0FBQTs7QUR4RVI7RUNNSSxrQkFBQTs7QUROSixxQkNTSTtFcENzS0EsWUFBQTtFQUFBLG1CQUFBO0VBQUEsZ0JBQUE7RUFBQSxnQkFBQTtFQUFBLGtCQUFBO0VvQzlKSSxhQUFBO0VBQ0Esa0JBQUE7RUFDQSxnQkFBQTtFcEM0SkosY0FBQTtFQUFBLGdCQUFBO0VBQUEseUJBQUE7RW9DckRBLFdBQUE7RUFDQSxNQUFBO0VwQ29EQSxpQkFBQTs7QW9DNUlJLHFCQTFCSixpQkEwQks7QUFDRCxxQkEzQkosaUJBMkJLO0VBQ0cseUJBQUE7RUFDQSxTQUFTLEVBQVQ7RUFDQSxTQUFBO0VBQ0EsUUFBQTtFQUNBLGtCQUFBOztBQUdKLHFCQW5DSixpQkFtQ0s7RUFDRyx5QkFBQTtFcENrSVIsaUJBQUE7O0FvQzlISSxxQkF4Q0osaUJBd0NLO0VBQ0cseUJBQUE7RXBDNkhSLGlCQUFBOztBb0NqREEscUJBckhBLGlCQXFIQztBQUNELHFCQXRIQSxpQkFzSEM7RUFDRyxVQUFBOztBQUVKLHFCQXpIQSxpQkF5SEM7RXBDNkNELDBCQUFBO0VBQUEsZ0JBQUE7RUFBQSxTQUFBOztBb0N2Q0EscUJBL0hBLGlCQStIQztFcEN1Q0QsMEJBQUE7RUFBQSxnQkFBQTtFQUFBLFNBQUE7O0FvQzlHQSxxQkFBRTtFcEM4R0YsWUFBQTs7QW9DMUdBLHFCQUFFLGdCQUEyQixNQUFPO0FBQ3BDLHFCQUFFLGdCQUEyQixNQUFPO0FBQ3BDLHFCQUFDLE1BQU87RUFDSixjQUFBOztBRHJFUjtFQ0dJLGtCQUFBOztBREhKLHNCQ01JO0VwQ3NLQSxZQUFBO0VBQUEsbUJBQUE7RUFBQSxnQkFBQTtFQUFBLGdCQUFBO0VBQUEsa0JBQUE7RW9DOUpJLGFBQUE7RUFDQSxrQkFBQTtFQUNBLGdCQUFBO0VwQzRKSixjQUFBO0VBQUEsZ0JBQUE7RUFBQSx5QkFBQTtFb0N2QkEsVUFBQTtFQUNBLE1BQUE7RXBDc0JBLGdCQUFBOztBb0M1SUksc0JBMUJKLGlCQTBCSztBQUNELHNCQTNCSixpQkEyQks7RUFDRyx5QkFBQTtFQUNBLFNBQVMsRUFBVDtFQUNBLFNBQUE7RUFDQSxRQUFBO0VBQ0Esa0JBQUE7O0FBR0osc0JBbkNKLGlCQW1DSztFQUNHLHlCQUFBO0VwQ2tJUixpQkFBQTs7QW9DOUhJLHNCQXhDSixpQkF3Q0s7RUFDRyx5QkFBQTtFcEM2SFIsaUJBQUE7O0FvQ25CQSxzQkFuSkEsaUJBbUpDO0FBQ0Qsc0JBcEpBLGlCQW9KQztFQUNHLFdBQUE7O0FBRUosc0JBdkpBLGlCQXVKQztFcENlRCwyQkFBQTtFQUFBLGdCQUFBO0VBQUEsU0FBQTs7QW9DVEEsc0JBN0pBLGlCQTZKQztFcENTRCwyQkFBQTtFQUFBLGdCQUFBO0VBQUEsU0FBQTs7QW9DOUdBLHNCQUFFO0VwQzhHRixZQUFBOztBb0MxR0Esc0JBQUUsZ0JBQTJCLE1BQU87QUFDcEMsc0JBQUUsZ0JBQTJCLE1BQU87QUFDcEMsc0JBQUMsTUFBTztFQUNKLGNBQUE7O0FEbEVSO0VDQUksa0JBQUE7O0FEQUosb0JDR0k7RXBDc0tBLFlBQUE7RUFBQSxtQkFBQTtFQUFBLGdCQUFBO0VBQUEsZ0JBQUE7RUFBQSxrQkFBQTtFb0M5SkksYUFBQTtFQUNBLGtCQUFBO0VBQ0EsZ0JBQUE7RXBDNEpKLGNBQUE7RUFBQSxnQkFBQTtFQUFBLHlCQUFBO0VvQ25GQSxZQUFBO0VBQ0EsT0FBQTtFcENrRkEsa0JBQUE7O0FvQzVJSSxvQkExQkosaUJBMEJLO0FBQ0Qsb0JBM0JKLGlCQTJCSztFQUNHLHlCQUFBO0VBQ0EsU0FBUyxFQUFUO0VBQ0EsU0FBQTtFQUNBLFFBQUE7RUFDQSxrQkFBQTs7QUFHSixvQkFuQ0osaUJBbUNLO0VBQ0cseUJBQUE7RXBDa0lSLGlCQUFBOztBb0M5SEksb0JBeENKLGlCQXdDSztFQUNHLHlCQUFBO0VwQzZIUixpQkFBQTs7QW9DL0VBLG9CQXZGQSxpQkF1RkM7QUFDRCxvQkF4RkEsaUJBd0ZDO0VBQ0csU0FBQTs7QUFFSixvQkEzRkEsaUJBMkZDO0VwQzJFRCx5QkFBQTtFQUFBLGlCQUFBO0VBQUEsVUFBQTs7QW9DckVBLG9CQWpHQSxpQkFpR0M7RXBDcUVELHlCQUFBO0VBQUEsaUJBQUE7RUFBQSxVQUFBOztBb0M5R0Esb0JBQUU7RXBDOEdGLFlBQUE7O0FvQzFHQSxvQkFBRSxnQkFBMkIsTUFBTztBQUNwQyxvQkFBRSxnQkFBMkIsTUFBTztBQUNwQyxvQkFBQyxNQUFPO0VBQ0osY0FBQTs7QXJDOERKO0VBQ0ksZ0JBQUE7RUFDQSw4QkFBQTtFQUNBLDBCQUFBO0VBQ0Esc0JBQUE7O0FBRUo7RUF0SUEsaUJBQUE7RUN5S0EsY0FBQTtFQUFBLGFDM0xxQiw4Q0QyTHJCO0VBQUEsZ0JBQUE7RUFBQSxrQkFBQTtFQUFBLHVCQUFBOztBRC9CQTtFQzdKQSxnQkFBQTtFQU9BLG1CQUFBOztBRDJKQSxJQUFJO0VBQ0EsWUFBQTtFQUNBLGlDQUFBOztBQUdKO0FBQ0E7RUFDSSxnQkFBQTs7QUFHSjtBQUNBO0VBQ0ksa0JBQUE7O0FBR0o7RUNXQSxtQkFBQTtFQUFBLGNBQUE7O0FETkE7QUFDQTtFQUNJLGVBQUE7O0FBR0o7RUFDSSxnQkFBQTtFQUNBLG1CQUFBO0VBQ0EsU0FBQTtFQUNBLDZCQUFBOztBQUdKO0FBQ0E7RUFDSSx1QkFBQTtFQUNBLGNBQUE7RUFDQSxrQkFBQTtFQUNBLHdCQUFBOztBQUVKO0VBQ0ksV0FBQTs7QUFFSjtFQUNJLGVBQUE7O0FBR0o7RUFDSSxrQkFBQTs7QUFRSjtFQXRNQSxlQUFBO0VDeUtBLGdCQUFBO0VBQUEsZ0JBQUE7RUE1TEEsZ0JBQUE7RUFPQSxtQkFBQTs7QURzTkE7RUExTUEsaUJBQUE7RUN5S0EsZ0JBQUE7RUFBQSxnQkFBQTtFQTVMQSxrQkFBQTtFQU9BLG1CQUFBOztBRDBOQTtFQTlNQSxpQkFBQTtFQ3lLQSxnQkFBQTtFQUFBLGdCQUFBO0VBNUxBLGtCQUFBO0VBT0EsbUJBQUE7O0FEOE5BO0VBbE5BLGlCQUFBO0VDeUtBLGdCQUFBO0VBQUEsZ0JBQUE7RUE1TEEsZ0JBQUE7RUFPQSxtQkFBQTs7QURrT0E7RUF0TkEsaUJBQUE7RUN5S0EsZ0JBQUE7RUFBQSxnQkFBQTtFQTVMQSxnQkFBQTtFQU9BLG1CQUFBOztBRHNPQTtFQTFOQSxlQUFBO0VDeUtBLGdCQUFBO0VBQUEsZ0JBQUE7RUE1TEEsZ0JBQUE7RUFPQSxtQkFBQTs7QUQwT0EsRUFDSTtBQURBLEVBQ0E7QUFESSxFQUNKO0FBRFEsRUFDUjtBQURZLEVBQ1o7QUFEZ0IsRUFDaEI7QUFESixFQUVJO0FBRkEsRUFFQTtBQUZJLEVBRUo7QUFGUSxFQUVSO0FBRlksRUFFWjtBQUZnQixFQUVoQjtFQTVOSix1QkFBQTtFQ3FLQSxjQUFBO0VBQUEsYUMzTHFCLDhDRDJMckI7RUFBQSxnQkFBQTtFQUFBLGtCQUFBO0VBQUEsY0FBQTs7QURxRUE7QUFDQTtFQ3RFQSxjQUFBO0VBQUEscUJBQUE7O0FEL0VBLENBQUM7QUFBRCxNQUFDO0VDK0VELGNBQUE7RUFBQSxxQkFBQTs7QUQzRUEsQ0FBQztBQUFELE1BQUM7RUMyRUQsY0FBQTtFQUFBLDBCQUFBOztBRHZFQSxDQUFDO0FBQUQsTUFBQztFQ3VFRCxjQUFBO0VBQUEsMEJBQUE7O0FEK0VBO0FBQ0E7RUM1UUEsZ0JBQUE7RUFPQSxxQkFBQTs7QURvUUEsRUFJSTtBQUhKLEVBR0k7RUMvUUosZ0JBQUE7RUFPQSxtQkFBQTs7QURvUUEsRUFPSTtBQU5KLEVBTUk7QUFQSixFQVFJO0FBUEosRUFPSTtFQUNJLGdCQUFBOztBQUlSO0VBQ0ksYUFBQTtFQUNBLG1CQUFBOztBQUVKO0VDaEdBLGdCQUFBO0VEa0dJLGFBQUE7RUFDQSxrQkFBQTs7QUFFSjtFQUNJLGFBQUE7RUFDQSxtQkFBQTtFQUNBLGNBQUE7O0FBUUo7QUFDQTtBQUNBO0FBQ0E7RUFDSSxzQ0U3U3lDLHdCRjZTekM7O0FBSUo7RUN4SEEsbUJBQUE7RUFBQSxjQUFBO0VEektBLGlCQUFBO0VDeUtBLGdCQUFBO0VENkhJLG1CQUFBOztBQUlKO0VDaklBLG1CQUFBO0VBQUEsY0FBQTtFQUFBLGdCQUFBO0VEektBLGlCQUFBOztBQWtUQTtFQ3pJQSxtQkFBQTtFRDJJSSx5QkFBQTtFQzNJSixjQUFBO0VENklJLGNBQUE7RUF0VEosaUJBQUE7RUF3VEksZ0JBQUE7RUFDQSx1QkFBQTtFQ2hKSixhQUFBO0VEa0pJLHFCQUFBO0VBQ0EscUJBQUE7O0FBVkosR0FXSTtFQUNJLFVBQUE7RUFDQSxrQkFBQTtFQUNBLGNBQUE7RUFDQSxxQkFBQTtFQUNBLDZCQUFBO0VBQ0EsZ0JBQUE7O0FBU1I7RUNuS0EscUJBQUE7RUFBQSxVQUFBO0VEektBLGlCQUFBO0VDeUtBLGNBQUE7RUFBQSxhQzNMcUIsOENEMkxyQjtFQUFBLGdCQUFBO0VBQUEsa0JBQUE7RUFBQSx1QkFBQTtFRDBLSSw0QkFBQTs7QUFLSSxVQUhKLEVBR0s7QUFBRCxVQUZKLEdBRUs7QUFBRCxVQURKLEdBQ0s7RUFDRyxnQkFBQTs7QUFiWixVQWlCSTtBQWpCSixVQWtCSTtBQWxCSixVQW1CSTtFQ3RMSixjQUFBO0VEd0xRLGNBQUE7RUFqV1IsZUFBQTtFQW1XUSx1QkFBQTs7QUFDQSxVQVBKLE9BT0s7QUFBRCxVQU5KLE1BTUs7QUFBRCxVQUxKLE9BS0s7RUFDRyxTRTlMWSxhRjhMWjs7QUF6QlosVUE0Qkk7RUMvTEosa0JBQUE7O0FEcU1BLFVBQVU7QUFDVixVQUFVO0VBQ04sU0FBUyxFQUFUOztBQUdKO0VBQ0ksWUFBQTs7QUFFSixDQUFDO0FBQ0QsQ0FBQztFQUNHLFNBQVMsRUFBVDtFQUNBLGFBQUE7O0FBSUo7RUNwTkEsa0JBQUE7O0FxQzZxQko7RXRDdDFCSSxpQkFBQTs7QXNDZzNCSjtFdENwMkJJLGlCQUFBOztBc0NrM0JKO0V0QzEyQkkscUJBQUE7RUFDQSxzQkFBQTtFQW9CQSxxQkFBQTtFQUNBLHFCQUFBO0VBQ0Esa0JBQUE7RUFDQSxpQkFBQTtFQUNBLGFBQUE7RXNDbTFCQSxnQkFBQTtFQUNBLFlBQUE7O0FBc0NKO0V0Qzc0QkksZ0JBQUE7RUFDQSx1QkFBQTtFQUNBLG1CQUFBO0VzQzY0QkEsZ0JBQUE7RUFDQSxZQUFBOztBQWFKO0V0Q3Y1QkksV0FBQTtFQUNBLGtCQUFBO0VBQ0EsaUJBQUE7RUFDQSw2QkFBQTtFQUNBLFNBQUE7O0FzQzQ2Qko7RXRDdjZCSSxxQkFBQTtFQUNBLHFCQUFBO0VBQ0Esa0JBQUE7RUFDQSxpQkFBQTtFQUNBLGFBQUE7O0FzQ3U2Qko7RXRDMzZCSSxxQkFBQTtFQUNBLHFCQUFBO0VBQ0Esa0JBQUE7RUFDQSxpQkFBQTtFQUNBLGFBQUE7O0FzQ3E3Qko7RXRDbCtCSSxlQUFBO0VDeUtBLGNBQUE7RUFBQSxzQ0N6TDZDLHdCRHlMN0M7RUFBQSxnQkFBQTtFQUFBLGtCQUFBO0VBQUEsZ0JBQUE7O0FxQ2s0Qko7RXJDbDRCSSxTQUFBO0VBQUEsVUFBQTtFRHRHQSxxQkFBQTs7QXNDeWhDSjtFckNuN0JJLFNBQUE7RUFBQSxVQUFBO0VEdEdBLHFCQUFBOztBc0N5aENKLG9CdENwaENJO0VBQ0kscUJBQUE7RUFDQSxtQkFBQTs7QXNDaWlDUjtFckNsOEJJLGNBQUE7RUFBQSxxQkFBQTs7QUQvRUEscUJBQUM7RUMrRUQsY0FBQTtFQUFBLHFCQUFBOztBRDNFQSxxQkFBQztFQzJFRCxjQUFBO0VBQUEsMEJBQUE7O0FEdkVBLHFCQUFDO0VDdUVELGNBQUE7RUFBQSwwQkFBQTs7QXFDczhCSjtFckN0OEJJLGNBQUE7RUFBQSxxQkFBQTs7QUQvRUEsYUFBQztFQytFRCxjQUFBO0VBQUEscUJBQUE7O0FEM0VBLGFBQUM7RUMyRUQsY0FBQTtFQUFBLHFCQUFBOztBRHZFQSxhQUFDO0VDdUVELGNBQUE7RUFBQSwwQkFBQTs7QXFDK2dDSjtFdEN4ckNJLGVBQUE7RUN5S0EsZ0JBQUE7RUFBQSxnQkFBQTtFQTVMQSxnQkFBQTtFQU9BLG1CQUFBOztBcUN1c0NKO0V0QzNyQ0ksaUJBQUE7RUN5S0EsZ0JBQUE7RUFBQSxnQkFBQTtFQTVMQSxrQkFBQTtFQU9BLG1CQUFBOztBRDRJQTtFQUNJLGdCQUFBO0VBQ0EsOEJBQUE7RUFDQSwwQkFBQTtFQUNBLHNCQUFBOztBQUVKO0VBdElBLGlCQUFBO0VDeUtBLGNBQUE7RUFBQSxhQzNMcUIsOENEMkxyQjtFQUFBLGdCQUFBO0VBQUEsa0JBQUE7RUFBQSx1QkFBQTs7QUQvQkE7RUM3SkEsZ0JBQUE7RUFPQSxtQkFBQTs7QUQySkEsSUFBSTtFQUNBLFlBQUE7RUFDQSxpQ0FBQTs7QUFHSjtBQUNBO0VBQ0ksZ0JBQUE7O0FBR0o7QUFDQTtFQUNJLGtCQUFBOztBQUdKO0VDV0EsbUJBQUE7RUFBQSxjQUFBOztBRE5BO0FBQ0E7RUFDSSxlQUFBOztBQUdKO0VBQ0ksZ0JBQUE7RUFDQSxtQkFBQTtFQUNBLFNBQUE7RUFDQSw2QkFBQTs7QUFHSjtBQUNBO0VBQ0ksdUJBQUE7RUFDQSxjQUFBO0VBQ0Esa0JBQUE7RUFDQSx3QkFBQTs7QUFFSjtFQUNJLFdBQUE7O0FBRUo7RUFDSSxlQUFBOztBQUdKO0VBQ0ksa0JBQUE7O0FBUUo7RUF0TUEsZUFBQTtFQ3lLQSxnQkFBQTtFQUFBLGdCQUFBO0VBNUxBLGdCQUFBO0VBT0EsbUJBQUE7O0FEc05BO0VBMU1BLGlCQUFBO0VDeUtBLGdCQUFBO0VBQUEsZ0JBQUE7RUE1TEEsa0JBQUE7RUFPQSxtQkFBQTs7QUQwTkE7RUE5TUEsaUJBQUE7RUN5S0EsZ0JBQUE7RUFBQSxnQkFBQTtFQTVMQSxrQkFBQTtFQU9BLG1CQUFBOztBRDhOQTtFQWxOQSxpQkFBQTtFQ3lLQSxnQkFBQTtFQUFBLGdCQUFBO0VBNUxBLGdCQUFBO0VBT0EsbUJBQUE7O0FEa09BO0VBdE5BLGlCQUFBO0VDeUtBLGdCQUFBO0VBQUEsZ0JBQUE7RUE1TEEsZ0JBQUE7RUFPQSxtQkFBQTs7QURzT0E7RUExTkEsZUFBQTtFQ3lLQSxnQkFBQTtFQUFBLGdCQUFBO0VBNUxBLGdCQUFBO0VBT0EsbUJBQUE7O0FEME9BLEVBQ0k7QUFEQSxFQUNBO0FBREksRUFDSjtBQURRLEVBQ1I7QUFEWSxFQUNaO0FBRGdCLEVBQ2hCO0FBREosRUFFSTtBQUZBLEVBRUE7QUFGSSxFQUVKO0FBRlEsRUFFUjtBQUZZLEVBRVo7QUFGZ0IsRUFFaEI7RUE1TkosdUJBQUE7RUNxS0EsY0FBQTtFQUFBLGFDM0xxQiw4Q0QyTHJCO0VBQUEsZ0JBQUE7RUFBQSxrQkFBQTtFQUFBLGNBQUE7O0FEcUVBO0FBQ0E7RUN0RUEsY0FBQTtFQUFBLHFCQUFBOztBRC9FQSxDQUFDO0FBQUQsTUFBQztFQytFRCxjQUFBO0VBQUEscUJBQUE7O0FEM0VBLENBQUM7QUFBRCxNQUFDO0VDMkVELGNBQUE7RUFBQSwwQkFBQTs7QUR2RUEsQ0FBQztBQUFELE1BQUM7RUN1RUQsY0FBQTtFQUFBLDBCQUFBOztBRCtFQTtBQUNBO0VDNVFBLGdCQUFBO0VBT0EscUJBQUE7O0FEb1FBLEVBSUk7QUFISixFQUdJO0VDL1FKLGdCQUFBO0VBT0EsbUJBQUE7O0FEb1FBLEVBT0k7QUFOSixFQU1JO0FBUEosRUFRSTtBQVBKLEVBT0k7RUFDSSxnQkFBQTs7QUFJUjtFQUNJLGFBQUE7RUFDQSxtQkFBQTs7QUFFSjtFQ2hHQSxnQkFBQTtFRGtHSSxhQUFBO0VBQ0Esa0JBQUE7O0FBRUo7RUFDSSxhQUFBO0VBQ0EsbUJBQUE7RUFDQSxjQUFBOztBQVFKO0FBQ0E7QUFDQTtBQUNBO0VBQ0ksc0NFN1N5Qyx3QkY2U3pDOztBQUlKO0VDeEhBLG1CQUFBO0VBQUEsY0FBQTtFRHpLQSxpQkFBQTtFQ3lLQSxnQkFBQTtFRDZISSxtQkFBQTs7QUFJSjtFQ2pJQSxtQkFBQTtFQUFBLGNBQUE7RUFBQSxnQkFBQTtFRHpLQSxpQkFBQTs7QUFrVEE7RUN6SUEsbUJBQUE7RUQySUkseUJBQUE7RUMzSUosY0FBQTtFRDZJSSxjQUFBO0VBdFRKLGlCQUFBO0VBd1RJLGdCQUFBO0VBQ0EsdUJBQUE7RUNoSkosYUFBQTtFRGtKSSxxQkFBQTtFQUNBLHFCQUFBOztBQVZKLEdBV0k7RUFDSSxVQUFBO0VBQ0Esa0JBQUE7RUFDQSxjQUFBO0VBQ0EscUJBQUE7RUFDQSw2QkFBQTtFQUNBLGdCQUFBOztBQVNSO0VDbktBLHFCQUFBO0VBQUEsVUFBQTtFRHpLQSxpQkFBQTtFQ3lLQSxjQUFBO0VBQUEsYUMzTHFCLDhDRDJMckI7RUFBQSxnQkFBQTtFQUFBLGtCQUFBO0VBQUEsdUJBQUE7RUQwS0ksNEJBQUE7O0FBS0ksVUFISixFQUdLO0FBQUQsVUFGSixHQUVLO0FBQUQsVUFESixHQUNLO0VBQ0csZ0JBQUE7O0FBYlosVUFpQkk7QUFqQkosVUFrQkk7QUFsQkosVUFtQkk7RUN0TEosY0FBQTtFRHdMUSxjQUFBO0VBaldSLGVBQUE7RUFtV1EsdUJBQUE7O0FBQ0EsVUFQSixPQU9LO0FBQUQsVUFOSixNQU1LO0FBQUQsVUFMSixPQUtLO0VBQ0csU0U5TFksYUY4TFo7O0FBekJaLFVBNEJJO0VDL0xKLGtCQUFBOztBRHFNQSxVQUFVO0FBQ1YsVUFBVTtFQUNOLFNBQVMsRUFBVDs7QUFHSjtFQUNJLFlBQUE7O0FBRUosQ0FBQztBQUNELENBQUM7RUFDRyxTQUFTLEVBQVQ7RUFDQSxhQUFBOztBQUlKO0VDcE5BLGtCQUFBOztBc0NoTUo7RUFDSSxzQkFBQTs7QUFHSjtFQUVJLHNCQUFBOztBdEM2REEsNkJBQUM7QUFDRCw2QkFBQztFQUNHLFNBQVMsRUFBVDtFQUNBLGNBQUE7O0FBRUosNkJBQUM7RUFDRyxXQUFBOztBc0NoRVIsc0JBQXNCO0VBQ2xCLFdBQUE7O0FBRUosc0JBQXNCO0VBQ2xCLFlBQUE7O0FBZ0NKO0V0Q05JLGtCQUFBO0VBQ0EsU0FBQTs7QXNDMEJKO0V0Q3RCSSxrQkFBQTtFQUNBLFVBQUE7RUFDQSxXQUFBO0VBQ0EsWUFBQTtFQUNBLFVBQUE7RUFDQSxnQkFBQTtFQUNBLE1BQU0sZ0JBQU47RUFDQSxTQUFBOztBc0NvQ0o7RUFDSSxtQkFBQTtFQUNBLFlBQUE7RXRDN0NBLGtCQUFBO0VBQ0EsVUFBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0EsVUFBQTtFQUNBLGdCQUFBO0VBQ0EsTUFBTSxnQkFBTjtFQUNBLFNBQUE7O0FzQzBDSjtFdEN0Q0ksZ0JBQUE7RUFDQSxXQUFBO0VBQ0EsWUFBQTtFQUNBLFNBQUE7RUFDQSxpQkFBQTtFQUNBLFVBQUE7O0FzQ3NESjtFdEM4RUksYUFBQTtFQUFBLG1CQUFBOztBc0NoQko7RUFDSSxnQkFBQTtFQUNBLGtCQUFBO0VBQ0EsWUFBQTtFQUNBLFdBQUE7RXRDbEJBLG1CQUFtQixhQUFuQjtFQUNBLGVBQWUsYUFBZjtFQUNBLFdBQVcsYUFBWDs7QUFzRkEsb0JBQUM7RUFDRyxjQUFBO0VBQ0EsaUJBQUE7O0FBRUosb0JBQUM7RUFDRyxjQUFBO0VBQ0EsaUJBQUE7O0FBRUosb0JBQUM7RUFDRyxjQUFBO0VBQ0EsaUJBQUE7O0FBRUosb0JBQUM7RUFDRyxjQUFBO0VBQ0EsaUJBQUE7O0FzQ1RSO0V0QzNJUSx5QkFBQTtFQUNBLDJCQUFBO0VBQ0Esa0JBQWtCLHNEQUFsQjtFQUNBLGtCQUFrQixvREFBbEI7RUFDQSxrSEFBQTs7QXNDZ0pSO0V0QzNLUSx5QkFBQTtFQUNBLDJCQUFBO0VBQ0Esa0JBQWtCLDhCQUE4Qix3QkFBMkMseUJBQTNGO0VBQ0Esa0JBQWtCLG1EQUFsQjtFQUNBLGtIQUFBOztBdUNwRVI7RUFDSSxhQUFBO0VBQ0Esc0JBQUEifQ== */
\ No newline at end of file
diff --git a/lib/web/css/docs/index.html b/lib/web/css/docs/index.html
index 34945c1ff698b46f256a452359bebb25a2934b89..a1f28b666a1559a09a9baf56819486730118e845 100644
--- a/lib/web/css/docs/index.html
+++ b/lib/web/css/docs/index.html
@@ -143,32 +143,63 @@
 <p><code>&#39;@&#39; + &#39;object&#39; + &#39;-&#39; + &#39;property&#39; + &#39;-&#39; + &#39;state&#39; = @object-property-state</code></p>
 <p>If it is a private variable (is used only in a mixin), it must start with &quot;_&quot; character after &quot;@&quot;:</p>
 <p><code>&#39;@&#39; + &#39;_&#39; + &#39;object&#39; + &#39;-&#39; + &#39;property&#39; + &#39;-&#39; + &#39;state&#39; = @_object-property-state</code></p>
-<h3 id="examples">Examples:</h3>
-<h4 id="acceptable">Acceptable:</h4>
-<p><code>@link-color-hover;
+<h4 id="examples">Examples:</h4>
+<h5 id="acceptable">Acceptable:</h5>
+<pre><code class="lang-css">    @link-color-hover;
     @color-primary;
-    @color-2;</code></p>
+    @color-2;</code></pre>
 <p>Private variables:</p>
-<p><code>@_padding-left;
-    @_font-size;</code></p>
-<h4 id="unacceptable">Unacceptable:</h4>
-<p><code>@Link-Color-Hover;
+<pre><code class="lang-css">    @_padding-left;
+    @_font-size;</code></pre>
+<h5 id="unacceptable">Unacceptable:</h5>
+<pre><code class="lang-css">    @Link-Color-Hover;
     @colorPrimary;
     @color--primary;
     @paddingleft;
-    @__font-size;</code></p>
+    @__font-size;</code></pre>
+<p>&nbsp;</p>
 </div></article><article id="less-mixins-naming" class="section"><div class="docs"><a href="#less-mixins-naming" class="permalink"><svg viewBox="0 0 512 512" height="32" width="32" class="icon"><path d="M156.2,199.7c7.5-7.5,15.9-13.8,24.8-18.7c49.6-27.3,113.1-12.8,145,35.5l-38.5,38.5c-11.1-25.2-38.5-39.6-65.8-33.5c-10.3,2.3-20.1,7.4-28,15.4l-73.9,73.9c-22.4,22.4-22.4,58.9,0,81.4c22.4,22.4,58.9,22.4,81.4,0l22.8-22.8c20.7,8.2,42.9,11.5,64.9,9.9l-50.3,50.3c-43.1,43.1-113,43.1-156.1,0c-43.1-43.1-43.1-113-0-156.1L156.2,199.7z M273.6,82.3l-50.3,50.3c21.9-1.6,44.2,1.6,64.9,9.9l22.8-22.8c22.4-22.4,58.9-22.4,81.4,0c22.4,22.4,22.4,58.9,0,81.4l-73.9,73.9c-22.5,22.5-59.1,22.3-81.4,0c-5.2-5.2-9.7-11.7-12.5-18l-38.5,38.5c4,6.1,8.3,11.5,13.7,16.9c13.9,13.9,31.7,24.3,52.1,29.3c26.5,6.4,54.8,2.8,79.2-10.6c8.9-4.9,17.3-11.1,24.8-18.7l73.9-73.9c43.1-43.1,43.1-113,0-156.1C386.6,39.2,316.7,39.2,273.6,82.3z"></path></svg></a><h1 id="less-mixins-naming">Less mixins naming</h1>
 <p>A less mixin name can contain lowercase letters, numbers, &quot;-&quot; and &quot;_&quot; characters. It should not contain capital letters.</p>
 <p>A mixin name can consist of one or several words, concatenated with one hyphen. If the mixin is private, its name must start with the &quot;_&quot; character. Mixin should be named after property or action it describes.</p>
-<h3 id="examples">Examples:</h3>
-<h4 id="acceptable">Acceptable:</h4>
-<p><code>.mixin-name() {}
+<h4 id="examples">Examples:</h4>
+<h5 id="acceptable">Acceptable:</h5>
+<pre><code class="lang-css">    .mixin-name() {}
     .transition() {}
     .mixin() {}
-    ._button-gradient() {}</code></p>
-<h4 id="unacceptable">Unacceptable:</h4>
-<p><code>.mixinName() {}
+    ._button-gradient() {}</code></pre>
+<h5 id="unacceptable">Unacceptable:</h5>
+<pre><code class="lang-css">    .mixinName() {}
     .__transition() {}
     .MiXiN() {}
-    ._button--gradient() {}</code></p>
-</div></article></section><div class="bar bottom"><div hidden class="settings container"><!-- Icons from http://iconmonstr.com--><button title="Desktop (1280)" data-width='1280'><svg viewBox="0 0 412 386" height="24" width="26" class="icon"><path d="m147.6,343.9c-4.5,15.9-26.2,37.6-42.1,42.1h201c-15.3,-4-38.1,-26.8-42.1,-42.1H147.6zM387,0.5H25c-13.8,0-25,11.2-25,25V294c0,13.8 11.2,25 25,25h362c13.8,0 25,-11.2 25,-25V25.5C412,11.7 400.8,0.5 387,0.5zM369.9,238.2H42.1L42.1,42.6 369.9,42.6V238.2z"></path></svg></button><button title="Laptop (1024)" data-width='1024'><svg viewBox="0 0 384 312" height="23" width="28" class="icon"><path d="m349.2,20.5c0,-11-9,-20-20,-20H53.6c-11,0-20,9-20,20v194H349.2v-194zm-27,167H60.6V27.5H322.2v160zm28,42H32.6L2.6,282.1c-3.5,6.2-3.5,13.8 0.1,19.9 3.6,6.2 10.2,9.9 17.3,9.9H363.1c7.1,0 13.7,-3.8 17.3,-10 3.6,-6.2 3.6,-13.8 0,-20l-30.2,-52.5zm-196.9,54 8,-23.5h60.5l8,23.5h-76.5z"></path></svg></button><button title="Tablet (768)" data-width='768'><svg viewBox="0 0 317 412" height="24" width="18" class="icon"><path d="M 316.5,380 V 32 c 0,-17.7 -14.3,-32 -32,-32 H 32 C 14.3,0 0,14.3 0,32 v 348 c 0,17.7 14.3,32 32,32 h 252.5 c 17.7,0 32,-14.3 32,-32 z M 40,367 V 45 H 276.5 V 367 H 40 z m 109.8,22.7 c 0,-4.7 3.8,-8.5 8.5,-8.5 4.7,0 8.5,3.8 8.5,8.5 0,4.7 -3.8,8.5 -8.5,8.5 -4.7,0 -8.5,-3.8 -8.5,-8.5 z"></path></svg></button><button title="Smart phone (320)" data-width='320'><svg viewBox="0 0 224 412" height="24" width="13" class="icon"><path d="M 190.7,0 H 33 C 14.8,0 0,14.8 0,33 v 346 c 0,18.2 14.8,33 33,33 h 157.7 c 18.2,0 33,-14.8 33,-33 V 33 c 0,-18.2 -14.8,-33 -33,-33 z M 94.3,30.2 h 37 c 2.2,0 4,1.8 4,4 0,2.2 -1.8,4 -4,4 h -37 c -2.2,0 -4,-1.8 -4,-4 0,-2.2 1.8,-4 4,-4 z m 18.5,362.8 c -8.8,0 -16,-7.2 -16,-16 0,-8.8 7.2,-16 16,-16 8.8,0 16,7.2 16,16 0,8.8 -7.2,16 -16,16 z M 198.6,343.8 H 25.1 V 68.2 h 173.5 v 275.5 z"></path></svg></button><button title="Feature phone (240)" data-width='240'><svg viewBox="0 0 201 412" height="24" width="12" class="icon"><path d="M 165.5,0.2 V 45 H 25 c -13.8,0 -25,11.2 -25,25 V 387 c 0,13.8 11.2,25 25,25 h 150.5 c 13.8,0 25,-11.2 25,-25 V 0.2 h -35 z M 65.2,366.5 H 34.2 v -24.5 h 31 v 24.5 z m 0,-44.3 H 34.2 v -24.5 h 31 v 24.5 z m 50.5,44.3 H 84.7 v -24.5 h 31 v 24.5 z m 0,-44.3 H 84.7 v -24.5 h 31 v 24.5 z m 50.5,44.3 h -31 v -24.5 h 31 v 24.5 z m 0,-44.3 h -31 v -24.5 h 31 v 24.5 z m 0,-59.3 h -132 V 95.4 h 132 V 262.9 z"></path></svg></button><button title="Auto (100%)" data-width="auto" class="auto is-active">Auto</button></div></div><script>(function(){var a=[{title:"actions-toolbar",filename:"actions-toolbar",url:"actions-toolbar.html"},{title:"Actions toolbar",filename:"actions-toolbar",url:"actions-toolbar.html#actions-toolbar"},{title:"Actions toolbar mixin variables",filename:"actions-toolbar",url:"actions-toolbar.html#actions-toolbar-mixin-variables"},{title:"Actions toolbar alignment",filename:"actions-toolbar",url:"actions-toolbar.html#actions-toolbar-alignment"},{title:"Reverse primary and secondary blocks",filename:"actions-toolbar",url:"actions-toolbar.html#reverse-primary-and-secondary-blocks"},{title:"Actions toolbar indents customizations",filename:"actions-toolbar",url:"actions-toolbar.html#actions-toolbar-indents-customizations"},{title:"Responsive actions toolbar",filename:"actions-toolbar",url:"actions-toolbar.html#responsive-actions-toolbar"},{title:"breadcrumbs",filename:"breadcrumbs",url:"breadcrumbs.html"},{title:"Breadcrumbs",filename:"breadcrumbs",url:"breadcrumbs.html#breadcrumbs"},{title:"Breadcrumbs variables",filename:"breadcrumbs",url:"breadcrumbs.html#breadcrumbs-variables"},{title:"Button-styled breadcrumbs with gradient background, border, and no separating symbol",filename:"breadcrumbs",url:"breadcrumbs.html#buttonstyled-breadcrumbs-with-gradient-background-border-and-no-separating-symbol"},{title:"Breadcrumbs with solid background",filename:"breadcrumbs",url:"breadcrumbs.html#breadcrumbs-with-solid-background"},{title:"buttons",filename:"buttons",url:"buttons.html"},{title:"Default button",filename:"buttons",url:"buttons.html#default-button"},{title:"Button variables",filename:"buttons",url:"buttons.html#button-variables"},{title:"Button as an icon",filename:"buttons",url:"buttons.html#button-as-an-icon"},{title:"Button with an icon on the left or right side of the text",filename:"buttons",url:"buttons.html#button-with-an-icon-on-the-left-or-right-side-of-the-text"},{title:"Button with fixed width",filename:"buttons",url:"buttons.html#button-with-fixed-width"},{title:"Primary button",filename:"buttons",url:"buttons.html#primary-button"},{title:"Primary button variables",filename:"buttons",url:"buttons.html#primary-button-variables"},{title:"Button with gradient background",filename:"buttons",url:"buttons.html#button-with-gradient-background"},{title:"Button as a link",filename:"buttons",url:"buttons.html#button-as-a-link"},{title:"Link as a button",filename:"buttons",url:"buttons.html#link-as-a-button"},{title:"Button reset",filename:"buttons",url:"buttons.html#button-reset"},{title:"Button revert secondary color",filename:"buttons",url:"buttons.html#button-revert-secondary-color"},{title:"Button revert secondary color variables",filename:"buttons",url:"buttons.html#button-revert-secondary-color-variables"},{title:"Button revert secondary size",filename:"buttons",url:"buttons.html#button-revert-secondary-size"},{title:"Button revert secondary size variables",filename:"buttons",url:"buttons.html#button-revert-secondary-size-variables"},{title:"docs",filename:"docs",url:"docs.html"},{title:"Documentation",filename:"docs",url:"docs.html#documentation"},{title:"dropdowns",filename:"dropdowns",url:"dropdowns.html"},{title:"Drop-down and split buttons mixins",filename:"dropdowns",url:"dropdowns.html#dropdown-and-split-buttons-mixins"},{title:"Drop-down",filename:"dropdowns",url:"dropdowns.html#dropdown"},{title:"Drop-down variables",filename:"dropdowns",url:"dropdowns.html#dropdown-variables"},{title:"Drop-down with icon customization",filename:"dropdowns",url:"dropdowns.html#dropdown-with-icon-customization"},{title:"Modify dropdown list styles",filename:"dropdowns",url:"dropdowns.html#modify-dropdown-list-styles"},{title:"Split button",filename:"dropdowns",url:"dropdowns.html#split-button"},{title:"Split button variables",filename:"dropdowns",url:"dropdowns.html#split-button-variables"},{title:"Split button - button styling",filename:"dropdowns",url:"dropdowns.html#split-button-button-styling"},{title:"Split button icon customization",filename:"dropdowns",url:"dropdowns.html#split-button-icon-customization"},{title:"Split button drop-down list customization",filename:"dropdowns",url:"dropdowns.html#split-button-dropdown-list-customization"},{title:"forms",filename:"forms",url:"forms.html"},{title:"Forms mixins",filename:"forms",url:"forms.html#forms-mixins"},{title:"Global forms elements customization",filename:"forms",url:"forms.html#global-forms-elements-customization"},{title:"Fieldsets & fields customization",filename:"forms",url:"forms.html#fieldsets-fields-customization"},{title:"Fieldset and legend customization variables",filename:"forms",url:"forms.html#fieldset-and-legend-customization-variables"},{title:"Fields customization variables",filename:"forms",url:"forms.html#fields-customization-variables"},{title:"Required fields message customization variables",filename:"forms",url:"forms.html#required-fields-message-customization-variables"},{title:"Form element inputs customization",filename:"forms",url:"forms.html#form-element-inputs-customization"},{title:"Form element inputs customization variables",filename:"forms",url:"forms.html#form-element-inputs-customization-variables"},{title:"Form element choice",filename:"forms",url:"forms.html#form-element-choice"},{title:"Form element choice variables",filename:"forms",url:"forms.html#form-element-choice-variables"},{title:"Custom color",filename:"forms",url:"forms.html#custom-color"},{title:"Input number - input-text view",filename:"forms",url:"forms.html#input-number-inputtext-view"},{title:"Input search - input-text view",filename:"forms",url:"forms.html#input-search-inputtext-view"},{title:"Form validation",filename:"forms",url:"forms.html#form-validation"},{title:"Form validation variables//  <pre>",filename:"forms",url:"forms.html#form-validation-variables-pre"},{title:"icons",filename:"icons",url:"icons.html"},{title:"Icons",filename:"icons",url:"icons.html#icons"},{title:"Icon with image or sprite",filename:"icons",url:"icons.html#icon-with-image-or-sprite"},{title:"Icon with image or sprite variables",filename:"icons",url:"icons.html#icon-with-image-or-sprite-variables"},{title:"Icon position for an icon with image or sprite",filename:"icons",url:"icons.html#icon-position-for-an-icon-with-image-or-sprite"},{title:"Position for icon with image or sprite mixin variables",filename:"icons",url:"icons.html#position-for-icon-with-image-or-sprite-mixin-variables"},{title:"Icon sprite position (with grid)",filename:"icons",url:"icons.html#icon-sprite-position-with-grid"},{title:"Icon sprite position variables",filename:"icons",url:"icons.html#icon-sprite-position-variables"},{title:"Image/sprite icon size",filename:"icons",url:"icons.html#imagesprite-icon-size"},{title:"Image/sprite icon size variables",filename:"icons",url:"icons.html#imagesprite-icon-size-variables"},{title:"Font icon",filename:"icons",url:"icons.html#font-icon"},{title:"Font icon variables",filename:"icons",url:"icons.html#font-icon-variables"},{title:"Change the size of font icon",filename:"icons",url:"icons.html#change-the-size-of-font-icon"},{title:"Change the size of font icon variables",filename:"icons",url:"icons.html#change-the-size-of-font-icon-variables"},{title:"Hide icon text",filename:"icons",url:"icons.html#hide-icon-text"},{title:"Sprite and font icons for Blank theme",filename:"icons",url:"icons.html#sprite-and-font-icons-for-blank-theme"},{title:"layout",filename:"layout",url:"layout.html"},{title:"Layout",filename:"layout",url:"layout.html#layout"},{title:"Layout global variables",filename:"layout",url:"layout.html#layout-global-variables"},{title:"Page layouts",filename:"layout",url:"layout.html#page-layouts"},{title:"Layout column",filename:"layout",url:"layout.html#layout-column"},{title:"Layout column variables",filename:"layout",url:"layout.html#layout-column-variables"},{title:"Layout width",filename:"layout",url:"layout.html#layout-width"},{title:"Layout width variables",filename:"layout",url:"layout.html#layout-width-variables"},{title:"lib",filename:"lib",url:"lib.html"},{title:"Including Magento UI library to your theme",filename:"lib",url:"lib.html#including-magento-ui-library-to-your-theme"},{title:"loaders",filename:"loaders",url:"loaders.html"},{title:"Loaders",filename:"loaders",url:"loaders.html#loaders"},{title:"Default loader variables",filename:"loaders",url:"loaders.html#default-loader-variables"},{title:"Loading",filename:"loaders",url:"loaders.html#loading"},{title:"Loading default variables",filename:"loaders",url:"loaders.html#loading-default-variables"},{title:"messages",filename:"messages",url:"messages.html"},{title:"Messages",filename:"messages",url:"messages.html#messages"},{title:"Information message",filename:"messages",url:"messages.html#information-message"},{title:"Warning message",filename:"messages",url:"messages.html#warning-message"},{title:"Error message",filename:"messages",url:"messages.html#error-message"},{title:"Success message",filename:"messages",url:"messages.html#success-message"},{title:"Notice message",filename:"messages",url:"messages.html#notice-message"},{title:"Message with inner icon",filename:"messages",url:"messages.html#message-with-inner-icon"},{title:"Message with lateral icon",filename:"messages",url:"messages.html#message-with-lateral-icon"},{title:"Custom message style",filename:"messages",url:"messages.html#custom-message-style"},{title:"Messages global variables",filename:"messages",url:"messages.html#messages-global-variables"},{title:"pages",filename:"pages",url:"pages.html"},{title:"Pagination HTML markup",filename:"pages",url:"pages.html#pagination-html-markup"},{title:"Pagination variables",filename:"pages",url:"pages.html#pagination-variables"},{title:"Pagination with label and gradient background on links",filename:"pages",url:"pages.html#pagination-with-label-and-gradient-background-on-links"},{title:'Pagination with "previous"..."next" text links and label',filename:"pages",url:"pages.html#pagination-with-previousnext-text-links-and-label"},{title:"Pagination without label, with solid background",filename:"pages",url:"pages.html#pagination-without-label-with-solid-background"},{title:"popups",filename:"popups",url:"popups.html"},{title:"Popups",filename:"popups",url:"popups.html#popups"},{title:"Popup variables",filename:"popups",url:"popups.html#popup-variables"},{title:"Window overlay mixin variables",filename:"popups",url:"popups.html#window-overlay-mixin-variables"},{title:"Fixed height popup",filename:"popups",url:"popups.html#fixed-height-popup"},{title:"Fixed content height popup",filename:"popups",url:"popups.html#fixed-content-height-popup"},{title:"Margins for header, content and footer block in popup",filename:"popups",url:"popups.html#margins-for-header-content-and-footer-block-in-popup"},{title:"Popup titles styled as theme headings",filename:"popups",url:"popups.html#popup-titles-styled-as-theme-headings"},{title:"Popup action toolbar",filename:"popups",url:"popups.html#popup-action-toolbar"},{title:"Popup Close button without an icon",filename:"popups",url:"popups.html#popup-close-button-without-an-icon"},{title:"Modify the icon of popup Close button",filename:"popups",url:"popups.html#modify-the-icon-of-popup-close-button"},{title:"Modify overlay styles",filename:"popups",url:"popups.html#modify-overlay-styles"},{title:"rating",filename:"rating",url:"rating.html"},{title:"Ratings",filename:"rating",url:"rating.html#ratings"},{title:"Global rating variables",filename:"rating",url:"rating.html#global-rating-variables"},{title:"Rating with vote",filename:"rating",url:"rating.html#rating-with-vote"},{title:"Rating with vote icons number customization",filename:"rating",url:"rating.html#rating-with-vote-icons-number-customization"},{title:"Rating with vote icons colors customization",filename:"rating",url:"rating.html#rating-with-vote-icons-colors-customization"},{title:"Rating with vote icons symbol customization",filename:"rating",url:"rating.html#rating-with-vote-icons-symbol-customization"},{title:"Accessible rating with vote",filename:"rating",url:"rating.html#accessible-rating-with-vote"},{title:"Rating summary",filename:"rating",url:"rating.html#rating-summary"},{title:"Rating summary icons number customization",filename:"rating",url:"rating.html#rating-summary-icons-number-customization"},{title:"Rating summary icons color customization",filename:"rating",url:"rating.html#rating-summary-icons-color-customization"},{title:"Rating summary icons symbol customization",filename:"rating",url:"rating.html#rating-summary-icons-symbol-customization"},{title:"Rating summary hide label",filename:"rating",url:"rating.html#rating-summary-hide-label"},{title:"Rating summary multiple ratings",filename:"rating",url:"rating.html#rating-summary-multiple-ratings"},{title:"Rating hide label mixin",filename:"rating",url:"rating.html#rating-hide-label-mixin"},{title:"resets",filename:"resets",url:"resets.html"},{title:"Resets",filename:"resets",url:"resets.html#resets"},{title:"responsive",filename:"responsive",url:"responsive.html"},{title:"Responsive",filename:"responsive",url:"responsive.html#responsive"},{title:"Responsive mixins usage",filename:"responsive",url:"responsive.html#responsive-mixins-usage"},{title:"Responsive breakpoints",filename:"responsive",url:"responsive.html#responsive-breakpoints"},{title:"sections",filename:"sections",url:"sections.html"},{title:"Tabs and accordions",filename:"sections",url:"sections.html#tabs-and-accordions"},{title:"Tabs",filename:"sections",url:"sections.html#tabs"},{title:"Tabs mixin variables",filename:"sections",url:"sections.html#tabs-mixin-variables"},{title:"Tabs with content top border",filename:"sections",url:"sections.html#tabs-with-content-top-border"},{title:"Accordion",filename:"sections",url:"sections.html#accordion"},{title:"Accordion mixin variables",filename:"sections",url:"sections.html#accordion-mixin-variables"},{title:"Responsive tabs",filename:"sections",url:"sections.html#responsive-tabs"},{title:"Tabs Base",filename:"sections",url:"sections.html#tabs-base"},{title:"Accordion Base",filename:"sections",url:"sections.html#accordion-base"},{title:"tables",filename:"tables",url:"tables.html"},{title:"Tables",filename:"tables",url:"tables.html#tables"},{title:"Table mixin variables",filename:"tables",url:"tables.html#table-mixin-variables"},{title:"Table typography",filename:"tables",url:"tables.html#table-typography"},{title:"Table typography mixin variables",filename:"tables",url:"tables.html#table-typography-mixin-variables"},{title:"Table caption",filename:"tables",url:"tables.html#table-caption"},{title:"Table caption mixin variables",filename:"tables",url:"tables.html#table-caption-mixin-variables"},{title:"Table cells resize",filename:"tables",url:"tables.html#table-cells-resize"},{title:"Table cells resize variables",filename:"tables",url:"tables.html#table-cells-resize-variables"},{title:"Table background customization",filename:"tables",url:"tables.html#table-background-customization"},{title:"Table background mixin variables",filename:"tables",url:"tables.html#table-background-mixin-variables"},{title:"Table borders customization",filename:"tables",url:"tables.html#table-borders-customization"},{title:"Table borders mixin variables",filename:"tables",url:"tables.html#table-borders-mixin-variables"},{title:"Table with horizontal borders",filename:"tables",url:"tables.html#table-with-horizontal-borders"},{title:"Table with vertical borders",filename:"tables",url:"tables.html#table-with-vertical-borders"},{title:"Table with light borders",filename:"tables",url:"tables.html#table-with-light-borders"},{title:"Table without borders",filename:"tables",url:"tables.html#table-without-borders"},{title:"Striped table",filename:"tables",url:"tables.html#striped-table"},{title:"Striped table mixin variables",filename:"tables",url:"tables.html#striped-table-mixin-variables"},{title:"Table with rows hover",filename:"tables",url:"tables.html#table-with-rows-hover"},{title:"Table with rows hover mixin variables",filename:"tables",url:"tables.html#table-with-rows-hover-mixin-variables"},{title:"Responsive table technics #1",filename:"tables",url:"tables.html#responsive-table-technics-1"},{title:"Responsive table technics #2",filename:"tables",url:"tables.html#responsive-table-technics-2"},{title:"Responsive table technics #2 mixin variables",filename:"tables",url:"tables.html#responsive-table-technics-2-mixin-variables"},{title:"tooltips",filename:"tooltips",url:"tooltips.html"},{title:"Tooltips",filename:"tooltips",url:"tooltips.html#tooltips"},{title:"Tooltips variables",filename:"tooltips",url:"tooltips.html#tooltips-variables"},{title:"typography",filename:"typography",url:"typography.html"},{title:"Typogrphy",filename:"typography",url:"typography.html#typogrphy"},{title:"Typography variables",filename:"typography",url:"typography.html#typography-variables"},{title:"Font-size mixin",filename:"typography",url:"typography.html#fontsize-mixin"},{title:"Line-height mixin",filename:"typography",url:"typography.html#lineheight-mixin"},{title:"Word breaking mixin",filename:"typography",url:"typography.html#word-breaking-mixin"},{title:"Font face mixin",filename:"typography",url:"typography.html#font-face-mixin"},{title:"Text overflow mixin",filename:"typography",url:"typography.html#text-overflow-mixin"},{title:"Text hide",filename:"typography",url:"typography.html#text-hide"},{title:"Hyphens",filename:"typography",url:"typography.html#hyphens"},{title:"Font style and color",filename:"typography",url:"typography.html#font-style-and-color"},{title:"Font style mixin variables",filename:"typography",url:"typography.html#font-style-mixin-variables"},{title:"Reset list styles",filename:"typography",url:"typography.html#reset-list-styles"},{title:"Reset list styles variables",filename:"typography",url:"typography.html#reset-list-styles-variables"},{title:"Inline-block list item styling",filename:"typography",url:"typography.html#inlineblock-list-item-styling"},{title:"Link styling mixin",filename:"typography",url:"typography.html#link-styling-mixin"},{title:"Link styling mixin variables",filename:"typography",url:"typography.html#link-styling-mixin-variables"},{title:"Heading styling mixin",filename:"typography",url:"typography.html#heading-styling-mixin"},{title:"Base typography mixins",filename:"typography",url:"typography.html#base-typography-mixins"},{title:"Headings typography mixin",filename:"typography",url:"typography.html#headings-typography-mixin"},{title:"Typography links mixin",filename:"typography",url:"typography.html#typography-links-mixin"},{title:"Typography lists mixin",filename:"typography",url:"typography.html#typography-lists-mixin"},{title:"Typography code elements mixin",filename:"typography",url:"typography.html#typography-code-elements-mixin"},{title:"Typography blockquote",filename:"typography",url:"typography.html#typography-blockquote"},{title:"utilities",filename:"utilities",url:"utilities.html"},{title:"Utilities",filename:"utilities",url:"utilities.html#utilities"},{title:".clearfix()",filename:"utilities",url:"utilities.html#clearfix"},{title:".visibility-hidden()",filename:"utilities",url:"utilities.html#visibilityhidden"},{title:".visually-hidden()",filename:"utilities",url:"utilities.html#visuallyhidden"},{title:".visually-hidden-reset()",filename:"utilities",url:"utilities.html#visuallyhiddenreset"},{title:".css()",filename:"utilities",url:"utilities.html#css"},{title:".css() variables",filename:"utilities",url:"utilities.html#css-variables"},{title:".rotate()",filename:"utilities",url:"utilities.html#rotate"},{title:".rotate() variables",filename:"utilities",url:"utilities.html#rotate-variables"},{title:".input-placeholder()",filename:"utilities",url:"utilities.html#inputplaceholder"},{title:".input-placeholder() variables",filename:"utilities",url:"utilities.html#inputplaceholder-variables"},{title:".background-gradient()",filename:"utilities",url:"utilities.html#backgroundgradient"},{title:".background-gradient() variables",filename:"utilities",url:"utilities.html#backgroundgradient-variables"},{title:"variables",filename:"variables",url:"variables.html"},{title:"List of Global Variables",filename:"variables",url:"variables.html#list-of-global-variables"},{title:"Table with rows hover mixin variables",filename:"variables",url:"variables.html#table-with-rows-hover-mixin-variables"}];(function(){"use strict";var b=function(a,b){return Array.prototype.indexOf.call(a,b)!==-1},c=function(a,b){return Array.prototype.filter.call(a,b)},d=function(a,b){return Array.prototype.forEach.call(a,b)},e=document.getElementsByTagName("body")[0];e.addEventListener("click",function(a){var b=a.target;b.tagName.toLowerCase()==="svg"&&(b=b.parentNode);var c=!1;b.dataset.toggle!=null&&(a.preventDefault(),b.classList.contains("is-active")||(c=!0)),d(e.querySelectorAll("[data-toggle]"),function(a){a.classList.remove("is-active"),document.getElementById(a.dataset.toggle).hidden=!0}),c&&(b.classList.add("is-active"),document.getElementById(b.dataset.toggle).hidden=!1)}),function(){var f=e.getElementsByClassName("nav")[0];if(!f)return;var g=document.createElement("ul");g.className="nav-results",g.id="nav-search",g.hidden=!0,d(a,function(a){var b,c,d;b=document.createElement("li"),b._title=a.title.toLowerCase(),b.hidden=!0,b.appendChild(c=document.createElement("a")),c.href=a.url,c.innerHTML=a.title,c.appendChild(d=document.createElement("span")),d.innerHTML=a.filename,d.className="nav-results-filename",g.appendChild(b)}),f.appendChild(g);var h=g.children,i=function(a){d(h,function(a){a.hidden=!0});var b=this.value.toLowerCase(),e=[];b!==""&&(e=c(h,function(a){return a._title.indexOf(b)!==-1})),e.length>0?(d(e,function(a){a.hidden=!1}),g.hidden=!1):g.hidden=!0},j=f.querySelector('input[type="search"]');j.addEventListener("keyup",i),j.addEventListener("focus",i),e.addEventListener("click",function(a){if(a.target.classList&&a.target.classList.contains("search"))return;g.hidden=!0}),g.addEventListener("click",function(a){j.value=""});var k=document.createElement("ul");k.id="nav-toc",k.hidden=!0,k.className="nav-results toc-list",c(e.getElementsByTagName("*"),function(a){return b(["h1","h2","h3"],a.tagName.toLowerCase())}).map(function(a){var b=document.createElement("li"),c=document.createElement("a"),d=a.tagName.toLowerCase()[1];c.classList.add("level-"+d),b.appendChild(c),c.href="#"+a.id,c.innerHTML=a.innerHTML,k.appendChild(b)}),f.appendChild(k)}()})(),function(){"use strict";if(location.hash==="#__preview__"||location.protocol==="data:")return;var a=function(a,b){return Array.prototype.forEach.call(a,b)},b=function(a,b){var e=Array.prototype.slice.call(arguments,2);return d(a,function(a){return(c(b)?b||a:a[b]).apply(a,e)})},c=function(a){return Object.prototype.toString.call(a)==="[object Function]"},d=function(a,b){return Array.prototype.map.call(a,b)},e=function(a,b){return d(a,function(a){return a[b]})},f=function(a){var b={},c=a.split(";");for(var d=0;c.length>d;d++){var e=c[d].trim().split("=");b[e[0]]=e[1]}return b},g=function(a,c){return b(e(a,"classList"),"remove",c)},h=function(a,b){a.contentDocument.defaultView.postMessage(b,"*")},i=document.getElementsByTagName("head")[0],j=document.getElementsByTagName("body")[0],k=e(i.querySelectorAll('style[type="text/preview"]'),"innerHTML").join(""),l=e(i.querySelectorAll('script[type="text/preview"]'),"innerHTML").join(""),m=location.href.split("#")[0]+"#__preview__",n=document.createElement("iframe");n.src="data:text/html,",j.appendChild(n),n.addEventListener("load",function(){var b={sameOriginDataUri:!0};try{this.contentDocument,this.contentDocument||(b.sameOriginDataUri=!1)}catch(c){b.sameOriginDataUri=!1}this.parentNode.removeChild(this),a(j.getElementsByTagName("textarea"),function(a,c){o(a,b,c),q(),p(a)})});var o=function(a,b,c){var d,e,f;d=document.createElement("div"),d.appendChild(e=document.createElement("div")),d.className="preview",e.appendChild(f=document.createElement("iframe")),e.className="resizeable",f.setAttribute("scrolling","no"),f.name="iframe"+c++,f.addEventListener("load",function(){var c,d,e,f,g,i,j;j=this.contentDocument;if(!b.sameOriginDataUri&&this.src!==m)return;this.src===m&&(c=j.createElement("html"),c.appendChild(j.createElement("head")),c.appendChild(d=j.createElement("body")),d.innerHTML=a.textContent,j.replaceChild(c,j.documentElement)),g=j.createElement("head"),g.appendChild(f=j.createElement("style")),g.appendChild(e=j.createElement("script")),e.textContent=l,f.textContent=k,i=j.getElementsByTagName("head")[0],i.parentNode.replaceChild(g,i),h(this,"getHeight")});var g;b.sameOriginDataUri?g="data:text/html;charset=utf-8,"+encodeURIComponent("<!doctype html><html><head></head></body>"+a.textContent):g=m,f.setAttribute("src",g);var i=function(){f.contentDocument.body.innerHTML=this.value,h(f,"getHeight")};a.addEventListener("keypress",i),a.addEventListener("keyup",i),a.parentNode.insertBefore(d,a)},p=function(a){var b=document.createElement("div");b.className="preview-code",b.style.position="absolute",b.style.left="-9999px",j.appendChild(b);var c=parseInt(window.getComputedStyle(a).getPropertyValue("max-height"),10),d=function(a){b.textContent=this.value+"\n";var d=b.offsetHeight+2;d>=c?this.style.overflow="auto":this.style.overflow="hidden",this.style.height=b.offsetHeight+2+"px"};a.addEventListener("keypress",d),a.addEventListener("keyup",d),d.call(a)},q=function(){var b=j.getElementsByClassName("settings")[0],c=j.getElementsByClassName("resizeable"),d=30,e=function(b){document.cookie="preview-width="+b,a(c,function(a){b==="auto"&&(b=a.parentNode.offsetWidth),a.style.width=b+"px",h(a.getElementsByTagName("iframe")[0],"getHeight")})},i=f(document.cookie)["preview-width"];if(i){e(i),g(b.getElementsByClassName("is-active"),"is-active");var k=b.querySelector('button[data-width="'+i+'"]');k&&k.classList.add("is-active")}window.addEventListener("message",function(a){if(a.data==null||!a.source)return;var b=a.data,c=document.getElementsByName(a.source.name)[0];b.height!=null&&c&&(c.parentNode.style.height=b.height+d+"px")},!1),b&&c.length>0&&(b.hidden=!1,b.addEventListener("click",function(a){var c=a.target.tagName.toLowerCase(),d;if(c==="button")d=a.target;else{if(c!=="svg")return;d=a.target.parentNode}a.preventDefault(),g(b.getElementsByClassName("is-active"),"is-active"),d.classList.add("is-active");var f=d.dataset.width;e(f)}))}}()})()</script></body></html><!-- Generated with StyleDocco (http://jacobrask.github.com/styledocco). -->
+    ._button--gradient() {}</code></pre>
+<p>&nbsp;</p>
+</div></article><article id="magento-ui-library-code-style" class="section"><div class="docs"><a href="#magento-ui-library-code-style" class="permalink"><svg viewBox="0 0 512 512" height="32" width="32" class="icon"><path d="M156.2,199.7c7.5-7.5,15.9-13.8,24.8-18.7c49.6-27.3,113.1-12.8,145,35.5l-38.5,38.5c-11.1-25.2-38.5-39.6-65.8-33.5c-10.3,2.3-20.1,7.4-28,15.4l-73.9,73.9c-22.4,22.4-22.4,58.9,0,81.4c22.4,22.4,58.9,22.4,81.4,0l22.8-22.8c20.7,8.2,42.9,11.5,64.9,9.9l-50.3,50.3c-43.1,43.1-113,43.1-156.1,0c-43.1-43.1-43.1-113-0-156.1L156.2,199.7z M273.6,82.3l-50.3,50.3c21.9-1.6,44.2,1.6,64.9,9.9l22.8-22.8c22.4-22.4,58.9-22.4,81.4,0c22.4,22.4,22.4,58.9,0,81.4l-73.9,73.9c-22.5,22.5-59.1,22.3-81.4,0c-5.2-5.2-9.7-11.7-12.5-18l-38.5,38.5c4,6.1,8.3,11.5,13.7,16.9c13.9,13.9,31.7,24.3,52.1,29.3c26.5,6.4,54.8,2.8,79.2-10.6c8.9-4.9,17.3-11.1,24.8-18.7l73.9-73.9c43.1-43.1,43.1-113,0-156.1C386.6,39.2,316.7,39.2,273.6,82.3z"></path></svg></a><h1 id="magento-ui-library-code-style">Magento UI library code style</h1>
+<p>Magento UI library involves 3 comments levels:</p>
+<p>First level comment must have an empty line before it and must be followed by an empty line:</p>
+<pre><code class="lang-css">//
+//  First level comment
+//  _____________________________________________</code></pre>
+<p>Second level comment must have an empty line before it and must be followed by an empty line:</p>
+<pre><code class="lang-css">//
+//  Second level comment
+//  ---------------------------------------------</code></pre>
+<p>Third level comment is recommended to have an empty line before it, when it is a single line comment. Also it is possible to use it in the end of a code line:</p>
+<pre><code class="lang-css">// Third level comment</code></pre>
+<p>Magento UI library involves the following code style:</p>
+<ul>
+<li>Every CSS/LESS code line has a &quot;;&quot; character</li>
+<li>All selectors are set to lowercase</li>
+<li>The CSS/LESS file has a line break at EOF</li>
+<li>There is a space but not a line break before the opening brace &quot;{&quot; and a line brake after it</li>
+<li>There is a line break before the closing brace &quot;}&quot;</li>
+<li>The leading zeroes are removed (i.e. padding: .5em; instead of padding: 0.5em;)</li>
+<li>There is a line break between declarations</li>
+<li>There is a line break after selector delimiter</li>
+<li>Units in zero-valued dimensions are removed</li>
+<li>Single quotes are used</li>
+<li>Properties are sorted alphabetically</li>
+<li>All colors are set to lowercase</li>
+<li>Shorthands for hexadecimal colors are used</li>
+<li>The code has a 4 spaces indent</li>
+</ul>
+</div></article></section><div class="bar bottom"><div hidden class="settings container"><!-- Icons from http://iconmonstr.com--><button title="Desktop (1280)" data-width='1280'><svg viewBox="0 0 412 386" height="24" width="26" class="icon"><path d="m147.6,343.9c-4.5,15.9-26.2,37.6-42.1,42.1h201c-15.3,-4-38.1,-26.8-42.1,-42.1H147.6zM387,0.5H25c-13.8,0-25,11.2-25,25V294c0,13.8 11.2,25 25,25h362c13.8,0 25,-11.2 25,-25V25.5C412,11.7 400.8,0.5 387,0.5zM369.9,238.2H42.1L42.1,42.6 369.9,42.6V238.2z"></path></svg></button><button title="Laptop (1024)" data-width='1024'><svg viewBox="0 0 384 312" height="23" width="28" class="icon"><path d="m349.2,20.5c0,-11-9,-20-20,-20H53.6c-11,0-20,9-20,20v194H349.2v-194zm-27,167H60.6V27.5H322.2v160zm28,42H32.6L2.6,282.1c-3.5,6.2-3.5,13.8 0.1,19.9 3.6,6.2 10.2,9.9 17.3,9.9H363.1c7.1,0 13.7,-3.8 17.3,-10 3.6,-6.2 3.6,-13.8 0,-20l-30.2,-52.5zm-196.9,54 8,-23.5h60.5l8,23.5h-76.5z"></path></svg></button><button title="Tablet (768)" data-width='768'><svg viewBox="0 0 317 412" height="24" width="18" class="icon"><path d="M 316.5,380 V 32 c 0,-17.7 -14.3,-32 -32,-32 H 32 C 14.3,0 0,14.3 0,32 v 348 c 0,17.7 14.3,32 32,32 h 252.5 c 17.7,0 32,-14.3 32,-32 z M 40,367 V 45 H 276.5 V 367 H 40 z m 109.8,22.7 c 0,-4.7 3.8,-8.5 8.5,-8.5 4.7,0 8.5,3.8 8.5,8.5 0,4.7 -3.8,8.5 -8.5,8.5 -4.7,0 -8.5,-3.8 -8.5,-8.5 z"></path></svg></button><button title="Smart phone (320)" data-width='320'><svg viewBox="0 0 224 412" height="24" width="13" class="icon"><path d="M 190.7,0 H 33 C 14.8,0 0,14.8 0,33 v 346 c 0,18.2 14.8,33 33,33 h 157.7 c 18.2,0 33,-14.8 33,-33 V 33 c 0,-18.2 -14.8,-33 -33,-33 z M 94.3,30.2 h 37 c 2.2,0 4,1.8 4,4 0,2.2 -1.8,4 -4,4 h -37 c -2.2,0 -4,-1.8 -4,-4 0,-2.2 1.8,-4 4,-4 z m 18.5,362.8 c -8.8,0 -16,-7.2 -16,-16 0,-8.8 7.2,-16 16,-16 8.8,0 16,7.2 16,16 0,8.8 -7.2,16 -16,16 z M 198.6,343.8 H 25.1 V 68.2 h 173.5 v 275.5 z"></path></svg></button><button title="Feature phone (240)" data-width='240'><svg viewBox="0 0 201 412" height="24" width="12" class="icon"><path d="M 165.5,0.2 V 45 H 25 c -13.8,0 -25,11.2 -25,25 V 387 c 0,13.8 11.2,25 25,25 h 150.5 c 13.8,0 25,-11.2 25,-25 V 0.2 h -35 z M 65.2,366.5 H 34.2 v -24.5 h 31 v 24.5 z m 0,-44.3 H 34.2 v -24.5 h 31 v 24.5 z m 50.5,44.3 H 84.7 v -24.5 h 31 v 24.5 z m 0,-44.3 H 84.7 v -24.5 h 31 v 24.5 z m 50.5,44.3 h -31 v -24.5 h 31 v 24.5 z m 0,-44.3 h -31 v -24.5 h 31 v 24.5 z m 0,-59.3 h -132 V 95.4 h 132 V 262.9 z"></path></svg></button><button title="Auto (100%)" data-width="auto" class="auto is-active">Auto</button></div></div><script>(function(){var a=[{title:"actions-toolbar",filename:"actions-toolbar",url:"actions-toolbar.html"},{title:"",filename:"actions-toolbar",url:"actions-toolbar.html#"},{title:"Actions toolbar",filename:"actions-toolbar",url:"actions-toolbar.html#actions-toolbar"},{title:"Actions toolbar mixin variables",filename:"actions-toolbar",url:"actions-toolbar.html#actions-toolbar-mixin-variables"},{title:"Actions toolbar alignment",filename:"actions-toolbar",url:"actions-toolbar.html#actions-toolbar-alignment"},{title:"Reverse primary and secondary blocks",filename:"actions-toolbar",url:"actions-toolbar.html#reverse-primary-and-secondary-blocks"},{title:"Actions toolbar indents customizations",filename:"actions-toolbar",url:"actions-toolbar.html#actions-toolbar-indents-customizations"},{title:"Responsive actions toolbar",filename:"actions-toolbar",url:"actions-toolbar.html#responsive-actions-toolbar"},{title:"breadcrumbs",filename:"breadcrumbs",url:"breadcrumbs.html"},{title:"",filename:"breadcrumbs",url:"breadcrumbs.html#"},{title:"Breadcrumbs",filename:"breadcrumbs",url:"breadcrumbs.html#breadcrumbs"},{title:"Breadcrumbs variables",filename:"breadcrumbs",url:"breadcrumbs.html#breadcrumbs-variables"},{title:"Button-styled breadcrumbs with gradient background, border, and no separating symbol",filename:"breadcrumbs",url:"breadcrumbs.html#buttonstyled-breadcrumbs-with-gradient-background-border-and-no-separating-symbol"},{title:"Breadcrumbs with solid background",filename:"breadcrumbs",url:"breadcrumbs.html#breadcrumbs-with-solid-background"},{title:"buttons",filename:"buttons",url:"buttons.html"},{title:"",filename:"buttons",url:"buttons.html#"},{title:"Default button",filename:"buttons",url:"buttons.html#default-button"},{title:"Button variables",filename:"buttons",url:"buttons.html#button-variables"},{title:"Button as an icon",filename:"buttons",url:"buttons.html#button-as-an-icon"},{title:"Button with an icon on the left or right side of the text",filename:"buttons",url:"buttons.html#button-with-an-icon-on-the-left-or-right-side-of-the-text"},{title:"Button with fixed width",filename:"buttons",url:"buttons.html#button-with-fixed-width"},{title:"Primary button",filename:"buttons",url:"buttons.html#primary-button"},{title:"Primary button variables",filename:"buttons",url:"buttons.html#primary-button-variables"},{title:"Button with gradient background",filename:"buttons",url:"buttons.html#button-with-gradient-background"},{title:"Button as a link",filename:"buttons",url:"buttons.html#button-as-a-link"},{title:"Link as a button",filename:"buttons",url:"buttons.html#link-as-a-button"},{title:"Button reset",filename:"buttons",url:"buttons.html#button-reset"},{title:"Button revert secondary color",filename:"buttons",url:"buttons.html#button-revert-secondary-color"},{title:"Button revert secondary color variables",filename:"buttons",url:"buttons.html#button-revert-secondary-color-variables"},{title:"Button revert secondary size",filename:"buttons",url:"buttons.html#button-revert-secondary-size"},{title:"Button revert secondary size variables",filename:"buttons",url:"buttons.html#button-revert-secondary-size-variables"},{title:"docs",filename:"docs",url:"docs.html"},{title:"",filename:"docs",url:"docs.html#"},{title:"Documentation",filename:"docs",url:"docs.html#documentation"},{title:"dropdowns",filename:"dropdowns",url:"dropdowns.html"},{title:"",filename:"dropdowns",url:"dropdowns.html#"},{title:"Drop-down and split buttons mixins",filename:"dropdowns",url:"dropdowns.html#dropdown-and-split-buttons-mixins"},{title:"Drop-down",filename:"dropdowns",url:"dropdowns.html#dropdown"},{title:"Drop-down variables",filename:"dropdowns",url:"dropdowns.html#dropdown-variables"},{title:"Drop-down with icon customization",filename:"dropdowns",url:"dropdowns.html#dropdown-with-icon-customization"},{title:"Modify dropdown list styles",filename:"dropdowns",url:"dropdowns.html#modify-dropdown-list-styles"},{title:"Split button",filename:"dropdowns",url:"dropdowns.html#split-button"},{title:"Split button variables",filename:"dropdowns",url:"dropdowns.html#split-button-variables"},{title:"Split button - button styling",filename:"dropdowns",url:"dropdowns.html#split-button-button-styling"},{title:"Split button icon customization",filename:"dropdowns",url:"dropdowns.html#split-button-icon-customization"},{title:"Split button drop-down list customization",filename:"dropdowns",url:"dropdowns.html#split-button-dropdown-list-customization"},{title:"forms",filename:"forms",url:"forms.html"},{title:"",filename:"forms",url:"forms.html#"},{title:"Forms mixins",filename:"forms",url:"forms.html#forms-mixins"},{title:"Global forms elements customization",filename:"forms",url:"forms.html#global-forms-elements-customization"},{title:"Fieldsets & fields customization",filename:"forms",url:"forms.html#fieldsets-fields-customization"},{title:"Fieldset and legend customization variables",filename:"forms",url:"forms.html#fieldset-and-legend-customization-variables"},{title:"Fields customization variables",filename:"forms",url:"forms.html#fields-customization-variables"},{title:"Required fields message customization variables",filename:"forms",url:"forms.html#required-fields-message-customization-variables"},{title:"Form element inputs customization",filename:"forms",url:"forms.html#form-element-inputs-customization"},{title:"Form element inputs customization variables",filename:"forms",url:"forms.html#form-element-inputs-customization-variables"},{title:"Form element choice",filename:"forms",url:"forms.html#form-element-choice"},{title:"Form element choice variables",filename:"forms",url:"forms.html#form-element-choice-variables"},{title:"Custom color",filename:"forms",url:"forms.html#custom-color"},{title:"Input number - input-text view",filename:"forms",url:"forms.html#input-number-inputtext-view"},{title:"Input search - input-text view",filename:"forms",url:"forms.html#input-search-inputtext-view"},{title:"Form validation",filename:"forms",url:"forms.html#form-validation"},{title:"Form validation variables//  <pre>",filename:"forms",url:"forms.html#form-validation-variables-pre"},{title:"icons",filename:"icons",url:"icons.html"},{title:"",filename:"icons",url:"icons.html#"},{title:"Icons",filename:"icons",url:"icons.html#icons"},{title:"Icon with image or sprite",filename:"icons",url:"icons.html#icon-with-image-or-sprite"},{title:"Icon with image or sprite variables",filename:"icons",url:"icons.html#icon-with-image-or-sprite-variables"},{title:"Icon position for an icon with image or sprite",filename:"icons",url:"icons.html#icon-position-for-an-icon-with-image-or-sprite"},{title:"Position for icon with image or sprite mixin variables",filename:"icons",url:"icons.html#position-for-icon-with-image-or-sprite-mixin-variables"},{title:"Icon sprite position (with grid)",filename:"icons",url:"icons.html#icon-sprite-position-with-grid"},{title:"Icon sprite position variables",filename:"icons",url:"icons.html#icon-sprite-position-variables"},{title:"Image/sprite icon size",filename:"icons",url:"icons.html#imagesprite-icon-size"},{title:"Image/sprite icon size variables",filename:"icons",url:"icons.html#imagesprite-icon-size-variables"},{title:"Font icon",filename:"icons",url:"icons.html#font-icon"},{title:"Font icon variables",filename:"icons",url:"icons.html#font-icon-variables"},{title:"Change the size of font icon",filename:"icons",url:"icons.html#change-the-size-of-font-icon"},{title:"Change the size of font icon variables",filename:"icons",url:"icons.html#change-the-size-of-font-icon-variables"},{title:"Hide icon text",filename:"icons",url:"icons.html#hide-icon-text"},{title:"Sprite and font icons for Blank theme",filename:"icons",url:"icons.html#sprite-and-font-icons-for-blank-theme"},{title:"layout",filename:"layout",url:"layout.html"},{title:"",filename:"layout",url:"layout.html#"},{title:"Layout",filename:"layout",url:"layout.html#layout"},{title:"Layout global variables",filename:"layout",url:"layout.html#layout-global-variables"},{title:"Page layouts",filename:"layout",url:"layout.html#page-layouts"},{title:"Layout column",filename:"layout",url:"layout.html#layout-column"},{title:"Layout column variables",filename:"layout",url:"layout.html#layout-column-variables"},{title:"Layout width",filename:"layout",url:"layout.html#layout-width"},{title:"Layout width variables",filename:"layout",url:"layout.html#layout-width-variables"},{title:"lib",filename:"lib",url:"lib.html"},{title:"",filename:"lib",url:"lib.html#"},{title:"Including Magento UI library to your theme",filename:"lib",url:"lib.html#including-magento-ui-library-to-your-theme"},{title:"loaders",filename:"loaders",url:"loaders.html"},{title:"",filename:"loaders",url:"loaders.html#"},{title:"Loaders",filename:"loaders",url:"loaders.html#loaders"},{title:"Default loader variables",filename:"loaders",url:"loaders.html#default-loader-variables"},{title:"Loading",filename:"loaders",url:"loaders.html#loading"},{title:"Loading default variables",filename:"loaders",url:"loaders.html#loading-default-variables"},{title:"messages",filename:"messages",url:"messages.html"},{title:"",filename:"messages",url:"messages.html#"},{title:"Messages",filename:"messages",url:"messages.html#messages"},{title:"Information message",filename:"messages",url:"messages.html#information-message"},{title:"Warning message",filename:"messages",url:"messages.html#warning-message"},{title:"Error message",filename:"messages",url:"messages.html#error-message"},{title:"Success message",filename:"messages",url:"messages.html#success-message"},{title:"Notice message",filename:"messages",url:"messages.html#notice-message"},{title:"Message with inner icon",filename:"messages",url:"messages.html#message-with-inner-icon"},{title:"Message with lateral icon",filename:"messages",url:"messages.html#message-with-lateral-icon"},{title:"Custom message style",filename:"messages",url:"messages.html#custom-message-style"},{title:"Messages global variables",filename:"messages",url:"messages.html#messages-global-variables"},{title:"pages",filename:"pages",url:"pages.html"},{title:"",filename:"pages",url:"pages.html#"},{title:"Pagination HTML markup",filename:"pages",url:"pages.html#pagination-html-markup"},{title:"Pagination variables",filename:"pages",url:"pages.html#pagination-variables"},{title:"Pagination with label and gradient background on links",filename:"pages",url:"pages.html#pagination-with-label-and-gradient-background-on-links"},{title:'Pagination with "previous"..."next" text links and label',filename:"pages",url:"pages.html#pagination-with-previousnext-text-links-and-label"},{title:"Pagination without label, with solid background",filename:"pages",url:"pages.html#pagination-without-label-with-solid-background"},{title:"popups",filename:"popups",url:"popups.html"},{title:"",filename:"popups",url:"popups.html#"},{title:"Popups",filename:"popups",url:"popups.html#popups"},{title:"Popup variables",filename:"popups",url:"popups.html#popup-variables"},{title:"Window overlay mixin variables",filename:"popups",url:"popups.html#window-overlay-mixin-variables"},{title:"Fixed height popup",filename:"popups",url:"popups.html#fixed-height-popup"},{title:"Fixed content height popup",filename:"popups",url:"popups.html#fixed-content-height-popup"},{title:"Margins for header, content and footer block in popup",filename:"popups",url:"popups.html#margins-for-header-content-and-footer-block-in-popup"},{title:"Popup titles styled as theme headings",filename:"popups",url:"popups.html#popup-titles-styled-as-theme-headings"},{title:"Popup action toolbar",filename:"popups",url:"popups.html#popup-action-toolbar"},{title:"Popup Close button without an icon",filename:"popups",url:"popups.html#popup-close-button-without-an-icon"},{title:"Modify the icon of popup Close button",filename:"popups",url:"popups.html#modify-the-icon-of-popup-close-button"},{title:"Modify overlay styles",filename:"popups",url:"popups.html#modify-overlay-styles"},{title:"rating",filename:"rating",url:"rating.html"},{title:"",filename:"rating",url:"rating.html#"},{title:"Ratings",filename:"rating",url:"rating.html#ratings"},{title:"Global rating variables",filename:"rating",url:"rating.html#global-rating-variables"},{title:"Rating with vote",filename:"rating",url:"rating.html#rating-with-vote"},{title:"Rating with vote icons number customization",filename:"rating",url:"rating.html#rating-with-vote-icons-number-customization"},{title:"Rating with vote icons colors customization",filename:"rating",url:"rating.html#rating-with-vote-icons-colors-customization"},{title:"Rating with vote icons symbol customization",filename:"rating",url:"rating.html#rating-with-vote-icons-symbol-customization"},{title:"Accessible rating with vote",filename:"rating",url:"rating.html#accessible-rating-with-vote"},{title:"Rating summary",filename:"rating",url:"rating.html#rating-summary"},{title:"Rating summary icons number customization",filename:"rating",url:"rating.html#rating-summary-icons-number-customization"},{title:"Rating summary icons color customization",filename:"rating",url:"rating.html#rating-summary-icons-color-customization"},{title:"Rating summary icons symbol customization",filename:"rating",url:"rating.html#rating-summary-icons-symbol-customization"},{title:"Rating summary hide label",filename:"rating",url:"rating.html#rating-summary-hide-label"},{title:"Rating summary multiple ratings",filename:"rating",url:"rating.html#rating-summary-multiple-ratings"},{title:"Rating hide label mixin",filename:"rating",url:"rating.html#rating-hide-label-mixin"},{title:"resets",filename:"resets",url:"resets.html"},{title:"",filename:"resets",url:"resets.html#"},{title:"Resets",filename:"resets",url:"resets.html#resets"},{title:"responsive",filename:"responsive",url:"responsive.html"},{title:"",filename:"responsive",url:"responsive.html#"},{title:"Responsive",filename:"responsive",url:"responsive.html#responsive"},{title:"Responsive mixins usage",filename:"responsive",url:"responsive.html#responsive-mixins-usage"},{title:"Media query style groups separation variables",filename:"responsive",url:"responsive.html#media-query-style-groups-separation-variables"},{title:"Responsive breakpoints",filename:"responsive",url:"responsive.html#responsive-breakpoints"},{title:"sections",filename:"sections",url:"sections.html"},{title:"",filename:"sections",url:"sections.html#"},{title:"Tabs and accordions",filename:"sections",url:"sections.html#tabs-and-accordions"},{title:"Tabs",filename:"sections",url:"sections.html#tabs"},{title:"Tabs mixin variables",filename:"sections",url:"sections.html#tabs-mixin-variables"},{title:"Tabs with content top border",filename:"sections",url:"sections.html#tabs-with-content-top-border"},{title:"Accordion",filename:"sections",url:"sections.html#accordion"},{title:"Accordion mixin variables",filename:"sections",url:"sections.html#accordion-mixin-variables"},{title:"Responsive tabs",filename:"sections",url:"sections.html#responsive-tabs"},{title:"Tabs Base",filename:"sections",url:"sections.html#tabs-base"},{title:"Accordion Base",filename:"sections",url:"sections.html#accordion-base"},{title:"tables",filename:"tables",url:"tables.html"},{title:"",filename:"tables",url:"tables.html#"},{title:"Tables",filename:"tables",url:"tables.html#tables"},{title:"Table mixin variables",filename:"tables",url:"tables.html#table-mixin-variables"},{title:"Table typography",filename:"tables",url:"tables.html#table-typography"},{title:"Table typography mixin variables",filename:"tables",url:"tables.html#table-typography-mixin-variables"},{title:"Table caption",filename:"tables",url:"tables.html#table-caption"},{title:"Table caption mixin variables",filename:"tables",url:"tables.html#table-caption-mixin-variables"},{title:"Table cells resize",filename:"tables",url:"tables.html#table-cells-resize"},{title:"Table cells resize variables",filename:"tables",url:"tables.html#table-cells-resize-variables"},{title:"Table background customization",filename:"tables",url:"tables.html#table-background-customization"},{title:"Table background mixin variables",filename:"tables",url:"tables.html#table-background-mixin-variables"},{title:"Table borders customization",filename:"tables",url:"tables.html#table-borders-customization"},{title:"Table borders mixin variables",filename:"tables",url:"tables.html#table-borders-mixin-variables"},{title:"Table with horizontal borders",filename:"tables",url:"tables.html#table-with-horizontal-borders"},{title:"Table with vertical borders",filename:"tables",url:"tables.html#table-with-vertical-borders"},{title:"Table with light borders",filename:"tables",url:"tables.html#table-with-light-borders"},{title:"Table without borders",filename:"tables",url:"tables.html#table-without-borders"},{title:"Striped table",filename:"tables",url:"tables.html#striped-table"},{title:"Striped table mixin variables",filename:"tables",url:"tables.html#striped-table-mixin-variables"},{title:"Table with rows hover",filename:"tables",url:"tables.html#table-with-rows-hover"},{title:"Table with rows hover mixin variables",filename:"tables",url:"tables.html#table-with-rows-hover-mixin-variables"},{title:"Responsive table technics #1",filename:"tables",url:"tables.html#responsive-table-technics-1"},{title:"Responsive table technics #2",filename:"tables",url:"tables.html#responsive-table-technics-2"},{title:"Responsive table technics #2 mixin variables",filename:"tables",url:"tables.html#responsive-table-technics-2-mixin-variables"},{title:"tooltips",filename:"tooltips",url:"tooltips.html"},{title:"",filename:"tooltips",url:"tooltips.html#"},{title:"Tooltips",filename:"tooltips",url:"tooltips.html#tooltips"},{title:"Tooltips variables",filename:"tooltips",url:"tooltips.html#tooltips-variables"},{title:"typography",filename:"typography",url:"typography.html"},{title:"",filename:"typography",url:"typography.html#"},{title:"Typogrphy",filename:"typography",url:"typography.html#typogrphy"},{title:"Typography variables",filename:"typography",url:"typography.html#typography-variables"},{title:"Font-size mixin",filename:"typography",url:"typography.html#fontsize-mixin"},{title:"Line-height mixin",filename:"typography",url:"typography.html#lineheight-mixin"},{title:"Word breaking mixin",filename:"typography",url:"typography.html#word-breaking-mixin"},{title:"Font face mixin",filename:"typography",url:"typography.html#font-face-mixin"},{title:"Text overflow mixin",filename:"typography",url:"typography.html#text-overflow-mixin"},{title:"Text hide",filename:"typography",url:"typography.html#text-hide"},{title:"Hyphens",filename:"typography",url:"typography.html#hyphens"},{title:"Font style and color",filename:"typography",url:"typography.html#font-style-and-color"},{title:"Font style mixin variables",filename:"typography",url:"typography.html#font-style-mixin-variables"},{title:"Reset list styles",filename:"typography",url:"typography.html#reset-list-styles"},{title:"Reset list styles variables",filename:"typography",url:"typography.html#reset-list-styles-variables"},{title:"Inline-block list item styling",filename:"typography",url:"typography.html#inlineblock-list-item-styling"},{title:"Link styling mixin",filename:"typography",url:"typography.html#link-styling-mixin"},{title:"Link styling mixin variables",filename:"typography",url:"typography.html#link-styling-mixin-variables"},{title:"Heading styling mixin",filename:"typography",url:"typography.html#heading-styling-mixin"},{title:"Base typography mixins",filename:"typography",url:"typography.html#base-typography-mixins"},{title:"Headings typography mixin",filename:"typography",url:"typography.html#headings-typography-mixin"},{title:"Typography links mixin",filename:"typography",url:"typography.html#typography-links-mixin"},{title:"Typography lists mixin",filename:"typography",url:"typography.html#typography-lists-mixin"},{title:"Typography code elements mixin",filename:"typography",url:"typography.html#typography-code-elements-mixin"},{title:"Typography blockquote",filename:"typography",url:"typography.html#typography-blockquote"},{title:"utilities",filename:"utilities",url:"utilities.html"},{title:"",filename:"utilities",url:"utilities.html#"},{title:"Utilities",filename:"utilities",url:"utilities.html#utilities"},{title:".clearfix()",filename:"utilities",url:"utilities.html#clearfix"},{title:".visibility-hidden()",filename:"utilities",url:"utilities.html#visibilityhidden"},{title:".visually-hidden()",filename:"utilities",url:"utilities.html#visuallyhidden"},{title:".visually-hidden-reset()",filename:"utilities",url:"utilities.html#visuallyhiddenreset"},{title:".css()",filename:"utilities",url:"utilities.html#css"},{title:".css() variables",filename:"utilities",url:"utilities.html#css-variables"},{title:".rotate()",filename:"utilities",url:"utilities.html#rotate"},{title:".rotate() variables",filename:"utilities",url:"utilities.html#rotate-variables"},{title:".input-placeholder()",filename:"utilities",url:"utilities.html#inputplaceholder"},{title:".input-placeholder() variables",filename:"utilities",url:"utilities.html#inputplaceholder-variables"},{title:".background-gradient()",filename:"utilities",url:"utilities.html#backgroundgradient"},{title:".background-gradient() variables",filename:"utilities",url:"utilities.html#backgroundgradient-variables"},{title:"variables",filename:"variables",url:"variables.html"},{title:"",filename:"variables",url:"variables.html#"},{title:"List of Global Variables",filename:"variables",url:"variables.html#list-of-global-variables"},{title:"Table with rows hover mixin variables",filename:"variables",url:"variables.html#table-with-rows-hover-mixin-variables"}];(function(){"use strict";var b=function(a,b){return Array.prototype.indexOf.call(a,b)!==-1},c=function(a,b){return Array.prototype.filter.call(a,b)},d=function(a,b){return Array.prototype.forEach.call(a,b)},e=document.getElementsByTagName("body")[0];e.addEventListener("click",function(a){var b=a.target;b.tagName.toLowerCase()==="svg"&&(b=b.parentNode);var c=!1;b.dataset.toggle!=null&&(a.preventDefault(),b.classList.contains("is-active")||(c=!0)),d(e.querySelectorAll("[data-toggle]"),function(a){a.classList.remove("is-active"),document.getElementById(a.dataset.toggle).hidden=!0}),c&&(b.classList.add("is-active"),document.getElementById(b.dataset.toggle).hidden=!1)}),function(){var f=e.getElementsByClassName("nav")[0];if(!f)return;var g=document.createElement("ul");g.className="nav-results",g.id="nav-search",g.hidden=!0,d(a,function(a){var b,c,d;b=document.createElement("li"),b._title=a.title.toLowerCase(),b.hidden=!0,b.appendChild(c=document.createElement("a")),c.href=a.url,c.innerHTML=a.title,c.appendChild(d=document.createElement("span")),d.innerHTML=a.filename,d.className="nav-results-filename",g.appendChild(b)}),f.appendChild(g);var h=g.children,i=function(a){d(h,function(a){a.hidden=!0});var b=this.value.toLowerCase(),e=[];b!==""&&(e=c(h,function(a){return a._title.indexOf(b)!==-1})),e.length>0?(d(e,function(a){a.hidden=!1}),g.hidden=!1):g.hidden=!0},j=f.querySelector('input[type="search"]');j.addEventListener("keyup",i),j.addEventListener("focus",i),e.addEventListener("click",function(a){if(a.target.classList&&a.target.classList.contains("search"))return;g.hidden=!0}),g.addEventListener("click",function(a){j.value=""});var k=document.createElement("ul");k.id="nav-toc",k.hidden=!0,k.className="nav-results toc-list",c(e.getElementsByTagName("*"),function(a){return b(["h1","h2","h3"],a.tagName.toLowerCase())}).map(function(a){var b=document.createElement("li"),c=document.createElement("a"),d=a.tagName.toLowerCase()[1];c.classList.add("level-"+d),b.appendChild(c),c.href="#"+a.id,c.innerHTML=a.innerHTML,k.appendChild(b)}),f.appendChild(k)}()})(),function(){"use strict";if(location.hash==="#__preview__"||location.protocol==="data:")return;var a=function(a,b){return Array.prototype.forEach.call(a,b)},b=function(a,b){var e=Array.prototype.slice.call(arguments,2);return d(a,function(a){return(c(b)?b||a:a[b]).apply(a,e)})},c=function(a){return Object.prototype.toString.call(a)==="[object Function]"},d=function(a,b){return Array.prototype.map.call(a,b)},e=function(a,b){return d(a,function(a){return a[b]})},f=function(a){var b={},c=a.split(";");for(var d=0;c.length>d;d++){var e=c[d].trim().split("=");b[e[0]]=e[1]}return b},g=function(a,c){return b(e(a,"classList"),"remove",c)},h=function(a,b){a.contentDocument.defaultView.postMessage(b,"*")},i=document.getElementsByTagName("head")[0],j=document.getElementsByTagName("body")[0],k=e(i.querySelectorAll('style[type="text/preview"]'),"innerHTML").join(""),l=e(i.querySelectorAll('script[type="text/preview"]'),"innerHTML").join(""),m=location.href.split("#")[0]+"#__preview__",n=document.createElement("iframe");n.src="data:text/html,",j.appendChild(n),n.addEventListener("load",function(){var b={sameOriginDataUri:!0};try{this.contentDocument,this.contentDocument||(b.sameOriginDataUri=!1)}catch(c){b.sameOriginDataUri=!1}this.parentNode.removeChild(this),a(j.getElementsByTagName("textarea"),function(a,c){o(a,b,c),q(),p(a)})});var o=function(a,b,c){var d,e,f;d=document.createElement("div"),d.appendChild(e=document.createElement("div")),d.className="preview",e.appendChild(f=document.createElement("iframe")),e.className="resizeable",f.setAttribute("scrolling","no"),f.name="iframe"+c++,f.addEventListener("load",function(){var c,d,e,f,g,i,j;j=this.contentDocument;if(!b.sameOriginDataUri&&this.src!==m)return;this.src===m&&(c=j.createElement("html"),c.appendChild(j.createElement("head")),c.appendChild(d=j.createElement("body")),d.innerHTML=a.textContent,j.replaceChild(c,j.documentElement)),g=j.createElement("head"),g.appendChild(f=j.createElement("style")),g.appendChild(e=j.createElement("script")),e.textContent=l,f.textContent=k,i=j.getElementsByTagName("head")[0],i.parentNode.replaceChild(g,i),h(this,"getHeight")});var g;b.sameOriginDataUri?g="data:text/html;charset=utf-8,"+encodeURIComponent("<!doctype html><html><head></head></body>"+a.textContent):g=m,f.setAttribute("src",g);var i=function(){f.contentDocument.body.innerHTML=this.value,h(f,"getHeight")};a.addEventListener("keypress",i),a.addEventListener("keyup",i),a.parentNode.insertBefore(d,a)},p=function(a){var b=document.createElement("div");b.className="preview-code",b.style.position="absolute",b.style.left="-9999px",j.appendChild(b);var c=parseInt(window.getComputedStyle(a).getPropertyValue("max-height"),10),d=function(a){b.textContent=this.value+"\n";var d=b.offsetHeight+2;d>=c?this.style.overflow="auto":this.style.overflow="hidden",this.style.height=b.offsetHeight+2+"px"};a.addEventListener("keypress",d),a.addEventListener("keyup",d),d.call(a)},q=function(){var b=j.getElementsByClassName("settings")[0],c=j.getElementsByClassName("resizeable"),d=30,e=function(b){document.cookie="preview-width="+b,a(c,function(a){b==="auto"&&(b=a.parentNode.offsetWidth),a.style.width=b+"px",h(a.getElementsByTagName("iframe")[0],"getHeight")})},i=f(document.cookie)["preview-width"];if(i){e(i),g(b.getElementsByClassName("is-active"),"is-active");var k=b.querySelector('button[data-width="'+i+'"]');k&&k.classList.add("is-active")}window.addEventListener("message",function(a){if(a.data==null||!a.source)return;var b=a.data,c=document.getElementsByName(a.source.name)[0];b.height!=null&&c&&(c.parentNode.style.height=b.height+d+"px")},!1),b&&c.length>0&&(b.hidden=!1,b.addEventListener("click",function(a){var c=a.target.tagName.toLowerCase(),d;if(c==="button")d=a.target;else{if(c!=="svg")return;d=a.target.parentNode}a.preventDefault(),g(b.getElementsByClassName("is-active"),"is-active"),d.classList.add("is-active");var f=d.dataset.width;e(f)}))}}()})()</script></body></html><!-- Generated with StyleDocco (http://jacobrask.github.com/styledocco). -->
diff --git a/lib/web/css/docs/responsive.html b/lib/web/css/docs/responsive.html
index 5f55a72b6573edf46f7f1e3e7f61edd569174165..f3fa9d734c7cc070ec14d05911ef380017850a72 100644
--- a/lib/web/css/docs/responsive.html
+++ b/lib/web/css/docs/responsive.html
@@ -5,17 +5,17 @@
  */
 -->
 <!DOCTYPE html><html><head><title>responsive | Magento UI Library
-</title><meta charset="utf-8"><style>*{-moz-box-sizing:border-box;box-sizing:border-box;margin:0;padding:0;border:0}body{padding:60px 0 40px;background-color:hsl(207,10%,90%);color:hsl(207,5%,30%)}.container{max-width:1300px;margin:0 auto;padding:0 20px}.section{position:relative;margin-bottom:20px}.docs{position:relative;z-index:2;width:68%;min-height:200px;background-color:hsl(207,0%,100%);background-clip:padding-box;border:1px solid hsla(207,5%,5%,.1);border-radius:5px;box-shadow:0 0 3px hsla(207,5%,5%,.1)}.code{position:absolute;top:5px;bottom:5px;right:0;z-index:1;width:33%;padding:10px 10px 10px 20px;border-radius:0 5px 5px 0;border:1px solid hsla(207,20%,10%,.1);background-color:hsla(207,20%,95%,.9);background-clip:padding-box;opacity:.5;-webkit-transition:opacity .4s;-moz-transition:opacity .4s;-o-transition:opacity .4s;transition:opacity .4s}.code:hover{opacity:1}.preview{background:hsl(207,0%,100%);border-top:1px solid hsl(207,30%,95%);position:relative;z-index:1}.preview-code+.preview{margin-top:0;border-top:0}.preview iframe{display:block;width:100%;height:100%;overflow:hidden}.preview-code{position:relative;z-index:2;display:block;width:100%;color:hsl(207,9%,37%);max-height:200px;padding:10px 20px;overflow-y:auto;background:hsl(207,30%,95%);border:1px solid hsl(207,30%,85%);border-left:0;border-right;box-shadow:inset 0 1px 2px hsla(207,30%,10%,.1);line-height:1.1!important;resize:none}.preview-code:focus{outline:0;background:hsl(207,30%,97%);box-shadow:inset 0 1px 2px hsla(207,30%,10%,.1),0 0 5px hsla(207,75%,75%,.9)}.preview-code:last-child{border-bottom:0;border-radius:0 0 5px 5px}.resizeable{padding:15px;overflow:auto;background:hsl(207,0%,100%);box-shadow:0 0 2px hsla(207,10%,20%,.2);resize:both}.preview-code,pre{white-space:pre-wrap;word-wrap:break-word;overflow-y:auto}.code pre{height:100%;margin-top:0}.bar{position:fixed;left:0;right:0;z-index:1010;min-height:40px;line-height:40px;background-image:-webkit-linear-gradient(hsla(207,10%,35%,.97),hsla(207,5%,25%,.92));background-image:-moz-linear-gradient(hsla(207,10%,35%,.97),hsla(207,5%,25%,.92));background-image:-o-linear-gradient(hsla(207,10%,35%,.97),hsla(207,5%,25%,.92));background-image:linear-gradient(hsla(207,10%,35%,.97),hsla(207,5%,25%,.92))}.bar.top{top:0;box-shadow:0 1px 2px hsla(207,5%,0%,.2)}.bar.bottom{bottom:0;box-shadow:0 -1px 2px hsla(207,5%,0%,.2)}.bar ul{margin:0!important}.bar li{display:block;list-style:none}.bar .icon path{fill:hsla(27,10%,75%,.75)}.docs .icon path{fill:hsla(207,10%,75%,.5)}.docs .permalink:hover .icon path{fill:hsl(207,10%,75%)}.bar button{color:hsla(27,10%,75%,.75)}.bar button:hover .icon path,.bar button.is-active .icon path{fill:hsl(27,10%,85%)}.bar button:hover,.bar button.is-active{color:hsl(27,10%,85%)}.bar .icon{vertical-align:middle;display:inline-block}.bar,.bar a,.bar a:visited{color:hsl(27,10%,85%);text-shadow:1px 1px 0 hsla(27,5%,0%,.5)}.bar a:hover,.bar a.is-active{color:hsl(27,10%,95%);text-shadow:1px 1px 0 hsla(27,5%,0%,1);text-decoration:none}.brand{float:left;margin-right:20px;font-weight:700;font-size:16px;text-decoration:none}.brand,a.brand,a.brand:visited{color:hsl(27,5%,5%);text-shadow:1px 1px 0 hsla(27,5%,100%,.2)}.brand:hover,a.brand:hover{color:hsl(27,5%,0%);text-shadow:1px 1px 0 hsla(27,5%,100%,.3);text-decoration:none}.menu{font-size:12px}.menu>li{float:left;position:relative}.menu a{display:block;margin-right:15px}.dropdown-toggle{position:relative;padding-right:15px}.dropdown-toggle:after{display:block;position:absolute;right:0;top:18px;content:'';border:4px solid;border-left-color:transparent;border-right-color:transparent;border-bottom-color:transparent}.nav-results,.dropdown{position:absolute;z-index:1020;top:32px;left:-16px;width:175px;max-height:500px;padding:10px 0;overflow-y:auto;word-wrap:break-word;font-size:11px;line-height:20px;background-color:hsla(207,10%,25%,.97);border:1px solid hsla(207,5%,70%,.3);border-radius:3px;box-shadow:0 0 3px hsla(207,5%,0%,.2)}.toc-list{width:200px}.nav-results{right:0;width:200px;left:auto;padding:5px 0}.nav-results-filename{display:block;font-size:10px;opacity:.75}.nav-results a{display:block;line-height:15px;padding:5px 10px}.nav-results li:not([hidden])~li a{border-top:1px solid hsla(27,10%,90%,.1)}.dropdown a{padding:0 15px}.dropdown li:hover{background-color:hsl(207,10%,22%)}.nav{float:right;position:relative}.nav input[type="search"]{padding:2px 4px;color:#fff;width:150px;border:1px solid hsla(207,5%,0%,.3);background:hsla(207,12%,40%,.9);box-shadow:inset 1px 1px 3px hsla(207,5%,0%,.05),1px 1px 0 hsla(207,5%,100%,.05);border-radius:10px;-webkit-appearance:textfield}.nav input[type="search"]:focus{outline:0;background:hsla(207,7%,45%,.9)}.settings{text-align:center}.bar button{display:inline-block;vertical-align:middle;padding:0 5px;margin:0 3px;background:transparent}.bar button:first-child{margin-left:0}.settings .auto{line-height:32px;font-size:11px;font-weight:700;letter-spacing:-1px;text-shadow:none;text-transform:uppercase}body{font-family:sans-serif;font-size:14px;line-height:1.618}.docs pre,p,ol,ul,dl,figure,blockquote,table{margin-left:20px;margin-right:20px}.preview,.docs pre,p,ol,ul,dl,figure,blockquote,table{margin-top:10px}ul ul,ol ol,ul ol,ol ul,blockquote p:last-child{margin-top:0}ul,ol{padding-left:1.5em}p:last-child,ol:last-child,ul:last-child,dl:last-child{margin-bottom:20px}hr,h1,h2,h3,h4,h5,h6{margin:1em 20px .5em}h1:first-of-type{margin-top:20px}h1,h2,h3,h4,h5,h6{line-height:1.2;color:hsl(207,10%,50%)}h1 a,h1 a:hover,h1 a:visited{color:inherit;text-decoration:inherit}h1{font-size:3.052em;font-weight:400;color:hsl(207,10%,45%)}h2{font-size:1.953em}h3{font-size:1.536em}h1,h2,h3{letter-spacing:-.025em}h4{font-size:1.25em}h5{font-size:1em;text-transform:uppercase}h6{font-size:1em}.permalink{position:absolute;top:15px;right:15px}a{color:hsl(207,90%,50%);text-decoration:none}a:hover{color:hsl(207,95%,40%);text-decoration:underline}a:visited{color:hsl(207,100%,35%)}.preview-code,pre,code,var{font-style:normal;font-family:"Ubuntu Mono","Andale Mono","DejaVu Sans Mono","Monaco","Bitstream Vera Sans Mono","Consolas","Lucida Console",monospace;font-size:12px}.docs pre,code,var{padding:.1em 3px;background:hsla(207,5%,0%,.025);border:1px solid hsla(207,5%,0%,.05);border-radius:3px}.code pre{line-height:1.1!important}pre code{padding:0;background:transparent;border:0}.cf:before,.cf:after{content:'';display:table}.cf:after{clear:both}[unselectable="on"]{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}[hidden]{display:none!important}small{font-size:85%;opacity:.9}.docs .vars_list{width:100%}.docs .vars_list th,.docs .vars_list td{width:33%}.docs pre th{text-align:left}.docs pre table{border-collapse:collapse;margin:0}.docs th,.docs td{border:0;padding:9px 10px 9px 0;vertical-align:top}.docs tr th:last-child,.docs tr td:last-child{padding-right:0}.docs pre th{font-weight:400}.docs pre th.vars_head{border-bottom:1px solid #e5e5e5;color:#707070;white-space:nowrap}.docs pre th.vars_section{border-bottom:1px solid #e5e5e5;color:#333;font-size:18px;padding-top:30px}.vars_value{color:#338bb8}.docs li p{margin:0 0 20px}.dropdown a{text-transform:capitalize}#default-button #default-button-big+.preview+.preview-code{display:block}#actions-toolbar-alignment .preview-code,#reverse-primary-and-secondary-blocks .preview-code,#actions-toolbar-indents-customizations .preview-code,#actionstoolbarclearfloats-mixin .preview-code,#responsive-actions-toolbar .preview-code,#button-with-gradient-background .preview-code,#primary-button .preview-code,#button-as-an-icon .preview-code,#button-with-an-icon-on-the-left-or-right-side-of-the-text .preview-code,#button-with-fixed-width .preview-code,#button-as-a-link .preview-code,#link-as-a-button .preview-code,#buttonstyled-breadcrumbs-with-gradient-background-border-and-no-separating-symbol .preview-code,#breadcrumbs-with-solid-background .preview-code,#pagination-without-label-with-solid-background .preview-code,#pagination-with-label-and-text-previousnext-links .preview-code,#pagination-with-label-and-gradient-background-on-links .preview-code,#fixed-height-popup .preview-code,#fixed-content-height-popup .preview-code,#margins-for-header-content-and-footer-block-in-popup .preview-code,#popup-titles-with-styled-as-theme-headings .preview-code,#popup-action-toolbar .preview-code,#popup-close-button-without-an-icon .preview-code,#modify-icon-of-popup-close-button .preview-code,#modify-overlay-styles .preview-code,#rating-summary-multiple-ratings .preview-code,#rating-summary-hide-label .preview-code,#rating-summary-icons-symbol .preview-code,#rating-summary-icons-color .preview-code,#rating-summary-set-number-of-icons .preview-code,#rating-summary .preview-code,#rating-with-vote-icon-symbol .preview-code,#rating-with-vote-setup-icons-colors .preview-code,#rating-with-vote-setup-number-of-icons .preview-code,#tabs-with-content-top-border .preview-code,#accordion-mixin-variables .preview-code,#tabs-base .preview-code,#accordion-base .preview-code,#warning-message .preview-code,#error-message .preview-code,#success-message .preview-code,#notice-message .preview-code,#message-with-inner-icon .preview-code,#message-with-lateral-icon .preview-code,#custom-message-style .preview-code,#modify-dropdown-list-styles .preview-code,#dropdown-with-icon-customization .preview-code,#split-button-button-styling .preview-code,#split-button-icon-customization .preview-code,#split-button-dropdown-list-customization .preview-code,#table-cells-resize .preview-code,#table-caption .preview-code,#table-typography .preview-code,#table-background-customization .preview-code,#table-borders-customization .preview-code,#table-without-borders .preview-code,#table-with-horizontal-borders .preview-code,#table-with-vertical-borders .preview-code,#striped-table .preview-code,#responsive-table-technics-1 .preview-code,#responsive-table-technics-2 .preview-code,#fontsize-mixin .preview-code,#word-breaking-mixin .preview-code,#word-breaking-mixin .preview-code,#text-overflow-mixin .preview-code,#text-hide .preview-code,#hyphens .preview-code,#font-style-and-color .preview-code,#reset-list-styles .preview-code,#inlineblock-list-item-styling .preview-code,#link-styling-mixin .preview-code,#heading-styling-mixin .preview-code,#icon-with-image-or-sprite .preview-code,#change-the-size-of-font-icon .preview-code,#sprite-and-font-icons-for-blank-theme .preview-code,#icon-position-for-an-icon-with-image-or-sprite .preview-code{display:none}article[id$="-variables"] .docs,#resets .docs,#ratings .docs,#tabs-and-accordions .docs,#messages .docs,#dropdown-and-split-buttons-mixins .docs,#font-face-mixin .docs,#layout .docs,#forms-mixins .docs,#including-magento-ui-library-to-your-theme .docs,#global-forms-elements-customization .docs,#mobile-off-canvas-navigation .docs,#desktop-navigation .docs,#layout-width .docs{width:100%}article[id$="-variables"] .code{display:none}article[id$="-variables"] .docs pre{background:#fff;border:0;margin-top:0}</style><script type="text/preview">(function(){"use strict";var a=function(a){return Array.prototype.slice.call(a)},b=document.getElementsByTagName("body")[0],c=["link","visited","hover","active","focus","target","enabled","disabled","checked"],d=new RegExp(":(("+c.join(")|(")+"))","gi"),e=a(document.styleSheets).map(function(b){return a(b.cssRules).filter(function(a){return a.selectorText&&a.selectorText.match(d)}).map(function(a){return a.cssText.replace(d,".\\3A $1")}).join("")}).join("");if(e.length){var f=document.createElement("style");f.innerText=e;var g=document.getElementsByTagName("style")[0];g.parentNode.insertBefore(f,g)}var h=function(){var a=window.getComputedStyle(b,null);return function(){if(b.childElementCount===0)return b.offsetHeight;var c=b.getElementsByTagName("*"),d=[];for(var e=0,f=c.length;e<f;e++)d.push(c[e].offsetTop+c[e].offsetHeight+parseInt(window.getComputedStyle(c[e],null).getPropertyValue("margin-bottom")));var g=Math.max.apply(Math,d);return g+=parseInt(a.getPropertyValue("padding-bottom"),10),Math.max(g,b.offsetHeight)}}(),i={getHeight:function(){window.parent.postMessage({height:h()},"*")}};window.addEventListener("message",function(a){if(a.data==null)return;typeof a.data=="string"&&i[a.data]()},!1)})()</script><style type="text/preview">body{margin:0;padding:0}article,aside,details,figcaption,figure,main,footer,header,nav,section,summary{display:block}audio,canvas,video{display:inline-block}audio:not([controls]){display:none;height:0}nav ul,nav ol{list-style:none none}img{border:0}svg:not(:root){overflow:hidden}figure{margin:0}html{font-size:62.5%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;font-size-adjust:100%}body{font-size:1.4rem;color:#333;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;font-weight:400;font-style:normal;line-height:1.42857143}p{margin-top:0rem;margin-bottom:1rem}abbr[title]{cursor:help;border-bottom:1px dotted #d1d1d1}b,strong{font-weight:700}em,i{font-style:italic}mark{background:#f0f0f0;color:#000}small,.small{font-size:12px}hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #d1d1d1}sub,sup{font-size:71.42857143%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}dfn{font-style:italic}h1{font-size:4rem;font-weight:300;line-height:1.1;margin-top:0rem;margin-bottom:2rem}h2{font-size:2.6rem;font-weight:300;line-height:1.1;margin-top:2.5rem;margin-bottom:2rem}h3{font-size:1.8rem;font-weight:300;line-height:1.1;margin-top:1.5rem;margin-bottom:1rem}h4{font-size:1.4rem;font-weight:700;line-height:1.1;margin-top:2rem;margin-bottom:2rem}h5{font-size:1.2rem;font-weight:700;line-height:1.1;margin-top:2rem;margin-bottom:2rem}h6{font-size:1rem;font-weight:700;line-height:1.1;margin-top:2rem;margin-bottom:2rem}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small,h1 .small,h2 .small,h3 .small,h4 .small,h5 .small,h6 .small{font-size:71.42857143%;color:#333;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;font-weight:400;font-style:normal;line-height:1}a,.alink{color:#1979c3;text-decoration:none}a:visited,.alink:visited{color:#800080;text-decoration:none}a:hover,.alink:hover{color:#006bb4;text-decoration:underline}a:active,.alink:active{color:#ff5501;text-decoration:underline}ul,ol{margin-top:0rem;margin-bottom:2.5rem}ul>li,ol>li{margin-top:0rem;margin-bottom:1rem}ul ul,ol ul,ul ol,ol ol{margin-bottom:0}dl{margin-top:0;margin-bottom:20px}dt{font-weight:700;margin-top:0;margin-bottom:5px}dd{margin-top:0;margin-bottom:10px;margin-left:0}code,kbd,pre,samp{font-family:Menlo,Monaco,Consolas,'Courier New',monospace}code{background:#f0f0f0;color:#111;font-size:1.2rem;padding:2px 4px;white-space:nowrap}kbd{background:#f0f0f0;color:#111;padding:2px 4px;font-size:1.2rem}pre{background:#f0f0f0;border:1px solid #d1d1d1;color:#111;display:block;font-size:1.2rem;margin:0 0 10px;line-height:1.42857143;padding:10px;word-break:break-all;word-wrap:break-word}pre code{padding:0;font-size:inherit;color:inherit;white-space:pre-wrap;background-color:transparent;border-radius:0}blockquote{margin:0 0 20px 40px;padding:0;font-size:1.4rem;color:#333;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;font-weight:400;font-style:italic;line-height:1.42857143;border-left:0 solid #d1d1d1}blockquote p:last-child,blockquote ul:last-child,blockquote ol:last-child{margin-bottom:0}blockquote footer,blockquote small,blockquote .small{color:#333;display:block;font-size:1rem;line-height:1.42857143}blockquote footer:before,blockquote small:before,blockquote .small:before{content:'\2014 \00A0'}blockquote cite{font-style:normal}blockquote:before,blockquote:after{content:""}q{quotes:none}q:before,q:after{content:'';content:none}cite{font-style:normal}table{border-collapse:collapse;border-spacing:0;max-width:100%;width:100%}table th{text-align:left}table>tbody>tr>th,table>tfoot>tr>th,table>tbody>tr>td,table>tfoot>tr>td{vertical-align:top}table>thead>tr>th,table>thead>tr>td{vertical-align:bottom}table>thead>tr>th,table>tbody>tr>th,table>tfoot>tr>th,table>thead>tr>td,table>tbody>tr>td,table>tfoot>tr>td{padding:8px 10px}button{background-image:none;background:#f2f2f2;padding:7px 15px;color:#333;border:1px solid #cdcdcd;cursor:pointer;display:inline-block;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;font-size:1.4rem;font-weight:700;line-height:1.6rem;box-sizing:border-box;margin:0;vertical-align:middle}button:focus,button:active{background:#e2e2e2;border:1px solid #cdcdcd;color:#333}button:hover{background:#e2e2e2;border:1px solid #cdcdcd;color:#555}button.disabled,button[disabled],fieldset[disabled] button{cursor:default;pointer-events:none;opacity:.5}button::-moz-focus-inner{border:0;padding:0}input[type="text"],input[type="password"],input[type="url"],input[type="tel"],input[type="search"],input[type="number"],input[type="datetime"],input[type="email"]{box-sizing:border-box;background:#fff;border:1px solid #c2c2c2;border-radius:1px;height:32px;width:100%;padding:0 9px;font-size:14px;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;line-height:1.428571429;background-clip:padding-box;vertical-align:baseline}input[type="text"]:disabled,input[type="password"]:disabled,input[type="url"]:disabled,input[type="tel"]:disabled,input[type="search"]:disabled,input[type="number"]:disabled,input[type="datetime"]:disabled,input[type="email"]:disabled{opacity:.5}input[type="text"]::-moz-placeholder,input[type="password"]::-moz-placeholder,input[type="url"]::-moz-placeholder,input[type="tel"]::-moz-placeholder,input[type="search"]::-moz-placeholder,input[type="number"]::-moz-placeholder,input[type="datetime"]::-moz-placeholder,input[type="email"]::-moz-placeholder{color:#c2c2c2}input[type="text"]::-webkit-input-placeholder,input[type="password"]::-webkit-input-placeholder,input[type="url"]::-webkit-input-placeholder,input[type="tel"]::-webkit-input-placeholder,input[type="search"]::-webkit-input-placeholder,input[type="number"]::-webkit-input-placeholder,input[type="datetime"]::-webkit-input-placeholder,input[type="email"]::-webkit-input-placeholder{color:#c2c2c2}input[type="text"]:-ms-input-placeholder,input[type="password"]:-ms-input-placeholder,input[type="url"]:-ms-input-placeholder,input[type="tel"]:-ms-input-placeholder,input[type="search"]:-ms-input-placeholder,input[type="number"]:-ms-input-placeholder,input[type="datetime"]:-ms-input-placeholder,input[type="email"]:-ms-input-placeholder{color:#c2c2c2}input[type="number"]{-moz-appearance:textfield}input[type="number"]::-webkit-inner-spin-button,input[type="number"]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type="search"]{-webkit-appearance:none}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration,input[type="search"]::-webkit-search-results-button,input[type="search"]::-webkit-search-results-decoration{-webkit-appearance:none}select{box-sizing:border-box;background:#fff;border:1px solid #c2c2c2;border-radius:1px;height:32px;width:100%;padding:5px 10px 4px;font-size:14px;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;line-height:1.428571429;background-clip:padding-box;vertical-align:baseline}select:disabled{opacity:.5}select[multiple="multiple"]{height:auto;background-image:none}textarea{box-sizing:border-box;background:#fff;border:1px solid #c2c2c2;border-radius:1px;height:auto;width:100%;padding:10px;margin:0;font-size:14px;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;line-height:1.428571429;background-clip:padding-box;vertical-align:baseline;resize:vertical}textarea:disabled{opacity:.5}textarea::-moz-placeholder{color:#c2c2c2}textarea::-webkit-input-placeholder{color:#c2c2c2}textarea:-ms-input-placeholder{color:#c2c2c2}input[type="checkbox"]{margin:2px 5px 0 0}input[type="checkbox"]:disabled{opacity:.5}input[type="radio"]{margin:2px 5px 0 0}input[type="radio"]:disabled{opacity:.5}input.mage-error,select.mage-error,textarea.mage-error{border-color:#ed8380}div.mage-error[generated]{font-size:1.2rem;color:#e02b27}input[type="button"],input[type="reset"],input[type="submit"]{cursor:pointer;-webkit-appearance:button;*overflow:visible}input::-moz-focus-inner{border:0;padding:0}form{-webkit-tap-highlight-color:rgba(0,0,0,0)}address{font-style:normal}:focus{outline:0;box-shadow:none}.focusin :focus,input:not([disabled]):focus,textarea:not([disabled]):focus,select:not([disabled]):focus{box-shadow:0 0 3px 1px #68a8e0}@font-face{font-family:'icons-blank-theme';src:url('/pub/static/frontend/Magento/blank/en_US/fonts/Blank-Theme-Icons/Blank-Theme-Icons.eot');src:url('/pub/static/frontend/Magento/blank/en_US/fonts/Blank-Theme-Icons/Blank-Theme-Icons.eot?#iefix') format('embedded-opentype'),url('/pub/static/frontend/Magento/blank/en_US/fonts/Blank-Theme-Icons/Blank-Theme-Icons.woff') format('woff'),url('/pub/static/frontend/Magento/blank/en_US/fonts/Blank-Theme-Icons/Blank-Theme-Icons.ttf') format('truetype'),url('/pub/static/frontend/Magento/blank/en_US/fonts/Blank-Theme-Icons/Blank-Theme-Icons.svg#icons-blank-theme') format('svg');font-weight:400;font-style:normal}.mage-dropdown-dialog.ui-dialog .ui-dialog-content{overflow:visible}.mage-dropdown-dialog.ui-dialog .ui-dialog-buttonpane{padding:0}@media only screen and (max-width: 767px){.example-responsive-block{ background:#ffc}.example-responsive-block:before{content:'Mobile styles ';font-weight:700}}@media all and (min-width: 768px),print{._rwd_width{ min-width:0!important;max-width:auto!important}._rwd_width_float{width:100%!important;float:none!important}.example-responsive-block{background:#ccf}.example-responsive-block:before{content:'Desktop styles ';font-weight:700}}.actions-toolbar:before,.actions-toolbar:after{content:"";display:table}.actions-toolbar:after{clear:both}.actions-toolbar .primary{float:left}.actions-toolbar .secondary{float:right}.actions-toolbar .primary,.actions-toolbar .secondary{display:inline-block}.actions-toolbar .primary a.action,.actions-toolbar .secondary a.action{display:inline-block}.actions-toolbar .primary .action{margin:0 5px 0 0}.actions-toolbar .secondary a.action{margin-top:6px}.example-actions-toolbar-1:before,.example-actions-toolbar-1:after{content:"";display:table}.example-actions-toolbar-1:after{clear:both}.example-actions-toolbar-1 .primary{float:left}.example-actions-toolbar-1 .secondary{float:right}.example-actions-toolbar-1 .primary,.example-actions-toolbar-1 .secondary{display:inline-block}.example-actions-toolbar-1 .primary a.action,.example-actions-toolbar-1 .secondary a.action{display:inline-block}.example-actions-toolbar-1 .primary .action{margin:0 5px 0 0}.example-actions-toolbar-1 .secondary a.action{margin-top:6px}.example-actions-toolbar-1:before,.example-actions-toolbar-1:after{content:"";display:table}.example-actions-toolbar-1:after{clear:both}.example-actions-toolbar-1 .primary{float:left}.example-actions-toolbar-1 .secondary{float:right}.example-actions-toolbar-1 .primary,.example-actions-toolbar-1 .secondary{display:inline-block}.example-actions-toolbar-1 .primary a.action,.example-actions-toolbar-1 .secondary a.action{display:inline-block}.example-actions-toolbar-1 .primary .action{margin:0 5px 0 0}.example-actions-toolbar-1 .secondary a.action{margin-top:6px}.example-actions-toolbar-2:before,.example-actions-toolbar-2:after{content:"";display:table}.example-actions-toolbar-2:after{clear:both}.example-actions-toolbar-2 .primary{float:left}.example-actions-toolbar-2 .secondary{float:right}.example-actions-toolbar-2 .primary,.example-actions-toolbar-2 .secondary{display:inline-block}.example-actions-toolbar-2 .primary a.action,.example-actions-toolbar-2 .secondary a.action{display:inline-block}.example-actions-toolbar-2 .primary .action{margin:0 5px 0 0}.example-actions-toolbar-2 .secondary a.action{margin-top:6px}.example-actions-toolbar-3{text-align:left}.example-actions-toolbar-3:before,.example-actions-toolbar-3:after{content:"";display:table}.example-actions-toolbar-3:after{clear:both}.example-actions-toolbar-3 .primary{float:left}.example-actions-toolbar-3 .primary,.example-actions-toolbar-3 .secondary{display:inline-block}.example-actions-toolbar-3 .primary a.action,.example-actions-toolbar-3 .secondary a.action{display:inline-block}.example-actions-toolbar-3 .primary .action{margin:0 5px 0 0}.example-actions-toolbar-3 .secondary a.action{margin-top:6px}.example-actions-toolbar-4{text-align:right}.example-actions-toolbar-4:before,.example-actions-toolbar-4:after{content:"";display:table}.example-actions-toolbar-4:after{clear:both}.example-actions-toolbar-4 .secondary{float:right}.example-actions-toolbar-4 .primary,.example-actions-toolbar-4 .secondary{display:inline-block}.example-actions-toolbar-4 .primary a.action,.example-actions-toolbar-4 .secondary a.action{display:inline-block}.example-actions-toolbar-4 .primary .action{margin:0 5px 0 0}.example-actions-toolbar-4 .secondary a.action{margin-top:6px}.example-actions-toolbar-5{text-align:center}.example-actions-toolbar-5:before,.example-actions-toolbar-5:after{content:"";display:table}.example-actions-toolbar-5:after{clear:both}.example-actions-toolbar-5 .primary,.example-actions-toolbar-5 .secondary{vertical-align:top}.example-actions-toolbar-5 .primary,.example-actions-toolbar-5 .secondary{display:inline-block}.example-actions-toolbar-5 .primary a.action,.example-actions-toolbar-5 .secondary a.action{display:inline-block}.example-actions-toolbar-5 .primary .action{margin:0 5px 0 0}.example-actions-toolbar-5 .secondary a.action{margin-top:6px}.example-actions-toolbar-6:before,.example-actions-toolbar-6:after{content:"";display:table}.example-actions-toolbar-6:after{clear:both}.example-actions-toolbar-6 .primary{float:right}.example-actions-toolbar-6 .secondary{float:left}.example-actions-toolbar-6 .primary,.example-actions-toolbar-6 .secondary{display:inline-block}.example-actions-toolbar-6 .primary a.action,.example-actions-toolbar-6 .secondary a.action{display:inline-block}.example-actions-toolbar-6 .primary .action{margin:0 5px 0 0}.example-actions-toolbar-6 .secondary a.action{margin-top:6px}.example-actions-toolbar-7{text-align:left}.example-actions-toolbar-7:before,.example-actions-toolbar-7:after{content:"";display:table}.example-actions-toolbar-7:after{clear:both}.example-actions-toolbar-7 .secondary{float:left}.example-actions-toolbar-7 .primary,.example-actions-toolbar-7 .secondary{display:inline-block}.example-actions-toolbar-7 .primary a.action,.example-actions-toolbar-7 .secondary a.action{display:inline-block}.example-actions-toolbar-7 .primary .action{margin:0 5px 0 0}.example-actions-toolbar-7 .secondary a.action{margin-top:6px}.example-actions-toolbar-8{text-align:right}.example-actions-toolbar-8:before,.example-actions-toolbar-8:after{content:"";display:table}.example-actions-toolbar-8:after{clear:both}.example-actions-toolbar-8 .primary{float:right}.example-actions-toolbar-8 .primary,.example-actions-toolbar-8 .secondary{display:inline-block}.example-actions-toolbar-8 .primary a.action,.example-actions-toolbar-8 .secondary a.action{display:inline-block}.example-actions-toolbar-8 .primary .action{margin:0 5px 0 0}.example-actions-toolbar-8 .secondary a.action{margin-top:6px}.example-actions-toolbar-9{margin:10px;padding:10px}.example-actions-toolbar-9:before,.example-actions-toolbar-9:after{content:"";display:table}.example-actions-toolbar-9:after{clear:both}.example-actions-toolbar-9 .primary{float:left}.example-actions-toolbar-9 .secondary{float:right}.example-actions-toolbar-9 .primary,.example-actions-toolbar-9 .secondary{display:inline-block}.example-actions-toolbar-9 .primary a.action,.example-actions-toolbar-9 .secondary a.action{display:inline-block}.example-actions-toolbar-9 .primary .action{margin:0 5px 0 0}.example-actions-toolbar-9 .secondary a.action{margin-top:6px}.example-actions-toolbar-10{text-align:left}.example-actions-toolbar-10:before,.example-actions-toolbar-10:after{content:"";display:table}.example-actions-toolbar-10:after{clear:both}.example-actions-toolbar-10 .primary{float:left}.example-actions-toolbar-10 .primary,.example-actions-toolbar-10 .secondary{display:inline-block}.example-actions-toolbar-10 .primary a.action,.example-actions-toolbar-10 .secondary a.action{display:inline-block}.example-actions-toolbar-10 .primary .action{margin:0 50px 0 0}.example-actions-toolbar-10 .secondary a.action{margin-top:6px}.example-actions-toolbar-11{text-align:left}.example-actions-toolbar-11:before,.example-actions-toolbar-11:after{content:"";display:table}.example-actions-toolbar-11:after{clear:both}.example-actions-toolbar-11 .primary{float:left}.example-actions-toolbar-11 .primary,.example-actions-toolbar-11 .secondary{display:inline-block}.example-actions-toolbar-11 .primary a.action,.example-actions-toolbar-11 .secondary a.action{display:inline-block}.example-actions-toolbar-11 .primary .action{margin:0 5px 0 0}.example-actions-toolbar-11 .secondary .action{margin:0 50px 0 0}.example-actions-toolbar-11 .secondary a.action{margin-top:6px}.example-actions-toolbar-12:before,.example-actions-toolbar-12:after{content:"";display:table}.example-actions-toolbar-12:after{clear:both}.example-actions-toolbar-12 .primary{float:left}.example-actions-toolbar-12 .secondary{float:right}.example-actions-toolbar-12 .primary,.example-actions-toolbar-12 .secondary{display:inline-block}.example-actions-toolbar-12 .primary a.action,.example-actions-toolbar-12 .secondary a.action{display:inline-block}.example-actions-toolbar-12 .primary .action{margin:0 5px 0 0}.example-actions-toolbar-12 .secondary a.action{margin-top:6px}.example-actions-toolbar-12:before,.example-actions-toolbar-12:after{content:"";display:table}.example-actions-toolbar-12:after{clear:both}.example-actions-toolbar-12 .primary{float:left}.example-actions-toolbar-12 .secondary{float:right}.example-actions-toolbar-12 .primary,.example-actions-toolbar-12 .secondary{display:inline-block}.example-actions-toolbar-12 .primary a.action,.example-actions-toolbar-12 .secondary a.action{display:inline-block}.example-actions-toolbar-12 .primary .action{margin:0 5px 0 0}.example-actions-toolbar-12 .secondary a.action{margin-top:6px}@media only screen and (max-width: 768px){.example-actions-toolbar-12 .primary,.example-actions-toolbar-12 .secondary{ display:block;float:none}}.example-breadcrumbs-1{margin:0 0 20px}.example-breadcrumbs-1 .items{font-size:1.2rem;color:#a3a3a3;margin:0;padding:0;list-style:none none}.example-breadcrumbs-1 .items>li{display:inline-block;vertical-align:top}.example-breadcrumbs-1 .item{margin:0}.example-breadcrumbs-1 a{color:#333;text-decoration:none}.example-breadcrumbs-1 a:visited{color:#333;text-decoration:none}.example-breadcrumbs-1 a:hover{color:#333;text-decoration:underline}.example-breadcrumbs-1 a:active{color:#333;text-decoration:none}.example-breadcrumbs-1 strong{font-weight:400}.example-breadcrumbs-1 .item:not(:last-child){display:inline-block;text-decoration:none}.example-breadcrumbs-1 .item:not(:last-child):after{font-family:'icons-blank-theme';content:'\e608';font-size:24px;line-height:18px;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.example-breadcrumbs-2{margin:0 0 20px}.example-breadcrumbs-2 .items{font-size:1.2rem;color:#1979c3;margin:0;padding:0;list-style:none none}.example-breadcrumbs-2 .items>li{display:inline-block;vertical-align:top}.example-breadcrumbs-2 .item{margin:0}.example-breadcrumbs-2 a{background-color:#ccc;background-repeat:repeat-x;background-image:-webkit-linear-gradient(top, #f4f4f4 0, #ccc 100%);background-image:linear-gradient(to bottom, #f4f4f4 0, #ccc 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#f4f4f4', endColorstr='#cccccc', GradientType=0);border:1px solid #ccc;display:inline-block;padding:3px 5px;color:#333;text-decoration:none}.example-breadcrumbs-2 a:visited{background-color:false;background-repeat:repeat-x;background-image:-webkit-linear-gradient(top,false 0,false 100%);background-image:linear-gradient(to bottom,false 0,false 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='false', endColorstr='false', GradientType=0);color:#333;text-decoration:none}.example-breadcrumbs-2 a:hover{background-color:#f4f4f4;background-repeat:repeat-x;background-image:-webkit-linear-gradient(top, #ccc 0, #f4f4f4 100%);background-image:linear-gradient(to bottom, #ccc 0, #f4f4f4 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#cccccc', endColorstr='#f4f4f4', GradientType=0);color:#333;text-decoration:none}.example-breadcrumbs-2 a:active{background-color:false;background-repeat:repeat-x;background-image:-webkit-linear-gradient(top,false 0,false 100%);background-image:linear-gradient(to bottom,false 0,false 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='false', endColorstr='false', GradientType=0);color:#333;text-decoration:none}.example-breadcrumbs-2 strong{background-color:#ff5501;background-repeat:repeat-x;background-image:-webkit-linear-gradient(top, #f7b32e 0, #ff5501 100%);background-image:linear-gradient(to bottom, #f7b32e 0, #ff5501 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#f7b32e', endColorstr='#ff5501', GradientType=0);border:1px solid #d04b0a;display:inline-block;padding:3px 5px;font-weight:400}.example-breadcrumbs-2 .item:not(:last-child){display:inline-block;text-decoration:none}.example-breadcrumbs-2 .item:not(:last-child):after{font-family:'icons-blank-theme';content:'\e608';font-size:24px;line-height:18px;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.example-breadcrumbs-3{margin:0 0 20px}.example-breadcrumbs-3 .items{font-size:1.2rem;color:#333;margin:0;padding:0;list-style:none none}.example-breadcrumbs-3 .items>li{display:inline-block;vertical-align:top}.example-breadcrumbs-3 .item{margin:0}.example-breadcrumbs-3 a{background:#f4f4f4;display:inline-block;padding:3px 5px;color:#333;text-decoration:none}.example-breadcrumbs-3 a:visited{color:#333;text-decoration:none}.example-breadcrumbs-3 a:hover{background:#ccc;color:#333;text-decoration:none}.example-breadcrumbs-3 a:active{color:#333;text-decoration:none}.example-breadcrumbs-3 strong{background:#e7e7e7;display:inline-block;padding:3px 5px;font-weight:400}.example-breadcrumbs-3 .item:not(:last-child){display:inline-block;text-decoration:none}.example-breadcrumbs-3 .item:not(:last-child):after{font-family:'icons-blank-theme';content:'\e608';font-size:24px;line-height:18px;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.example-breadcrumbs-3 .item a{position:relative;margin:0 11px 0 0}.example-breadcrumbs-3 .item a:after{width:0;height:0;border:12px solid transparent;border-left-color:#f4f4f4;content:"";position:absolute;display:block;top:0;right:-23px}.example-breadcrumbs-3 .item a:hover:after{border-color:transparent transparent transparent #ccc}button{background-image:none;background:#f2f2f2;padding:7px 15px;color:#333;border:1px solid #cdcdcd;cursor:pointer;display:inline-block;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;font-size:1.4rem;font-weight:700;line-height:1.6rem;box-sizing:border-box;margin:3px;vertical-align:middle;border-radius:3px}button:focus,button:active{background:#e2e2e2;border:1px solid #cdcdcd;color:#333}button:hover{background:#e2e2e2;border:1px solid #cdcdcd;color:#555}button.disabled,button[disabled],fieldset[disabled] button{cursor:default;pointer-events:none;opacity:.5}button:active,button:focus{box-shadow:inset 0 2px 1px rgba(0,0,0,.12)}.example-button-1.example-button-2{line-height:2.2rem;padding:14px 17px;font-size:1.8rem}.example-button-1.example-button-3{line-height:1.2rem;padding:5px 8px;font-size:1.1rem;border-radius:0;color:#000}.example-button-1.example-button-3:hover,.example-button-1.example-button-3.active{color:#000}.example-button-10{background:#f2f2f2;padding:7px 15px;color:#333;border:1px solid #cdcdcd;cursor:pointer;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;font-size:1.4rem;font-weight:700;line-height:1.6rem;box-sizing:border-box;margin:3px;vertical-align:middle;display:inline-block;background-image:none;background:0;border:0;margin:0;padding:0;-moz-box-sizing:content-box;box-shadow:none;text-shadow:none;text-decoration:none;line-height:inherit;font-weight:400}.example-button-10>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-button-10:before{font-family:'icons-blank-theme';content:'\e611';font-size:22px;line-height:22px;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.example-button-10:hover:before{color:inherit}.example-button-10:active:before{color:inherit}.example-button-10:focus,.example-button-10:active{background:#e2e2e2;border:1px solid #cdcdcd;color:#333}.example-button-10:hover{background:#e2e2e2;border:1px solid #cdcdcd;color:#555}.example-button-10.disabled,.example-button-10[disabled],fieldset[disabled] .example-button-10{cursor:default;pointer-events:none;opacity:.5}.example-button-10:focus,.example-button-10:active{background:0;border:0}.example-button-10:hover{background:0;border:0}.example-button-10.disabled,.example-button-10[disabled],fieldset[disabled] .example-button-10{cursor:not-allowed;pointer-events:none;opacity:.5}.example-button-11{background-image:none;background:#f2f2f2;padding:7px 15px;color:#333;border:1px solid #cdcdcd;cursor:pointer;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;font-size:1.4rem;font-weight:700;line-height:1.6rem;box-sizing:border-box;margin:3px;vertical-align:middle;display:inline-block;text-decoration:none}.example-button-11:before{font-family:'icons-blank-theme';content:'\e611';font-size:22px;line-height:22px;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.example-button-11:hover:before{color:inherit}.example-button-11:active:before{color:inherit}.example-button-11:focus,.example-button-11:active{background:#e2e2e2;border:1px solid #cdcdcd;color:#333}.example-button-11:hover{background:#e2e2e2;border:1px solid #cdcdcd;color:#555}.example-button-11.disabled,.example-button-11[disabled],fieldset[disabled] .example-button-11{cursor:default;pointer-events:none;opacity:.5}.example-button-12{background-image:none;background:#f2f2f2;padding:7px 15px;color:#333;border:1px solid #cdcdcd;cursor:pointer;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;font-size:1.4rem;font-weight:700;line-height:1.6rem;box-sizing:border-box;margin:3px;vertical-align:middle;display:inline-block;text-decoration:none}.example-button-12:after{font-family:'icons-blank-theme';content:'\e611';font-size:22px;line-height:22px;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.example-button-12:hover:after{color:inherit}.example-button-12:active:after{color:inherit}.example-button-12:focus,.example-button-12:active{background:#e2e2e2;border:1px solid #cdcdcd;color:#333}.example-button-12:hover{background:#e2e2e2;border:1px solid #cdcdcd;color:#555}.example-button-12.disabled,.example-button-12[disabled],fieldset[disabled] .example-button-12{cursor:default;pointer-events:none;opacity:.5}.example-button-13{background-image:none;background:#f2f2f2;padding:7px 15px;width:100px;color:#333;border:1px solid #cdcdcd;cursor:pointer;display:inline-block;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;font-size:1.4rem;font-weight:700;line-height:1.6rem;box-sizing:border-box;margin:3px;vertical-align:middle}.example-button-13:focus,.example-button-13:active{background:#e2e2e2;border:1px solid #cdcdcd;color:#333}.example-button-13:hover{background:#e2e2e2;border:1px solid #cdcdcd;color:#555}.example-button-13.disabled,.example-button-13[disabled],fieldset[disabled] .example-button-13{cursor:default;pointer-events:none;opacity:.5}.example-button-4{background-image:none;background:#1979c3;padding:7px 15px;color:#fff;border:1px solid #1979c3;cursor:pointer;display:inline-block;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;font-size:1.4rem;font-weight:700;box-sizing:border-box;margin:3px;vertical-align:middle}.example-button-4:focus,.example-button-4:active{background:#006bb4;border:1px solid #006bb4;color:#fff}.example-button-4:hover{background:#006bb4;border:1px solid #006bb4;color:#fff}.example-button-4.disabled,.example-button-4[disabled],fieldset[disabled] .example-button-4{cursor:default;pointer-events:none;opacity:.5}.example-button-4:active{box-shadow:inset 0 3px 1px rgba(0,0,0,.29)}.example-button-4.example-button-5{line-height:2.2rem;padding:7px 35px;font-size:1.8rem}.example-button-4.example-button-6{line-height:1.2rem;padding:5px 8px;font-size:1.1rem;color:#fff}.example-button-4.example-button-6:hover,.example-button-4.example-button-6.active{color:#fff}.example-button-7{background-image:none;background:#f2f2f2;background-color:#006bb4;background-repeat:repeat-x;background-image:-webkit-linear-gradient(top, #1979c3 0, #006bb4 100%);background-image:linear-gradient(to bottom, #1979c3 0, #006bb4 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#1979c3', endColorstr='#006bb4', GradientType=0);padding:7px 15px;color:#fff;border:1px solid #1979c3;cursor:pointer;display:inline-block;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;font-size:1.4rem;font-weight:700;line-height:1.6rem;box-sizing:border-box;margin:3px;vertical-align:middle;border-radius:3px}.example-button-7:focus,.example-button-7:active{background:#e2e2e2;background-color:#006bb4;background-repeat:repeat-x;background-image:-webkit-linear-gradient(top, #006bb4 0, #006bb4 100%);background-image:linear-gradient(to bottom, #006bb4 0, #006bb4 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#006bb4', endColorstr='#006bb4', GradientType=0);border:1px solid #006bb4;color:#fff}.example-button-7:hover{background:#e2e2e2;background-color:#1979c3;background-repeat:repeat-x;background-image:-webkit-linear-gradient(top, #006bb4 0, #1979c3 100%);background-image:linear-gradient(to bottom, #006bb4 0, #1979c3 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#006bb4', endColorstr='#1979c3', GradientType=0);border:1px solid #006bb4;color:#fff}.example-button-7.disabled,.example-button-7[disabled],fieldset[disabled] .example-button-7{cursor:default;pointer-events:none;opacity:.5}.example-button-7:active{box-shadow:inset 0 3px 1px rgba(0,0,0,.29)}.example-button-8{background:0;border:0;display:inline;line-height:1.42857143;margin:0;padding:0;color:#1979c3;text-decoration:none;font-weight:400}.example-button-8:visited{color:#800080;text-decoration:none}.example-button-8:hover{color:#006bb4;text-decoration:underline}.example-button-8:active{color:#ff5501;text-decoration:underline}.example-button-8:hover{color:#006bb4}.example-button-8:hover,.example-button-8:active,.example-button-8:focus{background:0;border:0}.example-button-8.disabled,.example-button-8[disabled],fieldset[disabled] .example-button-8{color:#1979c3;text-decoration:underline;cursor:default;pointer-events:none;opacity:.5}.example-button-8:active{box-shadow:none}.example-button-9{text-decoration:none;background-image:none;background:#f2f2f2;padding:7px 15px;color:#333;border:1px solid #cdcdcd;cursor:pointer;display:inline-block;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;font-size:1.4rem;font-weight:700;line-height:1.6rem;box-sizing:border-box;margin:0;vertical-align:middle;margin:3px;border-radius:3px;font-weight:700}.example-button-9:hover,.example-button-9:active,.example-button-9:focus{text-decoration:none}.example-button-9:focus,.example-button-9:active{background:#e2e2e2;border:1px solid #cdcdcd;color:#333}.example-button-9:hover{background:#e2e2e2;border:1px solid #cdcdcd;color:#555}.example-button-9.disabled,.example-button-9[disabled],fieldset[disabled] .example-button-9{cursor:default;pointer-events:none;opacity:.5}.example-button-9:active{box-shadow:inset 0 3px 1px rgba(0,0,0,.29)}.example-button-14{background-image:none;background:0;border:0;margin:0;padding:0;-moz-box-sizing:content-box;box-shadow:none;text-shadow:none;text-decoration:none;line-height:inherit;font-weight:400}.example-button-14:focus,.example-button-14:active{background:0;border:0}.example-button-14:hover{background:0;border:0}.example-button-14.disabled,.example-button-14[disabled],fieldset[disabled] .example-button-14{cursor:not-allowed;pointer-events:none;opacity:.5}.example-button-15{background-image:none;background:#1979c3;padding:7px 15px;color:#fff;border:1px solid #1979c3;cursor:pointer;display:inline-block;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;font-size:1.4rem;font-weight:700;box-sizing:border-box;vertical-align:middle;background:#f2f2f2;color:#333;border:1px solid #cdcdcd}.example-button-15:focus,.example-button-15:active{background:#006bb4;border:1px solid #006bb4;color:#fff}.example-button-15:hover{background:#006bb4;border:1px solid #006bb4;color:#fff}.example-button-15.disabled,.example-button-15[disabled],fieldset[disabled] .example-button-15{cursor:default;pointer-events:none;opacity:.5}.example-button-15:focus,.example-button-15:active{background:#e2e2e2;color:#333;border:1px solid #cdcdcd}.example-button-15:hover{background:#e2e2e2;color:#555;border:1px solid #cdcdcd}.example-button-17{line-height:2.2rem;padding:14px 17px;font-size:1.8rem;font-size:1.4rem;line-height:1.6rem;padding:7px 15px}.example-button-18{font-size:1rem;line-height:1.2rem;padding:4px 10px}.example-dropdown-1{display:inline-block;position:relative}.example-dropdown-1:before,.example-dropdown-1:after{content:"";display:table}.example-dropdown-1:after{clear:both}.example-dropdown-1 .action.toggle{cursor:pointer;display:inline-block;text-decoration:none}.example-dropdown-1 .action.toggle:after{font-family:'icons-blank-theme';content:'\e607';font-size:22px;line-height:22px;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.example-dropdown-1 .action.toggle:hover:after{color:inherit}.example-dropdown-1 .action.toggle:active:after{color:inherit}.example-dropdown-1 .action.toggle.active{display:inline-block;text-decoration:none}.example-dropdown-1 .action.toggle.active:after{font-family:'icons-blank-theme';content:'\e618';font-size:22px;line-height:22px;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.example-dropdown-1 .action.toggle.active:hover:after{color:inherit}.example-dropdown-1 .action.toggle.active:active:after{color:inherit}.example-dropdown-1 ul.dropdown{margin:0;padding:0;list-style:none none;box-sizing:border-box;background:#fff;border:1px solid #bbb;position:absolute;z-index:100;top:100%;min-width:100%;display:none;box-shadow:0 3px 3px rgba(0,0,0,.15);margin-top:4px}.example-dropdown-1 ul.dropdown li{margin:0;padding:3px 5px}.example-dropdown-1 ul.dropdown li:hover{background:#e8e8e8;cursor:pointer}.example-dropdown-1 ul.dropdown:before,.example-dropdown-1 ul.dropdown:after{content:"";position:absolute;display:block;width:0;height:0;border-bottom-style:solid}.example-dropdown-1 ul.dropdown:before{z-index:99;border:solid 6px;border-color:transparent transparent #fff transparent}.example-dropdown-1 ul.dropdown:after{z-index:98;border:solid 7px;border-color:transparent transparent #bbb transparent}.example-dropdown-1 ul.dropdown:before{top:-12px;left:10px}.example-dropdown-1 ul.dropdown:after{top:-14px;left:9px}.example-dropdown-1.active{overflow:visible}.example-dropdown-1.active ul.dropdown{display:block}.example-dropdown-2{display:inline-block;position:relative}.example-dropdown-2:before,.example-dropdown-2:after{content:"";display:table}.example-dropdown-2:after{clear:both}.example-dropdown-2 .action.toggle{cursor:pointer;display:inline-block;text-decoration:none}.example-dropdown-2 .action.toggle:after{font-family:'icons-blank-theme';content:'\e607';font-size:22px;line-height:22px;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.example-dropdown-2 .action.toggle:hover:after{color:inherit}.example-dropdown-2 .action.toggle:active:after{color:inherit}.example-dropdown-2 .action.toggle.active{display:inline-block;text-decoration:none}.example-dropdown-2 .action.toggle.active:after{font-family:'icons-blank-theme';content:'\e618';font-size:22px;line-height:22px;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.example-dropdown-2 .action.toggle.active:hover:after{color:inherit}.example-dropdown-2 .action.toggle.active:active:after{color:inherit}.example-dropdown-2 ul.dropdown{margin:0;padding:0;list-style:none none;box-sizing:border-box;background:#fff;border:1px solid #bbb;position:absolute;z-index:100;top:100%;min-width:100%;display:none;box-shadow:0 3px 3px rgba(0,0,0,.15);margin-top:4px}.example-dropdown-2 ul.dropdown li{margin:0;padding:3px 5px}.example-dropdown-2 ul.dropdown li:hover{background:#e8e8e8;cursor:pointer}.example-dropdown-2 ul.dropdown:before,.example-dropdown-2 ul.dropdown:after{content:"";position:absolute;display:block;width:0;height:0;border-bottom-style:solid}.example-dropdown-2 ul.dropdown:before{z-index:99;border:solid 6px;border-color:transparent transparent #fff transparent}.example-dropdown-2 ul.dropdown:after{z-index:98;border:solid 7px;border-color:transparent transparent #bbb transparent}.example-dropdown-2 ul.dropdown:before{top:-12px;left:10px}.example-dropdown-2 ul.dropdown:after{top:-14px;left:9px}.example-dropdown-2.active{overflow:visible}.example-dropdown-2.active ul.dropdown{display:block}.example-dropdown-3{display:inline-block;position:relative}.example-dropdown-3:before,.example-dropdown-3:after{content:"";display:table}.example-dropdown-3:after{clear:both}.example-dropdown-3 .action.toggle{cursor:pointer;display:inline-block;text-decoration:none}.example-dropdown-3 .action.toggle:before{font-family:'icons-blank-theme';content:'\e61c';font-size:22px;line-height:1;color:red;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.example-dropdown-3 .action.toggle:hover:before{color:red}.example-dropdown-3 .action.toggle:active:before{color:inherit}.example-dropdown-3 .action.toggle.active{display:inline-block;text-decoration:none}.example-dropdown-3 .action.toggle.active:before{font-family:'icons-blank-theme';content:'\e60f';font-size:22px;line-height:1;color:red;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.example-dropdown-3 .action.toggle.active:hover:before{color:red}.example-dropdown-3 .action.toggle.active:active:before{color:inherit}.example-dropdown-3 ul.dropdown{margin:0;padding:0;list-style:none none;box-sizing:border-box;background:#fff;border:1px solid #bbb;position:absolute;z-index:100;top:100%;min-width:100%;display:none;box-shadow:0 3px 3px rgba(0,0,0,.15);margin-top:4px}.example-dropdown-3 ul.dropdown li{margin:0;padding:3px 5px}.example-dropdown-3 ul.dropdown li:hover{background:#e8e8e8;cursor:pointer}.example-dropdown-3 ul.dropdown:before,.example-dropdown-3 ul.dropdown:after{content:"";position:absolute;display:block;width:0;height:0;border-bottom-style:solid}.example-dropdown-3 ul.dropdown:before{z-index:99;border:solid 6px;border-color:transparent transparent #fff transparent}.example-dropdown-3 ul.dropdown:after{z-index:98;border:solid 7px;border-color:transparent transparent #bbb transparent}.example-dropdown-3 ul.dropdown:before{top:-12px;left:10px}.example-dropdown-3 ul.dropdown:after{top:-14px;left:9px}.example-dropdown-3.active{overflow:visible}.example-dropdown-3.active ul.dropdown{display:block}.example-dropdown-5{display:inline-block;position:relative}.example-dropdown-5:before,.example-dropdown-5:after{content:"";display:table}.example-dropdown-5:after{clear:both}.example-dropdown-5 .action.toggle{cursor:pointer;display:inline-block;text-decoration:none}.example-dropdown-5 .action.toggle:after{font-family:'icons-blank-theme';content:'\e607';font-size:22px;line-height:1;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.example-dropdown-5 .action.toggle:hover:after{color:inherit}.example-dropdown-5 .action.toggle:active:after{color:inherit}.example-dropdown-5 .action.toggle.active{display:inline-block;text-decoration:none}.example-dropdown-5 .action.toggle.active:after{font-family:'icons-blank-theme';content:'\e618';font-size:22px;line-height:1;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.example-dropdown-5 .action.toggle.active:hover:after{color:inherit}.example-dropdown-5 .action.toggle.active:active:after{color:inherit}.example-dropdown-5 ul.dropdown{margin:0;padding:0;list-style:none none;box-sizing:border-box;background:#eef1f3;border:2px solid #ced1d4;position:absolute;z-index:100;top:100%;min-width:100%;display:none}.example-dropdown-5 ul.dropdown li{margin:0;padding:10px;border-top:2px solid #e8eaed}.example-dropdown-5 ul.dropdown li:first-child{border:0}.example-dropdown-5 ul.dropdown li:hover{background:#d8e3e3;cursor:pointer}.example-dropdown-5.active{overflow:visible}.example-dropdown-5.active ul.dropdown{display:block}.example-dropdown-6{display:inline-block;position:relative}.example-dropdown-6:before,.example-dropdown-6:after{content:"";display:table}.example-dropdown-6:after{clear:both}.example-dropdown-6 .action.split{float:left;margin:0}.example-dropdown-6 .action.toggle{float:right;margin:0}.example-dropdown-6 button.action.split{border-top-right-radius:0;border-bottom-right-radius:0}.example-dropdown-6 button+.action.toggle{border-left:0;border-top-left-radius:0;border-bottom-left-radius:0}.example-dropdown-6 .action.toggle{padding:4px 5px;display:inline-block;text-decoration:none}.example-dropdown-6 .action.toggle>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-dropdown-6 .action.toggle:after{font-family:'icons-blank-theme';content:'\e607';font-size:22px;line-height:22px;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.example-dropdown-6 .action.toggle:hover:after{color:inherit}.example-dropdown-6 .action.toggle:active:after{color:inherit}.example-dropdown-6 .action.toggle.active{display:inline-block;text-decoration:none}.example-dropdown-6 .action.toggle.active>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-dropdown-6 .action.toggle.active:after{font-family:'icons-blank-theme';content:'\e618';font-size:22px;line-height:22px;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.example-dropdown-6 .action.toggle.active:hover:after{color:inherit}.example-dropdown-6 .action.toggle.active:active:after{color:inherit}.example-dropdown-6 ul.dropdown{margin:0;padding:0;list-style:none none;box-sizing:border-box;background:#fff;border:1px solid #bbb;position:absolute;z-index:100;top:100%;min-width:100%;display:none;box-shadow:0 3px 3px rgba(0,0,0,.15);margin-top:4px}.example-dropdown-6 ul.dropdown li{margin:0;padding:3px 5px}.example-dropdown-6 ul.dropdown li:hover{background:#e8e8e8;cursor:pointer}.example-dropdown-6 ul.dropdown:before,.example-dropdown-6 ul.dropdown:after{content:"";position:absolute;display:block;width:0;height:0;border-bottom-style:solid}.example-dropdown-6 ul.dropdown:before{z-index:99;border:solid 6px;border-color:transparent transparent #fff transparent}.example-dropdown-6 ul.dropdown:after{z-index:98;border:solid 7px;border-color:transparent transparent #bbb transparent}.example-dropdown-6 ul.dropdown:before{top:-12px;right:10px}.example-dropdown-6 ul.dropdown:after{top:-14px;right:9px}.example-dropdown-6.active{overflow:visible}.example-dropdown-6.active ul.dropdown{display:block}.split.example-dropdown-7{display:inline-block;position:relative}.split.example-dropdown-7:before,.split.example-dropdown-7:after{content:"";display:table}.split.example-dropdown-7:after{clear:both}.split.example-dropdown-7 .action.split{float:left;margin:0}.split.example-dropdown-7 .action.toggle{float:right;margin:0}.split.example-dropdown-7 .action.toggle{padding:4px 5px;display:inline-block;text-decoration:none}.split.example-dropdown-7 .action.toggle>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.split.example-dropdown-7 .action.toggle:after{font-family:'icons-blank-theme';content:'\e607';font-size:22px;line-height:22px;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.split.example-dropdown-7 .action.toggle:hover:after{color:inherit}.split.example-dropdown-7 .action.toggle:active:after{color:inherit}.split.example-dropdown-7 .action.toggle.active{display:inline-block;text-decoration:none}.split.example-dropdown-7 .action.toggle.active>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.split.example-dropdown-7 .action.toggle.active:after{font-family:'icons-blank-theme';content:'\e618';font-size:22px;line-height:22px;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.split.example-dropdown-7 .action.toggle.active:hover:after{color:inherit}.split.example-dropdown-7 .action.toggle.active:active:after{color:inherit}.split.example-dropdown-7 ul.dropdown{margin:0;padding:0;list-style:none none;box-sizing:border-box;background:#fff;border:1px solid #bbb;position:absolute;z-index:100;top:100%;min-width:100%;display:none;box-shadow:0 3px 3px rgba(0,0,0,.15);margin-top:4px}.split.example-dropdown-7 ul.dropdown li{margin:0;padding:3px 5px}.split.example-dropdown-7 ul.dropdown li:hover{background:#e8e8e8;cursor:pointer}.split.example-dropdown-7 ul.dropdown:before,.split.example-dropdown-7 ul.dropdown:after{content:"";position:absolute;display:block;width:0;height:0;border-bottom-style:solid}.split.example-dropdown-7 ul.dropdown:before{z-index:99;border:solid 6px;border-color:transparent transparent #fff transparent}.split.example-dropdown-7 ul.dropdown:after{z-index:98;border:solid 7px;border-color:transparent transparent #bbb transparent}.split.example-dropdown-7 ul.dropdown:before{top:-12px;right:10px}.split.example-dropdown-7 ul.dropdown:after{top:-14px;right:9px}.split.example-dropdown-7.active{overflow:visible}.split.example-dropdown-7.active ul.dropdown{display:block}.example-dropdown-8{display:inline-block;position:relative}.example-dropdown-8:before,.example-dropdown-8:after{content:"";display:table}.example-dropdown-8:after{clear:both}.example-dropdown-8 .action.split{float:left;margin:0}.example-dropdown-8 .action.toggle{float:right;margin:0}.example-dropdown-8 button.action.split{border-top-right-radius:0;border-bottom-right-radius:0}.example-dropdown-8 button+.action.toggle{border-left:0;border-top-left-radius:0;border-bottom-left-radius:0}.example-dropdown-8 .action.toggle{padding:4px 5px;display:inline-block;text-decoration:none}.example-dropdown-8 .action.toggle>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-dropdown-8 .action.toggle:after{font-family:'icons-blank-theme';content:'\e607';font-size:22px;line-height:22px;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.example-dropdown-8 .action.toggle:hover:after{color:inherit}.example-dropdown-8 .action.toggle:active:after{color:inherit}.example-dropdown-8 .action.toggle.active{display:inline-block;text-decoration:none}.example-dropdown-8 .action.toggle.active>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-dropdown-8 .action.toggle.active:after{font-family:'icons-blank-theme';content:'\e618';font-size:22px;line-height:22px;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.example-dropdown-8 .action.toggle.active:hover:after{color:inherit}.example-dropdown-8 .action.toggle.active:active:after{color:inherit}.example-dropdown-8 ul.dropdown{margin:0;padding:0;list-style:none none;box-sizing:border-box;background:#fff;border:1px solid #bbb;position:absolute;z-index:100;top:100%;min-width:100%;display:none;box-shadow:0 3px 3px rgba(0,0,0,.15);margin-top:4px}.example-dropdown-8 ul.dropdown li{margin:0;padding:3px 5px}.example-dropdown-8 ul.dropdown li:hover{background:#e8e8e8;cursor:pointer}.example-dropdown-8 ul.dropdown:before,.example-dropdown-8 ul.dropdown:after{content:"";position:absolute;display:block;width:0;height:0;border-bottom-style:solid}.example-dropdown-8 ul.dropdown:before{z-index:99;border:solid 6px;border-color:transparent transparent #fff transparent}.example-dropdown-8 ul.dropdown:after{z-index:98;border:solid 7px;border-color:transparent transparent #bbb transparent}.example-dropdown-8 ul.dropdown:before{top:-12px;right:10px}.example-dropdown-8 ul.dropdown:after{top:-14px;right:9px}.example-dropdown-8.active{overflow:visible}.example-dropdown-8.active ul.dropdown{display:block}.example-dropdown-9{display:inline-block;position:relative}.example-dropdown-9 .action.split,.example-dropdown-9 .action.toggle{line-height:2.2rem;padding:14px 17px;font-size:1.8rem}.example-dropdown-9:before,.example-dropdown-9:after{content:"";display:table}.example-dropdown-9:after{clear:both}.example-dropdown-9 .action.split{float:left;margin:0}.example-dropdown-9 .action.toggle{float:right;margin:0}.example-dropdown-9 button.action.split{border-top-right-radius:0;border-bottom-right-radius:0}.example-dropdown-9 button+.action.toggle{border-left:0;border-top-left-radius:0;border-bottom-left-radius:0}.example-dropdown-9 .action.toggle{padding:4px 5px;display:inline-block;text-decoration:none}.example-dropdown-9 .action.toggle>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-dropdown-9 .action.toggle:after{font-family:'icons-blank-theme';content:'\e607';font-size:22px;line-height:22px;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.example-dropdown-9 .action.toggle:hover:after{color:inherit}.example-dropdown-9 .action.toggle:active:after{color:inherit}.example-dropdown-9 .action.toggle.active{display:inline-block;text-decoration:none}.example-dropdown-9 .action.toggle.active>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-dropdown-9 .action.toggle.active:after{font-family:'icons-blank-theme';content:'\e618';font-size:22px;line-height:22px;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.example-dropdown-9 .action.toggle.active:hover:after{color:inherit}.example-dropdown-9 .action.toggle.active:active:after{color:inherit}.example-dropdown-9 ul.dropdown{margin:0;padding:0;list-style:none none;box-sizing:border-box;background:#fff;border:1px solid #bbb;position:absolute;z-index:100;top:100%;min-width:100%;display:none;box-shadow:0 3px 3px rgba(0,0,0,.15);margin-top:4px}.example-dropdown-9 ul.dropdown li{margin:0;padding:3px 5px}.example-dropdown-9 ul.dropdown li:hover{background:#e8e8e8;cursor:pointer}.example-dropdown-9 ul.dropdown:before,.example-dropdown-9 ul.dropdown:after{content:"";position:absolute;display:block;width:0;height:0;border-bottom-style:solid}.example-dropdown-9 ul.dropdown:before{z-index:99;border:solid 6px;border-color:transparent transparent #fff transparent}.example-dropdown-9 ul.dropdown:after{z-index:98;border:solid 7px;border-color:transparent transparent #bbb transparent}.example-dropdown-9 ul.dropdown:before{top:-12px;right:10px}.example-dropdown-9 ul.dropdown:after{top:-14px;right:9px}.example-dropdown-9.active{overflow:visible}.example-dropdown-9.active ul.dropdown{display:block}.example-dropdown-10{display:inline-block;position:relative}.example-dropdown-10 .action.split,.example-dropdown-10 .action.toggle{line-height:1.2rem;padding:5px 8px;font-size:1.1rem}.example-dropdown-10:before,.example-dropdown-10:after{content:"";display:table}.example-dropdown-10:after{clear:both}.example-dropdown-10 .action.split{float:left;margin:0}.example-dropdown-10 .action.toggle{float:right;margin:0}.example-dropdown-10 button.action.split{border-top-right-radius:0;border-bottom-right-radius:0}.example-dropdown-10 button+.action.toggle{border-left:0;border-top-left-radius:0;border-bottom-left-radius:0}.example-dropdown-10 .action.toggle{padding:4px 5px;display:inline-block;text-decoration:none}.example-dropdown-10 .action.toggle>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-dropdown-10 .action.toggle:after{font-family:'icons-blank-theme';content:'\e607';font-size:22px;line-height:22px;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.example-dropdown-10 .action.toggle:hover:after{color:inherit}.example-dropdown-10 .action.toggle:active:after{color:inherit}.example-dropdown-10 .action.toggle.active{display:inline-block;text-decoration:none}.example-dropdown-10 .action.toggle.active>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-dropdown-10 .action.toggle.active:after{font-family:'icons-blank-theme';content:'\e618';font-size:22px;line-height:22px;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.example-dropdown-10 .action.toggle.active:hover:after{color:inherit}.example-dropdown-10 .action.toggle.active:active:after{color:inherit}.example-dropdown-10 ul.dropdown{margin:0;padding:0;list-style:none none;box-sizing:border-box;background:#fff;border:1px solid #bbb;position:absolute;z-index:100;top:100%;min-width:100%;display:none;box-shadow:0 3px 3px rgba(0,0,0,.15);margin-top:4px}.example-dropdown-10 ul.dropdown li{margin:0;padding:3px 5px}.example-dropdown-10 ul.dropdown li:hover{background:#e8e8e8;cursor:pointer}.example-dropdown-10 ul.dropdown:before,.example-dropdown-10 ul.dropdown:after{content:"";position:absolute;display:block;width:0;height:0;border-bottom-style:solid}.example-dropdown-10 ul.dropdown:before{z-index:99;border:solid 6px;border-color:transparent transparent #fff transparent}.example-dropdown-10 ul.dropdown:after{z-index:98;border:solid 7px;border-color:transparent transparent #bbb transparent}.example-dropdown-10 ul.dropdown:before{top:-12px;right:10px}.example-dropdown-10 ul.dropdown:after{top:-14px;right:9px}.example-dropdown-10.active{overflow:visible}.example-dropdown-10.active ul.dropdown{display:block}.example-dropdown-11{display:inline-block;position:relative}.example-dropdown-11:before,.example-dropdown-11:after{content:"";display:table}.example-dropdown-11:after{clear:both}.example-dropdown-11 .action.split{float:right;margin:0}.example-dropdown-11 .action.toggle{float:left;margin:0}.example-dropdown-11 button.action.split{border-top-left-radius:0;border-bottom-left-radius:0}.example-dropdown-11 button+.action.toggle{border-right:0;border-top-right-radius:0;border-bottom-right-radius:0}.example-dropdown-11 .action.toggle{padding:4px 5px;display:inline-block;text-decoration:none}.example-dropdown-11 .action.toggle>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-dropdown-11 .action.toggle:before{font-family:'icons-blank-theme';content:'\e61c';font-size:22px;line-height:22px;color:red;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.example-dropdown-11 .action.toggle:hover:before{color:red}.example-dropdown-11 .action.toggle:active:before{color:inherit}.example-dropdown-11 .action.toggle.active{display:inline-block;text-decoration:none}.example-dropdown-11 .action.toggle.active>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-dropdown-11 .action.toggle.active:before{font-family:'icons-blank-theme';content:'\e60f';font-size:22px;line-height:22px;color:red;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.example-dropdown-11 .action.toggle.active:hover:before{color:red}.example-dropdown-11 .action.toggle.active:active:before{color:inherit}.example-dropdown-11 ul.dropdown{margin:0;padding:0;list-style:none none;box-sizing:border-box;background:#fff;border:1px solid #bbb;position:absolute;z-index:100;top:100%;min-width:100%;display:none;box-shadow:0 3px 3px rgba(0,0,0,.15);margin-top:4px}.example-dropdown-11 ul.dropdown li{margin:0;padding:3px 5px}.example-dropdown-11 ul.dropdown li:hover{background:#e8e8e8;cursor:pointer}.example-dropdown-11 ul.dropdown:before,.example-dropdown-11 ul.dropdown:after{content:"";position:absolute;display:block;width:0;height:0;border-bottom-style:solid}.example-dropdown-11 ul.dropdown:before{z-index:99;border:solid 6px;border-color:transparent transparent #fff transparent}.example-dropdown-11 ul.dropdown:after{z-index:98;border:solid 7px;border-color:transparent transparent #bbb transparent}.example-dropdown-11 ul.dropdown:before{top:-12px;right:10px}.example-dropdown-11 ul.dropdown:after{top:-14px;right:9px}.example-dropdown-11.active{overflow:visible}.example-dropdown-11.active ul.dropdown{display:block}.example-dropdown-12{display:inline-block;position:relative}.example-dropdown-12:before,.example-dropdown-12:after{content:"";display:table}.example-dropdown-12:after{clear:both}.example-dropdown-12 .action.split{float:left;margin:0}.example-dropdown-12 .action.toggle{float:right;margin:0}.example-dropdown-12 button.action.split{border-top-right-radius:0;border-bottom-right-radius:0}.example-dropdown-12 button+.action.toggle{border-left:0;border-top-left-radius:0;border-bottom-left-radius:0}.example-dropdown-12 .action.toggle{padding:4px 5px;display:inline-block;text-decoration:none}.example-dropdown-12 .action.toggle>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-dropdown-12 .action.toggle:after{font-family:'icons-blank-theme';content:'\e607';font-size:22px;line-height:22px;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.example-dropdown-12 .action.toggle:hover:after{color:inherit}.example-dropdown-12 .action.toggle:active:after{color:inherit}.example-dropdown-12 .action.toggle.active{display:inline-block;text-decoration:none}.example-dropdown-12 .action.toggle.active>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-dropdown-12 .action.toggle.active:after{font-family:'icons-blank-theme';content:'\e618';font-size:22px;line-height:22px;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.example-dropdown-12 .action.toggle.active:hover:after{color:inherit}.example-dropdown-12 .action.toggle.active:active:after{color:inherit}.example-dropdown-12 ul.dropdown{margin:0;padding:0;list-style:none none;box-sizing:border-box;background:#eef1f3;border:2px solid #ced1d4;position:absolute;z-index:100;top:100%;min-width:100%;display:none}.example-dropdown-12 ul.dropdown li{margin:0;padding:10px;border-top:2px solid #e8eaed}.example-dropdown-12 ul.dropdown li:first-child{border:0}.example-dropdown-12 ul.dropdown li:hover{background:#d8e3e3;cursor:pointer}.example-dropdown-12.active{overflow:visible}.example-dropdown-12.active ul.dropdown{display:block}.example-form-1 .example-form-1-fieldset{padding:0;margin:0 0 40px;border:0;letter-spacing:-.31em}.example-form-1 .example-form-1-fieldset>*{letter-spacing:normal}.example-form-1 .example-form-1-fieldset>.legend{margin:0 0 25px;padding:0;font-size:2rem;line-height:1.2;box-sizing:border-box;float:left}.example-form-1 .example-form-1-fieldset>.legend+br{display:block;visibility:hidden;height:0;overflow:hidden;clear:both}.example-form-1 .example-form-1-fieldset:after{content:attr(data-hasrequired);display:block;font-size:1.2rem;color:#e02b27;margin:10px 0 0;letter-spacing:normal;word-spacing:normal}.example-form-1 .example-form-1-fieldset>.field{margin:0 0 20px}.example-form-1 .example-form-1-fieldset>.field>.label{display:inline-block;margin:0 0 5px}.example-form-1 .example-form-1-fieldset>.field:last-child{margin-bottom:0}.example-form-1 .example-form-1-fieldset>.field>.label{font-weight:700}.example-form-1 .example-form-1-fieldset>.field>.label+br{display:none}.example-form-1 .example-form-1-fieldset>.field .choice input{vertical-align:top}.example-form-1 .example-form-1-fieldset>.field .fields.group:before,.example-form-1 .example-form-1-fieldset>.field .fields.group:after{content:"";display:table}.example-form-1 .example-form-1-fieldset>.field .fields.group:after{clear:both}.example-form-1 .example-form-1-fieldset>.field .fields.group .field{box-sizing:border-box;float:left}.example-form-1 .example-form-1-fieldset>.field .fields.group.group-2 .field{width:50%!important}.example-form-1 .example-form-1-fieldset>.field .fields.group.group-3 .field{width:33.3%!important}.example-form-1 .example-form-1-fieldset>.field .fields.group.group-4 .field{width:25%!important}.example-form-1 .example-form-1-fieldset>.field .fields.group.group-5 .field{width:20%!important}.example-form-1 .example-form-1-fieldset>.field .addon{display:inline-flex;flex-wrap:nowrap;padding:0;width:100%}.example-form-1 .example-form-1-fieldset>.field .addon textarea,.example-form-1 .example-form-1-fieldset>.field .addon select,.example-form-1 .example-form-1-fieldset>.field .addon input{-webkit-order:2;-ms-flex-order:2;order:2;box-shadow:none;display:inline-block;margin:0;width:auto;flex-basis:100%}.example-form-1 .example-form-1-fieldset>.field .addon .addbefore,.example-form-1 .example-form-1-fieldset>.field .addon .addafter{-webkit-order:3;-ms-flex-order:3;order:3;display:inline-block;box-sizing:border-box;background:#fff;border:1px solid #c2c2c2;border-radius:1px;height:32px;width:100%;padding:0 9px;font-size:14px;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;line-height:1.428571429;background-clip:padding-box;vertical-align:baseline;width:auto;white-space:nowrap;vertical-align:middle}.example-form-1 .example-form-1-fieldset>.field .addon .addbefore:disabled,.example-form-1 .example-form-1-fieldset>.field .addon .addafter:disabled{opacity:.5}.example-form-1 .example-form-1-fieldset>.field .addon .addbefore::-moz-placeholder,.example-form-1 .example-form-1-fieldset>.field .addon .addafter::-moz-placeholder{color:#c2c2c2}.example-form-1 .example-form-1-fieldset>.field .addon .addbefore::-webkit-input-placeholder,.example-form-1 .example-form-1-fieldset>.field .addon .addafter::-webkit-input-placeholder{color:#c2c2c2}.example-form-1 .example-form-1-fieldset>.field .addon .addbefore:-ms-input-placeholder,.example-form-1 .example-form-1-fieldset>.field .addon .addafter:-ms-input-placeholder{color:#c2c2c2}.example-form-1 .example-form-1-fieldset>.field .addon .addbefore{float:left;-webkit-order:1;-ms-flex-order:1;order:1}.example-form-1 .example-form-1-fieldset>.field .additional{margin-top:10px}.example-form-1 .example-form-1-fieldset>.field.required>.label:after{content:'*';font-size:1.2rem;color:#e02b27;margin:0 0 0 5px}.example-form-1 .example-form-1-fieldset>.field .note{font-size:1.2rem;margin:3px 0 0;padding:0;display:inline-block;text-decoration:none}.example-form-1 .example-form-1-fieldset>.field .note:before{font-family:'icons-blank-theme';content:'\e618';font-size:24px;line-height:12px;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:middle;text-align:center}.example-form-2 .example-form-2-fieldset{padding:0;margin:0 0 40px;border:0;letter-spacing:-.31em}.example-form-2 .example-form-2-fieldset>*{letter-spacing:normal}.example-form-2 .example-form-2-fieldset>.legend{margin:0 0 25px;padding:0;font-size:2rem;line-height:1.2;box-sizing:border-box;float:left}.example-form-2 .example-form-2-fieldset>.legend+br{display:block;visibility:hidden;height:0;overflow:hidden;clear:both}.example-form-2 .example-form-2-fieldset>.field{margin:0 0 20px;box-sizing:border-box;display:inline-block;padding:0 12px 0 0;width:50%;vertical-align:top}.example-form-2 .example-form-2-fieldset>.field>.label{display:inline-block;margin:0 0 5px}.example-form-2 .example-form-2-fieldset>.field:last-child{margin-bottom:0}.example-form-2 .example-form-2-fieldset>.field+.fieldset{clear:both}.example-form-2 .example-form-2-fieldset>.field>.label{font-weight:700}.example-form-2 .example-form-2-fieldset>.field>.label+br{display:none}.example-form-2 .example-form-2-fieldset>.field .choice input{vertical-align:top}.example-form-2 .example-form-2-fieldset>.field .fields.group:before,.example-form-2 .example-form-2-fieldset>.field .fields.group:after{content:"";display:table}.example-form-2 .example-form-2-fieldset>.field .fields.group:after{clear:both}.example-form-2 .example-form-2-fieldset>.field .fields.group .field{box-sizing:border-box;float:left}.example-form-2 .example-form-2-fieldset>.field .fields.group.group-2 .field{width:50%!important}.example-form-2 .example-form-2-fieldset>.field .fields.group.group-3 .field{width:33.3%!important}.example-form-2 .example-form-2-fieldset>.field .fields.group.group-4 .field{width:25%!important}.example-form-2 .example-form-2-fieldset>.field .fields.group.group-5 .field{width:20%!important}.example-form-2 .example-form-2-fieldset>.field .addon{display:inline-flex;flex-wrap:nowrap;padding:0;width:100%}.example-form-2 .example-form-2-fieldset>.field .addon textarea,.example-form-2 .example-form-2-fieldset>.field .addon select,.example-form-2 .example-form-2-fieldset>.field .addon input{-webkit-order:2;-ms-flex-order:2;order:2;box-shadow:none;display:inline-block;margin:0;width:auto;flex-basis:100%}.example-form-2 .example-form-2-fieldset>.field .addon .addbefore,.example-form-2 .example-form-2-fieldset>.field .addon .addafter{-webkit-order:3;-ms-flex-order:3;order:3;display:inline-block;box-sizing:border-box;background:#fff;border:1px solid #c2c2c2;border-radius:1px;height:32px;width:100%;padding:0 9px;font-size:14px;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;line-height:1.428571429;background-clip:padding-box;vertical-align:baseline;width:auto;white-space:nowrap;vertical-align:middle}.example-form-2 .example-form-2-fieldset>.field .addon .addbefore:disabled,.example-form-2 .example-form-2-fieldset>.field .addon .addafter:disabled{opacity:.5}.example-form-2 .example-form-2-fieldset>.field .addon .addbefore::-moz-placeholder,.example-form-2 .example-form-2-fieldset>.field .addon .addafter::-moz-placeholder{color:#c2c2c2}.example-form-2 .example-form-2-fieldset>.field .addon .addbefore::-webkit-input-placeholder,.example-form-2 .example-form-2-fieldset>.field .addon .addafter::-webkit-input-placeholder{color:#c2c2c2}.example-form-2 .example-form-2-fieldset>.field .addon .addbefore:-ms-input-placeholder,.example-form-2 .example-form-2-fieldset>.field .addon .addafter:-ms-input-placeholder{color:#c2c2c2}.example-form-2 .example-form-2-fieldset>.field .addon .addbefore{float:left;-webkit-order:1;-ms-flex-order:1;order:1}.example-form-2 .example-form-2-fieldset>.field .additional{margin-top:10px}.example-form-2 .example-form-2-fieldset>.field.required>.label:after{content:'*';font-size:1.2rem;color:#e02b27;margin:0 0 0 5px}.example-form-2 .example-form-2-fieldset>.field .note{font-size:1.2rem;margin:3px 0 0;padding:0;display:inline-block;text-decoration:none}.example-form-2 .example-form-2-fieldset>.field .note:before{font-family:'icons-blank-theme';content:'\e618';font-size:24px;line-height:12px;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:middle;text-align:center}input[type="text"],input[type="password"],input[type="url"],input[type="tel"],input[type="search"],input[type="number"],input[type="datetime"],input[type="email"]{box-sizing:border-box;background:#fff;border:1px solid #c2c2c2;border-radius:1px;height:32px;width:100%;padding:0 9px;font-size:14px;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;line-height:1.428571429;background-clip:padding-box;vertical-align:baseline;margin-bottom:20px}input[type="text"]:disabled,input[type="password"]:disabled,input[type="url"]:disabled,input[type="tel"]:disabled,input[type="search"]:disabled,input[type="number"]:disabled,input[type="datetime"]:disabled,input[type="email"]:disabled{opacity:.5}input[type="text"]::-moz-placeholder,input[type="password"]::-moz-placeholder,input[type="url"]::-moz-placeholder,input[type="tel"]::-moz-placeholder,input[type="search"]::-moz-placeholder,input[type="number"]::-moz-placeholder,input[type="datetime"]::-moz-placeholder,input[type="email"]::-moz-placeholder{color:#c2c2c2}input[type="text"]::-webkit-input-placeholder,input[type="password"]::-webkit-input-placeholder,input[type="url"]::-webkit-input-placeholder,input[type="tel"]::-webkit-input-placeholder,input[type="search"]::-webkit-input-placeholder,input[type="number"]::-webkit-input-placeholder,input[type="datetime"]::-webkit-input-placeholder,input[type="email"]::-webkit-input-placeholder{color:#c2c2c2}input[type="text"]:-ms-input-placeholder,input[type="password"]:-ms-input-placeholder,input[type="url"]:-ms-input-placeholder,input[type="tel"]:-ms-input-placeholder,input[type="search"]:-ms-input-placeholder,input[type="number"]:-ms-input-placeholder,input[type="datetime"]:-ms-input-placeholder,input[type="email"]:-ms-input-placeholder{color:#c2c2c2}select{box-sizing:border-box;background:#fff;border:1px solid #c2c2c2;border-radius:1px;height:32px;width:100%;padding:5px 10px 4px;font-size:14px;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;line-height:1.428571429;background-clip:padding-box;vertical-align:baseline;margin-bottom:20px}select:disabled{opacity:.5}select[multiple="multiple"]{height:auto;margin-bottom:20px}textarea{box-sizing:border-box;background:#fff;border:1px solid #c2c2c2;border-radius:1px;height:auto;width:100%;padding:10px;margin:0;font-size:14px;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;line-height:1.428571429;background-clip:padding-box;vertical-align:baseline;resize:vertical}textarea:disabled{opacity:.5}textarea::-moz-placeholder{color:#c2c2c2}textarea::-webkit-input-placeholder{color:#c2c2c2}textarea:-ms-input-placeholder{color:#c2c2c2}input[type="checkbox"]{margin:2px 5px 0 0}input[type="checkbox"]:disabled{opacity:.5}input[type="radio"]{margin:2px 5px 0 0}input[type="radio"]:disabled{opacity:.5}input.text-example-1,select.select-example-1,textarea.textarea-example-1{border-color:#fc0;background:#fdf0d5;color:#b30000}input.text-example-1:focus,select.select-example-1:focus,textarea.textarea-example-1:focus{border-color:#cff;color:#060}input.text-example-1:disabled,select.select-example-1:disabled,textarea.textarea-example-1:disabled{color:#fcc}input.text-example-1::-moz-placeholder,textarea.textarea-example-1::-moz-placeholder{color:#ccc}input.text-example-1::-webkit-input-placeholder,textarea.textarea-example-1::-webkit-input-placeholder{color:#ccc}input.text-example-1:-ms-input-placeholder,textarea.textarea-example-1:-ms-input-placeholder{color:#ccc}.number-example{-moz-appearance:textfield}.number-example::-webkit-inner-spin-button,.number-example::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.search-example{-webkit-appearance:none}.search-example::-webkit-search-cancel-button,.search-example::-webkit-search-decoration,.search-example::-webkit-search-results-button,.search-example::-webkit-search-results-decoration{-webkit-appearance:none}input,textarea,select{font-size:1.2rem;color:#e02b27}.example-icon-1{display:inline-block}.example-icon-1:before{content:'';display:inline-block;width:26px;height:26px;line-height:26px;vertical-align:middle;background:url('/pub/static/frontend/Magento/blank/en_US/images/blank-theme-icons.png') no-repeat 0 0}.example-icon-2{display:inline-block}.example-icon-2:after{content:'';display:inline-block;width:26px;height:26px;line-height:26px;vertical-align:middle;background:url('/pub/static/frontend/Magento/blank/en_US/images/blank-theme-icons.png') no-repeat -26px 0}.example-icon-3{display:inline-block}.example-icon-3>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-icon-3:before{content:'';display:inline-block;width:26px;height:26px;line-height:26px;vertical-align:middle;background:url('/pub/static/frontend/Magento/blank/en_US/images/blank-theme-icons.png') no-repeat -156px -52px}.example-icon-4{display:inline-block;text-decoration:none}.example-icon-4:before{font-family:'icons-blank-theme';content:'\e606';font-size:24px;line-height:inherit;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:middle;text-align:center}.example-icon-5{display:inline-block;text-decoration:none}.example-icon-5:after{font-family:'icons-blank-theme';content:'\e605';font-size:24px;line-height:inherit;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:middle;text-align:center}.example-icon-6{display:inline-block;text-decoration:none}.example-icon-6>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-icon-6:before{font-family:'icons-blank-theme';content:'\e61b';font-size:24px;line-height:inherit;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:middle;text-align:center}.example-icon-7{display:inline-block}.example-icon-7:before{content:'';display:inline-block;width:26px;height:26px;line-height:26px;vertical-align:middle;background:url('/pub/static/frontend/Magento/blank/en_US/images/blank-theme-icons.png') no-repeat 0 0}.example-icon-8{display:inline-block}.example-icon-8:before{content:'';display:inline-block;width:26px;height:26px;line-height:26px;vertical-align:middle;background:url('/pub/static/frontend/Magento/blank/en_US/images/blank-theme-icons.png') no-repeat 0 0}.example-icon-8:before{background-position:-182px 0}.example-icon-9{display:inline-block}.example-icon-9:after{content:'';display:inline-block;width:26px;height:26px;line-height:26px;vertical-align:middle;background:url('/pub/static/frontend/Magento/blank/en_US/images/blank-theme-icons.png') no-repeat 0 0}.example-icon-9:after{background-position:-52px -26px}.example-icon-10{display:inline-block}.example-icon-10:before{content:'';display:inline-block;width:26px;height:26px;line-height:26px;vertical-align:middle;background:url('/pub/static/frontend/Magento/blank/en_US/images/blank-theme-icons.png') no-repeat 0 0}.example-icon-10:before{background-position:-104px 0}.example-icon-11{display:inline-block}.example-icon-11:before{content:'';display:inline-block;width:26px;height:26px;line-height:26px;vertical-align:middle;background:url('/pub/static/frontend/Magento/blank/en_US/images/blank-theme-icons.png') no-repeat 0 0}.example-icon-11:before{width:30px;height:30px}.example-icon-11:after{width:30px;height:30px}.example-icon-11:before{background-color:#f1f1f1}.example-icon-12{display:inline-block;text-decoration:none}.example-icon-12:before{font-family:'icons-blank-theme';content:'\e612';font-size:28px;line-height:inherit;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:middle;text-align:center}.example-icon-13{display:inline-block;text-decoration:none}.example-icon-13:before{font-family:'icons-blank-theme';content:'\e612';font-size:inherit;line-height:inherit;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:middle;text-align:center}.example-icon-13:before{font-size:26px;line-height:inherit}.example-icon-14{display:inline-block;text-decoration:none}.example-icon-14:before{font-family:'icons-blank-theme';content:'\e61d';font-size:26px;line-height:inherit;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:middle;text-align:center}.example-icon-14>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.icons-image-list{list-style:none;padding:0}.icons-image-list li{float:left;width:33%}.icons-image-list li>span{display:inline-block}.icons-image-list li>span:before{content:'';display:inline-block;width:26px;height:26px;line-height:26px;vertical-align:middle;background:url('/pub/static/frontend/Magento/blank/en_US/images/blank-theme-icons.png') no-repeat 0 0}.icons-image-list li .icon-search:before{background-position:0 0}.icons-image-list li .icon-cart:before{background-position:-26px 0}.icons-image-list li .icon-arrow-down:before{background-position:-52px 0}.icons-image-list li .icon-arrow-up:before{background-position:-78px 0}.icons-image-list li .icon-grid:before{background-position:-104px 0}.icons-image-list li .icon-list:before{background-position:-130px 0}.icons-image-list li .icon-remove:before{background-position:-156px 0}.icons-image-list li .icon-star:before{background-position:-182px 0}.icons-image-list li .icon-pointer-down:before{background-position:-208px 0}.icons-image-list li .icon-pointer-up:before{background-position:-234px 0}.icons-image-list li .icon-pointer-left:before{background-position:-260px 0}.icons-image-list li .icon-pointer-right:before{background-position:-286px 0}.icons-image-list li .icon-compare-empty:before{background-position:0 -26px}.icons-image-list li .icon-compare-full:before{background-position:-26px -26px}.icons-image-list li .icon-wishlist-empty:before{background-position:-52px -26px}.icons-image-list li .icon-wishlist-full:before{background-position:-78px -26px}.icons-image-list li .icon-update:before{background-position:-104px -26px}.icons-image-list li .icon-collapse:before{background-position:-130px -26px}.icons-image-list li .icon-expand:before{background-position:-156px -26px}.icons-image-list li .icon-menu:before{background-position:-182px -26px}.icons-image-list li .icon-prev:before{background-position:-208px -26px}.icons-image-list li .icon-next:before{background-position:-234px -26px}.icons-image-list li .icon-settings:before{background-position:-260px -26px}.icons-image-list li .icon-info:before{background-position:-286px -26px}.icons-image-list li .icon-checkmark:before{background-position:0 -52px}.icons-image-list li .icon-calendar:before{background-position:-26px -52px}.icons-image-list li .icon-comment:before{background-position:-52px -52px}.icons-image-list li .icon-comment-reflected:before{background-position:-78px -52px}.icons-image-list li .icon-envelope:before{background-position:-104px -52px}.icons-image-list li .icon-warning:before{background-position:-130px -52px}.icons-image-list li .icon-trash:before{background-position:-156px -52px}.icons-image-list li .icon-flag:before{background-position:-182px -52px}.icons-image-list li .icon-location:before{background-position:-208px -52px}.icons-image-list li .icon-up:before{background-position:-234px -52px}.icons-image-list li .icon-down:before{background-position:-260px -52px}.icons-font-list{list-style:none;padding:0}.icons-font-list li{float:left;width:25%;margin-bottom:35px;text-align:center}.icons-font-list li>span{display:inline-block;text-decoration:none}.icons-font-list li>span:before{font-family:'icons-blank-theme';font-size:34px;line-height:inherit;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:middle;text-align:center}.icons-font-list li>span:before{content:attr(data-icon);margin:0 auto;display:block}.loader{position:fixed;left:0;top:0;right:0;bottom:0;background-color:rgba(255,255,255,.5);z-index:9999}.loader:before{box-sizing:border-box;background:transparent url('/pub/static/frontend/Magento/blank/en_US/images/loader-2.gif') no-repeat 50% 50%;border-radius:5px;content:'';position:absolute;top:0;right:0;left:0;bottom:0;margin:auto;width:160px;height:160px}.loading{position:relative}.loading:before{content:'';position:absolute;left:0;top:0;right:0;bottom:0;background:rgba(255,255,255,.5) url('/pub/static/frontend/Magento/blank/en_US/images/loader-2.gif') no-repeat 50% 50%}.example-message-info{display:block;margin:0 0 10px;padding:10px 20px;font-size:1.3rem;line-height:1.2em;background:#fdf0d5;color:#6f4400}.example-message-info a{color:#1979c3}.example-message-info a:hover{color:#006bb4}.example-message-info a:active{color:#006bb4}.example-message-warning{display:block;margin:0 0 10px;padding:10px 20px;font-size:1.3rem;line-height:1.2em;background:#fdf0d5;color:#6f4400}.example-message-warning a{color:#1979c3}.example-message-warning a:hover{color:#006bb4}.example-message-warning a:active{color:#006bb4}.example-message-error{display:block;margin:0 0 10px;padding:10px 20px;font-size:1.3rem;line-height:1.2em;background:#fae5e5;color:#e02b27}.example-message-error a{color:#1979c3}.example-message-error a:hover{color:#006bb4}.example-message-error a:active{color:#006bb4}.example-message-success{display:block;margin:0 0 10px;padding:10px 20px;font-size:1.3rem;line-height:1.2em;background:#e5efe5;color:#006400}.example-message-success a{color:#1979c3}.example-message-success a:hover{color:#006bb4}.example-message-success a:active{color:#006bb4}.example-message-notice{display:block;margin:0 0 10px;padding:10px 20px;font-size:1.3rem;line-height:1.2em;background:#fdf0d5;color:#6f4400}.example-message-notice a{color:#1979c3}.example-message-notice a:hover{color:#006bb4}.example-message-notice a:active{color:#006bb4}.example-message-1{display:block;margin:0 0 10px;padding:10px 20px;font-size:1.3rem;line-height:1.2em;background:#fdf0d5;color:#6f4400;position:relative;padding-left:40px}.example-message-1 a{color:#1979c3}.example-message-1 a:hover{color:#006bb4}.example-message-1 a:active{color:#006bb4}.example-message-1>:first-child:before{font-family:'icons-blank-theme';content:'\e602';font-size:28px;line-height:28px;color:#c07600;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:middle;margin:-14px 0 0;position:absolute;top:18px;left:0;text-align:center;width:40px}.example-message-2{display:block;margin:0 0 10px;padding:10px 20px;font-size:1.3rem;line-height:1.2em;background:#fae5e5;color:#e02b27;position:relative;padding-right:40px}.example-message-2 a{color:#1979c3}.example-message-2 a:hover{color:#006bb4}.example-message-2 a:active{color:#006bb4}.example-message-2:before{content:'';position:absolute;width:30px;text-align:center;top:0;height:100%;display:block;padding:0;background:#b30000}.example-message-2>:first-child:before{content:'';position:absolute;overflow:hidden;top:50%;margin-top:-5px}.example-message-2>:first-child:after{font-family:'icons-blank-theme';content:'\e602';font-size:28px;line-height:28px;color:#fff;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:middle;margin:-14px 0 0;position:absolute;top:18px;left:0;text-align:center;width:30px}.example-message-2:before{right:0}.example-message-2>:first-child:before{width:0;height:0;border:5px solid transparent;border-right-color:#b30000;right:30px}.example-message-2>:first-child:after{right:0}.example-message-3{display:block;margin:0 0 10px;padding:10px 20px;font-size:1.3rem;line-height:1.2em;background:#e5efe5;color:#006400;position:relative;padding-left:40px}.example-message-3 a{color:#1979c3}.example-message-3 a:hover{color:#006bb4}.example-message-3 a:active{color:#006bb4}.example-message-3:before{content:'';position:absolute;width:30px;text-align:center;top:0;height:100%;display:block;padding:0;background:#006400}.example-message-3>:first-child:before{content:'';position:absolute;overflow:hidden;top:50%;margin-top:-5px}.example-message-3>:first-child:after{font-family:'icons-blank-theme';content:'\e610';font-size:28px;line-height:28px;color:#fff;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:middle;margin:-14px 0 0;position:absolute;top:18px;left:0;text-align:center;width:30px}.example-message-3:before{left:0}.example-message-3>:first-child:before{width:0;height:0;border:5px solid transparent;border-left-color:#006400;left:30px}.example-message-3>:first-child:after{left:0}.example-message-4{display:block;margin:0 0 10px;padding:10px 20px;font-size:1.3rem;line-height:1.2em;background:#fc0;border-color:#ffa500;color:#000;position:relative;padding-left:40px;border-width:4px;border-radius:10px}.example-message-4 a{color:#00f}.example-message-4 a:hover{color:#009}.example-message-4 a:active{color:#006}.example-message-4:before{content:'';position:absolute;width:30px;text-align:center;top:0;height:100%;display:block;padding:0;background:#green}.example-message-4>:first-child:before{content:'';position:absolute;overflow:hidden;top:50%;margin-top:-5px}.example-message-4>:first-child:after{font-family:'icons-blank-theme';content:'\e606';font-size:28px;line-height:28px;color:#000;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:middle;margin:-14px 0 0;position:absolute;top:15px;left:0;text-align:center;width:30px}.example-message-4:before{left:0}.example-message-4>:first-child:before{width:0;height:0;border:5px solid transparent;border-left-color:#green;left:30px}.example-message-4>:first-child:after{left:0}header.header{background-color:rgba(255,0,0,.2)}.column.main{background-color:rgba(255,255,0,.2)}.column.left{background-color:rgba(0,255,255,.2)}.column.right{background-color:rgba(0,0,255,.2)}footer.footer{background-color:rgba(0,0,0,.2)}.columns{box-sizing:border-box;display:-webkit-flex;display:-ms-flexbox;display:flex;flex-wrap:wrap}.columns:after{content:" ";display:block;height:0;clear:both;overflow:hidden;visibility:hidden}.columns>.column{padding-bottom:40px}@media (min-width: 600px){.page-layout-1column .column.main{ width:100%;-webkit-order:2;-ms-flex-order:2;order:2}.page-layout-3columns .column.main{width:66.66666667%;display:inline-block;-webkit-order:2;-ms-flex-order:2;order:2}.page-layout-2columns-left .column.main{width:83.33333333%;float:right;-webkit-order:2;-ms-flex-order:2;order:2}.page-layout-2columns-right .column.main{width:83.33333333%;float:left;-webkit-order:1;-ms-flex-order:1;order:1}.page-layout-3columns .column.left{width:16.66666667%;float:left;-webkit-order:1;-ms-flex-order:1;order:1}.page-layout-2columns-left .column.left{width:16.66666667%;float:left;-webkit-order:1;-ms-flex-order:1;order:1}.page-layout-2columns-right .column.left{width:16.66666667%;float:left;-webkit-order:1;-ms-flex-order:1;order:1}.page-layout-3columns .column.right{width:16.66666667%;float:right;-webkit-order:3;-ms-flex-order:3;order:3}.page-layout-2columns-left .column.right{width:16.66666667%;float:right;-webkit-order:2;-ms-flex-order:2;order:2}.page-layout-2columns-right .column.right{width:16.66666667%;float:right;-webkit-order:2;-ms-flex-order:2;order:2}}.layout-example-3 .column.main{width:60%;display:inline-block;-webkit-order:2;-ms-flex-order:2;order:2}.layout-example-3 .column.left{width:20%;float:left;-webkit-order:1;-ms-flex-order:1;order:1}.layout-example-3 .column.right{width:20%;float:right;-webkit-order:3;-ms-flex-order:3;order:3}.layout-example-3-1 .column.main{width:60%;float:left;-webkit-order:1;-ms-flex-order:1;order:1}.layout-example-3-1 .column.left{width:20%;display:inline-block;-webkit-order:2;-ms-flex-order:2;order:2}.layout-example-3-1 .column.right{width:20%;float:right;-webkit-order:3;-ms-flex-order:3;order:3}.pages>.label{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.pages .items{font-size:0;line-height:0;letter-spacing:-1px;white-space:nowrap;margin:0;padding:0;list-style:none none;display:inline-block;font-weight:700}.pages .item{font-size:1.2rem;font-size:12px;line-height:32px;letter-spacing:normal;margin:0 2px 0 0;display:inline-block}.pages .item .label{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.pages a.page{padding:0 4px;color:#1979c3;display:inline-block;text-decoration:none}.pages a.page:visited{color:#800080}.pages a.page:hover{color:#006bb4;text-decoration:none}.pages a.page:active{color:#ff5501}.pages strong.page{font-size:1.2rem;font-size:12px;line-height:32px;letter-spacing:normal;padding:0 4px;color:#333;display:inline-block;font-weight:700}.pages .action{border:1px solid #d1d1d1;padding:0;color:#7d7d7d;display:inline-block;text-decoration:none}.pages .action:visited{color:#7d7d7d}.pages .action:hover{color:#7d7d7d;text-decoration:none}.pages .action:active{color:#7d7d7d}.pages .action.next{display:inline-block;text-decoration:none}.pages .action.next:visited:before{color:#7d7d7d}.pages .action.next:active:before{color:#7d7d7d}.pages .action.next>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.pages .action.next:before{font-family:'icons-blank-theme';content:'\e608';font-size:46px;line-height:inherit;color:#7d7d7d;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0 0 0 -6px}.pages .action.next:hover:before{color:#7d7d7d}.pages .action.next:active:before{color:#7d7d7d}.pages .action.previous{display:inline-block;text-decoration:none}.pages .action.previous:visited:before{color:#7d7d7d}.pages .action.previous:active:before{color:#7d7d7d}.pages .action.previous>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.pages .action.previous:before{font-family:'icons-blank-theme';content:'\e617';font-size:46px;line-height:inherit;color:#7d7d7d;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0 0 0 -6px}.pages .action.previous:hover:before{color:#7d7d7d}.pages .action.previous:active:before{color:#7d7d7d}.example-pages-1>.label{display:inline-block;font-weight:700;font-size:1.2rem;font-size:12px;line-height:32px;letter-spacing:normal}.example-pages-1>.label:after{content:':'}.example-pages-1 .items{font-size:0;line-height:0;letter-spacing:-1px;white-space:nowrap;margin:0;padding:0;list-style:none none;display:inline-block;font-weight:700}.example-pages-1 .item{font-size:1.2rem;font-size:12px;line-height:32px;letter-spacing:normal;margin:0 3px;display:inline-block}.example-pages-1 .item .label{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-pages-1 a.page{background-color:#ccc;background-repeat:repeat-x;background-image:-webkit-linear-gradient(top, #f4f4f4 0, #ccc 100%);background-image:linear-gradient(to bottom, #f4f4f4 0, #ccc 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#f4f4f4', endColorstr='#cccccc', GradientType=0);border:1px solid #b3b3b3;padding:0 4px;color:#333;display:inline-block;text-decoration:none}.example-pages-1 a.page:visited{background-color:false;background-repeat:repeat-x;background-image:-webkit-linear-gradient(top,false 0,false 100%);background-image:linear-gradient(to bottom,false 0,false 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='false', endColorstr='false', GradientType=0);color:#800080}.example-pages-1 a.page:hover{background-color:#f4f4f4;background-repeat:repeat-x;background-image:-webkit-linear-gradient(top, #ccc 0, #f4f4f4 100%);background-image:linear-gradient(to bottom, #ccc 0, #f4f4f4 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#cccccc', endColorstr='#f4f4f4', GradientType=0);border:1px solid #999;color:#333;text-decoration:none}.example-pages-1 a.page:active{background-color:false;background-repeat:repeat-x;background-image:-webkit-linear-gradient(top,false 0,false 100%);background-image:linear-gradient(to bottom,false 0,false 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='false', endColorstr='false', GradientType=0);color:#ff5501}.example-pages-1 strong.page{background:#1979c3;border:1px solid #135d96;font-size:1.2rem;font-size:12px;line-height:32px;letter-spacing:normal;padding:0 4px;color:#f7b32e;display:inline-block;font-weight:700}.example-pages-1 .action{border:1px solid #d1d1d1;padding:0;color:#7d7d7d;display:inline-block;text-decoration:none}.example-pages-1 .action:visited{color:#7d7d7d}.example-pages-1 .action:hover{color:#ff5501;text-decoration:none}.example-pages-1 .action:active{color:#7d7d7d}.example-pages-1 .action.next{display:inline-block;text-decoration:none}.example-pages-1 .action.next:visited:before{color:#7d7d7d}.example-pages-1 .action.next:active:before{color:#7d7d7d}.example-pages-1 .action.next>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-pages-1 .action.next:before{font-family:'icons-blank-theme';content:'\e608';font-size:30px;line-height:inherit;color:#7d7d7d;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0 0 0 -6px}.example-pages-1 .action.next:hover:before{color:#ff5501}.example-pages-1 .action.next:active:before{color:#7d7d7d}.example-pages-1 .action.previous{display:inline-block;text-decoration:none}.example-pages-1 .action.previous:visited:before{color:#7d7d7d}.example-pages-1 .action.previous:active:before{color:#7d7d7d}.example-pages-1 .action.previous>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-pages-1 .action.previous:before{font-family:'icons-blank-theme';content:'\e617';font-size:30px;line-height:inherit;color:#7d7d7d;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0 0 0 -6px}.example-pages-1 .action.previous:hover:before{color:#ff5501}.example-pages-1 .action.previous:active:before{color:#7d7d7d}.example-pages-2>.label{display:inline-block;font-weight:700;font-size:1.2rem;font-size:12px;line-height:32px;letter-spacing:normal}.example-pages-2>.label:after{content:':'}.example-pages-2 .items{font-size:0;line-height:0;letter-spacing:-1px;white-space:nowrap;margin:0;padding:0;list-style:none none;display:inline-block;font-weight:700}.example-pages-2 .item{font-size:1.2rem;font-size:12px;line-height:32px;letter-spacing:normal;margin:0 2px 0 0;display:inline-block}.example-pages-2 .item .label{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-pages-2 a.page{padding:0 4px;color:#1979c3;display:inline-block;text-decoration:none}.example-pages-2 a.page:visited{color:#800080}.example-pages-2 a.page:hover{color:#006bb4;text-decoration:none}.example-pages-2 a.page:active{color:#ff5501}.example-pages-2 strong.page{font-size:1.2rem;font-size:12px;line-height:32px;letter-spacing:normal;padding:0 4px;color:#333;display:inline-block;font-weight:700}.example-pages-2 .action{border:1px solid #d1d1d1;padding:0;color:#7d7d7d;display:inline-block;text-decoration:none}.example-pages-2 .action:visited{color:#7d7d7d}.example-pages-2 .action:hover{color:#7d7d7d;text-decoration:none}.example-pages-2 .action:active{color:#7d7d7d}.example-pages-3>.label{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-pages-3 .items{font-size:0;line-height:0;letter-spacing:-1px;white-space:nowrap;margin:0;padding:0;list-style:none none;display:inline-block;font-weight:700}.example-pages-3 .item{font-size:1.2rem;font-size:12px;line-height:32px;letter-spacing:normal;margin:0 2px 0 0;display:inline-block}.example-pages-3 .item .label{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-pages-3 a.page{background:#1979c3;padding:0 4px;color:#fff;display:inline-block;text-decoration:none}.example-pages-3 a.page:visited{background:#800080;color:#fff}.example-pages-3 a.page:hover{background:#006bb4;color:#fff;text-decoration:none}.example-pages-3 a.page:active{background:#ff5501;color:#fff}.example-pages-3 strong.page{background:#800080;font-size:1.2rem;font-size:12px;line-height:32px;letter-spacing:normal;padding:0 4px;color:#fff;display:inline-block;font-weight:700}.example-pages-3 .action{background:#1979c3;border:1px solid #d1d1d1;padding:0;color:#fff;display:inline-block;text-decoration:none}.example-pages-3 .action:visited{background:#800080;color:#7d7d7d}.example-pages-3 .action:hover{background:#006bb4;color:#fff;text-decoration:none}.example-pages-3 .action:active{background:#ff5501;color:#fff}.example-pages-3 .action.next{display:inline-block;text-decoration:none}.example-pages-3 .action.next:visited:before{color:#7d7d7d}.example-pages-3 .action.next:active:before{color:#fff}.example-pages-3 .action.next>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-pages-3 .action.next:before{font-family:'icons-blank-theme';content:'\e608';font-size:46px;line-height:inherit;color:#fff;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0 0 0 -6px}.example-pages-3 .action.next:hover:before{color:#fff}.example-pages-3 .action.next:active:before{color:#fff}.example-pages-3 .action.previous{display:inline-block;text-decoration:none}.example-pages-3 .action.previous:visited:before{color:#7d7d7d}.example-pages-3 .action.previous:active:before{color:#fff}.example-pages-3 .action.previous>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-pages-3 .action.previous:before{font-family:'icons-blank-theme';content:'\e617';font-size:46px;line-height:inherit;color:#fff;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0 0 0 -6px}.example-pages-3 .action.previous:hover:before{color:#fff}.example-pages-3 .action.previous:active:before{color:#fff}.window.popup.popup-example{background:#fff;border:1px solid #aeaeae;padding:22px;width:auto;box-shadow:0 3px 3px rgba(0,0,0,.15);top:0;right:0;bottom:0;left:0;display:none;opacity:0;position:fixed;z-index:1001;transition:opacity .3s linear}.window.popup.popup-example .popup-header{margin:0 0 25px;padding-right:22px}.window.popup.popup-example .popup-header .title{font-size:1.8rem;font-weight:300;line-height:1.1;margin-top:1.5rem;margin-bottom:1rem}.window.popup.popup-example .popup-actions .action.close{position:absolute;display:inline-block;background-image:none;background:0;border:0;margin:0;padding:0;-moz-box-sizing:content-box;box-shadow:none;text-shadow:none;text-decoration:none;line-height:inherit;font-weight:400;top:10px;right:10px}.window.popup.popup-example .popup-actions .action.close>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.window.popup.popup-example .popup-actions .action.close:before{font-family:'icons-blank-theme';content:'\e616';font-size:22px;line-height:22px;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.window.popup.popup-example .popup-actions .action.close:hover:before{color:inherit}.window.popup.popup-example .popup-actions .action.close:active:before{color:inherit}.window.popup.popup-example .popup-actions .action.close:focus,.window.popup.popup-example .popup-actions .action.close:active{background:0;border:0}.window.popup.popup-example .popup-actions .action.close:hover{background:0;border:0}.window.popup.popup-example .popup-actions .action.close.disabled,.window.popup.popup-example .popup-actions .action.close[disabled],fieldset[disabled] .window.popup.popup-example .popup-actions .action.close{cursor:not-allowed;pointer-events:none;opacity:.5}.window.popup.popup-example.active{opacity:1}.window.popup.popup-example-1{background:#fff;border:1px solid #aeaeae;padding:22px;width:auto;box-shadow:0 3px 3px rgba(0,0,0,.15);top:0;right:0;bottom:0;left:0;display:none;opacity:0;position:fixed;z-index:1001;transition:opacity .3s linear}.window.popup.popup-example-1 .popup-header{margin:0 0 25px;padding-right:22px}.window.popup.popup-example-1 .popup-header .title{font-size:1.8rem;font-weight:300;line-height:1.1;margin-top:1.5rem;margin-bottom:1rem}.window.popup.popup-example-1 .popup-actions .action.close{position:absolute;display:inline-block;background-image:none;background:0;border:0;margin:0;padding:0;-moz-box-sizing:content-box;box-shadow:none;text-shadow:none;text-decoration:none;line-height:inherit;font-weight:400;top:10px;right:10px}.window.popup.popup-example-1 .popup-actions .action.close>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.window.popup.popup-example-1 .popup-actions .action.close:before{font-family:'icons-blank-theme';content:'\e616';font-size:22px;line-height:22px;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.window.popup.popup-example-1 .popup-actions .action.close:hover:before{color:inherit}.window.popup.popup-example-1 .popup-actions .action.close:active:before{color:inherit}.window.popup.popup-example-1 .popup-actions .action.close:focus,.window.popup.popup-example-1 .popup-actions .action.close:active{background:0;border:0}.window.popup.popup-example-1 .popup-actions .action.close:hover{background:0;border:0}.window.popup.popup-example-1 .popup-actions .action.close.disabled,.window.popup.popup-example-1 .popup-actions .action.close[disabled],fieldset[disabled] .window.popup.popup-example-1 .popup-actions .action.close{cursor:not-allowed;pointer-events:none;opacity:.5}.window.popup.popup-example-1.active{opacity:1}.window.overlay{transition:opacity .15s linear;position:fixed;top:0;right:0;bottom:0;left:0;background:#000;z-index:1000;opacity:0}.window.overlay.active{opacity:.5;filter:alpha(opacity=50)}.window.popup.popup-example-2{background:#fff;border:1px solid #aeaeae;padding:22px;width:auto;overflow-y:auto;max-height:200px;box-shadow:0 3px 3px rgba(0,0,0,.15);top:0;right:0;bottom:0;left:0;display:none;opacity:0;position:fixed;z-index:1001;transition:opacity .3s linear}.window.popup.popup-example-2 .popup-header{margin:0 0 25px;padding-right:22px}.window.popup.popup-example-2 .popup-header .title{font-size:1.8rem;font-weight:300;line-height:1.1;margin-top:1.5rem;margin-bottom:1rem}.window.popup.popup-example-2 .popup-actions .action.close{position:absolute;display:inline-block;background-image:none;background:0;border:0;margin:0;padding:0;-moz-box-sizing:content-box;box-shadow:none;text-shadow:none;text-decoration:none;line-height:inherit;font-weight:400;top:10px;right:10px}.window.popup.popup-example-2 .popup-actions .action.close>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.window.popup.popup-example-2 .popup-actions .action.close:before{font-family:'icons-blank-theme';content:'\e616';font-size:22px;line-height:22px;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.window.popup.popup-example-2 .popup-actions .action.close:hover:before{color:inherit}.window.popup.popup-example-2 .popup-actions .action.close:active:before{color:inherit}.window.popup.popup-example-2 .popup-actions .action.close:focus,.window.popup.popup-example-2 .popup-actions .action.close:active{background:0;border:0}.window.popup.popup-example-2 .popup-actions .action.close:hover{background:0;border:0}.window.popup.popup-example-2 .popup-actions .action.close.disabled,.window.popup.popup-example-2 .popup-actions .action.close[disabled],fieldset[disabled] .window.popup.popup-example-2 .popup-actions .action.close{cursor:not-allowed;pointer-events:none;opacity:.5}.window.popup.popup-example-2.active{opacity:1}.window.popup.popup-example-3{background:#fff;border:1px solid #aeaeae;padding:22px;width:auto;box-shadow:0 3px 3px rgba(0,0,0,.15);top:0;right:0;bottom:0;left:0;display:none;opacity:0;position:fixed;z-index:1001;transition:opacity .3s linear}.window.popup.popup-example-3 .popup-header{margin:0 0 25px;padding-right:22px}.window.popup.popup-example-3 .popup-header .title{font-size:1.8rem;font-weight:300;line-height:1.1;margin-top:1.5rem;margin-bottom:1rem}.window.popup.popup-example-3 .popup-content{overflow-y:auto;max-height:200px}.window.popup.popup-example-3 .popup-actions .action.close{position:absolute;display:inline-block;background-image:none;background:0;border:0;margin:0;padding:0;-moz-box-sizing:content-box;box-shadow:none;text-shadow:none;text-decoration:none;line-height:inherit;font-weight:400;top:10px;right:10px}.window.popup.popup-example-3 .popup-actions .action.close>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.window.popup.popup-example-3 .popup-actions .action.close:before{font-family:'icons-blank-theme';content:'\e616';font-size:22px;line-height:22px;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.window.popup.popup-example-3 .popup-actions .action.close:hover:before{color:inherit}.window.popup.popup-example-3 .popup-actions .action.close:active:before{color:inherit}.window.popup.popup-example-3 .popup-actions .action.close:focus,.window.popup.popup-example-3 .popup-actions .action.close:active{background:0;border:0}.window.popup.popup-example-3 .popup-actions .action.close:hover{background:0;border:0}.window.popup.popup-example-3 .popup-actions .action.close.disabled,.window.popup.popup-example-3 .popup-actions .action.close[disabled],fieldset[disabled] .window.popup.popup-example-3 .popup-actions .action.close{cursor:not-allowed;pointer-events:none;opacity:.5}.window.popup.popup-example-3.active{opacity:1}.window.popup.popup-example-4{background:#fff;border:1px solid #aeaeae;padding:22px;width:auto;box-shadow:0 3px 3px rgba(0,0,0,.15);top:0;right:0;bottom:0;left:0;display:none;opacity:0;position:fixed;z-index:1001;transition:opacity .3s linear}.window.popup.popup-example-4 .popup-header{margin:0 0 25px;padding-right:22px}.window.popup.popup-example-4 .popup-header .title{font-size:1.8rem;font-weight:300;line-height:1.1;margin-top:1.5rem;margin-bottom:1rem}.window.popup.popup-example-4 .popup-content{margin:0 0 20px}.window.popup.popup-example-4 .popup-footer{margin:0 20px}.window.popup.popup-example-4 .popup-actions .action.close{position:absolute;display:inline-block;background-image:none;background:0;border:0;margin:0;padding:0;-moz-box-sizing:content-box;box-shadow:none;text-shadow:none;text-decoration:none;line-height:inherit;font-weight:400;top:10px;right:10px}.window.popup.popup-example-4 .popup-actions .action.close>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.window.popup.popup-example-4 .popup-actions .action.close:before{font-family:'icons-blank-theme';content:'\e616';font-size:22px;line-height:22px;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.window.popup.popup-example-4 .popup-actions .action.close:hover:before{color:inherit}.window.popup.popup-example-4 .popup-actions .action.close:active:before{color:inherit}.window.popup.popup-example-4 .popup-actions .action.close:focus,.window.popup.popup-example-4 .popup-actions .action.close:active{background:0;border:0}.window.popup.popup-example-4 .popup-actions .action.close:hover{background:0;border:0}.window.popup.popup-example-4 .popup-actions .action.close.disabled,.window.popup.popup-example-4 .popup-actions .action.close[disabled],fieldset[disabled] .window.popup.popup-example-4 .popup-actions .action.close{cursor:not-allowed;pointer-events:none;opacity:.5}.window.popup.popup-example-4.active{opacity:1}.window.popup.popup-example-5{background:#fff;border:1px solid #aeaeae;padding:22px;width:auto;box-shadow:0 3px 3px rgba(0,0,0,.15);top:0;right:0;bottom:0;left:0;display:none;opacity:0;position:fixed;z-index:1001;transition:opacity .3s linear}.window.popup.popup-example-5 .popup-header{margin:0 0 25px;padding-right:22px}.window.popup.popup-example-5 .popup-header .title{font-size:4rem;font-weight:300;line-height:1.1;margin-top:0rem;margin-bottom:2rem}.window.popup.popup-example-5 .popup-actions .action.close{position:absolute;display:inline-block;background-image:none;background:0;border:0;margin:0;padding:0;-moz-box-sizing:content-box;box-shadow:none;text-shadow:none;text-decoration:none;line-height:inherit;font-weight:400;top:10px;right:10px}.window.popup.popup-example-5 .popup-actions .action.close>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.window.popup.popup-example-5 .popup-actions .action.close:before{font-family:'icons-blank-theme';content:'\e616';font-size:22px;line-height:22px;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.window.popup.popup-example-5 .popup-actions .action.close:hover:before{color:inherit}.window.popup.popup-example-5 .popup-actions .action.close:active:before{color:inherit}.window.popup.popup-example-5 .popup-actions .action.close:focus,.window.popup.popup-example-5 .popup-actions .action.close:active{background:0;border:0}.window.popup.popup-example-5 .popup-actions .action.close:hover{background:0;border:0}.window.popup.popup-example-5 .popup-actions .action.close.disabled,.window.popup.popup-example-5 .popup-actions .action.close[disabled],fieldset[disabled] .window.popup.popup-example-5 .popup-actions .action.close{cursor:not-allowed;pointer-events:none;opacity:.5}.window.popup.popup-example-5.active{opacity:1}.window.popup.popup-example-6{background:#fff;border:1px solid #aeaeae;padding:22px;width:auto;box-shadow:0 3px 3px rgba(0,0,0,.15);top:0;right:0;bottom:0;left:0;display:none;opacity:0;position:fixed;z-index:1001;transition:opacity .3s linear}.window.popup.popup-example-6 .popup-footer .actions.toolbar{text-align:left}.window.popup.popup-example-6 .popup-footer .actions.toolbar:before,.window.popup.popup-example-6 .popup-footer .actions.toolbar:after{content:"";display:table}.window.popup.popup-example-6 .popup-footer .actions.toolbar:after{clear:both}.window.popup.popup-example-6 .popup-footer .actions.toolbar .secondary{float:left}.window.popup.popup-example-6 .popup-footer .actions.toolbar .primary,.window.popup.popup-example-6 .popup-footer .actions.toolbar .secondary{display:inline-block}.window.popup.popup-example-6 .popup-footer .actions.toolbar .primary a.action,.window.popup.popup-example-6 .popup-footer .actions.toolbar .secondary a.action{display:inline-block}.window.popup.popup-example-6 .popup-footer .actions.toolbar .primary .action{margin:0 5px 0 0}.window.popup.popup-example-6 .popup-footer .actions.toolbar .secondary a.action{margin-top:6px}.window.popup.popup-example-6 .popup-header{margin:0 0 25px;padding-right:22px}.window.popup.popup-example-6 .popup-header .title{font-size:1.8rem;font-weight:300;line-height:1.1;margin-top:1.5rem;margin-bottom:1rem}.window.popup.popup-example-6 .popup-actions .action.close{position:absolute;display:inline-block;background-image:none;background:0;border:0;margin:0;padding:0;-moz-box-sizing:content-box;box-shadow:none;text-shadow:none;text-decoration:none;line-height:inherit;font-weight:400;top:10px;right:10px}.window.popup.popup-example-6 .popup-actions .action.close>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.window.popup.popup-example-6 .popup-actions .action.close:before{font-family:'icons-blank-theme';content:'\e616';font-size:22px;line-height:22px;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.window.popup.popup-example-6 .popup-actions .action.close:hover:before{color:inherit}.window.popup.popup-example-6 .popup-actions .action.close:active:before{color:inherit}.window.popup.popup-example-6 .popup-actions .action.close:focus,.window.popup.popup-example-6 .popup-actions .action.close:active{background:0;border:0}.window.popup.popup-example-6 .popup-actions .action.close:hover{background:0;border:0}.window.popup.popup-example-6 .popup-actions .action.close.disabled,.window.popup.popup-example-6 .popup-actions .action.close[disabled],fieldset[disabled] .window.popup.popup-example-6 .popup-actions .action.close{cursor:not-allowed;pointer-events:none;opacity:.5}.window.popup.popup-example-6.active{opacity:1}.window.popup.popup-example-7{background:#fff;border:1px solid #aeaeae;padding:22px;width:auto;box-shadow:0 3px 3px rgba(0,0,0,.15);top:0;right:0;bottom:0;left:0;display:none;opacity:0;position:fixed;z-index:1001;transition:opacity .3s linear}.window.popup.popup-example-7 .popup-header{margin:0 0 25px;padding-right:22px}.window.popup.popup-example-7 .popup-header .title{font-size:1.8rem;font-weight:300;line-height:1.1;margin-top:1.5rem;margin-bottom:1rem}.window.popup.popup-example-7 .popup-actions .action.close{position:absolute;top:10px;right:10px}.window.popup.popup-example-7.active{opacity:1}.window.popup.popup-example-8{background:#fff;border:1px solid #aeaeae;padding:22px;width:auto;box-shadow:0 3px 3px rgba(0,0,0,.15);top:0;right:0;bottom:0;left:0;display:none;opacity:0;position:fixed;z-index:1001;transition:opacity .3s linear}.window.popup.popup-example-8 .popup-header{margin:0 0 25px;padding-right:30px}.window.popup.popup-example-8 .popup-header .title{font-size:1.8rem;font-weight:300;line-height:1.1;margin-top:1.5rem;margin-bottom:1rem}.window.popup.popup-example-8 .popup-actions .action.close{position:absolute;display:inline-block;background-image:none;background:0;border:0;margin:0;padding:0;-moz-box-sizing:content-box;box-shadow:none;text-shadow:none;text-decoration:none;line-height:inherit;font-weight:400;top:10px;right:10px}.window.popup.popup-example-8 .popup-actions .action.close:before{font-family:'icons-blank-theme';content:'\e613';font-size:30px;line-height:22px;color:red;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:middle;text-align:center;margin:0}.window.popup.popup-example-8 .popup-actions .action.close:hover:before{color:#090}.window.popup.popup-example-8 .popup-actions .action.close:active:before{color:#00f}.window.popup.popup-example-8 .popup-actions .action.close:focus,.window.popup.popup-example-8 .popup-actions .action.close:active{background:0;border:0}.window.popup.popup-example-8 .popup-actions .action.close:hover{background:0;border:0}.window.popup.popup-example-8 .popup-actions .action.close.disabled,.window.popup.popup-example-8 .popup-actions .action.close[disabled],fieldset[disabled] .window.popup.popup-example-8 .popup-actions .action.close{cursor:not-allowed;pointer-events:none;opacity:.5}.window.popup.popup-example-8.active{opacity:1}.window.popup.popup-example-9{background:#fff;border:1px solid #aeaeae;padding:22px;width:auto;box-shadow:0 3px 3px rgba(0,0,0,.15);top:0;right:0;bottom:0;left:0;display:none;opacity:0;position:fixed;z-index:1001;transition:opacity .3s linear}.window.popup.popup-example-9 .popup-header{margin:0 0 25px;padding-right:22px}.window.popup.popup-example-9 .popup-header .title{font-size:1.8rem;font-weight:300;line-height:1.1;margin-top:1.5rem;margin-bottom:1rem}.window.popup.popup-example-9 .popup-actions .action.close{position:absolute;display:inline-block;background-image:none;background:0;border:0;margin:0;padding:0;-moz-box-sizing:content-box;box-shadow:none;text-shadow:none;text-decoration:none;line-height:inherit;font-weight:400;top:10px;right:10px}.window.popup.popup-example-9 .popup-actions .action.close>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.window.popup.popup-example-9 .popup-actions .action.close:before{font-family:'icons-blank-theme';content:'\e616';font-size:22px;line-height:22px;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.window.popup.popup-example-9 .popup-actions .action.close:hover:before{color:inherit}.window.popup.popup-example-9 .popup-actions .action.close:active:before{color:inherit}.window.popup.popup-example-9 .popup-actions .action.close:focus,.window.popup.popup-example-9 .popup-actions .action.close:active{background:0;border:0}.window.popup.popup-example-9 .popup-actions .action.close:hover{background:0;border:0}.window.popup.popup-example-9 .popup-actions .action.close.disabled,.window.popup.popup-example-9 .popup-actions .action.close[disabled],fieldset[disabled] .window.popup.popup-example-9 .popup-actions .action.close{cursor:not-allowed;pointer-events:none;opacity:.5}.window.popup.popup-example-9.active{opacity:1}.window.overlay.example-overlay-1.active{transition:opacity .15s linear;position:fixed;top:0;right:0;bottom:0;left:0;background:#0f5293;z-index:1000;opacity:0}.window.overlay.example-overlay-1.active.active{opacity:.8;filter:alpha(opacity=80)}.example-ratings-1{overflow:hidden}.example-ratings-1:before{letter-spacing:-10px;font-family:'icons-blank-theme';font-style:normal;font-size:28px;line-height:28px;height:28px;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;color:#c7c7c7;vertical-align:top;content:'\e605' '\e605' '\e605' '\e605' '\e605';position:absolute;z-index:1;display:block}.example-ratings-1 input[type="radio"]{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-ratings-1 input[type="radio"]:focus+label:before,.example-ratings-1 input[type="radio"]:checked+label:before{opacity:1}.example-ratings-1 label{position:absolute;display:block;cursor:pointer}.example-ratings-1 label span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-ratings-1 label:before{letter-spacing:-10px;font-family:'icons-blank-theme';font-style:normal;font-size:28px;line-height:28px;height:28px;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;color:#ff5601;vertical-align:top;opacity:0}.example-ratings-1 label:hover:before{opacity:1}.example-ratings-1 label:hover~label:before{opacity:0}.example-ratings-1 .rating-5{z-index:2}.example-ratings-1 .rating-5:before{content:'\e605' '\e605' '\e605' '\e605' '\e605'}.example-ratings-1 .rating-4{z-index:3}.example-ratings-1 .rating-4:before{content:'\e605' '\e605' '\e605' '\e605'}.example-ratings-1 .rating-3{z-index:4}.example-ratings-1 .rating-3:before{content:'\e605' '\e605' '\e605'}.example-ratings-1 .rating-2{z-index:5}.example-ratings-1 .rating-2:before{content:'\e605' '\e605'}.example-ratings-1 .rating-1{z-index:6}.example-ratings-1 .rating-1:before{content:'\e605'}.example-ratings-2{overflow:hidden}.example-ratings-2:before{letter-spacing:-10px;font-family:'icons-blank-theme';font-style:normal;font-size:28px;line-height:28px;height:28px;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;color:#c7c7c7;vertical-align:top;content:'\e605' '\e605' '\e605' '\e605' '\e605' '\e605' '\e605' '\e605';position:absolute;z-index:1;display:block}.example-ratings-2 input[type="radio"]{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-ratings-2 input[type="radio"]:focus+label:before,.example-ratings-2 input[type="radio"]:checked+label:before{opacity:1}.example-ratings-2 label{position:absolute;display:block;cursor:pointer}.example-ratings-2 label span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-ratings-2 label:before{letter-spacing:-10px;font-family:'icons-blank-theme';font-style:normal;font-size:28px;line-height:28px;height:28px;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;color:#ff5601;vertical-align:top;opacity:0}.example-ratings-2 label:hover:before{opacity:1}.example-ratings-2 label:hover~label:before{opacity:0}.example-ratings-2 .rating-8{z-index:2}.example-ratings-2 .rating-8:before{content:'\e605' '\e605' '\e605' '\e605' '\e605' '\e605' '\e605' '\e605'}.example-ratings-2 .rating-7{z-index:3}.example-ratings-2 .rating-7:before{content:'\e605' '\e605' '\e605' '\e605' '\e605' '\e605' '\e605'}.example-ratings-2 .rating-6{z-index:4}.example-ratings-2 .rating-6:before{content:'\e605' '\e605' '\e605' '\e605' '\e605' '\e605'}.example-ratings-2 .rating-5{z-index:5}.example-ratings-2 .rating-5:before{content:'\e605' '\e605' '\e605' '\e605' '\e605'}.example-ratings-2 .rating-4{z-index:6}.example-ratings-2 .rating-4:before{content:'\e605' '\e605' '\e605' '\e605'}.example-ratings-2 .rating-3{z-index:7}.example-ratings-2 .rating-3:before{content:'\e605' '\e605' '\e605'}.example-ratings-2 .rating-2{z-index:8}.example-ratings-2 .rating-2:before{content:'\e605' '\e605'}.example-ratings-2 .rating-1{z-index:9}.example-ratings-2 .rating-1:before{content:'\e605'}.example-ratings-3{overflow:hidden}.example-ratings-3:before{letter-spacing:-10px;font-family:'icons-blank-theme';font-style:normal;font-size:28px;line-height:28px;height:28px;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;color:#aff5e3;vertical-align:top;content:'\e605' '\e605' '\e605' '\e605' '\e605';position:absolute;z-index:1;display:block}.example-ratings-3 input[type="radio"]{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-ratings-3 input[type="radio"]:focus+label:before,.example-ratings-3 input[type="radio"]:checked+label:before{opacity:1}.example-ratings-3 label{position:absolute;display:block;cursor:pointer}.example-ratings-3 label span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-ratings-3 label:before{letter-spacing:-10px;font-family:'icons-blank-theme';font-style:normal;font-size:28px;line-height:28px;height:28px;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;color:#0a6767;vertical-align:top;opacity:0}.example-ratings-3 label:hover:before{opacity:1}.example-ratings-3 label:hover~label:before{opacity:0}.example-ratings-3 .rating-5{z-index:2}.example-ratings-3 .rating-5:before{content:'\e605' '\e605' '\e605' '\e605' '\e605'}.example-ratings-3 .rating-4{z-index:3}.example-ratings-3 .rating-4:before{content:'\e605' '\e605' '\e605' '\e605'}.example-ratings-3 .rating-3{z-index:4}.example-ratings-3 .rating-3:before{content:'\e605' '\e605' '\e605'}.example-ratings-3 .rating-2{z-index:5}.example-ratings-3 .rating-2:before{content:'\e605' '\e605'}.example-ratings-3 .rating-1{z-index:6}.example-ratings-3 .rating-1:before{content:'\e605'}.example-ratings-4{overflow:hidden}.example-ratings-4:before{letter-spacing:-10px;font-family:'icons-blank-theme';font-style:normal;font-size:28px;line-height:28px;height:28px;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;color:#c7c7c7;vertical-align:top;content:'\e600' '\e600' '\e600' '\e600' '\e600';position:absolute;z-index:1;display:block}.example-ratings-4 input[type="radio"]{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-ratings-4 input[type="radio"]:focus+label:before,.example-ratings-4 input[type="radio"]:checked+label:before{opacity:1}.example-ratings-4 label{position:absolute;display:block;cursor:pointer}.example-ratings-4 label span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-ratings-4 label:before{letter-spacing:-10px;font-family:'icons-blank-theme';font-style:normal;font-size:28px;line-height:28px;height:28px;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;color:#ff5601;vertical-align:top;opacity:0}.example-ratings-4 label:hover:before{opacity:1}.example-ratings-4 label:hover~label:before{opacity:0}.example-ratings-4 .rating-5{z-index:2}.example-ratings-4 .rating-5:before{content:'\e600' '\e600' '\e600' '\e600' '\e600'}.example-ratings-4 .rating-4{z-index:3}.example-ratings-4 .rating-4:before{content:'\e600' '\e600' '\e600' '\e600'}.example-ratings-4 .rating-3{z-index:4}.example-ratings-4 .rating-3:before{content:'\e600' '\e600' '\e600'}.example-ratings-4 .rating-2{z-index:5}.example-ratings-4 .rating-2:before{content:'\e600' '\e600'}.example-ratings-4 .rating-1{z-index:6}.example-ratings-4 .rating-1:before{content:'\e600'}.exapmle-ratings-5 .control.rating.vote{overflow:hidden}.exapmle-ratings-5 .control.rating.vote:before{letter-spacing:-10px;font-family:'icons-blank-theme';font-style:normal;font-size:28px;line-height:28px;height:28px;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;color:#c7c7c7;vertical-align:top;content:'\e605' '\e605' '\e605' '\e605' '\e605';position:absolute;z-index:1;display:block}.exapmle-ratings-5 .control.rating.vote input[type="radio"]{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.exapmle-ratings-5 .control.rating.vote input[type="radio"]:focus+label:before,.exapmle-ratings-5 .control.rating.vote input[type="radio"]:checked+label:before{opacity:1}.exapmle-ratings-5 .control.rating.vote label{position:absolute;display:block;cursor:pointer}.exapmle-ratings-5 .control.rating.vote label span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.exapmle-ratings-5 .control.rating.vote label:before{letter-spacing:-10px;font-family:'icons-blank-theme';font-style:normal;font-size:28px;line-height:28px;height:28px;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;color:#ff5601;vertical-align:top;opacity:0}.exapmle-ratings-5 .control.rating.vote label:hover:before{opacity:1}.exapmle-ratings-5 .control.rating.vote label:hover~label:before{opacity:0}.exapmle-ratings-5 .control.rating.vote .rating-5{z-index:2}.exapmle-ratings-5 .control.rating.vote .rating-5:before{content:'\e605' '\e605' '\e605' '\e605' '\e605'}.exapmle-ratings-5 .control.rating.vote .rating-4{z-index:3}.exapmle-ratings-5 .control.rating.vote .rating-4:before{content:'\e605' '\e605' '\e605' '\e605'}.exapmle-ratings-5 .control.rating.vote .rating-3{z-index:4}.exapmle-ratings-5 .control.rating.vote .rating-3:before{content:'\e605' '\e605' '\e605'}.exapmle-ratings-5 .control.rating.vote .rating-2{z-index:5}.exapmle-ratings-5 .control.rating.vote .rating-2:before{content:'\e605' '\e605'}.exapmle-ratings-5 .control.rating.vote .rating-1{z-index:6}.exapmle-ratings-5 .control.rating.vote .rating-1:before{content:'\e605'}.example-rating-summary-1{white-space:nowrap;overflow:hidden}.example-rating-summary-1 .rating-result{width:100px;display:inline-block;vertical-align:middle;position:relative}.example-rating-summary-1 .rating-result:before{position:absolute;z-index:1;top:0;left:0;width:100%;display:block;font-family:'icons-blank-theme';content:'\e605' '\e605' '\e605' '\e605' '\e605';font-style:normal;font-size:28px;line-height:28px;height:28px;letter-spacing:-10px;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;color:#c7c7c7}.example-rating-summary-1 .rating-result>span{display:block;overflow:hidden}.example-rating-summary-1 .rating-result>span:before{position:relative;z-index:2;display:block;font-family:'icons-blank-theme';content:'\e605' '\e605' '\e605' '\e605' '\e605';font-style:normal;font-size:28px;line-height:28px;height:28px;letter-spacing:-10px;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;color:#ff5601}.example-rating-summary-1 .rating-result>span span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-rating-summary-2{white-space:nowrap;overflow:hidden}.example-rating-summary-2 .rating-result{width:154px;display:inline-block;vertical-align:middle;position:relative}.example-rating-summary-2 .rating-result:before{position:absolute;z-index:1;top:0;left:0;width:100%;display:block;font-family:'icons-blank-theme';content:'\e605' '\e605' '\e605' '\e605' '\e605' '\e605' '\e605' '\e605';font-style:normal;font-size:28px;line-height:28px;height:28px;letter-spacing:-10px;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;color:#c7c7c7}.example-rating-summary-2 .rating-result>span{display:block;overflow:hidden}.example-rating-summary-2 .rating-result>span:before{position:relative;z-index:2;display:block;font-family:'icons-blank-theme';content:'\e605' '\e605' '\e605' '\e605' '\e605' '\e605' '\e605' '\e605';font-style:normal;font-size:28px;line-height:28px;height:28px;letter-spacing:-10px;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;color:#ff5601}.example-rating-summary-2 .rating-result>span span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-rating-summary-3{white-space:nowrap;overflow:hidden}.example-rating-summary-3 .rating-result{width:100px;display:inline-block;vertical-align:middle;position:relative}.example-rating-summary-3 .rating-result:before{position:absolute;z-index:1;top:0;left:0;width:100%;display:block;font-family:'icons-blank-theme';content:'\e605' '\e605' '\e605' '\e605' '\e605';font-style:normal;font-size:28px;line-height:28px;height:28px;letter-spacing:-10px;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;color:#aff5e3}.example-rating-summary-3 .rating-result>span{display:block;overflow:hidden}.example-rating-summary-3 .rating-result>span:before{position:relative;z-index:2;display:block;font-family:'icons-blank-theme';content:'\e605' '\e605' '\e605' '\e605' '\e605';font-style:normal;font-size:28px;line-height:28px;height:28px;letter-spacing:-10px;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;color:#0a6767}.example-rating-summary-3 .rating-result>span span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-rating-summary-4{white-space:nowrap;overflow:hidden}.example-rating-summary-4 .rating-result{width:100px;display:inline-block;vertical-align:middle;position:relative}.example-rating-summary-4 .rating-result:before{position:absolute;z-index:1;top:0;left:0;width:100%;display:block;font-family:'icons-blank-theme';content:'\e600' '\e600' '\e600' '\e600' '\e600';font-style:normal;font-size:28px;line-height:28px;height:28px;letter-spacing:-10px;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;color:#c7c7c7}.example-rating-summary-4 .rating-result>span{display:block;overflow:hidden}.example-rating-summary-4 .rating-result>span:before{position:relative;z-index:2;display:block;font-family:'icons-blank-theme';content:'\e600' '\e600' '\e600' '\e600' '\e600';font-style:normal;font-size:28px;line-height:28px;height:28px;letter-spacing:-10px;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;color:#ff5601}.example-rating-summary-4 .rating-result>span span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-rating-summary-5{white-space:nowrap;overflow:hidden}.example-rating-summary-5 .label{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-rating-summary-5 .rating-result{width:100px;display:inline-block;vertical-align:middle;position:relative}.example-rating-summary-5 .rating-result:before{position:absolute;z-index:1;top:0;left:0;width:100%;display:block;font-family:'icons-blank-theme';content:'\e605' '\e605' '\e605' '\e605' '\e605';font-style:normal;font-size:28px;line-height:28px;height:28px;letter-spacing:-10px;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;color:#c7c7c7}.example-rating-summary-5 .rating-result>span{display:block;overflow:hidden}.example-rating-summary-5 .rating-result>span:before{position:relative;z-index:2;display:block;font-family:'icons-blank-theme';content:'\e605' '\e605' '\e605' '\e605' '\e605';font-style:normal;font-size:28px;line-height:28px;height:28px;letter-spacing:-10px;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;color:#ff5601}.example-rating-summary-5 .rating-result>span span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-rating-summary-6 .rating-summary{white-space:nowrap;overflow:hidden}.example-rating-summary-6 .rating-summary .rating-result{width:100px;display:inline-block;vertical-align:middle;position:relative}.example-rating-summary-6 .rating-summary .rating-result:before{position:absolute;z-index:1;top:0;left:0;width:100%;display:block;font-family:'icons-blank-theme';content:'\e605' '\e605' '\e605' '\e605' '\e605';font-style:normal;font-size:28px;line-height:28px;height:28px;letter-spacing:-10px;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;color:#c7c7c7}.example-rating-summary-6 .rating-summary .rating-result>span{display:block;overflow:hidden}.example-rating-summary-6 .rating-summary .rating-result>span:before{position:relative;z-index:2;display:block;font-family:'icons-blank-theme';content:'\e605' '\e605' '\e605' '\e605' '\e605';font-style:normal;font-size:28px;line-height:28px;height:28px;letter-spacing:-10px;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;color:#ff5601}.example-rating-summary-6 .rating-summary .rating-result>span span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-rating-summary-7{white-space:nowrap;overflow:hidden}.example-rating-summary-7 .rating-result{width:100px;display:inline-block;vertical-align:middle;position:relative}.example-rating-summary-7 .rating-result:before{position:absolute;z-index:1;top:0;left:0;width:100%;display:block;font-family:'icons-blank-theme';content:'\e605' '\e605' '\e605' '\e605' '\e605';font-style:normal;font-size:28px;line-height:28px;height:28px;letter-spacing:-10px;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;color:#c7c7c7}.example-rating-summary-7 .rating-result>span{display:block;overflow:hidden}.example-rating-summary-7 .rating-result>span:before{position:relative;z-index:2;display:block;font-family:'icons-blank-theme';content:'\e605' '\e605' '\e605' '\e605' '\e605';font-style:normal;font-size:28px;line-height:28px;height:28px;letter-spacing:-10px;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;color:#ff5601}.example-rating-summary-7 .rating-result>span span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-rating-summary-7 .label{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-responsive-block{padding:10px}.example-sections-1{position:relative;z-index:1}.example-sections-1:before,.example-sections-1:after{content:"";display:table}.example-sections-1:after{clear:both}.example-sections-1>.item.title{float:left;width:auto}.example-sections-1>.item.title>.switch{display:block;height:20px;position:relative;z-index:2}.example-sections-1>.item.content{box-sizing:border-box;float:right;margin-top:20px;margin-left:-100%;width:100%}.example-sections-1>.item.content:before,.example-sections-1>.item.content:after{content:"";display:table}.example-sections-1>.item.content:after{clear:both}.example-sections-1>.item.content.active{display:block}.example-sections-1>.item.title{margin:0 5px 0 0}.example-sections-1>.item.title>.switch{font-size:1.4rem;font-weight:600;line-height:20px;color:#7d7d7d;text-decoration:none;height:20px;padding:5px 20px 5px 20px;border:1px solid #d1d1d1;background:#f0f0f0;border-bottom:0}.example-sections-1>.item.title>.switch:visited{color:#7d7d7d;text-decoration:none}.example-sections-1>.item.title>.switch:hover{color:#7d7d7d;text-decoration:none}.example-sections-1>.item.title>.switch:active{color:#333;text-decoration:none}.example-sections-1>.item.title:not(.disabled)>.switch:focus,.example-sections-1>.item.title:not(.disabled)>.switch:hover{background:#fcfcfc}.example-sections-1>.item.title:not(.disabled)>.switch:active,.example-sections-1>.item.title.active>.switch,.example-sections-1>.item.title.active>.switch:focus,.example-sections-1>.item.title.active>.switch:hover{background:#fff;color:#333}.example-sections-1>.item.title.active>.switch,.example-sections-1>.item.title.active>.switch:hover{padding-bottom:6px}.example-sections-1>.item.content{background:#fff;margin-top:31px;padding:20px 20px 20px 20px;border:1px solid #d1d1d1}.example-sections-2{position:relative;z-index:1}.example-sections-2:before,.example-sections-2:after{content:"";display:table}.example-sections-2:after{clear:both}.example-sections-2>.item.title{float:left;width:auto}.example-sections-2>.item.title>.switch{display:block;height:20px;position:relative;z-index:2}.example-sections-2>.item.content{box-sizing:border-box;float:right;margin-top:20px;margin-left:-100%;width:100%}.example-sections-2>.item.content:before,.example-sections-2>.item.content:after{content:"";display:table}.example-sections-2>.item.content:after{clear:both}.example-sections-2>.item.content.active{display:block}.example-sections-2>.item.title{margin:0 5px 0 0}.example-sections-2>.item.title>.switch{font-size:1.4rem;font-weight:600;line-height:20px;color:#7d7d7d;text-decoration:none;height:20px;padding:5px 20px 5px 20px;border:1px solid #d1d1d1;background:#f0f0f0;border-bottom:0}.example-sections-2>.item.title>.switch:visited{color:#7d7d7d;text-decoration:none}.example-sections-2>.item.title>.switch:hover{color:#7d7d7d;text-decoration:none}.example-sections-2>.item.title>.switch:active{color:#333;text-decoration:none}.example-sections-2>.item.title:not(.disabled)>.switch:focus,.example-sections-2>.item.title:not(.disabled)>.switch:hover{background:#fcfcfc}.example-sections-2>.item.title:not(.disabled)>.switch:active,.example-sections-2>.item.title.active>.switch,.example-sections-2>.item.title.active>.switch:focus,.example-sections-2>.item.title.active>.switch:hover{background:#fff;color:#333}.example-sections-2>.item.title.active>.switch,.example-sections-2>.item.title.active>.switch:hover{padding-bottom:6px}.example-sections-2>.item.content{background:#fff;margin-top:31px;padding:20px 20px 20px 20px;border:0;border-top:1px solid #d1d1d1}.example-sections-3{margin:0;padding:0}.example-sections-3>.item.title{box-sizing:border-box;float:none;width:100%}.example-sections-3>.item.title>.switch{display:block}.example-sections-3>.item.content{box-sizing:border-box;float:none;margin:0;display:block}.example-sections-3>.item.content:before,.example-sections-3>.item.content:after{content:"";display:table}.example-sections-3>.item.content:after{clear:both}.example-sections-3>.item.content.active{display:block}.example-sections-3>.item.title{margin:0 0 5px}.example-sections-3>.item.title>.switch{background:#f0f0f0;border-top:1px solid #d1d1d1;border-right:1px solid #d1d1d1;border-bottom:1px solid #d1d1d1;border-left:1px solid #d1d1d1;height:40px;padding:5px 20px 5px 20px;font-size:1.8rem;font-weight:600;line-height:40px;color:#7d7d7d;text-decoration:none}.example-sections-3>.item.title>.switch:visited{color:#7d7d7d;text-decoration:none}.example-sections-3>.item.title>.switch:hover{color:#7d7d7d;text-decoration:none}.example-sections-3>.item.title>.switch:active{color:#333;text-decoration:none}.example-sections-3>.item.title:not(.disabled)>.switch:focus,.example-sections-3>.item.title:not(.disabled)>.switch:hover{background:#fcfcfc}.example-sections-3>.item.title:not(.disabled)>.switch:active,.example-sections-3>.item.title.active>.switch,.example-sections-3>.item.title.active>.switch:focus,.example-sections-3>.item.title.active>.switch:hover{background:#fff;padding-bottom:5px}.example-sections-3>.item.content{background:#fff;border:1px solid #d1d1d1;margin:0 0 5px;padding:20px 20px 20px 20px}@media only screen and (max-width: 99999px){.example-sections-4{ position:relative;z-index:1}.example-sections-4:before,.example-sections-4:after{content:"";display:table}.example-sections-4:after{clear:both}.example-sections-4>.item.title{float:left;width:auto}.example-sections-4>.item.title>.switch{display:block;height:20px;position:relative;z-index:2}.example-sections-4>.item.content{box-sizing:border-box;float:right;margin-top:20px;margin-left:-100%;width:100%}.example-sections-4>.item.content:before,.example-sections-4>.item.content:after{content:"";display:table}.example-sections-4>.item.content:after{clear:both}.example-sections-4>.item.content.active{display:block}.example-sections-4>.item.title{margin:0 5px 0 0}.example-sections-4>.item.title>.switch{font-size:1.4rem;font-weight:600;line-height:20px;color:#7d7d7d;text-decoration:none;height:20px;padding:5px 20px 5px 20px;border:1px solid #d1d1d1;background:#f0f0f0;border-bottom:0}.example-sections-4>.item.title>.switch:visited{color:#7d7d7d;text-decoration:none}.example-sections-4>.item.title>.switch:hover{color:#7d7d7d;text-decoration:none}.example-sections-4>.item.title>.switch:active{color:#333;text-decoration:none}.example-sections-4>.item.title:not(.disabled)>.switch:focus,.example-sections-4>.item.title:not(.disabled)>.switch:hover{background:#fcfcfc}.example-sections-4>.item.title:not(.disabled)>.switch:active,.example-sections-4>.item.title.active>.switch,.example-sections-4>.item.title.active>.switch:focus,.example-sections-4>.item.title.active>.switch:hover{background:#fff;color:#333}.example-sections-4>.item.title.active>.switch,.example-sections-4>.item.title.active>.switch:hover{padding-bottom:6px}.example-sections-4>.item.content{background:#fff;margin-top:31px;padding:20px 20px 20px 20px;border:1px solid #d1d1d1}}@media only screen and (max-width: 768px){.example-sections-4{ margin:0;padding:0}.example-sections-4>.item.title{box-sizing:border-box;float:none;width:100%}.example-sections-4>.item.title>.switch{display:block}.example-sections-4>.item.content{box-sizing:border-box;float:none;margin:0;display:block}.example-sections-4>.item.content:before,.example-sections-4>.item.content:after{content:"";display:table}.example-sections-4>.item.content:after{clear:both}.example-sections-4>.item.content.active{display:block}.example-sections-4>.item.title{margin:0 0 5px}.example-sections-4>.item.title>.switch{background:#f0f0f0;border-top:1px solid #d1d1d1;border-right:1px solid #d1d1d1;border-bottom:1px solid #d1d1d1;border-left:1px solid #d1d1d1;height:40px;padding:5px 20px 5px 20px;font-size:1.8rem;font-weight:600;line-height:40px;color:#7d7d7d;text-decoration:none}.example-sections-4>.item.title>.switch:visited{color:#7d7d7d;text-decoration:none}.example-sections-4>.item.title>.switch:hover{color:#7d7d7d;text-decoration:none}.example-sections-4>.item.title>.switch:active{color:#333;text-decoration:none}.example-sections-4>.item.title:not(.disabled)>.switch:focus,.example-sections-4>.item.title:not(.disabled)>.switch:hover{background:#fcfcfc}.example-sections-4>.item.title:not(.disabled)>.switch:active,.example-sections-4>.item.title.active>.switch,.example-sections-4>.item.title.active>.switch:focus,.example-sections-4>.item.title.active>.switch:hover{background:#fff;padding-bottom:5px}.example-sections-4>.item.content{background:#fff;border:1px solid #d1d1d1;margin:0 0 5px;padding:20px 20px 20px 20px}}.example-sections-5{position:relative;z-index:1}.example-sections-5:before,.example-sections-5:after{content:"";display:table}.example-sections-5:after{clear:both}.example-sections-5>.item.title{float:left;width:auto}.example-sections-5>.item.title>.switch{display:block;height:20px;position:relative;z-index:2}.example-sections-5>.item.content{box-sizing:border-box;float:right;margin-top:20px;margin-left:-100%;width:100%}.example-sections-5>.item.content:before,.example-sections-5>.item.content:after{content:"";display:table}.example-sections-5>.item.content:after{clear:both}.example-sections-5>.item.content.active{display:block}.example-sections-6{margin:0;padding:0}.example-sections-6>.item.title{box-sizing:border-box;float:none;width:100%}.example-sections-6>.item.title>.switch{display:block}.example-sections-6>.item.content{box-sizing:border-box;float:none;margin:0;display:block}.example-sections-6>.item.content:before,.example-sections-6>.item.content:after{content:"";display:table}.example-sections-6>.item.content:after{clear:both}.example-sections-6>.item.content.active{display:block}.example-table-1{border-collapse:collapse;border-spacing:0;max-width:100%;width:100%}.example-table-1 th{text-align:left}.example-table-1>tbody>tr>th,.example-table-1>tfoot>tr>th,.example-table-1>tbody>tr>td,.example-table-1>tfoot>tr>td{vertical-align:top}.example-table-1>thead>tr>th,.example-table-1>thead>tr>td{vertical-align:bottom}.example-table-1>thead>tr>th,.example-table-1>tbody>tr>th,.example-table-1>tfoot>tr>th,.example-table-1>thead>tr>td,.example-table-1>tbody>tr>td,.example-table-1>tfoot>tr>td{padding:8px 10px}.example-table-2>thead>tr>th,.example-table-2>tbody>tr>th,.example-table-2>tfoot>tr>th{color:#111;font-weight:700}.example-table-3{border-collapse:collapse;border-spacing:0;max-width:100%;width:100%}.example-table-3 th{text-align:left}.example-table-3>tbody>tr>th,.example-table-3>tfoot>tr>th,.example-table-3>tbody>tr>td,.example-table-3>tfoot>tr>td{vertical-align:top}.example-table-3>thead>tr>th,.example-table-3>thead>tr>td{vertical-align:bottom}.example-table-3>thead>tr>th,.example-table-3>tbody>tr>th,.example-table-3>tfoot>tr>th,.example-table-3>thead>tr>td,.example-table-3>tbody>tr>td,.example-table-3>tfoot>tr>td{padding:8px 10px}.example-table-3>caption{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-table-4{border-collapse:collapse;border-spacing:0;max-width:100%;width:100%}.example-table-4 th{text-align:left}.example-table-4>tbody>tr>th,.example-table-4>tfoot>tr>th,.example-table-4>tbody>tr>td,.example-table-4>tfoot>tr>td{vertical-align:top}.example-table-4>thead>tr>th,.example-table-4>thead>tr>td{vertical-align:bottom}.example-table-4>thead>tr>th,.example-table-4>tbody>tr>th,.example-table-4>tfoot>tr>th,.example-table-4>thead>tr>td,.example-table-4>tbody>tr>td,.example-table-4>tfoot>tr>td{padding:8px 10px}.example-table-4>thead>tr>td,.example-table-4>tbody>tr>td,.example-table-4>tfoot>tr>td{padding:15px 25px 5px 0}.example-table-4>thead>tr>th,.example-table-4>tbody>tr>th,.example-table-4>tfoot>tr>th{padding:15px 25px 10px 0}.example-table-5{border-collapse:collapse;border-spacing:0;max-width:100%;width:100%;background:#fff}.example-table-5 th{text-align:left}.example-table-5>tbody>tr>th,.example-table-5>tfoot>tr>th,.example-table-5>tbody>tr>td,.example-table-5>tfoot>tr>td{vertical-align:top}.example-table-5>thead>tr>th,.example-table-5>thead>tr>td{vertical-align:bottom}.example-table-5>thead>tr>th,.example-table-5>tbody>tr>th,.example-table-5>tfoot>tr>th,.example-table-5>thead>tr>td,.example-table-5>tbody>tr>td,.example-table-5>tfoot>tr>td{padding:8px 10px}.example-table-5>thead{background:#ccf}.example-table-5>tfoot{background:#cff}.example-table-5>tbody>tr>td{background:#fcc}.example-table-5>tbody>tr>th{background:#ffc}.example-table-6{border-collapse:collapse;border-spacing:0;max-width:100%;width:100%;border:1px solid #d1d1d1}.example-table-6 th{text-align:left}.example-table-6>tbody>tr>th,.example-table-6>tfoot>tr>th,.example-table-6>tbody>tr>td,.example-table-6>tfoot>tr>td{vertical-align:top}.example-table-6>thead>tr>th,.example-table-6>thead>tr>td{vertical-align:bottom}.example-table-6>thead>tr>th,.example-table-6>tbody>tr>th,.example-table-6>tfoot>tr>th,.example-table-6>thead>tr>td,.example-table-6>tbody>tr>td,.example-table-6>tfoot>tr>td{padding:8px 10px}.example-table-6>thead>tr>th,.example-table-6>tbody>tr>th,.example-table-6>tfoot>tr>th,.example-table-6>thead>tr>td,.example-table-6>tbody>tr>td,.example-table-6>tfoot>tr>td{border:1px solid #d1d1d1}.example-table-7{border-collapse:collapse;border-spacing:0;max-width:100%;width:100%}.example-table-7 th{text-align:left}.example-table-7>tbody>tr>th,.example-table-7>tfoot>tr>th,.example-table-7>tbody>tr>td,.example-table-7>tfoot>tr>td{vertical-align:top}.example-table-7>thead>tr>th,.example-table-7>thead>tr>td{vertical-align:bottom}.example-table-7>thead>tr>th,.example-table-7>tbody>tr>th,.example-table-7>tfoot>tr>th,.example-table-7>thead>tr>td,.example-table-7>tbody>tr>td,.example-table-7>tfoot>tr>td{padding:8px 10px}.example-table-7>thead>tr>th,.example-table-7>tbody>tr>th,.example-table-7>tfoot>tr>th,.example-table-7>thead>tr>td,.example-table-7>tbody>tr>td,.example-table-7>tfoot>tr>td{border-top:1px solid #d1d1d1}.example-table-7>caption+thead>tr:first-child>th,.example-table-7>colgroup+thead>tr:first-child>th,.example-table-7>thead:first-child>tr:first-child>th,.example-table-7>caption+thead>tr:first-child>td,.example-table-7>colgroup+thead>tr:first-child>td,.example-table-7>thead:first-child>tr:first-child>td{border-top:0}.example-table-7>tbody+tbody{border-top:1px solid #d1d1d1}.example-table-8{border-collapse:collapse;border-spacing:0;max-width:100%;width:100%}.example-table-8 th{text-align:left}.example-table-8>tbody>tr>th,.example-table-8>tfoot>tr>th,.example-table-8>tbody>tr>td,.example-table-8>tfoot>tr>td{vertical-align:top}.example-table-8>thead>tr>th,.example-table-8>thead>tr>td{vertical-align:bottom}.example-table-8>thead>tr>th,.example-table-8>tbody>tr>th,.example-table-8>tfoot>tr>th,.example-table-8>thead>tr>td,.example-table-8>tbody>tr>td,.example-table-8>tfoot>tr>td{padding:8px 10px}.example-table-8>thead>tr>th,.example-table-8>tbody>tr>th,.example-table-8>tfoot>tr>th,.example-table-8>thead>tr>td,.example-table-8>tbody>tr>td,.example-table-8>tfoot>tr>td{border-left:1px solid #d1d1d1}.example-table-8>thead>tr>th:first-child,.example-table-8>tbody>tr>th:first-child,.example-table-8>tfoot>tr>th:first-child,.example-table-8>thead>tr>td:first-child,.example-table-8>tbody>tr>td:first-child,.example-table-8>tfoot>tr>td:first-child{border-left:0}.example-table-9{border-collapse:collapse;border-spacing:0;max-width:100%;width:100%;border:0}.example-table-9 th{text-align:left}.example-table-9>tbody>tr>th,.example-table-9>tfoot>tr>th,.example-table-9>tbody>tr>td,.example-table-9>tfoot>tr>td{vertical-align:top}.example-table-9>thead>tr>th,.example-table-9>thead>tr>td{vertical-align:bottom}.example-table-9>thead>tr>th,.example-table-9>tbody>tr>th,.example-table-9>tfoot>tr>th,.example-table-9>thead>tr>td,.example-table-9>tbody>tr>td,.example-table-9>tfoot>tr>td{padding:8px 10px}.example-table-9>thead>tr>th,.example-table-9>tbody>tr>th,.example-table-9>tfoot>tr>th,.example-table-9>thead>tr>td,.example-table-9>tbody>tr>td,.example-table-9>tfoot>tr>td{border:0}.example-table-9>thead>tr>th,.example-table-9>thead>tr>td{border-bottom:1px solid #d1d1d1}.example-table-10{border-collapse:collapse;border-spacing:0;max-width:100%;width:100%;border:0}.example-table-10 th{text-align:left}.example-table-10>tbody>tr>th,.example-table-10>tfoot>tr>th,.example-table-10>tbody>tr>td,.example-table-10>tfoot>tr>td{vertical-align:top}.example-table-10>thead>tr>th,.example-table-10>thead>tr>td{vertical-align:bottom}.example-table-10>thead>tr>th,.example-table-10>tbody>tr>th,.example-table-10>tfoot>tr>th,.example-table-10>thead>tr>td,.example-table-10>tbody>tr>td,.example-table-10>tfoot>tr>td{padding:8px 10px}.example-table-10>thead>tr>th,.example-table-10>tbody>tr>th,.example-table-10>tfoot>tr>th,.example-table-10>thead>tr>td,.example-table-10>tbody>tr>td,.example-table-10>tfoot>tr>td{border:0}.example-table-11{border-collapse:collapse;border-spacing:0;max-width:100%;width:100%}.example-table-11 th{text-align:left}.example-table-11>tbody>tr>th,.example-table-11>tfoot>tr>th,.example-table-11>tbody>tr>td,.example-table-11>tfoot>tr>td{vertical-align:top}.example-table-11>thead>tr>th,.example-table-11>thead>tr>td{vertical-align:bottom}.example-table-11>thead>tr>th,.example-table-11>tbody>tr>th,.example-table-11>tfoot>tr>th,.example-table-11>thead>tr>td,.example-table-11>tbody>tr>td,.example-table-11>tfoot>tr>td{padding:8px 10px}.example-table-11>tbody>tr:nth-child(even)>td,.example-table-11>tbody>tr:nth-child(even)>th{background:#ffc;color:#000}.example-table-12{border-collapse:collapse;border-spacing:0;max-width:100%;width:100%}.example-table-12 th{text-align:left}.example-table-12>tbody>tr>th,.example-table-12>tfoot>tr>th,.example-table-12>tbody>tr>td,.example-table-12>tfoot>tr>td{vertical-align:top}.example-table-12>thead>tr>th,.example-table-12>thead>tr>td{vertical-align:bottom}.example-table-12>thead>tr>th,.example-table-12>tbody>tr>th,.example-table-12>tfoot>tr>th,.example-table-12>thead>tr>td,.example-table-12>tbody>tr>td,.example-table-12>tfoot>tr>td{padding:8px 10px}.example-table-12>tbody>tr:nth-child(even):hover>td,.example-table-12>tbody>tr:nth-child(even):hover>th{background:#f0f0f0}.example-table-12>tbody>tr:nth-child(odd):hover>td,.example-table-12>tbody>tr:nth-child(odd):hover>th{background:#f0f0f0}.example-table-13{border-collapse:collapse;border-spacing:0;max-width:100%;width:100%;border:1px solid #d1d1d1}.example-table-13 th{text-align:left}.example-table-13>tbody>tr>th,.example-table-13>tfoot>tr>th,.example-table-13>tbody>tr>td,.example-table-13>tfoot>tr>td{vertical-align:top}.example-table-13>thead>tr>th,.example-table-13>thead>tr>td{vertical-align:bottom}.example-table-13>thead>tr>th,.example-table-13>tbody>tr>th,.example-table-13>tfoot>tr>th,.example-table-13>thead>tr>td,.example-table-13>tbody>tr>td,.example-table-13>tfoot>tr>td{padding:8px 10px}.example-table-13>thead>tr>th,.example-table-13>tbody>tr>th,.example-table-13>tfoot>tr>th,.example-table-13>thead>tr>td,.example-table-13>tbody>tr>td,.example-table-13>tfoot>tr>td{border:1px solid #d1d1d1}.example-table-13>tbody>tr:nth-child(odd)>td,.example-table-13>tbody>tr:nth-child(odd)>th{background:#fff}.example-table-13>tbody>tr:nth-child(even):hover>td,.example-table-13>tbody>tr:nth-child(even):hover>th{background:#f0f0f0}.example-table-13>tbody>tr:nth-child(odd):hover>td,.example-table-13>tbody>tr:nth-child(odd):hover>th{background:#f0f0f0}@media only screen and (max-width: 768px){.example-table-14{ width:100%;overflow-y:hidden;overflow-x:auto;-ms-overflow-style:-ms-autohiding-scrollbar;-webkit-overflow-scrolling:touch}}.example-table-15{border-collapse:collapse;border-spacing:0;max-width:100%;width:100%;border:1px solid #d1d1d1}.example-table-15 th{text-align:left}.example-table-15>tbody>tr>th,.example-table-15>tfoot>tr>th,.example-table-15>tbody>tr>td,.example-table-15>tfoot>tr>td{vertical-align:top}.example-table-15>thead>tr>th,.example-table-15>thead>tr>td{vertical-align:bottom}.example-table-15>thead>tr>th,.example-table-15>tbody>tr>th,.example-table-15>tfoot>tr>th,.example-table-15>thead>tr>td,.example-table-15>tbody>tr>td,.example-table-15>tfoot>tr>td{padding:8px 10px}.example-table-15>thead>tr>th,.example-table-15>tbody>tr>th,.example-table-15>tfoot>tr>th,.example-table-15>thead>tr>td,.example-table-15>tbody>tr>td,.example-table-15>tfoot>tr>td{border:1px solid #d1d1d1}.example-table-15>tbody>tr:nth-child(odd)>td,.example-table-15>tbody>tr:nth-child(odd)>th{background:#fff}.example-table-15>tbody>tr:nth-child(even):hover>td,.example-table-15>tbody>tr:nth-child(even):hover>th{background:#f0f0f0}.example-table-15>tbody>tr:nth-child(odd):hover>td,.example-table-15>tbody>tr:nth-child(odd):hover>th{background:#f0f0f0}@media only screen and (max-width: 768px){.example-table-15{ border:0;display:block;background:#cff}.example-table-15>tbody>tr:nth-child(odd)>td,.example-table-15>tbody>tr:nth-child(odd)>th{background:#cff}.example-table-15>tbody>tr:nth-child(even):hover>td,.example-table-15>tbody>tr:nth-child(even):hover>th{background:#cff}.example-table-15>tbody>tr:nth-child(odd):hover>td,.example-table-15>tbody>tr:nth-child(odd):hover>th{background:#cff}.example-table-15>thead>tr>th{display:none}.example-table-15>tbody{display:block}.example-table-15>tbody>tr{display:block}.example-table-15>tbody>tr td,.example-table-15>tbody>tr th{border-bottom:0;display:block;padding:5px 0}.example-table-15>tbody>tr td:before,.example-table-15>tbody>tr th:before{content:attr(data-th) ":";display:inline-block;padding-right:10px;color:#111;font-weight:700}.example-table-15>tbody>tr td{background:#cff}.example-table-15>tbody>tr>th{background-color:#ffc!important}}.example-tooltip-bottom{position:relative}.example-tooltip-bottom .tooltip-content{z-index:100;background:#fff;min-width:210px;max-width:360px;padding:12px 16px;display:none;position:absolute;text-align:left;color:#333;line-height:1.4;border:1px solid #bbb;top:100%;left:0;margin-top:5px}.example-tooltip-bottom .tooltip-content:after,.example-tooltip-bottom .tooltip-content:before{border:solid transparent;content:'';height:0;width:0;position:absolute}.example-tooltip-bottom .tooltip-content:after{border-color:transparent;border-width:5px}.example-tooltip-bottom .tooltip-content:before{border-color:transparent;border-width:6px}.example-tooltip-bottom .tooltip-content:after,.example-tooltip-bottom .tooltip-content:before{bottom:100%}.example-tooltip-bottom .tooltip-content:after{border-bottom-color:#fff;margin-left:-5px;left:15px}.example-tooltip-bottom .tooltip-content:before{border-bottom-color:#bbb;margin-left:-6px;left:15px}.example-tooltip-bottom .tooltip-toggle{cursor:help}.example-tooltip-bottom .tooltip-toggle:hover+.tooltip-content,.example-tooltip-bottom .tooltip-toggle:focus+.tooltip-content,.example-tooltip-bottom:hover .tooltip-content{display:block}.example-tooltip-left{position:relative}.example-tooltip-left .tooltip-content{z-index:100;background:#fff;min-width:210px;max-width:360px;padding:12px 16px;display:none;position:absolute;text-align:left;color:#333;line-height:1.4;border:1px solid #bbb;right:100%;top:0;margin-right:5px}.example-tooltip-left .tooltip-content:after,.example-tooltip-left .tooltip-content:before{border:solid transparent;content:'';height:0;width:0;position:absolute}.example-tooltip-left .tooltip-content:after{border-color:transparent;border-width:5px}.example-tooltip-left .tooltip-content:before{border-color:transparent;border-width:6px}.example-tooltip-left .tooltip-content:after,.example-tooltip-left .tooltip-content:before{left:100%}.example-tooltip-left .tooltip-content:after{border-left-color:#fff;margin-top:-5px;top:15px}.example-tooltip-left .tooltip-content:before{border-left-color:#bbb;margin-top:-6px;top:15px}.example-tooltip-left .tooltip-toggle{cursor:help}.example-tooltip-left .tooltip-toggle:hover+.tooltip-content,.example-tooltip-left .tooltip-toggle:focus+.tooltip-content,.example-tooltip-left:hover .tooltip-content{display:block}.example-tooltip-right{position:relative}.example-tooltip-right .tooltip-content{z-index:100;background:#fff;min-width:210px;max-width:360px;padding:12px 16px;display:none;position:absolute;text-align:left;color:#333;line-height:1.4;border:1px solid #bbb;left:100%;top:0;margin-left:5px}.example-tooltip-right .tooltip-content:after,.example-tooltip-right .tooltip-content:before{border:solid transparent;content:'';height:0;width:0;position:absolute}.example-tooltip-right .tooltip-content:after{border-color:transparent;border-width:5px}.example-tooltip-right .tooltip-content:before{border-color:transparent;border-width:6px}.example-tooltip-right .tooltip-content:after,.example-tooltip-right .tooltip-content:before{right:100%}.example-tooltip-right .tooltip-content:after{border-right-color:#fff;margin-top:-5px;top:15px}.example-tooltip-right .tooltip-content:before{border-right-color:#bbb;margin-top:-6px;top:15px}.example-tooltip-right .tooltip-toggle{cursor:help}.example-tooltip-right .tooltip-toggle:hover+.tooltip-content,.example-tooltip-right .tooltip-toggle:focus+.tooltip-content,.example-tooltip-right:hover .tooltip-content{display:block}.example-tooltip-top{position:relative}.example-tooltip-top .tooltip-content{z-index:100;background:#fff;min-width:210px;max-width:360px;padding:12px 16px;display:none;position:absolute;text-align:left;color:#333;line-height:1.4;border:1px solid #bbb;bottom:100%;left:0;margin-bottom:5px}.example-tooltip-top .tooltip-content:after,.example-tooltip-top .tooltip-content:before{border:solid transparent;content:'';height:0;width:0;position:absolute}.example-tooltip-top .tooltip-content:after{border-color:transparent;border-width:5px}.example-tooltip-top .tooltip-content:before{border-color:transparent;border-width:6px}.example-tooltip-top .tooltip-content:after,.example-tooltip-top .tooltip-content:before{top:100%}.example-tooltip-top .tooltip-content:after{border-top-color:#fff;margin-left:-5px;left:15px}.example-tooltip-top .tooltip-content:before{border-top-color:#bbb;margin-left:-6px;left:15px}.example-tooltip-top .tooltip-toggle{cursor:help}.example-tooltip-top .tooltip-toggle:hover+.tooltip-content,.example-tooltip-top .tooltip-toggle:focus+.tooltip-content,.example-tooltip-top:hover .tooltip-content{display:block}html{font-size:62.5%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;font-size-adjust:100%}body{font-size:1.4rem;color:#333;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;font-weight:400;font-style:normal;line-height:1.42857143}p{margin-top:0rem;margin-bottom:1rem}abbr[title]{cursor:help;border-bottom:1px dotted #d1d1d1}b,strong{font-weight:700}em,i{font-style:italic}mark{background:#f0f0f0;color:#000}small,.small{font-size:12px}hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #d1d1d1}sub,sup{font-size:71.42857143%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}dfn{font-style:italic}h1{font-size:4rem;font-weight:300;line-height:1.1;margin-top:0rem;margin-bottom:2rem}h2{font-size:2.6rem;font-weight:300;line-height:1.1;margin-top:2.5rem;margin-bottom:2rem}h3{font-size:1.8rem;font-weight:300;line-height:1.1;margin-top:1.5rem;margin-bottom:1rem}h4{font-size:1.4rem;font-weight:700;line-height:1.1;margin-top:2rem;margin-bottom:2rem}h5{font-size:1.2rem;font-weight:700;line-height:1.1;margin-top:2rem;margin-bottom:2rem}h6{font-size:1rem;font-weight:700;line-height:1.1;margin-top:2rem;margin-bottom:2rem}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small,h1 .small,h2 .small,h3 .small,h4 .small,h5 .small,h6 .small{font-size:71.42857143%;color:#333;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;font-weight:400;font-style:normal;line-height:1}a,.alink{color:#1979c3;text-decoration:none}a:visited,.alink:visited{color:#800080;text-decoration:none}a:hover,.alink:hover{color:#006bb4;text-decoration:underline}a:active,.alink:active{color:#ff5501;text-decoration:underline}ul,ol{margin-top:0rem;margin-bottom:2.5rem}ul>li,ol>li{margin-top:0rem;margin-bottom:1rem}ul ul,ol ul,ul ol,ol ol{margin-bottom:0}dl{margin-top:0;margin-bottom:20px}dt{font-weight:700;margin-top:0;margin-bottom:5px}dd{margin-top:0;margin-bottom:10px;margin-left:0}code,kbd,pre,samp{font-family:Menlo,Monaco,Consolas,'Courier New',monospace}code{background:#f0f0f0;color:#111;font-size:1.2rem;padding:2px 4px;white-space:nowrap}kbd{background:#f0f0f0;color:#111;padding:2px 4px;font-size:1.2rem}pre{background:#f0f0f0;border:1px solid #d1d1d1;color:#111;display:block;font-size:1.2rem;margin:0 0 10px;line-height:1.42857143;padding:10px;word-break:break-all;word-wrap:break-word}pre code{padding:0;font-size:inherit;color:inherit;white-space:pre-wrap;background-color:transparent;border-radius:0}blockquote{margin:0 0 20px 40px;padding:0;font-size:1.4rem;color:#333;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;font-weight:400;font-style:italic;line-height:1.42857143;border-left:0 solid #d1d1d1}blockquote p:last-child,blockquote ul:last-child,blockquote ol:last-child{margin-bottom:0}blockquote footer,blockquote small,blockquote .small{color:#333;display:block;font-size:1rem;line-height:1.42857143}blockquote footer:before,blockquote small:before,blockquote .small:before{content:'\2014 \00A0'}blockquote cite{font-style:normal}blockquote:before,blockquote:after{content:""}q{quotes:none}q:before,q:after{content:'';content:none}cite{font-style:normal}.example{font-size:2.5rem}.example-line-height{line-height:3rem}.example-word-wrap{word-break:break-all;word-break:break-word;word-wrap:break-word;-webkit-hyphens:auto;-moz-hyphens:auto;-ms-hyphens:auto;hyphens:auto;background:#ccc;width:120px}.example-text-overflow{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:#ccc;width:120px}.example-text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.example-hyphens{word-wrap:break-word;-webkit-hyphens:auto;-moz-hyphens:auto;-ms-hyphens:auto;hyphens:auto}.example-hyphens-none{word-wrap:break-word;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none}.example-typography{font-size:3rem;color:#fc0;font-family:Menlo,Monaco,Consolas,'Courier New',monospace;font-weight:500;font-style:italic;line-height:1.2}.example-list-reset-styles{margin:0;padding:0;list-style:none none}.example-list-inline{margin:0;padding:0;list-style:none none}.example-list-inline>li{display:inline-block;vertical-align:top}.example-link-default{color:#1979c3;text-decoration:none}.example-link-default:visited{color:#800080;text-decoration:none}.example-link-default:hover{color:#006bb4;text-decoration:underline}.example-link-default:active{color:#ff5501;text-decoration:underline}.example-link{color:#008000;text-decoration:none}.example-link:visited{color:#800080;text-decoration:none}.example-link:hover{color:#ffa500;text-decoration:none}.example-link:active{color:#ff5501;text-decoration:underline}.example-heading{font-size:4rem;font-weight:300;line-height:1.1;margin-top:0rem;margin-bottom:2rem}.example-heading-2{font-size:2.6rem;font-weight:300;line-height:1.1;margin-top:2.5rem;margin-bottom:2rem}html{font-size:62.5%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;font-size-adjust:100%}body{font-size:1.4rem;color:#333;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;font-weight:400;font-style:normal;line-height:1.42857143}p{margin-top:0rem;margin-bottom:1rem}abbr[title]{cursor:help;border-bottom:1px dotted #d1d1d1}b,strong{font-weight:700}em,i{font-style:italic}mark{background:#f0f0f0;color:#000}small,.small{font-size:12px}hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #d1d1d1}sub,sup{font-size:71.42857143%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}dfn{font-style:italic}h1{font-size:4rem;font-weight:300;line-height:1.1;margin-top:0rem;margin-bottom:2rem}h2{font-size:2.6rem;font-weight:300;line-height:1.1;margin-top:2.5rem;margin-bottom:2rem}h3{font-size:1.8rem;font-weight:300;line-height:1.1;margin-top:1.5rem;margin-bottom:1rem}h4{font-size:1.4rem;font-weight:700;line-height:1.1;margin-top:2rem;margin-bottom:2rem}h5{font-size:1.2rem;font-weight:700;line-height:1.1;margin-top:2rem;margin-bottom:2rem}h6{font-size:1rem;font-weight:700;line-height:1.1;margin-top:2rem;margin-bottom:2rem}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small,h1 .small,h2 .small,h3 .small,h4 .small,h5 .small,h6 .small{font-size:71.42857143%;color:#333;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;font-weight:400;font-style:normal;line-height:1}a,.alink{color:#1979c3;text-decoration:none}a:visited,.alink:visited{color:#800080;text-decoration:none}a:hover,.alink:hover{color:#006bb4;text-decoration:underline}a:active,.alink:active{color:#ff5501;text-decoration:underline}ul,ol{margin-top:0rem;margin-bottom:2.5rem}ul>li,ol>li{margin-top:0rem;margin-bottom:1rem}ul ul,ol ul,ul ol,ol ol{margin-bottom:0}dl{margin-top:0;margin-bottom:20px}dt{font-weight:700;margin-top:0;margin-bottom:5px}dd{margin-top:0;margin-bottom:10px;margin-left:0}code,kbd,pre,samp{font-family:Menlo,Monaco,Consolas,'Courier New',monospace}code{background:#f0f0f0;color:#111;font-size:1.2rem;padding:2px 4px;white-space:nowrap}kbd{background:#f0f0f0;color:#111;padding:2px 4px;font-size:1.2rem}pre{background:#f0f0f0;border:1px solid #d1d1d1;color:#111;display:block;font-size:1.2rem;margin:0 0 10px;line-height:1.42857143;padding:10px;word-break:break-all;word-wrap:break-word}pre code{padding:0;font-size:inherit;color:inherit;white-space:pre-wrap;background-color:transparent;border-radius:0}blockquote{margin:0 0 20px 40px;padding:0;font-size:1.4rem;color:#333;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;font-weight:400;font-style:italic;line-height:1.42857143;border-left:0 solid #d1d1d1}blockquote p:last-child,blockquote ul:last-child,blockquote ol:last-child{margin-bottom:0}blockquote footer,blockquote small,blockquote .small{color:#333;display:block;font-size:1rem;line-height:1.42857143}blockquote footer:before,blockquote small:before,blockquote .small:before{content:'\2014 \00A0'}blockquote cite{font-style:normal}blockquote:before,blockquote:after{content:""}q{quotes:none}q:before,q:after{content:'';content:none}cite{font-style:normal}.example-clearfix-container-1{border:1px solid red}.example-clearfix-container-2{border:1px solid #0f0}.example-clearfix-container-2:before,.example-clearfix-container-2:after{content:"";display:table}.example-clearfix-container-2:after{clear:both}.example-clearfix-item.left{float:left}.example-clearfix-item.right{float:right}.example-visibility-hidden{visibility:hidden;height:0}.example-visually-hidden-1{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-visually-hidden-2{background:#fdf0d5;padding:5px;position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-visually-hidden-2{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto}.example-css-container{padding:20px;background:#e8e8e8}.example-rotate{background:red;position:absolute;height:20px;width:40px;-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.example-placeholder::-webkit-input-placeholder{color:#808080;font-weight:700}.example-placeholder:-moz-placeholder{color:#808080;font-weight:700}.example-placeholder::-moz-placeholder{color:#808080;font-weight:700}.example-placeholder:-ms-input-placeholder{color:#808080;font-weight:700}.example-background-gradient-1{background-color:#ccf;background-repeat:repeat-x;background-image:-webkit-linear-gradient(top, #cff 0, #ccf 100%);background-image:linear-gradient(to bottom, #cff 0, #ccf 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ccffff', endColorstr='#ccccff', GradientType=0)}.example-background-gradient-2{background-color:#ccf;background-repeat:repeat-x;background-image:-webkit-linear-gradient(left,color-stop( #cff 0),color-stop( #ccf 100%));background-image:linear-gradient(to right, #cff 0, #ccf 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ccffff', endColorstr='#ccccff', GradientType=1)}body{padding:15px;background-image:none}</style></head><body><nav class="bar top cf"><div class="container"><a href="index.html" class="brand">Magento UI Library</a><ul class="menu"><li><a href="#" data-toggle="dropdown-1" unselectable="on" class="dropdown-toggle">files</a><ul id="dropdown-1" hidden class="dropdown"><li><a href="actions-toolbar.html">actions-toolbar</a></li><li><a href="breadcrumbs.html">breadcrumbs</a></li><li><a href="buttons.html">buttons</a></li><li><a href="docs.html">docs</a></li><li><a href="dropdowns.html">dropdowns</a></li><li><a href="forms.html">forms</a></li><li><a href="icons.html">icons</a></li><li><a href="layout.html">layout</a></li><li><a href="lib.html">lib</a></li><li><a href="loaders.html">loaders</a></li><li><a href="messages.html">messages</a></li><li><a href="pages.html">pages</a></li><li><a href="popups.html">popups</a></li><li><a href="rating.html">rating</a></li><li><a href="resets.html">resets</a></li><li><a href="responsive.html">responsive</a></li><li><a href="sections.html">sections</a></li><li><a href="tables.html">tables</a></li><li><a href="tooltips.html">tooltips</a></li><li><a href="typography.html">typography</a></li><li><a href="utilities.html">utilities</a></li><li><a href="variables.html">variables</a></li></ul></li></ul><div class="nav"><button title="Table of Contents" data-toggle="nav-toc"><svg viewBox="0 0 512 512" height="22" width="22" class="icon"><path d="M108.9,403.1V462H50v-58.9H108.9z M108.9,285.4H50v58.9h58.9V285.4zM108.9,50H50v58.9h58.9V50z M108.9,167.7H50v58.9h58.9V167.7z M167.7,344.3H462v-58.9H167.7V344.3zM167.7,50v58.9H462V50H167.7z M167.7,462H462v-58.9H167.7V462z M167.7,226.6H462v-58.9H167.7V226.6z"></path></svg></button><input type="search" placeholder="Search" class="search"></div></div></nav><section class="container"><article id="responsive" class="section"><div class="docs"><a href="#responsive" class="permalink"><svg viewBox="0 0 512 512" height="32" width="32" class="icon"><path d="M156.2,199.7c7.5-7.5,15.9-13.8,24.8-18.7c49.6-27.3,113.1-12.8,145,35.5l-38.5,38.5c-11.1-25.2-38.5-39.6-65.8-33.5c-10.3,2.3-20.1,7.4-28,15.4l-73.9,73.9c-22.4,22.4-22.4,58.9,0,81.4c22.4,22.4,58.9,22.4,81.4,0l22.8-22.8c20.7,8.2,42.9,11.5,64.9,9.9l-50.3,50.3c-43.1,43.1-113,43.1-156.1,0c-43.1-43.1-43.1-113-0-156.1L156.2,199.7z M273.6,82.3l-50.3,50.3c21.9-1.6,44.2,1.6,64.9,9.9l22.8-22.8c22.4-22.4,58.9-22.4,81.4,0c22.4,22.4,22.4,58.9,0,81.4l-73.9,73.9c-22.5,22.5-59.1,22.3-81.4,0c-5.2-5.2-9.7-11.7-12.5-18l-38.5,38.5c4,6.1,8.3,11.5,13.7,16.9c13.9,13.9,31.7,24.3,52.1,29.3c26.5,6.4,54.8,2.8,79.2-10.6c8.9-4.9,17.3-11.1,24.8-18.7l73.9-73.9c43.1-43.1,43.1-113,0-156.1C386.6,39.2,316.7,39.2,273.6,82.3z"></path></svg></a><h1 id="responsive">Responsive</h1>
-<p>  Magento UI library provides a strong approach for working with media queries. It`s based on recursive call of <nobr><code>.responsive-max-m()</code></nobr> and <code>.responsive-min-l()</code> mixins defined anywhere in project but invoked in one place in <nobr><code>lib/web/css/source/lib/responsive.less</code></nobr>. That&#39;s why in the resulting styles.css we have every media query only ones and all the rules there, not a multiple calls for the same query.</p>
+</title><meta charset="utf-8"><style>*{-moz-box-sizing:border-box;box-sizing:border-box;margin:0;padding:0;border:0}body{padding:60px 0 40px;background-color:hsl(207,10%,90%);color:hsl(207,5%,30%)}.container{max-width:1300px;margin:0 auto;padding:0 20px}.section{position:relative;margin-bottom:20px}.docs{position:relative;z-index:2;width:68%;min-height:200px;background-color:hsl(207,0%,100%);background-clip:padding-box;border:1px solid hsla(207,5%,5%,.1);border-radius:5px;box-shadow:0 0 3px hsla(207,5%,5%,.1)}.code{position:absolute;top:5px;bottom:5px;right:0;z-index:1;width:33%;padding:10px 10px 10px 20px;border-radius:0 5px 5px 0;border:1px solid hsla(207,20%,10%,.1);background-color:hsla(207,20%,95%,.9);background-clip:padding-box;opacity:.5;-webkit-transition:opacity .4s;-moz-transition:opacity .4s;-o-transition:opacity .4s;transition:opacity .4s}.code:hover{opacity:1}.preview{background:hsl(207,0%,100%);border-top:1px solid hsl(207,30%,95%);position:relative;z-index:1}.preview-code+.preview{margin-top:0;border-top:0}.preview iframe{display:block;width:100%;height:100%;overflow:hidden}.preview-code{position:relative;z-index:2;display:block;width:100%;color:hsl(207,9%,37%);max-height:200px;padding:10px 20px;overflow-y:auto;background:hsl(207,30%,95%);border:1px solid hsl(207,30%,85%);border-left:0;border-right;box-shadow:inset 0 1px 2px hsla(207,30%,10%,.1);line-height:1.1!important;resize:none}.preview-code:focus{outline:0;background:hsl(207,30%,97%);box-shadow:inset 0 1px 2px hsla(207,30%,10%,.1),0 0 5px hsla(207,75%,75%,.9)}.preview-code:last-child{border-bottom:0;border-radius:0 0 5px 5px}.resizeable{padding:15px;overflow:auto;background:hsl(207,0%,100%);box-shadow:0 0 2px hsla(207,10%,20%,.2);resize:both}.preview-code,pre{white-space:pre-wrap;word-wrap:break-word;overflow-y:auto}.code pre{height:100%;margin-top:0}.bar{position:fixed;left:0;right:0;z-index:1010;min-height:40px;line-height:40px;background-image:-webkit-linear-gradient(hsla(207,10%,35%,.97),hsla(207,5%,25%,.92));background-image:-moz-linear-gradient(hsla(207,10%,35%,.97),hsla(207,5%,25%,.92));background-image:-o-linear-gradient(hsla(207,10%,35%,.97),hsla(207,5%,25%,.92));background-image:linear-gradient(hsla(207,10%,35%,.97),hsla(207,5%,25%,.92))}.bar.top{top:0;box-shadow:0 1px 2px hsla(207,5%,0%,.2)}.bar.bottom{bottom:0;box-shadow:0 -1px 2px hsla(207,5%,0%,.2)}.bar ul{margin:0!important}.bar li{display:block;list-style:none}.bar .icon path{fill:hsla(27,10%,75%,.75)}.docs .icon path{fill:hsla(207,10%,75%,.5)}.docs .permalink:hover .icon path{fill:hsl(207,10%,75%)}.bar button{color:hsla(27,10%,75%,.75)}.bar button:hover .icon path,.bar button.is-active .icon path{fill:hsl(27,10%,85%)}.bar button:hover,.bar button.is-active{color:hsl(27,10%,85%)}.bar .icon{vertical-align:middle;display:inline-block}.bar,.bar a,.bar a:visited{color:hsl(27,10%,85%);text-shadow:1px 1px 0 hsla(27,5%,0%,.5)}.bar a:hover,.bar a.is-active{color:hsl(27,10%,95%);text-shadow:1px 1px 0 hsla(27,5%,0%,1);text-decoration:none}.brand{float:left;margin-right:20px;font-weight:700;font-size:16px;text-decoration:none}.brand,a.brand,a.brand:visited{color:hsl(27,5%,5%);text-shadow:1px 1px 0 hsla(27,5%,100%,.2)}.brand:hover,a.brand:hover{color:hsl(27,5%,0%);text-shadow:1px 1px 0 hsla(27,5%,100%,.3);text-decoration:none}.menu{font-size:12px}.menu>li{float:left;position:relative}.menu a{display:block;margin-right:15px}.dropdown-toggle{position:relative;padding-right:15px}.dropdown-toggle:after{display:block;position:absolute;right:0;top:18px;content:'';border:4px solid;border-left-color:transparent;border-right-color:transparent;border-bottom-color:transparent}.nav-results,.dropdown{position:absolute;z-index:1020;top:32px;left:-16px;width:175px;max-height:500px;padding:10px 0;overflow-y:auto;word-wrap:break-word;font-size:11px;line-height:20px;background-color:hsla(207,10%,25%,.97);border:1px solid hsla(207,5%,70%,.3);border-radius:3px;box-shadow:0 0 3px hsla(207,5%,0%,.2)}.toc-list{width:200px}.nav-results{right:0;width:200px;left:auto;padding:5px 0}.nav-results-filename{display:block;font-size:10px;opacity:.75}.nav-results a{display:block;line-height:15px;padding:5px 10px}.nav-results li:not([hidden])~li a{border-top:1px solid hsla(27,10%,90%,.1)}.dropdown a{padding:0 15px}.dropdown li:hover{background-color:hsl(207,10%,22%)}.nav{float:right;position:relative}.nav input[type="search"]{padding:2px 4px;color:#fff;width:150px;border:1px solid hsla(207,5%,0%,.3);background:hsla(207,12%,40%,.9);box-shadow:inset 1px 1px 3px hsla(207,5%,0%,.05),1px 1px 0 hsla(207,5%,100%,.05);border-radius:10px;-webkit-appearance:textfield}.nav input[type="search"]:focus{outline:0;background:hsla(207,7%,45%,.9)}.settings{text-align:center}.bar button{display:inline-block;vertical-align:middle;padding:0 5px;margin:0 3px;background:transparent}.bar button:first-child{margin-left:0}.settings .auto{line-height:32px;font-size:11px;font-weight:700;letter-spacing:-1px;text-shadow:none;text-transform:uppercase}body{font-family:sans-serif;font-size:14px;line-height:1.618}.docs pre,p,ol,ul,dl,figure,blockquote,table{margin-left:20px;margin-right:20px}.preview,.docs pre,p,ol,ul,dl,figure,blockquote,table{margin-top:10px}ul ul,ol ol,ul ol,ol ul,blockquote p:last-child{margin-top:0}ul,ol{padding-left:1.5em}p:last-child,ol:last-child,ul:last-child,dl:last-child{margin-bottom:20px}hr,h1,h2,h3,h4,h5,h6{margin:1em 20px .5em}h1:first-of-type{margin-top:20px}h1,h2,h3,h4,h5,h6{line-height:1.2;color:hsl(207,10%,50%)}h1 a,h1 a:hover,h1 a:visited{color:inherit;text-decoration:inherit}h1{font-size:3.052em;font-weight:400;color:hsl(207,10%,45%)}h2{font-size:1.953em}h3{font-size:1.536em}h1,h2,h3{letter-spacing:-.025em}h4{font-size:1.25em}h5{font-size:1em;text-transform:uppercase}h6{font-size:1em}.permalink{position:absolute;top:15px;right:15px}a{color:hsl(207,90%,50%);text-decoration:none}a:hover{color:hsl(207,95%,40%);text-decoration:underline}a:visited{color:hsl(207,100%,35%)}.preview-code,pre,code,var{font-style:normal;font-family:"Ubuntu Mono","Andale Mono","DejaVu Sans Mono","Monaco","Bitstream Vera Sans Mono","Consolas","Lucida Console",monospace;font-size:12px}.docs pre,code,var{padding:.1em 3px;background:hsla(207,5%,0%,.025);border:1px solid hsla(207,5%,0%,.05);border-radius:3px}.code pre{line-height:1.1!important}pre code{padding:0;background:transparent;border:0}.cf:before,.cf:after{content:'';display:table}.cf:after{clear:both}[unselectable="on"]{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}[hidden]{display:none!important}small{font-size:85%;opacity:.9}.docs .vars_list{width:100%}.docs .vars_list th,.docs .vars_list td{width:33%}.docs pre th{text-align:left}.docs pre table{border-collapse:collapse;margin:0}.docs th,.docs td{border:0;padding:9px 10px 9px 0;vertical-align:top}.docs tr th:last-child,.docs tr td:last-child{padding-right:0}.docs pre th{font-weight:400}.docs pre th.vars_head{border-bottom:1px solid #e5e5e5;color:#707070;white-space:nowrap}.docs pre th.vars_section{border-bottom:1px solid #e5e5e5;color:#333;font-size:18px;padding-top:30px}.vars_value{color:#338bb8}.docs li p{margin:0 0 20px}.dropdown a{text-transform:capitalize}#default-button #default-button-big+.preview+.preview-code{display:block}#actions-toolbar-alignment .preview-code,#reverse-primary-and-secondary-blocks .preview-code,#actions-toolbar-indents-customizations .preview-code,#actionstoolbarclearfloats-mixin .preview-code,#responsive-actions-toolbar .preview-code,#button-with-gradient-background .preview-code,#primary-button .preview-code,#button-as-an-icon .preview-code,#button-with-an-icon-on-the-left-or-right-side-of-the-text .preview-code,#button-with-fixed-width .preview-code,#button-as-a-link .preview-code,#link-as-a-button .preview-code,#buttonstyled-breadcrumbs-with-gradient-background-border-and-no-separating-symbol .preview-code,#breadcrumbs-with-solid-background .preview-code,#pagination-without-label-with-solid-background .preview-code,#pagination-with-label-and-text-previousnext-links .preview-code,#pagination-with-label-and-gradient-background-on-links .preview-code,#fixed-height-popup .preview-code,#fixed-content-height-popup .preview-code,#margins-for-header-content-and-footer-block-in-popup .preview-code,#popup-titles-with-styled-as-theme-headings .preview-code,#popup-action-toolbar .preview-code,#popup-close-button-without-an-icon .preview-code,#modify-icon-of-popup-close-button .preview-code,#modify-overlay-styles .preview-code,#rating-summary-multiple-ratings .preview-code,#rating-summary-hide-label .preview-code,#rating-summary-icons-symbol .preview-code,#rating-summary-icons-color .preview-code,#rating-summary-set-number-of-icons .preview-code,#rating-summary .preview-code,#rating-with-vote-icon-symbol .preview-code,#rating-with-vote-setup-icons-colors .preview-code,#rating-with-vote-setup-number-of-icons .preview-code,#tabs-with-content-top-border .preview-code,#accordion-mixin-variables .preview-code,#tabs-base .preview-code,#accordion-base .preview-code,#warning-message .preview-code,#error-message .preview-code,#success-message .preview-code,#notice-message .preview-code,#message-with-inner-icon .preview-code,#message-with-lateral-icon .preview-code,#custom-message-style .preview-code,#modify-dropdown-list-styles .preview-code,#dropdown-with-icon-customization .preview-code,#split-button-button-styling .preview-code,#split-button-icon-customization .preview-code,#split-button-dropdown-list-customization .preview-code,#table-cells-resize .preview-code,#table-caption .preview-code,#table-typography .preview-code,#table-background-customization .preview-code,#table-borders-customization .preview-code,#table-without-borders .preview-code,#table-with-horizontal-borders .preview-code,#table-with-vertical-borders .preview-code,#striped-table .preview-code,#responsive-table-technics-1 .preview-code,#responsive-table-technics-2 .preview-code,#fontsize-mixin .preview-code,#word-breaking-mixin .preview-code,#word-breaking-mixin .preview-code,#text-overflow-mixin .preview-code,#text-hide .preview-code,#hyphens .preview-code,#font-style-and-color .preview-code,#reset-list-styles .preview-code,#inlineblock-list-item-styling .preview-code,#link-styling-mixin .preview-code,#heading-styling-mixin .preview-code,#icon-with-image-or-sprite .preview-code,#change-the-size-of-font-icon .preview-code,#sprite-and-font-icons-for-blank-theme .preview-code,#icon-position-for-an-icon-with-image-or-sprite .preview-code{display:none}article[id$="-variables"] .docs,#resets .docs,#ratings .docs,#tabs-and-accordions .docs,#messages .docs,#dropdown-and-split-buttons-mixins .docs,#font-face-mixin .docs,#layout .docs,#forms-mixins .docs,#including-magento-ui-library-to-your-theme .docs,#global-forms-elements-customization .docs,#mobile-off-canvas-navigation .docs,#desktop-navigation .docs,#utilities .docs,#layout-width .docs,#responsive-breakpoints .docs,#responsive-mixins-usage .docs{width:100%}article[id$="-variables"] .code{display:none}article[id$="-variables"] .docs pre{background:#fff;border:0;margin-top:0}</style><script type="text/preview">(function(){"use strict";var a=function(a){return Array.prototype.slice.call(a)},b=document.getElementsByTagName("body")[0],c=["link","visited","hover","active","focus","target","enabled","disabled","checked"],d=new RegExp(":(("+c.join(")|(")+"))","gi"),e=a(document.styleSheets).map(function(b){return a(b.cssRules).filter(function(a){return a.selectorText&&a.selectorText.match(d)}).map(function(a){return a.cssText.replace(d,".\\3A $1")}).join("")}).join("");if(e.length){var f=document.createElement("style");f.innerText=e;var g=document.getElementsByTagName("style")[0];g.parentNode.insertBefore(f,g)}var h=function(){var a=window.getComputedStyle(b,null);return function(){if(b.childElementCount===0)return b.offsetHeight;var c=b.getElementsByTagName("*"),d=[];for(var e=0,f=c.length;e<f;e++)d.push(c[e].offsetTop+c[e].offsetHeight+parseInt(window.getComputedStyle(c[e],null).getPropertyValue("margin-bottom")));var g=Math.max.apply(Math,d);return g+=parseInt(a.getPropertyValue("padding-bottom"),10),Math.max(g,b.offsetHeight)}}(),i={getHeight:function(){window.parent.postMessage({height:h()},"*")}};window.addEventListener("message",function(a){if(a.data==null)return;typeof a.data=="string"&&i[a.data]()},!1)})()</script><style type="text/preview">.actions-toolbar:before,.actions-toolbar:after{content:"";display:table}.actions-toolbar:after{clear:both}.actions-toolbar .primary{float:left}.actions-toolbar .secondary{float:right}.actions-toolbar .primary,.actions-toolbar .secondary{display:inline-block}.actions-toolbar .primary a.action,.actions-toolbar .secondary a.action{display:inline-block}.actions-toolbar .primary .action{margin:0 5px 0 0}.actions-toolbar .secondary a.action{margin-top:6px}.example-actions-toolbar-1:before,.example-actions-toolbar-1:after{content:"";display:table}.example-actions-toolbar-1:after{clear:both}.example-actions-toolbar-1 .primary{float:left}.example-actions-toolbar-1 .secondary{float:right}.example-actions-toolbar-1 .primary,.example-actions-toolbar-1 .secondary{display:inline-block}.example-actions-toolbar-1 .primary a.action,.example-actions-toolbar-1 .secondary a.action{display:inline-block}.example-actions-toolbar-1 .primary .action{margin:0 5px 0 0}.example-actions-toolbar-1 .secondary a.action{margin-top:6px}.example-actions-toolbar-1:before,.example-actions-toolbar-1:after{content:"";display:table}.example-actions-toolbar-1:after{clear:both}.example-actions-toolbar-1 .primary{float:left}.example-actions-toolbar-1 .secondary{float:right}.example-actions-toolbar-1 .primary,.example-actions-toolbar-1 .secondary{display:inline-block}.example-actions-toolbar-1 .primary a.action,.example-actions-toolbar-1 .secondary a.action{display:inline-block}.example-actions-toolbar-1 .primary .action{margin:0 5px 0 0}.example-actions-toolbar-1 .secondary a.action{margin-top:6px}.example-actions-toolbar-2:before,.example-actions-toolbar-2:after{content:"";display:table}.example-actions-toolbar-2:after{clear:both}.example-actions-toolbar-2 .primary{float:left}.example-actions-toolbar-2 .secondary{float:right}.example-actions-toolbar-2 .primary,.example-actions-toolbar-2 .secondary{display:inline-block}.example-actions-toolbar-2 .primary a.action,.example-actions-toolbar-2 .secondary a.action{display:inline-block}.example-actions-toolbar-2 .primary .action{margin:0 5px 0 0}.example-actions-toolbar-2 .secondary a.action{margin-top:6px}.example-actions-toolbar-3{text-align:left}.example-actions-toolbar-3:before,.example-actions-toolbar-3:after{content:"";display:table}.example-actions-toolbar-3:after{clear:both}.example-actions-toolbar-3 .primary{float:left}.example-actions-toolbar-3 .primary,.example-actions-toolbar-3 .secondary{display:inline-block}.example-actions-toolbar-3 .primary a.action,.example-actions-toolbar-3 .secondary a.action{display:inline-block}.example-actions-toolbar-3 .primary .action{margin:0 5px 0 0}.example-actions-toolbar-3 .secondary a.action{margin-top:6px}.example-actions-toolbar-4{text-align:right}.example-actions-toolbar-4:before,.example-actions-toolbar-4:after{content:"";display:table}.example-actions-toolbar-4:after{clear:both}.example-actions-toolbar-4 .secondary{float:right}.example-actions-toolbar-4 .primary,.example-actions-toolbar-4 .secondary{display:inline-block}.example-actions-toolbar-4 .primary a.action,.example-actions-toolbar-4 .secondary a.action{display:inline-block}.example-actions-toolbar-4 .primary .action{margin:0 5px 0 0}.example-actions-toolbar-4 .secondary a.action{margin-top:6px}.example-actions-toolbar-5{text-align:center}.example-actions-toolbar-5:before,.example-actions-toolbar-5:after{content:"";display:table}.example-actions-toolbar-5:after{clear:both}.example-actions-toolbar-5 .primary,.example-actions-toolbar-5 .secondary{vertical-align:top}.example-actions-toolbar-5 .primary,.example-actions-toolbar-5 .secondary{display:inline-block}.example-actions-toolbar-5 .primary a.action,.example-actions-toolbar-5 .secondary a.action{display:inline-block}.example-actions-toolbar-5 .primary .action{margin:0 5px 0 0}.example-actions-toolbar-5 .secondary a.action{margin-top:6px}.example-actions-toolbar-6:before,.example-actions-toolbar-6:after{content:"";display:table}.example-actions-toolbar-6:after{clear:both}.example-actions-toolbar-6 .primary{float:right}.example-actions-toolbar-6 .secondary{float:left}.example-actions-toolbar-6 .primary,.example-actions-toolbar-6 .secondary{display:inline-block}.example-actions-toolbar-6 .primary a.action,.example-actions-toolbar-6 .secondary a.action{display:inline-block}.example-actions-toolbar-6 .primary .action{margin:0 5px 0 0}.example-actions-toolbar-6 .secondary a.action{margin-top:6px}.example-actions-toolbar-7{text-align:left}.example-actions-toolbar-7:before,.example-actions-toolbar-7:after{content:"";display:table}.example-actions-toolbar-7:after{clear:both}.example-actions-toolbar-7 .secondary{float:left}.example-actions-toolbar-7 .primary,.example-actions-toolbar-7 .secondary{display:inline-block}.example-actions-toolbar-7 .primary a.action,.example-actions-toolbar-7 .secondary a.action{display:inline-block}.example-actions-toolbar-7 .primary .action{margin:0 5px 0 0}.example-actions-toolbar-7 .secondary a.action{margin-top:6px}.example-actions-toolbar-8{text-align:right}.example-actions-toolbar-8:before,.example-actions-toolbar-8:after{content:"";display:table}.example-actions-toolbar-8:after{clear:both}.example-actions-toolbar-8 .primary{float:right}.example-actions-toolbar-8 .primary,.example-actions-toolbar-8 .secondary{display:inline-block}.example-actions-toolbar-8 .primary a.action,.example-actions-toolbar-8 .secondary a.action{display:inline-block}.example-actions-toolbar-8 .primary .action{margin:0 5px 0 0}.example-actions-toolbar-8 .secondary a.action{margin-top:6px}.example-actions-toolbar-9{margin:10px;padding:10px}.example-actions-toolbar-9:before,.example-actions-toolbar-9:after{content:"";display:table}.example-actions-toolbar-9:after{clear:both}.example-actions-toolbar-9 .primary{float:left}.example-actions-toolbar-9 .secondary{float:right}.example-actions-toolbar-9 .primary,.example-actions-toolbar-9 .secondary{display:inline-block}.example-actions-toolbar-9 .primary a.action,.example-actions-toolbar-9 .secondary a.action{display:inline-block}.example-actions-toolbar-9 .primary .action{margin:0 5px 0 0}.example-actions-toolbar-9 .secondary a.action{margin-top:6px}.example-actions-toolbar-10{text-align:left}.example-actions-toolbar-10:before,.example-actions-toolbar-10:after{content:"";display:table}.example-actions-toolbar-10:after{clear:both}.example-actions-toolbar-10 .primary{float:left}.example-actions-toolbar-10 .primary,.example-actions-toolbar-10 .secondary{display:inline-block}.example-actions-toolbar-10 .primary a.action,.example-actions-toolbar-10 .secondary a.action{display:inline-block}.example-actions-toolbar-10 .primary .action{margin:0 50px 0 0}.example-actions-toolbar-10 .secondary a.action{margin-top:6px}.example-actions-toolbar-11{text-align:left}.example-actions-toolbar-11:before,.example-actions-toolbar-11:after{content:"";display:table}.example-actions-toolbar-11:after{clear:both}.example-actions-toolbar-11 .primary{float:left}.example-actions-toolbar-11 .primary,.example-actions-toolbar-11 .secondary{display:inline-block}.example-actions-toolbar-11 .primary a.action,.example-actions-toolbar-11 .secondary a.action{display:inline-block}.example-actions-toolbar-11 .primary .action{margin:0 5px 0 0}.example-actions-toolbar-11 .secondary .action{margin:0 50px 0 0}.example-actions-toolbar-11 .secondary a.action{margin-top:6px}.example-actions-toolbar-12:before,.example-actions-toolbar-12:after{content:"";display:table}.example-actions-toolbar-12:after{clear:both}.example-actions-toolbar-12 .primary{float:left}.example-actions-toolbar-12 .secondary{float:right}.example-actions-toolbar-12 .primary,.example-actions-toolbar-12 .secondary{display:inline-block}.example-actions-toolbar-12 .primary a.action,.example-actions-toolbar-12 .secondary a.action{display:inline-block}.example-actions-toolbar-12 .primary .action{margin:0 5px 0 0}.example-actions-toolbar-12 .secondary a.action{margin-top:6px}.example-actions-toolbar-12:before,.example-actions-toolbar-12:after{content:"";display:table}.example-actions-toolbar-12:after{clear:both}.example-actions-toolbar-12 .primary{float:left}.example-actions-toolbar-12 .secondary{float:right}.example-actions-toolbar-12 .primary,.example-actions-toolbar-12 .secondary{display:inline-block}.example-actions-toolbar-12 .primary a.action,.example-actions-toolbar-12 .secondary a.action{display:inline-block}.example-actions-toolbar-12 .primary .action{margin:0 5px 0 0}.example-actions-toolbar-12 .secondary a.action{margin-top:6px}@media only screen and (max-width: 768px){.example-actions-toolbar-12 .primary,.example-actions-toolbar-12 .secondary{ display:block;float:none}}.example-breadcrumbs-1{margin:0 0 20px}.example-breadcrumbs-1 .items{font-size:1.2rem;color:#a3a3a3;margin:0;padding:0;list-style:none none}.example-breadcrumbs-1 .items>li{display:inline-block;vertical-align:top}.example-breadcrumbs-1 .item{margin:0}.example-breadcrumbs-1 a{color:#333;text-decoration:none}.example-breadcrumbs-1 a:visited{color:#333;text-decoration:none}.example-breadcrumbs-1 a:hover{color:#333;text-decoration:underline}.example-breadcrumbs-1 a:active{color:#333;text-decoration:none}.example-breadcrumbs-1 strong{font-weight:400}.example-breadcrumbs-1 .item:not(:last-child){display:inline-block;text-decoration:none}.example-breadcrumbs-1 .item:not(:last-child):after{font-family:'icons-blank-theme';content:'\e608';font-size:24px;line-height:18px;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.example-breadcrumbs-2{margin:0 0 20px}.example-breadcrumbs-2 .items{font-size:1.2rem;color:#1979c3;margin:0;padding:0;list-style:none none}.example-breadcrumbs-2 .items>li{display:inline-block;vertical-align:top}.example-breadcrumbs-2 .item{margin:0}.example-breadcrumbs-2 a{background-color:#ccc;background-repeat:repeat-x;background-image:-webkit-linear-gradient(top, #f4f4f4 0, #ccc 100%);background-image:linear-gradient(to bottom, #f4f4f4 0, #ccc 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#f4f4f4', endColorstr='#cccccc', GradientType=0);border:1px solid #ccc;display:inline-block;padding:3px 5px;color:#333;text-decoration:none}.example-breadcrumbs-2 a:visited{background-color:false;background-repeat:repeat-x;background-image:-webkit-linear-gradient(top,false 0,false 100%);background-image:linear-gradient(to bottom,false 0,false 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='false', endColorstr='false', GradientType=0);color:#333;text-decoration:none}.example-breadcrumbs-2 a:hover{background-color:#f4f4f4;background-repeat:repeat-x;background-image:-webkit-linear-gradient(top, #ccc 0, #f4f4f4 100%);background-image:linear-gradient(to bottom, #ccc 0, #f4f4f4 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#cccccc', endColorstr='#f4f4f4', GradientType=0);color:#333;text-decoration:none}.example-breadcrumbs-2 a:active{background-color:false;background-repeat:repeat-x;background-image:-webkit-linear-gradient(top,false 0,false 100%);background-image:linear-gradient(to bottom,false 0,false 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='false', endColorstr='false', GradientType=0);color:#333;text-decoration:none}.example-breadcrumbs-2 strong{background-color:#ff5501;background-repeat:repeat-x;background-image:-webkit-linear-gradient(top, #f7b32e 0, #ff5501 100%);background-image:linear-gradient(to bottom, #f7b32e 0, #ff5501 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#f7b32e', endColorstr='#ff5501', GradientType=0);border:1px solid #d04b0a;display:inline-block;padding:3px 5px;font-weight:400}.example-breadcrumbs-2 .item:not(:last-child){display:inline-block;text-decoration:none}.example-breadcrumbs-2 .item:not(:last-child):after{font-family:'icons-blank-theme';content:'\e608';font-size:24px;line-height:18px;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.example-breadcrumbs-3{margin:0 0 20px}.example-breadcrumbs-3 .items{font-size:1.2rem;color:#333;margin:0;padding:0;list-style:none none}.example-breadcrumbs-3 .items>li{display:inline-block;vertical-align:top}.example-breadcrumbs-3 .item{margin:0}.example-breadcrumbs-3 a{background:#f4f4f4;display:inline-block;padding:3px 5px;color:#333;text-decoration:none}.example-breadcrumbs-3 a:visited{color:#333;text-decoration:none}.example-breadcrumbs-3 a:hover{background:#ccc;color:#333;text-decoration:none}.example-breadcrumbs-3 a:active{color:#333;text-decoration:none}.example-breadcrumbs-3 strong{background:#e7e7e7;display:inline-block;padding:3px 5px;font-weight:400}.example-breadcrumbs-3 .item:not(:last-child){display:inline-block;text-decoration:none}.example-breadcrumbs-3 .item:not(:last-child):after{font-family:'icons-blank-theme';content:'\e608';font-size:24px;line-height:18px;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.example-breadcrumbs-3 .item a{position:relative;margin:0 11px 0 0}.example-breadcrumbs-3 .item a:after{width:0;height:0;border:12px solid transparent;border-left-color:#f4f4f4;content:"";position:absolute;display:block;top:0;right:-23px}.example-breadcrumbs-3 .item a:hover:after{border-color:transparent transparent transparent #ccc}button{background-image:none;background:#f2f2f2;padding:7px 15px;color:#333;border:1px solid #cdcdcd;cursor:pointer;display:inline-block;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;font-size:1.4rem;font-weight:700;line-height:1.6rem;box-sizing:border-box;margin:3px;vertical-align:middle;border-radius:3px}button:focus,button:active{background:#e2e2e2;border:1px solid #cdcdcd;color:#333}button:hover{background:#e2e2e2;border:1px solid #cdcdcd;color:#555}button.disabled,button[disabled],fieldset[disabled] button{cursor:default;pointer-events:none;opacity:.5}button:active,button:focus{box-shadow:inset 0 2px 1px rgba(0,0,0,.12)}.example-button-1.example-button-2{line-height:2.2rem;padding:14px 17px;font-size:1.8rem}.example-button-1.example-button-3{line-height:1.2rem;padding:5px 8px;font-size:1.1rem;border-radius:0;color:#000}.example-button-1.example-button-3:hover,.example-button-1.example-button-3.active{color:#000}.example-button-10{background:#f2f2f2;padding:7px 15px;color:#333;border:1px solid #cdcdcd;cursor:pointer;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;font-size:1.4rem;font-weight:700;line-height:1.6rem;box-sizing:border-box;margin:3px;vertical-align:middle;display:inline-block;background-image:none;background:0;border:0;margin:0;padding:0;-moz-box-sizing:content-box;box-shadow:none;text-shadow:none;text-decoration:none;line-height:inherit;font-weight:400}.example-button-10>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-button-10:before{font-family:'icons-blank-theme';content:'\e611';font-size:22px;line-height:22px;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.example-button-10:hover:before{color:inherit}.example-button-10:active:before{color:inherit}.example-button-10:focus,.example-button-10:active{background:#e2e2e2;border:1px solid #cdcdcd;color:#333}.example-button-10:hover{background:#e2e2e2;border:1px solid #cdcdcd;color:#555}.example-button-10.disabled,.example-button-10[disabled],fieldset[disabled] .example-button-10{cursor:default;pointer-events:none;opacity:.5}.example-button-10:focus,.example-button-10:active{background:0;border:0}.example-button-10:hover{background:0;border:0}.example-button-10.disabled,.example-button-10[disabled],fieldset[disabled] .example-button-10{cursor:not-allowed;pointer-events:none;opacity:.5}.example-button-11{background-image:none;background:#f2f2f2;padding:7px 15px;color:#333;border:1px solid #cdcdcd;cursor:pointer;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;font-size:1.4rem;font-weight:700;line-height:1.6rem;box-sizing:border-box;margin:3px;vertical-align:middle;display:inline-block;text-decoration:none}.example-button-11:before{font-family:'icons-blank-theme';content:'\e611';font-size:22px;line-height:22px;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.example-button-11:hover:before{color:inherit}.example-button-11:active:before{color:inherit}.example-button-11:focus,.example-button-11:active{background:#e2e2e2;border:1px solid #cdcdcd;color:#333}.example-button-11:hover{background:#e2e2e2;border:1px solid #cdcdcd;color:#555}.example-button-11.disabled,.example-button-11[disabled],fieldset[disabled] .example-button-11{cursor:default;pointer-events:none;opacity:.5}.example-button-12{background-image:none;background:#f2f2f2;padding:7px 15px;color:#333;border:1px solid #cdcdcd;cursor:pointer;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;font-size:1.4rem;font-weight:700;line-height:1.6rem;box-sizing:border-box;margin:3px;vertical-align:middle;display:inline-block;text-decoration:none}.example-button-12:after{font-family:'icons-blank-theme';content:'\e611';font-size:22px;line-height:22px;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.example-button-12:hover:after{color:inherit}.example-button-12:active:after{color:inherit}.example-button-12:focus,.example-button-12:active{background:#e2e2e2;border:1px solid #cdcdcd;color:#333}.example-button-12:hover{background:#e2e2e2;border:1px solid #cdcdcd;color:#555}.example-button-12.disabled,.example-button-12[disabled],fieldset[disabled] .example-button-12{cursor:default;pointer-events:none;opacity:.5}.example-button-13{background-image:none;background:#f2f2f2;padding:7px 15px;width:100px;color:#333;border:1px solid #cdcdcd;cursor:pointer;display:inline-block;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;font-size:1.4rem;font-weight:700;line-height:1.6rem;box-sizing:border-box;margin:3px;vertical-align:middle}.example-button-13:focus,.example-button-13:active{background:#e2e2e2;border:1px solid #cdcdcd;color:#333}.example-button-13:hover{background:#e2e2e2;border:1px solid #cdcdcd;color:#555}.example-button-13.disabled,.example-button-13[disabled],fieldset[disabled] .example-button-13{cursor:default;pointer-events:none;opacity:.5}.example-button-4{background-image:none;background:#1979c3;padding:7px 15px;color:#fff;border:1px solid #1979c3;cursor:pointer;display:inline-block;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;font-size:1.4rem;font-weight:700;box-sizing:border-box;margin:3px;vertical-align:middle}.example-button-4:focus,.example-button-4:active{background:#006bb4;border:1px solid #006bb4;color:#fff}.example-button-4:hover{background:#006bb4;border:1px solid #006bb4;color:#fff}.example-button-4.disabled,.example-button-4[disabled],fieldset[disabled] .example-button-4{cursor:default;pointer-events:none;opacity:.5}.example-button-4:active{box-shadow:inset 0 3px 1px rgba(0,0,0,.29)}.example-button-4.example-button-5{line-height:2.2rem;padding:7px 35px;font-size:1.8rem}.example-button-4.example-button-6{line-height:1.2rem;padding:5px 8px;font-size:1.1rem;color:#fff}.example-button-4.example-button-6:hover,.example-button-4.example-button-6.active{color:#fff}.example-button-7{background-image:none;background:#f2f2f2;background-color:#006bb4;background-repeat:repeat-x;background-image:-webkit-linear-gradient(top, #1979c3 0, #006bb4 100%);background-image:linear-gradient(to bottom, #1979c3 0, #006bb4 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#1979c3', endColorstr='#006bb4', GradientType=0);padding:7px 15px;color:#fff;border:1px solid #1979c3;cursor:pointer;display:inline-block;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;font-size:1.4rem;font-weight:700;line-height:1.6rem;box-sizing:border-box;margin:3px;vertical-align:middle;border-radius:3px}.example-button-7:focus,.example-button-7:active{background:#e2e2e2;background-color:#006bb4;background-repeat:repeat-x;background-image:-webkit-linear-gradient(top, #006bb4 0, #006bb4 100%);background-image:linear-gradient(to bottom, #006bb4 0, #006bb4 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#006bb4', endColorstr='#006bb4', GradientType=0);border:1px solid #006bb4;color:#fff}.example-button-7:hover{background:#e2e2e2;background-color:#1979c3;background-repeat:repeat-x;background-image:-webkit-linear-gradient(top, #006bb4 0, #1979c3 100%);background-image:linear-gradient(to bottom, #006bb4 0, #1979c3 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#006bb4', endColorstr='#1979c3', GradientType=0);border:1px solid #006bb4;color:#fff}.example-button-7.disabled,.example-button-7[disabled],fieldset[disabled] .example-button-7{cursor:default;pointer-events:none;opacity:.5}.example-button-7:active{box-shadow:inset 0 3px 1px rgba(0,0,0,.29)}.example-button-8{background:0;border:0;display:inline;line-height:1.42857143;margin:0;padding:0;color:#1979c3;text-decoration:none;font-weight:400}.example-button-8:visited{color:#800080;text-decoration:none}.example-button-8:hover{color:#006bb4;text-decoration:underline}.example-button-8:active{color:#ff5501;text-decoration:underline}.example-button-8:hover{color:#006bb4}.example-button-8:hover,.example-button-8:active,.example-button-8:focus{background:0;border:0}.example-button-8.disabled,.example-button-8[disabled],fieldset[disabled] .example-button-8{color:#1979c3;text-decoration:underline;cursor:default;pointer-events:none;opacity:.5}.example-button-8:active{box-shadow:none}.example-button-9{text-decoration:none;background-image:none;background:#f2f2f2;padding:7px 15px;color:#333;border:1px solid #cdcdcd;cursor:pointer;display:inline-block;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;font-size:1.4rem;font-weight:700;line-height:1.6rem;box-sizing:border-box;margin:0;vertical-align:middle;margin:3px;border-radius:3px;font-weight:700}.example-button-9:hover,.example-button-9:active,.example-button-9:focus{text-decoration:none}.example-button-9:focus,.example-button-9:active{background:#e2e2e2;border:1px solid #cdcdcd;color:#333}.example-button-9:hover{background:#e2e2e2;border:1px solid #cdcdcd;color:#555}.example-button-9.disabled,.example-button-9[disabled],fieldset[disabled] .example-button-9{cursor:default;pointer-events:none;opacity:.5}.example-button-9:active{box-shadow:inset 0 3px 1px rgba(0,0,0,.29)}.example-button-14{background-image:none;background:0;border:0;margin:0;padding:0;-moz-box-sizing:content-box;box-shadow:none;text-shadow:none;text-decoration:none;line-height:inherit;font-weight:400}.example-button-14:focus,.example-button-14:active{background:0;border:0}.example-button-14:hover{background:0;border:0}.example-button-14.disabled,.example-button-14[disabled],fieldset[disabled] .example-button-14{cursor:not-allowed;pointer-events:none;opacity:.5}.example-button-15{background-image:none;background:#1979c3;padding:7px 15px;color:#fff;border:1px solid #1979c3;cursor:pointer;display:inline-block;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;font-size:1.4rem;font-weight:700;box-sizing:border-box;vertical-align:middle;background:#f2f2f2;color:#333;border:1px solid #cdcdcd}.example-button-15:focus,.example-button-15:active{background:#006bb4;border:1px solid #006bb4;color:#fff}.example-button-15:hover{background:#006bb4;border:1px solid #006bb4;color:#fff}.example-button-15.disabled,.example-button-15[disabled],fieldset[disabled] .example-button-15{cursor:default;pointer-events:none;opacity:.5}.example-button-15:focus,.example-button-15:active{background:#e2e2e2;color:#333;border:1px solid #cdcdcd}.example-button-15:hover{background:#e2e2e2;color:#555;border:1px solid #cdcdcd}.example-button-17{line-height:2.2rem;padding:14px 17px;font-size:1.8rem;font-size:1.4rem;line-height:1.6rem;padding:7px 15px}.example-button-18{font-size:1rem;line-height:1.2rem;padding:4px 10px}.example-dropdown-1{display:inline-block;position:relative}.example-dropdown-1:before,.example-dropdown-1:after{content:"";display:table}.example-dropdown-1:after{clear:both}.example-dropdown-1 .action.toggle{cursor:pointer;display:inline-block;text-decoration:none}.example-dropdown-1 .action.toggle:after{font-family:'icons-blank-theme';content:'\e607';font-size:22px;line-height:22px;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.example-dropdown-1 .action.toggle:hover:after{color:inherit}.example-dropdown-1 .action.toggle:active:after{color:inherit}.example-dropdown-1 .action.toggle.active{display:inline-block;text-decoration:none}.example-dropdown-1 .action.toggle.active:after{font-family:'icons-blank-theme';content:'\e618';font-size:22px;line-height:22px;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.example-dropdown-1 .action.toggle.active:hover:after{color:inherit}.example-dropdown-1 .action.toggle.active:active:after{color:inherit}.example-dropdown-1 ul.dropdown{margin:0;padding:0;list-style:none none;box-sizing:border-box;background:#fff;border:1px solid #bbb;position:absolute;z-index:100;top:100%;min-width:100%;margin-top:4px;display:none;box-shadow:0 3px 3px rgba(0,0,0,.15)}.example-dropdown-1 ul.dropdown li{margin:0;padding:3px 5px}.example-dropdown-1 ul.dropdown li:hover{background:#e8e8e8;cursor:pointer}.example-dropdown-1 ul.dropdown:before,.example-dropdown-1 ul.dropdown:after{content:"";position:absolute;display:block;width:0;height:0;border-bottom-style:solid}.example-dropdown-1 ul.dropdown:before{z-index:99;border:solid 6px;border-color:transparent transparent #fff transparent}.example-dropdown-1 ul.dropdown:after{z-index:98;border:solid 7px;border-color:transparent transparent #bbb transparent}.example-dropdown-1 ul.dropdown:before{top:-12px;left:10px}.example-dropdown-1 ul.dropdown:after{top:-14px;left:9px}.example-dropdown-1.active{overflow:visible}.example-dropdown-1.active ul.dropdown{display:block}.example-dropdown-2{display:inline-block;position:relative}.example-dropdown-2:before,.example-dropdown-2:after{content:"";display:table}.example-dropdown-2:after{clear:both}.example-dropdown-2 .action.toggle{cursor:pointer;display:inline-block;text-decoration:none}.example-dropdown-2 .action.toggle:after{font-family:'icons-blank-theme';content:'\e607';font-size:22px;line-height:22px;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.example-dropdown-2 .action.toggle:hover:after{color:inherit}.example-dropdown-2 .action.toggle:active:after{color:inherit}.example-dropdown-2 .action.toggle.active{display:inline-block;text-decoration:none}.example-dropdown-2 .action.toggle.active:after{font-family:'icons-blank-theme';content:'\e618';font-size:22px;line-height:22px;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.example-dropdown-2 .action.toggle.active:hover:after{color:inherit}.example-dropdown-2 .action.toggle.active:active:after{color:inherit}.example-dropdown-2 ul.dropdown{margin:0;padding:0;list-style:none none;box-sizing:border-box;background:#fff;border:1px solid #bbb;position:absolute;z-index:100;top:100%;min-width:100%;margin-top:4px;display:none;box-shadow:0 3px 3px rgba(0,0,0,.15)}.example-dropdown-2 ul.dropdown li{margin:0;padding:3px 5px}.example-dropdown-2 ul.dropdown li:hover{background:#e8e8e8;cursor:pointer}.example-dropdown-2 ul.dropdown:before,.example-dropdown-2 ul.dropdown:after{content:"";position:absolute;display:block;width:0;height:0;border-bottom-style:solid}.example-dropdown-2 ul.dropdown:before{z-index:99;border:solid 6px;border-color:transparent transparent #fff transparent}.example-dropdown-2 ul.dropdown:after{z-index:98;border:solid 7px;border-color:transparent transparent #bbb transparent}.example-dropdown-2 ul.dropdown:before{top:-12px;left:10px}.example-dropdown-2 ul.dropdown:after{top:-14px;left:9px}.example-dropdown-2.active{overflow:visible}.example-dropdown-2.active ul.dropdown{display:block}.example-dropdown-3{display:inline-block;position:relative}.example-dropdown-3:before,.example-dropdown-3:after{content:"";display:table}.example-dropdown-3:after{clear:both}.example-dropdown-3 .action.toggle{cursor:pointer;display:inline-block;text-decoration:none}.example-dropdown-3 .action.toggle:before{font-family:'icons-blank-theme';content:'\e61c';font-size:22px;line-height:1;color:red;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.example-dropdown-3 .action.toggle:hover:before{color:red}.example-dropdown-3 .action.toggle:active:before{color:inherit}.example-dropdown-3 .action.toggle.active{display:inline-block;text-decoration:none}.example-dropdown-3 .action.toggle.active:before{font-family:'icons-blank-theme';content:'\e60f';font-size:22px;line-height:1;color:red;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.example-dropdown-3 .action.toggle.active:hover:before{color:red}.example-dropdown-3 .action.toggle.active:active:before{color:inherit}.example-dropdown-3 ul.dropdown{margin:0;padding:0;list-style:none none;box-sizing:border-box;background:#fff;border:1px solid #bbb;position:absolute;z-index:100;top:100%;min-width:100%;margin-top:4px;display:none;box-shadow:0 3px 3px rgba(0,0,0,.15)}.example-dropdown-3 ul.dropdown li{margin:0;padding:3px 5px}.example-dropdown-3 ul.dropdown li:hover{background:#e8e8e8;cursor:pointer}.example-dropdown-3 ul.dropdown:before,.example-dropdown-3 ul.dropdown:after{content:"";position:absolute;display:block;width:0;height:0;border-bottom-style:solid}.example-dropdown-3 ul.dropdown:before{z-index:99;border:solid 6px;border-color:transparent transparent #fff transparent}.example-dropdown-3 ul.dropdown:after{z-index:98;border:solid 7px;border-color:transparent transparent #bbb transparent}.example-dropdown-3 ul.dropdown:before{top:-12px;left:10px}.example-dropdown-3 ul.dropdown:after{top:-14px;left:9px}.example-dropdown-3.active{overflow:visible}.example-dropdown-3.active ul.dropdown{display:block}.example-dropdown-5{display:inline-block;position:relative}.example-dropdown-5:before,.example-dropdown-5:after{content:"";display:table}.example-dropdown-5:after{clear:both}.example-dropdown-5 .action.toggle{cursor:pointer;display:inline-block;text-decoration:none}.example-dropdown-5 .action.toggle:after{font-family:'icons-blank-theme';content:'\e607';font-size:22px;line-height:1;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.example-dropdown-5 .action.toggle:hover:after{color:inherit}.example-dropdown-5 .action.toggle:active:after{color:inherit}.example-dropdown-5 .action.toggle.active{display:inline-block;text-decoration:none}.example-dropdown-5 .action.toggle.active:after{font-family:'icons-blank-theme';content:'\e618';font-size:22px;line-height:1;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.example-dropdown-5 .action.toggle.active:hover:after{color:inherit}.example-dropdown-5 .action.toggle.active:active:after{color:inherit}.example-dropdown-5 ul.dropdown{margin:0;padding:0;list-style:none none;box-sizing:border-box;background:#eef1f3;border:2px solid #ced1d4;position:absolute;z-index:100;top:100%;min-width:100%;margin-top:4px;display:none}.example-dropdown-5 ul.dropdown li{margin:0;padding:10px;border-top:2px solid #e8eaed}.example-dropdown-5 ul.dropdown li:first-child{border:0}.example-dropdown-5 ul.dropdown li:hover{background:#d8e3e3;cursor:pointer}.example-dropdown-5.active{overflow:visible}.example-dropdown-5.active ul.dropdown{display:block}.example-dropdown-6{display:inline-block;position:relative}.example-dropdown-6:before,.example-dropdown-6:after{content:"";display:table}.example-dropdown-6:after{clear:both}.example-dropdown-6 .action.split{float:left;margin:0}.example-dropdown-6 .action.toggle{float:right;margin:0}.example-dropdown-6 button.action.split{border-top-right-radius:0;border-bottom-right-radius:0}.example-dropdown-6 button+.action.toggle{border-left:0;border-top-left-radius:0;border-bottom-left-radius:0}.example-dropdown-6 .action.toggle{padding:4px 5px;display:inline-block;text-decoration:none}.example-dropdown-6 .action.toggle>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-dropdown-6 .action.toggle:after{font-family:'icons-blank-theme';content:'\e607';font-size:22px;line-height:22px;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.example-dropdown-6 .action.toggle:hover:after{color:inherit}.example-dropdown-6 .action.toggle:active:after{color:inherit}.example-dropdown-6 .action.toggle.active{display:inline-block;text-decoration:none}.example-dropdown-6 .action.toggle.active>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-dropdown-6 .action.toggle.active:after{font-family:'icons-blank-theme';content:'\e618';font-size:22px;line-height:22px;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.example-dropdown-6 .action.toggle.active:hover:after{color:inherit}.example-dropdown-6 .action.toggle.active:active:after{color:inherit}.example-dropdown-6 ul.dropdown{margin:0;padding:0;list-style:none none;box-sizing:border-box;background:#fff;border:1px solid #bbb;position:absolute;z-index:100;top:100%;min-width:100%;margin-top:4px;display:none;box-shadow:0 3px 3px rgba(0,0,0,.15)}.example-dropdown-6 ul.dropdown li{margin:0;padding:3px 5px}.example-dropdown-6 ul.dropdown li:hover{background:#e8e8e8;cursor:pointer}.example-dropdown-6 ul.dropdown:before,.example-dropdown-6 ul.dropdown:after{content:"";position:absolute;display:block;width:0;height:0;border-bottom-style:solid}.example-dropdown-6 ul.dropdown:before{z-index:99;border:solid 6px;border-color:transparent transparent #fff transparent}.example-dropdown-6 ul.dropdown:after{z-index:98;border:solid 7px;border-color:transparent transparent #bbb transparent}.example-dropdown-6 ul.dropdown:before{top:-12px;right:10px}.example-dropdown-6 ul.dropdown:after{top:-14px;right:9px}.example-dropdown-6.active{overflow:visible}.example-dropdown-6.active ul.dropdown{display:block}.split.example-dropdown-7{display:inline-block;position:relative}.split.example-dropdown-7:before,.split.example-dropdown-7:after{content:"";display:table}.split.example-dropdown-7:after{clear:both}.split.example-dropdown-7 .action.split{float:left;margin:0}.split.example-dropdown-7 .action.toggle{float:right;margin:0}.split.example-dropdown-7 .action.toggle{padding:4px 5px;display:inline-block;text-decoration:none}.split.example-dropdown-7 .action.toggle>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.split.example-dropdown-7 .action.toggle:after{font-family:'icons-blank-theme';content:'\e607';font-size:22px;line-height:22px;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.split.example-dropdown-7 .action.toggle:hover:after{color:inherit}.split.example-dropdown-7 .action.toggle:active:after{color:inherit}.split.example-dropdown-7 .action.toggle.active{display:inline-block;text-decoration:none}.split.example-dropdown-7 .action.toggle.active>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.split.example-dropdown-7 .action.toggle.active:after{font-family:'icons-blank-theme';content:'\e618';font-size:22px;line-height:22px;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.split.example-dropdown-7 .action.toggle.active:hover:after{color:inherit}.split.example-dropdown-7 .action.toggle.active:active:after{color:inherit}.split.example-dropdown-7 ul.dropdown{margin:0;padding:0;list-style:none none;box-sizing:border-box;background:#fff;border:1px solid #bbb;position:absolute;z-index:100;top:100%;min-width:100%;margin-top:4px;display:none;box-shadow:0 3px 3px rgba(0,0,0,.15)}.split.example-dropdown-7 ul.dropdown li{margin:0;padding:3px 5px}.split.example-dropdown-7 ul.dropdown li:hover{background:#e8e8e8;cursor:pointer}.split.example-dropdown-7 ul.dropdown:before,.split.example-dropdown-7 ul.dropdown:after{content:"";position:absolute;display:block;width:0;height:0;border-bottom-style:solid}.split.example-dropdown-7 ul.dropdown:before{z-index:99;border:solid 6px;border-color:transparent transparent #fff transparent}.split.example-dropdown-7 ul.dropdown:after{z-index:98;border:solid 7px;border-color:transparent transparent #bbb transparent}.split.example-dropdown-7 ul.dropdown:before{top:-12px;right:10px}.split.example-dropdown-7 ul.dropdown:after{top:-14px;right:9px}.split.example-dropdown-7.active{overflow:visible}.split.example-dropdown-7.active ul.dropdown{display:block}.example-dropdown-8{display:inline-block;position:relative}.example-dropdown-8:before,.example-dropdown-8:after{content:"";display:table}.example-dropdown-8:after{clear:both}.example-dropdown-8 .action.split{float:left;margin:0}.example-dropdown-8 .action.toggle{float:right;margin:0}.example-dropdown-8 button.action.split{border-top-right-radius:0;border-bottom-right-radius:0}.example-dropdown-8 button+.action.toggle{border-left:0;border-top-left-radius:0;border-bottom-left-radius:0}.example-dropdown-8 .action.toggle{padding:4px 5px;display:inline-block;text-decoration:none}.example-dropdown-8 .action.toggle>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-dropdown-8 .action.toggle:after{font-family:'icons-blank-theme';content:'\e607';font-size:22px;line-height:22px;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.example-dropdown-8 .action.toggle:hover:after{color:inherit}.example-dropdown-8 .action.toggle:active:after{color:inherit}.example-dropdown-8 .action.toggle.active{display:inline-block;text-decoration:none}.example-dropdown-8 .action.toggle.active>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-dropdown-8 .action.toggle.active:after{font-family:'icons-blank-theme';content:'\e618';font-size:22px;line-height:22px;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.example-dropdown-8 .action.toggle.active:hover:after{color:inherit}.example-dropdown-8 .action.toggle.active:active:after{color:inherit}.example-dropdown-8 ul.dropdown{margin:0;padding:0;list-style:none none;box-sizing:border-box;background:#fff;border:1px solid #bbb;position:absolute;z-index:100;top:100%;min-width:100%;margin-top:4px;display:none;box-shadow:0 3px 3px rgba(0,0,0,.15)}.example-dropdown-8 ul.dropdown li{margin:0;padding:3px 5px}.example-dropdown-8 ul.dropdown li:hover{background:#e8e8e8;cursor:pointer}.example-dropdown-8 ul.dropdown:before,.example-dropdown-8 ul.dropdown:after{content:"";position:absolute;display:block;width:0;height:0;border-bottom-style:solid}.example-dropdown-8 ul.dropdown:before{z-index:99;border:solid 6px;border-color:transparent transparent #fff transparent}.example-dropdown-8 ul.dropdown:after{z-index:98;border:solid 7px;border-color:transparent transparent #bbb transparent}.example-dropdown-8 ul.dropdown:before{top:-12px;right:10px}.example-dropdown-8 ul.dropdown:after{top:-14px;right:9px}.example-dropdown-8.active{overflow:visible}.example-dropdown-8.active ul.dropdown{display:block}.example-dropdown-9{display:inline-block;position:relative}.example-dropdown-9 .action.split,.example-dropdown-9 .action.toggle{line-height:2.2rem;padding:14px 17px;font-size:1.8rem}.example-dropdown-9:before,.example-dropdown-9:after{content:"";display:table}.example-dropdown-9:after{clear:both}.example-dropdown-9 .action.split{float:left;margin:0}.example-dropdown-9 .action.toggle{float:right;margin:0}.example-dropdown-9 button.action.split{border-top-right-radius:0;border-bottom-right-radius:0}.example-dropdown-9 button+.action.toggle{border-left:0;border-top-left-radius:0;border-bottom-left-radius:0}.example-dropdown-9 .action.toggle{padding:4px 5px;display:inline-block;text-decoration:none}.example-dropdown-9 .action.toggle>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-dropdown-9 .action.toggle:after{font-family:'icons-blank-theme';content:'\e607';font-size:22px;line-height:22px;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.example-dropdown-9 .action.toggle:hover:after{color:inherit}.example-dropdown-9 .action.toggle:active:after{color:inherit}.example-dropdown-9 .action.toggle.active{display:inline-block;text-decoration:none}.example-dropdown-9 .action.toggle.active>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-dropdown-9 .action.toggle.active:after{font-family:'icons-blank-theme';content:'\e618';font-size:22px;line-height:22px;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.example-dropdown-9 .action.toggle.active:hover:after{color:inherit}.example-dropdown-9 .action.toggle.active:active:after{color:inherit}.example-dropdown-9 ul.dropdown{margin:0;padding:0;list-style:none none;box-sizing:border-box;background:#fff;border:1px solid #bbb;position:absolute;z-index:100;top:100%;min-width:100%;margin-top:4px;display:none;box-shadow:0 3px 3px rgba(0,0,0,.15)}.example-dropdown-9 ul.dropdown li{margin:0;padding:3px 5px}.example-dropdown-9 ul.dropdown li:hover{background:#e8e8e8;cursor:pointer}.example-dropdown-9 ul.dropdown:before,.example-dropdown-9 ul.dropdown:after{content:"";position:absolute;display:block;width:0;height:0;border-bottom-style:solid}.example-dropdown-9 ul.dropdown:before{z-index:99;border:solid 6px;border-color:transparent transparent #fff transparent}.example-dropdown-9 ul.dropdown:after{z-index:98;border:solid 7px;border-color:transparent transparent #bbb transparent}.example-dropdown-9 ul.dropdown:before{top:-12px;right:10px}.example-dropdown-9 ul.dropdown:after{top:-14px;right:9px}.example-dropdown-9.active{overflow:visible}.example-dropdown-9.active ul.dropdown{display:block}.example-dropdown-10{display:inline-block;position:relative}.example-dropdown-10 .action.split,.example-dropdown-10 .action.toggle{line-height:1.2rem;padding:5px 8px;font-size:1.1rem}.example-dropdown-10:before,.example-dropdown-10:after{content:"";display:table}.example-dropdown-10:after{clear:both}.example-dropdown-10 .action.split{float:left;margin:0}.example-dropdown-10 .action.toggle{float:right;margin:0}.example-dropdown-10 button.action.split{border-top-right-radius:0;border-bottom-right-radius:0}.example-dropdown-10 button+.action.toggle{border-left:0;border-top-left-radius:0;border-bottom-left-radius:0}.example-dropdown-10 .action.toggle{padding:4px 5px;display:inline-block;text-decoration:none}.example-dropdown-10 .action.toggle>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-dropdown-10 .action.toggle:after{font-family:'icons-blank-theme';content:'\e607';font-size:22px;line-height:22px;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.example-dropdown-10 .action.toggle:hover:after{color:inherit}.example-dropdown-10 .action.toggle:active:after{color:inherit}.example-dropdown-10 .action.toggle.active{display:inline-block;text-decoration:none}.example-dropdown-10 .action.toggle.active>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-dropdown-10 .action.toggle.active:after{font-family:'icons-blank-theme';content:'\e618';font-size:22px;line-height:22px;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.example-dropdown-10 .action.toggle.active:hover:after{color:inherit}.example-dropdown-10 .action.toggle.active:active:after{color:inherit}.example-dropdown-10 ul.dropdown{margin:0;padding:0;list-style:none none;box-sizing:border-box;background:#fff;border:1px solid #bbb;position:absolute;z-index:100;top:100%;min-width:100%;margin-top:4px;display:none;box-shadow:0 3px 3px rgba(0,0,0,.15)}.example-dropdown-10 ul.dropdown li{margin:0;padding:3px 5px}.example-dropdown-10 ul.dropdown li:hover{background:#e8e8e8;cursor:pointer}.example-dropdown-10 ul.dropdown:before,.example-dropdown-10 ul.dropdown:after{content:"";position:absolute;display:block;width:0;height:0;border-bottom-style:solid}.example-dropdown-10 ul.dropdown:before{z-index:99;border:solid 6px;border-color:transparent transparent #fff transparent}.example-dropdown-10 ul.dropdown:after{z-index:98;border:solid 7px;border-color:transparent transparent #bbb transparent}.example-dropdown-10 ul.dropdown:before{top:-12px;right:10px}.example-dropdown-10 ul.dropdown:after{top:-14px;right:9px}.example-dropdown-10.active{overflow:visible}.example-dropdown-10.active ul.dropdown{display:block}.example-dropdown-11{display:inline-block;position:relative}.example-dropdown-11:before,.example-dropdown-11:after{content:"";display:table}.example-dropdown-11:after{clear:both}.example-dropdown-11 .action.split{float:right;margin:0}.example-dropdown-11 .action.toggle{float:left;margin:0}.example-dropdown-11 button.action.split{border-top-left-radius:0;border-bottom-left-radius:0}.example-dropdown-11 button+.action.toggle{border-right:0;border-top-right-radius:0;border-bottom-right-radius:0}.example-dropdown-11 .action.toggle{padding:4px 5px;display:inline-block;text-decoration:none}.example-dropdown-11 .action.toggle>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-dropdown-11 .action.toggle:before{font-family:'icons-blank-theme';content:'\e61c';font-size:22px;line-height:22px;color:red;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.example-dropdown-11 .action.toggle:hover:before{color:red}.example-dropdown-11 .action.toggle:active:before{color:inherit}.example-dropdown-11 .action.toggle.active{display:inline-block;text-decoration:none}.example-dropdown-11 .action.toggle.active>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-dropdown-11 .action.toggle.active:before{font-family:'icons-blank-theme';content:'\e60f';font-size:22px;line-height:22px;color:red;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.example-dropdown-11 .action.toggle.active:hover:before{color:red}.example-dropdown-11 .action.toggle.active:active:before{color:inherit}.example-dropdown-11 ul.dropdown{margin:0;padding:0;list-style:none none;box-sizing:border-box;background:#fff;border:1px solid #bbb;position:absolute;z-index:100;top:100%;min-width:100%;margin-top:4px;display:none;box-shadow:0 3px 3px rgba(0,0,0,.15)}.example-dropdown-11 ul.dropdown li{margin:0;padding:3px 5px}.example-dropdown-11 ul.dropdown li:hover{background:#e8e8e8;cursor:pointer}.example-dropdown-11 ul.dropdown:before,.example-dropdown-11 ul.dropdown:after{content:"";position:absolute;display:block;width:0;height:0;border-bottom-style:solid}.example-dropdown-11 ul.dropdown:before{z-index:99;border:solid 6px;border-color:transparent transparent #fff transparent}.example-dropdown-11 ul.dropdown:after{z-index:98;border:solid 7px;border-color:transparent transparent #bbb transparent}.example-dropdown-11 ul.dropdown:before{top:-12px;right:10px}.example-dropdown-11 ul.dropdown:after{top:-14px;right:9px}.example-dropdown-11.active{overflow:visible}.example-dropdown-11.active ul.dropdown{display:block}.example-dropdown-12{display:inline-block;position:relative}.example-dropdown-12:before,.example-dropdown-12:after{content:"";display:table}.example-dropdown-12:after{clear:both}.example-dropdown-12 .action.split{float:left;margin:0}.example-dropdown-12 .action.toggle{float:right;margin:0}.example-dropdown-12 button.action.split{border-top-right-radius:0;border-bottom-right-radius:0}.example-dropdown-12 button+.action.toggle{border-left:0;border-top-left-radius:0;border-bottom-left-radius:0}.example-dropdown-12 .action.toggle{padding:4px 5px;display:inline-block;text-decoration:none}.example-dropdown-12 .action.toggle>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-dropdown-12 .action.toggle:after{font-family:'icons-blank-theme';content:'\e607';font-size:22px;line-height:22px;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.example-dropdown-12 .action.toggle:hover:after{color:inherit}.example-dropdown-12 .action.toggle:active:after{color:inherit}.example-dropdown-12 .action.toggle.active{display:inline-block;text-decoration:none}.example-dropdown-12 .action.toggle.active>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-dropdown-12 .action.toggle.active:after{font-family:'icons-blank-theme';content:'\e618';font-size:22px;line-height:22px;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.example-dropdown-12 .action.toggle.active:hover:after{color:inherit}.example-dropdown-12 .action.toggle.active:active:after{color:inherit}.example-dropdown-12 ul.dropdown{margin:0;padding:0;list-style:none none;box-sizing:border-box;background:#eef1f3;border:2px solid #ced1d4;position:absolute;z-index:100;top:100%;min-width:100%;margin-top:4px;display:none}.example-dropdown-12 ul.dropdown li{margin:0;padding:10px;border-top:2px solid #e8eaed}.example-dropdown-12 ul.dropdown li:first-child{border:0}.example-dropdown-12 ul.dropdown li:hover{background:#d8e3e3;cursor:pointer}.example-dropdown-12.active{overflow:visible}.example-dropdown-12.active ul.dropdown{display:block}.example-form-1 .example-form-1-fieldset{padding:0;margin:0 0 40px;border:0;letter-spacing:-.31em}.example-form-1 .example-form-1-fieldset>*{letter-spacing:normal}.example-form-1 .example-form-1-fieldset>.legend{margin:0 0 25px;padding:0;font-size:2rem;line-height:1.2;box-sizing:border-box;float:left}.example-form-1 .example-form-1-fieldset>.legend+br{display:block;visibility:hidden;height:0;overflow:hidden;clear:both}.example-form-1 .example-form-1-fieldset:after{content:attr(data-hasrequired);display:block;font-size:1.2rem;color:#e02b27;margin:10px 0 0;letter-spacing:normal;word-spacing:normal}.example-form-1 .example-form-1-fieldset>.field{margin:0 0 20px}.example-form-1 .example-form-1-fieldset>.field>.label{display:inline-block;margin:0 0 5px}.example-form-1 .example-form-1-fieldset>.field:last-child{margin-bottom:0}.example-form-1 .example-form-1-fieldset>.field>.label{font-weight:700}.example-form-1 .example-form-1-fieldset>.field>.label+br{display:none}.example-form-1 .example-form-1-fieldset>.field .choice input{vertical-align:top}.example-form-1 .example-form-1-fieldset>.field .fields.group:before,.example-form-1 .example-form-1-fieldset>.field .fields.group:after{content:"";display:table}.example-form-1 .example-form-1-fieldset>.field .fields.group:after{clear:both}.example-form-1 .example-form-1-fieldset>.field .fields.group .field{box-sizing:border-box;float:left}.example-form-1 .example-form-1-fieldset>.field .fields.group.group-2 .field{width:50%!important}.example-form-1 .example-form-1-fieldset>.field .fields.group.group-3 .field{width:33.3%!important}.example-form-1 .example-form-1-fieldset>.field .fields.group.group-4 .field{width:25%!important}.example-form-1 .example-form-1-fieldset>.field .fields.group.group-5 .field{width:20%!important}.example-form-1 .example-form-1-fieldset>.field .addon{display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;-webkit-flex-wrap:nowrap;flex-wrap:nowrap;padding:0;width:100%}.example-form-1 .example-form-1-fieldset>.field .addon textarea,.example-form-1 .example-form-1-fieldset>.field .addon select,.example-form-1 .example-form-1-fieldset>.field .addon input{-ms-flex-order:2;-webkit-order:2;order:2;-webkit-flex-basis:100%;flex-basis:100%;box-shadow:none;display:inline-block;margin:0;width:auto}.example-form-1 .example-form-1-fieldset>.field .addon .addbefore,.example-form-1 .example-form-1-fieldset>.field .addon .addafter{-ms-flex-order:3;-webkit-order:3;order:3;display:inline-block;box-sizing:border-box;background:#fff;border:1px solid #c2c2c2;border-radius:1px;height:32px;width:100%;padding:0 9px;font-size:14px;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;line-height:1.428571429;background-clip:padding-box;vertical-align:baseline;width:auto;white-space:nowrap;vertical-align:middle}.example-form-1 .example-form-1-fieldset>.field .addon .addbefore:disabled,.example-form-1 .example-form-1-fieldset>.field .addon .addafter:disabled{opacity:.5}.example-form-1 .example-form-1-fieldset>.field .addon .addbefore::-moz-placeholder,.example-form-1 .example-form-1-fieldset>.field .addon .addafter::-moz-placeholder{color:#c2c2c2}.example-form-1 .example-form-1-fieldset>.field .addon .addbefore::-webkit-input-placeholder,.example-form-1 .example-form-1-fieldset>.field .addon .addafter::-webkit-input-placeholder{color:#c2c2c2}.example-form-1 .example-form-1-fieldset>.field .addon .addbefore:-ms-input-placeholder,.example-form-1 .example-form-1-fieldset>.field .addon .addafter:-ms-input-placeholder{color:#c2c2c2}.example-form-1 .example-form-1-fieldset>.field .addon .addbefore{float:left;-ms-flex-order:1;-webkit-order:1;order:1}.example-form-1 .example-form-1-fieldset>.field .additional{margin-top:10px}.example-form-1 .example-form-1-fieldset>.field.required>.label:after{content:'*';font-size:1.2rem;color:#e02b27;margin:0 0 0 5px}.example-form-1 .example-form-1-fieldset>.field .note{font-size:1.2rem;margin:3px 0 0;padding:0;display:inline-block;text-decoration:none}.example-form-1 .example-form-1-fieldset>.field .note:before{font-family:'icons-blank-theme';content:'\e618';font-size:24px;line-height:12px;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:middle;text-align:center}.example-form-2 .example-form-2-fieldset{padding:0;margin:0 0 40px;border:0;letter-spacing:-.31em}.example-form-2 .example-form-2-fieldset>*{letter-spacing:normal}.example-form-2 .example-form-2-fieldset>.legend{margin:0 0 25px;padding:0;font-size:2rem;line-height:1.2;box-sizing:border-box;float:left}.example-form-2 .example-form-2-fieldset>.legend+br{display:block;visibility:hidden;height:0;overflow:hidden;clear:both}.example-form-2 .example-form-2-fieldset>.field{margin:0 0 20px;box-sizing:border-box;display:inline-block;padding:0 12px 0 0;width:50%;vertical-align:top}.example-form-2 .example-form-2-fieldset>.field>.label{display:inline-block;margin:0 0 5px}.example-form-2 .example-form-2-fieldset>.field:last-child{margin-bottom:0}.example-form-2 .example-form-2-fieldset>.field+.fieldset{clear:both}.example-form-2 .example-form-2-fieldset>.field>.label{font-weight:700}.example-form-2 .example-form-2-fieldset>.field>.label+br{display:none}.example-form-2 .example-form-2-fieldset>.field .choice input{vertical-align:top}.example-form-2 .example-form-2-fieldset>.field .fields.group:before,.example-form-2 .example-form-2-fieldset>.field .fields.group:after{content:"";display:table}.example-form-2 .example-form-2-fieldset>.field .fields.group:after{clear:both}.example-form-2 .example-form-2-fieldset>.field .fields.group .field{box-sizing:border-box;float:left}.example-form-2 .example-form-2-fieldset>.field .fields.group.group-2 .field{width:50%!important}.example-form-2 .example-form-2-fieldset>.field .fields.group.group-3 .field{width:33.3%!important}.example-form-2 .example-form-2-fieldset>.field .fields.group.group-4 .field{width:25%!important}.example-form-2 .example-form-2-fieldset>.field .fields.group.group-5 .field{width:20%!important}.example-form-2 .example-form-2-fieldset>.field .addon{display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;-webkit-flex-wrap:nowrap;flex-wrap:nowrap;padding:0;width:100%}.example-form-2 .example-form-2-fieldset>.field .addon textarea,.example-form-2 .example-form-2-fieldset>.field .addon select,.example-form-2 .example-form-2-fieldset>.field .addon input{-ms-flex-order:2;-webkit-order:2;order:2;-webkit-flex-basis:100%;flex-basis:100%;box-shadow:none;display:inline-block;margin:0;width:auto}.example-form-2 .example-form-2-fieldset>.field .addon .addbefore,.example-form-2 .example-form-2-fieldset>.field .addon .addafter{-ms-flex-order:3;-webkit-order:3;order:3;display:inline-block;box-sizing:border-box;background:#fff;border:1px solid #c2c2c2;border-radius:1px;height:32px;width:100%;padding:0 9px;font-size:14px;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;line-height:1.428571429;background-clip:padding-box;vertical-align:baseline;width:auto;white-space:nowrap;vertical-align:middle}.example-form-2 .example-form-2-fieldset>.field .addon .addbefore:disabled,.example-form-2 .example-form-2-fieldset>.field .addon .addafter:disabled{opacity:.5}.example-form-2 .example-form-2-fieldset>.field .addon .addbefore::-moz-placeholder,.example-form-2 .example-form-2-fieldset>.field .addon .addafter::-moz-placeholder{color:#c2c2c2}.example-form-2 .example-form-2-fieldset>.field .addon .addbefore::-webkit-input-placeholder,.example-form-2 .example-form-2-fieldset>.field .addon .addafter::-webkit-input-placeholder{color:#c2c2c2}.example-form-2 .example-form-2-fieldset>.field .addon .addbefore:-ms-input-placeholder,.example-form-2 .example-form-2-fieldset>.field .addon .addafter:-ms-input-placeholder{color:#c2c2c2}.example-form-2 .example-form-2-fieldset>.field .addon .addbefore{float:left;-ms-flex-order:1;-webkit-order:1;order:1}.example-form-2 .example-form-2-fieldset>.field .additional{margin-top:10px}.example-form-2 .example-form-2-fieldset>.field.required>.label:after{content:'*';font-size:1.2rem;color:#e02b27;margin:0 0 0 5px}.example-form-2 .example-form-2-fieldset>.field .note{font-size:1.2rem;margin:3px 0 0;padding:0;display:inline-block;text-decoration:none}.example-form-2 .example-form-2-fieldset>.field .note:before{font-family:'icons-blank-theme';content:'\e618';font-size:24px;line-height:12px;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:middle;text-align:center}input[type="text"],input[type="password"],input[type="url"],input[type="tel"],input[type="search"],input[type="number"],input[type="datetime"],input[type="email"]{box-sizing:border-box;background:#fff;border:1px solid #c2c2c2;border-radius:1px;height:32px;width:100%;padding:0 9px;font-size:14px;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;line-height:1.428571429;background-clip:padding-box;vertical-align:baseline;margin-bottom:20px}input[type="text"]:disabled,input[type="password"]:disabled,input[type="url"]:disabled,input[type="tel"]:disabled,input[type="search"]:disabled,input[type="number"]:disabled,input[type="datetime"]:disabled,input[type="email"]:disabled{opacity:.5}input[type="text"]::-moz-placeholder,input[type="password"]::-moz-placeholder,input[type="url"]::-moz-placeholder,input[type="tel"]::-moz-placeholder,input[type="search"]::-moz-placeholder,input[type="number"]::-moz-placeholder,input[type="datetime"]::-moz-placeholder,input[type="email"]::-moz-placeholder{color:#c2c2c2}input[type="text"]::-webkit-input-placeholder,input[type="password"]::-webkit-input-placeholder,input[type="url"]::-webkit-input-placeholder,input[type="tel"]::-webkit-input-placeholder,input[type="search"]::-webkit-input-placeholder,input[type="number"]::-webkit-input-placeholder,input[type="datetime"]::-webkit-input-placeholder,input[type="email"]::-webkit-input-placeholder{color:#c2c2c2}input[type="text"]:-ms-input-placeholder,input[type="password"]:-ms-input-placeholder,input[type="url"]:-ms-input-placeholder,input[type="tel"]:-ms-input-placeholder,input[type="search"]:-ms-input-placeholder,input[type="number"]:-ms-input-placeholder,input[type="datetime"]:-ms-input-placeholder,input[type="email"]:-ms-input-placeholder{color:#c2c2c2}select{box-sizing:border-box;background:#fff;border:1px solid #c2c2c2;border-radius:1px;height:32px;width:100%;padding:5px 10px 4px;font-size:14px;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;line-height:1.428571429;background-clip:padding-box;vertical-align:baseline;margin-bottom:20px}select:disabled{opacity:.5}select[multiple="multiple"]{height:auto;margin-bottom:20px}textarea{box-sizing:border-box;background:#fff;border:1px solid #c2c2c2;border-radius:1px;height:auto;width:100%;padding:10px;margin:0;font-size:14px;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;line-height:1.428571429;background-clip:padding-box;vertical-align:baseline;resize:vertical}textarea:disabled{opacity:.5}textarea::-moz-placeholder{color:#c2c2c2}textarea::-webkit-input-placeholder{color:#c2c2c2}textarea:-ms-input-placeholder{color:#c2c2c2}input[type="checkbox"]{margin:2px 5px 0 0}input[type="checkbox"]:disabled{opacity:.5}input[type="radio"]{margin:2px 5px 0 0}input[type="radio"]:disabled{opacity:.5}input.text-example-1,select.select-example-1,textarea.textarea-example-1{background:#fdf0d5;border-color:#fc0;color:#b30000}input.text-example-1:focus,select.select-example-1:focus,textarea.textarea-example-1:focus{border-color:#cff;color:#060}input.text-example-1:disabled,select.select-example-1:disabled,textarea.textarea-example-1:disabled{color:#fcc}input.text-example-1::-moz-placeholder,textarea.textarea-example-1::-moz-placeholder{color:#ccc}input.text-example-1::-webkit-input-placeholder,textarea.textarea-example-1::-webkit-input-placeholder{color:#ccc}input.text-example-1:-ms-input-placeholder,textarea.textarea-example-1:-ms-input-placeholder{color:#ccc}.number-example{-moz-appearance:textfield}.number-example::-webkit-inner-spin-button,.number-example::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.search-example{-webkit-appearance:none}.search-example::-webkit-search-cancel-button,.search-example::-webkit-search-decoration,.search-example::-webkit-search-results-button,.search-example::-webkit-search-results-decoration{-webkit-appearance:none}input,textarea,select{font-size:1.2rem;color:#e02b27}.example-icon-1{display:inline-block}.example-icon-1:before{content:'';display:inline-block;width:26px;height:26px;line-height:26px;vertical-align:middle;background:url('/pub/static/frontend/Magento/blank/en_US/images/blank-theme-icons.png') no-repeat 0 0}.example-icon-2{display:inline-block}.example-icon-2:after{content:'';display:inline-block;width:26px;height:26px;line-height:26px;vertical-align:middle;background:url('/pub/static/frontend/Magento/blank/en_US/images/blank-theme-icons.png') no-repeat -26px 0}.example-icon-3{display:inline-block}.example-icon-3>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-icon-3:before{content:'';display:inline-block;width:26px;height:26px;line-height:26px;vertical-align:middle;background:url('/pub/static/frontend/Magento/blank/en_US/images/blank-theme-icons.png') no-repeat -156px -52px}.example-icon-4{display:inline-block;text-decoration:none}.example-icon-4:before{font-family:'icons-blank-theme';content:'\e606';font-size:24px;line-height:inherit;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:middle;text-align:center}.example-icon-5{display:inline-block;text-decoration:none}.example-icon-5:after{font-family:'icons-blank-theme';content:'\e605';font-size:24px;line-height:inherit;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:middle;text-align:center}.example-icon-6{display:inline-block;text-decoration:none}.example-icon-6>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-icon-6:before{font-family:'icons-blank-theme';content:'\e61b';font-size:24px;line-height:inherit;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:middle;text-align:center}.example-icon-7{display:inline-block}.example-icon-7:before{content:'';display:inline-block;width:26px;height:26px;line-height:26px;vertical-align:middle;background:url('/pub/static/frontend/Magento/blank/en_US/images/blank-theme-icons.png') no-repeat 0 0}.example-icon-8{display:inline-block}.example-icon-8:before{content:'';display:inline-block;width:26px;height:26px;line-height:26px;vertical-align:middle;background:url('/pub/static/frontend/Magento/blank/en_US/images/blank-theme-icons.png') no-repeat 0 0}.example-icon-8:before{background-position:-182px 0}.example-icon-9{display:inline-block}.example-icon-9:after{content:'';display:inline-block;width:26px;height:26px;line-height:26px;vertical-align:middle;background:url('/pub/static/frontend/Magento/blank/en_US/images/blank-theme-icons.png') no-repeat 0 0}.example-icon-9:after{background-position:-52px -26px}.example-icon-10{display:inline-block}.example-icon-10:before{content:'';display:inline-block;width:26px;height:26px;line-height:26px;vertical-align:middle;background:url('/pub/static/frontend/Magento/blank/en_US/images/blank-theme-icons.png') no-repeat 0 0}.example-icon-10:before{background-position:-104px 0}.example-icon-11{display:inline-block}.example-icon-11:before{content:'';display:inline-block;width:26px;height:26px;line-height:26px;vertical-align:middle;background:url('/pub/static/frontend/Magento/blank/en_US/images/blank-theme-icons.png') no-repeat 0 0}.example-icon-11:before{width:30px;height:30px}.example-icon-11:after{width:30px;height:30px}.example-icon-11:before{background-color:#f1f1f1}.example-icon-12{display:inline-block;text-decoration:none}.example-icon-12:before{font-family:'icons-blank-theme';content:'\e612';font-size:28px;line-height:inherit;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:middle;text-align:center}.example-icon-13{display:inline-block;text-decoration:none}.example-icon-13:before{font-family:'icons-blank-theme';content:'\e612';font-size:inherit;line-height:inherit;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:middle;text-align:center}.example-icon-13:before{font-size:26px;line-height:inherit}.example-icon-14{display:inline-block;text-decoration:none}.example-icon-14:before{font-family:'icons-blank-theme';content:'\e61d';font-size:26px;line-height:inherit;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:middle;text-align:center}.example-icon-14>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.icons-image-list{list-style:none;padding:0}.icons-image-list li{float:left;width:33%}.icons-image-list li>span{display:inline-block}.icons-image-list li>span:before{content:'';display:inline-block;width:26px;height:26px;line-height:26px;vertical-align:middle;background:url('/pub/static/frontend/Magento/blank/en_US/images/blank-theme-icons.png') no-repeat 0 0}.icons-image-list li .icon-search:before{background-position:0 0}.icons-image-list li .icon-cart:before{background-position:-26px 0}.icons-image-list li .icon-arrow-down:before{background-position:-52px 0}.icons-image-list li .icon-arrow-up:before{background-position:-78px 0}.icons-image-list li .icon-grid:before{background-position:-104px 0}.icons-image-list li .icon-list:before{background-position:-130px 0}.icons-image-list li .icon-remove:before{background-position:-156px 0}.icons-image-list li .icon-star:before{background-position:-182px 0}.icons-image-list li .icon-pointer-down:before{background-position:-208px 0}.icons-image-list li .icon-pointer-up:before{background-position:-234px 0}.icons-image-list li .icon-pointer-left:before{background-position:-260px 0}.icons-image-list li .icon-pointer-right:before{background-position:-286px 0}.icons-image-list li .icon-compare-empty:before{background-position:0 -26px}.icons-image-list li .icon-compare-full:before{background-position:-26px -26px}.icons-image-list li .icon-wishlist-empty:before{background-position:-52px -26px}.icons-image-list li .icon-wishlist-full:before{background-position:-78px -26px}.icons-image-list li .icon-update:before{background-position:-104px -26px}.icons-image-list li .icon-collapse:before{background-position:-130px -26px}.icons-image-list li .icon-expand:before{background-position:-156px -26px}.icons-image-list li .icon-menu:before{background-position:-182px -26px}.icons-image-list li .icon-prev:before{background-position:-208px -26px}.icons-image-list li .icon-next:before{background-position:-234px -26px}.icons-image-list li .icon-settings:before{background-position:-260px -26px}.icons-image-list li .icon-info:before{background-position:-286px -26px}.icons-image-list li .icon-checkmark:before{background-position:0 -52px}.icons-image-list li .icon-calendar:before{background-position:-26px -52px}.icons-image-list li .icon-comment:before{background-position:-52px -52px}.icons-image-list li .icon-comment-reflected:before{background-position:-78px -52px}.icons-image-list li .icon-envelope:before{background-position:-104px -52px}.icons-image-list li .icon-warning:before{background-position:-130px -52px}.icons-image-list li .icon-trash:before{background-position:-156px -52px}.icons-image-list li .icon-flag:before{background-position:-182px -52px}.icons-image-list li .icon-location:before{background-position:-208px -52px}.icons-image-list li .icon-up:before{background-position:-234px -52px}.icons-image-list li .icon-down:before{background-position:-260px -52px}.icons-font-list{list-style:none;padding:0}.icons-font-list li{float:left;width:25%;margin-bottom:35px;text-align:center}.icons-font-list li>span{display:inline-block;text-decoration:none}.icons-font-list li>span:before{font-family:'icons-blank-theme';font-size:34px;line-height:inherit;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:middle;text-align:center}.icons-font-list li>span:before{content:attr(data-icon);margin:0 auto;display:block}.loader{position:fixed;top:0;right:0;bottom:0;left:0;background-color:rgba(255,255,255,.5);z-index:9999}.loader:before{border-radius:5px;background:transparent url('/pub/static/frontend/Magento/blank/en_US/images/loader-2.gif') no-repeat 50% 50%;box-sizing:border-box;content:'';position:absolute;top:0;right:0;left:0;bottom:0;margin:auto;width:160px;height:160px}.loading{position:relative}.loading:before{content:'';position:absolute;left:0;top:0;right:0;bottom:0;background:rgba(255,255,255,.5) url('/pub/static/frontend/Magento/blank/en_US/images/loader-2.gif') no-repeat 50% 50%}.example-message-info{display:block;margin:0 0 10px;padding:10px 20px;font-size:1.3rem;line-height:1.2em;background:#fdf0d5;color:#6f4400}.example-message-info a{color:#1979c3}.example-message-info a:hover{color:#006bb4}.example-message-info a:active{color:#006bb4}.example-message-warning{display:block;margin:0 0 10px;padding:10px 20px;font-size:1.3rem;line-height:1.2em;background:#fdf0d5;color:#6f4400}.example-message-warning a{color:#1979c3}.example-message-warning a:hover{color:#006bb4}.example-message-warning a:active{color:#006bb4}.example-message-error{display:block;margin:0 0 10px;padding:10px 20px;font-size:1.3rem;line-height:1.2em;background:#fae5e5;color:#e02b27}.example-message-error a{color:#1979c3}.example-message-error a:hover{color:#006bb4}.example-message-error a:active{color:#006bb4}.example-message-success{display:block;margin:0 0 10px;padding:10px 20px;font-size:1.3rem;line-height:1.2em;background:#e5efe5;color:#006400}.example-message-success a{color:#1979c3}.example-message-success a:hover{color:#006bb4}.example-message-success a:active{color:#006bb4}.example-message-notice{display:block;margin:0 0 10px;padding:10px 20px;font-size:1.3rem;line-height:1.2em;background:#fdf0d5;color:#6f4400}.example-message-notice a{color:#1979c3}.example-message-notice a:hover{color:#006bb4}.example-message-notice a:active{color:#006bb4}.example-message-1{display:block;margin:0 0 10px;padding:10px 20px;font-size:1.3rem;line-height:1.2em;background:#fdf0d5;color:#6f4400;position:relative;padding-left:40px}.example-message-1 a{color:#1979c3}.example-message-1 a:hover{color:#006bb4}.example-message-1 a:active{color:#006bb4}.example-message-1>:first-child:before{font-family:'icons-blank-theme';content:'\e602';font-size:28px;line-height:28px;color:#c07600;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:middle;margin:-14px 0 0;position:absolute;top:18px;left:0;text-align:center;width:40px}.example-message-2{display:block;margin:0 0 10px;padding:10px 20px;font-size:1.3rem;line-height:1.2em;background:#fae5e5;color:#e02b27;position:relative;padding-right:40px}.example-message-2 a{color:#1979c3}.example-message-2 a:hover{color:#006bb4}.example-message-2 a:active{color:#006bb4}.example-message-2:before{content:'';position:absolute;width:30px;text-align:center;top:0;height:100%;display:block;padding:0;background:#b30000}.example-message-2>:first-child:before{content:'';position:absolute;overflow:hidden;top:50%;margin-top:-5px}.example-message-2>:first-child:after{font-family:'icons-blank-theme';content:'\e602';font-size:28px;line-height:28px;color:#fff;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:middle;margin:-14px 0 0;position:absolute;top:18px;left:0;text-align:center;width:30px}.example-message-2:before{right:0}.example-message-2>:first-child:before{width:0;height:0;border:5px solid transparent;border-right-color:#b30000;right:30px}.example-message-2>:first-child:after{right:0}.example-message-3{display:block;margin:0 0 10px;padding:10px 20px;font-size:1.3rem;line-height:1.2em;background:#e5efe5;color:#006400;position:relative;padding-left:40px}.example-message-3 a{color:#1979c3}.example-message-3 a:hover{color:#006bb4}.example-message-3 a:active{color:#006bb4}.example-message-3:before{content:'';position:absolute;width:30px;text-align:center;top:0;height:100%;display:block;padding:0;background:#006400}.example-message-3>:first-child:before{content:'';position:absolute;overflow:hidden;top:50%;margin-top:-5px}.example-message-3>:first-child:after{font-family:'icons-blank-theme';content:'\e610';font-size:28px;line-height:28px;color:#fff;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:middle;margin:-14px 0 0;position:absolute;top:18px;left:0;text-align:center;width:30px}.example-message-3:before{left:0}.example-message-3>:first-child:before{width:0;height:0;border:5px solid transparent;border-left-color:#006400;left:30px}.example-message-3>:first-child:after{left:0}.example-message-4{display:block;margin:0 0 10px;padding:10px 20px;font-size:1.3rem;line-height:1.2em;background:#fc0;border-color:#ffa500;color:#000;position:relative;padding-left:40px;border-width:4px;border-radius:10px}.example-message-4 a{color:#00f}.example-message-4 a:hover{color:#009}.example-message-4 a:active{color:#006}.example-message-4:before{content:'';position:absolute;width:30px;text-align:center;top:0;height:100%;display:block;padding:0;background:#green}.example-message-4>:first-child:before{content:'';position:absolute;overflow:hidden;top:50%;margin-top:-5px}.example-message-4>:first-child:after{font-family:'icons-blank-theme';content:'\e606';font-size:28px;line-height:28px;color:#000;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:middle;margin:-14px 0 0;position:absolute;top:15px;left:0;text-align:center;width:30px}.example-message-4:before{left:0}.example-message-4>:first-child:before{width:0;height:0;border:5px solid transparent;border-left-color:#green;left:30px}.example-message-4>:first-child:after{left:0}header.header{background-color:rgba(255,0,0,.2)}.column.main{background-color:rgba(255,255,0,.2)}.column.left{background-color:rgba(0,255,255,.2)}.column.right{background-color:rgba(0,0,255,.2)}footer.footer{background-color:rgba(0,0,0,.2)}.columns{box-sizing:border-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap}.columns:after{content:" ";display:block;height:0;clear:both;overflow:hidden;visibility:hidden}.columns>.column{padding-bottom:40px}@media (min-width: 600px){.page-layout-1column .column.main{ width:100%;-ms-flex-order:2;-webkit-order:2;order:2}.page-layout-3columns .column.main{width:66.66666667%;display:inline-block;-ms-flex-order:2;-webkit-order:2;order:2}.page-layout-2columns-left .column.main{width:83.33333333%;float:right;-ms-flex-order:2;-webkit-order:2;order:2}.page-layout-2columns-right .column.main{width:83.33333333%;float:left;-ms-flex-order:1;-webkit-order:1;order:1}.page-layout-3columns .column.left{width:16.66666667%;float:left;-ms-flex-order:1;-webkit-order:1;order:1}.page-layout-2columns-left .column.left{width:16.66666667%;float:left;-ms-flex-order:1;-webkit-order:1;order:1}.page-layout-2columns-right .column.left{width:16.66666667%;float:left;-ms-flex-order:1;-webkit-order:1;order:1}.page-layout-3columns .column.right{width:16.66666667%;float:right;-ms-flex-order:3;-webkit-order:3;order:3}.page-layout-2columns-left .column.right{width:16.66666667%;float:right;-ms-flex-order:2;-webkit-order:2;order:2}.page-layout-2columns-right .column.right{width:16.66666667%;float:right;-ms-flex-order:2;-webkit-order:2;order:2}}.layout-example-3 .column.main{width:60%;display:inline-block;-ms-flex-order:2;-webkit-order:2;order:2}.layout-example-3 .column.left{width:20%;float:left;-ms-flex-order:1;-webkit-order:1;order:1}.layout-example-3 .column.right{width:20%;float:right;-ms-flex-order:3;-webkit-order:3;order:3}.layout-example-3-1 .column.main{width:60%;float:left;-ms-flex-order:1;-webkit-order:1;order:1}.layout-example-3-1 .column.left{width:20%;display:inline-block;-ms-flex-order:2;-webkit-order:2;order:2}.layout-example-3-1 .column.right{width:20%;float:right;-ms-flex-order:3;-webkit-order:3;order:3}.pages>.label{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.pages .items{font-size:0;line-height:0;letter-spacing:-1px;white-space:nowrap;margin:0;padding:0;list-style:none none;display:inline-block;font-weight:700}.pages .item{font-size:1.2rem;font-size:12px;line-height:32px;letter-spacing:normal;margin:0 2px 0 0;display:inline-block}.pages .item .label{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.pages a.page{color:#1979c3;display:inline-block;padding:0 4px;text-decoration:none}.pages a.page:visited{color:#800080}.pages a.page:hover{color:#006bb4;text-decoration:none}.pages a.page:active{color:#ff5501}.pages strong.page{font-size:1.2rem;font-size:12px;line-height:32px;letter-spacing:normal;color:#333;display:inline-block;font-weight:700;padding:0 4px}.pages .action{border:1px solid #d1d1d1;color:#7d7d7d;display:inline-block;padding:0;text-decoration:none}.pages .action:visited{color:#7d7d7d}.pages .action:hover{color:#7d7d7d;text-decoration:none}.pages .action:active{color:#7d7d7d}.pages .action.next{display:inline-block;text-decoration:none}.pages .action.next:visited:before{color:#7d7d7d}.pages .action.next:active:before{color:#7d7d7d}.pages .action.next>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.pages .action.next:before{font-family:'icons-blank-theme';content:'\e608';font-size:46px;line-height:inherit;color:#7d7d7d;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0 0 0 -6px}.pages .action.next:hover:before{color:#7d7d7d}.pages .action.next:active:before{color:#7d7d7d}.pages .action.previous{display:inline-block;text-decoration:none}.pages .action.previous:visited:before{color:#7d7d7d}.pages .action.previous:active:before{color:#7d7d7d}.pages .action.previous>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.pages .action.previous:before{font-family:'icons-blank-theme';content:'\e617';font-size:46px;line-height:inherit;color:#7d7d7d;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0 0 0 -6px}.pages .action.previous:hover:before{color:#7d7d7d}.pages .action.previous:active:before{color:#7d7d7d}.example-pages-1>.label{display:inline-block;font-weight:700;font-size:1.2rem;font-size:12px;line-height:32px;letter-spacing:normal}.example-pages-1>.label:after{content:':'}.example-pages-1 .items{font-size:0;line-height:0;letter-spacing:-1px;white-space:nowrap;margin:0;padding:0;list-style:none none;display:inline-block;font-weight:700}.example-pages-1 .item{font-size:1.2rem;font-size:12px;line-height:32px;letter-spacing:normal;margin:0 3px;display:inline-block}.example-pages-1 .item .label{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-pages-1 a.page{background-color:#ccc;background-repeat:repeat-x;background-image:-webkit-linear-gradient(top, #f4f4f4 0, #ccc 100%);background-image:linear-gradient(to bottom, #f4f4f4 0, #ccc 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#f4f4f4', endColorstr='#cccccc', GradientType=0);border:1px solid #b3b3b3;color:#333;display:inline-block;padding:0 4px;text-decoration:none}.example-pages-1 a.page:visited{background-color:false;background-repeat:repeat-x;background-image:-webkit-linear-gradient(top,false 0,false 100%);background-image:linear-gradient(to bottom,false 0,false 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='false', endColorstr='false', GradientType=0);color:#800080}.example-pages-1 a.page:hover{background-color:#f4f4f4;background-repeat:repeat-x;background-image:-webkit-linear-gradient(top, #ccc 0, #f4f4f4 100%);background-image:linear-gradient(to bottom, #ccc 0, #f4f4f4 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#cccccc', endColorstr='#f4f4f4', GradientType=0);border:1px solid #999;color:#333;text-decoration:none}.example-pages-1 a.page:active{background-color:false;background-repeat:repeat-x;background-image:-webkit-linear-gradient(top,false 0,false 100%);background-image:linear-gradient(to bottom,false 0,false 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='false', endColorstr='false', GradientType=0);color:#ff5501}.example-pages-1 strong.page{background:#1979c3;border:1px solid #135d96;font-size:1.2rem;font-size:12px;line-height:32px;letter-spacing:normal;color:#f7b32e;display:inline-block;font-weight:700;padding:0 4px}.example-pages-1 .action{border:1px solid #d1d1d1;color:#7d7d7d;display:inline-block;padding:0;text-decoration:none}.example-pages-1 .action:visited{color:#7d7d7d}.example-pages-1 .action:hover{color:#ff5501;text-decoration:none}.example-pages-1 .action:active{color:#7d7d7d}.example-pages-1 .action.next{display:inline-block;text-decoration:none}.example-pages-1 .action.next:visited:before{color:#7d7d7d}.example-pages-1 .action.next:active:before{color:#7d7d7d}.example-pages-1 .action.next>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-pages-1 .action.next:before{font-family:'icons-blank-theme';content:'\e608';font-size:30px;line-height:inherit;color:#7d7d7d;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0 0 0 -6px}.example-pages-1 .action.next:hover:before{color:#ff5501}.example-pages-1 .action.next:active:before{color:#7d7d7d}.example-pages-1 .action.previous{display:inline-block;text-decoration:none}.example-pages-1 .action.previous:visited:before{color:#7d7d7d}.example-pages-1 .action.previous:active:before{color:#7d7d7d}.example-pages-1 .action.previous>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-pages-1 .action.previous:before{font-family:'icons-blank-theme';content:'\e617';font-size:30px;line-height:inherit;color:#7d7d7d;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0 0 0 -6px}.example-pages-1 .action.previous:hover:before{color:#ff5501}.example-pages-1 .action.previous:active:before{color:#7d7d7d}.example-pages-2>.label{display:inline-block;font-weight:700;font-size:1.2rem;font-size:12px;line-height:32px;letter-spacing:normal}.example-pages-2>.label:after{content:':'}.example-pages-2 .items{font-size:0;line-height:0;letter-spacing:-1px;white-space:nowrap;margin:0;padding:0;list-style:none none;display:inline-block;font-weight:700}.example-pages-2 .item{font-size:1.2rem;font-size:12px;line-height:32px;letter-spacing:normal;margin:0 2px 0 0;display:inline-block}.example-pages-2 .item .label{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-pages-2 a.page{color:#1979c3;display:inline-block;padding:0 4px;text-decoration:none}.example-pages-2 a.page:visited{color:#800080}.example-pages-2 a.page:hover{color:#006bb4;text-decoration:none}.example-pages-2 a.page:active{color:#ff5501}.example-pages-2 strong.page{font-size:1.2rem;font-size:12px;line-height:32px;letter-spacing:normal;color:#333;display:inline-block;font-weight:700;padding:0 4px}.example-pages-2 .action{border:1px solid #d1d1d1;color:#7d7d7d;display:inline-block;padding:0;text-decoration:none}.example-pages-2 .action:visited{color:#7d7d7d}.example-pages-2 .action:hover{color:#7d7d7d;text-decoration:none}.example-pages-2 .action:active{color:#7d7d7d}.example-pages-3>.label{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-pages-3 .items{font-size:0;line-height:0;letter-spacing:-1px;white-space:nowrap;margin:0;padding:0;list-style:none none;display:inline-block;font-weight:700}.example-pages-3 .item{font-size:1.2rem;font-size:12px;line-height:32px;letter-spacing:normal;margin:0 2px 0 0;display:inline-block}.example-pages-3 .item .label{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-pages-3 a.page{background:#1979c3;color:#fff;display:inline-block;padding:0 4px;text-decoration:none}.example-pages-3 a.page:visited{background:#800080;color:#fff}.example-pages-3 a.page:hover{background:#006bb4;color:#fff;text-decoration:none}.example-pages-3 a.page:active{background:#ff5501;color:#fff}.example-pages-3 strong.page{background:#800080;font-size:1.2rem;font-size:12px;line-height:32px;letter-spacing:normal;color:#fff;display:inline-block;font-weight:700;padding:0 4px}.example-pages-3 .action{background:#1979c3;border:1px solid #d1d1d1;color:#fff;display:inline-block;padding:0;text-decoration:none}.example-pages-3 .action:visited{background:#800080;color:#7d7d7d}.example-pages-3 .action:hover{background:#006bb4;color:#fff;text-decoration:none}.example-pages-3 .action:active{background:#ff5501;color:#fff}.example-pages-3 .action.next{display:inline-block;text-decoration:none}.example-pages-3 .action.next:visited:before{color:#7d7d7d}.example-pages-3 .action.next:active:before{color:#fff}.example-pages-3 .action.next>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-pages-3 .action.next:before{font-family:'icons-blank-theme';content:'\e608';font-size:46px;line-height:inherit;color:#fff;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0 0 0 -6px}.example-pages-3 .action.next:hover:before{color:#fff}.example-pages-3 .action.next:active:before{color:#fff}.example-pages-3 .action.previous{display:inline-block;text-decoration:none}.example-pages-3 .action.previous:visited:before{color:#7d7d7d}.example-pages-3 .action.previous:active:before{color:#fff}.example-pages-3 .action.previous>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-pages-3 .action.previous:before{font-family:'icons-blank-theme';content:'\e617';font-size:46px;line-height:inherit;color:#fff;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0 0 0 -6px}.example-pages-3 .action.previous:hover:before{color:#fff}.example-pages-3 .action.previous:active:before{color:#fff}.window.popup.popup-example{background:#fff;border:1px solid #aeaeae;padding:22px;width:auto;box-shadow:0 3px 3px rgba(0,0,0,.15);top:0;right:0;bottom:0;left:0;display:none;opacity:0;position:fixed;z-index:1001;transition:opacity .3s linear}.window.popup.popup-example .popup-header{margin:0 0 25px;padding-right:22px}.window.popup.popup-example .popup-header .title{font-size:1.8rem;font-weight:300;line-height:1.1;margin-top:1.5rem;margin-bottom:1rem}.window.popup.popup-example .popup-actions .action.close{position:absolute;display:inline-block;background-image:none;background:0;border:0;margin:0;padding:0;-moz-box-sizing:content-box;box-shadow:none;text-shadow:none;text-decoration:none;line-height:inherit;font-weight:400;top:10px;right:10px}.window.popup.popup-example .popup-actions .action.close>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.window.popup.popup-example .popup-actions .action.close:before{font-family:'icons-blank-theme';content:'\e616';font-size:22px;line-height:22px;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.window.popup.popup-example .popup-actions .action.close:hover:before{color:inherit}.window.popup.popup-example .popup-actions .action.close:active:before{color:inherit}.window.popup.popup-example .popup-actions .action.close:focus,.window.popup.popup-example .popup-actions .action.close:active{background:0;border:0}.window.popup.popup-example .popup-actions .action.close:hover{background:0;border:0}.window.popup.popup-example .popup-actions .action.close.disabled,.window.popup.popup-example .popup-actions .action.close[disabled],fieldset[disabled] .window.popup.popup-example .popup-actions .action.close{cursor:not-allowed;pointer-events:none;opacity:.5}.window.popup.popup-example.active{opacity:1}.window.popup.popup-example-1{background:#fff;border:1px solid #aeaeae;padding:22px;width:auto;box-shadow:0 3px 3px rgba(0,0,0,.15);top:0;right:0;bottom:0;left:0;display:none;opacity:0;position:fixed;z-index:1001;transition:opacity .3s linear}.window.popup.popup-example-1 .popup-header{margin:0 0 25px;padding-right:22px}.window.popup.popup-example-1 .popup-header .title{font-size:1.8rem;font-weight:300;line-height:1.1;margin-top:1.5rem;margin-bottom:1rem}.window.popup.popup-example-1 .popup-actions .action.close{position:absolute;display:inline-block;background-image:none;background:0;border:0;margin:0;padding:0;-moz-box-sizing:content-box;box-shadow:none;text-shadow:none;text-decoration:none;line-height:inherit;font-weight:400;top:10px;right:10px}.window.popup.popup-example-1 .popup-actions .action.close>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.window.popup.popup-example-1 .popup-actions .action.close:before{font-family:'icons-blank-theme';content:'\e616';font-size:22px;line-height:22px;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.window.popup.popup-example-1 .popup-actions .action.close:hover:before{color:inherit}.window.popup.popup-example-1 .popup-actions .action.close:active:before{color:inherit}.window.popup.popup-example-1 .popup-actions .action.close:focus,.window.popup.popup-example-1 .popup-actions .action.close:active{background:0;border:0}.window.popup.popup-example-1 .popup-actions .action.close:hover{background:0;border:0}.window.popup.popup-example-1 .popup-actions .action.close.disabled,.window.popup.popup-example-1 .popup-actions .action.close[disabled],fieldset[disabled] .window.popup.popup-example-1 .popup-actions .action.close{cursor:not-allowed;pointer-events:none;opacity:.5}.window.popup.popup-example-1.active{opacity:1}.window.overlay{transition:opacity .15s linear;position:fixed;top:0;right:0;bottom:0;left:0;background:#000;z-index:1000;opacity:0}.window.overlay.active{opacity:.5;filter:alpha(opacity=50)}.window.popup.popup-example-2{background:#fff;border:1px solid #aeaeae;padding:22px;width:auto;overflow-y:auto;max-height:200px;box-shadow:0 3px 3px rgba(0,0,0,.15);top:0;right:0;bottom:0;left:0;display:none;opacity:0;position:fixed;z-index:1001;transition:opacity .3s linear}.window.popup.popup-example-2 .popup-header{margin:0 0 25px;padding-right:22px}.window.popup.popup-example-2 .popup-header .title{font-size:1.8rem;font-weight:300;line-height:1.1;margin-top:1.5rem;margin-bottom:1rem}.window.popup.popup-example-2 .popup-actions .action.close{position:absolute;display:inline-block;background-image:none;background:0;border:0;margin:0;padding:0;-moz-box-sizing:content-box;box-shadow:none;text-shadow:none;text-decoration:none;line-height:inherit;font-weight:400;top:10px;right:10px}.window.popup.popup-example-2 .popup-actions .action.close>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.window.popup.popup-example-2 .popup-actions .action.close:before{font-family:'icons-blank-theme';content:'\e616';font-size:22px;line-height:22px;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.window.popup.popup-example-2 .popup-actions .action.close:hover:before{color:inherit}.window.popup.popup-example-2 .popup-actions .action.close:active:before{color:inherit}.window.popup.popup-example-2 .popup-actions .action.close:focus,.window.popup.popup-example-2 .popup-actions .action.close:active{background:0;border:0}.window.popup.popup-example-2 .popup-actions .action.close:hover{background:0;border:0}.window.popup.popup-example-2 .popup-actions .action.close.disabled,.window.popup.popup-example-2 .popup-actions .action.close[disabled],fieldset[disabled] .window.popup.popup-example-2 .popup-actions .action.close{cursor:not-allowed;pointer-events:none;opacity:.5}.window.popup.popup-example-2.active{opacity:1}.window.popup.popup-example-3{background:#fff;border:1px solid #aeaeae;padding:22px;width:auto;box-shadow:0 3px 3px rgba(0,0,0,.15);top:0;right:0;bottom:0;left:0;display:none;opacity:0;position:fixed;z-index:1001;transition:opacity .3s linear}.window.popup.popup-example-3 .popup-header{margin:0 0 25px;padding-right:22px}.window.popup.popup-example-3 .popup-header .title{font-size:1.8rem;font-weight:300;line-height:1.1;margin-top:1.5rem;margin-bottom:1rem}.window.popup.popup-example-3 .popup-content{overflow-y:auto;max-height:200px}.window.popup.popup-example-3 .popup-actions .action.close{position:absolute;display:inline-block;background-image:none;background:0;border:0;margin:0;padding:0;-moz-box-sizing:content-box;box-shadow:none;text-shadow:none;text-decoration:none;line-height:inherit;font-weight:400;top:10px;right:10px}.window.popup.popup-example-3 .popup-actions .action.close>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.window.popup.popup-example-3 .popup-actions .action.close:before{font-family:'icons-blank-theme';content:'\e616';font-size:22px;line-height:22px;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.window.popup.popup-example-3 .popup-actions .action.close:hover:before{color:inherit}.window.popup.popup-example-3 .popup-actions .action.close:active:before{color:inherit}.window.popup.popup-example-3 .popup-actions .action.close:focus,.window.popup.popup-example-3 .popup-actions .action.close:active{background:0;border:0}.window.popup.popup-example-3 .popup-actions .action.close:hover{background:0;border:0}.window.popup.popup-example-3 .popup-actions .action.close.disabled,.window.popup.popup-example-3 .popup-actions .action.close[disabled],fieldset[disabled] .window.popup.popup-example-3 .popup-actions .action.close{cursor:not-allowed;pointer-events:none;opacity:.5}.window.popup.popup-example-3.active{opacity:1}.window.popup.popup-example-4{background:#fff;border:1px solid #aeaeae;padding:22px;width:auto;box-shadow:0 3px 3px rgba(0,0,0,.15);top:0;right:0;bottom:0;left:0;display:none;opacity:0;position:fixed;z-index:1001;transition:opacity .3s linear}.window.popup.popup-example-4 .popup-header{margin:0 0 25px;padding-right:22px}.window.popup.popup-example-4 .popup-header .title{font-size:1.8rem;font-weight:300;line-height:1.1;margin-top:1.5rem;margin-bottom:1rem}.window.popup.popup-example-4 .popup-content{margin:0 0 20px}.window.popup.popup-example-4 .popup-footer{margin:0 20px}.window.popup.popup-example-4 .popup-actions .action.close{position:absolute;display:inline-block;background-image:none;background:0;border:0;margin:0;padding:0;-moz-box-sizing:content-box;box-shadow:none;text-shadow:none;text-decoration:none;line-height:inherit;font-weight:400;top:10px;right:10px}.window.popup.popup-example-4 .popup-actions .action.close>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.window.popup.popup-example-4 .popup-actions .action.close:before{font-family:'icons-blank-theme';content:'\e616';font-size:22px;line-height:22px;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.window.popup.popup-example-4 .popup-actions .action.close:hover:before{color:inherit}.window.popup.popup-example-4 .popup-actions .action.close:active:before{color:inherit}.window.popup.popup-example-4 .popup-actions .action.close:focus,.window.popup.popup-example-4 .popup-actions .action.close:active{background:0;border:0}.window.popup.popup-example-4 .popup-actions .action.close:hover{background:0;border:0}.window.popup.popup-example-4 .popup-actions .action.close.disabled,.window.popup.popup-example-4 .popup-actions .action.close[disabled],fieldset[disabled] .window.popup.popup-example-4 .popup-actions .action.close{cursor:not-allowed;pointer-events:none;opacity:.5}.window.popup.popup-example-4.active{opacity:1}.window.popup.popup-example-5{background:#fff;border:1px solid #aeaeae;padding:22px;width:auto;box-shadow:0 3px 3px rgba(0,0,0,.15);top:0;right:0;bottom:0;left:0;display:none;opacity:0;position:fixed;z-index:1001;transition:opacity .3s linear}.window.popup.popup-example-5 .popup-header{margin:0 0 25px;padding-right:22px}.window.popup.popup-example-5 .popup-header .title{font-size:4rem;font-weight:300;line-height:1.1;margin-top:0rem;margin-bottom:2rem}.window.popup.popup-example-5 .popup-actions .action.close{position:absolute;display:inline-block;background-image:none;background:0;border:0;margin:0;padding:0;-moz-box-sizing:content-box;box-shadow:none;text-shadow:none;text-decoration:none;line-height:inherit;font-weight:400;top:10px;right:10px}.window.popup.popup-example-5 .popup-actions .action.close>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.window.popup.popup-example-5 .popup-actions .action.close:before{font-family:'icons-blank-theme';content:'\e616';font-size:22px;line-height:22px;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.window.popup.popup-example-5 .popup-actions .action.close:hover:before{color:inherit}.window.popup.popup-example-5 .popup-actions .action.close:active:before{color:inherit}.window.popup.popup-example-5 .popup-actions .action.close:focus,.window.popup.popup-example-5 .popup-actions .action.close:active{background:0;border:0}.window.popup.popup-example-5 .popup-actions .action.close:hover{background:0;border:0}.window.popup.popup-example-5 .popup-actions .action.close.disabled,.window.popup.popup-example-5 .popup-actions .action.close[disabled],fieldset[disabled] .window.popup.popup-example-5 .popup-actions .action.close{cursor:not-allowed;pointer-events:none;opacity:.5}.window.popup.popup-example-5.active{opacity:1}.window.popup.popup-example-6{background:#fff;border:1px solid #aeaeae;padding:22px;width:auto;box-shadow:0 3px 3px rgba(0,0,0,.15);top:0;right:0;bottom:0;left:0;display:none;opacity:0;position:fixed;z-index:1001;transition:opacity .3s linear}.window.popup.popup-example-6 .popup-footer .actions.toolbar{text-align:left}.window.popup.popup-example-6 .popup-footer .actions.toolbar:before,.window.popup.popup-example-6 .popup-footer .actions.toolbar:after{content:"";display:table}.window.popup.popup-example-6 .popup-footer .actions.toolbar:after{clear:both}.window.popup.popup-example-6 .popup-footer .actions.toolbar .secondary{float:left}.window.popup.popup-example-6 .popup-footer .actions.toolbar .primary,.window.popup.popup-example-6 .popup-footer .actions.toolbar .secondary{display:inline-block}.window.popup.popup-example-6 .popup-footer .actions.toolbar .primary a.action,.window.popup.popup-example-6 .popup-footer .actions.toolbar .secondary a.action{display:inline-block}.window.popup.popup-example-6 .popup-footer .actions.toolbar .primary .action{margin:0 5px 0 0}.window.popup.popup-example-6 .popup-footer .actions.toolbar .secondary a.action{margin-top:6px}.window.popup.popup-example-6 .popup-header{margin:0 0 25px;padding-right:22px}.window.popup.popup-example-6 .popup-header .title{font-size:1.8rem;font-weight:300;line-height:1.1;margin-top:1.5rem;margin-bottom:1rem}.window.popup.popup-example-6 .popup-actions .action.close{position:absolute;display:inline-block;background-image:none;background:0;border:0;margin:0;padding:0;-moz-box-sizing:content-box;box-shadow:none;text-shadow:none;text-decoration:none;line-height:inherit;font-weight:400;top:10px;right:10px}.window.popup.popup-example-6 .popup-actions .action.close>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.window.popup.popup-example-6 .popup-actions .action.close:before{font-family:'icons-blank-theme';content:'\e616';font-size:22px;line-height:22px;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.window.popup.popup-example-6 .popup-actions .action.close:hover:before{color:inherit}.window.popup.popup-example-6 .popup-actions .action.close:active:before{color:inherit}.window.popup.popup-example-6 .popup-actions .action.close:focus,.window.popup.popup-example-6 .popup-actions .action.close:active{background:0;border:0}.window.popup.popup-example-6 .popup-actions .action.close:hover{background:0;border:0}.window.popup.popup-example-6 .popup-actions .action.close.disabled,.window.popup.popup-example-6 .popup-actions .action.close[disabled],fieldset[disabled] .window.popup.popup-example-6 .popup-actions .action.close{cursor:not-allowed;pointer-events:none;opacity:.5}.window.popup.popup-example-6.active{opacity:1}.window.popup.popup-example-7{background:#fff;border:1px solid #aeaeae;padding:22px;width:auto;box-shadow:0 3px 3px rgba(0,0,0,.15);top:0;right:0;bottom:0;left:0;display:none;opacity:0;position:fixed;z-index:1001;transition:opacity .3s linear}.window.popup.popup-example-7 .popup-header{margin:0 0 25px;padding-right:22px}.window.popup.popup-example-7 .popup-header .title{font-size:1.8rem;font-weight:300;line-height:1.1;margin-top:1.5rem;margin-bottom:1rem}.window.popup.popup-example-7 .popup-actions .action.close{position:absolute;top:10px;right:10px}.window.popup.popup-example-7.active{opacity:1}.window.popup.popup-example-8{background:#fff;border:1px solid #aeaeae;padding:22px;width:auto;box-shadow:0 3px 3px rgba(0,0,0,.15);top:0;right:0;bottom:0;left:0;display:none;opacity:0;position:fixed;z-index:1001;transition:opacity .3s linear}.window.popup.popup-example-8 .popup-header{margin:0 0 25px;padding-right:30px}.window.popup.popup-example-8 .popup-header .title{font-size:1.8rem;font-weight:300;line-height:1.1;margin-top:1.5rem;margin-bottom:1rem}.window.popup.popup-example-8 .popup-actions .action.close{position:absolute;display:inline-block;background-image:none;background:0;border:0;margin:0;padding:0;-moz-box-sizing:content-box;box-shadow:none;text-shadow:none;text-decoration:none;line-height:inherit;font-weight:400;top:10px;right:10px}.window.popup.popup-example-8 .popup-actions .action.close:before{font-family:'icons-blank-theme';content:'\e613';font-size:30px;line-height:22px;color:red;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:middle;text-align:center;margin:0}.window.popup.popup-example-8 .popup-actions .action.close:hover:before{color:#090}.window.popup.popup-example-8 .popup-actions .action.close:active:before{color:#00f}.window.popup.popup-example-8 .popup-actions .action.close:focus,.window.popup.popup-example-8 .popup-actions .action.close:active{background:0;border:0}.window.popup.popup-example-8 .popup-actions .action.close:hover{background:0;border:0}.window.popup.popup-example-8 .popup-actions .action.close.disabled,.window.popup.popup-example-8 .popup-actions .action.close[disabled],fieldset[disabled] .window.popup.popup-example-8 .popup-actions .action.close{cursor:not-allowed;pointer-events:none;opacity:.5}.window.popup.popup-example-8.active{opacity:1}.window.popup.popup-example-9{background:#fff;border:1px solid #aeaeae;padding:22px;width:auto;box-shadow:0 3px 3px rgba(0,0,0,.15);top:0;right:0;bottom:0;left:0;display:none;opacity:0;position:fixed;z-index:1001;transition:opacity .3s linear}.window.popup.popup-example-9 .popup-header{margin:0 0 25px;padding-right:22px}.window.popup.popup-example-9 .popup-header .title{font-size:1.8rem;font-weight:300;line-height:1.1;margin-top:1.5rem;margin-bottom:1rem}.window.popup.popup-example-9 .popup-actions .action.close{position:absolute;display:inline-block;background-image:none;background:0;border:0;margin:0;padding:0;-moz-box-sizing:content-box;box-shadow:none;text-shadow:none;text-decoration:none;line-height:inherit;font-weight:400;top:10px;right:10px}.window.popup.popup-example-9 .popup-actions .action.close>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.window.popup.popup-example-9 .popup-actions .action.close:before{font-family:'icons-blank-theme';content:'\e616';font-size:22px;line-height:22px;color:inherit;overflow:hidden;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:top;text-align:center;margin:0}.window.popup.popup-example-9 .popup-actions .action.close:hover:before{color:inherit}.window.popup.popup-example-9 .popup-actions .action.close:active:before{color:inherit}.window.popup.popup-example-9 .popup-actions .action.close:focus,.window.popup.popup-example-9 .popup-actions .action.close:active{background:0;border:0}.window.popup.popup-example-9 .popup-actions .action.close:hover{background:0;border:0}.window.popup.popup-example-9 .popup-actions .action.close.disabled,.window.popup.popup-example-9 .popup-actions .action.close[disabled],fieldset[disabled] .window.popup.popup-example-9 .popup-actions .action.close{cursor:not-allowed;pointer-events:none;opacity:.5}.window.popup.popup-example-9.active{opacity:1}.window.overlay.example-overlay-1.active{transition:opacity .15s linear;position:fixed;top:0;right:0;bottom:0;left:0;background:#0f5293;z-index:1000;opacity:0}.window.overlay.example-overlay-1.active.active{opacity:.8;filter:alpha(opacity=80)}.example-ratings-1{overflow:hidden}.example-ratings-1:before{color:#c7c7c7;font-family:'icons-blank-theme';font-style:normal;font-size:28px;line-height:28px;letter-spacing:-10px;height:28px;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;vertical-align:top;content:'\e605' '\e605' '\e605' '\e605' '\e605';position:absolute;z-index:1;display:block}.example-ratings-1 input[type="radio"]{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-ratings-1 input[type="radio"]:focus+label:before,.example-ratings-1 input[type="radio"]:checked+label:before{opacity:1}.example-ratings-1 label{position:absolute;display:block;cursor:pointer}.example-ratings-1 label span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-ratings-1 label:before{color:#ff5601;font-family:'icons-blank-theme';font-style:normal;font-size:28px;line-height:28px;letter-spacing:-10px;height:28px;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;vertical-align:top;opacity:0}.example-ratings-1 label:hover:before{opacity:1}.example-ratings-1 label:hover~label:before{opacity:0}.example-ratings-1 .rating-5{z-index:2}.example-ratings-1 .rating-5:before{content:'\e605' '\e605' '\e605' '\e605' '\e605'}.example-ratings-1 .rating-4{z-index:3}.example-ratings-1 .rating-4:before{content:'\e605' '\e605' '\e605' '\e605'}.example-ratings-1 .rating-3{z-index:4}.example-ratings-1 .rating-3:before{content:'\e605' '\e605' '\e605'}.example-ratings-1 .rating-2{z-index:5}.example-ratings-1 .rating-2:before{content:'\e605' '\e605'}.example-ratings-1 .rating-1{z-index:6}.example-ratings-1 .rating-1:before{content:'\e605'}.example-ratings-2{overflow:hidden}.example-ratings-2:before{color:#c7c7c7;font-family:'icons-blank-theme';font-style:normal;font-size:28px;line-height:28px;letter-spacing:-10px;height:28px;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;vertical-align:top;content:'\e605' '\e605' '\e605' '\e605' '\e605' '\e605' '\e605' '\e605';position:absolute;z-index:1;display:block}.example-ratings-2 input[type="radio"]{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-ratings-2 input[type="radio"]:focus+label:before,.example-ratings-2 input[type="radio"]:checked+label:before{opacity:1}.example-ratings-2 label{position:absolute;display:block;cursor:pointer}.example-ratings-2 label span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-ratings-2 label:before{color:#ff5601;font-family:'icons-blank-theme';font-style:normal;font-size:28px;line-height:28px;letter-spacing:-10px;height:28px;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;vertical-align:top;opacity:0}.example-ratings-2 label:hover:before{opacity:1}.example-ratings-2 label:hover~label:before{opacity:0}.example-ratings-2 .rating-8{z-index:2}.example-ratings-2 .rating-8:before{content:'\e605' '\e605' '\e605' '\e605' '\e605' '\e605' '\e605' '\e605'}.example-ratings-2 .rating-7{z-index:3}.example-ratings-2 .rating-7:before{content:'\e605' '\e605' '\e605' '\e605' '\e605' '\e605' '\e605'}.example-ratings-2 .rating-6{z-index:4}.example-ratings-2 .rating-6:before{content:'\e605' '\e605' '\e605' '\e605' '\e605' '\e605'}.example-ratings-2 .rating-5{z-index:5}.example-ratings-2 .rating-5:before{content:'\e605' '\e605' '\e605' '\e605' '\e605'}.example-ratings-2 .rating-4{z-index:6}.example-ratings-2 .rating-4:before{content:'\e605' '\e605' '\e605' '\e605'}.example-ratings-2 .rating-3{z-index:7}.example-ratings-2 .rating-3:before{content:'\e605' '\e605' '\e605'}.example-ratings-2 .rating-2{z-index:8}.example-ratings-2 .rating-2:before{content:'\e605' '\e605'}.example-ratings-2 .rating-1{z-index:9}.example-ratings-2 .rating-1:before{content:'\e605'}.example-ratings-3{overflow:hidden}.example-ratings-3:before{color:#aff5e3;font-family:'icons-blank-theme';font-style:normal;font-size:28px;line-height:28px;letter-spacing:-10px;height:28px;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;vertical-align:top;content:'\e605' '\e605' '\e605' '\e605' '\e605';position:absolute;z-index:1;display:block}.example-ratings-3 input[type="radio"]{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-ratings-3 input[type="radio"]:focus+label:before,.example-ratings-3 input[type="radio"]:checked+label:before{opacity:1}.example-ratings-3 label{position:absolute;display:block;cursor:pointer}.example-ratings-3 label span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-ratings-3 label:before{color:#0a6767;font-family:'icons-blank-theme';font-style:normal;font-size:28px;line-height:28px;letter-spacing:-10px;height:28px;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;vertical-align:top;opacity:0}.example-ratings-3 label:hover:before{opacity:1}.example-ratings-3 label:hover~label:before{opacity:0}.example-ratings-3 .rating-5{z-index:2}.example-ratings-3 .rating-5:before{content:'\e605' '\e605' '\e605' '\e605' '\e605'}.example-ratings-3 .rating-4{z-index:3}.example-ratings-3 .rating-4:before{content:'\e605' '\e605' '\e605' '\e605'}.example-ratings-3 .rating-3{z-index:4}.example-ratings-3 .rating-3:before{content:'\e605' '\e605' '\e605'}.example-ratings-3 .rating-2{z-index:5}.example-ratings-3 .rating-2:before{content:'\e605' '\e605'}.example-ratings-3 .rating-1{z-index:6}.example-ratings-3 .rating-1:before{content:'\e605'}.example-ratings-4{overflow:hidden}.example-ratings-4:before{color:#c7c7c7;font-family:'icons-blank-theme';font-style:normal;font-size:28px;line-height:28px;letter-spacing:-10px;height:28px;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;vertical-align:top;content:'\e600' '\e600' '\e600' '\e600' '\e600';position:absolute;z-index:1;display:block}.example-ratings-4 input[type="radio"]{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-ratings-4 input[type="radio"]:focus+label:before,.example-ratings-4 input[type="radio"]:checked+label:before{opacity:1}.example-ratings-4 label{position:absolute;display:block;cursor:pointer}.example-ratings-4 label span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-ratings-4 label:before{color:#ff5601;font-family:'icons-blank-theme';font-style:normal;font-size:28px;line-height:28px;letter-spacing:-10px;height:28px;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;vertical-align:top;opacity:0}.example-ratings-4 label:hover:before{opacity:1}.example-ratings-4 label:hover~label:before{opacity:0}.example-ratings-4 .rating-5{z-index:2}.example-ratings-4 .rating-5:before{content:'\e600' '\e600' '\e600' '\e600' '\e600'}.example-ratings-4 .rating-4{z-index:3}.example-ratings-4 .rating-4:before{content:'\e600' '\e600' '\e600' '\e600'}.example-ratings-4 .rating-3{z-index:4}.example-ratings-4 .rating-3:before{content:'\e600' '\e600' '\e600'}.example-ratings-4 .rating-2{z-index:5}.example-ratings-4 .rating-2:before{content:'\e600' '\e600'}.example-ratings-4 .rating-1{z-index:6}.example-ratings-4 .rating-1:before{content:'\e600'}.exapmle-ratings-5 .control.rating.vote{overflow:hidden}.exapmle-ratings-5 .control.rating.vote:before{color:#c7c7c7;font-family:'icons-blank-theme';font-style:normal;font-size:28px;line-height:28px;letter-spacing:-10px;height:28px;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;vertical-align:top;content:'\e605' '\e605' '\e605' '\e605' '\e605';position:absolute;z-index:1;display:block}.exapmle-ratings-5 .control.rating.vote input[type="radio"]{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.exapmle-ratings-5 .control.rating.vote input[type="radio"]:focus+label:before,.exapmle-ratings-5 .control.rating.vote input[type="radio"]:checked+label:before{opacity:1}.exapmle-ratings-5 .control.rating.vote label{position:absolute;display:block;cursor:pointer}.exapmle-ratings-5 .control.rating.vote label span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.exapmle-ratings-5 .control.rating.vote label:before{color:#ff5601;font-family:'icons-blank-theme';font-style:normal;font-size:28px;line-height:28px;letter-spacing:-10px;height:28px;speak:none;font-weight:400;-webkit-font-smoothing:antialiased;vertical-align:top;opacity:0}.exapmle-ratings-5 .control.rating.vote label:hover:before{opacity:1}.exapmle-ratings-5 .control.rating.vote label:hover~label:before{opacity:0}.exapmle-ratings-5 .control.rating.vote .rating-5{z-index:2}.exapmle-ratings-5 .control.rating.vote .rating-5:before{content:'\e605' '\e605' '\e605' '\e605' '\e605'}.exapmle-ratings-5 .control.rating.vote .rating-4{z-index:3}.exapmle-ratings-5 .control.rating.vote .rating-4:before{content:'\e605' '\e605' '\e605' '\e605'}.exapmle-ratings-5 .control.rating.vote .rating-3{z-index:4}.exapmle-ratings-5 .control.rating.vote .rating-3:before{content:'\e605' '\e605' '\e605'}.exapmle-ratings-5 .control.rating.vote .rating-2{z-index:5}.exapmle-ratings-5 .control.rating.vote .rating-2:before{content:'\e605' '\e605'}.exapmle-ratings-5 .control.rating.vote .rating-1{z-index:6}.exapmle-ratings-5 .control.rating.vote .rating-1:before{content:'\e605'}.example-rating-summary-1{white-space:nowrap;overflow:hidden}.example-rating-summary-1 .rating-result{width:100px;display:inline-block;vertical-align:middle;position:relative}.example-rating-summary-1 .rating-result:before{position:absolute;top:0;left:0;width:100%;z-index:1;color:#c7c7c7;display:block;font-family:'icons-blank-theme';content:'\e605' '\e605' '\e605' '\e605' '\e605';font-style:normal;font-size:28px;height:28px;line-height:28px;letter-spacing:-10px;speak:none;font-weight:400;-webkit-font-smoothing:antialiased}.example-rating-summary-1 .rating-result>span{display:block;overflow:hidden}.example-rating-summary-1 .rating-result>span:before{position:relative;z-index:2;color:#ff5601;display:block;font-family:'icons-blank-theme';content:'\e605' '\e605' '\e605' '\e605' '\e605';font-style:normal;font-size:28px;height:28px;line-height:28px;letter-spacing:-10px;speak:none;font-weight:400;-webkit-font-smoothing:antialiased}.example-rating-summary-1 .rating-result>span span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-rating-summary-2{white-space:nowrap;overflow:hidden}.example-rating-summary-2 .rating-result{width:154px;display:inline-block;vertical-align:middle;position:relative}.example-rating-summary-2 .rating-result:before{position:absolute;top:0;left:0;width:100%;z-index:1;color:#c7c7c7;display:block;font-family:'icons-blank-theme';content:'\e605' '\e605' '\e605' '\e605' '\e605' '\e605' '\e605' '\e605';font-style:normal;font-size:28px;height:28px;line-height:28px;letter-spacing:-10px;speak:none;font-weight:400;-webkit-font-smoothing:antialiased}.example-rating-summary-2 .rating-result>span{display:block;overflow:hidden}.example-rating-summary-2 .rating-result>span:before{position:relative;z-index:2;color:#ff5601;display:block;font-family:'icons-blank-theme';content:'\e605' '\e605' '\e605' '\e605' '\e605' '\e605' '\e605' '\e605';font-style:normal;font-size:28px;height:28px;line-height:28px;letter-spacing:-10px;speak:none;font-weight:400;-webkit-font-smoothing:antialiased}.example-rating-summary-2 .rating-result>span span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-rating-summary-3{white-space:nowrap;overflow:hidden}.example-rating-summary-3 .rating-result{width:100px;display:inline-block;vertical-align:middle;position:relative}.example-rating-summary-3 .rating-result:before{position:absolute;top:0;left:0;width:100%;z-index:1;color:#aff5e3;display:block;font-family:'icons-blank-theme';content:'\e605' '\e605' '\e605' '\e605' '\e605';font-style:normal;font-size:28px;height:28px;line-height:28px;letter-spacing:-10px;speak:none;font-weight:400;-webkit-font-smoothing:antialiased}.example-rating-summary-3 .rating-result>span{display:block;overflow:hidden}.example-rating-summary-3 .rating-result>span:before{position:relative;z-index:2;color:#0a6767;display:block;font-family:'icons-blank-theme';content:'\e605' '\e605' '\e605' '\e605' '\e605';font-style:normal;font-size:28px;height:28px;line-height:28px;letter-spacing:-10px;speak:none;font-weight:400;-webkit-font-smoothing:antialiased}.example-rating-summary-3 .rating-result>span span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-rating-summary-4{white-space:nowrap;overflow:hidden}.example-rating-summary-4 .rating-result{width:100px;display:inline-block;vertical-align:middle;position:relative}.example-rating-summary-4 .rating-result:before{position:absolute;top:0;left:0;width:100%;z-index:1;color:#c7c7c7;display:block;font-family:'icons-blank-theme';content:'\e600' '\e600' '\e600' '\e600' '\e600';font-style:normal;font-size:28px;height:28px;line-height:28px;letter-spacing:-10px;speak:none;font-weight:400;-webkit-font-smoothing:antialiased}.example-rating-summary-4 .rating-result>span{display:block;overflow:hidden}.example-rating-summary-4 .rating-result>span:before{position:relative;z-index:2;color:#ff5601;display:block;font-family:'icons-blank-theme';content:'\e600' '\e600' '\e600' '\e600' '\e600';font-style:normal;font-size:28px;height:28px;line-height:28px;letter-spacing:-10px;speak:none;font-weight:400;-webkit-font-smoothing:antialiased}.example-rating-summary-4 .rating-result>span span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-rating-summary-5{white-space:nowrap;overflow:hidden}.example-rating-summary-5 .label{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-rating-summary-5 .rating-result{width:100px;display:inline-block;vertical-align:middle;position:relative}.example-rating-summary-5 .rating-result:before{position:absolute;top:0;left:0;width:100%;z-index:1;color:#c7c7c7;display:block;font-family:'icons-blank-theme';content:'\e605' '\e605' '\e605' '\e605' '\e605';font-style:normal;font-size:28px;height:28px;line-height:28px;letter-spacing:-10px;speak:none;font-weight:400;-webkit-font-smoothing:antialiased}.example-rating-summary-5 .rating-result>span{display:block;overflow:hidden}.example-rating-summary-5 .rating-result>span:before{position:relative;z-index:2;color:#ff5601;display:block;font-family:'icons-blank-theme';content:'\e605' '\e605' '\e605' '\e605' '\e605';font-style:normal;font-size:28px;height:28px;line-height:28px;letter-spacing:-10px;speak:none;font-weight:400;-webkit-font-smoothing:antialiased}.example-rating-summary-5 .rating-result>span span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-rating-summary-6 .rating-summary{white-space:nowrap;overflow:hidden}.example-rating-summary-6 .rating-summary .rating-result{width:100px;display:inline-block;vertical-align:middle;position:relative}.example-rating-summary-6 .rating-summary .rating-result:before{position:absolute;top:0;left:0;width:100%;z-index:1;color:#c7c7c7;display:block;font-family:'icons-blank-theme';content:'\e605' '\e605' '\e605' '\e605' '\e605';font-style:normal;font-size:28px;height:28px;line-height:28px;letter-spacing:-10px;speak:none;font-weight:400;-webkit-font-smoothing:antialiased}.example-rating-summary-6 .rating-summary .rating-result>span{display:block;overflow:hidden}.example-rating-summary-6 .rating-summary .rating-result>span:before{position:relative;z-index:2;color:#ff5601;display:block;font-family:'icons-blank-theme';content:'\e605' '\e605' '\e605' '\e605' '\e605';font-style:normal;font-size:28px;height:28px;line-height:28px;letter-spacing:-10px;speak:none;font-weight:400;-webkit-font-smoothing:antialiased}.example-rating-summary-6 .rating-summary .rating-result>span span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-rating-summary-7{white-space:nowrap;overflow:hidden}.example-rating-summary-7 .rating-result{width:100px;display:inline-block;vertical-align:middle;position:relative}.example-rating-summary-7 .rating-result:before{position:absolute;top:0;left:0;width:100%;z-index:1;color:#c7c7c7;display:block;font-family:'icons-blank-theme';content:'\e605' '\e605' '\e605' '\e605' '\e605';font-style:normal;font-size:28px;height:28px;line-height:28px;letter-spacing:-10px;speak:none;font-weight:400;-webkit-font-smoothing:antialiased}.example-rating-summary-7 .rating-result>span{display:block;overflow:hidden}.example-rating-summary-7 .rating-result>span:before{position:relative;z-index:2;color:#ff5601;display:block;font-family:'icons-blank-theme';content:'\e605' '\e605' '\e605' '\e605' '\e605';font-style:normal;font-size:28px;height:28px;line-height:28px;letter-spacing:-10px;speak:none;font-weight:400;-webkit-font-smoothing:antialiased}.example-rating-summary-7 .rating-result>span span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-rating-summary-7 .label{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-responsive-block{padding:10px}.example-sections-1{position:relative;z-index:1}.example-sections-1:before,.example-sections-1:after{content:"";display:table}.example-sections-1:after{clear:both}.example-sections-1>.item.title{float:left;width:auto}.example-sections-1>.item.title>.switch{display:block;height:20px;position:relative;z-index:2}.example-sections-1>.item.content{box-sizing:border-box;float:right;margin-top:20px;margin-left:-100%;width:100%}.example-sections-1>.item.content:before,.example-sections-1>.item.content:after{content:"";display:table}.example-sections-1>.item.content:after{clear:both}.example-sections-1>.item.content.active{display:block}.example-sections-1>.item.title{margin:0 5px 0 0}.example-sections-1>.item.title>.switch{font-size:1.4rem;font-weight:600;line-height:20px;color:#7d7d7d;text-decoration:none;background:#f0f0f0;border:1px solid #d1d1d1;border-bottom:0;height:20px;padding:5px 20px 5px 20px}.example-sections-1>.item.title>.switch:visited{color:#7d7d7d;text-decoration:none}.example-sections-1>.item.title>.switch:hover{color:#7d7d7d;text-decoration:none}.example-sections-1>.item.title>.switch:active{color:#333;text-decoration:none}.example-sections-1>.item.title:not(.disabled)>.switch:focus,.example-sections-1>.item.title:not(.disabled)>.switch:hover{background:#fcfcfc}.example-sections-1>.item.title:not(.disabled)>.switch:active,.example-sections-1>.item.title.active>.switch,.example-sections-1>.item.title.active>.switch:focus,.example-sections-1>.item.title.active>.switch:hover{background:#fff;color:#333}.example-sections-1>.item.title.active>.switch,.example-sections-1>.item.title.active>.switch:focus,.example-sections-1>.item.title.active>.switch:hover{padding-bottom:6px}.example-sections-1>.item.content{background:#fff;margin-top:31px;padding:20px 20px 20px 20px;border:1px solid #d1d1d1}.example-sections-2{position:relative;z-index:1}.example-sections-2:before,.example-sections-2:after{content:"";display:table}.example-sections-2:after{clear:both}.example-sections-2>.item.title{float:left;width:auto}.example-sections-2>.item.title>.switch{display:block;height:20px;position:relative;z-index:2}.example-sections-2>.item.content{box-sizing:border-box;float:right;margin-top:20px;margin-left:-100%;width:100%}.example-sections-2>.item.content:before,.example-sections-2>.item.content:after{content:"";display:table}.example-sections-2>.item.content:after{clear:both}.example-sections-2>.item.content.active{display:block}.example-sections-2>.item.title{margin:0 5px 0 0}.example-sections-2>.item.title>.switch{font-size:1.4rem;font-weight:600;line-height:20px;color:#7d7d7d;text-decoration:none;background:#f0f0f0;border:1px solid #d1d1d1;border-bottom:0;height:20px;padding:5px 20px 5px 20px}.example-sections-2>.item.title>.switch:visited{color:#7d7d7d;text-decoration:none}.example-sections-2>.item.title>.switch:hover{color:#7d7d7d;text-decoration:none}.example-sections-2>.item.title>.switch:active{color:#333;text-decoration:none}.example-sections-2>.item.title:not(.disabled)>.switch:focus,.example-sections-2>.item.title:not(.disabled)>.switch:hover{background:#fcfcfc}.example-sections-2>.item.title:not(.disabled)>.switch:active,.example-sections-2>.item.title.active>.switch,.example-sections-2>.item.title.active>.switch:focus,.example-sections-2>.item.title.active>.switch:hover{background:#fff;color:#333}.example-sections-2>.item.title.active>.switch,.example-sections-2>.item.title.active>.switch:focus,.example-sections-2>.item.title.active>.switch:hover{padding-bottom:6px}.example-sections-2>.item.content{background:#fff;margin-top:31px;padding:20px 20px 20px 20px;border:0;border-top:1px solid #d1d1d1}.example-sections-3{margin:0;padding:0}.example-sections-3>.item.title{box-sizing:border-box;float:none;width:100%}.example-sections-3>.item.title>.switch{display:block}.example-sections-3>.item.content{box-sizing:border-box;float:none;margin:0;display:block}.example-sections-3>.item.content:before,.example-sections-3>.item.content:after{content:"";display:table}.example-sections-3>.item.content:after{clear:both}.example-sections-3>.item.content.active{display:block}.example-sections-3>.item.title{margin:0 0 5px}.example-sections-3>.item.title>.switch{background:#f0f0f0;border-top:1px solid #d1d1d1;border-right:1px solid #d1d1d1;border-bottom:1px solid #d1d1d1;border-left:1px solid #d1d1d1;height:40px;padding:5px 20px 5px 20px;font-size:1.8rem;font-weight:600;line-height:40px;color:#7d7d7d;text-decoration:none}.example-sections-3>.item.title>.switch:visited{color:#7d7d7d;text-decoration:none}.example-sections-3>.item.title>.switch:hover{color:#7d7d7d;text-decoration:none}.example-sections-3>.item.title>.switch:active{color:#333;text-decoration:none}.example-sections-3>.item.title:not(.disabled)>.switch:focus,.example-sections-3>.item.title:not(.disabled)>.switch:hover{background:#fcfcfc}.example-sections-3>.item.title:not(.disabled)>.switch:active,.example-sections-3>.item.title.active>.switch,.example-sections-3>.item.title.active>.switch:focus,.example-sections-3>.item.title.active>.switch:hover{background:#fff;padding-bottom:5px}.example-sections-3>.item.content{background:#fff;border:1px solid #d1d1d1;margin:0 0 5px;padding:20px 20px 20px 20px}@media only screen and (max-width: 99999px){.example-sections-4{ position:relative;z-index:1}.example-sections-4:before,.example-sections-4:after{content:"";display:table}.example-sections-4:after{clear:both}.example-sections-4>.item.title{float:left;width:auto}.example-sections-4>.item.title>.switch{display:block;height:20px;position:relative;z-index:2}.example-sections-4>.item.content{box-sizing:border-box;float:right;margin-top:20px;margin-left:-100%;width:100%}.example-sections-4>.item.content:before,.example-sections-4>.item.content:after{content:"";display:table}.example-sections-4>.item.content:after{clear:both}.example-sections-4>.item.content.active{display:block}.example-sections-4>.item.title{margin:0 5px 0 0}.example-sections-4>.item.title>.switch{font-size:1.4rem;font-weight:600;line-height:20px;color:#7d7d7d;text-decoration:none;background:#f0f0f0;border:1px solid #d1d1d1;border-bottom:0;height:20px;padding:5px 20px 5px 20px}.example-sections-4>.item.title>.switch:visited{color:#7d7d7d;text-decoration:none}.example-sections-4>.item.title>.switch:hover{color:#7d7d7d;text-decoration:none}.example-sections-4>.item.title>.switch:active{color:#333;text-decoration:none}.example-sections-4>.item.title:not(.disabled)>.switch:focus,.example-sections-4>.item.title:not(.disabled)>.switch:hover{background:#fcfcfc}.example-sections-4>.item.title:not(.disabled)>.switch:active,.example-sections-4>.item.title.active>.switch,.example-sections-4>.item.title.active>.switch:focus,.example-sections-4>.item.title.active>.switch:hover{background:#fff;color:#333}.example-sections-4>.item.title.active>.switch,.example-sections-4>.item.title.active>.switch:focus,.example-sections-4>.item.title.active>.switch:hover{padding-bottom:6px}.example-sections-4>.item.content{background:#fff;margin-top:31px;padding:20px 20px 20px 20px;border:1px solid #d1d1d1}}@media only screen and (max-width: 768px){.example-sections-4{ margin:0;padding:0}.example-sections-4>.item.title{box-sizing:border-box;float:none;width:100%}.example-sections-4>.item.title>.switch{display:block}.example-sections-4>.item.content{box-sizing:border-box;float:none;margin:0;display:block}.example-sections-4>.item.content:before,.example-sections-4>.item.content:after{content:"";display:table}.example-sections-4>.item.content:after{clear:both}.example-sections-4>.item.content.active{display:block}.example-sections-4>.item.title{margin:0 0 5px}.example-sections-4>.item.title>.switch{background:#f0f0f0;border-top:1px solid #d1d1d1;border-right:1px solid #d1d1d1;border-bottom:1px solid #d1d1d1;border-left:1px solid #d1d1d1;height:40px;padding:5px 20px 5px 20px;font-size:1.8rem;font-weight:600;line-height:40px;color:#7d7d7d;text-decoration:none}.example-sections-4>.item.title>.switch:visited{color:#7d7d7d;text-decoration:none}.example-sections-4>.item.title>.switch:hover{color:#7d7d7d;text-decoration:none}.example-sections-4>.item.title>.switch:active{color:#333;text-decoration:none}.example-sections-4>.item.title:not(.disabled)>.switch:focus,.example-sections-4>.item.title:not(.disabled)>.switch:hover{background:#fcfcfc}.example-sections-4>.item.title:not(.disabled)>.switch:active,.example-sections-4>.item.title.active>.switch,.example-sections-4>.item.title.active>.switch:focus,.example-sections-4>.item.title.active>.switch:hover{background:#fff;padding-bottom:5px}.example-sections-4>.item.content{background:#fff;border:1px solid #d1d1d1;margin:0 0 5px;padding:20px 20px 20px 20px}}.example-sections-5{position:relative;z-index:1}.example-sections-5:before,.example-sections-5:after{content:"";display:table}.example-sections-5:after{clear:both}.example-sections-5>.item.title{float:left;width:auto}.example-sections-5>.item.title>.switch{display:block;height:20px;position:relative;z-index:2}.example-sections-5>.item.content{box-sizing:border-box;float:right;margin-top:20px;margin-left:-100%;width:100%}.example-sections-5>.item.content:before,.example-sections-5>.item.content:after{content:"";display:table}.example-sections-5>.item.content:after{clear:both}.example-sections-5>.item.content.active{display:block}.example-sections-6{margin:0;padding:0}.example-sections-6>.item.title{box-sizing:border-box;float:none;width:100%}.example-sections-6>.item.title>.switch{display:block}.example-sections-6>.item.content{box-sizing:border-box;float:none;margin:0;display:block}.example-sections-6>.item.content:before,.example-sections-6>.item.content:after{content:"";display:table}.example-sections-6>.item.content:after{clear:both}.example-sections-6>.item.content.active{display:block}.example-table-1{border-collapse:collapse;border-spacing:0;max-width:100%;width:100%}.example-table-1 th{text-align:left}.example-table-1>tbody>tr>th,.example-table-1>tfoot>tr>th,.example-table-1>tbody>tr>td,.example-table-1>tfoot>tr>td{vertical-align:top}.example-table-1>thead>tr>th,.example-table-1>thead>tr>td{vertical-align:bottom}.example-table-1>thead>tr>th,.example-table-1>tbody>tr>th,.example-table-1>tfoot>tr>th,.example-table-1>thead>tr>td,.example-table-1>tbody>tr>td,.example-table-1>tfoot>tr>td{padding:8px 10px}.example-table-2>thead>tr>th,.example-table-2>tbody>tr>th,.example-table-2>tfoot>tr>th{color:#111;font-weight:700}.example-table-3{border-collapse:collapse;border-spacing:0;max-width:100%;width:100%}.example-table-3 th{text-align:left}.example-table-3>tbody>tr>th,.example-table-3>tfoot>tr>th,.example-table-3>tbody>tr>td,.example-table-3>tfoot>tr>td{vertical-align:top}.example-table-3>thead>tr>th,.example-table-3>thead>tr>td{vertical-align:bottom}.example-table-3>thead>tr>th,.example-table-3>tbody>tr>th,.example-table-3>tfoot>tr>th,.example-table-3>thead>tr>td,.example-table-3>tbody>tr>td,.example-table-3>tfoot>tr>td{padding:8px 10px}.example-table-3>caption{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-table-4{border-collapse:collapse;border-spacing:0;max-width:100%;width:100%}.example-table-4 th{text-align:left}.example-table-4>tbody>tr>th,.example-table-4>tfoot>tr>th,.example-table-4>tbody>tr>td,.example-table-4>tfoot>tr>td{vertical-align:top}.example-table-4>thead>tr>th,.example-table-4>thead>tr>td{vertical-align:bottom}.example-table-4>thead>tr>th,.example-table-4>tbody>tr>th,.example-table-4>tfoot>tr>th,.example-table-4>thead>tr>td,.example-table-4>tbody>tr>td,.example-table-4>tfoot>tr>td{padding:8px 10px}.example-table-4>thead>tr>td,.example-table-4>tbody>tr>td,.example-table-4>tfoot>tr>td{padding:15px 25px 5px 0}.example-table-4>thead>tr>th,.example-table-4>tbody>tr>th,.example-table-4>tfoot>tr>th{padding:15px 25px 10px 0}.example-table-5{border-collapse:collapse;border-spacing:0;max-width:100%;width:100%;background:#fff}.example-table-5 th{text-align:left}.example-table-5>tbody>tr>th,.example-table-5>tfoot>tr>th,.example-table-5>tbody>tr>td,.example-table-5>tfoot>tr>td{vertical-align:top}.example-table-5>thead>tr>th,.example-table-5>thead>tr>td{vertical-align:bottom}.example-table-5>thead>tr>th,.example-table-5>tbody>tr>th,.example-table-5>tfoot>tr>th,.example-table-5>thead>tr>td,.example-table-5>tbody>tr>td,.example-table-5>tfoot>tr>td{padding:8px 10px}.example-table-5>thead{background:#ccf}.example-table-5>tfoot{background:#cff}.example-table-5>tbody>tr>td{background:#fcc}.example-table-5>tbody>tr>th{background:#ffc}.example-table-6{border-collapse:collapse;border-spacing:0;max-width:100%;width:100%;border:1px solid #d1d1d1}.example-table-6 th{text-align:left}.example-table-6>tbody>tr>th,.example-table-6>tfoot>tr>th,.example-table-6>tbody>tr>td,.example-table-6>tfoot>tr>td{vertical-align:top}.example-table-6>thead>tr>th,.example-table-6>thead>tr>td{vertical-align:bottom}.example-table-6>thead>tr>th,.example-table-6>tbody>tr>th,.example-table-6>tfoot>tr>th,.example-table-6>thead>tr>td,.example-table-6>tbody>tr>td,.example-table-6>tfoot>tr>td{padding:8px 10px}.example-table-6>thead>tr>th,.example-table-6>tbody>tr>th,.example-table-6>tfoot>tr>th,.example-table-6>thead>tr>td,.example-table-6>tbody>tr>td,.example-table-6>tfoot>tr>td{border:1px solid #d1d1d1}.example-table-7{border-collapse:collapse;border-spacing:0;max-width:100%;width:100%}.example-table-7 th{text-align:left}.example-table-7>tbody>tr>th,.example-table-7>tfoot>tr>th,.example-table-7>tbody>tr>td,.example-table-7>tfoot>tr>td{vertical-align:top}.example-table-7>thead>tr>th,.example-table-7>thead>tr>td{vertical-align:bottom}.example-table-7>thead>tr>th,.example-table-7>tbody>tr>th,.example-table-7>tfoot>tr>th,.example-table-7>thead>tr>td,.example-table-7>tbody>tr>td,.example-table-7>tfoot>tr>td{padding:8px 10px}.example-table-7>thead>tr>th,.example-table-7>tbody>tr>th,.example-table-7>tfoot>tr>th,.example-table-7>thead>tr>td,.example-table-7>tbody>tr>td,.example-table-7>tfoot>tr>td{border-top:1px solid #d1d1d1}.example-table-7>caption+thead>tr:first-child>th,.example-table-7>colgroup+thead>tr:first-child>th,.example-table-7>thead:first-child>tr:first-child>th,.example-table-7>caption+thead>tr:first-child>td,.example-table-7>colgroup+thead>tr:first-child>td,.example-table-7>thead:first-child>tr:first-child>td{border-top:0}.example-table-7>tbody+tbody{border-top:1px solid #d1d1d1}.example-table-8{border-collapse:collapse;border-spacing:0;max-width:100%;width:100%}.example-table-8 th{text-align:left}.example-table-8>tbody>tr>th,.example-table-8>tfoot>tr>th,.example-table-8>tbody>tr>td,.example-table-8>tfoot>tr>td{vertical-align:top}.example-table-8>thead>tr>th,.example-table-8>thead>tr>td{vertical-align:bottom}.example-table-8>thead>tr>th,.example-table-8>tbody>tr>th,.example-table-8>tfoot>tr>th,.example-table-8>thead>tr>td,.example-table-8>tbody>tr>td,.example-table-8>tfoot>tr>td{padding:8px 10px}.example-table-8>thead>tr>th,.example-table-8>tbody>tr>th,.example-table-8>tfoot>tr>th,.example-table-8>thead>tr>td,.example-table-8>tbody>tr>td,.example-table-8>tfoot>tr>td{border-left:1px solid #d1d1d1}.example-table-8>thead>tr>th:first-child,.example-table-8>tbody>tr>th:first-child,.example-table-8>tfoot>tr>th:first-child,.example-table-8>thead>tr>td:first-child,.example-table-8>tbody>tr>td:first-child,.example-table-8>tfoot>tr>td:first-child{border-left:0}.example-table-9{border-collapse:collapse;border-spacing:0;max-width:100%;width:100%;border:0}.example-table-9 th{text-align:left}.example-table-9>tbody>tr>th,.example-table-9>tfoot>tr>th,.example-table-9>tbody>tr>td,.example-table-9>tfoot>tr>td{vertical-align:top}.example-table-9>thead>tr>th,.example-table-9>thead>tr>td{vertical-align:bottom}.example-table-9>thead>tr>th,.example-table-9>tbody>tr>th,.example-table-9>tfoot>tr>th,.example-table-9>thead>tr>td,.example-table-9>tbody>tr>td,.example-table-9>tfoot>tr>td{padding:8px 10px}.example-table-9>thead>tr>th,.example-table-9>tbody>tr>th,.example-table-9>tfoot>tr>th,.example-table-9>thead>tr>td,.example-table-9>tbody>tr>td,.example-table-9>tfoot>tr>td{border:0}.example-table-9>thead>tr>th,.example-table-9>thead>tr>td{border-bottom:1px solid #d1d1d1}.example-table-10{border-collapse:collapse;border-spacing:0;max-width:100%;width:100%;border:0}.example-table-10 th{text-align:left}.example-table-10>tbody>tr>th,.example-table-10>tfoot>tr>th,.example-table-10>tbody>tr>td,.example-table-10>tfoot>tr>td{vertical-align:top}.example-table-10>thead>tr>th,.example-table-10>thead>tr>td{vertical-align:bottom}.example-table-10>thead>tr>th,.example-table-10>tbody>tr>th,.example-table-10>tfoot>tr>th,.example-table-10>thead>tr>td,.example-table-10>tbody>tr>td,.example-table-10>tfoot>tr>td{padding:8px 10px}.example-table-10>thead>tr>th,.example-table-10>tbody>tr>th,.example-table-10>tfoot>tr>th,.example-table-10>thead>tr>td,.example-table-10>tbody>tr>td,.example-table-10>tfoot>tr>td{border:0}.example-table-11{border-collapse:collapse;border-spacing:0;max-width:100%;width:100%}.example-table-11 th{text-align:left}.example-table-11>tbody>tr>th,.example-table-11>tfoot>tr>th,.example-table-11>tbody>tr>td,.example-table-11>tfoot>tr>td{vertical-align:top}.example-table-11>thead>tr>th,.example-table-11>thead>tr>td{vertical-align:bottom}.example-table-11>thead>tr>th,.example-table-11>tbody>tr>th,.example-table-11>tfoot>tr>th,.example-table-11>thead>tr>td,.example-table-11>tbody>tr>td,.example-table-11>tfoot>tr>td{padding:8px 10px}.example-table-11>tbody>tr:nth-child(even)>td,.example-table-11>tbody>tr:nth-child(even)>th{background:#ffc;color:#000}.example-table-12{border-collapse:collapse;border-spacing:0;max-width:100%;width:100%}.example-table-12 th{text-align:left}.example-table-12>tbody>tr>th,.example-table-12>tfoot>tr>th,.example-table-12>tbody>tr>td,.example-table-12>tfoot>tr>td{vertical-align:top}.example-table-12>thead>tr>th,.example-table-12>thead>tr>td{vertical-align:bottom}.example-table-12>thead>tr>th,.example-table-12>tbody>tr>th,.example-table-12>tfoot>tr>th,.example-table-12>thead>tr>td,.example-table-12>tbody>tr>td,.example-table-12>tfoot>tr>td{padding:8px 10px}.example-table-12>tbody>tr:nth-child(even):hover>td,.example-table-12>tbody>tr:nth-child(even):hover>th{background:#f0f0f0}.example-table-12>tbody>tr:nth-child(odd):hover>td,.example-table-12>tbody>tr:nth-child(odd):hover>th{background:#f0f0f0}.example-table-13{border-collapse:collapse;border-spacing:0;max-width:100%;width:100%;border:1px solid #d1d1d1}.example-table-13 th{text-align:left}.example-table-13>tbody>tr>th,.example-table-13>tfoot>tr>th,.example-table-13>tbody>tr>td,.example-table-13>tfoot>tr>td{vertical-align:top}.example-table-13>thead>tr>th,.example-table-13>thead>tr>td{vertical-align:bottom}.example-table-13>thead>tr>th,.example-table-13>tbody>tr>th,.example-table-13>tfoot>tr>th,.example-table-13>thead>tr>td,.example-table-13>tbody>tr>td,.example-table-13>tfoot>tr>td{padding:8px 10px}.example-table-13>thead>tr>th,.example-table-13>tbody>tr>th,.example-table-13>tfoot>tr>th,.example-table-13>thead>tr>td,.example-table-13>tbody>tr>td,.example-table-13>tfoot>tr>td{border:1px solid #d1d1d1}.example-table-13>tbody>tr:nth-child(odd)>td,.example-table-13>tbody>tr:nth-child(odd)>th{background:#fff}.example-table-13>tbody>tr:nth-child(even):hover>td,.example-table-13>tbody>tr:nth-child(even):hover>th{background:#f0f0f0}.example-table-13>tbody>tr:nth-child(odd):hover>td,.example-table-13>tbody>tr:nth-child(odd):hover>th{background:#f0f0f0}@media only screen and (max-width: 768px){.example-table-14{ width:100%;overflow-y:hidden;overflow-x:auto;-ms-overflow-style:-ms-autohiding-scrollbar;-webkit-overflow-scrolling:touch}}.example-table-15{border-collapse:collapse;border-spacing:0;max-width:100%;width:100%;border:1px solid #d1d1d1}.example-table-15 th{text-align:left}.example-table-15>tbody>tr>th,.example-table-15>tfoot>tr>th,.example-table-15>tbody>tr>td,.example-table-15>tfoot>tr>td{vertical-align:top}.example-table-15>thead>tr>th,.example-table-15>thead>tr>td{vertical-align:bottom}.example-table-15>thead>tr>th,.example-table-15>tbody>tr>th,.example-table-15>tfoot>tr>th,.example-table-15>thead>tr>td,.example-table-15>tbody>tr>td,.example-table-15>tfoot>tr>td{padding:8px 10px}.example-table-15>thead>tr>th,.example-table-15>tbody>tr>th,.example-table-15>tfoot>tr>th,.example-table-15>thead>tr>td,.example-table-15>tbody>tr>td,.example-table-15>tfoot>tr>td{border:1px solid #d1d1d1}.example-table-15>tbody>tr:nth-child(odd)>td,.example-table-15>tbody>tr:nth-child(odd)>th{background:#fff}.example-table-15>tbody>tr:nth-child(even):hover>td,.example-table-15>tbody>tr:nth-child(even):hover>th{background:#f0f0f0}.example-table-15>tbody>tr:nth-child(odd):hover>td,.example-table-15>tbody>tr:nth-child(odd):hover>th{background:#f0f0f0}@media only screen and (max-width: 768px){.example-table-15{ border:0;display:block;background:#cff}.example-table-15>tbody>tr:nth-child(odd)>td,.example-table-15>tbody>tr:nth-child(odd)>th{background:#cff}.example-table-15>tbody>tr:nth-child(even):hover>td,.example-table-15>tbody>tr:nth-child(even):hover>th{background:#cff}.example-table-15>tbody>tr:nth-child(odd):hover>td,.example-table-15>tbody>tr:nth-child(odd):hover>th{background:#cff}.example-table-15>thead>tr>th{display:none}.example-table-15>tbody{display:block}.example-table-15>tbody>tr{display:block}.example-table-15>tbody>tr td,.example-table-15>tbody>tr th{border-bottom:0;display:block;padding:5px 0}.example-table-15>tbody>tr td:before,.example-table-15>tbody>tr th:before{content:attr(data-th) ":";display:inline-block;padding-right:10px;color:#111;font-weight:700}.example-table-15>tbody>tr td{background:#cff}.example-table-15>tbody>tr>th{background-color:#ffc!important}}.example-tooltip-bottom{position:relative}.example-tooltip-bottom .tooltip-content{z-index:100;background:#fff;min-width:210px;max-width:360px;padding:12px 16px;display:none;position:absolute;text-align:left;color:#333;line-height:1.4;border:1px solid #bbb;top:100%;left:0;margin-top:5px}.example-tooltip-bottom .tooltip-content:after,.example-tooltip-bottom .tooltip-content:before{border:solid transparent;content:'';height:0;width:0;position:absolute}.example-tooltip-bottom .tooltip-content:after{border-color:transparent;border-width:5px}.example-tooltip-bottom .tooltip-content:before{border-color:transparent;border-width:6px}.example-tooltip-bottom .tooltip-content:after,.example-tooltip-bottom .tooltip-content:before{bottom:100%}.example-tooltip-bottom .tooltip-content:after{border-bottom-color:#fff;margin-left:-5px;left:15px}.example-tooltip-bottom .tooltip-content:before{border-bottom-color:#bbb;margin-left:-6px;left:15px}.example-tooltip-bottom .tooltip-toggle{cursor:help}.example-tooltip-bottom .tooltip-toggle:hover+.tooltip-content,.example-tooltip-bottom .tooltip-toggle:focus+.tooltip-content,.example-tooltip-bottom:hover .tooltip-content{display:block}.example-tooltip-left{position:relative}.example-tooltip-left .tooltip-content{z-index:100;background:#fff;min-width:210px;max-width:360px;padding:12px 16px;display:none;position:absolute;text-align:left;color:#333;line-height:1.4;border:1px solid #bbb;right:100%;top:0;margin-right:5px}.example-tooltip-left .tooltip-content:after,.example-tooltip-left .tooltip-content:before{border:solid transparent;content:'';height:0;width:0;position:absolute}.example-tooltip-left .tooltip-content:after{border-color:transparent;border-width:5px}.example-tooltip-left .tooltip-content:before{border-color:transparent;border-width:6px}.example-tooltip-left .tooltip-content:after,.example-tooltip-left .tooltip-content:before{left:100%}.example-tooltip-left .tooltip-content:after{border-left-color:#fff;margin-top:-5px;top:15px}.example-tooltip-left .tooltip-content:before{border-left-color:#bbb;margin-top:-6px;top:15px}.example-tooltip-left .tooltip-toggle{cursor:help}.example-tooltip-left .tooltip-toggle:hover+.tooltip-content,.example-tooltip-left .tooltip-toggle:focus+.tooltip-content,.example-tooltip-left:hover .tooltip-content{display:block}.example-tooltip-right{position:relative}.example-tooltip-right .tooltip-content{z-index:100;background:#fff;min-width:210px;max-width:360px;padding:12px 16px;display:none;position:absolute;text-align:left;color:#333;line-height:1.4;border:1px solid #bbb;left:100%;top:0;margin-left:5px}.example-tooltip-right .tooltip-content:after,.example-tooltip-right .tooltip-content:before{border:solid transparent;content:'';height:0;width:0;position:absolute}.example-tooltip-right .tooltip-content:after{border-color:transparent;border-width:5px}.example-tooltip-right .tooltip-content:before{border-color:transparent;border-width:6px}.example-tooltip-right .tooltip-content:after,.example-tooltip-right .tooltip-content:before{right:100%}.example-tooltip-right .tooltip-content:after{border-right-color:#fff;margin-top:-5px;top:15px}.example-tooltip-right .tooltip-content:before{border-right-color:#bbb;margin-top:-6px;top:15px}.example-tooltip-right .tooltip-toggle{cursor:help}.example-tooltip-right .tooltip-toggle:hover+.tooltip-content,.example-tooltip-right .tooltip-toggle:focus+.tooltip-content,.example-tooltip-right:hover .tooltip-content{display:block}.example-tooltip-top{position:relative}.example-tooltip-top .tooltip-content{z-index:100;background:#fff;min-width:210px;max-width:360px;padding:12px 16px;display:none;position:absolute;text-align:left;color:#333;line-height:1.4;border:1px solid #bbb;bottom:100%;left:0;margin-bottom:5px}.example-tooltip-top .tooltip-content:after,.example-tooltip-top .tooltip-content:before{border:solid transparent;content:'';height:0;width:0;position:absolute}.example-tooltip-top .tooltip-content:after{border-color:transparent;border-width:5px}.example-tooltip-top .tooltip-content:before{border-color:transparent;border-width:6px}.example-tooltip-top .tooltip-content:after,.example-tooltip-top .tooltip-content:before{top:100%}.example-tooltip-top .tooltip-content:after{border-top-color:#fff;margin-left:-5px;left:15px}.example-tooltip-top .tooltip-content:before{border-top-color:#bbb;margin-left:-6px;left:15px}.example-tooltip-top .tooltip-toggle{cursor:help}.example-tooltip-top .tooltip-toggle:hover+.tooltip-content,.example-tooltip-top .tooltip-toggle:focus+.tooltip-content,.example-tooltip-top:hover .tooltip-content{display:block}html{font-size:62.5%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;font-size-adjust:100%}body{font-size:1.4rem;color:#333;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;font-weight:400;font-style:normal;line-height:1.42857143}p{margin-top:0rem;margin-bottom:1rem}abbr[title]{cursor:help;border-bottom:1px dotted #d1d1d1}b,strong{font-weight:700}em,i{font-style:italic}mark{background:#f0f0f0;color:#000}small,.small{font-size:12px}hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #d1d1d1}sub,sup{font-size:71.42857143%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}dfn{font-style:italic}h1{font-size:4rem;font-weight:300;line-height:1.1;margin-top:0rem;margin-bottom:2rem}h2{font-size:2.6rem;font-weight:300;line-height:1.1;margin-top:2.5rem;margin-bottom:2rem}h3{font-size:1.8rem;font-weight:300;line-height:1.1;margin-top:1.5rem;margin-bottom:1rem}h4{font-size:1.4rem;font-weight:700;line-height:1.1;margin-top:2rem;margin-bottom:2rem}h5{font-size:1.2rem;font-weight:700;line-height:1.1;margin-top:2rem;margin-bottom:2rem}h6{font-size:1rem;font-weight:700;line-height:1.1;margin-top:2rem;margin-bottom:2rem}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small,h1 .small,h2 .small,h3 .small,h4 .small,h5 .small,h6 .small{font-size:71.42857143%;color:#333;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;font-weight:400;font-style:normal;line-height:1}a,.alink{color:#1979c3;text-decoration:none}a:visited,.alink:visited{color:#800080;text-decoration:none}a:hover,.alink:hover{color:#006bb4;text-decoration:underline}a:active,.alink:active{color:#ff5501;text-decoration:underline}ul,ol{margin-top:0rem;margin-bottom:2.5rem}ul>li,ol>li{margin-top:0rem;margin-bottom:1rem}ul ul,ol ul,ul ol,ol ol{margin-bottom:0}dl{margin-top:0;margin-bottom:20px}dt{font-weight:700;margin-top:0;margin-bottom:5px}dd{margin-top:0;margin-bottom:10px;margin-left:0}code,kbd,pre,samp{font-family:Menlo,Monaco,Consolas,'Courier New',monospace}code{background:#f0f0f0;color:#111;font-size:1.2rem;padding:2px 4px;white-space:nowrap}kbd{background:#f0f0f0;color:#111;font-size:1.2rem;padding:2px 4px}pre{background:#f0f0f0;border:1px solid #d1d1d1;color:#111;display:block;font-size:1.2rem;margin:0 0 10px;line-height:1.42857143;padding:10px;word-break:break-all;word-wrap:break-word}pre code{padding:0;font-size:inherit;color:inherit;white-space:pre-wrap;background-color:transparent;border-radius:0}blockquote{border-left:0 solid #d1d1d1;margin:0 0 20px 40px;padding:0;font-size:1.4rem;color:#333;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;font-weight:400;font-style:italic;line-height:1.42857143}blockquote p:last-child,blockquote ul:last-child,blockquote ol:last-child{margin-bottom:0}blockquote footer,blockquote small,blockquote .small{color:#333;display:block;font-size:1rem;line-height:1.42857143}blockquote footer:before,blockquote small:before,blockquote .small:before{content:'\2014 \00A0'}blockquote cite{font-style:normal}blockquote:before,blockquote:after{content:""}q{quotes:none}q:before,q:after{content:'';content:none}cite{font-style:normal}.example{font-size:2.5rem}.example-line-height{line-height:3rem}.example-word-wrap{word-break:break-all;word-break:break-word;word-wrap:break-word;-webkit-hyphens:auto;-moz-hyphens:auto;-ms-hyphens:auto;hyphens:auto;background:#ccc;width:120px}.example-text-overflow{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:#ccc;width:120px}.example-text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.example-hyphens{word-wrap:break-word;-webkit-hyphens:auto;-moz-hyphens:auto;-ms-hyphens:auto;hyphens:auto}.example-hyphens-none{word-wrap:break-word;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none}.example-typography{font-size:3rem;color:#fc0;font-family:Menlo,Monaco,Consolas,'Courier New',monospace;font-weight:500;font-style:italic;line-height:1.2}.example-list-reset-styles{margin:0;padding:0;list-style:none none}.example-list-inline{margin:0;padding:0;list-style:none none}.example-list-inline>li{display:inline-block;vertical-align:top}.example-link-default{color:#1979c3;text-decoration:none}.example-link-default:visited{color:#800080;text-decoration:none}.example-link-default:hover{color:#006bb4;text-decoration:underline}.example-link-default:active{color:#ff5501;text-decoration:underline}.example-link{color:#008000;text-decoration:none}.example-link:visited{color:#800080;text-decoration:none}.example-link:hover{color:#ffa500;text-decoration:none}.example-link:active{color:#ff5501;text-decoration:underline}.example-heading{font-size:4rem;font-weight:300;line-height:1.1;margin-top:0rem;margin-bottom:2rem}.example-heading-2{font-size:2.6rem;font-weight:300;line-height:1.1;margin-top:2.5rem;margin-bottom:2rem}html{font-size:62.5%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;font-size-adjust:100%}body{font-size:1.4rem;color:#333;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;font-weight:400;font-style:normal;line-height:1.42857143}p{margin-top:0rem;margin-bottom:1rem}abbr[title]{cursor:help;border-bottom:1px dotted #d1d1d1}b,strong{font-weight:700}em,i{font-style:italic}mark{background:#f0f0f0;color:#000}small,.small{font-size:12px}hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #d1d1d1}sub,sup{font-size:71.42857143%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}dfn{font-style:italic}h1{font-size:4rem;font-weight:300;line-height:1.1;margin-top:0rem;margin-bottom:2rem}h2{font-size:2.6rem;font-weight:300;line-height:1.1;margin-top:2.5rem;margin-bottom:2rem}h3{font-size:1.8rem;font-weight:300;line-height:1.1;margin-top:1.5rem;margin-bottom:1rem}h4{font-size:1.4rem;font-weight:700;line-height:1.1;margin-top:2rem;margin-bottom:2rem}h5{font-size:1.2rem;font-weight:700;line-height:1.1;margin-top:2rem;margin-bottom:2rem}h6{font-size:1rem;font-weight:700;line-height:1.1;margin-top:2rem;margin-bottom:2rem}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small,h1 .small,h2 .small,h3 .small,h4 .small,h5 .small,h6 .small{font-size:71.42857143%;color:#333;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;font-weight:400;font-style:normal;line-height:1}a,.alink{color:#1979c3;text-decoration:none}a:visited,.alink:visited{color:#800080;text-decoration:none}a:hover,.alink:hover{color:#006bb4;text-decoration:underline}a:active,.alink:active{color:#ff5501;text-decoration:underline}ul,ol{margin-top:0rem;margin-bottom:2.5rem}ul>li,ol>li{margin-top:0rem;margin-bottom:1rem}ul ul,ol ul,ul ol,ol ol{margin-bottom:0}dl{margin-top:0;margin-bottom:20px}dt{font-weight:700;margin-top:0;margin-bottom:5px}dd{margin-top:0;margin-bottom:10px;margin-left:0}code,kbd,pre,samp{font-family:Menlo,Monaco,Consolas,'Courier New',monospace}code{background:#f0f0f0;color:#111;font-size:1.2rem;padding:2px 4px;white-space:nowrap}kbd{background:#f0f0f0;color:#111;font-size:1.2rem;padding:2px 4px}pre{background:#f0f0f0;border:1px solid #d1d1d1;color:#111;display:block;font-size:1.2rem;margin:0 0 10px;line-height:1.42857143;padding:10px;word-break:break-all;word-wrap:break-word}pre code{padding:0;font-size:inherit;color:inherit;white-space:pre-wrap;background-color:transparent;border-radius:0}blockquote{border-left:0 solid #d1d1d1;margin:0 0 20px 40px;padding:0;font-size:1.4rem;color:#333;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;font-weight:400;font-style:italic;line-height:1.42857143}blockquote p:last-child,blockquote ul:last-child,blockquote ol:last-child{margin-bottom:0}blockquote footer,blockquote small,blockquote .small{color:#333;display:block;font-size:1rem;line-height:1.42857143}blockquote footer:before,blockquote small:before,blockquote .small:before{content:'\2014 \00A0'}blockquote cite{font-style:normal}blockquote:before,blockquote:after{content:""}q{quotes:none}q:before,q:after{content:'';content:none}cite{font-style:normal}.example-clearfix-container-1{border:1px solid red}.example-clearfix-container-2{border:1px solid #0f0}.example-clearfix-container-2:before,.example-clearfix-container-2:after{content:"";display:table}.example-clearfix-container-2:after{clear:both}.example-clearfix-item.left{float:left}.example-clearfix-item.right{float:right}.example-visibility-hidden{visibility:hidden;height:0}.example-visually-hidden-1{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-visually-hidden-2{background:#fdf0d5;padding:5px;position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.example-visually-hidden-2{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto}.example-css-container{padding:20px;background:#e8e8e8}.example-rotate{background:red;position:absolute;height:20px;width:40px;-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.example-placeholder::-webkit-input-placeholder{color:#808080;font-weight:700}.example-placeholder:-moz-placeholder{color:#808080;font-weight:700}.example-placeholder::-moz-placeholder{color:#808080;font-weight:700}.example-placeholder:-ms-input-placeholder{color:#808080;font-weight:700}.example-background-gradient-1{background-color:#ccf;background-repeat:repeat-x;background-image:-webkit-linear-gradient(top, #cff 0, #ccf 100%);background-image:linear-gradient(to bottom, #cff 0, #ccf 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ccffff', endColorstr='#ccccff', GradientType=0)}.example-background-gradient-2{background-color:#ccf;background-repeat:repeat-x;background-image:-webkit-linear-gradient(left,color-stop( #cff 0),color-stop( #ccf 100%));background-image:linear-gradient(to right, #cff 0, #ccf 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ccffff', endColorstr='#ccccff', GradientType=1)}body{padding:15px;background-image:none}</style></head><body><nav class="bar top cf"><div class="container"><a href="index.html" class="brand">Magento UI Library</a><ul class="menu"><li><a href="#" data-toggle="dropdown-1" unselectable="on" class="dropdown-toggle">files</a><ul id="dropdown-1" hidden class="dropdown"><li><a href="actions-toolbar.html">actions-toolbar</a></li><li><a href="breadcrumbs.html">breadcrumbs</a></li><li><a href="buttons.html">buttons</a></li><li><a href="docs.html">docs</a></li><li><a href="dropdowns.html">dropdowns</a></li><li><a href="forms.html">forms</a></li><li><a href="icons.html">icons</a></li><li><a href="layout.html">layout</a></li><li><a href="lib.html">lib</a></li><li><a href="loaders.html">loaders</a></li><li><a href="messages.html">messages</a></li><li><a href="pages.html">pages</a></li><li><a href="popups.html">popups</a></li><li><a href="rating.html">rating</a></li><li><a href="resets.html">resets</a></li><li><a href="responsive.html">responsive</a></li><li><a href="sections.html">sections</a></li><li><a href="tables.html">tables</a></li><li><a href="tooltips.html">tooltips</a></li><li><a href="typography.html">typography</a></li><li><a href="utilities.html">utilities</a></li><li><a href="variables.html">variables</a></li></ul></li></ul><div class="nav"><button title="Table of Contents" data-toggle="nav-toc"><svg viewBox="0 0 512 512" height="22" width="22" class="icon"><path d="M108.9,403.1V462H50v-58.9H108.9z M108.9,285.4H50v58.9h58.9V285.4zM108.9,50H50v58.9h58.9V50z M108.9,167.7H50v58.9h58.9V167.7z M167.7,344.3H462v-58.9H167.7V344.3zM167.7,50v58.9H462V50H167.7z M167.7,462H462v-58.9H167.7V462z M167.7,226.6H462v-58.9H167.7V226.6z"></path></svg></button><input type="search" placeholder="Search" class="search"></div></div></nav><section class="container"><article id="responsive" class="section"><div class="docs"><a href="#responsive" class="permalink"><svg viewBox="0 0 512 512" height="32" width="32" class="icon"><path d="M156.2,199.7c7.5-7.5,15.9-13.8,24.8-18.7c49.6-27.3,113.1-12.8,145,35.5l-38.5,38.5c-11.1-25.2-38.5-39.6-65.8-33.5c-10.3,2.3-20.1,7.4-28,15.4l-73.9,73.9c-22.4,22.4-22.4,58.9,0,81.4c22.4,22.4,58.9,22.4,81.4,0l22.8-22.8c20.7,8.2,42.9,11.5,64.9,9.9l-50.3,50.3c-43.1,43.1-113,43.1-156.1,0c-43.1-43.1-43.1-113-0-156.1L156.2,199.7z M273.6,82.3l-50.3,50.3c21.9-1.6,44.2,1.6,64.9,9.9l22.8-22.8c22.4-22.4,58.9-22.4,81.4,0c22.4,22.4,22.4,58.9,0,81.4l-73.9,73.9c-22.5,22.5-59.1,22.3-81.4,0c-5.2-5.2-9.7-11.7-12.5-18l-38.5,38.5c4,6.1,8.3,11.5,13.7,16.9c13.9,13.9,31.7,24.3,52.1,29.3c26.5,6.4,54.8,2.8,79.2-10.6c8.9-4.9,17.3-11.1,24.8-18.7l73.9-73.9c43.1-43.1,43.1-113,0-156.1C386.6,39.2,316.7,39.2,273.6,82.3z"></path></svg></a><h1 id="responsive">Responsive</h1>
+<p>  Magento UI library provides a strong approach for working with media queries. It`s based on recursive call of <nobr><code>.media-width()</code></nobr> mixin defined anywhere in project but invoked in one place in <nobr><code>lib/web/css/source/lib/responsive.less</code></nobr>. That&#39;s why in the resulting <code>styles.css</code> we have every media query only once with all the rules there, not a multiple calls for the same query.</p>
 <p>  To see the media queries work resize window to understand which breakpoint is applied.</p>
 <textarea class="preview-code" spellcheck="false">  &lt;div class="example-responsive-block"&gt;
       are applied.
   &lt;/div&gt;</textarea>
-</div><div class="code"><pre><code>
-.example-responsive-block {
+</div><div class="code"><pre><code>.example-responsive-block {
     padding: 10px;
 }
-.responsive-max-m(@break) when (@break = @screen-m) {
+
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-m) {
     .example-responsive-block {
         background: #ffc;
     }
@@ -24,7 +24,8 @@
         font-weight: bold;
     }
 }
-.responsive-min-l(@break) when (@break = @screen-m) {
+
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .example-responsive-block {
         background: #ccf;
     }
@@ -32,51 +33,44 @@
         content: 'Desktop styles ';
         font-weight: bold;
     }
-}
-
-</code></pre></div></article><article id="responsive-mixins-usage" class="section"><div class="docs"><a href="#responsive-mixins-usage" class="permalink"><svg viewBox="0 0 512 512" height="32" width="32" class="icon"><path d="M156.2,199.7c7.5-7.5,15.9-13.8,24.8-18.7c49.6-27.3,113.1-12.8,145,35.5l-38.5,38.5c-11.1-25.2-38.5-39.6-65.8-33.5c-10.3,2.3-20.1,7.4-28,15.4l-73.9,73.9c-22.4,22.4-22.4,58.9,0,81.4c22.4,22.4,58.9,22.4,81.4,0l22.8-22.8c20.7,8.2,42.9,11.5,64.9,9.9l-50.3,50.3c-43.1,43.1-113,43.1-156.1,0c-43.1-43.1-43.1-113-0-156.1L156.2,199.7z M273.6,82.3l-50.3,50.3c21.9-1.6,44.2,1.6,64.9,9.9l22.8-22.8c22.4-22.4,58.9-22.4,81.4,0c22.4,22.4,22.4,58.9,0,81.4l-73.9,73.9c-22.5,22.5-59.1,22.3-81.4,0c-5.2-5.2-9.7-11.7-12.5-18l-38.5,38.5c4,6.1,8.3,11.5,13.7,16.9c13.9,13.9,31.7,24.3,52.1,29.3c26.5,6.4,54.8,2.8,79.2-10.6c8.9-4.9,17.3-11.1,24.8-18.7l73.9-73.9c43.1-43.1,43.1-113,0-156.1C386.6,39.2,316.7,39.2,273.6,82.3z"></path></svg></a><h1 id="responsive-mixins-usage">Responsive mixins usage</h1>
-<p>  For gathering media queries you can use responsive mixin collectors</p>
-<h2 id="common">Common</h2>
-<p>  For common styles every time you want to add some styles you should write:</p>
-<pre><code class="lang-css">  .responsive-common() {
-      your styles
-  }</code></pre>
-<p>  It will be complied to:</p>
-<pre><code class="lang-css">      your styles</code></pre>
-<h2 id="mobile">Mobile</h2>
-<p>  Every time you want to add some mobile media queries you can use one of:</p>
-<pre><code class="lang-css">  .responsive-max-m(@break) {}
-  .responsive-min-m(@break) {}</code></pre>
-<p>  As example</p>
-<pre><code class="lang-css">  .responsive-max-m(@break) when (@break = @screen-s) {
+}</code></pre></div></article><article id="responsive-mixins-usage" class="section"><div class="docs"><a href="#responsive-mixins-usage" class="permalink"><svg viewBox="0 0 512 512" height="32" width="32" class="icon"><path d="M156.2,199.7c7.5-7.5,15.9-13.8,24.8-18.7c49.6-27.3,113.1-12.8,145,35.5l-38.5,38.5c-11.1-25.2-38.5-39.6-65.8-33.5c-10.3,2.3-20.1,7.4-28,15.4l-73.9,73.9c-22.4,22.4-22.4,58.9,0,81.4c22.4,22.4,58.9,22.4,81.4,0l22.8-22.8c20.7,8.2,42.9,11.5,64.9,9.9l-50.3,50.3c-43.1,43.1-113,43.1-156.1,0c-43.1-43.1-43.1-113-0-156.1L156.2,199.7z M273.6,82.3l-50.3,50.3c21.9-1.6,44.2,1.6,64.9,9.9l22.8-22.8c22.4-22.4,58.9-22.4,81.4,0c22.4,22.4,22.4,58.9,0,81.4l-73.9,73.9c-22.5,22.5-59.1,22.3-81.4,0c-5.2-5.2-9.7-11.7-12.5-18l-38.5,38.5c4,6.1,8.3,11.5,13.7,16.9c13.9,13.9,31.7,24.3,52.1,29.3c26.5,6.4,54.8,2.8,79.2-10.6c8.9-4.9,17.3-11.1,24.8-18.7l73.9-73.9c43.1-43.1,43.1-113,0-156.1C386.6,39.2,316.7,39.2,273.6,82.3z"></path></svg></a><h1 id="responsive-mixins-usage">Responsive mixins usage</h1>
+<p>  For grouping style rules in certain media queries .media-width() mixin used.</p>
+<pre><code class="lang-css"> .media-width(&lt;@extremum&gt;, &lt;@break&gt;);</code></pre>
+<p>  <nobr><code>@extremum: max|min</code></nobr> - sets whether to use <strong>min-width</strong> or <strong>max-width</strong> in media query condition<br />
+  <nobr><code>@break: value</code></nobr> - sets the value of breakpoint to compare with in media query condition.<br />
+  For example</p>
+<pre><code class="lang-css">  .media-width(@extremum, @break) when (@extremum = &#39;max&#39;) and (@break = @screen-s) {
       your styles
   }</code></pre>
 <p>  It will be complied to</p>
 <pre><code class="lang-css">  @media only screen and (max-width: 640px) {
       your styles
   }</code></pre>
-<h2 id="desktop">Desktop</h2>
-<p>  Every time you want to add some mobile media queries you can use:</p>
-<pre><code class="lang-css">  .responsive-min-l(@break)) {}</code></pre>
-<p>  As example</p>
-<pre><code class="lang-css">  .responsive-min-l(@break) when (@break = @screen-m) {
-      your styles
-  }</code></pre>
-<p>  will be compiled to</p>
-<pre><code class="lang-css">  @media only screen and (min-width: 768px) {
+<p>  &nbsp;</p>
+</div></article><article id="media-query-style-groups-separation-variables" class="section"><div class="docs"><a href="#media-query-style-groups-separation-variables" class="permalink"><svg viewBox="0 0 512 512" height="32" width="32" class="icon"><path d="M156.2,199.7c7.5-7.5,15.9-13.8,24.8-18.7c49.6-27.3,113.1-12.8,145,35.5l-38.5,38.5c-11.1-25.2-38.5-39.6-65.8-33.5c-10.3,2.3-20.1,7.4-28,15.4l-73.9,73.9c-22.4,22.4-22.4,58.9,0,81.4c22.4,22.4,58.9,22.4,81.4,0l22.8-22.8c20.7,8.2,42.9,11.5,64.9,9.9l-50.3,50.3c-43.1,43.1-113,43.1-156.1,0c-43.1-43.1-43.1-113-0-156.1L156.2,199.7z M273.6,82.3l-50.3,50.3c21.9-1.6,44.2,1.6,64.9,9.9l22.8-22.8c22.4-22.4,58.9-22.4,81.4,0c22.4,22.4,22.4,58.9,0,81.4l-73.9,73.9c-22.5,22.5-59.1,22.3-81.4,0c-5.2-5.2-9.7-11.7-12.5-18l-38.5,38.5c4,6.1,8.3,11.5,13.7,16.9c13.9,13.9,31.7,24.3,52.1,29.3c26.5,6.4,54.8,2.8,79.2-10.6c8.9-4.9,17.3-11.1,24.8-18.7l73.9-73.9c43.1-43.1,43.1-113,0-156.1C386.6,39.2,316.7,39.2,273.6,82.3z"></path></svg></a><h1 id="media-query-style-groups-separation-variables">Media query style groups separation variables</h1>
+<p>  <code>@media-common: true|false</code> - sets whether to output common styles.
+  For common styles every time you want to add some styles you should use</p>
+<pre><code class="lang-css">  &amp; when (@media-common = true) {
       your styles
   }</code></pre>
+<p>  <code>@media-target: all|desktop|mobile</code> - Sets target device for styles output</p>
+<pre><code class="lang-css">  &amp; when (@media-target = &#39;mobile&#39;),
+  (@media-target = &#39;all&#39;) {
+     @media only screen and (max-width: (@screen-xs - 1)) {
+         .media-width(&#39;max&#39;, @screen-xs);
+     }
+ }</code></pre>
 <h2 id="gathering">Gathering</h2>
 <p>  Everything that you include in collector mixins above will go in place where they declarated.
   As example all</p>
-<pre><code class="lang-css">  .responsive-min-l(@break)) {
+<pre><code class="lang-css">  .media-width(@extremum, @break) {
       your code
   }</code></pre>
 <p>  Will go to</p>
-<pre><code class="lang-css">  .responsive-min-l(@break));</code></pre>
-<p>  By default you can find it responsive.less file in lib</p>
-<p>  &nbsp;</p>
-</div><div class="code"><pre><code></code></pre></div></article><article id="responsive-breakpoints" class="section"><div class="docs"><a href="#responsive-breakpoints" class="permalink"><svg viewBox="0 0 512 512" height="32" width="32" class="icon"><path d="M156.2,199.7c7.5-7.5,15.9-13.8,24.8-18.7c49.6-27.3,113.1-12.8,145,35.5l-38.5,38.5c-11.1-25.2-38.5-39.6-65.8-33.5c-10.3,2.3-20.1,7.4-28,15.4l-73.9,73.9c-22.4,22.4-22.4,58.9,0,81.4c22.4,22.4,58.9,22.4,81.4,0l22.8-22.8c20.7,8.2,42.9,11.5,64.9,9.9l-50.3,50.3c-43.1,43.1-113,43.1-156.1,0c-43.1-43.1-43.1-113-0-156.1L156.2,199.7z M273.6,82.3l-50.3,50.3c21.9-1.6,44.2,1.6,64.9,9.9l22.8-22.8c22.4-22.4,58.9-22.4,81.4,0c22.4,22.4,22.4,58.9,0,81.4l-73.9,73.9c-22.5,22.5-59.1,22.3-81.4,0c-5.2-5.2-9.7-11.7-12.5-18l-38.5,38.5c4,6.1,8.3,11.5,13.7,16.9c13.9,13.9,31.7,24.3,52.1,29.3c26.5,6.4,54.8,2.8,79.2-10.6c8.9-4.9,17.3-11.1,24.8-18.7l73.9-73.9c43.1-43.1,43.1-113,0-156.1C386.6,39.2,316.7,39.2,273.6,82.3z"></path></svg></a><h1 id="responsive-breakpoints">Responsive breakpoints</h1>
+<pre><code class="lang-css">  .media-width(@extremum, @break));</code></pre>
+<p>  By default you can find it <code>responsive.less</code> file in li
+  &nbsp;</p>
+</div></article><article id="responsive-breakpoints" class="section"><div class="docs"><a href="#responsive-breakpoints" class="permalink"><svg viewBox="0 0 512 512" height="32" width="32" class="icon"><path d="M156.2,199.7c7.5-7.5,15.9-13.8,24.8-18.7c49.6-27.3,113.1-12.8,145,35.5l-38.5,38.5c-11.1-25.2-38.5-39.6-65.8-33.5c-10.3,2.3-20.1,7.4-28,15.4l-73.9,73.9c-22.4,22.4-22.4,58.9,0,81.4c22.4,22.4,58.9,22.4,81.4,0l22.8-22.8c20.7,8.2,42.9,11.5,64.9,9.9l-50.3,50.3c-43.1,43.1-113,43.1-156.1,0c-43.1-43.1-43.1-113-0-156.1L156.2,199.7z M273.6,82.3l-50.3,50.3c21.9-1.6,44.2,1.6,64.9,9.9l22.8-22.8c22.4-22.4,58.9-22.4,81.4,0c22.4,22.4,22.4,58.9,0,81.4l-73.9,73.9c-22.5,22.5-59.1,22.3-81.4,0c-5.2-5.2-9.7-11.7-12.5-18l-38.5,38.5c4,6.1,8.3,11.5,13.7,16.9c13.9,13.9,31.7,24.3,52.1,29.3c26.5,6.4,54.8,2.8,79.2-10.6c8.9-4.9,17.3-11.1,24.8-18.7l73.9-73.9c43.1-43.1,43.1-113,0-156.1C386.6,39.2,316.7,39.2,273.6,82.3z"></path></svg></a><h1 id="responsive-breakpoints">Responsive breakpoints</h1>
 <p>  In Magento UI library there are predefined variables for breakpoints.</p>
 <pre><code class="lang-css">  @screen-xxs: 320px;
   @screen-xs: 400px;
@@ -85,4 +79,4 @@
   @screen-l: 1000px;
   @screen-xl: 1440px;</code></pre>
 <p>  &nbsp;</p>
-</div></article></section><div class="bar bottom"><div hidden class="settings container"><!-- Icons from http://iconmonstr.com--><button title="Desktop (1280)" data-width='1280'><svg viewBox="0 0 412 386" height="24" width="26" class="icon"><path d="m147.6,343.9c-4.5,15.9-26.2,37.6-42.1,42.1h201c-15.3,-4-38.1,-26.8-42.1,-42.1H147.6zM387,0.5H25c-13.8,0-25,11.2-25,25V294c0,13.8 11.2,25 25,25h362c13.8,0 25,-11.2 25,-25V25.5C412,11.7 400.8,0.5 387,0.5zM369.9,238.2H42.1L42.1,42.6 369.9,42.6V238.2z"></path></svg></button><button title="Laptop (1024)" data-width='1024'><svg viewBox="0 0 384 312" height="23" width="28" class="icon"><path d="m349.2,20.5c0,-11-9,-20-20,-20H53.6c-11,0-20,9-20,20v194H349.2v-194zm-27,167H60.6V27.5H322.2v160zm28,42H32.6L2.6,282.1c-3.5,6.2-3.5,13.8 0.1,19.9 3.6,6.2 10.2,9.9 17.3,9.9H363.1c7.1,0 13.7,-3.8 17.3,-10 3.6,-6.2 3.6,-13.8 0,-20l-30.2,-52.5zm-196.9,54 8,-23.5h60.5l8,23.5h-76.5z"></path></svg></button><button title="Tablet (768)" data-width='768'><svg viewBox="0 0 317 412" height="24" width="18" class="icon"><path d="M 316.5,380 V 32 c 0,-17.7 -14.3,-32 -32,-32 H 32 C 14.3,0 0,14.3 0,32 v 348 c 0,17.7 14.3,32 32,32 h 252.5 c 17.7,0 32,-14.3 32,-32 z M 40,367 V 45 H 276.5 V 367 H 40 z m 109.8,22.7 c 0,-4.7 3.8,-8.5 8.5,-8.5 4.7,0 8.5,3.8 8.5,8.5 0,4.7 -3.8,8.5 -8.5,8.5 -4.7,0 -8.5,-3.8 -8.5,-8.5 z"></path></svg></button><button title="Smart phone (320)" data-width='320'><svg viewBox="0 0 224 412" height="24" width="13" class="icon"><path d="M 190.7,0 H 33 C 14.8,0 0,14.8 0,33 v 346 c 0,18.2 14.8,33 33,33 h 157.7 c 18.2,0 33,-14.8 33,-33 V 33 c 0,-18.2 -14.8,-33 -33,-33 z M 94.3,30.2 h 37 c 2.2,0 4,1.8 4,4 0,2.2 -1.8,4 -4,4 h -37 c -2.2,0 -4,-1.8 -4,-4 0,-2.2 1.8,-4 4,-4 z m 18.5,362.8 c -8.8,0 -16,-7.2 -16,-16 0,-8.8 7.2,-16 16,-16 8.8,0 16,7.2 16,16 0,8.8 -7.2,16 -16,16 z M 198.6,343.8 H 25.1 V 68.2 h 173.5 v 275.5 z"></path></svg></button><button title="Feature phone (240)" data-width='240'><svg viewBox="0 0 201 412" height="24" width="12" class="icon"><path d="M 165.5,0.2 V 45 H 25 c -13.8,0 -25,11.2 -25,25 V 387 c 0,13.8 11.2,25 25,25 h 150.5 c 13.8,0 25,-11.2 25,-25 V 0.2 h -35 z M 65.2,366.5 H 34.2 v -24.5 h 31 v 24.5 z m 0,-44.3 H 34.2 v -24.5 h 31 v 24.5 z m 50.5,44.3 H 84.7 v -24.5 h 31 v 24.5 z m 0,-44.3 H 84.7 v -24.5 h 31 v 24.5 z m 50.5,44.3 h -31 v -24.5 h 31 v 24.5 z m 0,-44.3 h -31 v -24.5 h 31 v 24.5 z m 0,-59.3 h -132 V 95.4 h 132 V 262.9 z"></path></svg></button><button title="Auto (100%)" data-width="auto" class="auto is-active">Auto</button></div></div><script>(function(){var a=[{title:"actions-toolbar",filename:"actions-toolbar",url:"actions-toolbar.html"},{title:"",filename:"actions-toolbar",url:"actions-toolbar.html#"},{title:"Actions toolbar",filename:"actions-toolbar",url:"actions-toolbar.html#actions-toolbar"},{title:"Actions toolbar mixin variables",filename:"actions-toolbar",url:"actions-toolbar.html#actions-toolbar-mixin-variables"},{title:"Actions toolbar alignment",filename:"actions-toolbar",url:"actions-toolbar.html#actions-toolbar-alignment"},{title:"Reverse primary and secondary blocks",filename:"actions-toolbar",url:"actions-toolbar.html#reverse-primary-and-secondary-blocks"},{title:"Actions toolbar indents customizations",filename:"actions-toolbar",url:"actions-toolbar.html#actions-toolbar-indents-customizations"},{title:"Responsive actions toolbar",filename:"actions-toolbar",url:"actions-toolbar.html#responsive-actions-toolbar"},{title:"breadcrumbs",filename:"breadcrumbs",url:"breadcrumbs.html"},{title:"",filename:"breadcrumbs",url:"breadcrumbs.html#"},{title:"Breadcrumbs",filename:"breadcrumbs",url:"breadcrumbs.html#breadcrumbs"},{title:"Breadcrumbs variables",filename:"breadcrumbs",url:"breadcrumbs.html#breadcrumbs-variables"},{title:"Button-styled breadcrumbs with gradient background, border, and no separating symbol",filename:"breadcrumbs",url:"breadcrumbs.html#buttonstyled-breadcrumbs-with-gradient-background-border-and-no-separating-symbol"},{title:"Breadcrumbs with solid background",filename:"breadcrumbs",url:"breadcrumbs.html#breadcrumbs-with-solid-background"},{title:"buttons",filename:"buttons",url:"buttons.html"},{title:"",filename:"buttons",url:"buttons.html#"},{title:"Default button",filename:"buttons",url:"buttons.html#default-button"},{title:"Button variables",filename:"buttons",url:"buttons.html#button-variables"},{title:"Button as an icon",filename:"buttons",url:"buttons.html#button-as-an-icon"},{title:"Button with an icon on the left or right side of the text",filename:"buttons",url:"buttons.html#button-with-an-icon-on-the-left-or-right-side-of-the-text"},{title:"Button with fixed width",filename:"buttons",url:"buttons.html#button-with-fixed-width"},{title:"Primary button",filename:"buttons",url:"buttons.html#primary-button"},{title:"Primary button variables",filename:"buttons",url:"buttons.html#primary-button-variables"},{title:"Button with gradient background",filename:"buttons",url:"buttons.html#button-with-gradient-background"},{title:"Button as a link",filename:"buttons",url:"buttons.html#button-as-a-link"},{title:"Link as a button",filename:"buttons",url:"buttons.html#link-as-a-button"},{title:"Button reset",filename:"buttons",url:"buttons.html#button-reset"},{title:"Button revert secondary color",filename:"buttons",url:"buttons.html#button-revert-secondary-color"},{title:"Button revert secondary color variables",filename:"buttons",url:"buttons.html#button-revert-secondary-color-variables"},{title:"Button revert secondary size",filename:"buttons",url:"buttons.html#button-revert-secondary-size"},{title:"Button revert secondary size variables",filename:"buttons",url:"buttons.html#button-revert-secondary-size-variables"},{title:"docs",filename:"docs",url:"docs.html"},{title:"",filename:"docs",url:"docs.html#"},{title:"Documentation",filename:"docs",url:"docs.html#documentation"},{title:"dropdowns",filename:"dropdowns",url:"dropdowns.html"},{title:"",filename:"dropdowns",url:"dropdowns.html#"},{title:"Drop-down and split buttons mixins",filename:"dropdowns",url:"dropdowns.html#dropdown-and-split-buttons-mixins"},{title:"Drop-down",filename:"dropdowns",url:"dropdowns.html#dropdown"},{title:"Drop-down variables",filename:"dropdowns",url:"dropdowns.html#dropdown-variables"},{title:"Drop-down with icon customization",filename:"dropdowns",url:"dropdowns.html#dropdown-with-icon-customization"},{title:"Modify dropdown list styles",filename:"dropdowns",url:"dropdowns.html#modify-dropdown-list-styles"},{title:"Split button",filename:"dropdowns",url:"dropdowns.html#split-button"},{title:"Split button variables",filename:"dropdowns",url:"dropdowns.html#split-button-variables"},{title:"Split button - button styling",filename:"dropdowns",url:"dropdowns.html#split-button-button-styling"},{title:"Split button icon customization",filename:"dropdowns",url:"dropdowns.html#split-button-icon-customization"},{title:"Split button drop-down list customization",filename:"dropdowns",url:"dropdowns.html#split-button-dropdown-list-customization"},{title:"forms",filename:"forms",url:"forms.html"},{title:"",filename:"forms",url:"forms.html#"},{title:"Forms mixins",filename:"forms",url:"forms.html#forms-mixins"},{title:"Global forms elements customization",filename:"forms",url:"forms.html#global-forms-elements-customization"},{title:"Fieldsets & fields customization",filename:"forms",url:"forms.html#fieldsets-fields-customization"},{title:"Fieldset and legend customization variables",filename:"forms",url:"forms.html#fieldset-and-legend-customization-variables"},{title:"Fields customization variables",filename:"forms",url:"forms.html#fields-customization-variables"},{title:"Required fields message customization variables",filename:"forms",url:"forms.html#required-fields-message-customization-variables"},{title:"Form element inputs customization",filename:"forms",url:"forms.html#form-element-inputs-customization"},{title:"Form element inputs customization variables",filename:"forms",url:"forms.html#form-element-inputs-customization-variables"},{title:"Form element choice",filename:"forms",url:"forms.html#form-element-choice"},{title:"Form element choice variables",filename:"forms",url:"forms.html#form-element-choice-variables"},{title:"Custom color",filename:"forms",url:"forms.html#custom-color"},{title:"Input number - input-text view",filename:"forms",url:"forms.html#input-number-inputtext-view"},{title:"Input search - input-text view",filename:"forms",url:"forms.html#input-search-inputtext-view"},{title:"Form validation",filename:"forms",url:"forms.html#form-validation"},{title:"Form validation variables//  <pre>",filename:"forms",url:"forms.html#form-validation-variables-pre"},{title:"icons",filename:"icons",url:"icons.html"},{title:"",filename:"icons",url:"icons.html#"},{title:"Icons",filename:"icons",url:"icons.html#icons"},{title:"Icon with image or sprite",filename:"icons",url:"icons.html#icon-with-image-or-sprite"},{title:"Icon with image or sprite variables",filename:"icons",url:"icons.html#icon-with-image-or-sprite-variables"},{title:"Icon position for an icon with image or sprite",filename:"icons",url:"icons.html#icon-position-for-an-icon-with-image-or-sprite"},{title:"Position for icon with image or sprite mixin variables",filename:"icons",url:"icons.html#position-for-icon-with-image-or-sprite-mixin-variables"},{title:"Icon sprite position (with grid)",filename:"icons",url:"icons.html#icon-sprite-position-with-grid"},{title:"Icon sprite position variables",filename:"icons",url:"icons.html#icon-sprite-position-variables"},{title:"Image/sprite icon size",filename:"icons",url:"icons.html#imagesprite-icon-size"},{title:"Image/sprite icon size variables",filename:"icons",url:"icons.html#imagesprite-icon-size-variables"},{title:"Font icon",filename:"icons",url:"icons.html#font-icon"},{title:"Font icon variables",filename:"icons",url:"icons.html#font-icon-variables"},{title:"Change the size of font icon",filename:"icons",url:"icons.html#change-the-size-of-font-icon"},{title:"Change the size of font icon variables",filename:"icons",url:"icons.html#change-the-size-of-font-icon-variables"},{title:"Hide icon text",filename:"icons",url:"icons.html#hide-icon-text"},{title:"Sprite and font icons for Blank theme",filename:"icons",url:"icons.html#sprite-and-font-icons-for-blank-theme"},{title:"layout",filename:"layout",url:"layout.html"},{title:"",filename:"layout",url:"layout.html#"},{title:"Layout",filename:"layout",url:"layout.html#layout"},{title:"Layout global variables",filename:"layout",url:"layout.html#layout-global-variables"},{title:"Page layouts",filename:"layout",url:"layout.html#page-layouts"},{title:"Layout column",filename:"layout",url:"layout.html#layout-column"},{title:"Layout column variables",filename:"layout",url:"layout.html#layout-column-variables"},{title:"Layout width",filename:"layout",url:"layout.html#layout-width"},{title:"Layout width variables",filename:"layout",url:"layout.html#layout-width-variables"},{title:"lib",filename:"lib",url:"lib.html"},{title:"",filename:"lib",url:"lib.html#"},{title:"Including Magento UI library to your theme",filename:"lib",url:"lib.html#including-magento-ui-library-to-your-theme"},{title:"loaders",filename:"loaders",url:"loaders.html"},{title:"",filename:"loaders",url:"loaders.html#"},{title:"Loaders",filename:"loaders",url:"loaders.html#loaders"},{title:"Default loader variables",filename:"loaders",url:"loaders.html#default-loader-variables"},{title:"Loading",filename:"loaders",url:"loaders.html#loading"},{title:"Loading default variables",filename:"loaders",url:"loaders.html#loading-default-variables"},{title:"messages",filename:"messages",url:"messages.html"},{title:"",filename:"messages",url:"messages.html#"},{title:"Messages",filename:"messages",url:"messages.html#messages"},{title:"Information message",filename:"messages",url:"messages.html#information-message"},{title:"Warning message",filename:"messages",url:"messages.html#warning-message"},{title:"Error message",filename:"messages",url:"messages.html#error-message"},{title:"Success message",filename:"messages",url:"messages.html#success-message"},{title:"Notice message",filename:"messages",url:"messages.html#notice-message"},{title:"Message with inner icon",filename:"messages",url:"messages.html#message-with-inner-icon"},{title:"Message with lateral icon",filename:"messages",url:"messages.html#message-with-lateral-icon"},{title:"Custom message style",filename:"messages",url:"messages.html#custom-message-style"},{title:"Messages global variables",filename:"messages",url:"messages.html#messages-global-variables"},{title:"pages",filename:"pages",url:"pages.html"},{title:"",filename:"pages",url:"pages.html#"},{title:"Pagination HTML markup",filename:"pages",url:"pages.html#pagination-html-markup"},{title:"Pagination variables",filename:"pages",url:"pages.html#pagination-variables"},{title:"Pagination with label and gradient background on links",filename:"pages",url:"pages.html#pagination-with-label-and-gradient-background-on-links"},{title:'Pagination with "previous"..."next" text links and label',filename:"pages",url:"pages.html#pagination-with-previousnext-text-links-and-label"},{title:"Pagination without label, with solid background",filename:"pages",url:"pages.html#pagination-without-label-with-solid-background"},{title:"popups",filename:"popups",url:"popups.html"},{title:"",filename:"popups",url:"popups.html#"},{title:"Popups",filename:"popups",url:"popups.html#popups"},{title:"Popup variables",filename:"popups",url:"popups.html#popup-variables"},{title:"Window overlay mixin variables",filename:"popups",url:"popups.html#window-overlay-mixin-variables"},{title:"Fixed height popup",filename:"popups",url:"popups.html#fixed-height-popup"},{title:"Fixed content height popup",filename:"popups",url:"popups.html#fixed-content-height-popup"},{title:"Margins for header, content and footer block in popup",filename:"popups",url:"popups.html#margins-for-header-content-and-footer-block-in-popup"},{title:"Popup titles styled as theme headings",filename:"popups",url:"popups.html#popup-titles-styled-as-theme-headings"},{title:"Popup action toolbar",filename:"popups",url:"popups.html#popup-action-toolbar"},{title:"Popup Close button without an icon",filename:"popups",url:"popups.html#popup-close-button-without-an-icon"},{title:"Modify the icon of popup Close button",filename:"popups",url:"popups.html#modify-the-icon-of-popup-close-button"},{title:"Modify overlay styles",filename:"popups",url:"popups.html#modify-overlay-styles"},{title:"rating",filename:"rating",url:"rating.html"},{title:"",filename:"rating",url:"rating.html#"},{title:"Ratings",filename:"rating",url:"rating.html#ratings"},{title:"Global rating variables",filename:"rating",url:"rating.html#global-rating-variables"},{title:"Rating with vote",filename:"rating",url:"rating.html#rating-with-vote"},{title:"Rating with vote icons number customization",filename:"rating",url:"rating.html#rating-with-vote-icons-number-customization"},{title:"Rating with vote icons colors customization",filename:"rating",url:"rating.html#rating-with-vote-icons-colors-customization"},{title:"Rating with vote icons symbol customization",filename:"rating",url:"rating.html#rating-with-vote-icons-symbol-customization"},{title:"Accessible rating with vote",filename:"rating",url:"rating.html#accessible-rating-with-vote"},{title:"Rating summary",filename:"rating",url:"rating.html#rating-summary"},{title:"Rating summary icons number customization",filename:"rating",url:"rating.html#rating-summary-icons-number-customization"},{title:"Rating summary icons color customization",filename:"rating",url:"rating.html#rating-summary-icons-color-customization"},{title:"Rating summary icons symbol customization",filename:"rating",url:"rating.html#rating-summary-icons-symbol-customization"},{title:"Rating summary hide label",filename:"rating",url:"rating.html#rating-summary-hide-label"},{title:"Rating summary multiple ratings",filename:"rating",url:"rating.html#rating-summary-multiple-ratings"},{title:"Rating hide label mixin",filename:"rating",url:"rating.html#rating-hide-label-mixin"},{title:"resets",filename:"resets",url:"resets.html"},{title:"",filename:"resets",url:"resets.html#"},{title:"Resets",filename:"resets",url:"resets.html#resets"},{title:"responsive",filename:"responsive",url:"responsive.html"},{title:"Responsive",filename:"responsive",url:"responsive.html#responsive"},{title:"Responsive mixins usage",filename:"responsive",url:"responsive.html#responsive-mixins-usage"},{title:"Responsive breakpoints",filename:"responsive",url:"responsive.html#responsive-breakpoints"},{title:"sections",filename:"sections",url:"sections.html"},{title:"",filename:"sections",url:"sections.html#"},{title:"Tabs and accordions",filename:"sections",url:"sections.html#tabs-and-accordions"},{title:"Tabs",filename:"sections",url:"sections.html#tabs"},{title:"Tabs mixin variables",filename:"sections",url:"sections.html#tabs-mixin-variables"},{title:"Tabs with content top border",filename:"sections",url:"sections.html#tabs-with-content-top-border"},{title:"Accordion",filename:"sections",url:"sections.html#accordion"},{title:"Accordion mixin variables",filename:"sections",url:"sections.html#accordion-mixin-variables"},{title:"Responsive tabs",filename:"sections",url:"sections.html#responsive-tabs"},{title:"Tabs Base",filename:"sections",url:"sections.html#tabs-base"},{title:"Accordion Base",filename:"sections",url:"sections.html#accordion-base"},{title:"tables",filename:"tables",url:"tables.html"},{title:"",filename:"tables",url:"tables.html#"},{title:"Tables",filename:"tables",url:"tables.html#tables"},{title:"Table mixin variables",filename:"tables",url:"tables.html#table-mixin-variables"},{title:"Table typography",filename:"tables",url:"tables.html#table-typography"},{title:"Table typography mixin variables",filename:"tables",url:"tables.html#table-typography-mixin-variables"},{title:"Table caption",filename:"tables",url:"tables.html#table-caption"},{title:"Table caption mixin variables",filename:"tables",url:"tables.html#table-caption-mixin-variables"},{title:"Table cells resize",filename:"tables",url:"tables.html#table-cells-resize"},{title:"Table cells resize variables",filename:"tables",url:"tables.html#table-cells-resize-variables"},{title:"Table background customization",filename:"tables",url:"tables.html#table-background-customization"},{title:"Table background mixin variables",filename:"tables",url:"tables.html#table-background-mixin-variables"},{title:"Table borders customization",filename:"tables",url:"tables.html#table-borders-customization"},{title:"Table borders mixin variables",filename:"tables",url:"tables.html#table-borders-mixin-variables"},{title:"Table with horizontal borders",filename:"tables",url:"tables.html#table-with-horizontal-borders"},{title:"Table with vertical borders",filename:"tables",url:"tables.html#table-with-vertical-borders"},{title:"Table with light borders",filename:"tables",url:"tables.html#table-with-light-borders"},{title:"Table without borders",filename:"tables",url:"tables.html#table-without-borders"},{title:"Striped table",filename:"tables",url:"tables.html#striped-table"},{title:"Striped table mixin variables",filename:"tables",url:"tables.html#striped-table-mixin-variables"},{title:"Table with rows hover",filename:"tables",url:"tables.html#table-with-rows-hover"},{title:"Table with rows hover mixin variables",filename:"tables",url:"tables.html#table-with-rows-hover-mixin-variables"},{title:"Responsive table technics #1",filename:"tables",url:"tables.html#responsive-table-technics-1"},{title:"Responsive table technics #2",filename:"tables",url:"tables.html#responsive-table-technics-2"},{title:"Responsive table technics #2 mixin variables",filename:"tables",url:"tables.html#responsive-table-technics-2-mixin-variables"},{title:"tooltips",filename:"tooltips",url:"tooltips.html"},{title:"",filename:"tooltips",url:"tooltips.html#"},{title:"Tooltips",filename:"tooltips",url:"tooltips.html#tooltips"},{title:"Tooltips variables",filename:"tooltips",url:"tooltips.html#tooltips-variables"},{title:"typography",filename:"typography",url:"typography.html"},{title:"",filename:"typography",url:"typography.html#"},{title:"Typogrphy",filename:"typography",url:"typography.html#typogrphy"},{title:"Typography variables",filename:"typography",url:"typography.html#typography-variables"},{title:"Font-size mixin",filename:"typography",url:"typography.html#fontsize-mixin"},{title:"Line-height mixin",filename:"typography",url:"typography.html#lineheight-mixin"},{title:"Word breaking mixin",filename:"typography",url:"typography.html#word-breaking-mixin"},{title:"Font face mixin",filename:"typography",url:"typography.html#font-face-mixin"},{title:"Text overflow mixin",filename:"typography",url:"typography.html#text-overflow-mixin"},{title:"Text hide",filename:"typography",url:"typography.html#text-hide"},{title:"Hyphens",filename:"typography",url:"typography.html#hyphens"},{title:"Font style and color",filename:"typography",url:"typography.html#font-style-and-color"},{title:"Font style mixin variables",filename:"typography",url:"typography.html#font-style-mixin-variables"},{title:"Reset list styles",filename:"typography",url:"typography.html#reset-list-styles"},{title:"Reset list styles variables",filename:"typography",url:"typography.html#reset-list-styles-variables"},{title:"Inline-block list item styling",filename:"typography",url:"typography.html#inlineblock-list-item-styling"},{title:"Link styling mixin",filename:"typography",url:"typography.html#link-styling-mixin"},{title:"Link styling mixin variables",filename:"typography",url:"typography.html#link-styling-mixin-variables"},{title:"Heading styling mixin",filename:"typography",url:"typography.html#heading-styling-mixin"},{title:"Base typography mixins",filename:"typography",url:"typography.html#base-typography-mixins"},{title:"Headings typography mixin",filename:"typography",url:"typography.html#headings-typography-mixin"},{title:"Typography links mixin",filename:"typography",url:"typography.html#typography-links-mixin"},{title:"Typography lists mixin",filename:"typography",url:"typography.html#typography-lists-mixin"},{title:"Typography code elements mixin",filename:"typography",url:"typography.html#typography-code-elements-mixin"},{title:"Typography blockquote",filename:"typography",url:"typography.html#typography-blockquote"},{title:"utilities",filename:"utilities",url:"utilities.html"},{title:"",filename:"utilities",url:"utilities.html#"},{title:"Utilities",filename:"utilities",url:"utilities.html#utilities"},{title:".clearfix()",filename:"utilities",url:"utilities.html#clearfix"},{title:".visibility-hidden()",filename:"utilities",url:"utilities.html#visibilityhidden"},{title:".visually-hidden()",filename:"utilities",url:"utilities.html#visuallyhidden"},{title:".visually-hidden-reset()",filename:"utilities",url:"utilities.html#visuallyhiddenreset"},{title:".css()",filename:"utilities",url:"utilities.html#css"},{title:".css() variables",filename:"utilities",url:"utilities.html#css-variables"},{title:".rotate()",filename:"utilities",url:"utilities.html#rotate"},{title:".rotate() variables",filename:"utilities",url:"utilities.html#rotate-variables"},{title:".input-placeholder()",filename:"utilities",url:"utilities.html#inputplaceholder"},{title:".input-placeholder() variables",filename:"utilities",url:"utilities.html#inputplaceholder-variables"},{title:".background-gradient()",filename:"utilities",url:"utilities.html#backgroundgradient"},{title:".background-gradient() variables",filename:"utilities",url:"utilities.html#backgroundgradient-variables"},{title:"variables",filename:"variables",url:"variables.html"},{title:"",filename:"variables",url:"variables.html#"},{title:"List of Global Variables",filename:"variables",url:"variables.html#list-of-global-variables"},{title:"Table with rows hover mixin variables",filename:"variables",url:"variables.html#table-with-rows-hover-mixin-variables"}];(function(){"use strict";var b=function(a,b){return Array.prototype.indexOf.call(a,b)!==-1},c=function(a,b){return Array.prototype.filter.call(a,b)},d=function(a,b){return Array.prototype.forEach.call(a,b)},e=document.getElementsByTagName("body")[0];e.addEventListener("click",function(a){var b=a.target;b.tagName.toLowerCase()==="svg"&&(b=b.parentNode);var c=!1;b.dataset.toggle!=null&&(a.preventDefault(),b.classList.contains("is-active")||(c=!0)),d(e.querySelectorAll("[data-toggle]"),function(a){a.classList.remove("is-active"),document.getElementById(a.dataset.toggle).hidden=!0}),c&&(b.classList.add("is-active"),document.getElementById(b.dataset.toggle).hidden=!1)}),function(){var f=e.getElementsByClassName("nav")[0];if(!f)return;var g=document.createElement("ul");g.className="nav-results",g.id="nav-search",g.hidden=!0,d(a,function(a){var b,c,d;b=document.createElement("li"),b._title=a.title.toLowerCase(),b.hidden=!0,b.appendChild(c=document.createElement("a")),c.href=a.url,c.innerHTML=a.title,c.appendChild(d=document.createElement("span")),d.innerHTML=a.filename,d.className="nav-results-filename",g.appendChild(b)}),f.appendChild(g);var h=g.children,i=function(a){d(h,function(a){a.hidden=!0});var b=this.value.toLowerCase(),e=[];b!==""&&(e=c(h,function(a){return a._title.indexOf(b)!==-1})),e.length>0?(d(e,function(a){a.hidden=!1}),g.hidden=!1):g.hidden=!0},j=f.querySelector('input[type="search"]');j.addEventListener("keyup",i),j.addEventListener("focus",i),e.addEventListener("click",function(a){if(a.target.classList&&a.target.classList.contains("search"))return;g.hidden=!0}),g.addEventListener("click",function(a){j.value=""});var k=document.createElement("ul");k.id="nav-toc",k.hidden=!0,k.className="nav-results toc-list",c(e.getElementsByTagName("*"),function(a){return b(["h1","h2","h3"],a.tagName.toLowerCase())}).map(function(a){var b=document.createElement("li"),c=document.createElement("a"),d=a.tagName.toLowerCase()[1];c.classList.add("level-"+d),b.appendChild(c),c.href="#"+a.id,c.innerHTML=a.innerHTML,k.appendChild(b)}),f.appendChild(k)}()})(),function(){"use strict";if(location.hash==="#__preview__"||location.protocol==="data:")return;var a=function(a,b){return Array.prototype.forEach.call(a,b)},b=function(a,b){var e=Array.prototype.slice.call(arguments,2);return d(a,function(a){return(c(b)?b||a:a[b]).apply(a,e)})},c=function(a){return Object.prototype.toString.call(a)==="[object Function]"},d=function(a,b){return Array.prototype.map.call(a,b)},e=function(a,b){return d(a,function(a){return a[b]})},f=function(a){var b={},c=a.split(";");for(var d=0;c.length>d;d++){var e=c[d].trim().split("=");b[e[0]]=e[1]}return b},g=function(a,c){return b(e(a,"classList"),"remove",c)},h=function(a,b){a.contentDocument.defaultView.postMessage(b,"*")},i=document.getElementsByTagName("head")[0],j=document.getElementsByTagName("body")[0],k=e(i.querySelectorAll('style[type="text/preview"]'),"innerHTML").join(""),l=e(i.querySelectorAll('script[type="text/preview"]'),"innerHTML").join(""),m=location.href.split("#")[0]+"#__preview__",n=document.createElement("iframe");n.src="data:text/html,",j.appendChild(n),n.addEventListener("load",function(){var b={sameOriginDataUri:!0};try{this.contentDocument,this.contentDocument||(b.sameOriginDataUri=!1)}catch(c){b.sameOriginDataUri=!1}this.parentNode.removeChild(this),a(j.getElementsByTagName("textarea"),function(a,c){o(a,b,c),q(),p(a)})});var o=function(a,b,c){var d,e,f;d=document.createElement("div"),d.appendChild(e=document.createElement("div")),d.className="preview",e.appendChild(f=document.createElement("iframe")),e.className="resizeable",f.setAttribute("scrolling","no"),f.name="iframe"+c++,f.addEventListener("load",function(){var c,d,e,f,g,i,j;j=this.contentDocument;if(!b.sameOriginDataUri&&this.src!==m)return;this.src===m&&(c=j.createElement("html"),c.appendChild(j.createElement("head")),c.appendChild(d=j.createElement("body")),d.innerHTML=a.textContent,j.replaceChild(c,j.documentElement)),g=j.createElement("head"),g.appendChild(f=j.createElement("style")),g.appendChild(e=j.createElement("script")),e.textContent=l,f.textContent=k,i=j.getElementsByTagName("head")[0],i.parentNode.replaceChild(g,i),h(this,"getHeight")});var g;b.sameOriginDataUri?g="data:text/html;charset=utf-8,"+encodeURIComponent("<!doctype html><html><head></head></body>"+a.textContent):g=m,f.setAttribute("src",g);var i=function(){f.contentDocument.body.innerHTML=this.value,h(f,"getHeight")};a.addEventListener("keypress",i),a.addEventListener("keyup",i),a.parentNode.insertBefore(d,a)},p=function(a){var b=document.createElement("div");b.className="preview-code",b.style.position="absolute",b.style.left="-9999px",j.appendChild(b);var c=parseInt(window.getComputedStyle(a).getPropertyValue("max-height"),10),d=function(a){b.textContent=this.value+"\n";var d=b.offsetHeight+2;d>=c?this.style.overflow="auto":this.style.overflow="hidden",this.style.height=b.offsetHeight+2+"px"};a.addEventListener("keypress",d),a.addEventListener("keyup",d),d.call(a)},q=function(){var b=j.getElementsByClassName("settings")[0],c=j.getElementsByClassName("resizeable"),d=30,e=function(b){document.cookie="preview-width="+b,a(c,function(a){b==="auto"&&(b=a.parentNode.offsetWidth),a.style.width=b+"px",h(a.getElementsByTagName("iframe")[0],"getHeight")})},i=f(document.cookie)["preview-width"];if(i){e(i),g(b.getElementsByClassName("is-active"),"is-active");var k=b.querySelector('button[data-width="'+i+'"]');k&&k.classList.add("is-active")}window.addEventListener("message",function(a){if(a.data==null||!a.source)return;var b=a.data,c=document.getElementsByName(a.source.name)[0];b.height!=null&&c&&(c.parentNode.style.height=b.height+d+"px")},!1),b&&c.length>0&&(b.hidden=!1,b.addEventListener("click",function(a){var c=a.target.tagName.toLowerCase(),d;if(c==="button")d=a.target;else{if(c!=="svg")return;d=a.target.parentNode}a.preventDefault(),g(b.getElementsByClassName("is-active"),"is-active"),d.classList.add("is-active");var f=d.dataset.width;e(f)}))}}()})()</script></body></html><!-- Generated with StyleDocco (http://jacobrask.github.com/styledocco). -->
+</div></article></section><div class="bar bottom"><div hidden class="settings container"><!-- Icons from http://iconmonstr.com--><button title="Desktop (1280)" data-width='1280'><svg viewBox="0 0 412 386" height="24" width="26" class="icon"><path d="m147.6,343.9c-4.5,15.9-26.2,37.6-42.1,42.1h201c-15.3,-4-38.1,-26.8-42.1,-42.1H147.6zM387,0.5H25c-13.8,0-25,11.2-25,25V294c0,13.8 11.2,25 25,25h362c13.8,0 25,-11.2 25,-25V25.5C412,11.7 400.8,0.5 387,0.5zM369.9,238.2H42.1L42.1,42.6 369.9,42.6V238.2z"></path></svg></button><button title="Laptop (1024)" data-width='1024'><svg viewBox="0 0 384 312" height="23" width="28" class="icon"><path d="m349.2,20.5c0,-11-9,-20-20,-20H53.6c-11,0-20,9-20,20v194H349.2v-194zm-27,167H60.6V27.5H322.2v160zm28,42H32.6L2.6,282.1c-3.5,6.2-3.5,13.8 0.1,19.9 3.6,6.2 10.2,9.9 17.3,9.9H363.1c7.1,0 13.7,-3.8 17.3,-10 3.6,-6.2 3.6,-13.8 0,-20l-30.2,-52.5zm-196.9,54 8,-23.5h60.5l8,23.5h-76.5z"></path></svg></button><button title="Tablet (768)" data-width='768'><svg viewBox="0 0 317 412" height="24" width="18" class="icon"><path d="M 316.5,380 V 32 c 0,-17.7 -14.3,-32 -32,-32 H 32 C 14.3,0 0,14.3 0,32 v 348 c 0,17.7 14.3,32 32,32 h 252.5 c 17.7,0 32,-14.3 32,-32 z M 40,367 V 45 H 276.5 V 367 H 40 z m 109.8,22.7 c 0,-4.7 3.8,-8.5 8.5,-8.5 4.7,0 8.5,3.8 8.5,8.5 0,4.7 -3.8,8.5 -8.5,8.5 -4.7,0 -8.5,-3.8 -8.5,-8.5 z"></path></svg></button><button title="Smart phone (320)" data-width='320'><svg viewBox="0 0 224 412" height="24" width="13" class="icon"><path d="M 190.7,0 H 33 C 14.8,0 0,14.8 0,33 v 346 c 0,18.2 14.8,33 33,33 h 157.7 c 18.2,0 33,-14.8 33,-33 V 33 c 0,-18.2 -14.8,-33 -33,-33 z M 94.3,30.2 h 37 c 2.2,0 4,1.8 4,4 0,2.2 -1.8,4 -4,4 h -37 c -2.2,0 -4,-1.8 -4,-4 0,-2.2 1.8,-4 4,-4 z m 18.5,362.8 c -8.8,0 -16,-7.2 -16,-16 0,-8.8 7.2,-16 16,-16 8.8,0 16,7.2 16,16 0,8.8 -7.2,16 -16,16 z M 198.6,343.8 H 25.1 V 68.2 h 173.5 v 275.5 z"></path></svg></button><button title="Feature phone (240)" data-width='240'><svg viewBox="0 0 201 412" height="24" width="12" class="icon"><path d="M 165.5,0.2 V 45 H 25 c -13.8,0 -25,11.2 -25,25 V 387 c 0,13.8 11.2,25 25,25 h 150.5 c 13.8,0 25,-11.2 25,-25 V 0.2 h -35 z M 65.2,366.5 H 34.2 v -24.5 h 31 v 24.5 z m 0,-44.3 H 34.2 v -24.5 h 31 v 24.5 z m 50.5,44.3 H 84.7 v -24.5 h 31 v 24.5 z m 0,-44.3 H 84.7 v -24.5 h 31 v 24.5 z m 50.5,44.3 h -31 v -24.5 h 31 v 24.5 z m 0,-44.3 h -31 v -24.5 h 31 v 24.5 z m 0,-59.3 h -132 V 95.4 h 132 V 262.9 z"></path></svg></button><button title="Auto (100%)" data-width="auto" class="auto is-active">Auto</button></div></div><script>(function(){var a=[{title:"actions-toolbar",filename:"actions-toolbar",url:"actions-toolbar.html"},{title:"",filename:"actions-toolbar",url:"actions-toolbar.html#"},{title:"Actions toolbar",filename:"actions-toolbar",url:"actions-toolbar.html#actions-toolbar"},{title:"Actions toolbar mixin variables",filename:"actions-toolbar",url:"actions-toolbar.html#actions-toolbar-mixin-variables"},{title:"Actions toolbar alignment",filename:"actions-toolbar",url:"actions-toolbar.html#actions-toolbar-alignment"},{title:"Reverse primary and secondary blocks",filename:"actions-toolbar",url:"actions-toolbar.html#reverse-primary-and-secondary-blocks"},{title:"Actions toolbar indents customizations",filename:"actions-toolbar",url:"actions-toolbar.html#actions-toolbar-indents-customizations"},{title:"Responsive actions toolbar",filename:"actions-toolbar",url:"actions-toolbar.html#responsive-actions-toolbar"},{title:"breadcrumbs",filename:"breadcrumbs",url:"breadcrumbs.html"},{title:"",filename:"breadcrumbs",url:"breadcrumbs.html#"},{title:"Breadcrumbs",filename:"breadcrumbs",url:"breadcrumbs.html#breadcrumbs"},{title:"Breadcrumbs variables",filename:"breadcrumbs",url:"breadcrumbs.html#breadcrumbs-variables"},{title:"Button-styled breadcrumbs with gradient background, border, and no separating symbol",filename:"breadcrumbs",url:"breadcrumbs.html#buttonstyled-breadcrumbs-with-gradient-background-border-and-no-separating-symbol"},{title:"Breadcrumbs with solid background",filename:"breadcrumbs",url:"breadcrumbs.html#breadcrumbs-with-solid-background"},{title:"buttons",filename:"buttons",url:"buttons.html"},{title:"",filename:"buttons",url:"buttons.html#"},{title:"Default button",filename:"buttons",url:"buttons.html#default-button"},{title:"Button variables",filename:"buttons",url:"buttons.html#button-variables"},{title:"Button as an icon",filename:"buttons",url:"buttons.html#button-as-an-icon"},{title:"Button with an icon on the left or right side of the text",filename:"buttons",url:"buttons.html#button-with-an-icon-on-the-left-or-right-side-of-the-text"},{title:"Button with fixed width",filename:"buttons",url:"buttons.html#button-with-fixed-width"},{title:"Primary button",filename:"buttons",url:"buttons.html#primary-button"},{title:"Primary button variables",filename:"buttons",url:"buttons.html#primary-button-variables"},{title:"Button with gradient background",filename:"buttons",url:"buttons.html#button-with-gradient-background"},{title:"Button as a link",filename:"buttons",url:"buttons.html#button-as-a-link"},{title:"Link as a button",filename:"buttons",url:"buttons.html#link-as-a-button"},{title:"Button reset",filename:"buttons",url:"buttons.html#button-reset"},{title:"Button revert secondary color",filename:"buttons",url:"buttons.html#button-revert-secondary-color"},{title:"Button revert secondary color variables",filename:"buttons",url:"buttons.html#button-revert-secondary-color-variables"},{title:"Button revert secondary size",filename:"buttons",url:"buttons.html#button-revert-secondary-size"},{title:"Button revert secondary size variables",filename:"buttons",url:"buttons.html#button-revert-secondary-size-variables"},{title:"docs",filename:"docs",url:"docs.html"},{title:"",filename:"docs",url:"docs.html#"},{title:"Documentation",filename:"docs",url:"docs.html#documentation"},{title:"dropdowns",filename:"dropdowns",url:"dropdowns.html"},{title:"",filename:"dropdowns",url:"dropdowns.html#"},{title:"Drop-down and split buttons mixins",filename:"dropdowns",url:"dropdowns.html#dropdown-and-split-buttons-mixins"},{title:"Drop-down",filename:"dropdowns",url:"dropdowns.html#dropdown"},{title:"Drop-down variables",filename:"dropdowns",url:"dropdowns.html#dropdown-variables"},{title:"Drop-down with icon customization",filename:"dropdowns",url:"dropdowns.html#dropdown-with-icon-customization"},{title:"Modify dropdown list styles",filename:"dropdowns",url:"dropdowns.html#modify-dropdown-list-styles"},{title:"Split button",filename:"dropdowns",url:"dropdowns.html#split-button"},{title:"Split button variables",filename:"dropdowns",url:"dropdowns.html#split-button-variables"},{title:"Split button - button styling",filename:"dropdowns",url:"dropdowns.html#split-button-button-styling"},{title:"Split button icon customization",filename:"dropdowns",url:"dropdowns.html#split-button-icon-customization"},{title:"Split button drop-down list customization",filename:"dropdowns",url:"dropdowns.html#split-button-dropdown-list-customization"},{title:"forms",filename:"forms",url:"forms.html"},{title:"",filename:"forms",url:"forms.html#"},{title:"Forms mixins",filename:"forms",url:"forms.html#forms-mixins"},{title:"Global forms elements customization",filename:"forms",url:"forms.html#global-forms-elements-customization"},{title:"Fieldsets & fields customization",filename:"forms",url:"forms.html#fieldsets-fields-customization"},{title:"Fieldset and legend customization variables",filename:"forms",url:"forms.html#fieldset-and-legend-customization-variables"},{title:"Fields customization variables",filename:"forms",url:"forms.html#fields-customization-variables"},{title:"Required fields message customization variables",filename:"forms",url:"forms.html#required-fields-message-customization-variables"},{title:"Form element inputs customization",filename:"forms",url:"forms.html#form-element-inputs-customization"},{title:"Form element inputs customization variables",filename:"forms",url:"forms.html#form-element-inputs-customization-variables"},{title:"Form element choice",filename:"forms",url:"forms.html#form-element-choice"},{title:"Form element choice variables",filename:"forms",url:"forms.html#form-element-choice-variables"},{title:"Custom color",filename:"forms",url:"forms.html#custom-color"},{title:"Input number - input-text view",filename:"forms",url:"forms.html#input-number-inputtext-view"},{title:"Input search - input-text view",filename:"forms",url:"forms.html#input-search-inputtext-view"},{title:"Form validation",filename:"forms",url:"forms.html#form-validation"},{title:"Form validation variables//  <pre>",filename:"forms",url:"forms.html#form-validation-variables-pre"},{title:"icons",filename:"icons",url:"icons.html"},{title:"",filename:"icons",url:"icons.html#"},{title:"Icons",filename:"icons",url:"icons.html#icons"},{title:"Icon with image or sprite",filename:"icons",url:"icons.html#icon-with-image-or-sprite"},{title:"Icon with image or sprite variables",filename:"icons",url:"icons.html#icon-with-image-or-sprite-variables"},{title:"Icon position for an icon with image or sprite",filename:"icons",url:"icons.html#icon-position-for-an-icon-with-image-or-sprite"},{title:"Position for icon with image or sprite mixin variables",filename:"icons",url:"icons.html#position-for-icon-with-image-or-sprite-mixin-variables"},{title:"Icon sprite position (with grid)",filename:"icons",url:"icons.html#icon-sprite-position-with-grid"},{title:"Icon sprite position variables",filename:"icons",url:"icons.html#icon-sprite-position-variables"},{title:"Image/sprite icon size",filename:"icons",url:"icons.html#imagesprite-icon-size"},{title:"Image/sprite icon size variables",filename:"icons",url:"icons.html#imagesprite-icon-size-variables"},{title:"Font icon",filename:"icons",url:"icons.html#font-icon"},{title:"Font icon variables",filename:"icons",url:"icons.html#font-icon-variables"},{title:"Change the size of font icon",filename:"icons",url:"icons.html#change-the-size-of-font-icon"},{title:"Change the size of font icon variables",filename:"icons",url:"icons.html#change-the-size-of-font-icon-variables"},{title:"Hide icon text",filename:"icons",url:"icons.html#hide-icon-text"},{title:"Sprite and font icons for Blank theme",filename:"icons",url:"icons.html#sprite-and-font-icons-for-blank-theme"},{title:"layout",filename:"layout",url:"layout.html"},{title:"",filename:"layout",url:"layout.html#"},{title:"Layout",filename:"layout",url:"layout.html#layout"},{title:"Layout global variables",filename:"layout",url:"layout.html#layout-global-variables"},{title:"Page layouts",filename:"layout",url:"layout.html#page-layouts"},{title:"Layout column",filename:"layout",url:"layout.html#layout-column"},{title:"Layout column variables",filename:"layout",url:"layout.html#layout-column-variables"},{title:"Layout width",filename:"layout",url:"layout.html#layout-width"},{title:"Layout width variables",filename:"layout",url:"layout.html#layout-width-variables"},{title:"lib",filename:"lib",url:"lib.html"},{title:"",filename:"lib",url:"lib.html#"},{title:"Including Magento UI library to your theme",filename:"lib",url:"lib.html#including-magento-ui-library-to-your-theme"},{title:"loaders",filename:"loaders",url:"loaders.html"},{title:"",filename:"loaders",url:"loaders.html#"},{title:"Loaders",filename:"loaders",url:"loaders.html#loaders"},{title:"Default loader variables",filename:"loaders",url:"loaders.html#default-loader-variables"},{title:"Loading",filename:"loaders",url:"loaders.html#loading"},{title:"Loading default variables",filename:"loaders",url:"loaders.html#loading-default-variables"},{title:"messages",filename:"messages",url:"messages.html"},{title:"",filename:"messages",url:"messages.html#"},{title:"Messages",filename:"messages",url:"messages.html#messages"},{title:"Information message",filename:"messages",url:"messages.html#information-message"},{title:"Warning message",filename:"messages",url:"messages.html#warning-message"},{title:"Error message",filename:"messages",url:"messages.html#error-message"},{title:"Success message",filename:"messages",url:"messages.html#success-message"},{title:"Notice message",filename:"messages",url:"messages.html#notice-message"},{title:"Message with inner icon",filename:"messages",url:"messages.html#message-with-inner-icon"},{title:"Message with lateral icon",filename:"messages",url:"messages.html#message-with-lateral-icon"},{title:"Custom message style",filename:"messages",url:"messages.html#custom-message-style"},{title:"Messages global variables",filename:"messages",url:"messages.html#messages-global-variables"},{title:"pages",filename:"pages",url:"pages.html"},{title:"",filename:"pages",url:"pages.html#"},{title:"Pagination HTML markup",filename:"pages",url:"pages.html#pagination-html-markup"},{title:"Pagination variables",filename:"pages",url:"pages.html#pagination-variables"},{title:"Pagination with label and gradient background on links",filename:"pages",url:"pages.html#pagination-with-label-and-gradient-background-on-links"},{title:'Pagination with "previous"..."next" text links and label',filename:"pages",url:"pages.html#pagination-with-previousnext-text-links-and-label"},{title:"Pagination without label, with solid background",filename:"pages",url:"pages.html#pagination-without-label-with-solid-background"},{title:"popups",filename:"popups",url:"popups.html"},{title:"",filename:"popups",url:"popups.html#"},{title:"Popups",filename:"popups",url:"popups.html#popups"},{title:"Popup variables",filename:"popups",url:"popups.html#popup-variables"},{title:"Window overlay mixin variables",filename:"popups",url:"popups.html#window-overlay-mixin-variables"},{title:"Fixed height popup",filename:"popups",url:"popups.html#fixed-height-popup"},{title:"Fixed content height popup",filename:"popups",url:"popups.html#fixed-content-height-popup"},{title:"Margins for header, content and footer block in popup",filename:"popups",url:"popups.html#margins-for-header-content-and-footer-block-in-popup"},{title:"Popup titles styled as theme headings",filename:"popups",url:"popups.html#popup-titles-styled-as-theme-headings"},{title:"Popup action toolbar",filename:"popups",url:"popups.html#popup-action-toolbar"},{title:"Popup Close button without an icon",filename:"popups",url:"popups.html#popup-close-button-without-an-icon"},{title:"Modify the icon of popup Close button",filename:"popups",url:"popups.html#modify-the-icon-of-popup-close-button"},{title:"Modify overlay styles",filename:"popups",url:"popups.html#modify-overlay-styles"},{title:"rating",filename:"rating",url:"rating.html"},{title:"",filename:"rating",url:"rating.html#"},{title:"Ratings",filename:"rating",url:"rating.html#ratings"},{title:"Global rating variables",filename:"rating",url:"rating.html#global-rating-variables"},{title:"Rating with vote",filename:"rating",url:"rating.html#rating-with-vote"},{title:"Rating with vote icons number customization",filename:"rating",url:"rating.html#rating-with-vote-icons-number-customization"},{title:"Rating with vote icons colors customization",filename:"rating",url:"rating.html#rating-with-vote-icons-colors-customization"},{title:"Rating with vote icons symbol customization",filename:"rating",url:"rating.html#rating-with-vote-icons-symbol-customization"},{title:"Accessible rating with vote",filename:"rating",url:"rating.html#accessible-rating-with-vote"},{title:"Rating summary",filename:"rating",url:"rating.html#rating-summary"},{title:"Rating summary icons number customization",filename:"rating",url:"rating.html#rating-summary-icons-number-customization"},{title:"Rating summary icons color customization",filename:"rating",url:"rating.html#rating-summary-icons-color-customization"},{title:"Rating summary icons symbol customization",filename:"rating",url:"rating.html#rating-summary-icons-symbol-customization"},{title:"Rating summary hide label",filename:"rating",url:"rating.html#rating-summary-hide-label"},{title:"Rating summary multiple ratings",filename:"rating",url:"rating.html#rating-summary-multiple-ratings"},{title:"Rating hide label mixin",filename:"rating",url:"rating.html#rating-hide-label-mixin"},{title:"resets",filename:"resets",url:"resets.html"},{title:"",filename:"resets",url:"resets.html#"},{title:"Resets",filename:"resets",url:"resets.html#resets"},{title:"responsive",filename:"responsive",url:"responsive.html"},{title:"Responsive",filename:"responsive",url:"responsive.html#responsive"},{title:"Responsive mixins usage",filename:"responsive",url:"responsive.html#responsive-mixins-usage"},{title:"Media query style groups separation variables",filename:"responsive",url:"responsive.html#media-query-style-groups-separation-variables"},{title:"Responsive breakpoints",filename:"responsive",url:"responsive.html#responsive-breakpoints"},{title:"sections",filename:"sections",url:"sections.html"},{title:"",filename:"sections",url:"sections.html#"},{title:"Tabs and accordions",filename:"sections",url:"sections.html#tabs-and-accordions"},{title:"Tabs",filename:"sections",url:"sections.html#tabs"},{title:"Tabs mixin variables",filename:"sections",url:"sections.html#tabs-mixin-variables"},{title:"Tabs with content top border",filename:"sections",url:"sections.html#tabs-with-content-top-border"},{title:"Accordion",filename:"sections",url:"sections.html#accordion"},{title:"Accordion mixin variables",filename:"sections",url:"sections.html#accordion-mixin-variables"},{title:"Responsive tabs",filename:"sections",url:"sections.html#responsive-tabs"},{title:"Tabs Base",filename:"sections",url:"sections.html#tabs-base"},{title:"Accordion Base",filename:"sections",url:"sections.html#accordion-base"},{title:"tables",filename:"tables",url:"tables.html"},{title:"",filename:"tables",url:"tables.html#"},{title:"Tables",filename:"tables",url:"tables.html#tables"},{title:"Table mixin variables",filename:"tables",url:"tables.html#table-mixin-variables"},{title:"Table typography",filename:"tables",url:"tables.html#table-typography"},{title:"Table typography mixin variables",filename:"tables",url:"tables.html#table-typography-mixin-variables"},{title:"Table caption",filename:"tables",url:"tables.html#table-caption"},{title:"Table caption mixin variables",filename:"tables",url:"tables.html#table-caption-mixin-variables"},{title:"Table cells resize",filename:"tables",url:"tables.html#table-cells-resize"},{title:"Table cells resize variables",filename:"tables",url:"tables.html#table-cells-resize-variables"},{title:"Table background customization",filename:"tables",url:"tables.html#table-background-customization"},{title:"Table background mixin variables",filename:"tables",url:"tables.html#table-background-mixin-variables"},{title:"Table borders customization",filename:"tables",url:"tables.html#table-borders-customization"},{title:"Table borders mixin variables",filename:"tables",url:"tables.html#table-borders-mixin-variables"},{title:"Table with horizontal borders",filename:"tables",url:"tables.html#table-with-horizontal-borders"},{title:"Table with vertical borders",filename:"tables",url:"tables.html#table-with-vertical-borders"},{title:"Table with light borders",filename:"tables",url:"tables.html#table-with-light-borders"},{title:"Table without borders",filename:"tables",url:"tables.html#table-without-borders"},{title:"Striped table",filename:"tables",url:"tables.html#striped-table"},{title:"Striped table mixin variables",filename:"tables",url:"tables.html#striped-table-mixin-variables"},{title:"Table with rows hover",filename:"tables",url:"tables.html#table-with-rows-hover"},{title:"Table with rows hover mixin variables",filename:"tables",url:"tables.html#table-with-rows-hover-mixin-variables"},{title:"Responsive table technics #1",filename:"tables",url:"tables.html#responsive-table-technics-1"},{title:"Responsive table technics #2",filename:"tables",url:"tables.html#responsive-table-technics-2"},{title:"Responsive table technics #2 mixin variables",filename:"tables",url:"tables.html#responsive-table-technics-2-mixin-variables"},{title:"tooltips",filename:"tooltips",url:"tooltips.html"},{title:"",filename:"tooltips",url:"tooltips.html#"},{title:"Tooltips",filename:"tooltips",url:"tooltips.html#tooltips"},{title:"Tooltips variables",filename:"tooltips",url:"tooltips.html#tooltips-variables"},{title:"typography",filename:"typography",url:"typography.html"},{title:"",filename:"typography",url:"typography.html#"},{title:"Typogrphy",filename:"typography",url:"typography.html#typogrphy"},{title:"Typography variables",filename:"typography",url:"typography.html#typography-variables"},{title:"Font-size mixin",filename:"typography",url:"typography.html#fontsize-mixin"},{title:"Line-height mixin",filename:"typography",url:"typography.html#lineheight-mixin"},{title:"Word breaking mixin",filename:"typography",url:"typography.html#word-breaking-mixin"},{title:"Font face mixin",filename:"typography",url:"typography.html#font-face-mixin"},{title:"Text overflow mixin",filename:"typography",url:"typography.html#text-overflow-mixin"},{title:"Text hide",filename:"typography",url:"typography.html#text-hide"},{title:"Hyphens",filename:"typography",url:"typography.html#hyphens"},{title:"Font style and color",filename:"typography",url:"typography.html#font-style-and-color"},{title:"Font style mixin variables",filename:"typography",url:"typography.html#font-style-mixin-variables"},{title:"Reset list styles",filename:"typography",url:"typography.html#reset-list-styles"},{title:"Reset list styles variables",filename:"typography",url:"typography.html#reset-list-styles-variables"},{title:"Inline-block list item styling",filename:"typography",url:"typography.html#inlineblock-list-item-styling"},{title:"Link styling mixin",filename:"typography",url:"typography.html#link-styling-mixin"},{title:"Link styling mixin variables",filename:"typography",url:"typography.html#link-styling-mixin-variables"},{title:"Heading styling mixin",filename:"typography",url:"typography.html#heading-styling-mixin"},{title:"Base typography mixins",filename:"typography",url:"typography.html#base-typography-mixins"},{title:"Headings typography mixin",filename:"typography",url:"typography.html#headings-typography-mixin"},{title:"Typography links mixin",filename:"typography",url:"typography.html#typography-links-mixin"},{title:"Typography lists mixin",filename:"typography",url:"typography.html#typography-lists-mixin"},{title:"Typography code elements mixin",filename:"typography",url:"typography.html#typography-code-elements-mixin"},{title:"Typography blockquote",filename:"typography",url:"typography.html#typography-blockquote"},{title:"utilities",filename:"utilities",url:"utilities.html"},{title:"",filename:"utilities",url:"utilities.html#"},{title:"Utilities",filename:"utilities",url:"utilities.html#utilities"},{title:".clearfix()",filename:"utilities",url:"utilities.html#clearfix"},{title:".visibility-hidden()",filename:"utilities",url:"utilities.html#visibilityhidden"},{title:".visually-hidden()",filename:"utilities",url:"utilities.html#visuallyhidden"},{title:".visually-hidden-reset()",filename:"utilities",url:"utilities.html#visuallyhiddenreset"},{title:".css()",filename:"utilities",url:"utilities.html#css"},{title:".css() variables",filename:"utilities",url:"utilities.html#css-variables"},{title:".rotate()",filename:"utilities",url:"utilities.html#rotate"},{title:".rotate() variables",filename:"utilities",url:"utilities.html#rotate-variables"},{title:".input-placeholder()",filename:"utilities",url:"utilities.html#inputplaceholder"},{title:".input-placeholder() variables",filename:"utilities",url:"utilities.html#inputplaceholder-variables"},{title:".background-gradient()",filename:"utilities",url:"utilities.html#backgroundgradient"},{title:".background-gradient() variables",filename:"utilities",url:"utilities.html#backgroundgradient-variables"},{title:"variables",filename:"variables",url:"variables.html"},{title:"",filename:"variables",url:"variables.html#"},{title:"List of Global Variables",filename:"variables",url:"variables.html#list-of-global-variables"},{title:"Table with rows hover mixin variables",filename:"variables",url:"variables.html#table-with-rows-hover-mixin-variables"}];(function(){"use strict";var b=function(a,b){return Array.prototype.indexOf.call(a,b)!==-1},c=function(a,b){return Array.prototype.filter.call(a,b)},d=function(a,b){return Array.prototype.forEach.call(a,b)},e=document.getElementsByTagName("body")[0];e.addEventListener("click",function(a){var b=a.target;b.tagName.toLowerCase()==="svg"&&(b=b.parentNode);var c=!1;b.dataset.toggle!=null&&(a.preventDefault(),b.classList.contains("is-active")||(c=!0)),d(e.querySelectorAll("[data-toggle]"),function(a){a.classList.remove("is-active"),document.getElementById(a.dataset.toggle).hidden=!0}),c&&(b.classList.add("is-active"),document.getElementById(b.dataset.toggle).hidden=!1)}),function(){var f=e.getElementsByClassName("nav")[0];if(!f)return;var g=document.createElement("ul");g.className="nav-results",g.id="nav-search",g.hidden=!0,d(a,function(a){var b,c,d;b=document.createElement("li"),b._title=a.title.toLowerCase(),b.hidden=!0,b.appendChild(c=document.createElement("a")),c.href=a.url,c.innerHTML=a.title,c.appendChild(d=document.createElement("span")),d.innerHTML=a.filename,d.className="nav-results-filename",g.appendChild(b)}),f.appendChild(g);var h=g.children,i=function(a){d(h,function(a){a.hidden=!0});var b=this.value.toLowerCase(),e=[];b!==""&&(e=c(h,function(a){return a._title.indexOf(b)!==-1})),e.length>0?(d(e,function(a){a.hidden=!1}),g.hidden=!1):g.hidden=!0},j=f.querySelector('input[type="search"]');j.addEventListener("keyup",i),j.addEventListener("focus",i),e.addEventListener("click",function(a){if(a.target.classList&&a.target.classList.contains("search"))return;g.hidden=!0}),g.addEventListener("click",function(a){j.value=""});var k=document.createElement("ul");k.id="nav-toc",k.hidden=!0,k.className="nav-results toc-list",c(e.getElementsByTagName("*"),function(a){return b(["h1","h2","h3"],a.tagName.toLowerCase())}).map(function(a){var b=document.createElement("li"),c=document.createElement("a"),d=a.tagName.toLowerCase()[1];c.classList.add("level-"+d),b.appendChild(c),c.href="#"+a.id,c.innerHTML=a.innerHTML,k.appendChild(b)}),f.appendChild(k)}()})(),function(){"use strict";if(location.hash==="#__preview__"||location.protocol==="data:")return;var a=function(a,b){return Array.prototype.forEach.call(a,b)},b=function(a,b){var e=Array.prototype.slice.call(arguments,2);return d(a,function(a){return(c(b)?b||a:a[b]).apply(a,e)})},c=function(a){return Object.prototype.toString.call(a)==="[object Function]"},d=function(a,b){return Array.prototype.map.call(a,b)},e=function(a,b){return d(a,function(a){return a[b]})},f=function(a){var b={},c=a.split(";");for(var d=0;c.length>d;d++){var e=c[d].trim().split("=");b[e[0]]=e[1]}return b},g=function(a,c){return b(e(a,"classList"),"remove",c)},h=function(a,b){a.contentDocument.defaultView.postMessage(b,"*")},i=document.getElementsByTagName("head")[0],j=document.getElementsByTagName("body")[0],k=e(i.querySelectorAll('style[type="text/preview"]'),"innerHTML").join(""),l=e(i.querySelectorAll('script[type="text/preview"]'),"innerHTML").join(""),m=location.href.split("#")[0]+"#__preview__",n=document.createElement("iframe");n.src="data:text/html,",j.appendChild(n),n.addEventListener("load",function(){var b={sameOriginDataUri:!0};try{this.contentDocument,this.contentDocument||(b.sameOriginDataUri=!1)}catch(c){b.sameOriginDataUri=!1}this.parentNode.removeChild(this),a(j.getElementsByTagName("textarea"),function(a,c){o(a,b,c),q(),p(a)})});var o=function(a,b,c){var d,e,f;d=document.createElement("div"),d.appendChild(e=document.createElement("div")),d.className="preview",e.appendChild(f=document.createElement("iframe")),e.className="resizeable",f.setAttribute("scrolling","no"),f.name="iframe"+c++,f.addEventListener("load",function(){var c,d,e,f,g,i,j;j=this.contentDocument;if(!b.sameOriginDataUri&&this.src!==m)return;this.src===m&&(c=j.createElement("html"),c.appendChild(j.createElement("head")),c.appendChild(d=j.createElement("body")),d.innerHTML=a.textContent,j.replaceChild(c,j.documentElement)),g=j.createElement("head"),g.appendChild(f=j.createElement("style")),g.appendChild(e=j.createElement("script")),e.textContent=l,f.textContent=k,i=j.getElementsByTagName("head")[0],i.parentNode.replaceChild(g,i),h(this,"getHeight")});var g;b.sameOriginDataUri?g="data:text/html;charset=utf-8,"+encodeURIComponent("<!doctype html><html><head></head></body>"+a.textContent):g=m,f.setAttribute("src",g);var i=function(){f.contentDocument.body.innerHTML=this.value,h(f,"getHeight")};a.addEventListener("keypress",i),a.addEventListener("keyup",i),a.parentNode.insertBefore(d,a)},p=function(a){var b=document.createElement("div");b.className="preview-code",b.style.position="absolute",b.style.left="-9999px",j.appendChild(b);var c=parseInt(window.getComputedStyle(a).getPropertyValue("max-height"),10),d=function(a){b.textContent=this.value+"\n";var d=b.offsetHeight+2;d>=c?this.style.overflow="auto":this.style.overflow="hidden",this.style.height=b.offsetHeight+2+"px"};a.addEventListener("keypress",d),a.addEventListener("keyup",d),d.call(a)},q=function(){var b=j.getElementsByClassName("settings")[0],c=j.getElementsByClassName("resizeable"),d=30,e=function(b){document.cookie="preview-width="+b,a(c,function(a){b==="auto"&&(b=a.parentNode.offsetWidth),a.style.width=b+"px",h(a.getElementsByTagName("iframe")[0],"getHeight")})},i=f(document.cookie)["preview-width"];if(i){e(i),g(b.getElementsByClassName("is-active"),"is-active");var k=b.querySelector('button[data-width="'+i+'"]');k&&k.classList.add("is-active")}window.addEventListener("message",function(a){if(a.data==null||!a.source)return;var b=a.data,c=document.getElementsByName(a.source.name)[0];b.height!=null&&c&&(c.parentNode.style.height=b.height+d+"px")},!1),b&&c.length>0&&(b.hidden=!1,b.addEventListener("click",function(a){var c=a.target.tagName.toLowerCase(),d;if(c==="button")d=a.target;else{if(c!=="svg")return;d=a.target.parentNode}a.preventDefault(),g(b.getElementsByClassName("is-active"),"is-active"),d.classList.add("is-active");var f=d.dataset.width;e(f)}))}}()})()</script></body></html><!-- Generated with StyleDocco (http://jacobrask.github.com/styledocco). -->
diff --git a/lib/web/css/docs/source/README.md b/lib/web/css/docs/source/README.md
index d1b075e2571c441de240ddfe5a2791930a31ad37..8ed8f840a72e10065655e887667f4ee60fa55d95 100644
--- a/lib/web/css/docs/source/README.md
+++ b/lib/web/css/docs/source/README.md
@@ -151,32 +151,33 @@ If it is a private variable (is used only in a mixin), it must start with "_" ch
 
 `'@' + '_' + 'object' + '-' + 'property' + '-' + 'state' = @_object-property-state`
 
-### Examples:
+#### Examples:
 
-#### Acceptable:
+##### Acceptable:
 
-`
+```css
     @link-color-hover;
     @color-primary;
     @color-2;
-`
+```
 
 Private variables:
 
-`  
+```css
     @_padding-left;
     @_font-size;
-`
+```
 
-#### Unacceptable:
+##### Unacceptable:
 
-`
+```css
     @Link-Color-Hover;
     @colorPrimary;
     @color--primary;
     @paddingleft;
     @__font-size;
-`
+```
+&nbsp;
 
 # Less mixins naming
 
@@ -184,19 +185,63 @@ A less mixin name can contain lowercase letters, numbers, "-" and "_" characters
 
 A mixin name can consist of one or several words, concatenated with one hyphen. If the mixin is private, its name must start with the "_" character. Mixin should be named after property or action it describes.
 
-### Examples:
+#### Examples:
 
-#### Acceptable:
-`
+##### Acceptable:
+```css
     .mixin-name() {}
     .transition() {}
     .mixin() {}
     ._button-gradient() {}
-`
-#### Unacceptable:
-`
+```
+##### Unacceptable:
+```css
     .mixinName() {}
     .__transition() {}
     .MiXiN() {}
     ._button--gradient() {}
-`
+```
+&nbsp;
+
+# Magento UI library code style
+
+Magento UI library involves 3 comments levels:
+
+First level comment must have an empty line before it and must be followed by an empty line:
+
+```css
+//
+//  First level comment
+//  _____________________________________________
+```
+
+Second level comment must have an empty line before it and must be followed by an empty line:
+
+```css
+//
+//  Second level comment
+//  ---------------------------------------------
+```
+
+Third level comment is recommended to have an empty line before it, when it is a single line comment. Also it is possible to use it in the end of a code line:
+
+```css
+// Third level comment
+```
+
+Magento UI library involves the following code style:
+
+* Every CSS/LESS code line has a ";" character
+* All selectors are set to lowercase
+* The CSS/LESS file has a line break at EOF
+* There is a space but not a line break before the opening brace "{" and a line brake after it
+* There is a line break before the closing brace "}"
+* The leading zeroes are removed (i.e. padding: .5em; instead of padding: 0.5em;)
+* There is a line break between declarations
+* There is a line break after selector delimiter
+* Units in zero-valued dimensions are removed
+* Single quotes are used
+* Properties are sorted alphabetically
+* All colors are set to lowercase
+* Shorthands for hexadecimal colors are used
+* The code has a 4 spaces indent
diff --git a/lib/web/css/docs/source/responsive.less b/lib/web/css/docs/source/responsive.less
index 7e560279ff5736a2ee1f8bc3315fd0516ea09f2d..486a4b9a6896b15fbb9a6bf31972f1f5a1a96b94 100644
--- a/lib/web/css/docs/source/responsive.less
+++ b/lib/web/css/docs/source/responsive.less
@@ -4,8 +4,7 @@
 //  */
 
 //  # Responsive
-//  Magento UI library provides a strong approach for working with media queries. It`s based on recursive call of <nobr><code>.responsive-max-m()</code></nobr> and <code>.responsive-min-l()</code> mixins defined anywhere in project but invoked in one place in <nobr><code>lib/web/css/source/lib/responsive.less</code></nobr>. That's why in the resulting styles.css we have every media query only ones and all the rules there, not a multiple calls for the same query.
-//
+//  Magento UI library provides a strong approach for working with media queries. It`s based on recursive call of <nobr><code>.media-width()</code></nobr> mixin defined anywhere in project but invoked in one place in <nobr><code>lib/web/css/source/lib/responsive.less</code></nobr>. That's why in the resulting <code>styles.css</code> we have every media query only once with all the rules there, not a multiple calls for the same query.
 //
 //  To see the media queries work resize window to understand which breakpoint is applied.
 //  ```
@@ -17,7 +16,8 @@
 .example-responsive-block {
     padding: 10px;
 }
-.responsive-max-m(@break) when (@break = @screen-m) {
+
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-m) {
     .example-responsive-block {
         background: #ffc;
     }
@@ -26,7 +26,8 @@
         font-weight: bold;
     }
 }
-.responsive-min-l(@break) when (@break = @screen-m) {
+
+.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen-m) {
     .example-responsive-block {
         background: #ccf;
     }
@@ -36,31 +37,17 @@
     }
 }
 
-
 //  # Responsive mixins usage
 //
-//  For gathering media queries you can use responsive mixin collectors
-//
-//  ## Common
-//  For common styles every time you want to add some styles you should write:
-//  ```css
-//  .responsive-common() {
-//      your styles
-//  }
-//  ```
-//  It will be complied to:
-//  ```css
-//      your styles
-//  ```
-//  ## Mobile
-//  Every time you want to add some mobile media queries you can use one of:
+//  For grouping style rules in certain media queries .media-width() mixin used.
 //  ```css
-//  .responsive-max-m(@break) {}
-//  .responsive-min-m(@break) {}
+// .media-width(<@extremum>, <@break>);
 //  ```
-//  As example
+//  <nobr><code>@extremum: max|min</code></nobr> - sets whether to use **min-width** or **max-width** in media query condition<br />
+//  <nobr><code>@break: value</code></nobr> - sets the value of breakpoint to compare with in media query condition.<br />
+//  For example
 //  ```css
-//  .responsive-max-m(@break) when (@break = @screen-s) {
+//  .media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-s) {
 //      your styles
 //  }
 //  ```
@@ -70,40 +57,44 @@
 //      your styles
 //  }
 //  ```
-//  ## Desktop
-//  Every time you want to add some mobile media queries you can use:
+//  &nbsp;
 //
+//  # Media query style groups separation variables
+//
+//  <code>@media-common: true|false</code> - sets whether to output common styles.
+//  For common styles every time you want to add some styles you should use
 //  ```css
-//  .responsive-min-l(@break)) {}
-//  ```
-//  As example
-//  ```css
-//  .responsive-min-l(@break) when (@break = @screen-m) {
+//  & when (@media-common = true) {
 //      your styles
 //  }
 //  ```
-//  will be compiled to
+//
+//  <code>@media-target: all|desktop|mobile</code> - Sets target device for styles output
 //  ```css
-//  @media only screen and (min-width: 768px) {
-//      your styles
-//  }
+//  & when (@media-target = 'mobile'),
+//  (@media-target = 'all') {
+//     @media only screen and (max-width: (@screen-xs - 1)) {
+//         .media-width('max', @screen-xs);
+//     }
+// }
 //  ```
+//
 //  ## Gathering
+//
 //  Everything that you include in collector mixins above will go in place where they declarated.
 //  As example all
 //  ```css
-//  .responsive-min-l(@break)) {
+//  .media-width(@extremum, @break) {
 //      your code
 //  }
 //  ```
 //  Will go to
 //  ```css
-//  .responsive-min-l(@break));
+//  .media-width(@extremum, @break));
 //  ```
-//  By default you can find it responsive.less file in lib
-//
+//  By default you can find it <code>responsive.less</code> file in li
 //  &nbsp;
-
+//
 //  # Responsive breakpoints
 //  In Magento UI library there are predefined variables for breakpoints.
 //  ```css
diff --git a/lib/web/css/docs/source/typography.less b/lib/web/css/docs/source/typography.less
index aa5af3566528e73a724a5c8b4e27aae0183e5bc9..c1aa945d6d7af5f85b5aa5b51d385bef204330e6 100644
--- a/lib/web/css/docs/source/typography.less
+++ b/lib/web/css/docs/source/typography.less
@@ -949,6 +949,7 @@
 //            font-family: @family-name;
 //            src: url('@{font-path}.eot');
 //            src: url('@{font-path}.eot?#iefix') format('embedded-opentype'),
+//            url('@{font-path}.woff2') format('woff2'),
 //            url('@{font-path}.woff') format('woff'),
 //            url('@{font-path}.ttf') format('truetype'),
 //            url('@{font-path}.svg#@{family-name}') format('svg');
diff --git a/lib/web/css/docs/typography.html b/lib/web/css/docs/typography.html
index ead45e43a77cc89fd444126161ff356d510741fa..3c144b83a01e08a5af3da4b29995d289d4df4e15 100644
--- a/lib/web/css/docs/typography.html
+++ b/lib/web/css/docs/typography.html
@@ -914,6 +914,7 @@
             font-family: @family-name;
             src: url(&#39;@{font-path}.eot&#39;);
             src: url(&#39;@{font-path}.eot?#iefix&#39;) format(&#39;embedded-opentype&#39;),
+            url(&#39;@{font-path}.woff2&#39;) format(&#39;woff2&#39;),
             url(&#39;@{font-path}.woff&#39;) format(&#39;woff&#39;),
             url(&#39;@{font-path}.ttf&#39;) format(&#39;truetype&#39;),
             url(&#39;@{font-path}.svg#@{family-name}&#39;) format(&#39;svg&#39;);
diff --git a/lib/web/css/source/lib/abstract.less b/lib/web/css/source/lib/abstract.less
index 7977be146f049f0cd57c064a525d42e28ef15a14..aa022529ea6250010e3b5924d8252ebded1fb2f6 100644
--- a/lib/web/css/source/lib/abstract.less
+++ b/lib/web/css/source/lib/abstract.less
@@ -2,14 +2,3 @@
 //  * Copyright © 2015 Magento. All rights reserved.
 //  * See COPYING.txt for license details.
 //  */
-
-.responsive-min-l(@break) when (@break = @screen-m) {
-    ._rwd_width {
-        min-width: 0 !important;
-        max-width: auto !important;
-    }
-    ._rwd_width_float {
-        width: 100% !important;
-        float: none !important;
-    }
-}
diff --git a/lib/web/css/source/lib/dropdowns.less b/lib/web/css/source/lib/dropdowns.less
index 5b242ed424058303f4165121f7405a83a5cda9e2..f6a41de220ac0d47c1131f89378ad786cbe950a7 100644
--- a/lib/web/css/source/lib/dropdowns.less
+++ b/lib/web/css/source/lib/dropdowns.less
@@ -12,6 +12,7 @@
     @_dropdown-list-min-width: @dropdown-list-min-width,
     @_dropdown-list-width: @dropdown-list-width,
     @_dropdown-list-height: @dropdown-list-height,
+    @_dropdown-list-margin-top: @dropdown-list-margin-top,
     @_dropdown-list-position-top: @dropdown-list-position-top,
     @_dropdown-list-position-bottom: @dropdown-list-position-bottom,
     @_dropdown-list-position-left: @dropdown-list-position-left,
@@ -71,6 +72,7 @@
         @_dropdown-list-min-width,
         @_dropdown-list-width,
         @_dropdown-list-height,
+        @_dropdown-list-margin-top,
         @_dropdown-list-background,
         @_dropdown-list-border,
         @_dropdown-list-z-index,
@@ -105,6 +107,7 @@
     @_dropdown-split-list-min-width: @dropdown-split-list-min-width,
     @_dropdown-split-list-width: @dropdown-split-list-width,
     @_dropdown-split-list-height: @dropdown-split-list-height,
+    @_dropdown-split-list-margin-top: @dropdown-split-list-margin-top,
     @_dropdown-split-list-position-top: @dropdown-split-list-position-top,
     @_dropdown-split-list-position-bottom: @dropdown-split-list-position-bottom,
     @_dropdown-split-list-position-left: @dropdown-split-list-position-left,
@@ -173,6 +176,7 @@
         @_dropdown-split-list-min-width,
         @_dropdown-split-list-width,
         @_dropdown-split-list-height,
+        @_dropdown-split-list-margin-top,
         @_dropdown-split-list-background,
         @_dropdown-split-list-border,
         @_dropdown-split-list-z-index,
@@ -200,6 +204,7 @@
     @_dropdown-list-min-width,
     @_dropdown-list-width,
     @_dropdown-list-height,
+    @_dropdown-list-margin-top,
     @_dropdown-list-background,
     @_dropdown-list-border,
     @_dropdown-list-z-index,
@@ -235,6 +240,7 @@
         .css(min-width, @_dropdown-list-min-width);
         .css(width, @_dropdown-list-width);
         .css(height, @_dropdown-list-height);
+        .css(margin-top, @_dropdown-list-margin-top);
         display: none;
         ._dropdown-list-shadow(@_dropdown-list-shadow);
         li {
@@ -473,7 +479,6 @@
     @_dropdown-list-pointer-position-top,
     @_dropdown-list-pointer-position-left-right
 ) when (@_dropdown-list-pointer = true) {
-    margin-top: 4px;
     ._dropdown-pointer(
         @_dropdown-list-background,
         @_dropdown-list-pointer-border,
diff --git a/lib/web/css/source/lib/forms.less b/lib/web/css/source/lib/forms.less
index c95b5c16ad7383b0944ec23ea2bb42535404ad80..f1a36f130b42f6ff8bd34670b052b8db84668eae 100644
--- a/lib/web/css/source/lib/forms.less
+++ b/lib/web/css/source/lib/forms.less
@@ -114,7 +114,7 @@
     &::-webkit-search-decoration,
     &::-webkit-search-results-button,
     &::-webkit-search-results-decoration {
-      -webkit-appearance:none;
+        -webkit-appearance: none;
     }
 }
 
@@ -134,8 +134,8 @@
     @_disabled-color: '',
     @_placeholder-color: ''
 ) {
-    .css(border-color, @_border-color);
     .css(background, @_background);
+    .css(border-color, @_border-color);
     .css(color, @_color);
     &:focus {
         ._form-element-state-add-border-color(@_focus-border-color, @_border-color);
@@ -637,7 +637,7 @@
     }
 
     .additional {
-        margin-top: @_additional-vertical-indent;
+        .css(margin-top, @_additional-vertical-indent);
     }
 
     ._form-field-required(
@@ -931,7 +931,6 @@
     @_column-padding: @form-field-column-padding,
     @_column-number: @form-field-column-number
 ) when (@_column = true) {
-
     box-sizing: border-box;
     //float: left;
     display: inline-block;
@@ -1017,7 +1016,6 @@
             @_font-style
         );
     }
-
 }
 
 ._form-hasrequired-position(
diff --git a/lib/web/css/source/lib/grids.less b/lib/web/css/source/lib/grids.less
index 3d2c99ca42c77272c8b09ef6fd8cf9c59c10cb67..09acbc342030dc52b2692f3bf7d0ab85fa1839d1 100644
--- a/lib/web/css/source/lib/grids.less
+++ b/lib/web/css/source/lib/grids.less
@@ -35,33 +35,50 @@
     .column-gutter();
 }
 
-.column( @span ) when (@span = false) {
+.column(@span) when (@span = false) {
     float: left;
 }
 
-.column( @span, @total-columns:@total-columns, @end-column:false ) when (isnumber(@span)) and (isnumber(@total-columns)) and not (isnumber(@end-column)) {
+.column(
+    @span,
+    @total-columns: @total-columns,
+    @end-column: false
+) when (isnumber(@span)) and (isnumber(@total-columns)) and not (isnumber(@end-column)) {
     @showgutter: false;
     .column(@showgutter);
-    .span( @span, @total-columns );
+    .span(@span, @total-columns);
 }
 
-.column( @span, @total-columns:@total-columns, @end-column:false ) when (isnumber(@span)) and (isnumber(@total-columns)) and (@end-column = true) {
+.column(
+    @span,
+    @total-columns: @total-columns,
+    @end-column: false
+) when (isnumber(@span)) and (isnumber(@total-columns)) and (@end-column = true) {
     @showgutter: false;
     .column(@showgutter);
-    .span( @span, @total-columns );
+    .span(
+        @span,
+        @total-columns
+    );
     .end-column();
 }
 
-.column( @span, @end-column ) when (isnumber(@span)) and not (isnumber(@end-column)) {
+.column(
+    @span,
+    @end-column
+) when (isnumber(@span)) and not (isnumber(@end-column)) {
     @showgutter: false;
     .column(@showgutter);
-    .span( @span );
+    .span(@span);
 }
 
-.column( @span, @end-column ) when (isnumber(@span)) and ( @end-column = true ) {
+.column(
+    @span,
+    @end-column
+) when (isnumber(@span)) and ( @end-column = true ) {
     @showgutter: false;
     .column(@showgutter);
-    .span( @span );
+    .span(@span);
     .end-column();
 }
 
@@ -73,36 +90,56 @@
     .column-gutter();
 }
 
-.inline-column( @span ) when (@span = false) {
+.inline-column(@span) when (@span = false) {
     .inline-block();
     vertical-align: top;
     letter-spacing: normal;
     word-spacing: normal;
 }
 
-.inline-column( @span, @total-columns:@total-columns, @end-column:false ) when (isnumber(@span)) and (isnumber(@total-columns)) {
+.inline-column(
+    @span,
+    @total-columns: @total-columns,
+    @end-column: false
+) when (isnumber(@span)) and (isnumber(@total-columns)) {
     @showgutter: false;
     .inline-column(@showgutter);
-    .span( @span, @total-columns );
+    .span(
+        @span,
+        @total-columns
+    );
 }
 
-.inline-column( @span, @total-columns:@total-columns, @end-column:false ) when (isnumber(@span)) and (@end-column = true) {
+.inline-column(
+    @span,
+    @total-columns: @total-columns,
+    @end-column: false
+) when (isnumber(@span)) and (@end-column = true) {
     @showgutter: false;
     .inline-column(@showgutter);
-    .span( @span, @total-columns );
+    .span(
+        @span,
+        @total-columns
+    );
     .inline-end-column();
 }
 
-.inline-column( @span, @end-column ) when not (isnumber(@end-column)) {
+.inline-column(
+    @span,
+    @end-column
+) when not (isnumber(@end-column)) {
     @showgutter: false;
     .inline-column(@showgutter);
-    .span( @span );
+    .span(@span);
 }
 
-.inline-column( @span, @end-column ) when (@end-column = true) {
+.inline-column(
+    @span,
+    @end-column
+) when (@end-column = true) {
     @showgutter: false;
     .inline-column(@showgutter);
-    .span( @span );
+    .span(@span);
     .inline-end-column();
 }
 
@@ -115,51 +152,83 @@
     margin-right: 0;
 }
 
-.span( @span ) {
-    .column-width(@span, @total-columns);
+.span(@span) {
+    .column-width(
+        @span,
+        @total-columns
+    );
 }
 
-.span( @span, @total-columns ) when (isnumber(@total-columns)) {
-    .column-width(@span, @total-columns);
+.span(
+    @span,
+    @total-columns
+) when (isnumber(@total-columns)) {
+    .column-width(
+        @span,
+        @total-columns
+    );
     .column-gutter(@total-columns);
 }
 
-.pre-pad( @span, @total-columns:@total-columns ) {
+.pre-pad(
+    @span,
+    @total-columns: @total-columns
+) {
     @calc-column-width: 100%*((((@gutter-width+@column-width)*@span)) / @grid-width);
     padding-left: @calc-column-width;
 }
 
-.post-pad( @span, @total-columns:@total-columns ) {
+.post-pad(
+    @span,
+    @total-columns: @total-columns
+) {
     @calc-column-width: 100%*((((@gutter-width+@column-width)*@span)) / @grid-width);
     padding-right: @calc-column-width;
 }
 
-.pre-push( @span, @total-columns:@total-columns ) {
+.pre-push(
+    @span,
+    @total-columns: @total-columns
+) {
     @calc-column-width: 100%*((((@gutter-width+@column-width)*@span)) / @grid-width);
     margin-left: @calc-column-width;
 }
 
-.post-push( @span, @total-columns:@total-columns ) {
+.post-push(
+    @span,
+    @total-columns: @total-columns
+) {
     @calc-column-width: 100%*((((@gutter-width+@column-width)*@span)+@gutter-width) / @grid-width);
     margin-right: @calc-column-width;
 }
 
-.post-push-end( @span, @total-columns:@total-columns ) {
+.post-push-end(
+    @span,
+    @total-columns: @total-columns
+) {
     @calc-column-width: 100%*((((@gutter-width+@column-width)*@span)) / @grid-width);
     margin-right: @calc-column-width;
 }
 
-.column-width(@span, @total-columns:@total-columns) {
+.column-width(
+    @span,
+    @total-columns: @total-columns
+) {
     @calc-column-width: 100%*((((@gutter-width+@column-width)*@span)-@gutter-width) / @grid-width);
     width: @calc-column-width;
 }
 
-.column-gutter(@total-columns:@total-columns, @end-column:false) when (@end-column) {
+.column-gutter(
+    @total-columns: @total-columns,
+    @end-column: false
+) when (@end-column) {
     margin-right: 0;
 }
 
-.column-gutter(@total-columns:@total-columns, @end-column:false) when not (@end-column) {
+.column-gutter(
+    @total-columns: @total-columns,
+    @end-column: false
+) when not (@end-column) {
     @calc-gutter-width: 100%*(@gutter-width/@grid-width);
     margin-right: @calc-gutter-width;
 }
-
diff --git a/lib/web/css/source/lib/icons.less b/lib/web/css/source/lib/icons.less
index 90918b279be916ce87bff430745bcf0f9e913488..1d87cf53cf0be7e23125fd2c754d8b7609a2d7cd 100644
--- a/lib/web/css/source/lib/icons.less
+++ b/lib/web/css/source/lib/icons.less
@@ -6,13 +6,6 @@
 //
 //    Icons using font
 //--------------------------------------
-.font-face(
-    @family-name: @icon-font-name,
-    @font-path: @icon-font-path,
-    @font-weight: normal,
-    @font-style: normal
-);
-
 .icon-font(
     @_icon-font-content,
     @_icon-font: @icon-font,
diff --git a/lib/web/css/source/lib/layout.less b/lib/web/css/source/lib/layout.less
index 734840d21ea0f11364591fc1f3f29342ad3a0ce8..31351c3e2afcf7053efe7aa39f8ce193f2d8a3f3 100644
--- a/lib/web/css/source/lib/layout.less
+++ b/lib/web/css/source/lib/layout.less
@@ -12,15 +12,15 @@
 ) when not (@responsive = true) {
     ._layout-width(@_layout-min-width, @_layout-max-width);
     margin: 0 auto;
-    padding-left: @layout-indent;
-    padding-right: @layout-indent;
+    .css(padding-left, @layout-indent);
+    .css(padding-right, @layout-indent);
 }
 
 ._layout-width(
         @_layout-min-width: @layout-min-width,
         @_layout-max-width: @layout-max-width
     ) when (@_layout-min-width = @_layout-max-width) {
-    width: @_layout-min-width;
+    .css(width, @_layout-min-width);
 }
 
 ._layout-width(
@@ -28,8 +28,8 @@
         @_layout-max-width: @layout-max-width
     ) when not (@_layout-min-width = @_layout-max-width) {
     width: auto;
-    min-width: @_layout-min-width;
-    max-width: @_layout-max-width;
+    .css(min-width, @_layout-min-width);
+    .css(max-width, @_layout-max-width);
 }
 
 #layout-columns() {
@@ -91,7 +91,7 @@
 }
 
 ._column-width(@_width, @_check, @_index) when (@_check = true), (@_width = auto) {
-    width: @_width;
+    .css(width, @_width);
     @_index: 1;
 }
 
diff --git a/lib/web/css/source/lib/lib.less b/lib/web/css/source/lib/lib.less
index 1f0ea26fd8284c9314ec16ce2f252209df71491f..1291ec288716e99be59ce61e6b6a74f08370e6f0 100644
--- a/lib/web/css/source/lib/lib.less
+++ b/lib/web/css/source/lib/lib.less
@@ -25,4 +25,3 @@
 @import "typography.less";
 @import "utilities.less";
 @import "variables.less";
-@import "ui-dialog.less";
diff --git a/lib/web/css/source/lib/loaders.less b/lib/web/css/source/lib/loaders.less
index 6969a35811101271bff47f5725387c35a580d4ac..640bb0255c49a7e4006fd217d0c9bc02d636c5d3 100644
--- a/lib/web/css/source/lib/loaders.less
+++ b/lib/web/css/source/lib/loaders.less
@@ -22,17 +22,16 @@
     @_loader-text-padding: @loader-text-padding
 ) {
     position: fixed;
-    left: 0;
     top: 0;
     right: 0;
     bottom: 0;
-    background-color: @_loader-overlay-background-color;
-    z-index: @_loader-overlay-z-index;
+    left: 0;
+    .css(background-color, @_loader-overlay-background-color);
+    .css(z-index, @_loader-overlay-z-index);
     &:before {
+        .css(border-radius, @_loader-icon-border-radius);
+        .css(background, @_loader-icon-background-color @_loader-icon-background-image no-repeat @_loader-icon-background-position);
         box-sizing: border-box;
-        .css(padding, @_loader-icon-padding);
-        background: @_loader-icon-background-color @_loader-icon-background-image no-repeat @_loader-icon-background-position;
-        border-radius: @_loader-icon-border-radius;
         content: '';
         position: absolute;
         top: 0;
@@ -40,9 +39,9 @@
         left: 0;
         bottom: 0;
         margin: auto;
-        width: @_loader-icon-width;
-        height: @_loader-icon-height;
-
+        .css(padding, @_loader-icon-padding);
+        .css(width, @_loader-icon-width);
+        .css(height, @_loader-icon-height);
         ._loader-text(@_loader-text);
     }
 }
@@ -51,7 +50,7 @@
     @_loader-text
 ) when (@_loader-text = true) {
     content: attr(data-text);
-    padding: @_loader-text-padding;
+    .css(padding, @_loader-text-padding);
     vertical-align: baseline;
     text-align: center;
     .typography(
@@ -75,7 +74,7 @@
         top: 0;
         right: 0;
         bottom: 0;
-        background: @_loading-background-color @_loading-background-image no-repeat 50% 50%;
+        .css(background, @_loading-background-color @_loading-background-image no-repeat 50% 50%);
     }
 }
 
diff --git a/lib/web/css/source/lib/navigation.less b/lib/web/css/source/lib/navigation.less
index c22ed541a0aca99f40dbe5709da99e009c70d23e..fb05385b857913bdf83a6bc7471c6d74e4a92a85 100644
--- a/lib/web/css/source/lib/navigation.less
+++ b/lib/web/css/source/lib/navigation.less
@@ -239,11 +239,11 @@
             .ui-menu {
                 .css(font-size, @_submenu-font-size);
                 .css(font-weight, @_submenu-font-weight);
-                left: 0;
                 .css(min-width, @_submenu-min-width);
-                position: absolute;
                 padding: 0;
                 margin: 0 !important;
+                position: absolute;
+                left: 0;
                 top: 100%;
                 z-index: 1;
                 .css(background, @_submenu-bg);
@@ -265,7 +265,8 @@
                     .css(color, @_submenu-item-color);
                     .css(padding, @_submenu-item-padding);
                     .css(text-decoration, @_submenu-item-text-decoration);
-                    &:hover, &.ui-state-focus {
+                    &:hover,
+                    &.ui-state-focus {
                         .css(background, @_submenu-item-bg-hover);
                         .css(border, @_submenu-item-border-hover);
                         .css(color, @_submenu-item-color-hover);
@@ -280,7 +281,7 @@
                 }
                 .ui-menu {
                     top: 0 !important;
-                    left: 100%!important;
+                    left: 100% !important;
                 }
             }
             &.more {
@@ -321,9 +322,9 @@
     & when (iscolor(@_bg)) and (iscolor(@_border)) {
         @_outer-size: @_size + 1;
         @_outer-left: @_left - 1;
-        margin-top: -@_outer-size;
+        .css(margin-top, @_outer-size);
         > ul {
-            margin-top: @_outer-size;
+            .css(margin-top, @_outer-size);
             &:before,
             &:after {
                 content: '';
@@ -332,50 +333,50 @@
                 position: absolute;
             }
             &:before {
-                left: @_left;
-                color: @_bg;
-                z-index: 4;
+                .css(color, @_bg);
+                .css(left, @_left);
+                .css(top, -@_size*2);
                 .arrow(up, @_size, @_bg);
-                top: -@_size*2;
+                z-index: 4;
             }
             &:after {
-                left: @_outer-left;
-                color: @_border;
-                z-index: 3;
                 .arrow(up, @_outer-size, @_border);
-                top: -@_outer-size*2;
+                .css(color, @_border);
+                .css(left, @_outer-left);
+                .css(top, -@_outer-size*2);
+                z-index: 3;
             }
         }
     }
     & when (iscolor(@_bg)) and not (iscolor(@_border)) {
-        margin-top: -@_size;
+        .css(margin-top, -@_size);
         > ul {
-            margin-top: @_size;
+            .css(margin-top, @_size);
             &:before{
-                color: @_bg;
+                .css(color, @_bg);
                 content: '';
                 display: block;
                 overflow: hidden;
                 position: absolute;
-                top: -@_size*2;
-                left: @_left;
+                .css(top, -@_size*2);
+                .css(left, @_left);
                 z-index: 4;
                 .arrow(up, @_size, @_bg);
             }
         }
     }
     & when (iscolor(@_border)) and not (iscolor(@_bg)) {
-        margin-top: -@_size;
+        .css(margin-top, -@_size);
         > ul {
-            margin-top: @_size;
+            .css(margin-top, @_size);
             &:before{
-                color: @_border;
+                .css(color, @_border);
                 content: '';
                 display: block;
                 overflow: hidden;
                 position: absolute;
-                top: -@_size*2;
-                left: @_left;
+                .css(top, -@_size*2);
+                .css(left, @_left);
                 z-index: 4;
                 .arrow(up, @_size, @_border);
             }
diff --git a/lib/web/css/source/lib/pages.less b/lib/web/css/source/lib/pages.less
index c22916680eda1385dcabbe17b202eb7b50ebb67a..357bba9b8d8c65c9dee29a8de9e99cd6c44b67a9 100644
--- a/lib/web/css/source/lib/pages.less
+++ b/lib/web/css/source/lib/pages.less
@@ -128,9 +128,9 @@
             @_pager-gradient
         );
         .css(border, @_pager-border);
-        .css(padding, @_pager-item-padding);
         .css(color, @_pager-color);
         .css(display, @_pager-item-display);
+        .css(padding, @_pager-item-padding);
         .css(text-decoration, @_pager-text-decoration);
         &:visited {
             .css(background, @_pager-background-visited);
@@ -180,10 +180,10 @@
             @_pager-font-size: @_pager-font-size,
             @_pager-line-height: @_pager-line-height
         );
-        .css(padding, @_pager-item-padding);
         .css(color, @_pager-current-color);
         .css(display, @_pager-item-display);
         .css(font-weight, @_pager-current-font-weight);
+        .css(padding, @_pager-item-padding);
     }
     .action {
         .css(background, @_pager-action-background);
@@ -194,9 +194,9 @@
             @_pager-action-gradient
         );
         .css(border, @_pager-action-border);
-        .css(padding, @_pager-actions-padding);
         .css(color, @_pager-action-color);
         .css(display, @_pager-item-display);
+        .css(padding, @_pager-actions-padding);
         .css(text-decoration, @_pager-action-text-decoration);
         &:visited {
             .css(background, @_pager-action-background-visited);
@@ -340,7 +340,6 @@
     @_icon-font-position: @_pager-icon-font-position,
     @_icon-font-text-hide: @_pager-icon-font-text-hide
 ) when (@_pager-icon-use = true) and (@_icon-font-position = before) {
-
     &:visited:before {
         .css(color, @_icon-font-color-visited);
     }
diff --git a/lib/web/css/source/lib/popups.less b/lib/web/css/source/lib/popups.less
index b8b36402690879915abbe4f5f5894a7e8c656790..54924f1bdd123372d421b929271e58f0716c7899 100644
--- a/lib/web/css/source/lib/popups.less
+++ b/lib/web/css/source/lib/popups.less
@@ -246,7 +246,7 @@
     @_popup-actions-toolbar-actions-margin,
     @_popup-actions-toolbar-primary-actions-margin,
     @_popup-actions-toolbar-secondary-actions-margin,
-    @_popup-actions-toolbar-actions-links-margin-top
+    @_popup-actions-toolbar-actions-links-margin-top,
     @_popup-actions-toolbar-primary-actions-links-margin-top,
     @_popup-actions-toolbar-secondary-actions-links-margin-top
 ) when (@_popup-action-toolbar = true) {
diff --git a/lib/web/css/source/lib/rating.less b/lib/web/css/source/lib/rating.less
index 47e49e8d8e1b3e3eba323ee4720825d3868518a7..4d02ce8ca37c7cb379cbd458af0a348da8dd270b 100644
--- a/lib/web/css/source/lib/rating.less
+++ b/lib/web/css/source/lib/rating.less
@@ -88,13 +88,13 @@
     overflow: hidden;
     ._rating-label-hide(@_label-hide);
     .rating-result {
-        width: (@_icon-font-size * @_icon-count) + ceil(@_icon-letter-spacing * (@_icon-count - 1));
+        .css(width, (@_icon-font-size * @_icon-count) + ceil(@_icon-letter-spacing * (@_icon-count - 1)));
         &:before {
             position: absolute;
-            z-index: 1;
             top: 0;
             left: 0;
             width: 100%;
+            z-index: 1;
             ._rating-summary-icon-default(
                 @_icon-font,
                 @_icon-font-size,
@@ -167,16 +167,16 @@
     @_icon-letter-spacing,
     @_icon-color
 ) {
-    letter-spacing: @_icon-letter-spacing;
-    font-family: @_icon-font;
+    .css(color, @_icon-color);
+    .css(font-family, @_icon-font);
     font-style: normal;
-    font-size: @_icon-font-size;
-    line-height: @_icon-font-size;
-    height: @_icon-font-size;
+    .css(font-size, @_icon-font-size);
+    .css(line-height, @_icon-font-size);
+    .css(letter-spacing, @_icon-letter-spacing);
+    .css(height, @_icon-font-size);
     speak: none;
     font-weight: normal;
     -webkit-font-smoothing: antialiased;
-    color: @_icon-color;
     vertical-align: top;
 }
 
@@ -188,86 +188,24 @@
     @_icon-content,
     @_icon-color
 ) {
+    .css(color, @_icon-color);
     display: block;
-    font-family: @_icon-font;
+    .css(font-family, @_icon-font);
     .mixin-rating-icons-content(@_icon-count, @_icon-content);
     font-style: normal;
-    font-size: @_icon-font-size;
-    line-height: @_icon-font-size;
-    height: @_icon-font-size;
-    letter-spacing: @_icon-letter-spacing;
+    .css(font-size, @_icon-font-size);
+    .css(height, @_icon-font-size);
+    .css(line-height, @_icon-font-size);
+    .css(letter-spacing, @_icon-letter-spacing);
     speak: none;
     font-weight: normal;
     -webkit-font-smoothing: antialiased;
-    color: @_icon-color;
-}
-
-.mixin-rating-icons-content(
-    @_icon-count: @rating-icon-count,
-    @_icon-content: @rating-icon-content
-) when (@_icon-count = 10) {
-    content: @_icon-content @_icon-content @_icon-content @_icon-content @_icon-content @_icon-content @_icon-content @_icon-content @_icon-content @_icon-content;
-}
-
-.mixin-rating-icons-content(
-    @_icon-count: @rating-icon-count,
-    @_icon-content: @rating-icon-content
-) when (@_icon-count = 9) {
-    content: @_icon-content @_icon-content @_icon-content @_icon-content @_icon-content @_icon-content @_icon-content @_icon-content @_icon-content;
-}
-
-.mixin-rating-icons-content(
-    @_icon-count: @rating-icon-count,
-    @_icon-content: @rating-icon-content
-) when (@_icon-count = 8) {
-    content: @_icon-content @_icon-content @_icon-content @_icon-content @_icon-content @_icon-content @_icon-content @_icon-content;
-}
-
-.mixin-rating-icons-content(
-    @_icon-count: @rating-icon-count,
-    @_icon-content: @rating-icon-content
-) when (@_icon-count = 7) {
-    content: @_icon-content @_icon-content @_icon-content @_icon-content @_icon-content @_icon-content @_icon-content;
-}
-
-.mixin-rating-icons-content(
-    @_icon-count: @rating-icon-count,
-    @_icon-content: @rating-icon-content
-) when (@_icon-count = 6) {
-    content: @_icon-content @_icon-content @_icon-content @_icon-content @_icon-content @_icon-content;
-}
-
-.mixin-rating-icons-content(
-    @_icon-count: @rating-icon-count,
-    @_icon-content: @rating-icon-content
-) when (@_icon-count = 5) {
-    content: @_icon-content @_icon-content @_icon-content @_icon-content @_icon-content;
-}
-
-.mixin-rating-icons-content(
-    @_icon-count: @rating-icon-count,
-    @_icon-content: @rating-icon-content
-) when (@_icon-count = 4) {
-    content: @_icon-content @_icon-content @_icon-content @_icon-content;
-}
-
-.mixin-rating-icons-content(
-    @_icon-count: @rating-icon-count,
-    @_icon-content: @rating-icon-content
-) when (@_icon-count = 3) {
-    content: @_icon-content @_icon-content @_icon-content;
-}
-
-.mixin-rating-icons-content(
-    @_icon-count: @rating-icon-count,
-    @_icon-content: @rating-icon-content
-) when (@_icon-count = 2) {
-    content: @_icon-content @_icon-content;
 }
 
 .mixin-rating-icons-content(
     @_icon-count: @rating-icon-count,
     @_icon-content: @rating-icon-content
-) when (@_icon-count = 1) {
-    content: @_icon-content;
+) when (@_icon-count > 0) {
+    .mixin-rating-icons-content((@_icon-count - 1),@_icon-content);
+    content+_: @_icon-content;
 }
diff --git a/lib/web/css/source/lib/resets.less b/lib/web/css/source/lib/resets.less
index 743cff120b9a7520aff47752a7093abc5b91b90e..8b7a24de521502db380cb9fb603f78d44f271e71 100644
--- a/lib/web/css/source/lib/resets.less
+++ b/lib/web/css/source/lib/resets.less
@@ -46,6 +46,14 @@
         border: 0;
     }
 
+    img,
+    object,
+    video,
+    embed {
+        max-width: 100%;
+        height: auto;
+    }
+
     svg:not(:root) {
         overflow: hidden;
     }
@@ -89,12 +97,9 @@
     textarea:not([disabled]),
     select:not([disabled]) {
         &:focus {
-            box-shadow: @focus-box-shadow;
+            .css(box-shadow, @focus-box-shadow);
         }
     }
-
-
-
 }
 
 //
diff --git a/lib/web/css/source/lib/responsive.less b/lib/web/css/source/lib/responsive.less
index 35511f7da436b56ad9b176fef3d6e3f8e31e7b91..93aa98d2fd3faef639b52829a6d1ee85c30ded2f 100644
--- a/lib/web/css/source/lib/responsive.less
+++ b/lib/web/css/source/lib/responsive.less
@@ -3,50 +3,62 @@
 //  * See COPYING.txt for license details.
 //  */
 
-//    Common styles collector
-//--------------------------------------
+//
+//    Media variables, that can be used for splitting styles into several files
+//------------------------------------------------------------------------------
 
-.responsive-common() {}
-.responsive-common();
+@media-common: true; // Sets whether to output common styles (true|false)
+@media-target: all; // Sets target device for styles output (all|desktop|mobile)
 
-//    Mobile styles collector
-//--------------------------------------
+//
+//    Media width mixin used to group styles output based on media queries
+//------------------------------------------------------------------------------
 
-.responsive-max-m(@break) {}
-.responsive-min-m(@break) {}
-
-@media only screen and (max-width: (@screen-xs - 1)) {
-    .responsive-max-m(@screen-xs);
+.media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen-s) {
 }
 
-@media only screen and (max-width: (@screen-s - 1)) {
-    .responsive-max-m(@screen-s);
-}
+//
+//    Style groups for 'mobile' devices
+//------------------------------------------------------------------------------
 
-@media only screen and (max-width: (@screen-m - 1)) {
-    .responsive-max-m(@screen-m);
-}
+& when (@media-target = 'mobile'), (@media-target = 'all') {
 
-@media all and (min-width: @screen-s) {
-    .responsive-min-m(@screen-s);
-}
+    @media only screen and (max-width: (@screen-xs - 1)) {
+        .media-width('max', @screen-xs);
+    }
 
-//    Laptop styles collector
-//--------------------------------------
+    @media only screen and (max-width: (@screen-s - 1)) {
+        .media-width('max', @screen-s);
+    }
 
-.responsive-min-l(@break) {}
+    @media only screen and (max-width: (@screen-m - 1)) {
+        .media-width('max', @screen-m);
+    }
 
-@media all and (min-width: @screen-m),
-print {
-    .responsive-min-l(@screen-m);
-}
+    @media all and (min-width: @screen-s) {
+        .media-width('min', @screen-s);
+    }
 
-@media all and (min-width: @screen-l),
-print {
-    .responsive-min-l(@screen-l);
 }
 
-@media all and (min-width: @screen-xl),
-print {
-    .responsive-min-l(@screen-xl);
+//
+//    Style groups for 'desktop' devices
+//------------------------------------------------------------------------------
+
+& when (@media-target = 'desktop'), (@media-target = 'all') {
+
+    @media all and (min-width: @screen-m),
+    print {
+        .media-width('min', @screen-m);
+    }
+
+    @media all and (min-width: @screen-l),
+    print {
+        .media-width('min', @screen-l);
+    }
+
+    @media all and (min-width: @screen-xl),
+    print {
+        .media-width('min', @screen-xl);
+    }
 }
diff --git a/lib/web/css/source/lib/sections.less b/lib/web/css/source/lib/sections.less
index 726083c4c69de7c9b9a044fb041c8dba0d2d90de..362f632a7d91fd95cb71176720cccce851d5a0aa 100644
--- a/lib/web/css/source/lib/sections.less
+++ b/lib/web/css/source/lib/sections.less
@@ -12,7 +12,7 @@
         width: auto;
         > .switch {
             display: block;
-            height: @_tab-control-height-base;
+            .css(height, @_tab-control-height-base);
             position: relative;
             z-index: 2;
         }
@@ -21,7 +21,7 @@
         box-sizing: border-box;
         .clearfix();
         float: right;
-        margin-top: @_tab-control-height-base;
+        .css(margin-top, @_tab-control-height-base);
         margin-left: -100%;
         width: 100%;
         &.active {
@@ -75,7 +75,7 @@
 ) {
     .data-tabs-base();
     > .item.title {
-        margin: 0 @_tab-control-margin-right 0 0;
+        .css(margin, 0 @_tab-control-margin-right 0 0);
         > .switch {
             .typography(
                 @_color: @_tab-control-color,
@@ -95,11 +95,11 @@
                 @_link-color-active: @_tab-control-color-active,
                 @_link-text-decoration-active: @_tab-control-text-decoration-active
             );
-            height: @_tab-control-height;
-            padding: @_tab-control-padding-top @_tab-control-padding-right @_tab-control-padding-bottom @_tab-control-padding-left;
-            .css(border, @_tab-content-border);
             .css(background, @_tab-control-bg);
+            .css(border, @_tab-content-border);
             border-bottom: none;
+            .css(height, @_tab-control-height);
+            .css(padding, @_tab-control-padding-top @_tab-control-padding-right @_tab-control-padding-bottom @_tab-control-padding-left);
         }
         &:not(.disabled) > .switch:focus,
         &:not(.disabled) > .switch:hover {
@@ -115,7 +115,7 @@
         &.active > .switch,
         &.active > .switch:focus,
         &.active > .switch:hover {
-            padding-bottom: @_tab-control-padding-bottom + @_tab-control-border-width;
+            .css(padding-bottom, @_tab-control-padding-bottom + @_tab-control-border-width);
         }
     }
     > .item.content {
@@ -133,7 +133,7 @@
     @_tab-content-border-top-status,
     @_tab-content-border
 ) when (@_tab-content-border-top-status = false){
-    border: @_tab-content-border;
+    .css(border, @_tab-content-border);
 }
 
 ._tab-content-border(
@@ -141,7 +141,7 @@
     @_tab-content-border
 ) when (@_tab-content-border-top-status = true){
     border: 0;
-    border-top: @_tab-content-border;
+    .css(border-top, @_tab-content-border);
 }
 
 .data-accordion-base() {
@@ -226,8 +226,8 @@
             .css(border-right,@_accordion-control-border-right);
             .css(border-bottom,@_accordion-control-border-bottom);
             .css(border-left,@_accordion-control-border-left);
-            height: @_accordion-control-height;
-            padding: @_accordion-control-padding-top @_accordion-control-padding-right @_accordion-control-padding-bottom @_accordion-control-padding-left;
+            .css(height, @_accordion-control-height);
+            .css(padding, @_accordion-control-padding-top @_accordion-control-padding-right @_accordion-control-padding-bottom @_accordion-control-padding-left);
             .typography(
                 @_color: @_accordion-control-color,
                 @_font-family: @_accordion-control-font-family,
@@ -256,7 +256,7 @@
         &.active > .switch:focus,
         &.active > .switch:hover {
             .css(background, @_accordion-control-bg-active);
-            padding-bottom: @_accordion-control-padding-bottom;
+            .css(padding-bottom, @_accordion-control-padding-bottom);
         }
     }
     > .item.content {
diff --git a/lib/web/css/source/lib/tables.less b/lib/web/css/source/lib/tables.less
index 37eff66726234c8c39ecc80eb480120ed2af92cf..2986d7166cac59dfbbf273e1d1039c72c5bfd297 100644
--- a/lib/web/css/source/lib/tables.less
+++ b/lib/web/css/source/lib/tables.less
@@ -497,7 +497,7 @@
             th {
                 border-bottom: none;
                 display: block;
-                padding: @_table-responsive-cell-padding;
+                .css(padding, @_table-responsive-cell-padding);
                 &:before {
                     content: attr(data-th)": ";
                     display: inline-block;
diff --git a/lib/web/css/source/lib/typography.less b/lib/web/css/source/lib/typography.less
index 494f4180474ad0e4d13ebc47556ad1b849aa719a..f0bc7226c65ecaf8902d1bba05d1f4f173ed5679 100644
--- a/lib/web/css/source/lib/typography.less
+++ b/lib/web/css/source/lib/typography.less
@@ -13,6 +13,7 @@
         font-family: @family-name;
         src: url('@{font-path}.eot');
         src: url('@{font-path}.eot?#iefix') format('embedded-opentype'),
+        url('@{font-path}.woff2') format('woff2'),
         url('@{font-path}.woff') format('woff'),
         url('@{font-path}.ttf') format('truetype'),
         url('@{font-path}.svg#@{family-name}') format('svg');
@@ -23,10 +24,8 @@
 
 //  Rem font size
 .font-size(@sizeValue) when not (ispercentage(@sizeValue)) and not (@sizeValue = false) {
-    @value: unit(@sizeValue);
-    @remValue: (@value / @font-rem-ratio);
-    @pxValue: @value;
-    font-size: ~"@{remValue}rem";
+    .to-rem(@sizeValue);
+    font-size: @valueRem;
 }
 
 .font-size(@sizeValue) when (ispercentage(@sizeValue)) and not (@sizeValue = false) {
@@ -35,10 +34,8 @@
 
 //  Rem line height
 .line-height(@heightValue) when not (@heightValue = false) and not (ispercentage(@heightValue)) {
-    @value: unit(@heightValue);
-    @remValue: (@value / @font-rem-ratio);
-    @pxValue: @value;
-    line-height: ~"@{remValue}rem";
+    .to-rem(@heightValue);
+    line-height: @valueRem;
 }
 
 .line-height(@heightValue) when (ispercentage(@heightValue)) and not (@heightValue = false) {
@@ -69,9 +66,9 @@
 .hyphens(@mode: auto) {
     word-wrap: break-word;
     -webkit-hyphens: @mode;
-    -moz-hyphens: @mode;
-    -ms-hyphens: @mode; // IE10+
-    hyphens: @mode;
+       -moz-hyphens: @mode;
+        -ms-hyphens: @mode; // IE10+
+            hyphens: @mode;
 }
 
 .typography (
@@ -139,15 +136,22 @@
     @_font-style: "@{_heading_level}-font-style";
     @_margin-top: "@{_heading_level}-margin-top";
     @_margin-bottom: "@{_heading_level}-margin-bottom";
-        .typography(
-            @@_font-size,
-            @@_font-color,
-            @@_font-family,
-            @@_font-weight,
-            @@_line-height,
-            @@_font-style
-        );
-        .margin-vertical-rem(@@_margin-top, @@_margin-bottom);
+    .typography(
+        @@_font-size,
+        @@_font-color,
+        @@_font-family,
+        @@_font-weight,
+        @@_line-height,
+        @@_font-style
+    );
+    & {
+        .to-rem(@@_margin-top);
+        margin-top: @valueRem;
+    }
+    & {
+        .to-rem(@@_margin-bottom);
+        margin-bottom: @valueRem;
+    }
 }
 
 //
@@ -155,33 +159,40 @@
 //--------------------------------------
 .typography-base() {
     html {
-        font-size: @font-size-root;
+        .css(font-size, @font-size-root);
         -webkit-text-size-adjust: 100%;
-        -ms-text-size-adjust: 100%;
-        font-size-adjust: 100%;
+            -ms-text-size-adjust: 100%;
+                font-size-adjust: 100%;
     }
     body {
         .typography();
     }
 
     p {
-        .margin-vertical-rem(@p-margin-top, @p-margin-bottom);
+        & {
+            .to-rem(@p-margin-top);
+            margin-top: @valueRem;
+        }
+        & {
+            .to-rem(@p-margin-bottom);
+            margin-bottom: @valueRem;
+        }
     }
 
     // Abbreviations and acronyms
     abbr[title] {
         cursor: help;
-        border-bottom: 1px dotted @abbr-border-color;
+        .css(border-bottom, 1px dotted @abbr-border-color);
     }
 
     b,
     strong {
-        font-weight: @font-weight-bold;
+        .css(font-weight, @font-weight-bold);
     }
 
     em,
     i {
-        font-style: @font-style-emphasis;
+        .css(font-style, @font-style-emphasis);
     }
 
     mark {
@@ -191,19 +202,19 @@
 
     small,
     .small {
-        font-size: @font-size-s;
+        .css(font-size, @font-size-s);
     }
 
     hr {
-        margin-top: @line-height-computed;
-        margin-bottom: @line-height-computed;
+        .css(margin-top, @line-height-computed);
+        .css(margin-bottom, @line-height-computed);
         border: 0;
-        border-top: @hr-border-width @hr-border-style @hr-border-color;
+        .css(border-top, @hr-border-width @hr-border-style @hr-border-color);
     }
 
     sub,
     sup {
-        font-size: (@font-size-xs/@font-size-base)*100%;
+        .css(font-size, (@font-size-xs/@font-size-base)*100%);
         line-height: 0;
         position: relative;
         vertical-align: baseline;
@@ -216,7 +227,7 @@
     }
 
     dfn {
-        font-style: @font-style-emphasis;
+        .css(font-style, @font-style-emphasis);
     }
 }
 
@@ -276,10 +287,24 @@
 .typography-lists() {
     ul,
     ol {
-        .margin-vertical-rem(@list-margin-top, @list-margin-bottom);
+        & {
+            .to-rem(@list-margin-top);
+            margin-top: @valueRem;
+        }
+        & {
+            .to-rem(@list-margin-bottom);
+            margin-bottom: @valueRem;
+        }
         //.typography(@list-font-size-base, @list-color-base);
         > li {
-            .margin-vertical-rem(@list-item-margin-top, @list-item-margin-bottom);
+            & {
+                .to-rem(@list-item-margin-top);
+                margin-top: @valueRem;
+            }
+            & {
+                .to-rem(@list-item-margin-bottom);
+                margin-bottom: @valueRem;
+            }
         }
         ul,
         ol {
@@ -288,17 +313,17 @@
     }
 
     dl {
-        margin-top: @dl-margin-top;
-        margin-bottom: @dl-margin-bottom;
+        .css(margin-top, @dl-margin-top);
+        .css(margin-bottom, @dl-margin-bottom);
     }
     dt {
         .css(font-weight, @dt-font-weight);
-        margin-top: @dt-margin-top;
-        margin-bottom: @dt-margin-bottom;
+        .css(margin-top, @dt-margin-top);
+        .css(margin-bottom, @dt-margin-bottom);
     }
     dd {
-        margin-top: @dd-margin-top;
-        margin-bottom: @dd-margin-bottom;
+        .css(margin-top, @dd-margin-top);
+        .css(margin-bottom, @dd-margin-bottom);
         margin-left: 0;
     }
 }
@@ -311,7 +336,7 @@
     kbd,
     pre,
     samp {
-        font-family: @font-family-monospace;
+        .css(font-family, @font-family-monospace);
     }
 
     // Inline code
@@ -327,19 +352,19 @@
     kbd {
         .css(background, @kbd-bg);
         .css(color, @kbd-color);
-        .css(padding, @code-padding);
         .font-size(@code-font-size);
+        .css(padding, @code-padding);
     }
 
     // Blocks of code
     pre {
         .css(background, @pre-bg);
-        border: @pre-border-width solid @pre-border-color;
+        .css(border, @pre-border-width solid @pre-border-color);
         .css(color, @pre-color);
         display: block;
         .font-size (@code-font-size);
-        margin: 0 0 @indent-s-base;
-        line-height: @line-height-base;
+        .css(margin, 0 0 @indent-s-base);
+        .css(line-height, @line-height-base);
         .css(padding, @indent-s-base);
         word-break: break-all;
         word-wrap: break-word;
@@ -359,13 +384,13 @@
 // --------------------------------------------------
 .typography-blockquote() {
     blockquote {
+        .css(border-left, @blockquote-border-width solid @blockquote-border-color);
         .css(margin, @blockquote-margin);
         .css(padding, @blockquote-padding);
         .typography(
-              @_font-size: @blockquote-font-size,
-              @_font-style: @blockquote-font-style
+            @_font-size: @blockquote-font-size,
+            @_font-style: @blockquote-font-style
         );
-        border-left: @blockquote-border-width solid @blockquote-border-color;
 
         p,
         ul,
@@ -381,11 +406,12 @@
             .css(color, @blockquote-small-color);
             display: block;
             .font-size(@blockquote-small-font-size);
-            line-height: @line-height-base;
+            .css(line-height, @line-height-base);
             &:before {
-                content: @blockquote-before-content;
+                .css(content, @blockquote-before-content);
             }
         }
+
         cite {
             .css(font-style, @cite-font-style);
         }
diff --git a/lib/web/css/source/lib/utilities.less b/lib/web/css/source/lib/utilities.less
index b01ae628936bfbd494c7273ab871c53965772d66..7fbed1aee6c763aee690b2aa96e5405c928da703 100644
--- a/lib/web/css/source/lib/utilities.less
+++ b/lib/web/css/source/lib/utilities.less
@@ -3,42 +3,13 @@
 //  * See COPYING.txt for license details.
 //  */
 
-.margin-top-rem(
-    @value
-) when not (@value = false) and not (@value = '') {
-    @_value: unit(@value);
-    margin-top: @_value * 1rem / @font-rem-ratio;
-}
-
-.margin-bottom-rem(
-    @value
-) when not (@value = false) and not (@value = '') {
-    @_value: unit(@value);
-    margin-bottom: @_value * 1rem / @font-rem-ratio;
-}
-
-.margin-vertical-rem(@val-top, @val-bottom) {
-    .margin-top-rem(@val-top);
-    .margin-bottom-rem(@val-bottom);
-}
-
-.padding-top-rem(
-    @value
-) when not (@value = false) and not (@value = '') {
-    @_value: unit(@value);
-    padding-top: @_value * 1rem / @font-rem-ratio;
-}
-
-.padding-bottom-rem(
-    @value
-) when not (@value = false) and not (@value = '') {
-    @_value: unit(@value);
-    padding-bottom: @_value * 1rem / @font-rem-ratio;
-}
-
-.padding-vertical-rem(@val-top, @val-bottom) {
-    .padding-top-rem(@val-top);
-    .padding-bottom-rem(@val-bottom);
+//
+//    Convert to rem
+//--------------------------------------
+.to-rem(
+    @_value
+) when not (@_value = false) and not (@_value = '') {
+    @valueRem: (unit(@_value) * 1rem) / @font-rem-ratio;
 }
 
 .visibility-hidden() {
@@ -95,7 +66,12 @@
     // Creates two color stops, start and end, by specifying a color and position for each color stop.
     // Color stops are not available in IE9 and below.
     // Filters are enabled
-    .horizontal(@_start-color; @_end-color; @_start-percent: 0%; @_end-percent: 100%) when not (@disable-filters) {
+    .horizontal(
+        @_start-color;
+        @_end-color;
+        @_start-percent: 0%;
+        @_end-percent: 100%
+    ) when not (@disable-filters) {
         background-color: @_end-color;
         background-repeat: repeat-x;
         background-image: -webkit-linear-gradient(left, color-stop(@_start-color @_start-percent), color-stop(@_end-color @_end-percent)); // Safari 5.1-6, Chrome 10+
@@ -107,7 +83,12 @@
     // Creates two color stops, start and end, by specifying a color and position for each color stop.
     // Color stops are not available in IE9 and below.
     // Filters are disabled
-    .horizontal(@_start-color; @_end-color; @_start-percent: 0%; @_end-percent: 100%) when (@disable-filters) {
+    .horizontal(
+        @_start-color;
+        @_end-color;
+        @_start-percent: 0%;
+        @_end-percent: 100%
+    ) when (@disable-filters) {
         background-color: @_end-color;
         background-repeat: repeat-x;
         background-image: -webkit-linear-gradient(left, color-stop(@_start-color @_start-percent), color-stop(@_end-color @_end-percent)); // Safari 5.1-6, Chrome 10+
@@ -118,7 +99,12 @@
     // Creates two color stops, start and end, by specifying a color and position for each color stop.
     // Color stops are not available in IE9 and below.
 // Filters are enabled
-    .vertical(@_start-color; @_end-color; @_start-percent: 0%; @_end-percent: 100%) when not (@disable-filters) {
+    .vertical(
+        @_start-color;
+        @_end-color;
+        @_start-percent: 0%;
+        @_end-percent: 100%
+    ) when not (@disable-filters) {
         background-color: @_end-color;
         background-repeat: repeat-x;
         background-image: -webkit-linear-gradient(top, @_start-color @_start-percent, @_end-color @_end-percent);  // Safari 5.1-6, Chrome 10+
@@ -130,7 +116,12 @@
     // Creates two color stops, start and end, by specifying a color and position for each color stop.
     // Color stops are not available in IE9 and below.
     // Filters are disabled
-    .vertical(@_start-color; @_end-color; @_start-percent: 0%; @_end-percent: 100%) when (@disable-filters) {
+    .vertical(
+        @_start-color;
+        @_end-color;
+        @_start-percent: 0%;
+        @_end-percent: 100%
+    ) when (@disable-filters) {
         background-color: @_end-color;
         background-repeat: repeat-x;
         background-image: -webkit-linear-gradient(top, @_start-color @_start-percent, @_end-color @_end-percent);  // Safari 5.1-6, Chrome 10+
@@ -166,8 +157,8 @@
 //--------------------------------------
 .rotate(@_rotation) {
     -webkit-transform: rotate(@_rotation); // Use in 8 Safari
-    -ms-transform: rotate(@_rotation); // Use in 9 IE
-    transform: rotate(@_rotation);
+        -ms-transform: rotate(@_rotation); // Use in 9 IE
+            transform: rotate(@_rotation);
 }
 
 //
@@ -179,7 +170,10 @@
     letter-spacing: -1px;
 }
 
-.inline-block-space-item(@_font-size: @font-size-base, @_line-height: normal) {
+.inline-block-space-item(
+    @_font-size: @font-size-base,
+    @_line-height: normal
+) {
     .font-size(@_font-size);
     font-size: @_font-size;
     line-height: @_line-height;
@@ -189,13 +183,34 @@
 //
 //    Add any css property
 //--------------------------------------
-.css(@_property, @_value, @_prefix: 0) when (@_prefix = 1) {
-    -ms-@{_property}:@_value;
-    -webkit-@{_property}:@_value;
-    -moz-@{_property}:@_value;
-}
-.css(@_property, @_value, @_prefix: 0) when not (@_value = false) and not (@_value = '') {
-    @{_property}:@_value;
+.css(
+    @_property,
+    @_value,
+    @_prefix: 0
+) when (@_prefix = 1)
+  and not (@_value = '')
+  and not (@_value = false)
+  and not (extract(@_value, 1) = false)
+  and not (extract(@_value, 2) = false)
+  and not (extract(@_value, 3) = false)
+  and not (extract(@_value, 4) = false)
+  and not (extract(@_value, 5) = false) {
+  -webkit-@{_property}: @_value;
+       -moz-@{_property}: @_value;
+        -ms-@{_property}: @_value;
+}
+.css(
+    @_property,
+    @_value,
+    @_prefix: 0
+) when not (@_value = '')
+  and not (@_value = false)
+  and not (extract(@_value, 1) = false)
+  and not (extract(@_value, 2) = false)
+  and not (extract(@_value, 3) = false)
+  and not (extract(@_value, 4) = false)
+  and not (extract(@_value, 5) = false) {
+    @{_property}: @_value;
 }
 
 //
@@ -216,32 +231,60 @@
 .url (@_path) {
     @url: "@{baseDir}@{_path}";
 }
-.url (@_path, @_module) when not (@_module = false) and not (@_module = '') and  (@urls-resolved = false) {
+
+.url (
+    @_path,
+    @_module
+) when not (@_module = false) and not (@_module = '') and (@urls-resolved = false) {
     @url: "@{_module}::@{_path}";
 }
-.url (@_path, @_module) when not (@_module = false) and not (@_module = '') and  (@urls-resolved = true) {
+
+.url (
+    @_path,
+    @_module
+) when not (@_module = false) and not (@_module = '') and (@urls-resolved = true) {
     @url: "@{baseDir}@{_module}/@{_path}";
 }
 
 //
 //    Arrow
 //--------------------------------------
-.arrow(@_position, @_size, @_color) {
+.arrow(
+    @_position,
+    @_size,
+    @_color
+) {
     width: 0;
     height: 0;
     border: @_size solid transparent;
     ._abbor_el(@_position, @_color);
 }
-._abbor_el(@_position, @_color) when (@_position = left) {
+
+._abbor_el(
+    @_position,
+    @_color
+) when (@_position = left) {
     border-right-color: @_color;
 }
-._abbor_el(@_position, @_color) when (@_position = right) {
+
+._abbor_el(
+    @_position,
+    @_color
+) when (@_position = right) {
     border-left-color: @_color;
 }
-._abbor_el(@_position, @_color) when (@_position = up) {
+
+._abbor_el(
+    @_position,
+    @_color
+) when (@_position = up) {
     border-bottom-color: @_color;
 }
-._abbor_el(@_position, @_color) when (@_position = down) {
+
+._abbor_el(
+    @_position,
+    @_color
+) when (@_position = down) {
     border-top-color: @_color;
 }
 
diff --git a/lib/web/css/source/lib/variables.less b/lib/web/css/source/lib/variables.less
index 5d151296b3cea555d0abf6d50b8b0f57d5a337fb..8cdde46a4fbe03b9b09beefe09e162c5ffb1840c 100644
--- a/lib/web/css/source/lib/variables.less
+++ b/lib/web/css/source/lib/variables.less
@@ -4,10 +4,14 @@
 //  */
 
 //
-//    Typography
-//--------------------------------------
+//  Variables list
+//  _____________________________________________
 
-// Base
+//
+//  Typography
+//  ---------------------------------------------
+
+//  Base
 @font-family-sans-serif: 'Helvetica Neue', Helvetica, Arial, sans-serif;
 @font-family-serif: Georgia, 'Times New Roman', Times, serif;
 @font-family-monospace: Menlo, Monaco, Consolas, 'Courier New', monospace;
@@ -15,43 +19,108 @@
 @icon-font-path: "@{baseDir}fonts/Blank-Theme-Icons/Blank-Theme-Icons";
 @icon-font-name: 'icons-blank-theme';
 
-// Colors
+//  Colors
 @color-white: #fff;
+@color-black: #000;
+
+@color-gray19: #303030;
 @color-gray20: #333;
+@color-gray34: #575757;
+@color-gray40: #666;
+@color-gray52: #858585;
+@color-gray55: #8c8c8c;
 @color-gray56: #8f8f8f;
-
-// Color nesting
+@color-gray60: #999;
+@color-gray62: #9e9e9e;
+@color-gray64: #a3a3a3;
+@color-gray68: #adadad;
+@color-gray76: #c2c2c2;
+@color-gray78: #c7c7c7;
+@color-gray79: #c9c9c9;
+@color-gray80: #ccc;
+@color-gray82: #d1d1d1;
+@color-gray90: #e5e5e5;
+@color-gray91: #e8e8e8;
+@color-gray92: #ebebeb;
+@color-gray94: #f0f0f0;
+@color-gray95: #f2f2f2;
+@color-white-smoke: #f5f5f5;
+
+@color-gray-light0: #f6f6f6;
+@color-gray-light01: #f4f4f4;
+@color-gray-light1: #e5efe5;
+@color-gray-light2: #bbb;
+@color-gray-light3: #aeaeae;
+@color-gray-light4: #cecece;
+@color-gray-light5: #c1c1c1;
+@color-gray-light6: #c5c5c5;
+
+@color-gray-middle1: #e4e4e4;
+@color-gray-middle2: #c6c6c6;
+@color-gray-middle3: #7e807e;
+
+@color-gray-darken0: #eee;
+@color-gray-darken1: #e2e2e2;
+@color-gray-darken2: #cdcdcd;
+@color-gray-darken3: #555;
+@color-gray-darken4: #494949;
+
+@color-red9: #ff0101;
+@color-red10: #e02b27;
+@color-red11: #b30000;
+@color-red12: #d10029;
+
+@color-orange-red1: #ff5501;
+@color-orange-red2: #ff5601;
+@color-orange-red3: #ff5700;
+@color-orange-red4: #fc5e10;
+
+@color-dark-green1: #006400;
+
+@color-blue1: #1979c3;
+@color-blue2: #006bb4;
+@color-sky-blue1: #68a8e0;
+
+@color-pink1: #fae5e5;
+@color-dark-pink1: #800080;
+
+@color-brownie1: #6f4400;
+@color-brownie-light1: #c07600;
+
+@color-yellow-light1: #fdf0d5;
+@color-yellow-light2: #ffee9c;
+@color-yellow-light3: #d6ca8e;
+
+//  Color nesting
 @color-primary: @color-gray20;
-@color-primary-dark: darken(@color-primary, 35%);  // #000
-@color-primary-darker: darken(@color-primary, 13.5%);  // #111
-@color-primary-lighter: lighten(@color-primary, 29%);  // #7d7d7d
-@color-primary-light: lighten(@color-primary, 45%);  // #a6a6a6
-@color-secondary: #e8e8e8;
+@color-primary-dark: darken(@color-primary, 35%); //  #000
+@color-primary-darker: darken(@color-primary, 13.5%); //  #111
+@color-primary-lighter: lighten(@color-primary, 29%); //  #7d7d7d
+@color-primary-light: lighten(@color-primary, 45%); //  #a6a6a6
+@color-secondary: @color-gray91;
 @color-secondary-light: lighten(@color-secondary, 5%);
 @page-bg-color: @color-white;
 @panel-bg: darken(@page-bg-color, 6%);
-@color-active: #ff5501;
-@color-error: #e02b27;
-@color-focus: #68a8e0;
-
-@font-family-base: @font-family-sans-serif; // Also used in: @loader-text-font-family
-// setting font-size for HTML tag, use <b>%</b>  units
-@font-size-root: 62.5%;
-// defines ratio between root font size and base font size
+@color-active: @color-orange-red1;
+@color-error: @color-red10;
+@color-focus: @color-sky-blue1;
+
+@font-family-base: @font-family-sans-serif;
+//  Setting font-size for HTML tag, use <b>%</b> units
+@font-size-root: 62.5%; //  Defines ratio between root font size and base font size
 @font-size-base-ratio: 1.4;
 @font-rem-ratio: unit(@font-size-root * 16/100);
-//base font size value in <b>px</b>:
-@font-size-base: unit((@font-size-root / 100) * 16 * @font-size-base-ratio, px); // Also used in: @loader-text-font-size
-@font-size-xl: ceil(1.5 * @font-size-base);  // 21
-@font-size-l: ceil(1.25 * @font-size-base);  // 18
-@font-size-s: ceil(.85 * @font-size-base);  // 12 Also used in: Breadcrumbs and in Small button
-@font-size-xs: floor(.75 * @font-size-base);  // 11
+@font-size-base: unit((@font-size-root / 100) * 16 * @font-size-base-ratio, px); //  Base font size value in <b>px</b>
+@font-size-xl: ceil(1.5 * @font-size-base); //  21
+@font-size-l: ceil(1.25 * @font-size-base); //  18
+@font-size-s: ceil(.85 * @font-size-base); //  12
+@font-size-xs: floor(.75 * @font-size-base); //  11
 
 @font-weight-base: 400;
 @font-weight-light: 300;
 @font-weight-semibold: 600;
-@font-weight-bold: 700; // Also used in: @loader-text-font-weight
-@font-style-base: normal; // Also used in: @loader-text-font-style
+@font-weight-bold: 700;
+@font-style-base: normal;
 @font-style-emphasis: italic;
 
 @line-height-base: 1.428571429;
@@ -59,34 +128,34 @@
 @line-height-s: 1.33;
 @line-height-l: 1.5;
 
-@text-color: @color-primary; // Also used in @pager-action-color-visited, @pager-action-color-hover, @pager-action-color-active, @tab-control-color-active
+@text-color: @color-primary;
 @text-color-intense: @color-primary-darker;
-@text-color-muted: @color-primary-lighter; // Also used in @pager-action-color, @tab-control-color
+@text-color-muted: @color-primary-lighter;
 
-@indent-base: @line-height-computed; // 20px
-@indent-xl-base: @indent-base * 2; // 40px
-@indent-l-base: @indent-base * 1.5; // 30px
-@indent-m-base: @indent-base * 1.25; // 25px
-@indent-s-base: @indent-base / 2; // 10px
-@indent-xs-base: @indent-base / 4; // 5px
+@indent-base: @line-height-computed; //  20px
+@indent-xl-base: @indent-base * 2; //  40px
+@indent-l-base: @indent-base * 1.5; //  30px
+@indent-m-base: @indent-base * 1.25; //  25px
+@indent-s-base: @indent-base / 2; //  10px
+@indent-xs-base: @indent-base / 4; //  5px
 
 @border-color-base: darken(@page-bg-color, 18%);
 @border-width-base: 1px;
 
-// Links
-@link-color: #1979c3;
+//  Links
+@link-color: @color-blue1;
 @link-text-decoration: none;
 
-@link-color-visited: #800080;
+@link-color-visited: @color-dark-pink1;
 @link-text-decoration-visited: none;
 
-@link-color-hover: #006bb4;
+@link-color-hover: @color-blue2;
 @link-text-decoration-hover: underline;
 
 @link-color-active: @color-active;
 @link-text-decoration-active: underline;
 
-// Lists
+//  Lists
 @list-color-base: false;
 @list-font-size-base: false;
 @list-margin-top: 0;
@@ -102,11 +171,11 @@
 @dd-margin-top: 0;
 @dd-margin-bottom: @indent-s-base;
 
-// Paragraphs
+//  Paragraphs
 @p-margin-top: 0;
 @p-margin-bottom: @indent-s-base;
 
-// Headings
+//  Headings
 @heading-font-family-base: false;
 @heading-font-weight-base: @font-weight-light;
 @heading-line-height-base: 1.1;
@@ -115,7 +184,7 @@
 @heading-margin-top-base: @indent-base;
 @heading-margin-bottom-base: @indent-base;
 
-@h1-font-size: ceil((@font-size-base * 2.85)); // 40px
+@h1-font-size: ceil((@font-size-base * 2.85)); //  40px
 @h1-font-color: @heading-color-base;
 @h1-font-family: @heading-font-family-base;
 @h1-font-weight: @heading-font-weight-base;
@@ -124,7 +193,7 @@
 @h1-margin-top: 0;
 @h1-margin-bottom: @heading-margin-bottom-base;
 
-@h2-font-size: ceil((@font-size-base * 1.85)); // 26px
+@h2-font-size: ceil((@font-size-base * 1.85)); //  26px
 @h2-font-color: @heading-color-base;
 @h2-font-family: @heading-font-family-base;
 @h2-font-weight: @heading-font-weight-base;
@@ -133,7 +202,7 @@
 @h2-margin-top: @indent-m-base;
 @h2-margin-bottom: @heading-margin-bottom-base;
 
-@h3-font-size: ceil((@font-size-base * 1.28)); // 18px
+@h3-font-size: ceil((@font-size-base * 1.28)); //  18px
 @h3-font-color: @heading-color-base;
 @h3-font-family: @heading-font-family-base;
 @h3-font-weight: @heading-font-weight-base;
@@ -142,7 +211,7 @@
 @h3-margin-top: @indent-base * .75;
 @h3-margin-bottom: @indent-s-base;
 
-@h4-font-size: @font-size-base; // 14px
+@h4-font-size: @font-size-base; //  14px
 @h4-font-color: @heading-color-base;
 @h4-font-family: @heading-font-family-base;
 @h4-font-weight: @font-weight-bold;
@@ -151,7 +220,7 @@
 @h4-margin-top: @heading-margin-top-base;
 @h4-margin-bottom: @heading-margin-bottom-base;
 
-@h5-font-size: ceil((@font-size-base * .85)); // 12px
+@h5-font-size: ceil((@font-size-base * .85)); //  12px
 @h5-font-color: @heading-color-base;
 @h5-font-family: @heading-font-family-base;
 @h5-font-weight: @font-weight-bold;
@@ -160,7 +229,7 @@
 @h5-margin-top: @heading-margin-top-base;
 @h5-margin-bottom: @heading-margin-bottom-base;
 
-@h6-font-size: ceil((@font-size-base * .7)); // 10px
+@h6-font-size: ceil((@font-size-base * .7)); //  10px
 @h6-font-color: @heading-color-base;
 @h6-font-family: @heading-font-family-base;
 @h6-font-weight: @font-weight-bold;
@@ -173,10 +242,10 @@
 @heading-small-line-height: 1;
 @heading-small-size: (@font-size-xs/@font-size-base) * 100%;
 
-// Focus
+//  Focus
 @focus-box-shadow: 0 0 3px 1px @color-focus;
 
-// Code blocks
+//  Code blocks
 @code-bg: @panel-bg;
 @code-color: @color-primary-darker;
 @code-font-size: @font-size-s;
@@ -190,10 +259,10 @@
 @kbd-bg: @panel-bg;
 @kbd-color: @color-primary-darker;
 
-// Blockquote
+//  Blockquote
 @blockquote-border-color: @border-color-base;
 @blockquote-border-width: 0;
-@blockquote-before-content: '\2014 \00A0'; // em dash, nbsp
+@blockquote-before-content: '\2014 \00A0';
 @blockquote-font-size: @font-size-base;
 @blockquote-font-style: @font-style-emphasis;
 @blockquote-margin: 0 0 @indent-base @indent-xl-base;
@@ -203,7 +272,7 @@
 
 @cite-font-style: @font-style-base;
 
-// Misc
+//  Misc
 @hr-border-color: @border-color-base;
 @hr-border-style: solid;
 @hr-border-width: @border-width-base;
@@ -213,12 +282,13 @@
 
 @abbr-border-color: @border-color-base;
 
-// Disable filters output in css
+//  Disable filters output in css
 @disable-filters: false;
 
 //
-//    Tables variables
-//--------------------------------------
+//  Tables
+//  ---------------------------------------------
+
 @table-width: 100%;
 @table-margin-bottom: false;
 @table-bg: false;
@@ -234,7 +304,7 @@
 @table-border-width: @border-width-base;
 @table-border-style: solid;
 
-@table-caption-hide: true; // true, false
+@table-caption-hide: true; //  [true|false]
 @table-caption-font-size: false;
 @table-caption-color: false;
 @table-caption-font-family: false;
@@ -268,48 +338,48 @@
 @table-responsive-cell-padding: @indent-xs-base 0;
 
 //
-//    Page layout variables
-//--------------------------------------
+//  Page layout
+//  ---------------------------------------------
 
-// Layout widths variables
-@layout-width: ''; // for the fixed width layout
+//  Layout widths variables
+@layout-width: ''; //  for the fixed width layout
 @layout-max-width: 1280px;
 @layout-indent: 20px;
 @layout-width-xs-indent: 15px;
 
-// Classnames defining different layouts
+//  Classnames defining different layouts
 @layout-class-1column: page-layout-1column;
 @layout-class-2columns-left: page-layout-2columns-left;
 @layout-class-2columns-right: page-layout-2columns-right;
 @layout-class-3columns: page-layout-3columns;
 
-// Variables used for layout grid
+//  Variables used for layout grid
 @total-columns: 12;
 @gutter-width: 0;
 
-// Variables for layout columns
+//  Variables for layout columns
 @layout-columns-width: @total-columns;
 @layout-column-sidebar-width: 2;
 @layout-column-left-width: @layout-column-sidebar-width;
 @layout-column-right-width: @layout-column-sidebar-width;
 
-// Variables for layout columns depending on layout used
+//  Variables for layout columns depending on layout used
 @layout-column-main-width-1: 100%;
 @layout-column-main-width-2-left: @layout-columns-width - @layout-column-left-width;
 @layout-column-main-width-2-right: @layout-columns-width - @layout-column-right-width;
 @layout-column-main-width-3: @layout-columns-width - @layout-column-left-width - @layout-column-right-width;
 
-// Checkout columns width
+//  Checkout columns width
 @layout-column-checkout-left-width: 3;
 @layout-column-checkout-main-width: @layout-columns-width - @layout-column-checkout-left-width;
 
 //
-//    Responsive
-//--------------------------------------
+//  Responsive
+//  ---------------------------------------------
 
-// Settings variables (TO DO: should be global)
-@use-flex: true; // Use flexbox [true|false]
-@responsive: true; // Theme is responsive [true|false]
+//  Settings variables (TO DO: should be global)
+@use-flex: true; //  Use flexbox [true|false]
+@responsive: true; //  Theme is responsive [true|false]
 
 @screen-xxs: 320px;
 @screen-xs: 400px;
@@ -319,20 +389,21 @@
 @screen-xl: 1440px;
 
 //
-//    Navigation variables
-//--------------------------------------
+//  Navigation
+//  ---------------------------------------------
+
 @navigation-background: @color-secondary-light;
 @navigation-border: '';
 @navigation-level0-font-size: 16;
 @navigation-level0-font-weight: @font-weight-bold;
 @navigation-level0-item-line-height: false;
 @navigation-level0-item-margin: 0;
-@navigation-level0-item-padding: 8px 20px;
+@navigation-level0-item-padding: 8px @indent-base;
 @navigation-level0-text-transform: uppercase;
 
 @navigation-level0-item-background: '';
-@navigation-level0-item-border: 1px solid #d1d1d1;
-@navigation-level0-item-color: #575757;
+@navigation-level0-item-border: 1px solid @color-gray82;
+@navigation-level0-item-color: @color-gray34;
 @navigation-level0-item-text-decoration: none;
 
 @navigation-level0-item-background-active: '';
@@ -342,14 +413,14 @@
 
 @submenu-background: '';
 @submenu-border: '';
-@submenu-padding: 0 0 0 20px;
+@submenu-padding: 0 0 0 @indent-base;
 @submenu-font-size: '';
 @submenu-font-weight: @font-weight-base;
 @submenu-item-padding: 8px 0;
 
 @submenu-item-background: '';
 @submenu-item-border: '';
-@submenu-item-color: #575757;
+@submenu-item-color: @color-gray34;
 @submenu-item-text-decoration: '';
 
 @submenu-item-background-active: '';
@@ -357,19 +428,19 @@
 @submenu-item-color-active: '';
 @submenu-item-text-decoration-active: '';
 
-// Desktop navigation
+//  Desktop navigation
 @navigation-desktop-background: @navigation-background;
 @navigation-desktop-border: '';
 @navigation-desktop-font-size: '';
 @navigation-desktop-font-weight: @font-weight-bold;
 
 @navigation-desktop-level0-item-line-height: 53px;
-@navigation-desktop-level0-item-margin: 0 10px 0 0;
+@navigation-desktop-level0-item-margin: 0 @indent-s-base 0 0;
 @navigation-desktop-level0-item-padding: 0 12px;
 
 @navigation-desktop-level0-item-background: '';
 @navigation-desktop-level0-item-border: '';
-@navigation-desktop-level0-item-color: #575757;
+@navigation-desktop-level0-item-color: @color-gray34;
 @navigation-desktop-level0-item-text-decoration: none;
 
 @navigation-desktop-level0-item-background-hover: '';
@@ -386,17 +457,17 @@
 @submenu-desktop-border-width: @border-width-base;
 @submenu-desktop-border-style: solid;
 @submenu-desktop-border-color: @border-color-base;
-@submenu-desktop-box-shadow: 0 5px 5px rgba(0, 0, 0, .19);
+@submenu-desktop-box-shadow: 0 @indent-xs-base @indent-xs-base rgba(0, 0, 0, .19);
 @submenu-desktop-font-size: '';
 @submenu-desktop-font-weight: @font-weight-bold;
 @submenu-desktop-min-width: 230px;
 @submenu-desktop-padding: 15px 0;
 
-@submenu-desktop-arrow: true; // true | false
+@submenu-desktop-arrow: true; // [true|false]
 @submenu-desktop-arrow-size: 10px;
 @submenu-desktop-arrow-left: 20px;
 
-@submenu-desktop-item-padding: 8px 20px;
+@submenu-desktop-item-padding: 8px @indent-base;
 @submenu-desktop-item-background: '';
 @submenu-desktop-item-border: '';
 @submenu-desktop-item-color: @navigation-desktop-level0-item-color;
@@ -413,30 +484,30 @@
 @submenu-desktop-item-text-decoration-active: '';
 
 //
-//    Sections variables
-//--------------------------------------
+//  Sections
+//  ---------------------------------------------
 
-// Tabs
+//  Tabs
 
-// Tabs controls
+//  Tabs controls
 @tab-control-font-size: @font-size-base;
 @tab-control-font-family: false;
 @tab-control-font-weight: @font-weight-semibold;
 @tab-control-font-style: false;
 @tab-control-line-height: @tab-control-height;
 
-// Current tab
+//  Current tab
 @tab-control-bg: @panel-bg;
 @tab-control-color: @text-color-muted;
 @tab-control-text-decoration: none;
 
-// Hovered tab
+//  Hovered tab
 @tab-control-bg-hover: lighten(@tab-control-bg, 5%);
 @tab-control-color-hover: @tab-control-color;
 @tab-control-text-decoration-hover: @tab-control-text-decoration;
 
-// Active tab
-@tab-control-bg-active: lighten(@tab-control-bg, 15%); // Also used in: @tab-content-bg
+//  Active tab
+@tab-control-bg-active: lighten(@tab-control-bg, 15%);
 @tab-control-color-active: @text-color;
 @tab-control-text-decoration-active: @tab-control-text-decoration;
 
@@ -450,7 +521,7 @@
 @tab-control-padding-bottom: @tab-control-padding-top;
 @tab-control-padding-left: @tab-control-padding-right;
 
-// Tabs content
+//  Tabs content
 @tab-content-bg: @tab-control-bg-active;
 @tab-content-border-top-status: false;
 @tab-control-border-color: @border-color-base;
@@ -466,7 +537,7 @@
 @tab-content-padding-bottom: @tab-content-padding-top;
 @tab-content-padding-left: @tab-content-padding-right;
 
-// Accordions variables
+//  Accordions
 @accordion-control-font-family: @tab-control-font-family;
 @accordion-control-font-size: @font-size-l;
 @accordion-control-font-style: @tab-control-font-style;
@@ -508,33 +579,33 @@
 @accordion-content-padding: @tab-content-padding-top @tab-content-padding-right @tab-content-padding-bottom @tab-content-padding-left;
 
 //
-//    Buttons variables
-//--------------------------------------
+//  Buttons
+//  ---------------------------------------------
 
-// Button font style
+//  Button font style
 @button-font-family: @font-family-base;
 @button-font-size: @font-size-base;
 @button-font-weight: @font-weight-bold;
 @button-line-height: @font-size-base + 2;
 @button-margin: 0;
-@button-padding: 7px 15px; // is set up to false when buttons don't depend of side paddings or have fixed width, Also used in @button-primary-padding
-@button-width: false; // is set up to false when buttons depend of side paddings or to fixed value when needed
+@button-padding: 7px 15px; //  is set up to false when buttons don't depend on side paddings or have fixed width
+@button-width: false; //  is set up to false when buttons depend on side paddings or to fixed value when needed
 
-// Buttons display settings
+//  Buttons display settings
 @button-display: inline-block;
 @button-default-border: @button-border;
 @button-cursor: pointer;
 @button-disabled-opacity: .5;
 
-// Default = secondary button
+//  Default = secondary button
 @button-color: @color-primary;
-@button-background: #f2f2f2;
-@button-border: 1px solid #cdcdcd;
+@button-background: @color-gray95;
+@button-border: 1px solid @color-gray-darken2;
 @button-gradient-start-color: false;
 @button-gradient-end-color: false;
 
-@button-color-hover: #555;
-@button-background-hover: #e2e2e2;
+@button-color-hover: @color-gray-darken3;
+@button-background-hover: @color-gray-darken1;
 @button-border-hover: @button-border;
 @button-gradient-start-color-hover: false;
 @button-gradient-end-color-hover: false;
@@ -545,7 +616,7 @@
 @button-gradient-start-color-active: false;
 @button-gradient-end-color-active: false;
 
-// Primary button
+//  Primary button
 @button-primary-line-height: false;
 @button-primary-width: false;
 @button-primary-margin: false;
@@ -553,14 +624,14 @@
 @button-primary-gradient: false;
 @button-primary-gradient-direction: false;
 
-@button-primary-background: #1979c3;
-@button-primary-border: 1px solid #1979c3;
+@button-primary-background: @color-blue1;
+@button-primary-border: 1px solid @color-blue1;
 @button-primary-color: @color-white;
 @button-primary-gradient-start-color: false;
 @button-primary-gradient-end-color: false;
 
-@button-primary-background-hover: #006bb4;
-@button-primary-border-hover: 1px solid #006bb4;
+@button-primary-background-hover: @color-blue2;
+@button-primary-border-hover: 1px solid @color-blue2;
 @button-primary-color-hover: @button-primary-color;
 @button-primary-gradient-start-color-hover: false;
 @button-primary-gradient-end-color-hover: false;
@@ -571,44 +642,44 @@
 @button-primary-gradient-start-color-active: false;
 @button-primary-gradient-end-color-active: false;
 
-// Gradient button
-// Does button have gradient background:
-@button-gradient: false;
-@button-gradient-direction: false;
+//  Gradient button
+@button-gradient: false; // [true|false] - button has a gradient background
+@button-gradient-direction: false; // button gradient direction if button has a gradient background
 
-// Button with icon
+//  Button with icon
 @button-icon-use: false;
 @button-font-content: @icon-settings;
-@button-icon-font: @icon-font; // Also used in: @popup-icon-font
-@button-icon-font-size: 22px; // Also used in: @popup-icon-font-size
-@button-icon-font-line-height: @button-icon-font-size; // Also used in: @popup-icon-font-line-height
-@button-icon-font-color: inherit; // Also used in: @popup-icon-font-color
-@button-icon-font-color-hover: inherit; // Also used in: @popup-icon-font-color-hover
-@button-icon-font-color-active: inherit; // Also used in: @popup-icon-font-color-active
-@button-icon-font-margin: 0; // Also used in: @popup-icon-font-margin
-@button-icon-font-vertical-align: top; // Also used in: @popup-icon-font-vertical-align
-@button-icon-font-position: @icon-position; // Also used in: @popup-icon-font-position
-@button-icon-font-text-hide: false; // Also used in: @popup-icon-font-text-hide
-
-// Large button
+@button-icon-font: @icon-font;
+@button-icon-font-size: 22px;
+@button-icon-font-line-height: @button-icon-font-size;
+@button-icon-font-color: inherit;
+@button-icon-font-color-hover: inherit;
+@button-icon-font-color-active: inherit;
+@button-icon-font-margin: 0;
+@button-icon-font-vertical-align: top;
+@button-icon-font-position: @icon-position;
+@button-icon-font-text-hide: false;
+
+//  Large button
 @button-l-font-size: @font-size-l;
 @button-l-line-height: @font-size-l + 4;
 @button-l-padding: 14px 17px;
 
-// Small button
+//  Small button
 @button-s-font-size: 11px;
 @button-s-line-height: @button-s-font-size + 1;
 @button-s-padding: @indent-xs-base 8px;
 
 //
-//    Icons variables
-//--------------------------------------
+//  Icons
+//  ---------------------------------------------
+
 @icon-position: before;
 @icon-text-hide: false;
 @icon-height: 26px;
 @icon-width: 26px;
 @icon-margin: '';
-@icon-vertical-align: middle; // Also used in: @icon-font-vertical-align
+@icon-vertical-align: middle;
 
 @icon-image-position-x: 0;
 @icon-image-position-y: 0;
@@ -617,11 +688,11 @@
 @icon-sprite-position-y: 0;
 @icon-sprite-grid: 26px;
 
-@icon-font: @icon-font-name; // Also used in: @button-icon-font, @rating-icon-font, @pager-icon-font
+@icon-font: @icon-font-name;
 @icon-font-position: @icon-position;
 @icon-font-text-hide: @icon-text-hide;
 @icon-font-margin: @icon-margin;
-@icon-font-size: inherit; // Also used in: @icon-font-line-height
+@icon-font-size: inherit;
 @icon-font-line-height: @icon-font-size;
 @icon-font-color: inherit;
 @icon-font-color-hover: false;
@@ -629,7 +700,7 @@
 @icon-font-vertical-align: @icon-vertical-align;
 @icon-font-display: inline-block;
 
-// Variables for icons-blank-theme
+//  Variables for icons-blank-theme
 @icon-wishlist-full: '\e600';
 @icon-wishlist-empty: '\e601';
 @icon-warning: '\e602';
@@ -672,12 +743,13 @@
 @icon-account: '\e627';
 
 //
-//    Messages variables
-//--------------------------------------
+//  Messages variables
+//  ---------------------------------------------
+
 @message-padding: @indent-s-base @indent-base;
 @message-margin: 0 0 @indent-s-base;
 
-@message-color: false; // Each message type has its own message color
+@message-color: false; //  Each message type has its own message color
 @message-font-size: 13px;
 @message-font-family: false;
 @message-font-style: false;
@@ -699,23 +771,23 @@
 @message-border-style: false;
 @message-border-radius: false;
 
-// Information message
-@message-info-color: #6f4400;
-@message-info-background: #fdf0d5;
+//  Information message
+@message-info-color: @color-brownie1;
+@message-info-background: @color-yellow-light1;
 @message-info-link-color: @link-color;
 @message-info-link-color-hover: @link-color-hover;
 @message-info-link-color-active: @link-color-hover;
 @message-info-border-color: @message-border-color;
 @message-info-icon: @icon-warning;
-@message-info-icon-color-inner: #c07600;
+@message-info-icon-color-inner: @color-brownie-light1;
 @message-info-icon-color-lateral: @color-white;
-@message-info-icon-background: #6f4400;
+@message-info-icon-background: @color-brownie1;
 @message-info-icon-top: @message-icon-top;
 @message-info-icon-right: @message-icon-right;
 @message-info-icon-bottom: @message-icon-bottom;
 @message-info-icon-left: @message-icon-left;
 
-// Warning message
+//  Warning message
 @message-warning-color: @message-info-color;
 @message-warning-background: @message-info-background;
 @message-warning-link-color: @message-info-link-color;
@@ -731,39 +803,39 @@
 @message-warning-icon-bottom: @message-icon-bottom;
 @message-warning-icon-left: @message-icon-left;
 
-// Error message
+//  Error message
 @message-error-color: @color-error;
-@message-error-background: #fae5e5;
+@message-error-background: @color-pink1;
 @message-error-link-color: @link-color;
 @message-error-link-color-hover: @link-color-hover;
 @message-error-link-color-active: @link-color-hover;
 @message-error-border-color: @message-border-color;
 @message-error-icon: @icon-warning;
-@message-error-icon-color-inner: #b30000;
+@message-error-icon-color-inner: @color-red11;
 @message-error-icon-color-lateral: @color-white;
-@message-error-icon-background: #b30000;
+@message-error-icon-background: @color-red11;
 @message-error-icon-top: @message-icon-top;
 @message-error-icon-right: @message-icon-right;
 @message-error-icon-bottom: @message-icon-bottom;
 @message-error-icon-left: @message-icon-left;
 
-// Success message
-@message-success-color: #006400;
-@message-success-background: #e5efe5;
+//  Success message
+@message-success-color: @color-dark-green1;
+@message-success-background: @color-gray-light1;
 @message-success-link-color: @link-color;
 @message-success-link-color-hover: @link-color-hover;
 @message-success-link-color-active: @link-color-hover;
 @message-success-border-color: @message-border-color;
 @message-success-icon: @icon-checkmark;
-@message-success-icon-color-inner: #006400;
+@message-success-icon-color-inner: @color-dark-green1;
 @message-success-icon-color-lateral: @color-white;
-@message-success-icon-background: #006400;
+@message-success-icon-background: @color-dark-green1;
 @message-success-icon-top: @message-icon-top;
 @message-success-icon-right: @message-icon-right;
 @message-success-icon-bottom: @message-icon-bottom;
 @message-success-icon-left: @message-icon-left;
 
-// Notice message
+//  Notice message
 @message-notice-color: @message-info-color;
 @message-notice-background: @message-info-background;
 @message-notice-link-color: @message-info-link-color;
@@ -780,10 +852,11 @@
 @message-notice-icon-left: @message-icon-left;
 
 //
-//    Tooltips variables
-//--------------------------------------
+//  Tooltips
+//  ---------------------------------------------
+
 @tooltip-background: @color-white;
-@tooltip-border-color: #bbb;
+@tooltip-border-color: @color-gray-light2;
 @tooltip-border-width: 1px;
 @tooltip-border-radius: false;
 @tooltip-color: @color-primary;
@@ -802,14 +875,15 @@
 @tooltip-z-index: 100;
 
 //
-//    Loaders variables
-//--------------------------------------
-@loader-overlay-background-color: rgba(255, 255, 255, .5); // also used in: @loading-background-color
+//  Loaders variables
+//  ---------------------------------------------
+
+@loader-overlay-background-color: rgba(255, 255, 255, .5);
 @loader-overlay-z-index: 9999;
 @loader-icon-width: 160px;
 @loader-icon-height: 160px;
 @loader-icon-background-color: transparent;
-@loader-icon-background-image: url('@{baseDir}images/loader-2.gif'); // also used in: @loading-background-image
+@loader-icon-background-image: url('@{baseDir}images/loader-2.gif');
 @loader-icon-background-position: 50% 50%;
 @loader-icon-border-radius: 5px;
 @loader-icon-padding: '';
@@ -824,13 +898,13 @@
 @loading-background-image: @loader-icon-background-image;
 
 //
-//    Forms variables
-//--------------------------------------
+//  Forms variables
+//  ---------------------------------------------
 
-// Form elements inputs default variables
-@form-element-input-type: ''; // input-text, select, textarea, input-radio, input-checkbox
+//  Form elements inputs default variables
+@form-element-input-type: ''; //  [input-text|select|textarea|input-radio|input-checkbox]
 @form-element-input-background: @color-white;
-@form-element-input-border-color: #c2c2c2;
+@form-element-input-border-color: @color-gray76;
 @form-element-input-border: 1px solid @form-element-input-border-color;
 @form-element-input-border-radius: 1px;
 @form-element-input-height: 32px;
@@ -838,7 +912,7 @@
 @form-element-input-margin: false;
 @form-element-input-padding: 0 9px;
 @form-element-input-vertical-align: baseline;
-@form-element-input-background-clip: padding-box; // border-box, content-box
+@form-element-input-background-clip: padding-box; //  [border-box|content-box|padding-box]
 @form-element-input-font-size: @font-size-base;
 @form-element-input-color: false;
 @form-element-input-font-family: @font-family-base;
@@ -846,30 +920,30 @@
 @form-element-input-font-style: false;
 @form-element-input-line-height: @line-height-base;
 
-// Placeholder
-@form-element-input-placeholder-color: #c2c2c2;
+//  Placeholder
+@form-element-input-placeholder-color: @color-gray76;
 @form-element-input-placeholder-font-style: @form-element-input-font-style;
 
-// Disabled state
+//  Disabled state
 @form-element-input-disabled-background: @form-element-input-background;
 @form-element-input-disabled-border: @form-element-input-border;
 @form-element-input-disabled-opacity: .5;
 @form-element-input-disabled-color: @form-element-input-color;
 @form-element-input-disabled-font-style: @form-element-input-font-style;
 
-// Focus state
+//  Focus state
 @form-element-input-focus-background: @form-element-input-background;
 @form-element-input-focus-border: @form-element-input-border;
 @form-element-input-focus-color: @form-element-input-color;
 @form-element-input-focus-font-style: @form-element-input-font-style;
 
-// Form elements choice default variables
-@form-element-choice-type: ''; //radio, checkbox
+//  Form elements choice default variables
+@form-element-choice-type: ''; //  [radio|checkbox]
 @form-element-choice-vertical-align: false;
 @form-element-choice-margin: 2px @indent-xs-base 0 0;
 @form-element-choice-disabled-opacity: @form-element-input-disabled-opacity;
 
-// Input-text
+//  Input-text
 @input-text-background: @form-element-input-background;
 @input-text-border: @form-element-input-border;
 @input-text-border-radius: @form-element-input-border-radius;
@@ -878,7 +952,7 @@
 @input-text-margin: @form-element-input-margin;
 @input-text-padding: @form-element-input-padding;
 @input-text-vertical-align: @form-element-input-vertical-align;
-@input-text-background-clip: @form-element-input-background-clip; // border-box, content-box
+@input-text-background-clip: @form-element-input-background-clip; //  [border-box|content-box|padding-box]
 @input-text-font-size: @form-element-input-font-size;
 @input-text-color: @form-element-input-color;
 @input-text-font-family: @form-element-input-font-family;
@@ -886,33 +960,33 @@
 @input-text-font-style: @form-element-input-font-style;
 @input-text-line-height: @form-element-input-line-height;
 
-// Placeholder
+//  Placeholder
 @input-text-placeholder-color: @form-element-input-placeholder-color;
 @input-text-placeholder-font-style: @form-element-input-placeholder-font-style;
 
-// Disabled state
+//  Disabled state
 @input-text-disabled-background: @form-element-input-disabled-background;
 @input-text-disabled-border: @form-element-input-disabled-border;
 @input-text-disabled-opacity: @form-element-input-disabled-opacity;
 @input-text-disabled-color: @form-element-input-disabled-color;
 @input-text-disabled-font-style: @form-element-input-disabled-font-style;
 
-// Focus state
+//  Focus state
 @input-text-focus-background: @form-element-input-focus-background;
 @input-text-focus-border: @form-element-input-focus-border;
 @input-text-focus-color: @form-element-input-focus-color;
 @input-text-focus-font-style: @form-element-input-focus-font-style;
 
-// Select
+//  Select
 @select-background: @form-element-input-background;
 @select-border: @form-element-input-border;
 @select-border-radius: @form-element-input-border-radius;
 @select-height: @form-element-input-height;
 @select-width: @form-element-input-width;
 @select-margin: @form-element-input-margin;
-@select-padding: 5px 10px 4px;
+@select-padding: @indent-xs-base @indent-s-base 4px;
 @select-vertical-align: @form-element-input-vertical-align;
-@select-background-clip: @form-element-input-background-clip; // border-box, content-box
+@select-background-clip: @form-element-input-background-clip; //  [border-box|content-box|padding-box]
 @select-font-size: @form-element-input-font-size;
 @select-color: @form-element-input-color;
 @select-font-family: @form-element-input-font-family;
@@ -920,24 +994,24 @@
 @select-font-style: @form-element-input-font-style;
 @select-line-height: @form-element-input-line-height;
 
-// Placeholder
+//  Placeholder
 @select-placeholder-color: false;
 @select-placeholder-font-style: false;
 
-// Disabled state
+//  Disabled state
 @select-disabled-background: @form-element-input-disabled-background;
 @select-disabled-border: @form-element-input-disabled-border;
 @select-disabled-opacity: @form-element-input-disabled-opacity;
 @select-disabled-color: @form-element-input-disabled-color;
 @select-disabled-font-style: @form-element-input-disabled-font-style;
 
-// Focus state
+//  Focus state
 @select-focus-background: @form-element-input-focus-background;
 @select-focus-border: @form-element-input-focus-border;
 @select-focus-color: @form-element-input-focus-color;
 @select-focus-font-style: @form-element-input-focus-font-style;
 
-// Textarea
+//  Textarea
 @textarea-background: @form-element-input-background;
 @textarea-border: @form-element-input-border;
 @textarea-border-radius: @form-element-input-border-radius;
@@ -946,43 +1020,43 @@
 @textarea-padding: @indent-s-base;
 @textarea-margin: 0;
 @textarea-vertical-align: @form-element-input-vertical-align;
-@textarea-background-clip: @form-element-input-background-clip; // border-box, content-box
+@textarea-background-clip: @form-element-input-background-clip; //  [border-box|content-box|padding-box]
 @textarea-font-size: @form-element-input-font-size;
 @textarea-color: @form-element-input-color;
 @textarea-font-family: @form-element-input-font-family;
 @textarea-font-weight: @form-element-input-font-weight;
 @textarea-font-style: @form-element-input-font-style;
 @textarea-line-height: @form-element-input-line-height;
-@textarea-resize: vertical; // none | both | horizontal | vertical | inherit
+@textarea-resize: vertical; //  [none|both|horizontal|vertical|inherit]
 
-// Placeholder
+//  Placeholder
 @textarea-placeholder-color: @form-element-input-placeholder-color;
 @textarea-placeholder-font-style: @form-element-input-placeholder-font-style;
 
-// Disabled state
+//  Disabled state
 @textarea-disabled-background: @form-element-input-disabled-background;
 @textarea-disabled-border: @form-element-input-disabled-border;
 @textarea-disabled-opacity: @form-element-input-disabled-opacity;
 @textarea-disabled-color: @form-element-input-disabled-color;
 @textarea-disabled-font-style: @form-element-input-disabled-font-style;
 
-// Focus state
+//  Focus state
 @textarea-focus-background: @form-element-input-focus-background;
 @textarea-focus-border: @form-element-input-focus-border;
 @textarea-focus-color: @form-element-input-focus-color;
 @textarea-focus-font-style: @form-element-input-focus-font-style;
 
-// Radio
+//  Radio
 @input-radio-vertical-align: @form-element-choice-vertical-align;
 @input-radio-margin: @form-element-choice-margin;
 @input-radio-disabled-opacity: @form-element-choice-disabled-opacity;
 
-// Checkbox
+//  Checkbox
 @input-checkbox-vertical-align: @form-element-choice-vertical-align;
 @input-checkbox-margin: @form-element-choice-margin;
 @input-checkbox-disabled-opacity: @form-element-choice-disabled-opacity;
 
-// Validation variables
+//  Validation variables
 @form-validation-note-color-error: @color-error;
 @form-validation-note-font-size: @font-size-s;
 @form-validation-note-font-family: false;
@@ -1007,12 +1081,12 @@
 
 @form-element-validation-color-error: false;
 @form-element-validation-color-valid: false;
-@form-element-validation-border-error: lighten(@form-validation-note-color-error, 20%); //darken(@form-element-validation-color-error, 5%)
-@form-element-validation-border-valid: false; //darken(@form-element-validation-color-valid, 5%)
-@form-element-validation-background-error: false; //lighten(@form-element-validation-color-error, 50%)
-@form-element-validation-background-valid: false; //lighten(@form-element-validation-color-valid, 50%)
+@form-element-validation-border-error: lighten(@form-validation-note-color-error, 20%);
+@form-element-validation-border-valid: false;
+@form-element-validation-background-error: false;
+@form-element-validation-background-valid: false;
 
-// Fieldset
+//  Fieldset
 @form-fieldset-border: 0;
 @form-fieldset-margin: 0 0 @indent-xl-base;
 @form-fieldset-padding: 0;
@@ -1024,11 +1098,11 @@
 @form-fieldset-legend-line-height: 1.2;
 @form-fieldset-legend-margin: 0 0 @indent-m-base;
 @form-fieldset-legend-padding: 0;
-@form-fieldset-legend-width: false; // @form-field-type-inline-control-width
+@form-fieldset-legend-width: false;
 
-// Field
-@form-field-type: block; //inline
-@form-field-type-revert: inline; // inline, block, false
+//  Field
+@form-field-type: block; //  [inline|block]
+@form-field-type-revert: inline; //  [inline|block|false]
 @form-field-border: false;
 @form-field-column: false;
 @form-field-column-padding: 0 12px 0 0;
@@ -1038,7 +1112,7 @@
 @form-field-type-block-margin: 0 0 @form-field-vertical-indent;
 @form-field-type-inline-margin: 0 0 @form-field-vertical-indent;
 
-// Form field label
+//  Form field label
 @form-field-label-align: false;
 @form-field-label-color: false;
 @form-field-label-font-size: false;
@@ -1055,11 +1129,11 @@
 @form-field-type-block-label-padding: false;
 @form-field-type-block-label-align: @form-field-label-align;
 
-// Form field control
+//  Form field control
 @form-field-type-inline-control-width: 74.2%;
 
-// Form field label asterisk
-@form-field-label-asterisk-color: #e02b27; // also used in: @form-hasrequired-color
+//  Form field label asterisk
+@form-field-label-asterisk-color: @color-red10;
 @form-field-label-asterisk-font-size: @font-size-s;
 @form-field-label-asterisk-font-family: false;
 @form-field-label-asterisk-font-weight: false;
@@ -1067,7 +1141,7 @@
 @form-field-label-asterisk-line-height: false;
 @form-field-label-asterisk-margin: 0 0 0 @indent-xs-base;
 
-// Form field note
+//  Form field note
 @form-field-note-color: false;
 @form-field-note-font-size: @font-size-s;
 @form-field-note-font-family: false;
@@ -1077,7 +1151,7 @@
 @form-field-note-margin: 3px 0 0;
 @form-field-note-padding: 0;
 
-// Form field note icon
+//  Form field note icon
 @form-field-note-icon-font-content: @icon-pointer-up;
 @form-field-note-icon-font: @icon-font;
 @form-field-note-icon-font-size: @form-field-note-font-size * 2;
@@ -1090,8 +1164,8 @@
 @form-field-note-icon-font-position: @icon-font-position;
 @form-field-note-icon-font-text-hide: @icon-font-text-hide;
 
-// Hasrequired
-@form-hasrequired-position: top; // top | bottom
+//  Hasrequired
+@form-hasrequired-position: top; //  [top|bottom]
 @form-hasrequired-color: @form-field-label-asterisk-color;
 @form-hasrequired-font-size: @font-size-s;
 @form-hasrequired-font-family: false;
@@ -1103,11 +1177,12 @@
 @form-hasrequired-padding: false;
 
 //
-//    Pager variables
-//--------------------------------------
+//  Pager
+//  ---------------------------------------------
+
 @pager-label-display: none;
 @pager-item-display: inline-block;
-@pager-reset-spaces: true;  // reset spaces between inline-block elements
+@pager-reset-spaces: true;  //  Reset spaces between inline-block elements
 
 @pager-font-size: @font-size-s;
 @pager-font-weight: @font-weight-bold;
@@ -1116,7 +1191,7 @@
 @pager-item-padding: 0 4px;
 @pager-actions-padding: 0;
 
-// Pager current page
+//  Pager current page
 @pager-current-font-weight: @font-weight-bold;
 @pager-current-color: @color-primary;
 @pager-current-border: false;
@@ -1128,11 +1203,11 @@
 @pager-current-gradient-start-color: false;
 @pager-current-gradient-end-color: false;
 
-// Pager link page
+//  Pager link page
 @pager-gradient: false;
 @pager-gradient-direction: false;
 
-// Pager link default
+//  Pager link default
 @pager-color: @link-color;
 @pager-border: false;
 @pager-text-decoration: none;
@@ -1140,14 +1215,14 @@
 @pager-gradient-start-color: false;
 @pager-gradient-end-color: false;
 
-// Pager link visited
+//  Pager link visited
 @pager-color-visited: @link-color-visited;
 @pager-border-visited: false;
 @pager-background-visited: false;
 @pager-gradient-start-color-visited: false;
 @pager-gradient-end-color-visited: false;
 
-// Pager link hover
+//  Pager link hover
 @pager-color-hover: @link-color-hover;
 @pager-border-hover: false;
 @pager-text-decoration-hover: none;
@@ -1155,14 +1230,14 @@
 @pager-gradient-start-color-hover: false;
 @pager-gradient-end-color-hover: false;
 
-// Pager link active
+//  Pager link active
 @pager-color-active: @link-color-active;
 @pager-border-active: false;
 @pager-background-active: false;
 @pager-gradient-start-color-active: false;
 @pager-gradient-end-color-active: false;
 
-// Pager link.action
+//  Pager link.action
 @pager-icon-use: true;
 @pager-icon-previous-content: @icon-prev;
 @pager-icon-next-content: @icon-next;
@@ -1174,11 +1249,11 @@
 @pager-icon-font-size: 46px;
 @pager-icon-font-line-height: @icon-font-line-height;
 
-// Pager link.action gradient: does element have gradient background
-@pager-action-gradient: false;
-@pager-action-gradient-direction: false;
+//  Pager link.action gradient: element has a gradient background
+@pager-action-gradient: false; //  [true|false]
+@pager-action-gradient-direction: false; //  [true|false]
 
-// Pager link.action default
+//  Pager link.action default
 @pager-action-color: @text-color-muted;
 @pager-action-border: @border-width-base solid @border-color-base;
 @pager-action-text-decoration: @pager-text-decoration;
@@ -1186,14 +1261,14 @@
 @pager-action-gradient-start-color: false;
 @pager-action-gradient-end-color: false;
 
-// Pager link.action visited
+//  Pager link.action visited
 @pager-action-color-visited: @pager-action-color;
 @pager-action-border-visited: false;
 @pager-action-background-visited: false;
 @pager-action-gradient-start-color-visited: false;
 @pager-action-gradient-end-color-visited: false;
 
-// Pager link.action hover
+//  Pager link.action hover
 @pager-action-color-hover: @pager-action-color;
 @pager-action-border-hover: false;
 @pager-action-background-hover: false;
@@ -1201,7 +1276,7 @@
 @pager-action-gradient-start-color-hover: false;
 @pager-action-gradient-end-color-hover: false;
 
-// Pager link.action active
+//  Pager link.action active
 @pager-action-color-active: @pager-action-color;
 @pager-action-border-active: false;
 @pager-action-background-active: false;
@@ -1209,42 +1284,44 @@
 @pager-action-gradient-end-color-active: false;
 
 //
-//    Ratings variables
-//--------------------------------------
+//  Ratings variables
+//  ---------------------------------------------
+
 @rating-icon-count: 5;
 @rating-icon-content: @icon-star;
 @rating-icon-font: @icon-font;
 @rating-icon-font-size: 28px;
 @rating-icon-letter-spacing: -10px;
-@rating-icon-color: #c7c7c7;
-@rating-icon-color-active: #ff5601;
+@rating-icon-color: @color-gray78;
+@rating-icon-color-active: @color-orange-red2;
 @rating-label-hide: false;
 
 //
-//    Dropdowns variables
-//--------------------------------------
+//  Dropdowns variables
+//  ---------------------------------------------
 
-// Variables simple dropdown
+//  Variables simple dropdown
 @dropdown-actions-padding: false;
-@dropdown-list-min-width: 100%; // Also used in: @dropdown-split-list-min-width
-@dropdown-list-width: false; // Also used in: @dropdown-split-list-width
-@dropdown-list-height: false; // Also used in: @dropdown-split-list-height
+@dropdown-list-min-width: 100%;
+@dropdown-list-width: false;
+@dropdown-list-height: false;
+@dropdown-list-margin-top: 4px;
 @dropdown-list-position-top: 100%;
 @dropdown-list-position-right: false;
 @dropdown-list-position-bottom: false;
 @dropdown-list-position-left: false;
-@dropdown-list-pointer: true; // true | false
+@dropdown-list-pointer: true; //  [true|false]
 @dropdown-list-background: @color-white;
-@dropdown-list-border: 1px solid #bbb;
-@dropdown-list-pointer-border: #bbb;
-@dropdown-list-pointer-position: left; // right
+@dropdown-list-border: 1px solid @color-gray-light2;
+@dropdown-list-pointer-border: @color-gray-light2;
+@dropdown-list-pointer-position: left; //  [left|right]
 @dropdown-list-pointer-position-top: -12px;
 @dropdown-list-pointer-position-left-right: 10px;
 @dropdown-list-item-border: 0;
-@dropdown-list-item-padding: 3px 5px;
+@dropdown-list-item-padding: 3px @indent-xs-base;
 @dropdown-list-item-margin: 0;
-@dropdown-list-item-hover: #e8e8e8;
-@dropdown-list-shadow: 0 3px 3px rgba(0,0,0,.15); // '' | none
+@dropdown-list-item-hover: @color-gray91;
+@dropdown-list-shadow: 0 3px 3px rgba(0,0,0,.15); //  [''|none|value]
 @dropdown-list-z-index: 100;
 
 @dropdown-toggle-icon-content: @icon-pointer-down;
@@ -1260,14 +1337,15 @@
 @dropdown-toggle-icon-font-vertical-align: @button-icon-font-vertical-align;
 @dropdown-toggle-icon-text-hide: @button-icon-font-text-hide;
 
-// Variables split dropdown
+//  Variables split dropdown
 @dropdown-split-actions-padding: 0 @indent-xs-base;
 @dropdown-split-toggle-actions-padding: 4px @indent-xs-base;
 @dropdown-split-button-actions-padding: false;
-@dropdown-split-toggle-position: right; // Also used in: @dropdown-split-list-pointer-position
+@dropdown-split-toggle-position: right;
 @dropdown-split-list-min-width: @dropdown-list-min-width;
 @dropdown-split-list-width: @dropdown-list-width;
 @dropdown-split-list-height: @dropdown-list-height;
+@dropdown-split-list-margin-top: @dropdown-list-margin-top;
 @dropdown-split-list-position-top: @dropdown-list-position-top;
 @dropdown-split-list-position-right: @dropdown-list-position-right;
 @dropdown-split-list-position-bottom: @dropdown-list-position-bottom;
@@ -1284,7 +1362,7 @@
 @dropdown-split-list-item-margin: @dropdown-list-item-margin;
 @dropdown-split-list-item-hover: @dropdown-list-item-hover;
 @dropdown-split-button-border-radius-fix: false;
-@dropdown-split-list-shadow: @dropdown-list-shadow; // '', none
+@dropdown-split-list-shadow: @dropdown-list-shadow; //  [''|none|value]
 @dropdown-split-list-z-index: @dropdown-list-z-index;
 
 @dropdown-split-toggle-icon-content: @dropdown-toggle-icon-content;
@@ -1298,27 +1376,27 @@
 @dropdown-split-toggle-icon-font-margin: @button-icon-font-margin;
 @dropdown-split-toggle-icon-font-vertical-align: @button-icon-font-vertical-align;
 @dropdown-split-toggle-icon-position: @dropdown-toggle-icon-position;
-@dropdown-split-toggle-icon-text-hide: true; // false
+@dropdown-split-toggle-icon-text-hide: true; //  [true|false]
 
 //
-//    Actions-toolbar variables
-//--------------------------------------
-@actions-toolbar-actions-position: justify; // left, right, center, justify
-// Also used in: @popup-actions-toolbar-actions-position
-@actions-toolbar-actions-reverse: false; // true
-// Also used in: @popup-actions-toolbar-actions-position-reverse
-@actions-toolbar-margin: false; // Also used in: @popup-actions-toolbar-margins
-@actions-toolbar-padding: false; // Also used in: @popup-actions-toolbar-padding
-@actions-toolbar-actions-margin: false; // Also used in: @popup-actions-toolbar-actions-margin
-@actions-toolbar-primary-actions-margin: 0 @indent-xs-base 0 0; // Also used in: @popup-actions-toolbar-primary-actions-margin
-@actions-toolbar-secondary-actions-margin: false; // Also used in: @popup-actions-toolbar-secondary-actions-margin
-@actions-toolbar-actions-links-margin-top: false; // Also used in: @popup-actions-toolbar-actions-links-margin-top
-@actions-toolbar-primary-actions-links-margin-top: false; // Also used in: @popup-actions-primary-toolbar-actions-links-margin-top
-@actions-toolbar-secondary-actions-links-margin-top: 6px; // Also used in: @popup-actions-secondary-toolbar-actions-links-margin-top
+//  Actions-toolbar variables
+//  ---------------------------------------------
+
+@actions-toolbar-actions-position: justify; //  [left|right|center|justify]
+@actions-toolbar-actions-reverse: false; //  [true|false]
+@actions-toolbar-margin: false;
+@actions-toolbar-padding: false;
+@actions-toolbar-actions-margin: false;
+@actions-toolbar-primary-actions-margin: 0 @indent-xs-base 0 0;
+@actions-toolbar-secondary-actions-margin: false;
+@actions-toolbar-actions-links-margin-top: false;
+@actions-toolbar-primary-actions-links-margin-top: false;
+@actions-toolbar-secondary-actions-links-margin-top: 6px;
 
 //
-//    Breadcrumbs variables
-//--------------------------------------
+//  Breadcrumbs variables
+//  ---------------------------------------------
+
 @breadcrumbs-font-size: @font-size-s;
 @breadcrumbs-display: false;
 @breadcrumbs-container-margin: 0 0 @indent-base;
@@ -1336,22 +1414,22 @@
 @breadcrumbs-icon-font-margin: 0;
 @breadcrumbs-icon-font-vertical-align: top;
 
-// Breadcrumbs - current page
-@breadcrumbs-current-color: #a3a3a3;
+//  Breadcrumbs - current page
+@breadcrumbs-current-color: @color-gray64;
 @breadcrumbs-current-font-weight: @font-weight-base;
 @breadcrumbs-current-background: false;
 @breadcrumbs-current-border: false;
 
-// Breadcrumbs - current page - gradient background
+//  Breadcrumbs - current page - gradient background
 @breadcrumbs-current-gradient: false;
 @breadcrumbs-current-gradient-direction: vertical;
 @breadcrumbs-current-gradient-start-color: false;
 @breadcrumbs-current-gradient-end-color: false;
 
-// Breadcrumbs - link
-// Breadcrumbs link - gradient
-@breadcrumbs-link-gradient: false;
-@breadcrumbs-link-gradient-direction: false;
+//  Breadcrumbs - link
+//  Breadcrumbs link - gradient
+@breadcrumbs-link-gradient: false; //  [true|false]
+@breadcrumbs-link-gradient-direction: false; //  [true|false]
 
 @breadcrumbs-link-color: @color-primary;
 @breadcrumbs-link-background: false;
@@ -1360,7 +1438,7 @@
 @breadcrumbs-link-gradient-start-color: false;
 @breadcrumbs-link-gradient-end-color: false;
 
-// Breadcrumbs link - visited
+//  Breadcrumbs link - visited
 @breadcrumbs-link-color-visited: @color-primary;
 @breadcrumbs-link-background-visited: @breadcrumbs-link-background;
 @breadcrumbs-link-border-visited: @breadcrumbs-link-border;
@@ -1368,7 +1446,7 @@
 @breadcrumbs-link-gradient-start-color-visited: false;
 @breadcrumbs-link-gradient-end-color-visited: false;
 
-// Breadcrumbs link - hover
+//  Breadcrumbs link - hover
 @breadcrumbs-link-color-hover: @color-primary;
 @breadcrumbs-link-background-hover: false;
 @breadcrumbs-link-border-hover: @breadcrumbs-link-border;
@@ -1376,7 +1454,7 @@
 @breadcrumbs-link-gradient-start-color-hover: false;
 @breadcrumbs-link-gradient-end-color-hover: false;
 
-// Breadcrumbs link - active
+//  Breadcrumbs link - active
 @breadcrumbs-link-color-active: @color-primary;
 @breadcrumbs-link-background-active: @breadcrumbs-link-background;
 @breadcrumbs-link-border-active: @breadcrumbs-link-border;
@@ -1385,13 +1463,14 @@
 @breadcrumbs-link-gradient-end-color-active: false;
 
 //
-//    Popups variables
-//--------------------------------------
+//  Popups
+//  ---------------------------------------------
+
 @popup-width: auto;
 @popup-height: auto;
 @popup-padding: 22px;
 @popup-background: @color-white;
-@popup-border: 1px solid #aeaeae;
+@popup-border: 1px solid @color-gray-light3;
 @popup-shadow: 0 3px 3px rgba(0,0,0,.15);
 @popup-fade: opacity .3s linear;
 @popup-z-index: 1001;
@@ -1412,19 +1491,19 @@
 @popup-content-margin: false;
 @popup-footer-margin: false;
 
-@popup-title-headings: true; // false
-@popup-title-headings-level: h3; // h1, h2, h3, h4, h5, h6
+@popup-title-headings: true; //  [true|false]
+@popup-title-headings-level: h3; //  [h1|h2|h3|h4|h5|h6]
 
-@popup-button-close-icon: true; // false
-@popup-button-close-reset: true; // false
+@popup-button-close-icon: true; //  [true|false]
+@popup-button-close-reset: true; //  [true|false]
 @popup-button-close-position: absolute;
-@popup-button-close-position-top: 10px;
-@popup-button-close-position-right: 10px;
-@popup-button-close-position-bottom: '';
-@popup-button-close-position-left: '';
+@popup-button-close-position-top: @indent-s-base;
+@popup-button-close-position-right: @indent-s-base;
+@popup-button-close-position-bottom: false;
+@popup-button-close-position-left: false;
 
-// Actions toolbar variables
-@popup-action-toolbar: false; // true
+//  Actions toolbar variables
+@popup-action-toolbar: false; //  [true|false]
 @popup-actions-toolbar-actions-position: @actions-toolbar-actions-position;
 @popup-actions-toolbar-actions-reverse: @actions-toolbar-actions-reverse;
 @popup-actions-toolbar-margin: @actions-toolbar-margin;
@@ -1436,7 +1515,7 @@
 @popup-actions-toolbar-primary-actions-links-margin-top: @actions-toolbar-primary-actions-links-margin-top;
 @popup-actions-toolbar-secondary-actions-links-margin-top: @actions-toolbar-secondary-actions-links-margin-top;
 
-// Popup Icons variables
+//  Popup Icons variables
 @popup-icon-font-content: @icon-remove;
 @popup-icon-font: @button-icon-font;
 @popup-icon-font-size: @button-icon-font-size;
@@ -1449,8 +1528,8 @@
 @popup-icon-font-position: @button-icon-font-position;
 @popup-icon-font-text-hide: true;
 
-// Window overlay variables
-@overlay-background: #000;
+//  Window overlay variables
+@overlay-background: @color-black;
 @overlay-opacity: .5;
 @overlay-opacity-old: 50;
 @overlay-fade: opacity .15s linear;
diff --git a/lib/web/css/styles.less b/lib/web/css/styles.less
index af0417a89c35405b01d8078b3d8db089758f57be..ccd743db21a4d74b554901db3c30fbc9fbeb0766 100644
--- a/lib/web/css/styles.less
+++ b/lib/web/css/styles.less
@@ -4,7 +4,6 @@
  * See COPYING.txt for license details.
  */
 
-.magento-reset();   // Reset default styles with magento-reset
 @import "source/lib/lib.less"; // Import all lib files
 @import "source/theme.less"; // import theme styles
 @import "source/lib/responsive.less"; // import responsive styles
diff --git a/lib/web/fonts/Blank-Theme-Icons/Blank-Theme-Icons.woff2 b/lib/web/fonts/Blank-Theme-Icons/Blank-Theme-Icons.woff2
new file mode 100644
index 0000000000000000000000000000000000000000..438e128ae281b026f6fa1309ca2e78b17cf18a8b
Binary files /dev/null and b/lib/web/fonts/Blank-Theme-Icons/Blank-Theme-Icons.woff2 differ
diff --git a/app/design/frontend/Magento/blank/web/fonts/opensans/bold/opensans-700.eot b/lib/web/fonts/opensans/bold/opensans-700.eot
similarity index 100%
rename from app/design/frontend/Magento/blank/web/fonts/opensans/bold/opensans-700.eot
rename to lib/web/fonts/opensans/bold/opensans-700.eot
diff --git a/app/design/frontend/Magento/blank/web/fonts/opensans/bold/opensans-700.svg b/lib/web/fonts/opensans/bold/opensans-700.svg
similarity index 100%
rename from app/design/frontend/Magento/blank/web/fonts/opensans/bold/opensans-700.svg
rename to lib/web/fonts/opensans/bold/opensans-700.svg
diff --git a/app/design/frontend/Magento/blank/web/fonts/opensans/bold/opensans-700.ttf b/lib/web/fonts/opensans/bold/opensans-700.ttf
similarity index 100%
rename from app/design/frontend/Magento/blank/web/fonts/opensans/bold/opensans-700.ttf
rename to lib/web/fonts/opensans/bold/opensans-700.ttf
diff --git a/app/design/frontend/Magento/blank/web/fonts/opensans/bold/opensans-700.woff b/lib/web/fonts/opensans/bold/opensans-700.woff
similarity index 100%
rename from app/design/frontend/Magento/blank/web/fonts/opensans/bold/opensans-700.woff
rename to lib/web/fonts/opensans/bold/opensans-700.woff
diff --git a/lib/web/fonts/opensans/bold/opensans-700.woff2 b/lib/web/fonts/opensans/bold/opensans-700.woff2
new file mode 100644
index 0000000000000000000000000000000000000000..f3f0160bc8d06aa0be167614ef32e56d2c4b60a9
Binary files /dev/null and b/lib/web/fonts/opensans/bold/opensans-700.woff2 differ
diff --git a/app/design/frontend/Magento/blank/web/fonts/opensans/light/opensans-300.eot b/lib/web/fonts/opensans/light/opensans-300.eot
similarity index 100%
rename from app/design/frontend/Magento/blank/web/fonts/opensans/light/opensans-300.eot
rename to lib/web/fonts/opensans/light/opensans-300.eot
diff --git a/app/design/frontend/Magento/blank/web/fonts/opensans/light/opensans-300.svg b/lib/web/fonts/opensans/light/opensans-300.svg
similarity index 100%
rename from app/design/frontend/Magento/blank/web/fonts/opensans/light/opensans-300.svg
rename to lib/web/fonts/opensans/light/opensans-300.svg
diff --git a/app/design/frontend/Magento/blank/web/fonts/opensans/light/opensans-300.ttf b/lib/web/fonts/opensans/light/opensans-300.ttf
similarity index 100%
rename from app/design/frontend/Magento/blank/web/fonts/opensans/light/opensans-300.ttf
rename to lib/web/fonts/opensans/light/opensans-300.ttf
diff --git a/app/design/frontend/Magento/blank/web/fonts/opensans/light/opensans-300.woff b/lib/web/fonts/opensans/light/opensans-300.woff
similarity index 100%
rename from app/design/frontend/Magento/blank/web/fonts/opensans/light/opensans-300.woff
rename to lib/web/fonts/opensans/light/opensans-300.woff
diff --git a/lib/web/fonts/opensans/light/opensans-300.woff2 b/lib/web/fonts/opensans/light/opensans-300.woff2
new file mode 100644
index 0000000000000000000000000000000000000000..f7615ae2399b4691cc9e8ea082f7f951799665ce
Binary files /dev/null and b/lib/web/fonts/opensans/light/opensans-300.woff2 differ
diff --git a/app/design/frontend/Magento/blank/web/fonts/opensans/regular/opensans-400.eot b/lib/web/fonts/opensans/regular/opensans-400.eot
similarity index 100%
rename from app/design/frontend/Magento/blank/web/fonts/opensans/regular/opensans-400.eot
rename to lib/web/fonts/opensans/regular/opensans-400.eot
diff --git a/app/design/frontend/Magento/blank/web/fonts/opensans/regular/opensans-400.svg b/lib/web/fonts/opensans/regular/opensans-400.svg
similarity index 100%
rename from app/design/frontend/Magento/blank/web/fonts/opensans/regular/opensans-400.svg
rename to lib/web/fonts/opensans/regular/opensans-400.svg
diff --git a/app/design/frontend/Magento/blank/web/fonts/opensans/regular/opensans-400.ttf b/lib/web/fonts/opensans/regular/opensans-400.ttf
similarity index 100%
rename from app/design/frontend/Magento/blank/web/fonts/opensans/regular/opensans-400.ttf
rename to lib/web/fonts/opensans/regular/opensans-400.ttf
diff --git a/app/design/frontend/Magento/blank/web/fonts/opensans/regular/opensans-400.woff b/lib/web/fonts/opensans/regular/opensans-400.woff
similarity index 100%
rename from app/design/frontend/Magento/blank/web/fonts/opensans/regular/opensans-400.woff
rename to lib/web/fonts/opensans/regular/opensans-400.woff
diff --git a/lib/web/fonts/opensans/regular/opensans-400.woff2 b/lib/web/fonts/opensans/regular/opensans-400.woff2
new file mode 100644
index 0000000000000000000000000000000000000000..38ae1b57d6b689ab9ece36ee3a49255fc9a6f3f1
Binary files /dev/null and b/lib/web/fonts/opensans/regular/opensans-400.woff2 differ
diff --git a/app/design/frontend/Magento/blank/web/fonts/opensans/semibold/opensans-600.eot b/lib/web/fonts/opensans/semibold/opensans-600.eot
similarity index 100%
rename from app/design/frontend/Magento/blank/web/fonts/opensans/semibold/opensans-600.eot
rename to lib/web/fonts/opensans/semibold/opensans-600.eot
diff --git a/app/design/frontend/Magento/blank/web/fonts/opensans/semibold/opensans-600.svg b/lib/web/fonts/opensans/semibold/opensans-600.svg
similarity index 100%
rename from app/design/frontend/Magento/blank/web/fonts/opensans/semibold/opensans-600.svg
rename to lib/web/fonts/opensans/semibold/opensans-600.svg
diff --git a/app/design/frontend/Magento/blank/web/fonts/opensans/semibold/opensans-600.ttf b/lib/web/fonts/opensans/semibold/opensans-600.ttf
similarity index 100%
rename from app/design/frontend/Magento/blank/web/fonts/opensans/semibold/opensans-600.ttf
rename to lib/web/fonts/opensans/semibold/opensans-600.ttf
diff --git a/app/design/frontend/Magento/blank/web/fonts/opensans/semibold/opensans-600.woff b/lib/web/fonts/opensans/semibold/opensans-600.woff
similarity index 100%
rename from app/design/frontend/Magento/blank/web/fonts/opensans/semibold/opensans-600.woff
rename to lib/web/fonts/opensans/semibold/opensans-600.woff
diff --git a/lib/web/fonts/opensans/semibold/opensans-600.woff2 b/lib/web/fonts/opensans/semibold/opensans-600.woff2
new file mode 100644
index 0000000000000000000000000000000000000000..8399be251bf44f9e323f3850ffa63bbde6e21177
Binary files /dev/null and b/lib/web/fonts/opensans/semibold/opensans-600.woff2 differ
diff --git a/lib/web/mage/adminhtml/form.js b/lib/web/mage/adminhtml/form.js
index c6fed3aa5fc4f17ddda44a33da83d997ec122b8f..e266ece372ac4c8abda7a7b74b2b582eeffe1ed8 100644
--- a/lib/web/mage/adminhtml/form.js
+++ b/lib/web/mage/adminhtml/form.js
@@ -458,7 +458,7 @@ FormElementDependenceController.prototype = {
                 }
             } else {
                 $(idTo).show();
-                if (isAnInputOrSelect) {
+                if (isAnInputOrSelect && !isInheritCheckboxChecked) {
                     $(idTo).disabled = false;
                     jQuery('#' + idTo).removeClass('ignore-validate');
                 }
diff --git a/lib/web/mage/gallery.less b/lib/web/mage/gallery.less
index 628c5003d011dc9eceebcf397ca0ab1137bfd8f8..6135f33d594b39048ccba8a5cdcc732c4ed9e63f 100644
--- a/lib/web/mage/gallery.less
+++ b/lib/web/mage/gallery.less
@@ -62,6 +62,7 @@
     background: @page-bg-color;
     .zoom.inner > img {
         position: absolute;
+        max-width: none;
     }
 }